使用資料庫角色和 IAM 身分驗證 - Amazon Aurora DSQL

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

使用資料庫角色和 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 角色來連線至叢集。

  1. 使用 SQL 公用程式連線至 Aurora DSQL 叢集。

    使用 admin 資料庫角色搭配 IAM 身分,該身分已獲授權讓 IAM 動作dsql:DbConnectAdmin連線至您的叢集。

  2. 建立新的資料庫角色,請務必指定 WITH LOGIN選項。

    CREATE ROLE example WITH LOGIN;
  3. 將資料庫角色與 IAM 角色 ARN 建立關聯。

    AWS IAM GRANT example TO 'arn:aws:iam::012345678912:role/example';
  4. 將資料庫層級許可授予資料庫角色

    下列範例使用 GRANT命令在資料庫中提供授權。

    GRANT USAGE ON SCHEMA myschema TO example; GRANT SELECT, INSERT, UPDATE ON ALL TABLES IN SCHEMA myschema TO example;

如需詳細資訊,請參閱 PostgreSQL GRANT 文件中的 PostgreSQL 和 PostgreSQL PostgreSQL 權限

從 IAM 角色撤銷資料庫授權

若要撤銷資料庫授權,請使用 AWS IAM REVOKE操作。

AWS IAM REVOKE example FROM 'arn:aws:iam::012345678912:role/example';

若要進一步了解撤銷授權,請參閱 使用 IAM 和 PostgreSQL 撤銷授權