자습서: 클라우드 환경에서 리소스 종류를 허용하지 않음
클라우드 거버넌스의 자주 사용되는 목표 중 하나는 환경에서 허용되는 리소스 종류를 제한하는 것입니다. 기업은 리소스 종류 제한 뒤에 많은 동기를 부여합니다. 예를 들어 리소스 종류는 비용이 많이 들거나 비즈니스 표준 및 전략에 위배될 수 있습니다. 개별 리소스 종류에 대해 많은 정책을 사용하는 대신 Azure Policy는 이 목표를 달성하기 위해 두 가지 기본 제품 정책을 제공합니다.
이름 (Azure Portal) |
설명 | 효과 | 버전 (GitHub) |
---|---|---|---|
허용되는 리소스 유형 | 이 정책을 사용하면 조직에서 배포할 수 있는 리소스 유형을 지정할 수 있습니다. '태그' 및 '위치'를 지원하는 리소스 종류만 이 정책의 영향을 받습니다. 모든 리소스를 제한하려면 이 정책을 복제하고 '모드'를 '모두'로 변경합니다. | deny | 1.0.0 |
허용되지 않는 리소스 유형 | 사용자 환경에 배포할 수 있는 리소스 종류를 제한합니다. 리소스 종류를 제한하면 환경의 복잡성과 공격을 줄이는 동시에 비용을 관리할 수 있습니다. 규정 준수 결과는 비규격 리소스에 대해서만 표시됩니다. | 감사, 거부, 사용 안 함 | 2.0.0 |
이 자습서에서는 허용되지 않는 리소스 종류 정책을 적용하고 Microsoft Azure Portal을 통해 대규모로 리소스 종류를 관리합니다.
필수 조건
Azure 구독이 없는 경우 시작하기 전에 체험 계정을 만듭니다.
정책 정의 할당
리소스 종류를 사용하지 않도록 설정하는 첫 번째 단계는 허용되지 않는 리소스 종류 정책 정의를 할당하는 것입니다.
Azure Portal에서 허용되지 않는 리소스 종류으로 이동합니다.
페이지 맨 위에 있는 할당 단추를 선택합니다.
기본 탭에서 줄임표를 선택하고 관리 그룹, 구독 또는 리소스 그룹을 선택하여 범위를 설정합니다. 선택한 범위에 하나 이상의 하위 범위 가 있는지 확인합니다. 그 후 범위 페이지의 맨 위에서 선택을 클릭합니다.
이 예제에서는 Contoso 구독을 사용합니다.
참고 항목
이 정책 정의를 루트 관리 그룹 범위에 할당하면 포털은 허용되지 않는 리소스 종류를 검색하고 전체 서비스 보기에서 이를 사용하지 않도록 설정하여 포털 사용자가 허용되지 않는 리소스를 배포하기 전에 제한 사항을 알 수 있도록 합니다.
범위를 기준으로 리소스를 제외할 수 있습니다. 제외는 범위 수준보다 한 수준 아래에서 시작됩니다. 제외는 선택 사항이므로 일단은 비워둡니다.
할당 이름은 선택한 정책 정의 이름으로 자동으로 채워지지만 변경할 수 있습니다. 선택 사항인 설명을 추가하여 이 정책 할당에 대한 세부 정보를 제공할 수도 있습니다.
정책 적용을 사용으로 둡니다. 사용 안 함으로 할 경우 이 설정은 효과를 트리거하지 않고 정책의 결과를 테스트할 수 있습니다. 자세한 내용은 적용 모드를 참조하세요.
할당한 사람은 로그인한 사용자를 기준으로 자동으로 입력됩니다. 이 필드는 선택 사항이므로 사용자 지정 값을 입력할 수 있습니다.
마법사 맨 위에 있는 매개 변수 탭을 선택합니다. 이 자습서에서는 고급 탭을 건너뜁니다.
허용되지 않는 리소스 종류 매개 변수의 경우 드롭다운을 사용하여 클라우드 환경에서 허용되지 않아야 하는 리소스 종류를 검색하고 선택합니다.
이 정책 정의에는
modify
또는deployIfNotExists
효과가 없으므로 수정 작업을 지원하지 않습니다. 이 자습서에서는 수정 탭을 건너뛰세요.마법사 맨 위에 있는 비규격 메시지 탭을 선택합니다.
비준수 메시지를 이 리소스 종류는 허용되지 않습니다.로 설정합니다. 이 사용자 지정 메시지는 리소스가 거부되거나 정기 평가 중에 비규격 리소스에 대해 표시됩니다.
마법사 맨 위에 있는 검토 + 만들기 탭을 선택합니다.
선택 내용을 검토한 다음, 페이지 아래쪽에서 만들기를 선택합니다.
Azure Portal에서 사용하지 않도록 설정된 리소스 종류 보기
이 단계는 루트 관리 그룹 범위에서 정책이 할당된 경우에만 적용됩니다.
이제 기본 제공 정책 정의를 할당했으므로 모든 서비스로 이동합니다. Azure Portal은 이 정책 할당에서 허용되지 않는 리소스 유형을 인식하고 모든 서비스 페이지에서 사용하지 않도록 설정합니다. 사용하지 않도록 설정된 리소스 종류에는 만들기 옵션을 사용할 수 없습니다.
참고 항목
이 정책 정의를 루트 관리 그룹에 할당하면 사용자가 처음으로 로그인하거나 로그인한 후 정책이 변경되는 경우 다음 알림이 표시됩니다.
관리자가 변경한 정책 관리자가 사용자의 계정에 대한 정책을 변경했습니다. 업데이트된 정책을 사용하려면 포털을 새로 고치는 것이 좋습니다.
예외 만들기
이제 하나의 하위 범위에서 이 정책에 의해 리소스 종류가 사용하지 않도록 설정되도록 허용해야 한다고 가정해 보겠습니다. 제한된 리소스를 해당 범위에 배포할 수 있도록 이 범위에 대한 예외를 만들어 보겠습니다.
Warning
이 정책 정의를 루트 관리 그룹 범위에 할당하면 Azure Portal에서 하위 수준 범위에서 예외를 검색할 수 없습니다. 정책 할당에서 허용되지 않는 리소스는 모든 서비스 목록에서 비활성화된 것으로 표시되고 만들기 옵션을 사용할 수 없습니다. 하지만 Azure CLI, Azure PowerShell 또는 Azure Resource Manager 템플릿과 같은 클라이언트를 사용하여 제외된 범위에서 리소스를 만들 수 있습니다.
Azure Policy 페이지의 왼쪽에 있는 작성에서 할당을 선택합니다.
만든 정책 할당을 검색합니다.
페이지 상단에서 예외 만들기 단추를 선택합니다.
기본 사항 탭에서 이 정책 할당에 의해 리소스가 제한되도록 허용해야 하는 하위 범위인 예외 범위를 선택합니다.
예외 이름에 원하는 텍스트를 작성하고 예외 범주를 기본값인 예외로 둡니다. 이 예외는 만료되도록 설정되지 않으므로 예외 만료 설정 토글을 전환하지 마세요. 원하는 경우 예외 설명을 추가하고 검토 + 만들기를 선택합니다.
이 자습서에서는 고급 탭을 건너뜁니다. 검토 + 만들기 탭에서 만들기를 선택합니다.
예외를 보려면 Azure Policy 페이지 왼쪽의 작성에서 예외를 선택합니다.
이제 하위 범위에는 정책에서 허용하지 않는 리소스 종류가 있을 수 있습니다.
리소스 정리
이 자습서의 리소스가 더 이상 필요 없으면 다음 단계에 따라 이 자습서에서 만든 정책 할당 또는 정의를 삭제합니다.
Azure Policy 페이지의 왼쪽 창에 있는 작성 아래에서 정의(또는 할당을 삭제하려는 경우 할당을 선택)를 선택합니다.
제거할 새 이니셔티브 또는 정책 정의(또는 할당)를 검색합니다.
행을 마우스 오른쪽 단추로 클릭하거나 정의(또는 할당) 끝에 있는 줄임표를 선택하고 정의 삭제(또는 할당 삭제)를 선택합니다.
검토
이 자습서에서는 다음 작업을 성공적으로 완료했습니다.
- 허용되지 않는 리소스 종류의 만들기를 거부하기 위해 허용되지 않는 리소스 종류 기본 제공 정책을 할당했습니다.
- 하위 범위에서 이 정책 할당에 대한 예외를 만들었습니다.
이 기본 제공 정책을 사용하여 허용되지 않는 리소스 유형을 지정했습니다. 보다 제한적인 대안 방식은 허용되는 리소스 종류 네이티브 제공 정책을 사용하여 허용되는 리소스 종류를 지정하는 것입니다.
참고 항목
Azure Portal의 전체 서비스는 mode
가 All
로 설정되고 정책이 루트 관리 그룹에 할당된 경우 허용된 리소스 종류 정책에 할당되지 않은 리소스만 사용하지 않도록 설정합니다. 이는 tags
및 locations
에 관계없이 모든 리소스 종류를 확인하기 때문입니다. 포털에 이 동작을 적용하려면 허용되는 리소스 종류 기본 제공 정책을 복제하고 해당 mode
를 Indexed
에서 All
로 변경한 다음 이를 루트 관리 그룹 범위에 할당합니다.
다음 단계
정책 정의, 할당 및 예외의 구조에 대해 자세히 알아보려면 다음 문서를 참조하세요.
기본 제공 정책 샘플의 전체 목록을 보려면 다음 문서를 참조하세요.