

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

# 管理者の設定
<a name="s3-admin-setup"></a>

ユーザーが Amazon S3 統合とナレッジベースを作成する前に、Amazon Quick 管理者は以下のセットアップタスクを完了する必要があります。

## Amazon S3 バケットへの Amazon Quick Access の付与
<a name="s3-grant-bucket-access"></a>

組織が必要とする Amazon S3 バケットへの Amazon Quick アクセスを付与します。これは、バケットが同じ AWS アカウントにあるか、別のアカウントにあるかにかかわらず適用されます。

1. Amazon Quick 管理コンソールのアクセス**許可**で、**AWS リソース**を選択します。

1. **これらのリソースへのアクセスと自動検出を許可する **で、**Amazon S3** チェックボックスをオンにします。

1. **[Select S3 buckets]** (S3 バケットの選択) を選択します。

1. **Amazon S3 バケットの選択**ダイアログで、バケットの場所に一致するタブを選択します。
   + **S3 Buckets Linked To Quick Account** – Amazon Quick がアクセスするバケットをリストから選択します。選択したバケットには、デフォルトで読み取り専用のアクセス許可があります。
   + アクセス**可能な S3 バケット AWS** – クロスアカウントバケットの場合は、アカウント所有者がアカウントを承認していることを確認します。**別のバケットを使用する** を選択し、バケット名を入力し、**S3 バケットの追加** を選択します。

1. (オプション) クロスアカウントバケットの場合は、**ナレッジベース作成者にバケットアクセスを制限する**を選択してアクセスを制限し、ナレッジベースを作成するユーザーのみがバケットを使用できるようにします。

1. [**Finish**] を選択してください。

選択したバケットにナレッジベースの作成中にユーザーがアクセスできるようになりました。

## IAM ロールとポリシーのセットアップを準備する
<a name="s3-integration-authentication"></a>

Amazon S3 統合では、 AWS 認証を使用して Amazon S3 バケットにアクセスします。ユーザーが統合を設定する前に、IAM ロールとポリシーの設定を準備します。

### 必要な IAM 許可
<a name="s3-integration-iam-permissions"></a>

 AWS アカウントに Amazon S3 バケットに対する以下の最小限のアクセス許可があることを確認します。
+ `s3:GetObject` – バケットからオブジェクトを読み取ります。
+ `s3:ListBucket` – バケットの内容を一覧表示します。
+ `s3:GetBucketLocation` – バケットリージョン情報を取得します。
+ `s3:GetObjectVersion` – オブジェクトバージョンを取得します。
+ `s3:ListBucketVersions` – バケットバージョンを一覧表示します。

### クロスアカウントアクセス用に Amazon S3 バケットのアクセス許可を設定する
<a name="s3-cross-account-bucket-policy"></a>

別の AWS アカウントで Amazon S3 バケットにアクセスする場合は、ソース AWS アカウントで IAM ポリシーを設定する必要があります。

**クロスアカウントアクセス用に Amazon S3 バケットのアクセス許可を設定するには**

1. Amazon S3 バケットを含むアカウントの AWS マネジメントコンソールにサインインします。

1. Amazon S3 コンソール ([https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)) を開きます。

1. アクセスを許可するバケットを選択します。

1. **[Permissions]** (許可) を選択し、**[Bucket Policy]** (バケットポリシー) を選択します。

