주 구성원 액세스 경계(PAB) 정책을 사용하면 주 구성원 집합이 액세스할 수 있는 리소스를 제한할 수 있습니다. 주 구성원 집합에 주 구성원 액세스 경계 정책을 더 이상 적용하지 않으려면 정책을 주 구성원 집합에 바인딩하는 정책 바인딩을 삭제하면 됩니다. 바인딩된 모든 주 구성원 집합에서 주 구성원 액세스 경계 정책을 삭제하려면 정책을 삭제하면 됩니다.
주 구성원 집합에서 주 구성원 액세스 경계 정책을 삭제하면 다음 중 하나가 적용됩니다.
- 주 구성원 집합의 주 구성원에게 다른 주 구성원 액세스 경계 정책이 적용되지 않으면 주 구성원은 모든Google Cloud 리소스에 액세스할 수 있습니다.
- 주 구성원 집합의 주 구성원에게 다른 주 구성원 액세스 경계 정책이 적용되면 주 구성원은 해당 정책의 리소스에만 액세스할 수 있습니다.
시작하기 전에
인증을 설정합니다.
Select the tab for how you plan to use the samples on this page:
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
자세한 내용은 Google Cloud 인증 문서의 REST 사용을 위한 인증을 참조하세요.
주 구성원 액세스 경계 정책 개요를 읽어 보세요.
주 구성원 액세스 경계 정책을 삭제하는 데 필요한 역할
주 구성원 액세스 경계 정책을 삭제하는 데 필요한 권한을 얻으려면 관리자에게 조직에 대한 주 구성원 액세스 경계 관리자(
roles/iam.principalAccessBoundaryAdmin
) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.이 사전 정의된 역할에는 주 구성원 액세스 경계 정책을 삭제하는 데 필요한
iam.principalaccessboundarypolicies.delete
권한이 포함되어 있습니다.커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
주 구성원 액세스 경계 정책 바인딩을 삭제하는 데 필요한 역할
주 구성원 액세스 경계 정책의 정책 바인딩을 삭제하는 데 필요한 권한은 정책에 바인딩된 주 구성원 집합에 따라 달라집니다.
주 구성원 액세스 경계 정책의 정책 바인딩을 삭제하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.
-
조직에 대한 주 구성원 액세스 경계 사용자(
roles/iam.principalAccessBoundaryUser
) 역할 - 직원 ID 제휴 풀에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 대상 직원 ID 제휴 풀에 대한 IAM 직원 풀 관리자(
roles/iam.workforcePoolAdmin
) 역할 -
워크로드 아이덴티티 제휴 풀에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 대상 직원 ID 제휴 풀을 소유하는 프로젝트에 대한 IAM 워크로드 아이덴티티 풀 관리자(
roles/iam.workloadIdentityPoolAdmin
) 역할 -
워크로드 아이덴티티 풀을 참조하는 바인딩을 삭제하기 위한 장기 실행 작업의 상태 가져오기: 대상 워크로드 아이덴티티 풀을 소유한 프로젝트의 IAM 작업 뷰어(
roles/iam.operationViewer
) 역할 -
Google Workspace 도메인에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 조직에 대한 직원 풀 IAM 관리자(
roles/iam.workspacePoolAdmin
) 역할 -
프로젝트의 주 구성원 집합에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 프로젝트에 대한 프로젝트 IAM 관리자(
roles/resourcemanager.projectIamAdmin
) 역할 -
프로젝트의 주 구성원 집합을 참조하는 바인딩을 삭제하기 위한 장기 실행 작업의 상태 가져오기: 프로젝트의 IAM 작업 뷰어(
roles/iam.operationViewer
) 역할 -
폴더의 주 구성원 집합에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 폴더에 대한 폴더 IAM 관리자(
roles/resourcemanager.folderIamAdmin
) 역할 -
조직의 주 구성원 집합에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 조직에 대한 조직 관리자(
roles/resourcemanager.organizationAdmin
) 역할
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
이러한 사전 정의된 역할에는 주 구성원 액세스 경계 정책의 정책 바인딩을 삭제하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.
필수 권한
주 구성원 액세스 경계 정책의 정책 바인딩을 삭제하려면 다음 권한이 필요합니다.
-
조직에 대한
iam.principalaccessboundarypolicies.unbind
권한 - 직원 ID 제휴 풀에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 대상 직원 ID 제휴 풀에 대한
iam.workforcePools.deletePolicyBinding
권한 -
워크로드 ID 풀에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 대상 워크로드 ID 풀을 소유하는 프로젝트에 대한
iam.workloadIdentityPools.deletePolicyBinding
권한 -
워크로드 아이덴티티 풀을 참조하는 바인딩을 삭제하기 위한 장기 실행 작업의 상태 가져오기: 대상 워크로드 아이덴티티 풀을 소유한 프로젝트에 대한
iam.operations.get
권한 -
Google Workspace 도메인에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 조직에 대한
iam.workspacePools.deletePolicyBinding
권한 -
프로젝트의 주 구성원 집합에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 프로젝트에 대한
resourcemanager.projects.deletePolicyBinding
권한 -
프로젝트의 주 구성원 집합을 참조하는 바인딩을 삭제하기 위한 장기 실행 작업의 상태 가져오기: 프로젝트에 대한
iam.operations.get
권한 -
폴더의 주 구성원 집합에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 폴더에 대한
resourcemanager.folders.deletePolicyBinding
권한 -
조직의 주 구성원 집합에 바인딩된 주 구성원 액세스 경계 정책의 정책 바인딩 삭제: 조직에 대한
resourcemanager.organizations.deletePolicyBinding
권한
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
주 구성원 액세스 경계 정책 삭제 준비
주 구성원 액세스 경계 정책을 삭제하기 전에 다음 목표 중 달성할 목표를 결정합니다.
- 주 구성원 집합의 주 구성원이 모든 리소스에 액세스할 수 있도록 설정
- 주 구성원 집합의 주 구성원이 액세스할 수 있는 리소스 수 감소
다음 섹션에서는 이러한 각 목표를 달성하기 위해 수행해야 할 단계를 설명합니다.
주 구성원이 모든 리소스에 액세스할 수 있도록 설정
주 구성원 집합의 주 구성원이 모든 리소스에 액세스할 수 있게 하려면 다음을 실행합니다.
- 주 구성원 집합에 바인딩된 모든 주 구성원 액세스 경계 정책을 식별합니다.
- 관련 정책 바인딩을 삭제하여 주 구성원 집합에 바인딩된 모든 주 구성원 액세스 경계 정책을 삭제합니다.
주 구성원에게 주 구성원 액세스 경계 정책이 적용되지 않으면 주 구성원이 모든 Google Cloud 리소스에 액세스할 수 있습니다.
리소스에 액세스할 수 있다고 해서 반드시 사용자가 리소스에 액세스할 수 있는 것은 아닙니다. 자세한 내용은 정책 평가를 참조하세요.
주 구성원이 액세스할 수 있는 리소스 감소
주 구성원 집합의 주 구성원에게 여러 주 구성원 액세스 경계 정책이 적용되는 경우 주 구성원에게 적용되는 주 구성원 액세스 경계 정책 중 하나 이상을 삭제하여 주 구성원이 액세스할 수 있는 리소스 수를 줄일 수 있습니다. 하지만 주 구성원에게 적용되는 주 구성원 액세스 경계 정책을 모두 삭제하지 마세요. 삭제하면 주 구성원이 모든 Google Cloud 리소스에 액세스할 수 있게 됩니다.
주 구성원 집합의 주 구성원에게 항상 주 구성원 액세스 경계 정책이 최소 하나 이상 적용되는지 확인하면서 주 구성원 액세스 경계 정책을 삭제하려면 다음 단계를 수행합니다.
- 주 구성원 집합에 바인딩된 모든 주 구성원 액세스 경계 정책을 식별합니다.
주 구성원 집합의 주 구성원이 액세스할 수 있는 리소스만 포함된 주 구성원 액세스 경계 정책을 식별합니다. 이러한 정책은 주 구성원 집합에서 삭제하지 않을 정책입니다.
이러한 정책이 없으면 주 구성원이 액세스할 수 있는 리소스만 포함된 새 주 구성원 액세스 경계 정책을 만듭니다. 그런 다음 주 구성원 집합에 정책을 연결합니다.
주 구성원 집합의 주 구성원이 액세스할 수 없게 하려는 리소스가 포함된 주 구성원 액세스 경계 정책을 식별합니다. 그런 다음 관련 정책 바인딩을 삭제하여 이러한 주 구성원 액세스 경계 정책을 삭제합니다.
특정 주 구성원의 액세스 권한을 줄이려면 정책 바인딩을 삭제하는 대신 정책 바인딩에 조건을 추가합니다.
주 구성원이 액세스할 수 있는 리소스 수를 줄이되 주 구성원 액세스 경계 정책을 삭제하지 않으려면 대신 주 구성원에게 적용되는 주 구성원 액세스 경계 정책을 수정하면 됩니다. 주 구성원 액세스 경계 정책을 수정하는 방법은 주 구성원 액세스 경계 정책 수정을 참조하세요.
주 구성원 집합에서 주 구성원 액세스 경계 정책 삭제
주 구성원 집합에서 주 구성원 액세스 경계 정책을 삭제하기 전에 먼저 정책 삭제를 준비합니다. 그런 다음 정책을 주 구성원 집합에 바인딩하는 정책 바인딩을 삭제하여 정책을 삭제합니다.
Google Cloud 콘솔, gcloud CLI 또는 IAM REST API를 사용하여 정책 바인딩을 삭제할 수 있습니다.
콘솔
Google Cloud 콘솔에서 주 구성원 액세스 경계 정책 페이지로 이동합니다.
바인딩을 삭제하려는 주 구성원 액세스 경계 정책을 소유한 조직을 선택합니다.
바인딩을 삭제하려는 주 구성원 액세스 경계 정책의 정책 ID를 클릭합니다.
바인딩 탭을 클릭합니다.
삭제하려는 바인딩의 ID를 찾습니다. 바인딩 행에서
작업을 클릭한 후 바인딩 삭제를 클릭합니다.확인 대화상자에서 삭제를 클릭합니다.
gcloud
gcloud iam policy-bindings delete
명령어는 정책 바인딩을 삭제합니다.아래의 명령어 데이터를 사용하기 전에 다음을 바꿉니다.
-
BINDING_ID
: 삭제하려는 정책 바인딩의 ID입니다(예:example-binding
). -
RESOURCE_TYPE
: 정책 바인딩이 하위 요소인 Resource Manager 리소스(프로젝트, 폴더 또는 조직)의 유형입니다.project
,folder
또는organization
값을 사용합니다.리소스 유형은 정책 바인딩의 주 구성원 집합에 따라 달라집니다. 사용할 리소스 유형을 확인하려면 지원되는 주 구성원 유형을 참조하세요.
RESOURCE_ID
: 정책 바인딩이 하위 요소인 프로젝트, 폴더 또는 조직의 ID입니다. 프로젝트 ID는my-project
와 같은 영숫자 문자열입니다. 폴더 및 조직 ID는123456789012
와 같은 숫자입니다.
다음 명령어를 실행합니다.
Linux, macOS 또는 Cloud Shell
gcloud iam policy-bindings delete BINDING_ID \ --RESOURCE_TYPE=RESOURCE_ID --location=global
Windows(PowerShell)
gcloud iam policy-bindings delete BINDING_ID ` --RESOURCE_TYPE=RESOURCE_ID --location=global
Windows(cmd.exe)
gcloud iam policy-bindings delete BINDING_ID ^ --RESOURCE_TYPE=RESOURCE_ID --location=global
응답에는 요청에 해당하는 장기 실행 작업이 포함됩니다. 장기 실행 작업의 상태를 가져오는 방법을 알아보려면 이 페이지의 장기 실행 작업의 상태 확인을 참조하세요.
Delete request issued for: [example-binding] Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374724030-6181fcd1520c5-d21b0a12-b704e1ce] to complete...done. Deleted policyBinding [example-binding].
REST
policyBindings.delete
메서드는 정책 바인딩을 삭제합니다.요청 데이터를 사용하기 전에 다음을 바꿉니다.
-
RESOURCE_TYPE
: 정책 바인딩이 하위 요소인 Resource Manager 리소스(프로젝트, 폴더 또는 조직)의 유형입니다.projects
,folders
또는organizations
값을 사용합니다.리소스 유형은 정책 바인딩의 주 구성원 집합에 따라 달라집니다. 사용할 리소스 유형을 확인하려면 지원되는 주 구성원 유형을 참조하세요.
RESOURCE_ID
: 정책 바인딩이 하위 요소인 프로젝트, 폴더 또는 조직의 ID입니다. 프로젝트 ID는my-project
와 같은 영숫자 문자열입니다. 폴더 및 조직 ID는123456789012
와 같은 숫자입니다.-
BINDING_ID
: 삭제하려는 정책 바인딩의 ID입니다(예:example-binding
).
HTTP 메서드 및 URL:
DELETE https://iam.googleapis.com/v3/RESOURCE_TYPE/RESOURCE_ID/locations/global/policyBindings/BINDING_ID
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
응답에는 요청에 해당하는 장기 실행 작업이 포함됩니다. 장기 실행 작업의 상태를 가져오는 방법을 알아보려면 이 페이지의 장기 실행 작업의 상태 확인을 참조하세요.
{ "name": "organizations/123456789012/locations/global/operations/operation-1715373190994-6181f71b4daad-6d8168c1-13cc6600", "metadata": { "@type": "type.googleapis.com/google.iam.v3.OperationMetadata", "createTime": "2024-05-10T20:33:11.165728913Z", "target": "organizations/123456789012/locations/global/policyBindings/example-binding", "verb": "delete", "requestedCancellation": false, "apiVersion": "v3" }, "done": false }
주 구성원 액세스 경계 정책 삭제
주 구성원 액세스 경계 정책을 삭제하기 전에 주 구성원 액세스 경계 정책을 참조하는 모든 주 구성원 액세스 경계 정책 바인딩을 식별하고 삭제하는 것이 좋습니다.
기존 정책 바인딩이 있는 주 구성원 액세스 경계 정책을 삭제하면 해당 바인딩도 삭제됩니다. 그러나 삭제될 때까지 정책 바인딩은 단일 주 구성원 집합을 참조할 수 있는 바인딩 10개 한도에 포함됩니다.
Google Cloud 콘솔, gcloud CLI 또는 IAM REST API를 사용하여 주 구성원 액세스 경계 정책을 삭제할 수 있습니다.
콘솔
Google Cloud 콘솔에서 주 구성원 액세스 경계 정책 페이지로 이동합니다.
바인딩을 삭제하려는 주 구성원 액세스 경계 정책을 소유한 조직을 선택합니다.
삭제하려는 정책의 ID를 찾습니다. 해당 정책 행에서
작업을 클릭한 후 정책 삭제를 클릭합니다.확인 대화상자에서 정책을 삭제할 것인지 확인합니다.
- 정책에 연결된 바인딩이 없는 경우에만 정책을 삭제하려면 삭제를 클릭합니다.
- 정책 및 연결된 모든 바인딩을 삭제하려면 정책 강제 삭제 체크박스를 선택한 후 삭제를 클릭합니다.
gcloud
gcloud iam gcloud iam principal-access-boundary-policies delete
명령어는 주 구성원 액세스 경계 정책 및 모든 연결된 바인딩을 삭제합니다.아래의 명령어 데이터를 사용하기 전에 다음을 바꿉니다.
-
PAB_POLICY_ID
: 삭제하려는 주 구성원 액세스 경계 정책의 ID입니다(예:example-policy
). ORG_ID
: 주 구성원 액세스 경계 정책을 소유하는 조직의 ID입니다. 조직 ID는123456789012
와 같은 숫자입니다.FORCE_FLAG
: 선택사항. 명령어에서 정책을 강제로 삭제하게 하려면 정책이 기존 정책 바인딩에서 참조되더라도--force
플래그를 사용합니다. 이 플래그가 설정되지 않고 정책이 기존 정책 바인딩에서 참조되면 명령어가 실패합니다.
다음 명령어를 실행합니다.
Linux, macOS 또는 Cloud Shell
gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID \ --organization=ORG_ID --location=global FORCE_FLAG
Windows(PowerShell)
gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID ` --organization=ORG_ID --location=global FORCE_FLAG
Windows(cmd.exe)
gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID ^ --organization=ORG_ID --location=global FORCE_FLAG
응답에는 요청에 해당하는 장기 실행 작업이 포함됩니다. 장기 실행 작업의 상태를 가져오는 방법을 알아보려면 이 페이지의 장기 실행 작업의 상태 확인을 참조하세요.
Delete request issued for: [example-policy] Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374811191-6181fd2471ab4-f0947406-85778c43] to complete... Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374811191-6181fd2471ab4-f0947406-85778c43] to complete...done. Deleted principalAccessBoundaryPolicy [example-policy].
REST
principalAccessBoundaryPolicies.delete
메서드는 주 구성원 액세스 경계 정책과 연결된 모든 바인딩을 삭제합니다.요청 데이터를 사용하기 전에 다음을 바꿉니다.
ORG_ID
: 주 구성원 액세스 경계 정책을 소유하는 조직의 ID입니다. 조직 ID는123456789012
와 같은 숫자입니다.-
PAB_POLICY_ID
: 삭제하려는 주 구성원 액세스 경계 정책의 ID입니다(예:example-policy
). -
FORCE_DELETE
: 선택사항. 정책 삭제 요청을 강제하려면 정책이 기존 정책 바인딩에서 참조되더라도 쿼리 파라미터force=true
를 추가합니다. 이 쿼리 파라미터가 설정되지 않고 정책이 기존 정책 바인딩에서 참조되면 요청이 실패합니다.
HTTP 메서드 및 URL:
DELETE https://iam.googleapis.com/v3/organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID?FORCE_DELETE
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
응답에는 요청에 해당하는 장기 실행 작업이 포함됩니다. 장기 실행 작업의 상태를 가져오는 방법을 알아보려면 이 페이지의 장기 실행 작업의 상태 확인을 참조하세요.
{ "name": "organizations/123456789012/locations/global/operations/operation-1715373190994-6181f71b4daad-6d8168c1-13cc6600", "metadata": { "@type": "type.googleapis.com/google.iam.v3.OperationMetadata", "createTime": "2024-05-10T20:33:11.165728913Z", "target": "organizations/123456789012/locations/global/policyBindings/example-policy", "verb": "delete", "requestedCancellation": false, "apiVersion": "v3" }, "done": false }
장기 실행 작업의 상태 확인
REST API 또는 클라이언트 라이브러리를 사용할 때 사용자 액세스 경계 정책 또는 바인딩을 변경하는 메서드는 장기 실행 작업(LRO)을 반환합니다. 장기 실행 작업은 요청의 상태를 추적하고 정책이나 바인딩 변경이 완료되었는지 여부를 나타냅니다.
REST
operations.get
메서드는 장기 실행 작업 상태를 반환합니다.요청 데이터를 사용하기 전에 다음을 바꿉니다.
-
OPERATION_NAME
: 작업의 전체 이름입니다. 원래 요청에 대한 응답으로 이 이름이 수신됩니다.작업 이름은 다음 형식입니다.
RESOURCE_TYPE/RESOURCE_ID/locations/global/operations/OPERATION_ID
HTTP 메서드 및 URL:
GET https://iam.googleapis.com/v3/OPERATION_NAME
요청을 보내려면 다음 옵션 중 하나를 펼칩니다.
다음과 비슷한 JSON 응답이 표시됩니다.
{ "name": "organizations/314340013352/locations/global/operations/operation-1732752311821-627edd607a3df-9a62cdea-2a7d9f07", "metadata": { "@type": "type.googleapis.com/google.iam.v3.OperationMetadata", "createTime": "2024-11-28T00:05:12.006289686Z", "endTime": "2024-11-28T00:05:12.192141801Z", "target": "organizations/314340013352/locations/global/principalAccessBoundaryPolicies/example-policy", "verb": "create", "requestedCancellation": false, "apiVersion": "v3" }, "done": true, "response": { PAB_POLICY } }
작업의
done
필드가 없으면 작업을 반복적으로 가져와서 해당 상태를 계속 모니터링합니다. 잘린 지수 백오프를 사용하여 각 요청 간에 지연을 일으킵니다.done
필드가true
로 설정되었으면 작업이 완료되었고 작업 가져오기를 중지할 수 있습니다.다음 단계
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2025-04-02(UTC)