選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

在 Amazon Bedrock 知識庫中為您的結構化資料存放區設定查詢引擎

焦點模式
在 Amazon Bedrock 知識庫中為您的結構化資料存放區設定查詢引擎 - Amazon Bedrock

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

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

Amazon Bedrock 知識庫使用 Amazon Redshift 作為查詢引擎來查詢資料存放區。查詢引擎會從結構化資料存放區存取中繼資料,並使用中繼資料協助產生 SQL 查詢。下表顯示可用於不同查詢引擎的身分驗證方法:

身分驗證方法 Amazon Redshift 佈建 Amazon Redshift Serverless
IAM Yes Yes
資料庫使用者名稱 Yes No
AWS Secrets Manager Yes Yes

下列主題說明如何設定查詢引擎,並設定 Amazon Bedrock Knowledge Bases 服務角色使用查詢引擎的許可。

建立 Amazon Redshift 佈建或無伺服器查詢引擎

您可以建立 Amazon Redshift 佈建或無伺服器查詢引擎,從結構化資料存放區存取中繼資料。如果您已經設定 Amazon Redshift 查詢引擎,則可以略過此先決條件。否則,請設定下列其中一種類型的查詢引擎:

在佈建的 Amazon Redshift 中設定查詢引擎
  1. 請遵循《Amazon Redshift 入門指南》中的步驟 1:建立範例 Amazon Redshift 叢集

  2. 請記下叢集 ID。

  3. (選用) 如需 Amazon Redshift 佈建叢集的詳細資訊,請參閱《Amazon Redshift 管理指南》中的 Amazon Redshift 佈建叢集

在 Amazon Redshift Serverless 中設定查詢引擎
  1. 僅遵循《Amazon Redshift 入門指南》中的使用 Amazon Redshift Serverless 建立資料倉儲中的設定程序,並使用預設設定進行設定。

  2. 請注意工作群組 ARN。

  3. (選用) 如需 Amazon Redshift Serverless 工作群組的詳細資訊,請參閱《Amazon Redshift 管理指南》中的工作群組和命名空間

設定 Amazon Bedrock Knowledge Bases 服務角色存取 Amazon Redshift 查詢引擎的許可

Amazon Bedrock 知識庫使用服務角色將知識庫連接到結構化資料存放區、從這些資料存放區擷取資料,並根據使用者查詢和資料存放區的結構產生 SQL 查詢。

注意

如果您計劃使用 AWS Management Console 來建立知識庫,您可以略過此先決條件。主控台將建立具有適當許可的 Amazon Bedrock 知識庫服務角色。

若要建立具有適當許可的自訂 IAM 服務角色,請遵循建立角色中的步驟,將許可委派給 , AWS 服務並連接 中定義的信任關係信任關係

然後,為您的知識庫新增存取 Amazon Redshift 查詢引擎和資料庫的許可。展開適用於您的使用案例的區段:

將下列政策連接至您的自訂服務角色,以允許它存取您的資料並使用它產生查詢:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RedshiftDataAPIStatementPermissions", "Effect": "Allow", "Action": [ "redshift-data:GetStatementResult", "redshift-data:DescribeStatement", "redshift-data:CancelStatement" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "redshift-data:statement-owner-iam-userid": "${aws:userid}" } } }, { "Sid": "RedshiftDataAPIExecutePermissions", "Effect": "Allow", "Action": [ "redshift-data:ExecuteStatement" ], "Resource": [ "arn:aws:redshift:${Region}:${Account}:cluster:${Cluster}" ] }, { "Sid": "SqlWorkbenchAccess", "Effect": "Allow", "Action": [ "sqlworkbench:GetSqlRecommendations", "sqlworkbench:PutSqlGenerationContext", "sqlworkbench:GetSqlGenerationContext", "sqlworkbench:DeleteSqlGenerationContext" ], "Resource": "*" }, { "Sid": "GenerateQueryAccess", "Effect": "Allow", "Action": [ "bedrock:GenerateQuery" ], "Resource": "*" } ] }

您也需要新增許可,以允許您的服務角色向查詢引擎進行身分驗證。展開區段以查看該方法的許可。

IAM

若要讓您的服務角色使用 IAM 驗證您的 Amazon Redshift 佈建查詢引擎,請將下列政策連接至您的自訂服務角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GetCredentialsWithFederatedIAMCredentials", "Effect": "Allow", "Action": "redshift:GetClusterCredentialsWithIAM", "Resource": [ "arn:aws:redshift:${region}:${account}:dbname:${cluster}/${database}" ] } }
Database user

若要以 Amazon Redshift 資料庫使用者身分進行身分驗證,請將下列政策連接至服務角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GetCredentialsWithClusterCredentials", "Effect": "Allow", "Action": [ "redshift:GetClusterCredentials" ], "Resource": [ "arn:aws:redshift:${region}:${account}:dbuser:${cluster}/${dbuser}", "arn:aws:redshift:${region}:${account}:dbname:${cluster}/${database}" ] } ] }
AWS Secrets Manager

