はじめに
この記事では、組織レベルでの利用を管理したい方向けのProfessional版をIAM Identity Centerで認証する手順と注意事項について記載します。
料金
CodeWhispererには、個人開発者向けの無料のIndividual版と、組織レベルでの利用を管理したい方向けのProfessional版があります。
Professional版は1ユーザーあたり$19/月で利用できます(2023年9月現在)。
前提条件
CodeWhispererを利用するためには、まずIAM Identity Centerを有効にする必要があります。その後、CodeWhispererのコンソールでIdentity Centerユーザーに対してアクセス権限を設定します。
CodeWhispererをセットアップする際には、以下のアクションへのアクセス許可が必要です。
- codewhisperer:ListProfiles
- codewhisperer:CreateProfile
- codewhisperer:TagResource
- codewhisperer:ListTagsForResource
参考:Amazon CodeWhisperer で定義されるアクション
[補足]2023年9月現在、CodeWhispererはバージニア北部リージョンのみで利用可能です。
バージニア北部リージョン以外でIAM Identity Centerが有効になっている場合、IAM Identity Centerのコンソールをバージニア北部リージョンで開いた際に以下のエラーメッセージが表示されます。しかし、設定はリージョンをまたがって行えるため、IAM Identity Centerの設定を削除してバージニア北部リージョンで再設定する必要はありません。
今回の実施条件は以下の通りです。
- バージニア北部リージョンでCodeWhispererを有効にする
- 東京リージョンでIAM Identity Centerを有効にする
- 東京リージョンのIAM Identity Centerのユーザーにアクセス許可を付与する
IAM Identity Center は現在 Asia Pacific (Tokyo) リージョンで設定されています AWS Organizations は、一度に 1 つの AWS リージョンでのみ、IAM Identity Center をサポートします。このリージョンで IAM Identity Center を有効にするには、最初に Asia Pacific (Tokyo) リージョンの現在の IAM Identity Center 設定を削除する必要があります。 詳細については、「IAM Identity Center の前提条件 」を参照してください。
セットアップの手順
①AWSコンソール側での作業
①-1. Amazon CodeWhispererの「Get started」をクリック
「IAM Identity Centerを委任されたメンバーアカウント」または「管理アカウント」にログインし、バージニア北部リージョンでCodeWhispererを開いて、「Get started」をクリックします。
①-2. Identity Centerユーザーにアクセス権を付与
「Users」または「Groups」のタグから、CodeWhispererへのアクセス権を付与したい対象(東京リージョンのIAM Identity Centerのユーザー/グループ)を選択し、画面下部にある「Set up CodeWhisperer」ボタンをクリックします。
アクセス許可が付与されたIdentity CenterユーザーがAWSポータルサイトにログインすると、CodeWhispererのアイコンが表示されるようになります。
アクセス管理可能なアカウント
CodeWhispererコンソールでアクセス管理を行えるのは、以下の2つのアカウントのみです。
- 管理アカウント
- IAM Identity Centerを委任されたメンバーアカウント
CodeWhispererのアクセス件を付与できる対象
CodeWhispererのアクセス権を付与できるのは、IAM Identity Centerのユーザー/グループのみです。IAMユーザーにはアクセス権を付与できません。
②Visual Studio Code側での作業
②-1. AWS Toolkit をインストール
Visual Studio Code に 拡張機能の AWS Toolkit をインストールします。
参考:AWS Toolkit for Visual Studio Code のインストール
公式ドキュメントに以下の記載がありますので、念のため作業を進める前に最新バージョンのIDEとAWS Toolkitを使用していることを確認してください。
Before you proceed, make sure that you are using the latest version of both your IDE and the AWS Toolkit. [訳]作業を進める前に、ご利用のIDEとAWS Toolkitの最新バージョンを使用していることを確認してください。
参考:Setting up CodeWhisperer for individual developers
今回の実施には以下のバージョンを使用しました。
- AWS Toolkit:v1.81.0 - Visual Studio Code:1.80.0 (Universal)
②-2. 認証作業
1. AWS Toolkit のアイコンをクリックし、CodeWhisperer内の「Start」をクリックして、「CodeWhisperer: AI-powered code suggestions」を選択します。
2. 「Start URL」を入力し、Identity Centerを設定しているリージョンを選択して、「Sign In」をクリックします。
「Start URL」はAWSポータルサイトのURLです。Identity Centerのコンソールから確認できます。
[注意]VS Code側で認証する際に選択するリージョンはIAM Identity Centerを有効化したリージョンです。その他のリージョンを選択すると、Codewhispererの画面上で「Invalid grant provided」というエラーメッセージが表示されます。
3. 「Copy Code and Proceed」をクリックします。
4. 「開く」をクリックします。
5. 先程コピーしたコードを貼り付けて「Next」をクリックします。
6. ユーザー名とパスワードを入力して「サインイン」をクリックします。
[注意]AWSポータルサイトにログインした状態だと、ログイン中のユーザーで認証が自動的に行われるので、ユーザー名とパスワードの入力は省略されます。
異なるユーザーで認証を行いたい場合は、AWSコンソールではなく、 IAM Identity CenterのAWSポータルサイトからサインアウトしておく必要があります。
7. 「Allow」をクリックします。
認証が成功すると以下の画面になります。このウィンドウは閉じてOKです。
[注意]Codewhispererへのアクセス許可がないユーザーで認証を行った場合は「Failed to setup」というエラーメッセージが表示されます。
8. Visual Studio Codeに以下の表示が出るので、「Yes, keep using IAM Identity Center (d-xxxxx) with CodeWhisperer while using profi…」をクリックします。
接続できると、以下のように表示されます。
さいごに
Professional版のAmazon CodeWhispererをIAM Identity Centerと連携させて認証まで行いました。
注意点としては、AWSポータルサイトにログインした状態だと、ログイン中のユーザーで認証が自動的に行われるので、IAM Identity CenterのAWSポータルサイトからサインアウトしておく必要があります。
この記事が誰かのお役に立てれば幸いです。