다음을 통해 공유


Azure Machine Learning 감사 및 관리

팀이 Azure Machine Learning에서 협업할 때 리소스를 구성하고 구성하기 위한 다양한 요구 사항에 직면할 수 있습니다. 기계 학습 팀은 협업을 위해 작업 영역을 구성하는 방법 또는 사용 사례의 요구 사항에 맞게 컴퓨팅 클러스터의 크기를 조정하는 방법에 대한 유연성을 모색할 수 있습니다. 이러한 시나리오에서는 애플리케이션 팀이 자체 인프라를 관리할 수 있으면 생산성이 향상될 수 있습니다.

플랫폼 관리자는 정책을 사용하여 팀이 자신의 리소스를 관리하기 위한 가드 레일을 배치할 수 있습니다. Azure Policy는 리소스 상태를 감사하고 제어하는 데 도움이 됩니다. 이 문서에서는 Azure Machine Learning에 대한 감사 제어 및 거버넌스 방식을 사용하는 방법을 설명합니다.

Azure Machine Learning에 대한 정책

Azure Policy 는 Azure 리소스가 정책을 준수하는지 확인할 수 있도록 하는 거버넌스 도구입니다.

Azure Policy는 Azure Machine Learning을 통해 일반적인 시나리오에 사용할 수 있는 정책 집합을 제공합니다. 이러한 정책 정의를 기존 구독에 할당하거나 고유한 사용자 지정 정의를 만드는 기준으로 사용할 수 있습니다.

다음 표에는 Azure Machine Learning을 사용하여 할당할 수 있는 기본 제공 정책이 나열되어 있습니다. 모든 Azure 기본 제공 정책 목록은 기본 제공 정책을 참조하세요.

