Private Service Connect 소비자의 보안 관리
이 페이지에서는 서비스 소비자가 Private Service Connect를 사용하는 소비자 조직 및 VPC 네트워크에 대해 보안을 구성하는 방법을 설명합니다.
관리자는 조직 정책에 따라 Private Service Connect 엔드포인트 및 백엔드를 사용하여 프로젝트가 연결할 수 있는 VPC 네트워크 또는 조직을 포괄적으로 제어할 수 있습니다. 네트워크 관리자는 VPC 방화벽 규칙 및 방화벽 정책을 통해 Private Service Connect 리소스에 대한 네트워크 수준의 액세스를 제어할 수 있습니다. 조직 정책과 방화벽 규칙은 상호 보완적이며 함께 사용할 수 있습니다.
역할
조직 정책을 관리하는 데 필요한 권한을 얻으려면 관리자에게 조직의 조직 정책 관리자(roles/orgpolicy.policyAdmin
) IAM 역할을 요청하세요.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
방화벽 규칙을 만드는 데 필요한 권한을 얻으려면 관리자에게 VPC 네트워크에서 Compute 네트워크 관리자(roles/compute.networkAdmin
) IAM 역할을 부여해 달라고 요청하세요.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.
소비자 조직 정책
목록 제약조건과 함께 조직 정책을 사용하여 Private Service Connect 엔드포인트 또는 백엔드의 배포를 제어할 수 있습니다. 엔드포인트 또는 백엔드가 소비자 조직 정책에 의해 차단되면 리소스 생성이 실패합니다.
자세한 내용은 사용자 측 조직 정책을 참조하세요.
엔드포인트 및 백엔드가 승인되지 않은 서비스 연결에 연결하지 못하도록 차단
리소스: 엔드포인트 및 백엔드
gcloud
새 정책을 저장할
/tmp/policy.yaml
이라는 임시 파일을 만듭니다. 파일에 다음 콘텐츠를 추가합니다.name: organizations/CONSUMER_ORG/policies/compute.restrictPrivateServiceConnectProducer spec: rules: - values: allowedValues: - under:organizations/PRODUCER_ORG_NUMBER - under:organizations/433637338589
다음을 바꿉니다.
CONSUMER_ORG
: 엔드포인트 및 백엔드 연결을 제어하려는 조직의 조직 리소스 ID입니다.PRODUCER_ORG_NUMBER
: 엔드포인트 및 백엔드에 연결하려는 프로듀서 조직의 숫자 조직 리소스 ID입니다.
엔드포인트 및 백엔드가 Google에서 소유한 서비스 연결에 연결하지 못하도록 차단하려면
allowedValues
섹션에서- under:organizations/433637338589
항목을 삭제하세요.프로젝트에서 서비스에 연결할 수 있는 추가 조직을 지정하려면
allowedValues
섹션에 추가 항목을 포함합니다.조직 외에도 다음 형식으로 승인된 폴더 및 프로젝트를 지정할 수 있습니다.
under:folders/FOLDER_ID
FOLDER_ID
는 숫자 ID여야 합니다.under:projects/PROJECT_ID
PROJECT_ID
는 문자열 ID여야 합니다.
예를 들어 서비스 연결이 허용된 값 또는 허용된 값의 하위 요소와 연결되지 않은 경우
Consumer-org-1
의 엔드포인트 및 백엔드에서 서비스 연결에 연결하지 못하도록 차단하는 조직 정책을 만드는 데 다음을 사용할 수 있습니다. 허용된 값은 조직Producer-org-1
, 프로젝트Producer-project-1
, 폴더Producer-folder-1
입니다.name: organizations/Consumer-org-1/policies/compute.restrictPrivateServiceConnectProducer spec: rules: - values: allowedValues: - under:organizations/Producer-org-1 - under:projects/Producer-project-1 - under:folders/Producer-folder-1
정책을 적용합니다.
gcloud org-policies set-policy /tmp/policy.yaml
적용되는 정책을 확인합니다.
gcloud org-policies describe compute.restrictPrivateServiceConnectProducer \ --effective \ --organization=CONSUMER_ORG
연결 유형별로 사용자가 엔드포인트를 배포하지 못하도록 차단
리소스: 엔드포인트
gcloud
새 정책을 저장할
/tmp/policy.yaml
이라는 임시 파일을 만듭니다.사용자 조직의 사용자가 Google API에 연결되는 엔드포인트를 만들지 못하도록 하려면 파일에 다음 콘텐츠를 추가합니다.
name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers spec: rules: - values: allowedValues: - SERVICE_PRODUCERS
사용자 조직의 사용자가 게시된 서비스에 연결되는 엔드포인트를 만들지 못하도록 하려면 파일에 다음 콘텐츠를 추가합니다.
name: organizations/CONSUMER_ORG/policies/compute.disablePrivateServiceConnectCreationForConsumers spec: rules: - values: allowedValues: - GOOGLE_APIS
CONSUMER_ORG
를 엔드포인트 배포를 제어할 사용자 조직의 이름으로 바꿉니다.정책을 적용합니다.
gcloud org-policies set-policy /tmp/policy.yaml
적용되는 정책을 확인합니다.
gcloud org-policies describe compute.restrictPrivateServiceConnectProducer \ --effective \ --organization=CONSUMER_ORG
방화벽 규칙
리소스: 모두
VPC 방화벽 규칙 또는 방화벽 정책을 사용하여Private Service Connect 리소스에 대한 액세스를 제어할 수 있습니다. 이그레스 방화벽 규칙은 VM 인스턴스에서 엔드포인트 및 백엔드의 IP 주소 또는 서브넷에 대한 액세스를 차단하거나 허용할 수 있습니다.
예를 들어 그림 1은 Private Service Connect 엔드포인트가 연결되어 있는 서브넷에 대한 액세스가 방화벽 규칙으로 제어되는 구성을 보여줍니다.
다음 방화벽 규칙은 엔드포인트 서브넷에 대한 모든 이그레스 트래픽을 정의합니다.
gcloud compute firewall-rules create deny-all \ --network=vpc-1 \ --direction=egress \ --action=deny \ --destination-ranges=10.33.0.0/24 --priority=1000
우선순위가 더 높은 방화벽 규칙은
allow-psc
네트워크 태그가 있는 VM의 엔드포인트 서브넷으로 이그레스 트래픽을 허용합니다.gcloud compute firewall-rules create allow-psc \ --network=vpc-1 \ --direction=egress \ --action=allow \ --target-tags=allow-psc \ --destination-ranges=10.33.0.0/24 --priority=100
방화벽 규칙을 사용하여 엔드포인트 또는 백엔드에 대한 액세스 제한
VM에서 엔드포인트 또는 백엔드의 서브넷에 대한 액세스를 제한하려면 다음을 수행합니다.
엔드포인트 또는 백엔드 서브넷에 대한 이그레스 트래픽을 거부하는 방화벽 규칙을 만듭니다.
gcloud compute firewall-rules create deny-all \ --network=NETWORK \ --direction=egress \ --action=deny \ --destination-ranges=ENDPOINT_SUBNET_RANGE \ --priority=1000
다음을 바꿉니다.
NETWORK
: 엔드포인트 또는 백엔드의 네트워크 이름입니다.ENDPOINT_SUBNET_RANGE
: 액세스를 제어하려는 엔드포인트 또는 백엔드 서브넷의 IP CIDR 범위입니다.
태그 지정된 VM에서 엔드포인트 또는 백엔드 서브넷으로의 이그레스 트래픽을 허용하는 두 번째 방화벽 규칙을 만듭니다.
gcloud compute firewall-rules create allow-psc \ --network=NETWORK \ --direction=egress \ --action=allow \ --target-tags=allow-psc \ --destination-ranges=ENDPOINT_SUBNET_RANGE \ --priority=100