이 페이지에서는 기존 액세스 수준을 관리하는 방법을 설명합니다. 다음과 같은 작업을 할 수 있습니다.
시작하기 전에
gcloud
명령줄 도구를 사용하기 위한 기본 액세스 정책을 설정합니다.-또는-
정책 이름을 가져옵니다. 정책 이름에는
gcloud
명령줄 도구를 사용하고 API를 호출하는 명령어가 필요합니다. 기본 액세스 정책을 설정하는 경우gcloud
명령줄 도구에 정책을 지정할 필요가 없습니다.조직 수준에서 액세스 수준을 관리할 수 있게 해주는 Identity and Access Management(IAM) 역할이 있는지 확인합니다. 관리자에게 다음 역할 중 하나 또는 동일한 권한을 갖는 커스텀 역할을 부여하도록 요청합니다.
액세스 수준 보기: Access Context Manager 리더(
roles/accesscontextmanager.policyReader
)액세스 수준을 보기 및 변경: Access Context Manager 편집자(
roles/accesscontextmanager.policyEditor
) 또는 Access Context Manager 관리자(roles/accesscontextmanager.policyAdmin
)
액세스 수준 나열
콘솔
모든 액세스 수준을 나열하려면 Google Cloud 콘솔에서 Access Context Manager 페이지를 열고 메시지가 표시되면 조직을 선택합니다. 조직의 액세스 수준이 각 액세스 수준의 구성 세부정보와 함께 페이지의 그리드에 표시됩니다.
gcloud
list
명령어를 사용하여 모든 액세스 수준을 나열할 수 있습니다.
gcloud access-context-manager levels list \ [--policy=POLICY_NAME]
각 항목의 의미는 다음과 같습니다.
- POLICY_NAME은 조직의 액세스 정책 이름입니다. 이 값은 기본 액세스 정책을 설정하지 않은 경우에만 필요합니다.
출력은 다음과 같습니다.
NAME TITLE LEVEL_TYPE Device_Trust Device_Trust Extended Basic Service_Group_A Service_Group_A Basic
API
정책의 모든 액세스 수준을 나열하려면 accessLevels.list
를 호출합니다.
GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels
각 항목의 의미는 다음과 같습니다.
- POLICY_NAME은 조직의 액세스 정책 이름입니다.
요청 본문
요청 본문은 비어 있어야 합니다.
선택적 매개변수
선택적으로 다음 쿼리 매개변수 중 하나 이상을 포함합니다.
매개변수 | |
---|---|
pageSize
|
기본적으로 이 매개변수를 사용하면 페이지별로 반환되는 액세스 수준의 수를 수정할 수 있습니다. |
pageToken
|
호출로 반환된 액세스 수준의 수가 페이지 크기를 초과하면 응답 본문에 페이지 토큰이 포함됩니다. 후속 호출에서 이 매개변수를 사용하면 결과의 다음 페이지를 가져올 수 있습니다. |
accessLevelFormat
|
일반적으로 액세스 수준은
이 매개변수 값을 |
응답 본문
호출이 성공하면 호출의 응답 본문에 액세스 수준을 나열하는 AccessLevels
객체와 nextPageToken
문자열이 포함됩니다. nextPageToken
은 반환된 액세스 수준 수가 페이지 크기를 초과한 경우에만 값을 갖습니다. 그렇지 않으면 nextPageToken
은 빈 문자열로 반환됩니다.
액세스 수준 나열(형식 지정됨)
gcloud
명령줄 도구를 사용하여 YAML 또는 JSON 형식의 액세스 수준 목록을 가져올 수 있습니다.
형식이 지정된 액세스 수준 목록을 가져오려면 list
명령어를 사용합니다.
gcloud access-context-manager levels list \ --format=FORMAT \ [--policy=POLICY_NAME]
각 항목의 의미는 다음과 같습니다.
FORMAT는 다음 값 중 하나입니다.
list
(YAML 형식)json
(JSON 형식)
POLICY_NAME은 조직의 액세스 정책 이름입니다. 이 값은 기본 액세스 정책을 설정하지 않은 경우에만 필요합니다.
YAML 출력은 다음과 같습니다.
- basic: {'conditions': [{'ipSubnetworks': ['8.8.0/24']}]} description: Level for corp access. name: accessPolicies/165717541651/accessLevels/corp_level title: Corp Level - basic: {'combiningFunction': 'OR', 'conditions': [{'ipSubnetworks': ['8.8.0/24']}]} description: Level for net access. name: accessPolicies/165717541651/accessLevels/net_level title: Net Level
JSON 출력은 다음과 같습니다.
[ { "basic": { "conditions": [ { "ipSubnetworks": [ "8.8.0/24" ] } ] }, "description": "Level for corp access.", "name": "accessPolicies/165717541651/accessLevels/corp_level", "title": "Corp Level" }, { "basic": { "combiningFunction": "OR", "conditions": [ { "ipSubnetworks": [ "8.8.0/24" ] } ] }, "description": "Level for net access.", "name": "accessPolicies/165717541651/accessLevels/net_level", "title": "Net Level" } ]
액세스 수준 설명
콘솔
Google Cloud 콘솔을 사용하여 액세스 수준을 나열하는 단계를 참조하세요. 액세스 수준을 나열하면 나타나는 그리드에서 세부정보가 제공됩니다.
gcloud
액세스 수준을 나열하면 해당 이름, 제목, 수준 유형만 제공됩니다. 특정 수준의 기능이 무엇인지 자세히 알아보려면 describe
명령어를 사용합니다.
gcloud access-context-manager levels describe LEVEL_NAME \ [--policy=POLICY_NAME]
각 항목의 의미는 다음과 같습니다.
LEVEL_NAME은 설명하려는 액세스 수준의 이름입니다.
POLICY_NAME은 조직의 액세스 정책 이름입니다. 이 값은 기본 액세스 정책을 설정하지 않은 경우에만 필요합니다.
이 명령어를 실행하면 수준에 대한 정보가 YAML 형식으로 인쇄됩니다. 예를 들어 해당 수준에서 액세스를 특정 운영체제 버전으로 제한하면 출력이 다음과 같을 수 있습니다.
basic: conditions: - devicePolicy: allowedEncryptionStatuses: - ENCRYPTED osConstraints: - minimumVersion: 10.13.6 osType: DESKTOP_MAC - minimumVersion: 10.0.18219 osType: DESKTOP_WINDOWS - minimumVersion: 68.0.3440 osType: DESKTOP_CHROME_OS requireScreenlock: true name: accessPolicies/330193482019/accessLevels/Device_Trust title: Device_Trust Extended
API
액세스 수준을 나열하면 수준의 이름, 제목, 유형만 제공됩니다.
액세스 수준에 대해 자세히 알아보려면 accessLevels.get
을 호출합니다.
GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME
각 항목의 의미는 다음과 같습니다.
POLICY_NAME은 조직의 액세스 정책 이름입니다.
LEVEL_NAME은 설명하려는 액세스 수준의 이름입니다.
요청 본문
요청 본문은 비어 있어야 합니다.
선택적 매개변수
원하는 경우 accessLevelFormat
쿼리 매개변수를 포함합니다. 일반적으로 액세스 수준은 BasicLevel
또는 CustomLevel
중 하나로 정의된 대로 반환됩니다.
이 매개변수 값을 CEL
로 지정하면 Cloud Common Expression Language에서 BasicLevels
를 CustomLevels
로 반환할 수 있습니다.
응답 본문
호출이 성공하면 호출의 응답 본문에 액세스 수준의 기능, 마지막으로 수준이 업데이트된 시간 등에 대한 세부정보가 있는 AccessLevel
리소스가 포함됩니다.
액세스 수준 업데이트
이 섹션에서는 개별 액세스 수준을 업데이트하는 방법을 설명합니다. 한 번의 작업으로 모든 조직의 액세스 수준을 업데이트하려면 액세스 수준 일괄 변경을 참조하세요.
콘솔
액세스 수준을 업데이트하려면 다음 단계를 따르세요.
Google Cloud 콘솔에서 Access Context Manager 페이지를 엽니다.
메시지가 표시되면 조직을 선택합니다.
그리드에서 업데이트할 액세스 수준 이름을 클릭합니다.
액세스 수준 편집 창에서 액세스 수준을 변경합니다.
추가 또는 수정할 수 있는 속성의 전체 목록은 액세스 수준 속성을 참조하세요.
저장을 클릭합니다.
기존 조건 업데이트 또는 수정 이외에도 새 조건을 추가하고 기존 조건에 새 속성을 추가할 수 있습니다.
gcloud
update
명령어를 사용하여 액세스 수준을 업데이트할 수 있습니다.
기본 액세스 수준:
gcloud access-context-manager levels update LEVEL_NAME \ --basic-level-spec=FILE \ [--policy=POLICY_NAME]
커스텀 액세스 수준:
gcloud access-context-manager levels update LEVEL_NAME \ --custom-level-spec=FILE \ [--policy=POLICY_NAME]
각 항목의 의미는 다음과 같습니다.
LEVEL_NAME은 업데이트하려는 액세스 수준의 이름입니다.
FILE는 액세스 수준 조건(기본 액세스 수준의 경우) 또는 단일 부울 값(커스텀 액세스 수준의 경우)으로 평가되는 CEL 표현식을 정의하는 .yaml 파일의 이름입니다.
기본 액세스 수준 조건에서 사용할 수 있는 속성의 전체 목록은 액세스 수준 속성을 참조하세요.
POLICY_NAME은 조직의 액세스 정책 이름입니다. 이 값은 기본 액세스 정책을 설정하지 않은 경우에만 필요합니다.
다음 옵션 중 하나 이상을 포함할 수 있습니다.
옵션 combine-function
이 옵션은 기본 액세스 수준에만 사용됩니다.
조건 결합 방법을 지정합니다.
유효한 값:
AND
,OR
description
긴 형식으로 된 액세스 수준의 설명입니다.
title
짧은 형식으로 된 액세스 수준 제목입니다. 액세스 수준 제목이 Google Cloud 콘솔에 표시됩니다.
gcloud-wide 플래그를 포함할 수 있습니다.
명령어 예
gcloud access-context-manager levels update Device_Trust \ --basic-level-spec=corpdevspec.yaml \ --combine-function=OR \ --description='Access level that conforms to updated corporate spec.' \ --title='Device_Trust Extended' \ --policy=1034095178592
API
액세스 수준을 업데이트하려면 accessLevels.patch
를 호출합니다.
PATCH https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME?updateMask=FIELDS
각 항목의 의미는 다음과 같습니다.
POLICY_NAME은 조직의 액세스 정책 이름입니다.
LEVEL_NAME은 설명하려는 액세스 수준의 이름입니다.
FIELDS는 업데이트할 정규화된 필드 이름을 쉼표로 구분한 목록입니다.
요청 본문
요청 본문에는 액세스 수준에 적용할 변경사항을 지정하는 AccessLevel
리소스가 포함되어야 합니다.
응답 본문
호출이 성공하면 호출의 응답 본문에 패치 작업에 대한 세부정보를 제공하는 Operation
리소스가 포함됩니다.
액세스 수준 삭제
콘솔
액세스 수준을 삭제하려면 다음 단계를 따르세요.
Google Cloud 콘솔에서 Access Context Manager 페이지를 엽니다.
메시지가 표시되면 조직을 선택합니다.
그리드에서 삭제할 액세스 수준의 행에 있는
버튼을 클릭합니다.삭제를 클릭합니다.
대화상자가 나타나면 액세스 수준을 삭제할지 확인합니다.
gcloud
액세스 수준을 삭제하려면 다음 단계를 따르세요.
delete
명령어를 사용하여 액세스 수준을 삭제합니다.gcloud access-context-manager levels delete LEVEL_NAME \ [--policy=POLICY_NAME]
각 항목의 의미는 다음과 같습니다.
LEVEL_NAME은 삭제하려는 액세스 수준의 이름입니다.
POLICY_NAME은 조직의 액세스 정책 이름입니다. 이 값은 기본 액세스 정책을 설정하지 않은 경우에만 필요합니다.
액세스 수준을 삭제할지 확인합니다.
예를 들면 다음과 같습니다.
You are about to delete level Device_Trust Do you want to continue (Y/n)?
You should see output similar to the following:
Waiting for operation [accessPolicies/330193482019/accessLevels/Device_Trust/delete/1531171874311645] to complete...done. Deleted level [Device_Trust].
API
액세스 수준을 삭제하려면 accessLevels.delete
를 호출합니다.
DELETE https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME
각 항목의 의미는 다음과 같습니다.
POLICY_NAME은 조직의 액세스 정책 이름입니다.
LEVEL_NAME은 설명하려는 액세스 수준의 이름입니다.
요청 본문
요청 본문은 비어 있어야 합니다.
응답 본문
호출이 성공하면 호출의 응답 본문에 삭제 작업에 대한 세부정보를 제공하는 Operation
리소스가 포함됩니다.