Amazon Aurora
Aurora のユーザーガイド

IAM データベース認証

DB クラスターに対して認証を実行するには、AWS Identity and Access Management (IAM) データベース認証を使用します。IAM データベース認証は Aurora MySQL および Aurora PostgreSQL で動作します。この認証方法では、DB クラスターに接続するときにパスワードを使用する必要はありません。代わりに、認証トークンを使用します。

認証トークンは、 Amazon Aurora がリクエストに応じて生成する一意の文字列です。認証トークンは、AWS 署名バージョン 4 を使用して生成されます。各トークンには 15 分の有効期間があります。認証は IAM を使用して外部的に管理されるため、ユーザー認証情報をデータベースに保存する必要はありません。引き続き標準のデータベース認証を使用することもできます。

IAM データベース認証には次の利点があります。

  • データベースに出入りするネットワークトラフィックは、Secure Sockets Layer (SSL) を使用して暗号化されます。

  • IAM を使用して各 DB クラスターで個別に管理するのではなく、データベースリソースへのアクセスを一元的に管理できます。

  • Amazon EC2 で実行するアプリケーションの場合、セキュリティを高めるため、EC2 インスタンスに固有のプロファイル認証情報を使用して、パスワードの代わりにデータベースにアクセスできます。

IAM データベース認証の可用性

IAM データベース認証は、以下のデータベースエンジンおよび DB インスタンスクラスで利用できます。

  • Aurora と MySQL の互換性 バージョン 1.10 以降。DB インスタンスクラスはすべてサポートされています (db.t2.small および db.t3.small を除く)。

  • PostgreSQL との互換性がある Aurora PostgreSQL バージョン 9.6.9 および 10.4 以降。

IAM データベース認証の MySQL の制限事項

Aurora MySQL で IAM データベース認証を使用する場合、1 秒あたりの新しい接続数は 256 までに制限されます。

Amazon Aurora を使用するデータベースエンジンでは、1 秒あたりの認証試行回数に制限はありません。ただし、IAM データベース認証を使用するときは、アプリケーションは認証トークンを生成する必要があります。次に、アプリケーションはそのトークンを使用して DB クラスターに接続します。1 秒あたりの新しい接続数の上限を超えた場合、IAM データベース認証の追加オーバーヘッドによって接続のスロットリングが発生する場合があります。追加オーバーヘッドによって既存の接続が切断される可能性もあります。Aurora MySQL の最大合計接続数については、「Aurora MySQL DB インスタンスへの最大接続数」を参照してください。

現在、IAM データベース認証はAurora MySQL 並列クエリでサポートされていません。

MySQL エンジンを使用する場合には、以下のことをお勧めします。

  • データベースへの一時的な個人アクセス用メカニズムとして IAM データベース認証を使用します。

  • 簡単に再試行できるワークロードに対してのみ、IAM データベース認証を使用します。

  • アプリケーションで 1 秒あたり 256 を超える新しい接続が必要な場合は、IAM データベース認証を使用しないでください。

IAM データベース認証の PostgreSQL の制限事項

PostgreSQL で IAM データベース認証を使用する場合、以下の制限に注意してください。

  • データベースクラスターの 1 秒あたりの最大接続数は、クラスタータイプとワークロードに応じて制限される場合があります。