Google Cloud には Identity and Access Management(IAM)機能があり、特定の Google Cloud リソースに対するアクセス権を詳細に設定できるため、他のリソースへのアクセスを防ぐことができます。このページでは、Service Extensions のロールと権限について説明します。
IAM を使用すると、セキュリティに関する最小権限の原則を導入できるため、リソースに対する必要なアクセス権のみを付与できます。
ロールは IAM 権限のコレクションです。ユーザー、グループ、サービス アカウントなどのプリンシパルで権限を使用できるようにするには、プリンシパルにロールを付与します。IAM ポリシーを設定することで、誰に、どのリソースに対するどのアクセス権を付与するかを制御できます。IAM ポリシーは、特定のロールをプリンシパルに付与することで、そのプリンシパルに特定の権限を付与します。
IAM ロールの詳細については、ロールと権限をご覧ください。
Service Extensions の事前定義ロールと権限
Service Extensions は、プロジェクト レベルの IAM 権限をサポートしています。
次の表に、Service Extensions IAM のロールと、各ロールに含まれる権限を示します。
| ロール | 権限 |
|---|---|
|
Service Extensions 管理者 ( 拡張機能の作成、更新、一覧表示、表示、削除の権限。 |
networkservices.authzExtensions.createnetworkservices.authzExtensions.deletenetworkservices.authzExtensions.getnetworkservices.authzExtensions.listnetworkservices.authzExtensions.updatenetworkservices.authzExtensions.usenetworkservices.lbEdgeExtensions.createnetworkservices.lbEdgeExtensions.deletenetworkservices.lbEdgeExtensions.getnetworkservices.lbEdgeExtensions.listnetworkservices.lbEdgeExtensions.updatenetworkservices.lbRouteExtensions.createnetworkservices.lbRouteExtensions.deletenetworkservices.lbRouteExtensions.getnetworkservices.lbRouteExtensions.listnetworkservices.lbRouteExtensions.updatenetworkservices.lbTrafficExtensions.createnetworkservices.lbTrafficExtensions.deletenetworkservices.lbTrafficExtensions.getnetworkservices.lbTrafficExtensions.listnetworkservices.lbTrafficExtensions.updatenetworkservices.wasmActions.getnetworkservices.wasmActions.listnetworkservices.wasmActions.createnetworkservices.wasmActions.deletenetworkservices.wasmPlugins.getnetworkservices.wasmPlugins.listnetworkservices.wasmPlugins.createnetworkservices.wasmPlugins.updatenetworkservices.wasmPlugins.deletenetworkservices.wasmPlugins.use
|
|
Service Extensions 閲覧者 ( 拡張機能を一覧表示して表示する権限。 |
networkservices.authzExtensions.getnetworkservices.authzExtensions.listnetworkservices.lbEdgeExtensions.getnetworkservices.lbEdgeExtensions.listnetworkservices.lbRouteExtensions.getnetworkservices.lbRouteExtensions.listnetworkservices.lbTrafficExtensions.getnetworkservices.lbTrafficExtensions.listnetworkservices.wasmActions.getnetworkservices.wasmActions.listnetworkservices.wasmPlugins.getnetworkservices.wasmPlugins.list
|
次の表に、他のサービスに必要な IAM ロールと、各ロールに含まれる権限を示します。
| ロール | 権限 |
|---|---|
|
( 転送ルールを更新する権限。転送ルールに接続する拡張機能の作成と更新時に必要です。 |
compute.forwardingRules.updatecompute.globalForwardingRules.update
|
|
( バックエンド サービスを使用する権限。バックエンド サービスを拡張機能サービスとして使用する拡張機能の作成と更新時に必要です。 |
compute.backendServices.usecompute.regionBackendBuckets.use
|
アクセス制御を管理する
プロジェクト レベルでアクセス制御を設定するには、次の手順に沿って操作します。
Google Cloud コンソールで、[IAM] ページに移動します。
プロジェクトを選択します。
[追加] をクリックします。
[新しいプリンシパル] に、新しいプリンシパルのメールアドレスを入力します。
必要なロールを選択します。
[保存] をクリックします。
付与したロールにそのプリンシパルがリストされているかを確認します。
ロールの権限を特定する
ロールに 1 つ以上の権限が含まれているかどうかを確認するには、次のいずれかの方法を使用します。
- IAM 権限の検索リファレンス
gcloud iam roles describeコマンド- IAM API の
roles.get()メソッド
次のステップ
- Service Extensions の概要をご覧ください。
- プラグインを作成するためにプラグイン コードを準備する方法を学習する。
- プラグインを作成する方法を学習する。
- 詳しくは、プラグインを管理するをご覧ください。