多模型端点安全性
多模型端点中的模型和数据位于实例存储卷和容器内存的同一位置中。Amazon SageMaker 端点的所有实例都在您拥有的单个租户容器上运行。只有您的模型才能在您的多模型端点上运行。您有责任管理请求与模型的映射,并为用户提供对正确目标模型的访问权限。SageMaker 使用 IAM 角色提供基于 IAM 身份的策略,您可以用于指定允许或拒绝的操作和资源以及允许或拒绝操作的条件。
默认情况下,对多模型端点具有 InvokeEndpoint
权限的 IAM 主体可以调用 CreateModel
操作中 S3 前缀地址处的任何模型,前提是操作中定义的 IAM 执行角色有权下载该模型。如果需要将 InvokeEndpoint
访问限制为 S3 中的一组有限模型,可以执行以下操作之一:
-
使用
sagemaker:TargetModel
IAM 条件键将InvokeEndpont
调用限制在端点中托管的特定模型。例如,仅当TargetModel
字段的值与指定的正则表达式之一匹配时,以下策略才允许InvokeEndpont
请求:{ "Version": "2012-10-17", "Statement": [ { "Action": [ "sagemaker:InvokeEndpoint" ], "Effect": "Allow", "Resource": "arn:aws:sagemaker:
region
:account-id
:endpoint/endpoint_name
", "Condition": { // TargetModel provided must be from this set of values "StringLike": { "sagemaker:TargetModel": ["company_a/*", "common/*"] } } } ] }有关 SageMaker 条件键的信息,请参阅《Amazon Identity and Access Management 用户指南》中的 Amazon SageMaker 条件键。
-
创建具有更严格的 S3 前缀的多模型端点。
有关 SageMaker 如何使用角色管理对端点的访问和代表您执行操作的更多信息,请参阅 SageMaker 角色。您的客户可能还有由他们自己的合规性要求决定的某些特定数据隔离要求,可以使用 IAM 身份来满足这些要求。