속성
(Azure Portal)
설명 효과 버전
(GitHub)
[미리 보기]: Azure Machine Learning 배포는 승인된 레지스트리 모델만 사용해야 합니다. 조직 내에서 사용되는 외부에서 만든 모델을 제어하도록 레지스트리 모델 배포 제한 감사, 거부, 사용 안 함 1.0.0 - 미리 보기
[미리 보기]: Azure Machine Learning 모델 레지스트리 배포는 허용된 레지스트리를 제외하고 제한됩니다. 허용되고 제한되지 않은 레지스트리에만 레지스트리 모델을 배포합니다. 거부, 사용 안 함 1.0.0 - 미리 보기
Azure Machine Learning 컴퓨팅 인스턴스에 유휴 종료가 있어야 함 유휴 상태 종료 일정을 사용하면 사전 결정된 활동 기간 후에 유휴 상태인 컴퓨팅을 종료하여 비용이 줄어듭니다. 감사, 거부, 사용 안 함 1.0.0
최신 소프트웨어 업데이트를 가져오려면 Azure Machine Learning 컴퓨팅 인스턴스를 다시 만들어야 합니다. Azure Machine Learning 컴퓨팅 인스턴스가 사용 가능한 최신 운영 체제에서 실행되는지 확인합니다. 최신 보안 패치를 실행하여 보안이 개선되고 취약성이 줄어듭니다. 자세한 내용은 https://aka.ms/azureml-ci-updates/을 참조하세요. [parameters('effects')] 1.0.3
Azure Machine Learning 컴퓨팅은 가상 네트워크에 있어야 합니다. Azure Virtual Network는 Azure Machine Learning 컴퓨팅 클러스터 및 인스턴스에 대한 강화된 보안 및 격리는 물론 서브넷, 액세스 제어 정책 및 액세스를 추가로 제한하는 기타 기능을 제공합니다. 컴퓨팅이 가상 네트워크로 구성된 경우 공개적으로 주소를 지정할 수 없으며 가상 네트워크 내의 가상 머신 및 애플리케이션에서만 액세스할 수 있습니다. 감사, 사용 안 함 1.0.1
Azure Machine Learning 컴퓨팅에는 로컬 인증 방법이 사용하지 않도록 설정되어야 합니다. 로컬 인증 방법을 사용하지 않도록 설정하면 Machine Learning 컴퓨팅에서 인증에만 Azure Active Directory ID를 요구하도록 하여 보안이 향상됩니다. https://aka.ms/azure-ml-aad-policy에서 자세히 알아보세요. 감사, 거부, 사용 안 함 2.1.0
Azure Machine Learning 작업 영역은 고객 관리형 키로 암호화해야 함 고객 관리형 키를 사용하여 Azure Machine Learning 작업 영역의 미사용 데이터 암호화를 관리합니다. 기본적으로 고객 데이터는 서비스 관리형 키로 암호화되지만, 고객 관리형 키는 일반적으로 규정 준수 기준을 충족하는 데 필요합니다. 고객 관리형 키를 사용하면 사용자가 만들고 소유한 Azure Key Vault 키를 사용하여 데이터를 암호화할 수 있습니다. 순환 및 관리를 포함하여 키의 수명 주기를 고객이 모두 제어하고 책임져야 합니다. https://aka.ms/azureml-workspaces-cmk에서 자세히 알아보세요. 감사, 거부, 사용 안 함 1.1.0
Azure Machine Learning 작업 영역은 공용 네트워크 액세스를 사용하지 않도록 설정해야 함 공용 네트워크 액세스를 사용하지 않도록 설정하면 Machine Learning 작업 영역이 공용 인터넷에 노출되지 않으므로 보안이 강화됩니다. 대신 프라이빗 엔드포인트를 만들어 작업 영역의 노출을 제어할 수 있습니다. 자세한 내용은 https://learn.microsoft.com/azure/machine-learning/how-to-configure-private-link?view=azureml-api-2&tabs=azure-portal을 참조하세요. 감사, 거부, 사용 안 함 2.0.1
Azure Machine Learning 작업 영역은 V1LegacyMode를 활성화하여 네트워크 격리 이전 버전과의 호환성을 지원해야 함 Azure ML은 Azure Resource Manager에서 새 V2 API 플랫폼으로 전환하고 있으며 V1LegacyMode 매개 변수를 사용하여 API 플랫폼 버전을 제어할 수 있습니다. V1LegacyMode 매개 변수를 사용하도록 설정하면 새 V2 기능을 사용하지 않더라도 작업 영역을 V1과 동일한 네트워크 격리 상태로 유지할 수 있습니다. 프라이빗 네트워크 내에서 AzureML 컨트롤 플레인 데이터를 유지하려는 경우에만 V1 레거시 모드를 설정하는 것이 좋습니다. https://aka.ms/V1LegacyMode에서 자세히 알아보세요. 감사, 거부, 사용 안 함 1.0.0
Azure Machine Learning 작업 영역은 프라이빗 링크를 사용해야 함 Azure Private Link를 통해 원본 또는 대상의 공용 IP 주소가 없어도 Azure 서비스에 가상 네트워크를 연결할 수 있습니다. Private Link 플랫폼은 Azure 백본 네트워크를 통해 소비자와 서비스 간의 연결을 처리합니다. 프라이빗 엔드포인트를 Azure Machine Learning 작업 영역에 매핑하면 데이터 유출 위험이 줄어듭니다. https://docs.microsoft.com/azure/machine-learning/how-to-configure-private-link에서 프라이빗 링크에 대해 자세히 알아보세요. 감사, 사용 안 함 1.0.0
Azure Machine Learning 작업 영역은 사용자가 할당한 관리 ID를 사용해야 함 사용자 할당 관리 ID를 사용하여 Azure ML 작업 영역 및 관련 리소스, Azure Container Registry, KeyVault, Storage 및 App Insights에 대한 액세스를 관리합니다. 기본적으로 시스템 할당 관리 ID는 Azure ML 작업 영역에서 연결된 리소스에 액세스하는 데 사용됩니다. 사용자 할당 관리 ID를 사용하면 ID를 Azure 리소스로 만들고 해당 ID의 수명 주기를 유지할 수 있습니다. https://docs.microsoft.com/azure/machine-learning/how-to-use-managed-identities?tabs=python에서 자세히 알아보세요. 감사, 거부, 사용 안 함 1.0.0
Azure Machine Learning 컴퓨팅을 구성하여 로컬 인증 방법을 사용하지 않도록 설정합니다. 위치 인증 방법을 사용하지 않도록 설정하여 Machine Learning 컴퓨팅에서 인증에만 Azure Active Directory ID를 요구하도록 합니다. https://aka.ms/azure-ml-aad-policy에서 자세히 알아보세요. 수정, 사용 안 함 2.1.0
프라이빗 DNS 영역을 사용하도록 Azure Machine Learning 작업 영역 구성 프라이빗 DNS 영역을 사용하여 프라이빗 엔드포인트에 대한 DNS 확인을 재정의합니다. 프라이빗 DNS 영역은 가상 네트워크에 연결되어 Azure Machine Learning 작업 영역으로 확인됩니다. https://docs.microsoft.com/azure/machine-learning/how-to-network-security-overview에서 자세히 알아보세요. DeployIfNotExists, 사용 안 함 1.1.0
공용 네트워크 액세스를 사용하지 않도록 Azure Machine Learning 작업 영역 구성 공용 인터넷을 통해 작업 영역에 액세스할 수 없도록 Azure Machine Learning 작업 영역에 대한 공용 네트워크 액세스를 사용하지 않도록 설정합니다. 이는 데이터 누출 위험으로부터 작업 영역을 보호하는 데 도움이 됩니다. 대신 프라이빗 엔드포인트를 만들어 작업 영역의 노출을 제어할 수 있습니다. 자세한 내용은 https://learn.microsoft.com/azure/machine-learning/how-to-configure-private-link?view=azureml-api-2&tabs=azure-portal을 참조하세요. 수정, 사용 안 함 1.0.3
프라이빗 엔드포인트를 사용하여 Azure Machine Learning 작업 영역 구성 프라이빗 엔드포인트는 원본 또는 대상에서 공용 IP 주소 없이 Azure 서비스에 가상 네트워크를 연결합니다. 프라이빗 엔드포인트를 Azure Machine Learning 작업 영역에 매핑하면 데이터 유출 위험을 줄일 수 있습니다. https://docs.microsoft.com/azure/machine-learning/how-to-configure-private-link에서 프라이빗 링크에 대해 자세히 알아보세요. DeployIfNotExists, 사용 안 함 1.0.0
Azure Machine Learning 작업 영역에 대한 진단 설정을 Log Analytics 작업 영역으로 구성합니다. 이 진단 설정이 누락된 Azure Machine Learning 작업 영역이 만들어지거나 업데이트될 때 Log Analytics 작업 영역으로 리소스 로그를 스트리밍하기 위해 Azure Machine Learning 작업 영역에 대한 진단 설정을 배포합니다. DeployIfNotExists, 사용 안 함 1.0.1
Azure Machine Learning 작업 영역의 리소스 로그를 사용하도록 설정해야 합니다. 리소스 로그를 사용하면 보안 인시던트가 발생하거나 네트워크가 손상되었을 때 조사 목적으로 사용할 작업 추적을 다시 만들 수 있습니다. AuditIfNotExists, 사용 안 함 1.0.1