若要讓您的服務角色使用 AWS Secrets Manager 秘密驗證 Amazon Redshift 佈建查詢引擎,請執行下列動作:

  • 將下列政策連接至角色:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "GetSecretPermissions", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${region}:${account}:secret:${secretName}" ] } ] }

將下列政策連接至您的自訂服務角色,以允許它存取您的資料並使用它產生查詢:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RedshiftDataAPIStatementPermissions", "Effect": "Allow", "Action": [ "redshift-data:GetStatementResult", "redshift-data:DescribeStatement", "redshift-data:CancelStatement" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "redshift-data:statement-owner-iam-userid": "${aws:userid}" } } }, { "Sid": "RedshiftDataAPIExecutePermissions", "Effect": "Allow", "Action": [ "redshift-data:ExecuteStatement" ], "Resource": [ "arn:aws:redshift:${Region}:${Account}:cluster:${Cluster}" ] }, { "Sid": "SqlWorkbenchAccess", "Effect": "Allow", "Action": [ "sqlworkbench:GetSqlRecommendations", "sqlworkbench:PutSqlGenerationContext", "sqlworkbench:GetSqlGenerationContext", "sqlworkbench:DeleteSqlGenerationContext" ], "Resource": "*" }, { "Sid": "GenerateQueryAccess", "Effect": "Allow", "Action": [ "bedrock:GenerateQuery" ], "Resource": "*" } ] }

您也需要新增許可,以允許您的服務角色向查詢引擎進行身分驗證。展開區段以查看該方法的許可。

IAM

若要讓您的服務角色使用 IAM 驗證您的 Amazon Redshift 佈建查詢引擎,請將下列政策連接至您的自訂服務角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GetCredentialsWithFederatedIAMCredentials", "Effect": "Allow", "Action": "redshift:GetClusterCredentialsWithIAM", "Resource": [ "arn:aws:redshift:${region}:${account}:dbname:${cluster}/${database}" ] } }
Database user

若要以 Amazon Redshift 資料庫使用者身分進行身分驗證,請將下列政策連接至服務角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GetCredentialsWithClusterCredentials", "Effect": "Allow", "Action": [ "redshift:GetClusterCredentials" ], "Resource": [ "arn:aws:redshift:${region}:${account}:dbuser:${cluster}/${dbuser}", "arn:aws:redshift:${region}:${account}:dbname:${cluster}/${database}" ] } ] }
AWS Secrets Manager

若要讓您的服務角色使用 AWS Secrets Manager 秘密驗證 Amazon Redshift 佈建查詢引擎,請執行下列動作:

  • 將下列政策連接至角色:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "GetSecretPermissions", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${region}:${account}:secret:${secretName}" ] } ] }

若要讓您的服務角色使用 IAM 驗證您的 Amazon Redshift 佈建查詢引擎,請將下列政策連接至您的自訂服務角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GetCredentialsWithFederatedIAMCredentials", "Effect": "Allow", "Action": "redshift:GetClusterCredentialsWithIAM", "Resource": [ "arn:aws:redshift:${region}:${account}:dbname:${cluster}/${database}" ] } }

連接的許可取決於您的身分驗證方法。展開區段以查看方法的許可。

IAM

若要讓您的服務角色使用 IAM 驗證您的 Amazon Redshift 佈建查詢引擎,請將下列政策連接至您的自訂服務角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RedshiftServerlessGetCredentials", "Effect": "Allow", "Action": "redshift-serverless:GetCredentials", "Resource": [ "arn:aws:redshift-serverless:${Region}:${Account}:workgroup:${WorkgroupId}" ] } }
AWS Secrets Manager

若要讓您的服務角色使用 AWS Secrets Manager 秘密驗證 Amazon Redshift 佈建查詢引擎,請執行下列動作:

  • 將下列政策連接至角色:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "GetSecretPermissions", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${region}:${account}:secret:${secretName}" ] } ] }

連接的許可取決於您的身分驗證方法。展開區段以查看方法的許可。

IAM

若要讓您的服務角色使用 IAM 驗證您的 Amazon Redshift 佈建查詢引擎,請將下列政策連接至您的自訂服務角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RedshiftServerlessGetCredentials", "Effect": "Allow", "Action": "redshift-serverless:GetCredentials", "Resource": [ "arn:aws:redshift-serverless:${Region}:${Account}:workgroup:${WorkgroupId}" ] } }
AWS Secrets Manager

若要讓您的服務角色使用 AWS Secrets Manager 秘密驗證 Amazon Redshift 佈建查詢引擎,請執行下列動作:

  • 將下列政策連接至角色:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "GetSecretPermissions", "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:${region}:${account}:secret:${secretName}" ] } ] }

若要讓您的服務角色使用 IAM 驗證您的 Amazon Redshift 佈建查詢引擎,請將下列政策連接至您的自訂服務角色:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "RedshiftServerlessGetCredentials", "Effect": "Allow", "Action": "redshift-serverless:GetCredentials", "Resource": [ "arn:aws:redshift-serverless:${Region}:${Account}:workgroup:${WorkgroupId}" ] } }
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。