You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过CDK配置AWS Cognito对接AWS SES的服务关联角色权限设置咨询

解决方案

一、权限配置位置判断

  • 常规场景不需要将该角色权限添加到你现有的Permission Boundary中:Cognito用于对接SES的服务关联角色(SLR)是AWS托管的IAM资源,默认由AWS预配置了符合权限最小化要求的信任策略和操作权限,用户自定义的Permission Boundary仅作用于你手动创建的IAM实体,不对AWS托管的服务关联角色生效。
  • 仅当你的AWS账号配置了全局强制Permission Boundary规则(要求所有新创建的角色必须附加指定权限边界)时,才需要将Cognito SLR所需的SES发送邮件权限添加到该全局权限边界的允许列表中。

二、CDK配置方法

默认无需手动创建该服务关联角色,你在CDK中完成Cognito User Pool的SES发件配置时,AWS会自动在你的账号下生成名为AWSServiceRoleForAmazonCognitoIdpEmail的服务关联角色,该角色默认附带AWS托管的AmazonCognitoIdpEmailServiceRolePolicy权限,完全满足Cognito调用SES发邮件的需求。

如果你需要显式通过CDK声明该角色避免自动创建的权限问题,可以使用CfnServiceLinkedRole资源实现,以下是TypeScript示例:

import * as iam from 'aws-cdk-lib/aws-iam';
import * as cdk from 'aws-cdk-lib';

const app = new cdk.App();
const stack = new cdk.Stack(app, 'CognitoSesSlrStack');

// 显式创建Cognito对接SES的服务关联角色
new iam.CfnServiceLinkedRole(stack, 'CognitoSesSlr', {
  awsServiceName: 'cognito-idp.email.amazonaws.com',
  description: 'Service linked role for Cognito to send emails via SES'
});

三、配置验证

部署完成后可登录IAM控制台,在角色列表中搜索AWSServiceRoleForAmazonCognitoIdpEmail,确认其信任策略主体为cognito-idp.amazonaws.com、附加的权限策略为AWS官方托管策略即可。


内容的提问来源于stack exchange,提问作者droebi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 10:45:02