사전 정의된 역할
다음 표에서는 Cloud Storage와 관련된 Identity and Access Management(IAM) 역할을 설명하고 각 역할에 포함된 권한을 나열합니다. 달리 명시되지 않는 한 이러한 역할은 프로젝트, 버킷 또는 관리형 폴더에 적용될 수 있습니다.
버킷에 대한 액세스를 제어하는 방법은 IAM 권한 사용을 참고하세요. 관리형 폴더에 대한 액세스를 제어하는 방법은 관리형 폴더에 IAM 사용을 참고하세요.
역할 | 설명 | 권한 |
---|---|---|
스토리지 객체 생성자
(roles/storage.objectCreator ) |
사용자가 객체, 폴더, 관리 폴더를 만들 수 있습니다. 객체를 보고, 삭제하고, 교체할 수 있는 권한은 부여하지 않습니다. 객체 액세스 제어 목록(ACL)을 가져오거나 객체 업데이트 요청의 일부로 객체 ACL을 설정할 수 있는 권한은 부여하지 않습니다. | orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.objects.create storage.folders.create storage.managedFolders.create storage.multipartUploads.create storage.multipartUploads.abort storage.multipartUploads.listParts |
스토리지 객체 뷰어
(roles/storage.objectViewer ) |
객체 및 ACL을 제외한 객체 메타데이터를 볼 수 있는 액세스 권한을 부여합니다. 버킷의 객체, 폴더와 관리형 폴더를 나열할 수도 있습니다. |
resourcemanager.projects.get 2resourcemanager.projects.list 2storage.folders.get storage.folders.list storage.managedFolders.get storage.managedFolders.list storage.objects.get storage.objects.list |
스토리지 객체 사용자(roles/storage.objectUser ) |
메타데이터와 함께 객체, 폴더와 관리형 폴더를 생성, 보기, 나열, 업데이트, 삭제할 수 있는 액세스 권한을 부여합니다. ACL 또는 IAM 정책을 가져오거나 설정할 수 있는 권한을 부여하지 마세요. | orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.folders.* storage.managedFolders.create storage.managedFolders.delete storage.managedFolders.list storage.managedFolders.get storage.multipartUploads.* storage.objects.create storage.objects.delete storage.objects.get storage.objects.list storage.objects.move storage.objects.restore storage.objects.update |
스토리지 객체 관리자
(roles/storage.objectAdmin ) |
객체 및 폴더 나열, 만들기, 보기, 이름 바꾸기, 삭제, 객체 ACL 설정을 포함하여 객체 및 폴더에 대한 전체 제어 권한을 부여합니다. 또한 관리형 폴더를 생성, 삭제, 가져오기, 나열할 수 있는 액세스 권한을 부여합니다. | orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.folders.* storage.managedFolders.create storage.managedFolders.delete storage.managedFolders.get storage.managedFolders.list storage.objects.* storage.multipartUploads.* |
스토리지 폴더 관리자(roles/storage.folderAdmin ) |
IAM 권한 나열, 만들기, 보기, 삭제, 관리를 포함하여 객체, 폴더와 관리형 폴더에 대한 전체 제어 권한을 부여합니다. | orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.folders.* storage.managedFolders.* storage.multipartUploads.* storage.objects.* |
스토리지 HMAC 키 관리자
(roles/storage.hmacKeyAdmin ) |
프로젝트의 HMAC 키를 관리할 수 있는 전체 권한을 부여합니다. 이 역할은 프로젝트에만 적용할 수 있습니다. | orgpolicy.policy.get 1storage.hmacKeys.* |
스토리지 관리자(roles/storage.admin ) |
객체 ACL 또는 IAM 정책을 가져오기 및 설정을 포함하여 버킷, 폴더, 관리형 폴더, 추천자 추천, 객체에 대한 전체 제어 권한을 부여합니다. 또한 장기 실행 작업 및 Storage Intelligence 구성에 대한 전체 제어 권한을 부여합니다. 개별 버킷에 적용하면 지정된 버킷과 버킷 내 관리형 폴더, 객체, 장기 실행 작업에만 제어 권한이 적용됩니다. |
firebase.projects.get orgpolicy.policy.get 1resourcemanager.projects.get 2resourcemanager.projects.list 2storage.anywhereCaches.* storagebatchoperations.jobs.* 3storagebatchoperations.operations.* 3storage.buckets.* storage.bucketOperations.* storage.folders.* storage.managedFolders.* storage.objects.* storage.multipartUploads.* recommender.storageBucketSoftDeleteInsights.* recommender.storageBucketSoftDeleteRecommendations.* |
Storage Insights 관리자(roles/storageinsights.admin ) |
Storage Insights 인벤토리 보고서 및 데이터 세트에 대한 전체 권한을 부여합니다. | cloudresourcemanager.projects.get cloudresourcemanager.projects.list storageinsights.locations.* storageinsights.operations.* storageinsights.reportConfigs.* storageinsights.reportDetails.* storageinsights.datasetConfigs.* |
Storage Insights 분석가(roles/storageinsights.analyst ) |
Storage Insights 인벤토리 보고서 및 구성에 대한 읽기 전용 액세스 권한을 부여합니다. 또한 Storage Insights 데이터 세트의 출력이 포함된 연결된 데이터 세트를 BigQuery에서 만들 수 있는 권한도 부여합니다. | cloudresourcemanager.projects.get cloudresourcemanager.projects.list storageinsights.operations.list storageinsights.operations.get storageinsights.locations.list storageinsights.locations.get storageinsights.datasetConfigs.list storageinsights.datasetConfigs.get storageinsights.datasetConfigs.linkDataset storageinsights.datasetConfigs.unlinkDataset storageinsights.datasetConfigs.generateChat storageinsights.reportConfigs.get storageinsights.reportConfigs.list storageinsights.reportDetails.get storageinsights.reportDetails.list |
Storage Insights 뷰어(roles/storageinsights.viewer ) |
Storage Insights 인벤토리 보고서, 인벤토리 보고서 구성, 데이터 세트 구성에 대한 읽기 전용 액세스 권한을 부여합니다. | cloudresourcemanager.projects.get cloudresourcemanager.projects.list storageinsights.operations.list storageinsights.operations.get storageinsights.locations.list storageinsights.locations.get storageinsights.datasetConfigs.get storageinsights.datasetConfigs.list storageinsights.datasetConfigs.generateChat storageinsights.reportConfigs.get storageinsights.reportConfigs.list storageinsights.reportDetails.get storageinsights.reportDetails.list |
Storage Insights 수집기 서비스(roles/storage.insightsCollectorService ) |
인벤토리 보고서 및 Storage Insights 데이터 세트의 객체 메타데이터에 대한 읽기 액세스 권한을 부여합니다. | resourcemanager.projects.get resourcemanager.projects.list storage.buckets.getObjectInsights storage.buckets.get |
1 orgpolicy.policy.get
권한이 있으면 주 구성원이 프로젝트에 적용된 조직 정책 제약조건을 확인할 수 있습니다.
현재 이 권한은 역할이 프로젝트 수준에서 부여된 경우에만 유효합니다.
2 resourcemanager.projects.*
권한에 대한 자세한 내용은 IAM으로 프로젝트의 액세스 제어를 참조하세요.
3 storagebatchoperations.jobs.*
및 storagebatchoperations.operations.*
권한을 사용하면 스토리지 일괄 작업을 만들고 관리할 수 있습니다.
이 권한은 역할이 프로젝트 수준에서 부여된 경우에만 유효합니다.
기본 역할
기본 역할은 IAM 이전에 있었던 역할입니다. 이러한 역할에는 고유한 특성이 있습니다.
기본 역할은 프로젝트 내의 개별 버킷이 아닌 전체 프로젝트에만 부여될 수 있습니다. 프로젝트에 부여하는 다른 역할과 마찬가지로 기본 역할은 프로젝트의 모든 버킷과 객체에 적용됩니다.
기본 역할에는 이 섹션에서 다루지 않는 다른 Google Cloud서비스에 대한 추가 권한이 포함됩니다. 기본 역할이 부여하는 권한에 대한 일반적인 설명은 기본 역할을 참조하세요.
각 기본 역할에는 기본 역할을 그룹처럼 사용할 수 있는 단축값이 있습니다. 이 방법을 사용하면 기본 역할이 있는 주 구성원은 그룹의 일부로 간주됩니다. 그룹의 모든 사용자는 단축값에 있는 액세스 권한에 따라 리소스에 대한 추가 액세스 권한을 얻습니다.
단축값은 버킷의 역할을 부여할 때 사용할 수 있습니다.
객체에 ACL을 설정할 때 단축값을 사용할 수 있습니다.
기본 역할은 본질적으로 이름이 의미하는 Cloud Storage 리소스에 대한 액세스 권한을 모두 부여하지 않습니다. 그 대신 본질적으로 예상 액세스의 일부 권한과 단축값 사용을 통해 예상 액세스의 나머지 권한을 제공합니다. 단축값은 다른 IAM 주 구성원과 마찬가지로 수동으로 추가 또는 삭제할 수 있으므로 주 구성원이 얻게 될 액세스 권한이 취소될 수 있습니다.
기본 역할의 주 구성원이 단축값으로 인해 일반적으로 얻게 되는 추가 액세스 권한에 대한 설명은 수정 가능한 동작을 참조하세요.
내장 권한
다음 표에서는 각 기본 역할과 항상 연결되는 Cloud Storage 권한을 설명합니다.
역할 | 설명 | Cloud Storage 권한 |
---|---|---|
뷰어 (roles/viewer ) |
프로젝트의 버킷을 나열하고, 나열 시 ACL을 제외한 버킷 메타데이터를 보고, 프로젝트의 HMAC 키를 나열하고 가져올 수 있는 권한을 부여합니다. | storage.buckets.getIpFilter storage.buckets.list storage.hmacKeys.get storage.hmacKeys.list |
편집자(roles/editor ) |
프로젝트의 버킷을 생성, 나열, 삭제하고, 나열 시 ACL을 제외한 버킷 메타데이터를 보고, 프로젝트의 HMAC 키를 제어할 수 있는 권한을 부여합니다. | storage.buckets.create storage.buckets.delete storage.buckets.getIpFilter storage.buckets.list storage.hmacKeys.* |
소유자(roles/owner ) |
프로젝트의 버킷을 생성, 나열, 삭제하고, 나열 시 ACL을 제외한 버킷 메타데이터를 보고, 태그 바인딩을 생성, 삭제, 나열하고 프로젝트의 HMAC 키를 제어할 수 있는 권한을 부여합니다. 프로젝트, 폴더 또는 조직에서 Storage Intelligence 구성을 사용 설정, 사용 중지, 업데이트하고 가져올 수 있습니다. Google Cloud 에서 이 역할이 있는 주 구성원은 일반적으로 프로젝트의 주 구성원 역할 변경, 청구 변경과 같은 관리 태스크를 수행할 수 있습니다. |
storage.buckets.create storage.buckets.delete storage.buckets.list storage.buckets.createTagBinding storage.buckets.deleteTagBinding storage.buckets.getIpFilter storage.buckets.listEffectiveTags storage.buckets.listTagBindings storage.buckets.setIpFilter storage.hmacKeys.* storage.intelligenceConfigs.get storage.intelligenceConfigs.update |
수정 가능한 동작
기본 역할이 부여된 주 구성원은 단축값으로 인해 프로젝트의 버킷 및 객체에 대한 추가 액세스 권한을 갖는 경우가 많습니다. 버킷이 생성되면 단축값에 특정 버킷 수준 액세스 권한이 부여되지만 나중에 버킷 IAM 정책 및 객체 ACL을 수정하여 액세스 권한을 삭제하거나 변경할 수 있습니다.
균일한 버킷 수준 액세스가 사용 설정된 버킷을 만들면 단축값을 통해 다음 액세스 권한이 부여됩니다.
roles/viewer
가 부여된 주 구성원은 버킷에 대한roles/storage.legacyBucketReader
및roles/storage.legacyObjectReader
역할을 부여받습니다.roles/editor
가 부여된 주 구성원은 버킷에 대한roles/storage.legacyBucketOwner
및roles/storage.legacyObjectOwner
역할을 부여받습니다.roles/owner
가 부여된 주 구성원은 버킷에 대한roles/storage.legacyBucketOwner
및roles/storage.legacyObjectOwner
역할을 부여받습니다.
균일한 버킷 수준 액세스가 사용 설정되지 않은 버킷을 만들면 단축값을 사용해 다음 액세스 권한이 부여됩니다.
roles/viewer
가 부여된 주 구성원은 버킷에 대한roles/storage.legacyBucketReader
역할을 부여받습니다.roles/editor
가 부여된 주 구성원은 버킷에 대한roles/storage.legacyBucketOwner
역할을 부여받습니다.roles/owner
가 부여된 주 구성원은 버킷에 대한roles/storage.legacyBucketOwner
역할을 부여받습니다.또한 버킷에는 기본 객체 액세스 제어 목록(ACL)이 있습니다. 이 기본 ACL은 버킷의 새 객체에 적용되는 경우가 많으며, 종종 단축값에 추가 액세스 권한을 부여합니다.
사전 정의된 기존 역할
다음 표에는 액세스제어 목록(ACL) 권한과 동등한 IAM 역할이 있습니다. 프로젝트가 아니라 개별 버킷에만 기존 역할을 부여할 수 있습니다.
역할 | 설명 | 권한 |
---|---|---|
스토리지 기존 객체 리더
(roles/storage.legacyObjectReader ) |
객체 및 ACL을 제외한 객체 메타데이터를 볼 수 있는 권한을 부여합니다. | storage.objects.get |
스토리지 기존 객체 소유자
(roles/storage.legacyObjectOwner ) |
객체 및 ACL을 포함한 객체 메타데이터를 보고 수정할 수 있는 권한을 부여합니다. | storage.objects.get storage.objects.update storage.objects.setRetention storage.objects.overrideUnlockedRetention storage.objects.setIamPolicy storage.objects.getIamPolicy |
스토리지 기존 버킷 리더
(roles/storage.legacyBucketReader ) |
버킷의 콘텐츠를 나열하고 IAM 정책을 제외한 버킷의 메타데이터를 읽을 수 있는 권한을 부여합니다. 객체 및 관리형 폴더를 나열할 때 객체 메타데이터를 읽을 수 있는 권한도 부여합니다(IAM 정책 제외).
이 역할의 사용은 버킷의 ACL에도 반영됩니다. 자세한 내용은 IAM과 ACL 관계를 참조하세요. |
storage.buckets.get storage.objects.list storage.managedFolders.get storage.managedFolders.list storage.multipartUploads.list |
스토리지 기존 버킷 작성자
(roles/storage.legacyBucketWriter ) |
객체와 관리형 폴더를 생성, 교체, 나열, 삭제할 수 있는 권한, 보관 구성이 있는 객체를 만들 수 있는 권한, 나열 시 객체 및 관리형 폴더 메타데이터를 읽을 수 있는 권한(IAM 정책 제외), 버킷 메타데이터를 읽을 수 있는 권한(IAM 정책 제외)을 부여합니다.
이 역할의 사용은 버킷의 ACL에도 반영됩니다. 자세한 내용은 IAM과 ACL 관계를 참조하세요. |
storage.buckets.get storage.objects.list storage.objects.create storage.objects.delete storage.objects.restore storage.objects.setRetention storage.managedFolders.create storage.managedFolders.delete storage.managedFolders.get storage.managedFolders.list storage.multipartUploads.* |
스토리지 기존 버킷 소유자
(roles/storage.legacyBucketOwner ) |
객체와 관리형 폴더를 생성, 교체, 나열, 삭제할 수 있는 권한, 보관 구성이 있는 객체를 만들 수 있는 권한, 태그 바인딩을 만들고 삭제하고 나열할 수 있는 권한, 나열 시 객체 메타데이터를 읽을 수 있는 권한(IAM 정책 제외), 나열 시 관리형 폴더 메타데이터를 읽을 수 있는 권한(IAM 정책 포함), 버킷 메타데이터를 읽고 수정할 수 있는 권한(IAM 정책 포함), 버킷 재배치, 장기 실행 작업을 관리할 수 있는 권한을 부여합니다. 이 역할의 사용은 버킷의 ACL에도 반영됩니다. 자세한 내용은 IAM과 ACL 관계를 참조하세요. |
storage.buckets.get storage.buckets.createTagBinding storage.buckets.deleteTagBinding storage.buckets.listEffectiveTags storage.buckets.listTagBindings storage.buckets.update storage.buckets.enableObjectRetention storage.buckets.relocate storage.buckets.restore storage.buckets.setIamPolicy storage.buckets.getIamPolicy storage.bucketOperations.* storage.managedFolders.* storage.objects.list storage.objects.create storage.objects.delete storage.objects.restore storage.objects.setRetention storage.multipartUploads.* |
커스텀 역할
지정한 권한 모음이 포함된 고유한 역할을 정의해야 할 수 있습니다. 이를 지원하기 위해 IAM은 커스텀 역할을 제공합니다.
다음 단계
IAM 권한을 사용하여 버킷 및 객체에 대한 액세스를 제어합니다.
Cloud Storage에 대한 IAM 권한에 대해 알아보세요.
사용자가 다양한 도구 및 API로 작업을 수행할 수 있는 IAM 권한 등 Cloud Storage에 사용 가능한 IAM 참조를 확인하세요.
다른 Google Cloud 역할에 대해서는 역할 이해를 참조하세요.