Google Cloud のアクセス制御は、Identity and Access Management(IAM)を使用して管理されます。IAM を使用すると、プロジェクト内の誰がどのようなアクセス権限でどのリソースにアクセスできるのかを設定できます。
Cloud Source Repositories では、アクセス制御に IAM が使用されます。IAM を使用してチームメンバーをプロジェクトに追加し、それらのメンバーに、リポジトリの作成、表示、および更新の権限を付与することができます。
このページでは、Cloud Source Repositories に適用される IAM の権限と役割について説明します。
権限
IAM では、Cloud Source Repositories 内のリポジトリに対してなんらかのアクションを行う場合、そのアクションを開始するアカウントが適切な権限を持っている必要があります。特定の権限を 1 つのアカウントに付与することはできません。適切な権限のセットを含む役割を付与します。
次の表に、Cloud Source Repositories で使用可能な権限を示します。
権限 | 説明 |
---|---|
source.repos.list |
プロジェクト内のリポジトリを一覧表示します。 |
source.repos.create |
プロジェクト内にリポジトリを作成します。 |
source.repos.get |
リポジトリをクローン、取得、参照します。 |
source.repos.update |
変更をリポジトリに push します。 |
source.repos.updateRepoConfig |
リポジトリ構成を変更します。 |
source.repos.delete |
リポジトリを削除します。 |
source.repos.getIamPolicy |
リポジトリの IAM ポリシーを読み取り / 表示します。 |
source.repos.setIamPolicy |
リポジトリの IAM ポリシーを変更します。 |
source.repos.getProjectConfig |
Google Cloud プロジェクトの構成の読み取りと表示を行います。 |
source.repos.updateProjectConfig |
Google Cloud プロジェクトの構成を変更します。 |
ロール
役割を使用して、アカウントに権限を割り当てます。次の表には、Cloud Source Repositories で使用可能な役割が示されています。
役割 | 役割のタイトル |
---|---|
roles/source.reader |
Source Repository 読み取り |
roles/source.writer |
Source Repository 書き込み |
roles/source.admin |
Source Repository 管理者 |
役割と権限のマトリックス
以下の表を使用して、アカウントが実行できるようにするアクションのタイプに基づき、そのアカウントに適切な役割を選択します。
能力 | reader |
writer |
admin |
---|---|---|---|
リポジトリの一覧表示 | |||
リポジトリのクローン、取得、参照 | |||
リポジトリの更新 | |||
リポジトリの作成 | |||
リポジトリの構成の更新 | |||
リポジトリの削除 | |||
IAM ポリシーの表示 | |||
IAM ポリシーの設定 | |||
Google Cloud プロジェクトの構成の表示 | |||
Google Cloud プロジェクトの構成の更新 |
カスタムロール
事前定義された役割に加えて、Cloud Source Repositories ではカスタム役割もサポートされています。詳細については、IAM ドキュメントのカスタムロールの作成と管理をご覧ください。
メンバーにアクセス権を付与する
IAM では、メンバーに対してアクセス権を付与します。メンバーには複数のタイプがあります。完全なリストについては、ID に関するコンセプトをご覧ください。
メンバーにアクセス権を付与する具体的な手順については、リソースへのアクセス権の付与、変更、取り消しをご覧ください。
Google Cloud リポジトリを公開することはできません。その結果、Cloud Source Repositories は次のメンバータイプに対応していません。
- allAuthenticatedUsers
- allUsers