Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
高级访问控制
Amazon SageMaker AI 支持基于属性的访问控制 (ABAC),从而使用 ABAC 策略对远程 Visual Studio Code 连接实现精细的访问控制。以下是远程 VS Code 连接的 ABAC 策略示例。
远程访问执行
使用 sagemaker:RemoteAccess 条件键控制对资源的访问。这得到CreateSpace和的支持UpdateSpace APIs。下面的示例使用了 CreateSpace。
您可以确保用户无法创建启用了远程访问的空间。这通过默认采用限制性更强的访问设置,帮助维护安全性。以下策略确保用户能够:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Sid": "DenyCreateSpaceRemoteAccessEnabled",
"Effect": "Deny",
"Action": [
"sagemaker:CreateSpace",
"sagemaker:UpdateSpace"
],
"Resource": "arn:aws:sagemaker:*:*:space/*",
"Condition": {
"StringEquals": {
"sagemaker:RemoteAccess": [
"ENABLED"
]
}
}
},
{
"Sid": "AllowCreateSpace",
"Effect": "Allow",
"Action": [
"sagemaker:CreateSpace",
"sagemaker:UpdateSpace"
],
"Resource": "arn:aws:sagemaker:*:*:space/*"
}
]
}
基于标签的访问控制
实施基于标签的访问控制,以根据资源和主体标签来限制连接。
您可以确保用户只能访问适合其角色和项目分配的资源。利用以下策略,您可以:
在以下示例中,使用以下内容标记空间:
{ "Team": "ML", "Environment": "Production", "CostCenter": "12345" }
您可以创建一个包含以下策略的角色来匹配资源标签和主体标签:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Sid": "RestrictStartSessionOnTaggedSpacesInDomain",
"Effect": "Allow",
"Action": [
"sagemaker:StartSession"
],
"Resource": [
"arn:aws:sagemaker:us-east-1:111122223333:space/domain-id/*"
],
"Condition": {
"StringEquals": {
"aws:ResourceTag/Team": "${aws:PrincipalTag/Team}",
"aws:ResourceTag/Environment": "${aws:PrincipalTag/Environment}",
"aws:ResourceTag/CostCenter": "${aws:PrincipalTag/CostCenter}",
"aws:ResourceTag/IDC_UserName": "${aws:PrincipalTag/IDC_UserName}"
}
}
}
]
}
当该角色的标签匹配时,用户有权启动会话并远程连接到其空间。有关更多信息,请参阅使用标签控制对 Amazon 资源的访问。