

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

# 為受管 Amazon Bedrock 知識庫建立服務角色
<a name="kb-managed-permissions"></a>

若要將自訂角色用於受管知識庫，而非 Amazon Bedrock 自動建立的知識庫，請建立 IAM 角色，並依照[建立角色以將許可委派給 AWS 服務中的步驟連接下列許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)。僅包含您自己的安全所需的許可。

**注意**  
使用服務角色時，無法在多個角色之間共用政策。
+ 信任關係
+ Amazon Bedrock 基本模型的存取
+ 存取您用來存放資料的資料來源

**Topics**
+ [信任關係](#kb-managed-permissions-trust)
+ [存取 Amazon Bedrock 模型的權限](#kb-managed-permissions-access-models)
+ [存取您的資料來源的許可](#kb-managed-permissions-access-ds)

## 信任關係
<a name="kb-managed-permissions-trust"></a>

下列政策允許 Amazon Bedrock 擔任此角色，並建立和管理知識庫。您可以使用一或多個全域條件內容索引鍵來限制權限範圍。如需詳細資訊，請參閱 [AWS 全域條件內容索引鍵](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html)。將 `aws:SourceAccount` 值設定為您的帳戶 ID。使用 `ArnEquals` 或 `ArnLike` 條件將範圍限制為特定的知識庫。

**注意**  
作為安全目的的最佳實務，請在建立特定知識庫 ID 之後，將 {{\*}} 取代為特定知識庫 ID。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "bedrock.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{123456789012}}"
                },
                "ArnLike": {
                    "AWS:SourceArn": "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:knowledge-base/{{*}}"
                }
            }
        }
    ]
}
```

------

## 存取 Amazon Bedrock 模型的權限
<a name="kb-managed-permissions-access-models"></a>

連接以下政策，為角色提供使用 Amazon Bedrock 模型以嵌入來源資料的許可。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:ListFoundationModels",
                "bedrock:ListCustomModels"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/amazon.titan-embed-text-v1",
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/cohere.embed-english-v3",
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/cohere.embed-multilingual-v3"
            ]
        }
    ]
}
```

------

## 存取您的資料來源的許可
<a name="kb-managed-permissions-access-ds"></a>

從下列資料來源中選取，以連接角色的必要許可。

**Topics**
+ [存取您的 Amazon S3 資料來源的許可](#kb-managed-permissions-access-s3)
+ [存取 Confluence 資料來源的許可](#kb-managed-permissions-access-confluence)
+ [存取 Microsoft SharePoint 資料來源的許可](#kb-managed-permissions-access-sharepoint)
+ [存取 Web Crawler 資料來源的許可](#kb-managed-permissions-access-webcrawler)
+ [存取 Microsoft OneDrive 資料來源的許可](#kb-managed-permissions-access-onedrive)
+ [存取 Google Drive 資料來源的許可](#kb-managed-permissions-access-googledrive)

### 存取您的 Amazon S3 資料來源的許可
<a name="kb-managed-permissions-access-s3"></a>

如果您的資料來源是 Amazon S3，請連接下列政策，為角色提供存取您將連線作為資料來源之 S3 儲存貯體的許可。

如果您使用 AWS KMS 金鑰加密資料來源，請依照 中的步驟，將解密金鑰的許可連接到角色[在 Amazon S3 中解密資料來源 AWS KMS 金鑰的許可](encryption-kb.md#encryption-kb-ds)。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ListBucketStatement",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "{{123456789012}}"
                }
            }
        },
        {
            "Sid": "S3GetObjectStatement",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "{{123456789012}}"
                }
            }
        }
    ]
}
```

------

### 存取 Confluence 資料來源的許可
<a name="kb-managed-permissions-access-confluence"></a>

連接下列政策，以提供讓角色存取 Confluence 的許可。

**注意**  
`secretsmanager:PutSecretValue` 只有在您使用 OAuth 2.0 身分驗證搭配重新整理字符時才需要。  
Confluence OAuth2.0 **存取**字符的預設到期時間為 60 分鐘。如果此字符在資料來源同步 (同步任務) 時過期，Amazon Bedrock 將使用提供的**重新整理**字符來重新產生此字符。此重新產生會同時重新整理存取和重新整理字符。為了讓字符從目前同步任務更新到下一個同步任務，Amazon Bedrock 需要金鑰憑證的寫入/放置許可。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```

### 存取 Microsoft SharePoint 資料來源的許可
<a name="kb-managed-permissions-access-sharepoint"></a>

連接下列政策，以提供 角色存取 Microsoft SharePoint 的許可。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```

**注意**  
如果您使用憑證型身分驗證 (X.509) 並將憑證存放在 Amazon S3 儲存貯體中，您還必須將`s3:GetObject`許可授予儲存貯體和儲存憑證檔案 (.pfx 或 .pem) 之金鑰的服務角色。下列範例顯示所需的其他政策陳述式：  

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "s3:GetObject"
        ],
        "Resource": [
            "arn:aws:s3:::{{${CertificateBucketName}}}/{{${CertificateKeyPath}}}"
        ]
    }]
}
```

### 存取 Web Crawler 資料來源的許可
<a name="kb-managed-permissions-access-webcrawler"></a>

連接下列政策，以提供 角色透過 Web 爬蟲程式存取網站的許可。如果您的網站需要身分驗證，請包含存取存放憑證之 AWS Secrets Manager 秘密的許可。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```

### 存取 Microsoft OneDrive 資料來源的許可
<a name="kb-managed-permissions-access-onedrive"></a>

連接下列政策，以提供 角色存取 Microsoft OneDrive 的許可。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```

### 存取 Google Drive 資料來源的許可
<a name="kb-managed-permissions-access-googledrive"></a>

連接下列政策，以提供 角色存取 Google Drive 的許可。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```