本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用資料庫角色和 IAM 身分驗證
Aurora DSQL 支援使用 IAM 角色和 IAM 使用者進行身分驗證。您可以使用任一種方法來驗證和存取 Aurora DSQL 資料庫。
IAM 角色
IAM 角色是 中的身分 AWS 帳戶 ,具有特定許可,但未與特定人員建立關聯。使用 IAM 角色可提供臨時安全登入資料。您可以透過多種方式暫時擔任 IAM 角色:
透過在 中切換角色 AWS Management Console
透過呼叫 AWS CLI 或 AWS API 操作
使用自訂 URL
擔任角色之後,您可以使用角色的暫時登入資料來存取 Aurora DSQL。如需使用角色方法的詳細資訊,請參閱《IAM 使用者指南》中的 IAM 身分。
IAM 使用者
IAM 使用者是 中的身分 AWS 帳戶 ,具有特定許可,並與單一人員或應用程式相關聯。IAM 使用者具有長期登入資料,例如可用於存取 Aurora DSQL 的密碼和存取金鑰。
注意
若要使用 IAM 身分驗證執行 SQL 命令,您可以在以下範例中使用 IAM 角色 ARNs 或 IAM 使用者 ARNs。
授權資料庫角色連線至您的叢集
建立 IAM 角色,並使用 IAM 政策動作授予連線授權:dsql:DbConnect
。
IAM 政策也必須授予存取叢集資源的許可。使用萬用字元 (*
) 或遵循搭配使用 IAM 條件金鑰與 Amazon Aurora DSQL 中的指示。
授權資料庫角色在您的資料庫中使用 SQL
您必須使用具有 授權的 IAM 角色來連線至叢集。
-
使用 SQL 公用程式連線至 Aurora DSQL 叢集。
使用
admin
資料庫角色搭配 IAM 身分,該身分已獲授權讓 IAM 動作dsql:DbConnectAdmin
連線至您的叢集。 -
建立新的資料庫角色,請務必指定
WITH LOGIN
選項。CREATE ROLE example WITH LOGIN;
-
將資料庫角色與 IAM 角色 ARN 建立關聯。
AWS IAM GRANT example TO 'arn:aws:iam::
012345678912
:role/example
'; -
將資料庫層級許可授予資料庫角色
下列範例使用
GRANT
命令在資料庫中提供授權。GRANT USAGE ON SCHEMA myschema TO example; GRANT SELECT, INSERT, UPDATE ON ALL TABLES IN SCHEMA myschema TO example;
如需詳細資訊,請參閱 PostgreSQL GRANT
從 IAM 角色撤銷資料庫授權
若要撤銷資料庫授權,請使用 AWS IAM REVOKE
操作。
AWS IAM REVOKE example FROM 'arn:aws:iam::
012345678912
:role/example
';
若要進一步了解撤銷授權,請參閱 使用 IAM 和 PostgreSQL 撤銷授權。