VPC 서비스 제어 해결 제안을 사용하여 서비스 경계로 인해 발생하는 액세스 거부를 진단하고 해결할 수 있습니다.
VPC 서비스 제어에서 액세스 요청을 거부하면 수정 엔진이 위반 이벤트를 분석하고 실행 가능하고 범위가 좁은 권장사항을 생성합니다. 이러한 제안을 통해 필요한 액세스 권한을 부여하고 최소 권한의 원칙을 준수할 수 있습니다.
수정 제안 작동 방식
수정 제안은Google Cloud 콘솔의 위반 분석 도구에 직접 통합되어 있습니다. 고유 ID 또는 문제 해결 토큰을 사용하여 액세스 거부를 진단하면 수정 엔진에서 위반 컨텍스트를 평가하고 위반 유형에 따라 구성 변경사항을 제안합니다.
- 인그레스 위반: 엔진에서 범위가 지정된 인그레스 규칙을 제안하고, 해당하는 경우 요청 컨텍스트를 충족하는 기존 액세스 수준을 선택하거나 (권장) 호출자를 승인하기 위한 새로운 컨텍스트 인식 액세스 수준(예: IP 서브네트워크, 지리적 리전, 기기 정책 요구사항)을 만들 수 있습니다.
- 이그레스 위반: 엔진에서 경계 외부의 소스 ID와 타겟 리소스 또는 작업을 지정하는 범위가 지정된 이그레스 규칙을 제안합니다.
- VPC 액세스 가능 서비스 위반: 엔진에서 요청된 서비스를 허용 목록에 추가하거나 경계 제한을 업데이트하도록 제안합니다.
하나의 액세스 거부에는 인그레스, 이그레스, VPC 액세스 서비스 위반의 조합과 같은 여러 위반 유형이 포함될 수 있습니다. 이러한 경우 수정 엔진은 적용 가능한 모든 위반을 해결하는 제안을 생성합니다. 생성된 구성 변경사항을 검토하고 클릭 한 번으로 서비스 경계에 직접 적용할 수 있습니다.
시작하기 전에
- 수정 제안을 보고 적용하는 데 필요한 권한이 있는지 확인합니다.
- 해결하려는 액세스 거부의 고유 ID 또는 문제 해결 토큰이 있는지 확인합니다. 이 식별자는 거부 오류 응답, Cloud 감사 로그 또는 위반 대시보드에서 가져올 수 있습니다. 자세한 내용은 감사 로그에서 오류 가져오기를 참고하세요.
필요한 역할
수정 제안을 보고 적용하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.
-
액세스 거부 이벤트 진단 및 해결 방법 제안 보기: 액세스 정책에 대한 Access Context Manager 리더 (
roles/accesscontextmanager.policyReader) -
Cloud 감사 로그에서 문제 해결 토큰을 가져옵니다.
VPC 서비스 제어 감사 로그가 포함된 프로젝트의 로그 뷰어 (
roles/logging.viewer) -
수정 제안을 적용하고 서비스 경계를 업데이트합니다. 액세스 정책에 대한 Access Context Manager 편집자 (
roles/accesscontextmanager.editor)
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
이러한 사전 정의된 역할에는 수정 제안을 보고 적용하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.
필수 권한
수정 제안을 보고 적용하려면 다음 권한이 필요합니다.
-
액세스 거부 이벤트를 진단하고 해결 제안을 확인합니다.
-
액세스 정책에 대한
accesscontextmanager.accessLevels.list권한 -
액세스 정책에 대한
accesscontextmanager.policies.get권한 -
액세스 정책에 대한
accesscontextmanager.servicePerimeters.list권한
-
액세스 정책에 대한
-
VPC 서비스 제어 감사 로그가 포함된 프로젝트에서 Cloud 감사 로그의 문제 해결 토큰을 가져옵니다.
logging.logEntries.list -
수정 제안을 적용하고 서비스 경계를 업데이트합니다.
-
액세스 정책에 대한
accesscontextmanager.accessLevels.create권한 -
액세스 정책에 대한
accesscontextmanager.accessLevels.get권한 -
액세스 정책에 대한
accesscontextmanager.accessLevels.list권한 -
액세스 정책에 대한
accesscontextmanager.policies.get권한 -
액세스 정책에 대한
accesscontextmanager.servicePerimeters.get권한 -
액세스 정책에 대한
accesscontextmanager.servicePerimeters.update권한
-
액세스 정책에 대한
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
수정 제안 보기 및 적용하기
액세스 거부에 대한 해결 제안을 보고 적용하려면 다음 단계를 따르세요.
Google Cloud 콘솔에서 VPC 서비스 제어 페이지로 이동합니다.
메시지가 표시되면 조직을 선택합니다.
VPC 서비스 제어 페이지에서 위반 분석 도구를 클릭합니다.
문제 해결 토큰 (또는 고유 ID) 필드에 액세스 거부의 문제 해결 토큰 또는 고유 ID를 입력합니다.
계속을 클릭합니다.
문제 해결 결과 페이지의 액세스한 보호 리소스에서 액세스가 거부된 경계를 선택합니다.
추천 검토를 클릭합니다. 수정 세부정보 창이 열립니다.
제안된 해결 작업을 검토합니다.
- 수정에 액세스 수준이 필요한 경우 액세스 수준을 구성합니다.
- 기존 액세스 수준 선택 (권장): 기존 액세스 수준 탭을 클릭한 다음 기존 액세스 수준 선택 목록에서 요청 컨텍스트를 충족하는 액세스 수준을 선택합니다.
- 새 액세스 수준 만들기: 새 액세스 수준 탭에서 추천 액세스 수준 이름, IP 서브네트워크, 지리적 리전, 기기 제약 조건을 검토합니다.
- 서비스 경계에 제안된 인그레스 규칙, 이그레스 규칙 또는 VPC 액세스 가능 서비스 변경사항을 검토합니다.
- 수정에 액세스 수준이 필요한 경우 액세스 수준을 구성합니다.
추천된 변경사항을 적용하려면 수정 적용을 클릭합니다.
VPC 서비스 제어는 새 액세스 수준을 자동으로 프로비저닝하고 (만들기로 선택한 경우) 서비스 경계 구성을 업데이트합니다.
위반 유형별 해결 작업
다음 표에서는 위반 유형에 따라 수정 엔진에서 제안하는 조치를 설명합니다.
| 위반 유형 | 추천 해결 작업 |
|---|---|
| 인그레스 위반 |
|
| 이그레스 위반 | 소스 ID 또는 프로젝트와 타겟 서비스, 메서드 선택기, 외부 리소스에 범위가 지정된 이그레스 규칙을 추가합니다. |
| VPC 액세스 가능 서비스 | 제한된 서비스를 경계의 VPC 액세스 가능 서비스 허용 목록에 추가하거나 서비스가 지원되지 않는 경우 제한사항 업데이트를 제안합니다. |
예: 액세스 수준을 사용한 인그레스 수정
분석가 (analyst@example.com)가 외부 워크스테이션 (198.51.100.42)에서 프로젝트 803311519563의 Cloud Storage 버킷에서 객체를 읽으려고 시도하는 액세스 거부를 고려해 보겠습니다.
최소 권한에 따라 이 거부를 해결하기 위해 수정 엔진은 다음과 같은 두 가지 연결된 작업을 제안합니다.
작업 1: 기존 액세스 수준 선택 또는 범위가 지정된 액세스 수준 만들기
호출자의 워크스테이션을 승인하려면 기존 액세스 수준을 재사용하거나 새 액세스 수준을 만들면 됩니다.
- 기존 액세스 수준 선택 (권장): 기존 액세스 수준 탭에서 요청 컨텍스트와 이미 일치하는 기존 액세스 수준 (예:
corp_trusted_workstations)을 선택합니다. 중복 액세스 수준을 만들지 않고 정책 관리를 간소화하려면 기존 액세스 수준을 재사용하는 것이 좋습니다. - 새 액세스 수준 만들기: 또는 새 액세스 수준 탭에서 엔진이 호출자의 워크스테이션으로 범위가 지정된 새 액세스 수준을 만들도록 할 수 있습니다.
- 이름:
accessPolicies/POLICY_ID/accessLevels/analyst_secure_workstation - IP 서브네트워크:
198.51.100.0/24 - 리전:
US - 기기 정책: 화면 잠금, 디스크 암호화, 회사 소유 상태, 관리자 승인이 필요합니다.
- 이름:
작업 2: 범위가 지정된 인그레스 규칙을 경계에 추가
엔진은 선택한 기존 액세스 수준 또는 새로 생성된 액세스 수준을 참조하는 좁은 범위의 인그레스 규칙을 서비스 경계에 추가합니다.
- ID:
user:analyst@example.com - 소스: 선택한 기존 액세스 수준 (예:
corp_trusted_workstations) 또는 새analyst_secure_workstation액세스 수준 - 서비스:
storage.googleapis.com - 메서드 선택기:
google.storage.objects.get - 리소스:
projects/803311519563
수정 적용을 클릭하면 VPC 서비스 제어에서 선택한 액세스 수준을 적용하거나 새 액세스 수준을 만들고 서비스 경계를 순서대로 업데이트합니다.
제한사항
- 민감한 데이터 삭제:
- 수정된 내부 IP 주소는 특정 액세스 수준을 생성하는 데 사용할 수 없습니다.
- 감사 로그에서 호출자 ID가 수정되거나 사용할 수 없는 경우 추천에서
ANY_USER_ACCOUNT와 같은 일반 ID를 사용할 수 있습니다. - 서비스 메서드가 세부적으로 지원되지 않으면 제안에서 와일드 카드 (
*)를 사용할 수 있습니다. - 네트워크 이름에 액세스할 수 없는 경우 추천은 프로젝트 번호로 대체됩니다.
- 수정 제안에는 Cloud 감사 로그의 액세스 거부 세부정보가 필요합니다. 로그 보관 기간 (기본값 30일)보다 오래된 이벤트는 분석할 수 없습니다.
- 수정 제안은Google Cloud 콘솔의 조직 수준에서만 사용할 수 있습니다.
- 서비스 패턴과 특정 서드 파티 직원 ID 풀 구성은 수정 엔진에서 지원되지 않습니다.
다음 단계
- 위반 분석 도구에서 액세스 거부 진단하기에 대해 자세히 알아보세요.
- 위반 대시보드를 사용하여 액세스 거부를 모니터링합니다.
- 인그레스 및 이그레스 정책 구성에 대해 알아봅니다.
- VPC 서비스 제어 문제 해결 가이드를 읽어보세요.