구독 또는 리소스 그룹 수준 등의 여러 범위에서 정책을 설정할 수 있습니다. 자세한 내용은 Azure 정책 설명서를 참조하세요.

기본 제공 정책 할당

Azure Machine Learning과 관련된 기본 제공 정책 정의를 보려면 다음 단계를 사용합니다.

  1. Azure Portal에서 Azure Policy로 이동합니다.
  2. 정의를 선택합니다.
  3. 형식에서 기본 제공을 선택합니다. 범주에서 Machine Learning을 선택합니다.

여기에서 정책 정의를 선택하여 볼 수 있습니다. 정의를 보는 동안 할당 링크를 사용하여 특정 범위에 정책을 할당하고 정책에 대한 매개 변수를 구성할 수 있습니다. 자세한 내용은 Azure Portal을 사용하여 비준수 리소스를 식별하는 정책 할당 만들기를 참조하세요.

Azure PowerShell, Azure CLI 또는 템플릿을 사용하여 정책을 할당할 수도 있습니다.

조건부 액세스 정책

Azure Machine Learning 작업 영역에 액세스할 수 있는 사용자를 제어하려면 Microsoft Entra 조건부 액세스를 사용합니다. Azure Machine Learning 작업 영역에 조건부 액세스를 사용하려면 Azure Machine Learning 앱에 조건부 액세스 정책을 할당합니다. 앱 ID는 0736f41a-0425-bdb5-1563eff02385입니다.

