

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon Personalize の設定
<a name="setup"></a>

Amazon Personalize を使用する前に、管理者ユーザーの存在する Amazon Web Services (AWS) アカウントが必要です。必要なアクセス許可を設定したら、Amazon Personalize コンソール、 AWS Command Line Interface (AWS CLI)、または AWS SDKs から Amazon Personalize にアクセスできます。

**Topics**
+ [

## にサインアップする AWS アカウント
](#sign-up-for-aws)
+ [

## 管理アクセスを持つユーザーを作成する
](#create-an-admin)
+ [

## リージョンとエンドポイント
](#endpoints)
+ [

# アクセス許可のセットアップ
](aws-personalize-set-up-permissions.md)
+ [

# のセットアップ AWS CLI
](aws-personalize-set-up-aws-cli.md)
+ [

# AWS SDKs のセットアップ
](aws-personalize-set-up-sdks.md)

## にサインアップする AWS アカウント
<a name="sign-up-for-aws"></a>

がない場合は AWS アカウント、次の手順を実行して作成します。

**にサインアップするには AWS アカウント**

1. [https://portal.aws.amazon.com/billing/signup](https://portal.aws.amazon.com/billing/signup) を開きます。

1. オンラインの手順に従います。

   サインアップ手順の一環として、電話またはテキストメッセージを受け取り、電話キーパッドで検証コードを入力します。

   にサインアップすると AWS アカウント、 *AWS アカウントのルートユーザー* が作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティベストプラクティスとして、ユーザーに管理アクセス権を割り当て、[ルートユーザーアクセスが必要なタスク](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)の実行にはルートユーザーのみを使用するようにしてください。

AWS サインアッププロセスが完了すると、 から確認メールが送信されます。[https://aws.amazon.com/](https://aws.amazon.com/) の **[マイアカウント]** をクリックして、いつでもアカウントの現在のアクティビティを表示し、アカウントを管理することができます。

## 管理アクセスを持つユーザーを作成する
<a name="create-an-admin"></a>

にサインアップしたら AWS アカウント、日常的なタスクにルートユーザーを使用しないように AWS アカウントのルートユーザー、 を保護し AWS IAM アイデンティティセンター、 を有効にして管理ユーザーを作成します。

**を保護する AWS アカウントのルートユーザー**

1.  **ルートユーザー**を選択し、 AWS アカウント E メールアドレスを入力して、アカウント所有者[AWS マネジメントコンソール](https://console.aws.amazon.com/)として にサインインします。次のページでパスワードを入力します。

   ルートユーザーを使用してサインインする方法については、「*AWS サインイン ユーザーガイド*」の「[ルートユーザーとしてサインインする](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial)」を参照してください。

1. ルートユーザーの多要素認証 (MFA) を有効にします。

   手順については、*IAM* [ユーザーガイドの AWS アカウント 「ルートユーザー (コンソール) の仮想 MFA デバイス](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html)を有効にする」を参照してください。

**管理アクセスを持つユーザーを作成する**

1. IAM アイデンティティセンターを有効にします。

   手順については、「*AWS IAM アイデンティティセンター ユーザーガイド*」の「[AWS IAM アイデンティティセンターの有効化](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html)」を参照してください。

1. IAM アイデンティティセンターで、ユーザーに管理アクセスを付与します。

   を ID ソース IAM アイデンティティセンターディレクトリ として使用する方法のチュートリアルについては、「 *AWS IAM アイデンティティセンター ユーザーガイド*」の[「デフォルトを使用してユーザーアクセスを設定する IAM アイデンティティセンターディレクトリ](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html)」を参照してください。

**管理アクセス権を持つユーザーとしてサインインする**
+ IAM アイデンティティセンターのユーザーとしてサインインするには、IAM アイデンティティセンターのユーザーの作成時に E メールアドレスに送信されたサインイン URL を使用します。

  IAM Identity Center ユーザーを使用してサインインする方法については、*AWS サインイン 「 ユーザーガイド*[」の AWS 「 アクセスポータルにサインイン](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html)する」を参照してください。

**追加のユーザーにアクセス権を割り当てる**

1. IAM アイデンティティセンターで、最小特権のアクセス許可を適用するというベストプラクティスに従ったアクセス許可セットを作成します。

   手順については、「*AWS IAM アイデンティティセンター ユーザーガイド*」の「[アクセス許可セットを作成する](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html)」を参照してください。

1. グループにユーザーを割り当て、そのグループにシングルサインオンアクセス権を割り当てます。

   手順については、「*AWS IAM アイデンティティセンター ユーザーガイド*」の「[グループを追加する](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html)」を参照してください。

## リージョンとエンドポイント
<a name="endpoints"></a>

エンドポイントは、ウェブサービスのエントリポイントとなるURLです。各エンドポイントは特定の AWS リージョンに関連付けられています。特定のキャンペーンのすべての Amazon Personalize コンポーネント (データセット、ソリューション、キャンペーン、イベントトラッカー) は同じリージョンで作成する必要があるため、Amazon Personalize コンソール、、および Amazon Personalize AWS CLI SDKs のデフォルトリージョンに注意してください。Amazon Personalize によってサポートされているリージョンとエンドポイントについては、「[リージョンとエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html#personalize_region)」を参照してください。

# アクセス許可のセットアップ
<a name="aws-personalize-set-up-permissions"></a>

 ユーザー、グループ、またはロールに Amazon Personalize のリソースを操作するためのアクセス許可を付与する必要があります。また、Amazon Personalize で作成したリソースにアクセスし、ユーザーに代わってタスクを実行するためのアクセス許可を Amazon Personalize に付与する必要があります。

**アクセス許可を設定するには**

1.  Amazon Personalize に Amazon Personalize 内のお客様のリソースへのアクセス許可と、お客様に代わってタスクを実行する許可を付与してください。「[Amazon Personalize にリソースへのアクセス許可を付与する](set-up-required-permissions.md)」を参照してください。

1. ユーザー、グループ、またはロールに Amazon Personalize リソースを操作するアクセス許可を付与し、サービスロールを Amazon Personalize に渡します。「[Amazon Personalize にアクセスする許可をユーザーに付与する](grant-user-permissions.md)」を参照してください。

1.  Amazon Personalize サービスロールの信頼ポリシーを変更して、[混乱した代理問題](cross-service-confused-deputy-prevention.md)を防ぎましょう。信頼関係ポリシーの例については、「[サービス間での不分別な代理処理の防止](cross-service-confused-deputy-prevention.md)」を参照してください。ロールの信頼ポリシーを変更する方法については、「[ロールの変更](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html)」を参照してください。

1. ( AWS Key Management Service AWS KMS) を暗号化に使用する場合は、Amazon Personalize と Amazon Personalize IAM サービスロールにキーを使用するアクセス許可を付与する必要があります。詳細については、「[AWS KMS キーを使用するためのアクセス許可を Amazon Personalize に付与する](granting-personalize-key-access.md)」を参照してください。

1.  [Amazon Personalize に対する、Amazon S3 リソースへのアクセスの付与](granting-personalize-s3-access.md) のステップを完了し、IAM と Amazon S3 バケットポリシーを使用して Amazon S3 リソースへのアクセス権を Amazon Personalize に付与します。

**Topics**
+ [

# Amazon Personalize にリソースへのアクセス許可を付与する
](set-up-required-permissions.md)
+ [

# Amazon Personalize にアクセスする許可をユーザーに付与する
](grant-user-permissions.md)
+ [

# Amazon Personalize に対する、Amazon S3 リソースへのアクセスの付与
](granting-personalize-s3-access.md)
+ [

# AWS KMS キーを使用するためのアクセス許可を Amazon Personalize に付与する
](granting-personalize-key-access.md)

# Amazon Personalize にリソースへのアクセス許可を付与する
<a name="set-up-required-permissions"></a>

 リソースへのアクセス許可を Amazon Personalize に付与する IAM ポリシーを作成します。または、 AWS 管理`AmazonPersonalizeFullAccess`ポリシーを使用できます。 `AmazonPersonalizeFullAccess`は、必要以上のアクセス許可を提供します。必要なアクセス許可のみを付与する新しい IAM ポリシーを作成することをお勧めします。管理ポリシーの詳細については、「[AWS マネージドポリシー](security_iam_id-based-policy-examples.md#using-managed-policies)」を参照してください。

ポリシーを作成後、Amazon Personalize 向けの IAM ロールを作成して新しいポリシーをアタッチします。

**Topics**
+ [

## 新しい Amazon Personalize の IAM ポリシーの作成
](#create-role-policy)
+ [

## Amazon Personalize 向けの IAM ロールの作成
](#set-up-create-role-with-permissions)

## 新しい Amazon Personalize の IAM ポリシーの作成
<a name="create-role-policy"></a>

Amazon Personalize に Amazon Personalize のリソースへのフルアクセスを提供する IAM ポリシーを作成します。

**JSON ポリシーエディタでポリシーを作成するには**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. 左側のナビゲーションペインで、**[ポリシー]** を選択します。

   初めて **[ポリシー]** を選択する場合には、**[管理ポリシーにようこそ]** ページが表示されます。**今すぐ始める** を選択します。

1. ページの上部で、**[ポリシーを作成]** を選択します。

1. **ポリシーエディタ** セクションで、**JSON** オプションを選択します。

1. 次の JSON ポリシードキュメントを入力します。

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "personalize:*"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

1. **次へ** を選択します。
**注記**  
いつでも **Visual** と **JSON** エディタオプションを切り替えることができます。ただし、**[ビジュアル]** エディタで **[次へ]** に変更または選択した場合、IAM はポリシーを再構成してビジュアルエディタに合わせて最適化することがあります。詳細については、*IAM ユーザーガイド* の [ポリシーの再構成](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_policies.html#troubleshoot_viseditor-restructure) を参照してください。

1. **確認と作成** ページで、作成するポリシーの **ポリシー名** と **説明** (オプション) を入力します。**このポリシーで定義されているアクセス許可** を確認して、ポリシーによって付与されたアクセス許可を確認します。

1. **ポリシーを作成** をクリックして、新しいポリシーを保存します。

## Amazon Personalize 向けの IAM ロールの作成
<a name="set-up-create-role-with-permissions"></a>

 Amazon Personalize を使用するには、Amazon Personalize AWS Identity and Access Management のサービスロールを作成する必要があります。サービスロールとは、サービスがユーザーに代わってアクションを実行するために引き受ける [IAM ロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)です。IAM 管理者は、IAM 内からサービスロールを作成、変更、削除できます。詳細については、IAM ユーザーガイド**の [AWS のサービスに許可を委任するロールを作成する](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)を参照してください。Amazon Personalize のサービスロールを作成したら、必要に応じてそのロールに [その他のサービスロールのアクセス許可](#additional-service-role-permissions) に記載されている追加のアクセス権限を付与します。

**Personalize のサービスロールを作成するには (IAM コンソール)**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. IAM コンソールのナビゲーションペインで、**[ロール]**、**[ロールを作成]** を選択します。

1. **信頼できるエンティティタイプ** で、**AWS のサービス** を選択します。

1. **[サービスまたはユースケース]** で、**[Personalize]** を選択し、**[Personalize]** ユースケースを選択します。

1. [**次へ**] を選択します。

1. 前の手順で作成したポリシーを使用します。

1. (オプション) [アクセス許可の境界](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)を設定します。このアドバンスド機能は、サービスロールで使用できますが、サービスにリンクされたロールではありません。

   1. **[アクセス許可の境界の設定]** セクションを開き、**[アクセス許可の境界を使用してロールのアクセス許可の上限を設定する]** を選択します。

      IAM には、 アカウントの AWS 管理ポリシーとカスタマー管理ポリシーのリストが含まれます。

   1. アクセス許可の境界として使用するポリシーを選択します。

1. [**次へ**] を選択します。

1. このロールの目的を識別しやすいロール名またはロール名サフィックスを入力します。
**重要**  
ロールに名前を付けるときは、次のことに注意してください。  
ロール名は 内で一意である必要があり AWS アカウント、大文字と小文字を区別することはできません。  
例えば、**PRODROLE** と **prodrole** の両方の名前でロールを作成することはできません。ロール名がポリシーまたは ARN の一部として使用される場合、ロール名は大文字と小文字が区別されます。ただし、サインインプロセスなど、コンソールにロール名がユーザーに表示される場合、ロール名は大文字と小文字が区別されません。
他のエンティティがロールを参照する可能性があるため、ロールを作成した後にロール名を編集することはできません。

1. (オプション) **[説明]** にロールの説明を入力します。

1. (オプション) ロールのユースケースとアクセス許可を編集するには、**[ステップ 1: 信頼されたエンティティを選択]** または **[ステップ 2: アクセス権限を追加]** のセクションで **[編集]** を選択します。

1. (オプション) ロールの識別、整理、検索を簡単にするには、キーと値のペアとしてタグを追加します。IAM でのタグの使用の詳細については、IAM *ユーザーガイド*の[AWS Identity and Access Management 「リソースのタグ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html)」を参照してください。

1. ロールを確認したら、**[ロールを作成]** を選択します。

Amazon Personalize のロールを作成したら、[Amazon S3 バケットと任意のキーへのアクセス](granting-personalize-s3-access.md)を許可する準備が整います。 [AWS KMS](granting-personalize-key-access.md)

### その他のサービスロールのアクセス許可
<a name="additional-service-role-permissions"></a>

ロールを作成し、このロールに Amazon Personalize のリソースへのアクセス権を与えたら、以下を行います。

1.  Amazon Personalize サービスロールの信頼ポリシーを変更して、[混乱した代理問題](cross-service-confused-deputy-prevention.md)を防ぎましょう。信頼関係ポリシーの例については、「[サービス間での不分別な代理処理の防止](cross-service-confused-deputy-prevention.md)」を参照してください。ロールの信頼ポリシーを変更する方法については、「[ロールの変更](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_modify.html)」を参照してください。

1.  ( AWS Key Management Service AWS KMS) を暗号化に使用する場合は、Amazon Personalize と Amazon Personalize IAM サービスロールにキーを使用するアクセス許可を付与する必要があります。詳細については、「[AWS KMS キーを使用するためのアクセス許可を Amazon Personalize に付与する](granting-personalize-key-access.md)」を参照してください。

# Amazon Personalize にアクセスする許可をユーザーに付与する
<a name="grant-user-permissions"></a>

 ユーザーに Amazon Personalize へのアクセス許可を提供するには、Amazon Personalize リソースへのアクセス許可を付与する IAM ポリシーを作成し、Amazon Personalize にサービスロールを渡します。次に、ユーザー、グループ、ロールに許可を追加する際にそのポリシーを使用します。

## ユーザー用に新規 IAM ポリシーを作成する
<a name="create-policy-for-users"></a>

Amazon Personalize に、Amazon Personalize リソースへのフルアクセス許可と、Amazon Personalize にサービスロールを渡す `PassRole` アクセス許可 ([Amazon Personalize 向けの IAM ロールの作成](set-up-required-permissions.md#set-up-create-role-with-permissions) で作成) を付与する IAM ポリシーを作成します。

**JSON ポリシーエディタでポリシーを作成するには**

1. にサインインAWS マネジメントコンソールし、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

1. 左側のナビゲーションペインで、**[ポリシー]** を選択します。

   初めて **[ポリシー]** を選択する場合には、**[管理ポリシーにようこそ]** ページが表示されます。**今すぐ始める** を選択します。

1. ページの上部で、**[ポリシーを作成]** を選択します。

1. **ポリシーエディタ** セクションで、**JSON** オプションを選択します。

1. 次の JSON ポリシードキュメントを入力します。

   ```
   {
       "Version": "2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "personalize:*"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "iam:PassRole"
               ],
               "Resource": "arn:aws:iam::123456789012:role/ServiceRoleName",
               "Condition": {
                   "StringEquals": {
                       "iam:PassedToService": "personalize.amazonaws.com"
                   }
               }
           }
       ]
   }
   ```

1. **次へ** を選択します。
**注記**  
いつでも **Visual** と **JSON** エディタオプションを切り替えることができます。ただし、**[ビジュアル]** エディタで **[次へ]** に変更または選択した場合、IAM はポリシーを再構成してビジュアルエディタに合わせて最適化することがあります。詳細については、*IAM ユーザーガイド* の [ポリシーの再構成](https://docs.aws.amazon.com/IAM/latest/UserGuide/troubleshoot_policies.html#troubleshoot_viseditor-restructure) を参照してください。

1. **確認と作成** ページで、作成するポリシーの **ポリシー名** と **説明** (オプション) を入力します。**このポリシーで定義されているアクセス許可** を確認して、ポリシーによって付与されたアクセス許可を確認します。

1. **[ポリシーの作成]** をクリックして、新しいポリシーを保存します。

Amazon Personalize のタスクの実行に必要なアクセス許可のみを付与するには、前述のポリシーを変更して、ユーザーに必要なアクションのみを付与するようにします。Amazon Personalize のアクションの一覧については、「Amazon Personalize [のアクション、リソース、および条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonpersonalize.html)」を参照します。

## Amazon Personalize へのアクセスの提供
<a name="attach-policy-to-user"></a>

ユーザーにアクセス許可を与える際には、新しい IAM ポリシーをアタッチします。

アクセス権限を付与するにはユーザー、グループ、またはロールにアクセス許可を追加します。
+ のユーザーとグループAWS IAM アイデンティティセンター:

  アクセス許可セットを作成します。「*AWS IAM アイデンティティセンター ユーザーガイド*」の「[アクセス許可セットを作成する](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html)」の手順に従ってください。
+ IAM 内で、ID プロバイダーによって管理されているユーザー:

  ID フェデレーションのロールを作成します。詳細については *IAM ユーザーガイド* の [サードパーティー ID プロバイダー (フェデレーション) 用のロールを作成する](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) を参照してください。
+ IAM ユーザー:
  + ユーザーが担当できるロールを作成します。手順については *IAM ユーザーガイド* の [IAM ユーザーのロールの作成](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) を参照してください。
  + (お奨めできない方法) ポリシーをユーザーに直接アタッチするか、ユーザーをユーザーグループに追加します。詳細については *IAM ユーザーガイド* の [ユーザー (コンソール) へのアクセス権限の追加](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) を参照してください。

# Amazon Personalize に対する、Amazon S3 リソースへのアクセスの付与
<a name="granting-personalize-s3-access"></a>

Amazon Personalize に Amazon S3 バケットへのアクセス権を付与するには、次の手順を実行します。

1. まだ行っていない場合は、[アクセス許可のセットアップ](aws-personalize-set-up-permissions.md) のステップに従って許可を設定して、あなたに代わって Amazon Personalize が￥Amazon Personalize 内のリソースにアクセスできるようにします。

1.  Amazon S3 バケットへのアクセスを許可するポリシーを Amazon Personalize のサービスロール (「[Amazon Personalize 向けの IAM ロールの作成](set-up-required-permissions.md#set-up-create-role-with-permissions)」を参照) にアタッチします。詳細については、「[Amazon Personalize サービスロールに対する、Amazon S3 ポリシーのアタッチ](#attaching-s3-policy-to-role)」を参照してください。

1.  データファイルを含む Amazon S3 バケットにバケットポリシーをアタッチして、Amazon Personalize がそれらにアクセスできるようにします。詳細については、「[Amazon S3 バケットに対する、Amazon Personalize のアクセスポリシーのアタッチ](#attach-bucket-policy)」を参照してください。

1.  AWS Key Management Service (AWS KMS) を暗号化に使用する場合は、Amazon Personalize と Amazon Personalize IAM サービスロールにキーを使用するアクセス許可を付与する必要があります。詳細については、「[AWS KMS キーを使用するためのアクセス許可を Amazon Personalize に付与する](granting-personalize-key-access.md)」を参照してください。

**注記**  
Amazon Personalize は AWS VPCsと通信しないため、Amazon Personalize は VPC アクセスのみを許可する Amazon S3 バケットとやり取りできません。

**Topics**
+ [

## Amazon Personalize サービスロールに対する、Amazon S3 ポリシーのアタッチ
](#attaching-s3-policy-to-role)
+ [

## Amazon S3 バケットに対する、Amazon Personalize のアクセスポリシーのアタッチ
](#attach-bucket-policy)

## Amazon Personalize サービスロールに対する、Amazon S3 ポリシーのアタッチ
<a name="attaching-s3-policy-to-role"></a>

Amazon S3 ポリシーを Amazon Personalize のロールにアタッチするには、次の手順を実行します。

1. IAM コンソール ([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)) にサインインします。

1. ナビゲーションペインで、[**ポリシー**]、[**ポリシーの作成**] の順に選択します。

1. [JSON] タブを選択し、以下のようにポリシーを更新します。`amzn-s3-demo-bucket` をバケットの名前に置き換えます。データセットインポートジョブまたはデータ削除ジョブには、次のポリシーを使用できます。バッチワークフローを使用、またはデータセットエクスポートジョブを作成している場合、Amazon Personalize には追加の許可が必要です。「[バッチワークフロー用のサービスロールのポリシー](#role-policy-for-batch-workflows)」または「[データセットをエクスポートするための Amazon S3 バケットポリシー](#bucket-policy-for-export)」を参照してください。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Id": "PersonalizeS3BucketAccessPolicy",
       "Statement": [
           {
               "Sid": "PersonalizeS3BucketAccessPolicy",
               "Effect": "Allow",
               "Action": [
                   "s3:GetObject",
                   "s3:ListBucket"
               ],
               "Resource": [
                   "arn:aws:s3:::amzn-s3-demo-bucket",
                   "arn:aws:s3:::amzn-s3-demo-bucket/*"
               ]
           }
       ]
   }
   ```

------

1. **[Next: Tags]** (次へ: タグ) を選択します。オプションでタグを追加し、**[Review]** (レビュー) を選択します。

1. ポリシーに名前を付けます。

1. (オプション) **[Description]** (説明) で、このポリシーを説明する短い文 (「**Allow Amazon Personalize to access its Amazon S3 bucket.**」など) を入力します

1. [**Create policy**] (ポリシーの作成) を選択します。

1. ナビゲーションペインで、**[Roles]** (ロール) を選択し、Amazon Personalize 用に作成したロールを選択します。「[Amazon Personalize 向けの IAM ロールの作成](set-up-required-permissions.md#set-up-create-role-with-permissions)」を参照してください。

1. **[Permissions]** (許可) で、**[Attach policies]** (ポリシーをアタッチ) を選択します。

1. リストのポリシーを表示するには、[**Filter policies (ポリシーのフィルタ)**] フィルタボックスにポリシー名の一部を入力します。

1. この手順の前半で作成したポリシーの横にあるチェックボックスをオンにします。

1. **[Attach policy]** (ポリシーのアタッチ) を選択します。

   ロールを Amazon Personalize で使用できるようにする前に、データを含む Amazon S3 バケットにバケットポリシーをアタッチする必要もあります。「[Amazon S3 バケットに対する、Amazon Personalize のアクセスポリシーのアタッチ](#attach-bucket-policy)」を参照してください。

### バッチワークフロー用のサービスロールのポリシー
<a name="role-policy-for-batch-workflows"></a>

バッチワークフローを完了するには、Amazon S3 バケットにアクセスしてファイルを追加するための許可を Amazon Personalize に付与する必要があります。上記の手順に従って、次のポリシーを Amazon Personalize のロールにアタッチします。`amzn-s3-demo-bucket` をバケットの名前に置き換えます。バッチワークフローの詳細については、「[バッチアイテムのレコメンデーションの取得](getting-batch-recommendations.md)」または「[バッチユーザーセグメントの取得](getting-user-segments.md)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "PersonalizeS3BucketAccessPolicy",
    "Statement": [
        {
            "Sid": "PersonalizeS3BucketAccessPolicy",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:ListBucket",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ]
        }
    ]
}
```

------

### データセットをエクスポートするためのサービスロールのポリシー
<a name="role-policy-for-export"></a>

データセットをエクスポートするため、Amazon Personalize のサービスロールでは、Amazon S3 バケットで `PutObject` および `ListBucket` アクションを使用するための許可が必要です。次のポリシー例は、`PutObject` と `ListBucket` の許可を Amazon Personalize に付与します。`amzn-s3-demo-bucket` をバケットの名前に置き換えて、Amazon Personalizeのサービスロールに対してポリシーをアタッチします。サービスロールへのポリシーのアタッチについては、「[Amazon Personalize サービスロールに対する、Amazon S3 ポリシーのアタッチ](#attaching-s3-policy-to-role)」を参照してください。

```
{
    "Version": "2012-10-17",		 	 	 
    "Id": "PersonalizeS3BucketAccessPolicy",
    "Statement": [
        {
            "Sid": "PersonalizeS3BucketAccessPolicy",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ]
        }
    ]
}
```

## Amazon S3 バケットに対する、Amazon Personalize のアクセスポリシーのアタッチ
<a name="attach-bucket-policy"></a>

Amazon Personalize には、S3 バケットにアクセスするための許可が必要です。データセットインポートジョブまたはデータ削除ジョブには、次のポリシーを使用できます。`amzn-s3-demo-bucket` をバケットの名前に置き換えます。バッチワークフローについては、「[バッチワークフロー向けの Amazon S3 バケットポリシー](#bucket-policy-for-batch-workflows)」を参照してください。

Amazon S3 バケットポリシーの詳細については、「[S3 バケットポリシーを追加するにはどうすればよいですか?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-bucket-policy.html)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "PersonalizeS3BucketAccessPolicy",
    "Statement": [
        {
            "Sid": "PersonalizeS3BucketAccessPolicy",
            "Effect": "Allow",
            "Principal": {
                "Service": "personalize.amazonaws.com"
            },
            "Action": [
                "s3:GetObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ]
        }
    ]
}
```

------

### バッチワークフロー向けの Amazon S3 バケットポリシー
<a name="bucket-policy-for-batch-workflows"></a>

バッチワークフローの場合、Amazon Personalize には、Amazon S3 バケットにアクセスしてファイルを追加するための許可が必要です。次のポリシーをバケットにアタッチします: `amzn-s3-demo-bucket` をバケットの名前に置き換えます。

Amazon S3 バケットポリシーをバケットに追加する方法の詳細については、「[S3 バケットポリシーを追加するにはどうすればよいですか?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-bucket-policy.html)」を参照してください。バッチワークフローの詳細については、「[バッチアイテムのレコメンデーションの取得](getting-batch-recommendations.md)」または「[バッチユーザーセグメントの取得](getting-user-segments.md)」を参照してください。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "PersonalizeS3BucketAccessPolicy",
    "Statement": [
        {
            "Sid": "PersonalizeS3BucketAccessPolicy",
            "Effect": "Allow",
            "Principal": {
                "Service": "personalize.amazonaws.com"
            },
            "Action": [
                "s3:GetObject",
                "s3:ListBucket",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ]
        }
    ]
}
```

------

### データセットをエクスポートするための Amazon S3 バケットポリシー
<a name="bucket-policy-for-export"></a>

データセットをエクスポートするには、Amazon S3 バケットで `PutObject` および `ListBucket` アクションを使用するための許可が Amazon Personalize に付与されている必要があります。次のポリシー例は、`PutObject` と `ListBucket` の許可を Amazon Personalize のプリンシプルに付与します。`amzn-s3-demo-bucket` をバケットの名前に置き換えて、ポリシーをバケットにアタッチします。Amazon S3 バケットポリシーをバケットに追加する方法については、Amazon Simple Storage Service ユーザーガイドの「[S3 バケットポリシーを追加するにはどうすればよいですか?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-bucket-policy.html)」を参照してください。

```
{
    "Version": "2012-10-17",		 	 	 
    "Id": "PersonalizeS3BucketAccessPolicy",
    "Statement": [
        {
            "Sid": "PersonalizeS3BucketAccessPolicy",
            "Effect": "Allow",
            "Principal": {
                "Service": "personalize.amazonaws.com"
            },
            "Action": [
                "s3:PutObject",
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ]
        }
    ]
}
```

# AWS KMS キーを使用するためのアクセス許可を Amazon Personalize に付与する
<a name="granting-personalize-key-access"></a>

 Amazon Personalize コンソールまたは APIs を使用するときに AWS Key Management Service (AWS KMS) キーを指定する場合、または AWS KMS キーを使用して Amazon S3 バケットを暗号化する場合は、キーを使用するアクセス許可を Amazon Personalize に付与する必要があります。アクセス許可を付与するには、サービスロールにアタッチされた AWS KMS キーポリシー*と* IAM ポリシーが、キーを使用するアクセス許可を Amazon Personalize に付与する必要があります。これは Amazon Personalize で以下を作成する場合に適用されます。
+ データセットグループ
+ データセットのインポートジョブ ( AWS KMS キーポリシーのみがアクセス許可を付与する必要があります)
+ データセットのエクスポートジョブ
+ バッチ推論ジョブ
+ バッチセグメントジョブ
+ メトリクス属性

 AWS KMS キーポリシーと IAM ポリシーは、次のアクションのアクセス許可を付与する必要があります。
+  Decrypt 
+  GenerateDataKey 
+  DescribeKey 
+  CreateGrant (キーポリシーでのみ必要) 
+  ListGrants 

リソースの作成後に AWS KMS キーアクセス許可を取り消すと、フィルターの作成時やレコメンデーションの取得時に問題が発生する可能性があります。 AWS KMS ポリシーの詳細については、 *AWS Key Management Service デベロッパーガイド*の[「KMS AWS でのキーポリシーの使用](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)」を参照してください。IAM ポリシーの作成については、「**IAM ユーザーガイド」の「[IAM ポリシーの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)」を参照してください。IAM アイデンティティへのポリシーのアタッチに関する詳細については、「**IAM ユーザーガイド」の「[IAM ID のアクセス許可の追加および削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)」を参照してください。

**Topics**
+ [

## キーポリシーの例
](#export-job-key-policy)
+ [

## IAM ポリシーの例
](#export-job-iam-policy)

## キーポリシーの例
<a name="export-job-key-policy"></a>

以下のキーポリシーの例では、Amazon Personalize とお客様のロールに、上記の Amazon Personalize オペレーションに必要な最低限のアクセス権限を付与しています。データセットグループの作成時にキーを指定し、データセットからデータをエクスポートする場合は、キーポリシーに `GenerateDataKeyWithoutPlaintext` アクションを含める必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "key-policy-123",
    "Statement": [
        {
            "Sid": "Allow use of the key",
            "Effect": "Allow",
            "Principal": {
            "AWS": "arn:aws:iam::111122223333:role/<personalize-role-name>",
                "Service": "personalize.amazonaws.com"
            },
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKey",
                "kms:DescribeKey",
                "kms:CreateGrant",
                "kms:ListGrants"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## IAM ポリシーの例
<a name="export-job-iam-policy"></a>

 次の IAM ポリシーの例では、前の Amazon Personalize オペレーションに必要な最小限の AWS KMS アクセス許可をロールに付与します。データセットのインポートジョブでは、 AWS KMS キーポリシーのみがアクセス許可を付与する必要があります。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKey",
                "kms:DescribeKey",
                "kms:ListGrants"
            ],
            "Resource": "*"
        }
    ]
}
```

------

# のセットアップ AWS CLI
<a name="aws-personalize-set-up-aws-cli"></a>

 AWS Command Line Interface (AWS CLI) は、Amazon Personalize を含む AWS のサービスを管理するための統合デベロッパーツールです。このツールをインストールすることをお勧めします。

1. をインストールするには AWS CLI、*AWS Command Line Interface 「インターフェイスユーザーガイド*」の[「 AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/installing.html)のインストール」の手順に従います。

1. を設定し AWS CLI 、 を呼び出すプロファイルを設定するには AWS CLI、*AWS Command Line Interface 「 ユーザーガイド*」の[「 の設定 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html)」の手順に従います。

1.  AWS CLI プロファイルが正しく設定されていることを確認するには、次のコマンドを実行します。

   ```
   aws configure --profile default
   ```

   プロファイルが正しく設定されている場合は、次のような出力が表示されます。

   ```
   AWS Access Key ID [****************52FQ]: 
   AWS Secret Access Key [****************xgyZ]: 
   Default region name [us-west-2]: 
   Default output format [json]:
   ```

1.  AWS CLI が Amazon Personalize で使用するように設定されていることを確認するには、次のコマンドを実行します。

   ```
   aws personalize help
   ```

   と

   ```
   aws personalize-runtime help
   ```

   and

   ```
   aws personalize-events help
   ```

   が正しく設定されている場合 AWS CLI 、Amazon Personalize、Amazon Personalize ランタイム、および Amazon Personalize イベントでサポートされている AWS CLI コマンドのリストが表示されます。

   をセットアップしても Amazon Personalize のコマンドが認識 AWS CLI されない場合は、 を更新します AWS CLI。を更新するには AWS CLI、次のコマンドを実行します。

   ```
   pip3 install awscli --upgrade --user
   ```

   詳細については、「[pip を使用した AWS CLI のインストール](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html#install-tool-pip)」を参照してください。

# AWS SDKs のセットアップ
<a name="aws-personalize-set-up-sdks"></a>

使用する AWS SDKsをダウンロードしてインストールします。このガイドでは、SDK for Python (Boto3)、SDK for Java 2.x、SDK for JavaScript v3 の例を提供します。その他の AWS SDKs[「Amazon Web Services のツール](https://aws.amazon.com/tools/)」を参照してください。Amplify の設定の詳細については、[Amplify のドキュメント](https://docs.amplify.aws)を参照してください。
+ [AWS SDK for Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/index.html)

  SDK for Python (Boto3) をインストールするには、Boto3 ドキュメントの「[クイックスタート](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html)」の手順に従います。
+ [SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/)

   SDK for Java 2.x の設定については、**「AWS SDK for Java 2.x デベロッパーガイド」の「[SDK for Java 2.x の開始方法](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html)」のトピックを参照してください。

   Amazon Personalize のコード例については、[AWS SDK](https://github.com/awsdocs/aws-doc-sdk-examples) サンプルリポジトリにある「[Amazon Personalize Java コードサンプル](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2/example_code/personalize)」を参照してください。
+ [AWS SDK for JavaScript v3](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/)

   SDK for JavaScript v3 のセットアップについては、**「AWS SDK for JavaScript デベロッパーガイド」の「[AWS SDK for JavaScriptの開始方法](https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/getting-started.html)」のトピックを参照してください。

   Amazon Personalize のコード例については、[https://github.com/awsdocs/aws-doc-sdk-examples](https://github.com/awsdocs/aws-doc-sdk-examples)AWS SDK サンプルリポジトリの 「[SDK for JavaScript v3 の Amazon Personalize コード例](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3/example_code/personalize)」を参照してください。