

# 创建 IAM 策略以访问 AWS Lambda 资源
<a name="AuroraMySQL.Integrating.Authorizing.IAM.LambdaCreatePolicy"></a>

您可以创建一个 IAM 策略，以便为 Aurora 提供所需的最小权限以代表您调用 AWS Lambda 函数。

以下策略添加 Aurora 代表您调用 AWS Lambda 函数所需的权限。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowAuroraToExampleFunction",
      "Effect": "Allow",
      "Action": "lambda:InvokeFunction",
      "Resource": "arn:aws:lambda:us-east-1:123456789012:function:example_function"
    }
  ]
}
```

------

您可以按照以下步骤创建一个 IAM 策略，以便为 Aurora 提供所需的最小权限以代表您调用 AWS Lambda 函数。要允许 Aurora 调用所有 AWS Lambda 函数，您可以跳过这些步骤并使用预定义 `AWSLambdaRole` 策略，而不是创建自己的策略。

**创建 IAM 策略以授予调用 AWS Lambda 函数的权限**

1. 打开 [IAM 控制台](https://console.aws.amazon.com/iam/home?#home)。

1. 在导航窗格中，选择**策略**。

1. 选择 **Create policy (创建策略)**。

1. 在**可视化编辑器**选项卡上，选择**选择服务**，然后选择 **Lambda**。

1. 在 **Actions (操作)** 下面选择 **Expand all (全部展开)**，然后选择 IAM 策略所需的 AWS Lambda 权限。

   确保选择了 `InvokeFunction`。这是允许 Amazon Aurora 调用 AWS Lambda 函数所需的最小权限。

1. 选择**资源**，然后为**函数**选择**添加 ARN**。

1. 在**添加 ARN** 对话框中，提供有关资源的详细信息。

   指定要允许访问的 Lambda 函数。例如，如果您希望允许 Aurora 访问名为 `example_function` 的 Lambda 函数，请将 ARN 值设置为 `arn:aws:lambda:::function:example_function`。

   有关如何为 AWS Lambda 定义访问策略的更多信息，请参阅 [AWS Lambda 的身份验证和访问控制](https://docs.aws.amazon.com/lambda/latest/dg/lambda-auth-and-access-control.html)。

1. 或者，选择**添加额外的权限**以将另一个 AWS Lambda 函数添加到策略中，然后为该函数重复前面的步骤。
**注意**  
您可以重复该操作，以便在希望 Aurora 访问的每个 AWS Lambda 函数的策略中添加相应的函数权限语句。

1. 选择 **Review policy (查看策略)**。

1. 将**名称**设置为适合您的 IAM 策略的名称，例如 `AllowAuroraToExampleFunction`。在创建 IAM 角色与 Aurora 数据库集群关联时，需要使用此名称。您也可以添加可选的**描述**值。

1. 选择**创建策略**。

1. 完成 [创建 IAM 角色以允许 Amazon Aurora 访问AWS服务](AuroraMySQL.Integrating.Authorizing.IAM.CreateRole.md) 中的步骤。