랜딩 존을 사용하여 셀프 서비스 사용

랜딩 존은 Azure 환경을 설정할 때 규모, 거버넌스, 보안 및 생산성을 설명하는 아키텍처 패턴입니다. 데이터 랜딩 존은 애플리케이션 팀에서 데이터 및 분석 워크로드를 호스트하는 데 사용하는 관리자 구성 환경입니다.

랜딩 존의 목적은 팀이 Azure 환경에서 시작될 때 모든 인프라 구성 작업이 완료되도록 하는 것입니다. 예를 들어 보안 제어는 조직의 표준을 준수하고 네트워크 연결이 설정된 상태에서 설정됩니다.

랜딩 존 패턴을 사용하여 기계 학습 팀은 셀프 서비스 기반으로 자체 리소스를 배포하고 관리할 수 있습니다. Azure Policy를 관리자 권한으로 사용하면 준수를 위해 Azure 리소스를 감사하고 관리할 수 있습니다.

Azure Machine Learning은 클라우드 채택 프레임워크 데이터 관리 및 분석 시나리오에서 데이터 랜딩 존과 통합됩니다. 이 참조 구현은 Machine Learning 워크로드를 Azure Machine Learning으로 마이그레이션하기 위한 최적화된 환경을 제공하며 미리 구성된 정책을 포함합니다.

기본 제공 정책 구성

컴퓨팅 인스턴스에는 유휴 종료가 있어야 함

이 정책은 Azure Machine Learning 컴퓨팅 인스턴스에서 유휴 종료를 사용하도록 설정해야 하는지 여부를 제어합니다. 유휴 종료는 컴퓨팅 인스턴스가 지정된 기간 동안 유휴 상태일 때 자동으로 중지합니다. 이 정책은 비용을 절약하고 리소스가 불필요하게 사용되지 않도록 하는 데 유용합니다.

이 정책을 구성하려면 effect 매개 변수를 Audit, Deny 또는 Disabled로 설정합니다. Audit로 설정하면 유휴 종료 없이 컴퓨팅 인스턴스를 만들 수 있으며 활동 로그에 경고 이벤트가 만들어집니다.

소프트웨어 업데이트를 가져오려면 컴퓨팅 인스턴스를 다시 만들어야 함

사용 가능한 최신 소프트웨어 업데이트를 실행하고 있는지 확인하기 위해 Azure Machine Learning 컴퓨팅 인스턴스를 감사해야 하는지 여부를 제어합니다. 이 정책은 보안과 성능을 유지하기 위해 컴퓨팅 인스턴스가 최신 소프트웨어 업데이트를 실행하는지 확인하는 데 유용합니다. 자세한 내용은 Azure Machine Learning의 취약성 관리를 참조하세요.

이 정책을 구성하려면 효과 매개 변수를 Audit 또는 Disabled로 설정합니다. Audit로 설정하면 컴퓨팅이 최신 소프트웨어 업데이트를 실행하지 않을 때 활동 로그에 경고 이벤트가 만들어집니다.

컴퓨팅 클러스터와 인스턴스는 가상 네트워크에 있어야 함

가상 네트워크 뒤에서 컴퓨팅 클러스터 및 인스턴스 리소스의 감사를 제어합니다.

이 정책을 구성하려면 효과 매개 변수를 Audit 또는 Disabled로 설정합니다. Audit로 설정하면 가상 네트워크 뒤에 구성 되지 않은 컴퓨팅을 만들 수 있으며 활동 로그에 경고 이벤트가 생성됩니다.

