Security Command Center Enterprise 등급을 Microsoft Azure 환경에 연결하여 다음을 수행할 수 있습니다.
- 구성 오류와 관련된 발견 항목 감지를 사용 설정합니다.
- 공개 인터넷에서 고가치 Microsoft Azure 애셋까지의 잠재적 공격 경로를 식별합니다.
- 다양한 표준 및 벤치마크로 Microsoft Azure 리소스의 규정 준수 매핑
Security Command Center와 Microsoft Azure를 연결하면 한곳에서 팀이 Google Cloud 및 Azure의 구성 오류를 관리하고 해결할 수 있습니다.
모니터링하려는 Azure 리소스에 대한 액세스 권한이 있는 Google Cloud 서비스 에이전트와 Microsoft Azure 사용자 할당 관리형 ID를 사용하여 Security Command Center와 Azure 간의 신뢰 연결을 구성합니다. Microsoft Azure 환경에서 신뢰 구성을 관리하고 제어합니다.
조직당 하나의 Azure 연결을 만들 수 있습니다. Google Cloud
Security Command Center는 이 연결을 사용해서 정의된 Microsoft Azure 리소스에 관한 데이터를 주기적으로 수집합니다. 이 데이터는 Google Cloud 개인정보처리방침에 따라 서비스 데이터와 동일한 방식으로 처리됩니다. 커넥터는 API 호출을 사용하여 Azure 애셋 데이터를 수집합니다. 이러한 API 호출에는 Microsoft Azure 요금이 부과될 수 있습니다.
스캔 중에 데이터 수집 파이프라인은 서비스 에이전트가 사용자 할당 관리 ID를 사용하여 Microsoft Azure 환경에 인증하는 데 의존합니다.
다음 다이어그램은 Security Command Center와 Azure 간에 신뢰가 설정되는 방식을 보여줍니다.
이 문서에서는 Microsoft Azure에 연결을 설정하는 방법을 설명합니다. 대략적인 단계는 다음과 같습니다.
시작하기 전에의 기본 요건 단계를 실행합니다.
Azure 커넥터를 만들고 스캔할 정기 결제 및 위치를 구성합니다. 이 단계를 수행하려면 Microsoft Azure 테넌트 ID가 필요합니다. 이렇게 하면 서비스 에이전트 ID가 생성됩니다.
다음 역할이 있는 전용 사용자 할당 관리 ID를 만들도록 Azure 환경을 구성합니다.
Microsoft Azure 루트 관리 그룹 범위 내의 읽기 권한 사용자로 리소스, 구독, 관리 그룹 계층 구조를 읽습니다.
Microsoft Azure 루트 관리 그룹의 범위 내에서 키 보관소 및 관련 인증서, 키, 보안 비밀에 관한 메타데이터를 읽는 Key Vault Reader
Microsoft Azure 루트 관리 그룹의 범위 내에서 리소스에 관한 메타데이터를 읽는 Storage Blob Data Reader Azure 커넥터를 구성할 때 Sensitive Data Protection 검색을 위한 권한 부여를 사용 설정할 계획이라면 이 역할을 부여합니다.
Microsoft Entra ID의 디렉터리 리더: 그룹 및 멤버십을 읽습니다.
Microsoft Entra ID의 보안 리더: 승인 정책을 읽습니다.
루트 관리 그룹의 기본 표시 이름은
Tenant root group
입니다.이러한 권한은 Security Command Center가 리소스 계층 구조에서 구독보다 높은 수준에 있는 관리 그룹, 멤버십이 있는 그룹, 역할 정의를 식별하는 데 필요합니다.
또한 서비스 에이전트에 관한 정보를 사용하여 사용자 할당 관리 ID의 제휴 ID 사용자 인증 정보를 구성합니다.
단계를 수동으로 실행하거나 Terraform을 사용할 수 있습니다. 단계를 수동으로 수행할 때는 서비스 상담사 ID가 필요합니다.
Azure 커넥터의 구성 완료 및 연결 테스트 사용자 할당 관리 ID에 관한 정보를 사용하여 이 단계를 실행합니다.
Azure 커넥터는 Security Command Center Enterprise의 SIEM 선별 감지 기능에 필요한 Azure 로그를 처리하지 않습니다. 자세한 내용은 로그 데이터 수집을 위해 Microsoft Azure에 연결을 참고하세요.
시작하기 전에
다음 섹션에서는 Security Command Center와 Microsoft Azure 간의 연결을 구성하기 전에 필요한 기본 요건, 결정사항, 정보에 대해 설명합니다.
Microsoft Azure 기능 검토
Microsoft Azure의 다음 개념과 기능을 숙지해야 합니다.
Microsoft Azure 포털, Azure CLI 또는 Terraform을 사용하여 리소스 그룹을 만들고 관리합니다.
데이터 수집 계획
데이터 수집 전략을 계획할 때는 다음을 실행합니다. 이 문서의 단계를 수행할 때 이 정보가 필요합니다.
사용자 정의 관리 ID를 만들 리소스 그룹을 만들거나 식별합니다. 구성하는 동안 리소스 그룹 이름이 필요합니다.
RESOURCE_GROUP_NAME 변수를 리소스 그룹 이름으로 바꾸어 이 문서의 다음 단계에서 값을 채웁니다.
데이터를 수집할 리소스를 식별합니다. 특정 구독 또는 지역에서만 데이터를 수집할 계획이라면 계획 단계에서 이를 파악하고 기록하세요.
모든 정기 결제 및 리전에서 리소스를 자동으로 검색하도록 Azure 커넥터를 구성할 수도 있습니다.
Google Cloud에서 권한 설정하기
Google Cloud에서 서드 파티 클라우드 제공업체에 대한 연결을 만들고 관리하려면 조직에서 Cloud 애셋 소유자 (roles/cloudasset.owner
) 역할을 부여받아야 합니다. 역할 부여에 대한 자세한 내용은 액세스 관리를 참고하세요.
Microsoft Azure에서 권한 설정
Microsoft Azure 수동 구성 또는 Terraform을 사용하여 Microsoft Azure 구성의 단계를 수행하려면 리소스 그룹이 하나 이상 생성된 Azure ID와 Microsoft Azure 및 Microsoft Entra의 IAM 정책을 구성하기 위한 다음 권한이 있어야 합니다.
루트 관리 그룹의 범위 내
Microsoft.Authorization/roleAssignments/write
권한 이 기능은 역할 기반 액세스 제어 관리자 또는 사용자 액세스 관리자라는 기본 제공 역할에서 사용할 수 있습니다.사용자 할당 관리 ID가 생성될 리소스 그룹 범위 내의 다음 권한:
Microsoft.ManagedIdentity/userAssignedIdentities/write
Microsoft.ManagedIdentity/userAssignedIdentities/federatedIdentityCredentials/write
이러한 권한은 기본 제공 관리형 ID 참여자 역할에서 사용할 수 있습니다.
Microsoft Entra 권한
microsoft.directory/roleAssignments/allProperties/allTasks
이 기능은 Microsoft Entra 기본 제공 역할인 권한이 있는 역할 관리자에서 사용할 수 있습니다.
루트 관리 그룹의 범위에서 권한을 설정하려면 승인된 액세스 권한이 있어야 합니다. 전역 관리자의 액세스 권한을 높이는 단계는 모든 Azure 구독 및 관리 그룹을 관리할 수 있는 액세스 권한 높이기를 참고하세요.
Security Command Center Azure 커넥터 사용 설정 및 구성
Azure 커넥터를 만들고 구성하려면 다음 단계를 따르세요.
Google Cloud에서 권한 설정 섹션에 정의된 권한이 있는지 확인합니다.
36자리 Microsoft Azure 테넌트 ID가 있어야 합니다.
설정 페이지에서 커넥터 탭을 엽니다.
Security Command Center Enterprise를 활성화한 조직을 선택합니다.
커넥터 추가 > Microsoft Azure를 클릭합니다.
커넥터 구성 페이지에서 Azure 테넌트 ID를 입력합니다.
Sensitive Data Protection이 Azure 데이터를 프로파일링하도록 허용하려면 Sensitive Data Protection 검색을 위한 권한 부여를 선택한 상태로 둡니다. 이 옵션은 사용자 정의 관리 ID용 Terraform 템플릿에 Storage Blob Data Reader 역할을 추가합니다.
다음 중 하나를 선택합니다.
- 자동으로 구독 추가: Security Command Center에서 구독을 자동으로 검색하여 포함합니다. 원하는 경우 Azure 구독 제외 필드에 구독 ID를 추가하여 수집되지 않도록 할 수 있습니다.
- 개별적으로 구독 추가: Security Command Center에서 구독을 자동으로 검색하지 않습니다. Azure 구독 추가 필드를 사용하여 구독을 하나 이상 정의해야 합니다.
데이터를 수집할 Azure 위치 선택 섹션에서 원하는 경우 데이터를 수집할 Microsoft Azure 위치를 하나 이상 선택합니다. 모든 위치에서 수집하려면 이 입력란을 비워 둡니다. 메뉴에서 위치를 선택하면 선택 해제된 위치는 제외됩니다.
Azure 구독 자동 검색을 설정하고 모든 Microsoft Azure 위치를 사용하는 것이 좋습니다.
다음을 클릭합니다. Azure에 연결 페이지가 열립니다.
Azure에 연결 페이지를 열어 둔 상태에서 Microsoft Azure 환경 구성을 계속 진행합니다.
Microsoft Azure를 구성한 후 이 페이지로 돌아와 Azure 커넥터 구성을 완료합니다.
Microsoft Azure 환경 구성
다음 섹션 중 하나를 작성합니다.
Microsoft Azure 수동 구성
다음 섹션에서는 Security Command Center와 Microsoft Azure 간에 신뢰를 설정하는 Azure 환경을 구성하는 대략적인 수동 단계를 설명합니다. 이 절차는 포괄적이지 않습니다. 각 섹션에는 해당 작업을 수행하는 방법을 설명하는 Microsoft Azure 문서 링크가 제공됩니다.
기본 요건
Microsoft Azure에서 권한 설정 섹션에 정의된 권한이 있는지 확인합니다.
Security Command Center Azure 커넥터를 만들 때 생성된 서비스 에이전트 ID가 있어야 합니다.
1단계: 리소스 그룹에서 사용자 할당 관리 ID 만들기
사용자 할당 관리 ID 관리하기의 단계에 따라 사용자 할당 관리 ID를 만듭니다.
ID를 만들 때 다음을 지정합니다.
- 구독: ID를 관리할 구독을 선택합니다.
- 리소스 그룹: ID가 관리될 리소스 그룹 이름 RESOURCE_GROUP_NAME을 지정합니다. 데이터 수집을 계획할 때 이를 확인했습니다.
- 리전: 리전을 선택합니다(예:
East US
). - 이름: 사용자 할당 관리 ID의 이름을 입력합니다(예:
gcp-managed-identity
). USER_ASSIGNED_MANAGED_IDENTITY_NAME 변수를 ID 이름으로 바꾸면 이 문서의 단계에서 필요한 위치에 채워집니다.
다음 정보를 기록합니다. 이 ID는 다음 단계에서 사용합니다.
- 클라이언트 ID: ID에 할당된 36자리 값입니다.
- 객체 (주 구성원) ID: ID에 할당된 36자리 값입니다.
- ID 이름: 이름에 정의한 값입니다.
2단계: 사용자 할당 관리 ID의 제휴 사용자 인증 정보 만들기
사용자 할당 관리 ID에 제휴 사용자 인증 정보를 추가하려면 외부 ID 공급업체를 신뢰하도록 사용자 할당 관리 ID 구성의 단계를 따르세요.
기타 발급자 시나리오에 설명된 안내를 따르고 다음을 설정합니다.
- 제휴 사용자 인증 정보 시나리오: 기타: 외부 OpenID Connect 공급업체에서 관리하는 ID를 구성하여 이 애플리케이션으로 Microsoft Azure 리소스에 액세스를 선택합니다.
- 발급자 URL:
https://accounts.google.com
을 입력합니다. - Subject identifier(제목 식별자): Security Command Center Azure 커넥터를 만들 때 생성된 서비스 에이전트 ID를 입력합니다.
- 이름: 제휴 사용자 인증 정보의 이름을 입력합니다(예:
gcp-managed-identity-fic
). - Audience:
https://cloud.google.com
을 입력합니다.
3단계: Microsoft Azure 기본 제공 역할 할당
Azure 포털을 사용하여 Azure 역할 할당의 단계에 따라 사용자 할당 관리 ID에 다음 Microsoft Azure 기본 제공 역할을 할당합니다.
- Vault 리더
- 리더
- 스토리지 Blob 데이터 리더
루트 관리 그룹 범위에서 이러한 역할을 부여합니다.
4단계: Microsoft Entra ID 기본 제공 역할 할당
사용자에게 Microsoft Entra 역할 할당의 단계에 따라 사용자 할당 관리 ID에 다음 Microsoft Entra ID 기본 제공 역할을 할당합니다.
- 디렉터리 리더
- 보안 리더
완료되면 Azure 커넥터 구성 완료 섹션을 계속 진행합니다.
Terraform을 사용하여 Microsoft Azure 구성
다음 단계에서는 Terraform을 사용하여 Microsoft Azure를 구성하는 방법을 간략하게 설명합니다. 이 절차는 포괄적이지 않습니다. Terraform을 사용하여 리소스를 프로비저닝하는 방법에 관한 자세한 내용은 Azure용 Terraform 문서를 참고하세요.
Azure 커넥터를 만들 때 열어 둔 Azure에 연결 페이지를 엽니다.
Terraform 템플릿 다운로드를 클릭합니다. 이렇게 하면 여러 JSON 파일이 포함된
azure_terraform.zip
파일이 다운로드됩니다.Microsoft Azure에 로그인한 다음 BASH 또는 Azure PowerShell로 Azure Cloud Shell을 엽니다.
다음 안내 중 하나를 사용하여 조직 정책에 따라 Terraform을 구성합니다.
azure_terraform.zip
파일을 Azure Cloud Shell 환경에 복사한 후 콘텐츠를 추출합니다.main.tf.json
,outputs.tf.json
,providers.tf.json
,variables.tf.json
파일이 표시됩니다.별도의 디렉터리에 이러한 파일의 사본을 만듭니다.
- 샘플 Terraform 코드를 테스트할 새 디렉터리를 만들고 이를 현재 디렉터리로 설정합니다.
새로 만든 디렉터리에서 원본 파일과 동일한 이름으로 추출된 JSON 파일의 사본을 만듭니다.
main.tf.json
라는 새 파일을 만든 다음 추출된main.tf.json
파일의 코드를 복사하여 붙여넣습니다.providers.tf.json
라는 새 파일을 만든 다음 추출된providers.tf.json
파일의 코드를 복사하여 붙여넣습니다.outputs.tf.json
라는 새 파일을 만든 다음 추출된outputs.tf.json
파일의 코드를 복사하여 붙여넣습니다.variables.tf.json
라는 새 파일을 만든 다음 추출된variables.tf.json
파일의 코드를 복사하여 붙여넣습니다.
다음 명령어를 실행하여 Terraform 배포를 초기화합니다.
terraform init -upgrade
다음 명령어를 실행하여 실행 계획을 만듭니다.
terraform plan -out main.tfplan -var="resource_group_name=RESOURCE_GROUP_NAME" -var="user_assigned_managed_identity_name=USER_ASSIGNED_MANAGED_IDENTITY_NAME"
다음을 바꿉니다.
RESOURCE_GROUP_NAME
: 사용자 할당 관리 ID가 생성될 Microsoft Azure 리소스 그룹의 이름입니다.USER_ASSIGNED_MANAGED_IDENTITY_NAME
: 만들 사용자 할당 관리형 ID의 이름입니다. 지정되지 않으면 기본값은google-cloud-managed-identity
입니다.
다음 명령어를 실행하여 Microsoft Azure 인프라에 실행 계획을 적용합니다.
terraform apply main.tfplan
Azure 커넥터 구성 완료 섹션을 계속 진행합니다.
Azure 커넥터 구성 완료
Microsoft Azure 사용자 할당 관리 ID에 관한 다음 정보를 확인합니다.
- 클라이언트 ID: ID에 할당된 36자리 값입니다.
- 객체 (주 구성원) ID: ID에 할당된 36자리 값입니다.
이 정보를 찾는 방법에 대한 자세한 내용은 사용자가 할당한 관리 ID 나열하기를 참고하세요.
Azure 커넥터를 만들 때 열어 둔 Azure에 연결 페이지를 엽니다.
Azure 관리형 ID 세부정보 섹션에서 다음을 입력합니다.
- 관리형 ID 클라이언트 ID: 클라이언트 ID입니다.
- 관리형 ID 객체 ID: 객체 (주 구성원) ID입니다.
계속을 클릭합니다.
커넥터 테스트 페이지에서 커넥터 테스트를 클릭하여 Security Command Center가 Microsoft Azure 환경에 연결할 수 있는지 확인합니다.
연결에 성공하면 Google Cloud 서비스 에이전트가 Microsoft Azure 사용자 할당 관리 ID를 가정할 수 있으며 필요한 Microsoft Azure 및 Microsoft Entra 권한을 보유합니다. 연결에 실패하면 연결 테스트 시 오류 문제 해결을 참고하세요.
저장을 클릭합니다. 커넥터 페이지가 표시됩니다.
커넥터가 지정된 Azure 구독 및 위치에서 데이터를 스캔하고 수집하기 시작합니다. 결과가 표시되기까지 최대 24시간이 걸릴 수 있습니다.
연결 테스트 시 오류 문제 해결
다음 섹션에서는 Security Command Center와 Microsoft Azure 간의 연결을 테스트할 때 발생할 수 있는 오류와 각 오류를 해결하는 방법을 설명합니다.
AZURE_ENABLED_SUBSCRIPTIONS_NOT_FOUND 오류
Azure 커넥터가 Azure 테넌트 ID 필드로 식별된 테넌트에서 사용 설정된 구독을 찾지 못했습니다. 다음 사항을 확인하세요.
- Add subscriptions automatically(구독 자동 추가)가 선택된 경우 테넌트에
Enabled
상태이고 Exclude Azure subscriptions(Azure 구독 제외) 필드에 표시되지 않는 구독이 포함되어 있는지 확인합니다. - 개별적으로 구독 추가가 선택된 경우 지정한 구독에
Enabled
상태가 있는지 확인합니다.
AZURE_FAILED_TO_ASSUME_MANAGED_IDENTITY 오류
Microsoft Azure 사용자 할당 관리 ID를 Google Cloud 서비스 에이전트가 가정할 수 없으므로 연결이 잘못되었습니다. 다음과 같은 이유로 발생할 수 있습니다.
- 연결에 지정된 사용자 할당 관리 ID가 없거나 구성이 잘못되었습니다.
- 연결에 지정된 사용자 할당 관리형 ID에 Google Cloud 서비스 에이전트를 신뢰하는 데 필요한 제휴 ID 사용자 인증 정보가 없을 수 있습니다.
이 문제를 해결하려면 다음 단계를 따르세요.
- 리소스 그룹에서 사용자 할당 관리 ID를 만들 때의 설정을 검토하여 ID가 존재하고 구성이 올바른지 확인합니다.
- 제휴 ID 사용자 인증 정보에 정의된 설정을 검토하여 구성이 올바른지 확인합니다.
AZURE_MANAGED_IDENTITY_MISSING_REQUIRED_PERMISSION 오류
Azure 사용자 할당 관리 ID에 필수 Microsoft Azure 또는 Microsoft Entra 역할이 없으므로 연결이 잘못되었습니다. 오류 메시지에는 누락된 역할이 포함됩니다.
이 문제를 해결하려면 Microsoft Azure 기본 제공 역할 및 Microsoft Entra 기본 제공 역할을 구성할 때 설정한 설정을 검토하여 구성이 올바른지 확인합니다.
AZURE_MANAGED_IDENTITY_ASSUMPTION_FAILED_AND_MISSING_REQUIRED_PERMISSION 오류
Microsoft Azure 사용자 할당 관리 ID를 Google Cloud 서비스 에이전트가 가정하지 못했으며 동시에 필요한 일부 Microsoft Azure 또는 Microsoft Entra 역할이 누락되어 연결이 잘못되었습니다.
오류 메시지에는 사용자 할당 관리 ID가 가정하지 못한 범위와 누락된 역할에 관한 세부정보가 포함됩니다.
이 문제를 해결하려면 다음 단계를 따르세요.
- 리소스 그룹에서 사용자 할당 관리 ID를 만들 때 할당된 설정을 검토하여 연결에 ID가 있고 설정이 올바른지 확인합니다.
- Microsoft Azure 기본 제공 역할 및 Microsoft Entra 기본 제공 역할을 구성할 때 설정한 설정을 검토하여 구성이 올바른지 확인합니다.
기타 문제 해결 도움말
다음 섹션에서는 이 문제의 동작과 해결 방법을 설명합니다.
삭제된 Azure 리소스에 대한 검색 결과가 반환됨
Azure 리소스를 삭제한 후 Security Command Center 애셋 인벤토리 시스템에서 삭제되는 데 최대 40시간이 걸릴 수 있습니다. 리소스를 삭제하여 발견 항목을 해결하는 경우 애셋이 아직 Security Command Center 애셋 인벤토리 시스템에서 삭제되지 않았기 때문에 이 기간 내에 발견 항목이 보고될 수 있습니다.
다음 단계
Security Command Center Enterprise를 처음 설정하는 경우 콘솔에서 설정 가이드의 4단계를 진행합니다.
다음 작업을 수행할 수도 있습니다.
- Azure 데이터의 발견 항목 검토 및 해결
- 보안 운영 콘솔에서 발견 항목과 관련된 리소스를 확인합니다.
- Azure 리소스의 공격 경로 시뮬레이션을 확인합니다.