本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为监控计划配置服务控制策略
使用或分别为监控作业创建或更新计划时 UpdateMonitoringScheduleAPI,必须指定其参数。CreateMonitoringScheduleAPI根据您的使用案例,可以通过以下方式之一执行此操作:
-
您可以在调用
CreateMonitoringSchedule
或时指定MonitoringJobDefinition字段UpdateMonitoringSchedule
。MonitoringScheduleConfig只能用它来创建或更新数据质量监控作业的计划。 -
调用
CreateMonitoringSchedule
或UpdateMonitoringSchedule
时,可以为MonitoringScheduleConfig
的MonitoringJobDefinitionName
字段指定已创建的监控作业定义的名称。您可以将其用于通过以下任一方式创建的任何作业定义APIs:如果要使用 SageMaker Python SDK 创建或更新计划,则必须使用此过程。
上述过程是相互排斥的,也就是说,在创建或更新监控计划时,要么指定 MonitoringJobDefinition
字段,要么指定 MonitoringJobDefinitionName
字段。
创建监控作业定义或在 MonitoringJobDefinition
字段中指定监控作业定义时,可以设置安全参数,如 NetworkConfig
和 VolumeKmsKeyId
。作为管理员,您可能希望将这些参数始终设置为特定值,以便监控作业始终在安全的环境中运行。为确保这一点,请设置适当的服务控制策略 (SCPs)。SCPs是一种组织策略,可用于管理组织中的权限。
以下示例显示了SCP在创建或更新监控作业计划时,您可以使用它来确保正确设置基础设施参数。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": [ "sagemaker:CreateDataQualityJobDefinition", "sagemaker:CreateModelBiasJobDefinition", "sagemaker:CreateModelExplainabilityJobDefinition", "sagemaker:CreateModelQualityJobDefinition" ], "Resource": "arn:*:sagemaker:*:*:*", "Condition": { "Null": { "sagemaker:VolumeKmsKey":"true", "sagemaker:VpcSubnets": "true", "sagemaker:VpcSecurityGroupIds": "true" } } }, { "Effect": "Deny", "Action": [ "sagemaker:CreateDataQualityJobDefinition", "sagemaker:CreateModelBiasJobDefinition", "sagemaker:CreateModelExplainabilityJobDefinition", "sagemaker:CreateModelQualityJobDefinition" ], "Resource": "arn:*:sagemaker:*:*:*", "Condition": { "Bool": { "sagemaker:InterContainerTrafficEncryption": "false" } } }, { "Effect": "Deny", "Action": [ "sagemaker:CreateMonitoringSchedule", "sagemaker:UpdateMonitoringSchedule", ], "Resource": "arn:*:sagemaker:*:*:monitoring-schedule/*", "Condition": { "Null": { "sagemaker:ModelMonitorJobDefinitionName": "true" } } } ] }
示例中的前两条规则可确保始终为监控作业定义设置安全参数。最后一条规则要求组织中的任何人在创建或更新计划时都必须指定 MonitoringJobDefinitionName
字段。这可确保在创建或更新计划时,组织中的任何人都无法通过指定 MonitoringJobDefinition
字段来为安全参数设置不安全的值。