컴퓨팅에는 로컬 인증 방법이 사용하지 않도록 설정되어 있어야 합니다.

Azure Machine Learning 컴퓨팅 클러스터 또는 인스턴스에서 로컬 인증(SSH)을 사용하지 않도록 설정할지 여부를 제어합니다.

이 정책을 구성하려면 effect 매개 변수를 Audit, Deny 또는 Disabled로 설정합니다. Audit으로 설정하면 SSH를 사용하도록 설정한 컴퓨팅을 만들 수 있으며 활동 로그에 경고 이벤트가 생성됩니다.

정책이 Deny로 설정된 경우 SSH를 사용하지 않는 한 컴퓨팅을 만들 수 없습니다. SSH를 사용하도록 설정한 컴퓨팅을 만들려고 시도하면 오류가 발생합니다. 이 오류는 활동 로그에도 로그됩니다. 정책 식별자는 이 오류의 일부로 반환됩니다.

작업 영역은 고객 관리형 키로 암호화되어야 함

작업 영역을 고객 관리형 키로 암호화할지 아니면 Microsoft에서 관리되는 키를 사용하여 메트릭과 메타데이터를 암호화해야 하는지 여부를 제어합니다. 고객 관리 키를 사용하는 방법에 대한 자세한 내용은 데이터 암호화 문서의 Azure Cosmos DB 섹션을 참조하세요.

이 정책을 구성하려면 효과 매개 변수를 Audit 또는 Deny로 설정합니다. Audit으로 설정하면 고객 관리형 키를 사용하지 않고 작업 영역을 만들 수 있으며 활동 로그에 경고 이벤트가 생성됩니다.

정책이 Deny로 설정된 경우 고객 관리형 키를 지정하지 않으면 작업 영역을 만들 수 없습니다. 고객 관리 키를 사용하지 않고 작업 영역을 만들려 하면 Resource 'clustername' was disallowed by policy와 유사한 오류가 발생하고 활동 로그에 오류가 생성됩니다. 이 오류의 일부로 정책 식별자도 반환됩니다.

공용 네트워크 액세스를 사용하지 않도록 작업 영역 구성

작업 영역에서 퍼블릭 인터넷의 네트워크 액세스를 사용하지 않도록 설정할지 여부를 제어합니다.

이 정책을 구성하려면 effect 매개 변수를 Audit, Deny 또는 Disabled로 설정합니다. Audit으로 설정하면 공용 액세스로 작업 영역을 만들 수 있으며 활동 로그에 경고 이벤트가 생성됩니다.

정책이 Deny로 설정되어 있으면 퍼블릭 인터넷에서 네트워크 액세스를 허용하는 작업 영역을 만들 수 없습니다.

네트워크 격리 이전 버전과의 호환성을 지원하려면 작업 영역에서 V1LegacyMode를 사용하도록 설정해야 함

네트워크 격리 이전 버전과의 호환성을 지원하기 위해 작업 영역에서 V1LegacyMode를 사용하도록 설정해야 하는지 여부를 제어합니다. 이 정책은 Azure Machine Learning 컨트롤 플레인 데이터를 개인 네트워크 내에 유지하려는 경우에 유용합니다. 자세한 내용은 새 API 플랫폼으로 인한 네트워크 격리 변경을 참조하세요.

이 정책을 구성하려면 effect 매개 변수를 Audit, Deny또는 Disabled로 설정합니다. Audit로 설정하면 V1LegacyMode를 사용하도록 설정하지 않고도 작업 영역을 만들 수 있으며 활동 로그에 경고 이벤트가 만들어집니다.

정책이 Deny로 설정된 경우 V1LegacyMode를 사용하도록 설정하지 않으면 작업 영역을 만들 수 없습니다.

작업 영역에서 Azure Private Link를 사용하여 Azure Virtual Network와 통신해야 하는지 여부를 제어합니다. 프라이빗 링크 사용에 대한 자세한 내용은 Azure Machine Learning 작업 영역에 대한 프라이빗 엔드포인트 구성을 참조하세요.