1. 以下の要素を含むバケットポリシーを追加します。
   + `Version` – を「2012-10-17」に設定します。
   + `Statement` – 以下を含むポリシーステートメントを含む配列:
     + `Sid` – AllowQuickSuiteS3Access」
     + `Effect` – 「許可」
     + `Principal` – アカウントの Amazon Quick サービスロールの AWS ARN。たとえば、プリンシパルは次のようになります。` "Principal": { "AWS": "arn:aws:iam::<quick_account_id>:role/service-role/aws-quicksight-service-role-v0" }`
     + `Action` – Amazon S3 アクセス許可の配列: s3:GetObject、s3:ListBucket、s3:GetBucketLocation、s3:GetObjectVersion、s3:ListBucketVersions
     + `Resource` – "\$1" (現在のキーに適用）、Amazon S3 バケットパスは次のようになります。 `"Resource": [ "arn:aws:s3:::bucket_name"]`

1. **[Save changes]** (変更の保存) をクリックします。

### KMS キーのアクセス許可を設定する (バケットが暗号化を使用している場合)
<a name="s3-kms-permissions"></a>

Amazon S3 バケットが KMS AWS 暗号化を使用している場合は、次の手順を実行します。

**KMS キーのアクセス許可を設定するには**

1. [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms) で AWS Key Management Service (AWS KMS) コンソールを開きます。

1. Amazon S3 バケットの暗号化に使用される KMS キーを選択します。

1. [**Key policy (キーポリシー)**]、[**Edit (編集)**] の順に選択します。

1. 次の構造要素を含むステートメントをキーポリシーに追加します。
   + `Sid` – AllowQuickSuiteKMSAccess」
   + `Effect` – 「許可」
   + `Principal` – アカウントの Amazon Quick サービスロールの AWS ARN。たとえば、プリンシパルは次のようになります。` "Principal": { "AWS": "arn:aws:iam::<quick_account_id>:role/service-role/aws-quicksight-service-role-v0" }`
   + `Action` – KMS アクセス許可の配列: kms:Decrypt、kms:DescribeKey
   + `Resource` – "\$1" (現在のキーに適用）、Amazon S3 バケットパスは次のようになります。 `"Resource": [ "arn:aws:s3:::bucket_name"]`

1. **[Save changes]** (変更の保存) をクリックします。

1. ポリシーの変更が反映されるまで 2～3 分待ちます。

## Amazon Quick で Amazon S3 Connector の VPC アクセスを設定する
<a name="s3-vpc-support"></a>

VPC アクセス許可により、Amazon Quick は安全な VPC または VPC エンドポイント接続を介してのみ Amazon S3 バケットにアクセスできます。

### 必要なポリシーの変更
<a name="s3-vpc-required-policy"></a>

このステートメントをバケットアクセスポリシーに追加して、Amazon Quick が VPC エンドポイントを介してバケットにアクセスできるようにします。

```
{
  "Sid": "Allow-Quick-access"		 	 	 ,
  "Principal": "arn:aws:iam::Quick Account:role/service-role/aws-quicksight-service-role-v0",
  "Action": "s3:*",
  "Effect": "Allow",
  "Resource": [
    "arn:aws:s3:::amzn-s3-demo-bucket",
    "arn:aws:s3:::amzn-s3-demo-bucket/*"
  ],
  "Condition": {
    "Null": {
      "aws:SourceVpce": "false"
    }
  }
}
```
+ `amzn-s3-demo-bucket` をバケット名に置き換えます。
+ を Amazon Quick アカウント`Quick Account`に置き換えます。

この`"aws:SourceVpce": "false"`条件により、Amazon Quick は VPC エンドポイントを介してのみバケットにアクセスし、セキュリティ要件を維持できます。

### ポリシーを拒否する
<a name="s3-vpc-deny-policies"></a>

拒否ポリシーを介して特定の VPC または VPC エンドポイントへのトラフィックを制限するポリシーがバケットにある場合は、拒否ポリシーが許可ポリシーよりも優先されるため、このポリシーを元に戻す必要があります。

例えば、次のようになります。

```
{
   "Version":"2012-10-17"		 	 	 ,                   
   "Id": "Policy1415115909152",
   "Statement": [
     {
       "Sid": "Access-to-specific-VPCE-only",
       "Principal": "*",
       "Action": "s3:*",
       "Effect": "Deny",
       "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket",
                    "arn:aws:s3:::amzn-s3-demo-bucket/*"],
       "Condition": {
         "StringNotEquals": {
           "aws:SourceVpce": "vpce-0abcdef1234567890"
         }
       }
     }
   ]
}
```

以下に戻す必要があります。

```
{
   "Version":"2012-10-17"		 	 	 ,                   
   "Id": "Policy1415115909152",
   "Statement": [
     {
       "Sid": "Access-to-specific-VPCE-only",
       "Principal": "*",
       "Action": "s3:*",
       "Effect": "Allow",
       "Resource": ["arn:aws:s3:::amzn-s3-demo-bucket",
                    "arn:aws:s3:::amzn-s3-demo-bucket/*"],
       "Condition": {
         "StringEquals": {
           "aws:SourceVpce": "vpce-0abcdef1234567890"
         }
       }
     }
   ]
}
```

### ベストプラクティス
<a name="s3-vpc-best-practices"></a>

**Amazon Quick ロールへのアクセスを制限する**

アクセスポリシーでは、発信者が Amazon Quick ロール ARN、または少なくとも Amazon Quick アカウントであることを強制する必要があります。これにより、VPC トラフィックを許可しても、呼び出しは予想されるソースからのみ送信されます。

### セキュリティに関する推奨事項
<a name="s3-vpc-security-recommendations"></a>
+ 最も安全なトラフィックのためにポリシーを Amazon Quick ロールに制限する
+ バケットポリシーを定期的に見直して、最小特権の原則に従っていることを確認します。

## IAM ポリシー割り当てを使用して Amazon S3 バケットアクセスを制限する
<a name="s3-restrict-bucket-access"></a>

IAM ポリシーを作成し、Amazon Quick IAM ポリシーの割り当てを通じて特定のユーザー、グループ、またはすべてのユーザーに割り当てることで、Amazon Quick ユーザーがナレッジベースの作成に使用できる Amazon S3 バケットを制御できます。これにより、ACL 対応のナレッジベースなど、特定のバケットに対してナレッジベースを作成できるユーザーを制限できます。

**注記**  
Amazon Quick を通じて割り当てられた IAM ポリシーは、リソースレベルのポリシーよりも AWS 優先されます。アクセス要件を確実に満たすには、IAM ポリシーを適切に設定します。

例えば、ACL 対応バケットへのアクセスを必要とする特定のユーザーに制限ポリシーを割り当て、ACL 以外のバケットのすべてのユーザーにより広範なポリシーを割り当てることができます。

### ステップ 1: IAM で Amazon S3 アクセスポリシーを作成する
<a name="s3-create-iam-policy"></a>

ナレッジベース作成のためにユーザーがアクセスできる Amazon S3 バケットを定義する AWS IAM ポリシーを IAM コンソールに作成します。次のポリシー例では、2 つの特定のバケットへのアクセスを許可します。

```
{
    "Version": "2012-10-17"		 	 	 ,
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:ListAllMyBuckets",
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Action": [
                "s3:ListBucket"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-1",
                "arn:aws:s3:::amzn-s3-demo-bucket-2"
            ]
        },
        {
            "Action": [
                "s3:GetObject",
                "s3:GetObjectVersion"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-1/*",
                "arn:aws:s3:::amzn-s3-demo-bucket-2/*"
            ]
        },
        {
            "Action": [
                "s3:ListBucketMultipartUploads",
                "s3:GetBucketLocation"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-1",
                "arn:aws:s3:::amzn-s3-demo-bucket-2"
            ]
        },
        {
            "Action": [
                "s3:PutObject",
                "s3:AbortMultipartUpload",
                "s3:ListMultipartUploadParts"
            ],
            "Effect": "Allow",
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket-1/*",
                "arn:aws:s3:::amzn-s3-demo-bucket-2/*"
            ]
        }
    ]
}
```

`amzn-s3-demo-bucket-1` と を、アクセスを許可する Amazon S3 バケットの名前`amzn-s3-demo-bucket-2`に置き換えます。

### ステップ 2: Amazon Quick でポリシーを割り当てる
<a name="s3-assign-iam-policy"></a>

IAM ポリシーを作成したら、Amazon Quick ユーザーまたはグループに割り当てます。

1. Amazon Quick 管理コンソールのアクセス**許可**で、**IAM ポリシーの割り当て**を選択します。

1. **新しい割り当ての追加** を選択します。

1. 割り当ての名前を入力します。

1. **IAM ポリシーの選択**ページで、ステップ 1 で作成した IAM ポリシーを検索して選択します。[**次へ**] を選択します。

1. **ユーザーとグループの割り当て**ページで、次のいずれかを選択します。
   + **すべてのユーザーとグループに割り当て**を選択して、現在および将来のすべてのユーザーにポリシーを適用します。
   + ポリシーを割り当てる特定のユーザーまたはグループを検索して選択します。

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

1. **変更の確認と有効化**ページで、割り当ての詳細を確認し、**保存と有効化**を選択します。

IAM ポリシー割り当てを通じてアクセスを明示的に許可されていないユーザーは、制限された Amazon S3 バケットにアクセスして統合またはナレッジベースを作成することはできません。