AWS Service Catalogチュートリアル
AWS Service Catalog 開始方法のチュートリアルにそってみました。
目次
ポートフォリオの作成
AWS Service Catalogでは、ポートフォリオを作成して、そのポートフォリオに対して、製品追加、制約設定、使用できるユーザー設定をします。
チュートリアルにそって、”エンジニアリングツール”というポートフォリオを作成しました。
EC2インスタンスを直接操作することができない開発者が、Service Catalog経由で開発用のLinuxサーバーを起動するというシナリオです。
製品の作成
作成したポートフォリオに製品を作成します。
[新しい製品のアップロード]ボタンを押下しました。
チュートリアルにそって、製品情報を入力しました。
チュートリアル用に用意されたCloudFormationテンプレートをダウンロードしておいて、Service Catalog製品ページでアップロードします。
サポート情報を入力して、製品作成は完了です。
テンプレート制約の追加
[制約を作成]ボタンを押下しました。
製品を選択して、制約タイプは、[テンプレート]を選択しました。
テキストエディタで、こちらのルールを記述しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
{ "Rules": { "Rule1": { "Assertions": [ { "Assert" : {"Fn::Contains": [["t2.micro", "t2.small"], {"Ref": "InstanceType"}]}, "AssertDescription": "Instance type should be t2.micro or t2.small" } ] } } } |
インスタンスタイプに、t2.microか、t2.smallしか選択できないようにする制約です。
起動制約の追加
チュートリアルに記載のこちらのポリシーをアタッチした、Service Catalog向けのIAMロールを作成しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudformation:CreateStack", "cloudformation:DeleteStack", "cloudformation:DescribeStackEvents", "cloudformation:DescribeStacks", "cloudformation:GetTemplateSummary", "cloudformation:SetStackPolicy", "cloudformation:ValidateTemplate", "cloudformation:UpdateStack", "ec2:*", "s3:GetObject", "servicecatalog:*", "sns:*" ], "Resource": "*" } ] } |
このポリシーの権限でCloudFormationのテンプレートに含まれているEC2とセキュリティグループが作成できます。
制約タイプで[起動]を選択しました。
作成しておいたIAMロールを選択しました。
製品を作成できるユーザーを設定
[グループ、ロール、およびユーザー]作成でユーザーを選択しました。
ベストプラクティスとしてはグループでしょうね。
Service Catalog エンドユーザー想定のIAMユーザーで確認
該当のIAMユーザーにAWSServiceCatalogEndUserFullAccessポリシーをアタッチして、Service Catalogにアクセスしました。
製品の一覧に対象の製品が見えています。
製品を選択して起動すると、インスタンスタイプが制約によって、t2.micro、t2.smallしか選択できないことがわかりました。
パラメータのセキュリティグループのソースIPレンジを設定して起動しました。
製品が起動して、[プロビジョニングされた製品]に表示されています。
製品を起動したユーザーでEC2コンソールを見てみると、権限がないのでAPIエラーとなります。
ですが、製品の詳細を確認すると、接続先のDNSやIPアドレスは表示されています。
これで使用することができます。
エンドユーザーに必要最小限の権限を設定することができました。
起動確認できたので、プロビジョニングされた製品を終了しました。
最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
【PR】 「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。
【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。
【PR】 「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
AWS CodeBuildのチュートリアルをやってみました
こちらユーザーガイドの最初の方にあるチュートリアルです。 コンソールを使用した …
-
-
Selenium, Headless ChromeとAWS Lambdaで夜な夜なスクレイピング
このようなアーキテクチャで、Alexaスキルの開発を進めていまして、元となる情報 …
-
-
Backlogの実績工数をAmazon QuickSightで可視化してわかったこと
今年に入ってから、Backlogで個人タスクを登録しだして、予定工数、実績工数を …
-
-
Amazon S3バケットでMFA Deleteを有効にする
バージョニングが有効なバケットでバージョン削除でMFA Deleteを有効にして …
-
-
Amazon Aurora Serverless 課金確認
Amazon Aurora Serverlessを使い始めてみましたの記事で書い …
-
-
RedmineをELB(ALB)でAutoScalingグループへ負荷分散
高可用なRedmineを作るためのELBの設定です。 高可用なRedmine R …
-
-
AWS Secrets ManagerのローテーションでLambda関数の管理が必要なくなりました
Amazon RDS と AWS Secrets Manager の統合を発表と …
-
-
DynamoDBテーブル項目をS3にエクスポート
DynamoDBテーブルを一時テーブルとして使っていて、毎回使い捨てしてます。 …
-
-
Amazon Connectの新規作成からプッシュボタン入力と発信元電話番号をLambdaで処理するまで
とりあえずやりたいことはタイトルに書いたとおり、「電話をかけて、プッシュボタンに …
-
-
AWS SSOのパスワードリマインダーでADのパスワードを変更
AWS Managed Microsoft ADを構築してユーザー追加までで構築 …