이 정책을 구성하려면 효과 매개 변수를 Audit 또는 Deny로 설정합니다. Audit으로 설정하면 프라이빗 링크를 사용하지 않고 작업 영역을 만들 수 있으며 활동 로그에 경고 이벤트가 생성됩니다.

정책이 Deny로 설정된 경우 프라이빗 링크를 사용하지 않으면 작업 영역을 만들 수 없습니다. 프라이빗 링크 없이 작업 영역을 만들려 하면 오류가 발생합니다. 이 오류는 활동 로그에도 로그됩니다. 정책 식별자는 이 오류의 일부로 반환됩니다.

작업 영역은 사용자 할당 관리 ID를 사용해야 함

시스템 할당 관리 ID(기본값) 또는 사용자 할당 관리 ID를 사용하여 작업 영역을 만들지 여부를 제어합니다. 작업 영역에 대한 관리 ID는 Azure Storage, Azure Container Registry, Azure Key Vault 및 Azure Application Insights와 같은 관련 리소스에 액세스하는 데 사용됩니다. 자세한 내용은 Azure Machine Learning과 다른 서비스 간 인증 설정을 참조하세요.

이 정책을 구성하려면 effect 매개 변수를 Audit, Deny 또는 Disabled로 설정합니다. Audit으로 설정된 경우 사용자 할당 관리 ID를 지정하지 않고 작업 영역을 만들 수 있습니다. 시스템 할당 ID가 사용되고 활동 로그에 경고 이벤트가 생성됩니다.

정책이 Deny로 설정되어 있으면 생성 프로세스 중 사용자에게 할당된 ID를 제공하지 않는 한 작업 영역을 만들 수 없습니다. 사용자 할당 ID를 제공하지 않고 작업 영역을 만들려 하면 오류가 발생합니다. 이 오류는 활동 로그에도 로그됩니다. 정책 식별자는 이 오류의 일부로 반환됩니다.

로컬 인증을 수정하거나 사용하지 않도록 설정하도록 컴퓨팅 구성

이 정책은 Azure Machine Learning 컴퓨팅 클러스터 또는 인스턴스 만들기 요청을 수정하여 로컬 인증(SSH)을 사용하지 않도록 설정합니다.

이 정책을 구성하려면 effect 매개 변수를 Modify 또는 Disabled로 설정합니다. 수정을 설정한 경우 정책이 적용되는 범위 내에서 컴퓨팅 클러스터 또는 인스턴스를 만들면 자동으로 로컬 인증을 사용하지 않습니다.

프라이빗 DNS 영역을 사용하도록 작업 영역 구성

이 정책은 프라이빗 DNS 영역을 사용하여 프라이빗 엔드포인트에 대한 기본 DNS 확인을 재정의하는 작업 영역을 구성합니다.

이 정책을 구성하려면 effect 매개 변수를 Deployifnotexists로 설정합니다. privateDnsZoneId를 사용할 프라이빗 DNS 영역의 Azure Resource Manager ID로 설정합니다.

공용 네트워크 액세스를 사용하지 않도록 작업 영역 구성

공용 인터넷에서 네트워크 액세스를 사용하지 않도록 설정하도록 작업 영역을 구성합니다. 공용 네트워크 액세스를 사용하지 않도록 설정하면 데이터 유출 위험으로부터 작업 영역을 보호할 수 있습니다. 대신 프라이빗 엔드포인트를 만들어 작업 영역에 액세스할 수 있습니다. 자세한 내용은 Azure Machine Learning 작업 영역에 대한 프라이빗 엔드포인트 구성을 참조하세요.

이 정책을 구성하려면 effect 매개 변수를 Modify 또는 Disabled로 설정합니다. Modify로 설정하면 정책이 적용되는 범위 내에서 작업 영역을 만들 때 자동으로 공용 네트워크 액세스가 사용하지 않도록 설정됩니다.

프라이빗 엔드포인트로 작업 영역 구성

Azure Virtual Network의 지정된 서브넷 내에 프라이빗 엔드포인트를 만들도록 작업 영역을 구성합니다.

