

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 先決條件
<a name="gs-prerequisites"></a>

下列步驟是入門練習的 p 必要條件。這些步驟說明如何設定您的帳戶、建立 IAM 角色，以授予 Amazon Kendra 代表您進行呼叫的許可，以及從 Amazon S3 儲存貯體為文件編製索引。使用 S3 儲存貯體做為範例，但您可以使用 Amazon Kendra 支援的其他資料來源。請參閱[資料來源](https://docs.aws.amazon.com/kendra/latest/dg/hiw-data-source.html)。

## 註冊 AWS 帳戶
<a name="sign-up-for-aws"></a>

若要開始使用 AWS，您需要 AWS 帳戶。如需建立 的相關資訊 AWS 帳戶，請參閱《 *AWS 帳戶管理 參考指南*》中的 [入門 AWS 帳戶](https://docs.aws.amazon.com//accounts/latest/reference/getting-started.html)。
+ 如果您使用的是包含要測試文件的 S3 儲存貯體 Amazon Kendra，請在您使用的相同區域中建立 S3 儲存貯體 Amazon Kendra。如需說明，請參閱《*Amazon Simple Storage Service 使用者指南*》中的[建立和設定 S3 儲存貯](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-configure-bucket.html)體。

  將文件上傳至 S3 儲存貯體。如需說明，請參閱《*Amazon Simple Storage Service 使用者指南*》中的[上傳、下載和管理物件](https://docs.aws.amazon.com/AmazonS3/latest/userguide/upload-download-objects.html)。

  如果您使用的是另一個資料來源，您必須有作用中的網站和登入資料才能連線至資料來源。

如果您使用 主控台開始使用，請從 開始[Amazon Kendra 主控台入門](gs-console.md)。

## Amazon Kendra 資源： AWS CLI、SDK、主控台
<a name="gs-prereq-cli-sdk"></a>

如果您使用 CLI、 SDK 或 主控台，則需要特定許可。

若要將 Amazon Kendra 用於 CLI、軟體開發套件或主控台，您必須具有允許 代表您建立和管理資源 Amazon Kendra 的許可。根據您的使用案例，這些許可包括 Amazon Kendra API 本身的存取權， AWS KMS keys 如果您想要透過自訂 CMK 加密資料，如果您想要與 整合 AWS IAM Identity Center 或[建立搜尋體驗，](https://docs.aws.amazon.com/kendra/latest/dg/deploying-search-experience-no-code.html)則為 Identity Center 目錄。如需不同使用案例的完整許可清單，請參閱 [IAM 角色](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html)。

首先，您必須將下列許可連接至您的 IAM 使用者。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Stmt1644430853544",
      "Action": [
        "kms:CreateGrant",
        "kms:DescribeKey"
      ],
      "Effect": "Allow",
      "Resource": "*"
    },
    {
      "Sid": "Stmt1644430878150",
      "Action": "kendra:*",
      "Effect": "Allow",
      "Resource": "*"
    },
    {
      "Sid": "Stmt1644430973706",
      "Action": [
        "sso:AssociateProfile",
        "sso:CreateManagedApplicationInstance",
        "sso:DeleteManagedApplicationInstance",
        "sso:DisassociateProfile",
        "sso:GetManagedApplicationInstance",
        "sso:GetProfile",
        "sso:ListDirectoryAssociations",
        "sso:ListProfileAssociations",
        "sso:ListProfiles"
      ],
      "Effect": "Allow",
      "Resource": "*"
    },
    {
      "Sid": "Stmt1644430999558",
      "Action": [
        "sso-directory:DescribeGroup",
        "sso-directory:DescribeGroups",
        "sso-directory:DescribeUser",
        "sso-directory:DescribeUsers"
      ],
      "Effect": "Allow",
      "Resource": "*"
    },
    {
      "Sid": "Stmt1644431025960",
      "Action": [
        "identitystore:DescribeGroup",
        "identitystore:DescribeUser",
        "identitystore:ListGroups",
        "identitystore:ListUsers"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}
```

------

其次，如果您使用 CLI 或 SDK，您還必須建立 IAM 角色和政策才能存取 Amazon CloudWatch Logs。如果您使用的是 主控台，則不需要為此建立 IAM 角色和政策。您可以在主控台程序中建立此項目。

**為允許 Amazon Kendra 存取您的 的 和 開發套件建立 IAM 角色 AWS CLI 和政策 Amazon CloudWatch Logs。**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 的 IAM 主控台。

1. 從左側選單中，選擇**政策**，然後選擇**建立政策**。

1. 選擇 **JSON**，然後使用下列項目取代預設政策：

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "cloudwatch:PutMetricData"
               ],
               "Resource": "*",
               "Condition": {
                   "StringEquals": {
                       "cloudwatch:namespace": "AWS/Kendra"
                   }
               }
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:DescribeLogGroups"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogGroup"
               ],
               "Resource": [
                   "arn:aws:logs:{{us-east-1}}:{{123456789012}}:log-group:/aws/kendra/*"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:DescribeLogStreams",
                   "logs:CreateLogStream",
                   "logs:PutLogEvents"
               ],
               "Resource": [
                   "arn:aws:logs:{{us-east-1}}:{{123456789012}}:log-group:/aws/kendra/*:log-stream:*"
               ]
           }
       ]
   }
   ```

------

1. 選擇**檢閱政策**。

1. 命名政策"KendraPolicyForGettingStartedIndex"，然後選擇**建立政策**。

1. 從左側功能表中，選擇**角色**，然後選擇**建立角色**。

1. 選擇**另一個 AWS 帳戶**，然後在帳戶 ID 中輸入**您的帳戶 ID**。選擇**下一步：許可**。

1. 選擇您在上面建立的政策，然後選擇**下一步：標籤**

1. 不要新增任何標籤。選擇下**一步：檢閱**。

1. 命名角色"KendraRoleForGettingStartedIndex"，然後選擇**建立角色**。

1. 尋找您剛建立的角色。選擇角色名稱以開啟摘要。選擇**信任關係**，然後選擇**編輯信任關係**。

1. 將現有的信任關係取代為下列項目：

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
           "Effect": "Allow",
           "Principal": {
             "Service": "kendra.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
         }
       ]
   }
   ```

------

1. 選擇**更新信任政策**。

第三，如果您使用 Amazon S3 來存放文件或使用 S3 進行測試 Amazon Kendra，您還必須建立 IAM 角色和政策來存取儲存貯體。如果您使用的是其他資料來源，請參閱[IAM 資料來源的角色](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds)。

**建立允許 存取和索引儲存 Amazon S3 貯 Amazon Kendra 體 IAM 的角色和政策。**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 的 IAM 主控台。

1. 從左側選單中，選擇**政策**，然後選擇**建立政策**。

1. 選擇 **JSON**，然後使用下列項目取代預設政策：

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Action": [
                   "s3:GetObject"
               ],
               "Resource": [
                   "arn:aws:s3:::{{bucket name}}/*"
               ],
               "Effect": "Allow"
           },
           {
               "Action": [
                   "s3:ListBucket"
               ],
               "Resource": [
                   "arn:aws:s3:::{{bucket name}}"
               ],
               "Effect": "Allow"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kendra:BatchPutDocument",
                   "kendra:BatchDeleteDocument"
               ],
               "Resource": "arn:aws:kendra:{{us-east-1}}:{{123456789012}}:index/*"
           }
       ]
   }
   ```

------

1. 選擇**檢閱政策**。

1. 將政策命名為「KendraPolicyForGettingStartedDataSource」，然後選擇**建立政策**。

1. 從左側功能表中，選擇**角色**，然後選擇**建立角色**。

1. 選擇**另一個 AWS 帳戶**，然後在帳戶 ID 中輸入**您的帳戶 ID**。選擇**下一步：許可**。

1. 選擇您在上面建立的政策，然後選擇**下一步：標籤**

1. 不要新增任何標籤。選擇下**一步：檢閱**。

1. 將角色命名為「KendraRoleForGettingStartedDataSource」，然後選擇**建立角色**。

1. 尋找您剛建立的角色。選擇角色名稱以開啟摘要。選擇**信任關係**，然後選擇**編輯信任關係**。

1. 將現有的信任關係取代為下列項目：

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
           "Effect": "Allow",
           "Principal": {
             "Service": "kendra.amazonaws.com"
           },
           "Action": "sts:AssumeRole"
         }
       ]
   }
   ```

------

1. 選擇**更新信任政策**。

根據您想要如何使用 Amazon Kendra API，執行下列其中一項操作。
+ [開始使用 (AWS CLI)](gs-cli.md)
+ [開始使用 (適用於 Java 的 AWS SDK)](gs-java.md)
+ [開始使用 (適用於 Python (Boto3) 的 AWS SDK)](gs-python.md)