内容提要
AWS现在支持在未加入域的Amazon ECS Linux容器实例上使用gMSA进行Windows身份验证。以前,使用gMSA凭证在Amazon ECS上运行的工作负载必须使用Windows容器运行。现在,利用Linux容器对应用程序进行现代化改造的客户可以通过具有自动密码管理功能的Kerberos协议使用Windows身份验证。要探索gMSA对Amazon ECS上的Linux容器支持的工作原理,可以使用示例解决方案。部署基础设施后,可以在Amazon ECS上的Linux容器中构建和部署简单的.NET Web应用程序,并使用Credentials Fetcher从gMSA获取Kerberos票证进行身份验证。
关键要点
-
AWS现在支持在未加入域的Amazon ECS Linux容器实例上使用gMSA进行Windows身份验证。
-
gMSA提供自动密码管理,适合Amazon ECS中的容器化应用程序。
-
以前,使用gMSA凭证的工作负载必须使用Windows容器运行。
-
Linux容器可以节省成本、延长正常运行时间并提高可扩展性。
-
客户现在可以通过Kerberos协议使用Windows身份验证,部署安全、易于管理的工作负载。
-
示例解决方案展示了如何在Amazon ECS上构建和部署.NET Web应用程序。
-
有两种模式支持gMSA:无域模式和加入域模式。
-
无域模式推荐用于大多数工作负载,尤其是在需要扩缩时。
-
在无域模式下,Amazon ECS容器实例无需加入目标AD域。
-
在加入域模式下,容器实例需加入目标AD域,适合不想管理单个AD用户账户的情况。
-
部署基础设施需要创建示例解决方案目录并克隆GitHub存储库。
-
CredSpec文件包含gMSA账户的元数据,Credentials Fetcher使用该文件请求Kerberos票证。
-
凭证获取器需要一个安全主体进行AD身份验证以检索gMSA密码。
-
示例应用程序是一个ASP.NET Core 6应用程序,连接到SQL Server数据库。
-
在Amazon ECS任务定义中启用gMSA支持需要设置credentialSpec属性。
-
部署完成后,Web应用程序将运行并使用gMSA进行AD身份验证。
-
故障排除时可查看Amazon ECS任务日志和Credentials Fetcher日志。
-
清理资源以避免未来产生费用,使用cdk destroy命令删除堆栈。
-
通过gMSA,企业可以在不牺牲AD安全身份验证的情况下运行现代容器化工作负载。