이 정책을 구성하려면 effect 매개 변수를 Deployifnotexists로 설정합니다. privateEndpointSubnetID를 서브넷의 Azure Resource Manager ID로 설정합니다.

로그 분석 작업 영역에 로그를 보내도록 진단 작업 영역 구성

Log Analytics 작업 영역에 로그를 보내도록 Azure Machine Learning 작업 영역에 대한 진단 설정을 구성합니다.

이 정책을 구성하려면 효과 매개 변수를 DeployIfNotExists 또는 Disabled로 설정합니다. DeployIfNotExists로 설정한 경우 정책은 Log Analytics 작업 영역(아직 존재하지 않는 경우)으로 로그를 보내는 진단 설정을 만듭니다.

작업 영역의 리소스 로그를 사용하도록 설정해야 함

Azure Machine Learning 작업 영역에 대해 리소스 로그가 사용하도록 설정되어 있는지 여부를 감사합니다. 리소스 로그는 작업 영역의 리소스에 대해 수행된 작업에 대한 자세한 정보를 제공합니다.

이 정책을 구성하려면 효과 매개 변수를 AuditIfNotExists 또는 Disabled로 설정합니다. AuditIfNotExists로 설정한 경우 정책은 작업 영역에 대해 리소스 로그가 사용하도록 설정되지 않은 경우 감사합니다.

사용자 지정 정의 만들기

조직에 대한 사용자 지정 정책을 만들어야 하는 경우 Azure Policy 정의 구조를 사용하여 고유한 정의를 만들 수 있습니다. Azure Policy Visual Studio Code 확장을 사용하여 정책을 작성하고 테스트할 수 있습니다.

정의에서 사용할 수 있는 정책 별칭을 검색하려면 다음 Azure CLI 명령을 사용하여 Azure Machine Learning의 별칭을 나열합니다.

az provider show --namespace Microsoft.MachineLearningServices --expand "resourceTypes/aliases" --query "resourceTypes[].aliases[].name"

특정 별칭에 허용되는 값을 검색하려면 Azure Machine Learning REST API 참조를 방문하세요.

사용자 지정 정책을 만드는 방법에 대한 자습서(Azure Machine Learning 관련 자습서 아님)는 사용자 지정 정책 정의 만들기를 방문하세요.

예: 서버리스 Spark 컴퓨팅 작업 차단

{
    "properties": {
        "displayName": "Deny serverless Spark compute jobs",
        "description": "Deny serverless Spark compute jobs",
        "mode": "All",
        "policyRule": {
            "if": {
                "allOf": [
                    {
                        "field": "Microsoft.MachineLearningServices/workspaces/jobs/jobType",
                        "in": [
                            "Spark"
                        ]
                    }
                ]
            },
            "then": {
                "effect": "Deny"
            }
        },
        "parameters": {}
    }
}

예시: 관리형 컴퓨팅에 공인 IP 없음 구성

{
    "properties": {
        "displayName": "Deny compute instance and compute cluster creation with public IP",
        "description": "Deny compute instance and compute cluster creation with public IP",
        "mode": "all",
        "parameters": {
            "effectType": {
                "type": "string",
                "defaultValue": "Deny",
                "allowedValues": [
                    "Deny",
                    "Disabled"
                ],
                "metadata": {
                    "displayName": "Effect",
                    "description": "Enable or disable the execution of the policy"
                }
            }
        },
        "policyRule": {
            "if": {
                "allOf": [
                  {
                    "field": "type",
                    "equals": "Microsoft.MachineLearningServices/workspaces/computes"
                  },
                  {
                    "allOf": [
                      {
                        "field": "Microsoft.MachineLearningServices/workspaces/computes/computeType",
                        "notEquals": "AKS"
                      },
                      {
                        "field": "Microsoft.MachineLearningServices/workspaces/computes/enableNodePublicIP",
                        "equals": true
                      }
                    ]
                  }
                ]
              },
            "then": {
                "effect": "[parameters('effectType')]"
            }
        }
    }
}