

# Lambda へのアクセスを Aurora に許可する
<a name="AuroraMySQL.Integrating.LambdaAccess"></a>

Aurora MySQL DB クラスターから Lambda 関数を呼び出すには、まず Lambda へのアクセス権限をクラスターに付与する必要があります。

**Lambda へのアクセス権限を Aurora MySQL に付与するには**

1. Aurora MySQL DB クラスターからの Lambda 関数の呼び出しを許可するアクセス許可を付与する AWS Identity and Access Management (IAM) ポリシーを作成します。手順については、「[AWS Lambda リソースにアクセスするための IAM ポリシーの作成](AuroraMySQL.Integrating.Authorizing.IAM.LambdaCreatePolicy.md)」を参照してください。

1. IAM ロールを作成して、「[AWS Lambda リソースにアクセスするための IAM ポリシーの作成](AuroraMySQL.Integrating.Authorizing.IAM.LambdaCreatePolicy.md)」で作成した IAM ポリシーを新しい IAM ロールにアタッチします。手順については、「[Amazon Aurora が AWS のサービスにアクセスすることを許可する IAM ロールの作成](AuroraMySQL.Integrating.Authorizing.IAM.CreateRole.md)」を参照してください。

1. DB クラスターの `aws_default_lambda_role` パラメータに新しい IAM ロールの Amazon リソースネーム (ARN) を設定します。

   クラスターが Aurora Global Database の一部である場合は、グローバルデータベース内の Aurora クラスターごとに同じ設定を適用します。

   DB クラスターのパラメータの詳細については、「[Amazon Aurora の DB クラスターパラメータと DB インスタンスパラメータ](USER_WorkingWithDBClusterParamGroups.md#Aurora.Managing.ParameterGroups)」を参照してください。

1. Aurora MySQL DB クラスター内のデータベースユーザーが Lambda 関数を呼び出せるように、「[Amazon Aurora が AWS のサービスにアクセスすることを許可する IAM ロールの作成](AuroraMySQL.Integrating.Authorizing.IAM.CreateRole.md)」で作成したロールをその DB クラスターに関連付けます。DB クラスターへの IAM ロールの関連付けの詳細については、「[IAM ロールと Amazon Aurora MySQL DB クラスターの関連付け](AuroraMySQL.Integrating.Authorizing.IAM.AddRoleToDBCluster.md)」を参照してください。

    クラスターが Aurora Global Database の一部である場合は、グローバルデータベース内の Aurora クラスターごとにロールを関連付けます。

1. Lambda へのアウトバウンド接続を許可するように Aurora MySQL DB クラスターを設定します。手順については、「[Amazon Aurora から他の AWS のサービスへのネットワーク通信の有効化](AuroraMySQL.Integrating.Authorizing.Network.md)」を参照してください。

    クラスターが Aurora Global Database の一部である場合は、グローバルデータベース内の Aurora クラスターごとにアウトバウンド接続を有効にします。