アクセス制御と権限

このページでは、Identity and Access Management(IAM)を使用して Memorystore for Memcached のプロジェクトへのアクセスと権限を制御する方法について説明します。

概要

IAM では、特定の Google Cloud リソースに対するアクセス権をきめ細かいレベルで制御でき、それらのリソースへの不要なアクセスを防止できます。ロールと権限の詳細については、IAM のドキュメントをご覧ください。

Memorystore for Memcached には、Memcached リソースへのアクセスを簡単に制御できるように事前定義された一連のロールが用意されています。事前定義されたロールで必要な権限のセットが提供されていない場合は、カスタムロールを作成することもできます。 さらに、以前からある基本ロール(編集者、閲覧者、オーナー)も引き続き使用できますが、Memorystore for Memcached のロールほど細かい制御はできません。特に、基本ロールでは Memorystore for Memcached だけではなく、Google Cloud 全体のリソースへのアクセスが提供されます。基本ロールの詳細については、基本ロールをご覧ください。

権限と役割

ここでは、Memorystore for Memcached でサポートされる権限とロールを簡単に説明します。

ロール

Memorystore for Memcached には事前定義されたロールが用意され、それらを使用してプロジェクトのメンバーに対する権限付与を詳細に設定できます。プロジェクト メンバーにロールを付与することで、そのメンバーが実行できるアクションを制御できます。プロジェクト メンバーは、個人、グループ、サービス アカウントのいずれかです。

プロジェクト オーナーは、同じプロジェクト メンバーに複数のロールを付与でき、いつでもロールを変更できます。

広範囲なロールはより限定的に定義されています。たとえば、Memcached 編集者のロールには、Memcached 閲覧者のロールのすべての権限と、Memcached 編集者のロールの追加的な権限が含まれています。同様に、Memcached 管理者のロールには、Memcached 編集者のロールのすべての権限と、Memcached 管理者の追加的な権限が含まれています。

基本ロール(オーナー、編集者、閲覧者)は、Google Cloud 全体に対する権限を付与します。Memorystore for Memcached に固有のロールは、Memorystore for Memcached 権限のみを付与します。ただし、一般的な Google Cloud の使用に必要な次の Google Cloud 権限を除きます。

resourcemanager.projects.get
resourcemanager.projects.list

次の表に、Memorystore for Memcached で使用できる事前定義ロールとその Memorystore for Memcached 権限を示します。

ロール 名前 Memcached 権限 説明

roles/owner

オーナー

memcache.*

すべての Google Cloud リソースに対する完全アクセス権と制御。ユーザー アクセスの管理。

roles/editor

編集者 .setIamPolicy *.getIamPolicy を除くすべての memcache 権限 すべての Google Cloud および Memcached リソースへの読み取り / 書き込みアクセス権(権限を変更する能力以外のすべての制御)

roles/viewer

閲覧者

memcache.*.get memcache.*.list

Memcached リソースを含む、すべての Google Cloud リソースへの読み取り専用アクセス権

roles/memcache.admin

Memcached 管理者

memcache.*

すべての Memorystore for Memcached リソースに対する完全な制御。

roles/memcache.editor

Memcached 編集者
以下を除くすべての memcache 権限

memcache.instances.create memcache.instances.delete

Memorystore for Memcached インスタンスを管理します。インスタンスの作成や削除はできません

roles/memcache.viewer

Memcached 閲覧者
以下を除くすべての memcache 権限

memcache.instances.create memcache.instances.delete memcache.instances.update memcache.operations.delete memcache.instances.applyParameters memcache.instances.updateParameters

すべての Memorystore for Memcached リソースへの読み取り専用アクセス権。

権限とロール

次の表に、Memorystore for Memcached でサポートされる権限と、それを含む Memorystore for Memcached のロールを示します。

権限 Memcached のロール 基本ロール

memcache.instances.list

Memcached 管理者
Memcached
Memcached 閲覧者
読み取り

memcache.instances.get

Memcached 管理者
Memcached
Memcached 閲覧者
読み取り

memcache.instances.create

Memcached 管理者 編集者

memcache.instances.update

Memcached 管理者
Memcached 編集者
編集者

memcache.instances.delete

Memcached 管理者 編集者

memcache.instances.applyParameters

Memcached 管理者
Memcached 編集者
編集者

memcache.instances.updateParameters

Memcached 管理者
Memcached 編集者
編集者

memcache.locations.list

Memcached 管理者
Memcached
Memcached 閲覧者
読み取り

memcache.locations.get

Memcached 管理者
Memcached
Memcached 閲覧者
読み取り

memcache.operations.list

Memcached 管理者
Memcached
Memcached 閲覧者
読み取り

memcache.operations.get

Memcached 管理者
Memcached
Memcached 閲覧者
読み取り

memcache.operations.delete

Memcached 管理者
Memcached 編集者
編集者

カスタムロール

事前定義ロールがお客様特有のビジネス要件に合っていない場合は、任意に指定した権限を含むカスタムロールを独自に定義できます。Memorystore for Memcached のカスタムロールを作成する場合は、必ず resourcemanager.projects.getresourcemanager.projects.list の両方を含めてください。 詳細については、権限の依存関係をご覧ください。

Cloud Console での一般的なタスクに必要な権限

ユーザーが Cloud Console を使用して Memorystore for Memcached を操作できるようにするには、ユーザーのロールに resourcemanager.projects.get 権限と resourcemanager.projects.list 権限を含める必要があります。

次の表は、Cloud Console の一般的なタスクに必要なその他の権限を示したものです。

タスク 必要な追加の権限
インスタンスの一覧ページを表示する

memcache.instances.get
memcache.instances.list

インスタンスを作成および編集する

memcache.instances.create
memcache.instances.get
memcache.instances.list
memcache.instances.update
memcache.instances.applyParameters
memcache.instances.updateParameters
compute.networks.list

インスタンスを削除する

memcache.instances.delete
memcache.instances.get
memcache.instances.list

Cloud Shell からインスタンスに接続する

memcache.instances.get
memcache.instances.list
memcache.instances.update

インスタンス情報を表示する

memcache.instances.get
monitoring.timeSeries.list

gcloud コマンドに必要な権限

ユーザーが gcloud コマンドを使用して Memorystore for Memcached を操作できるようにするには、ユーザーのロールに resourcemanager.projects.get 権限と resourcemanager.projects.list 権限を含める必要があります。

次の表に、gcloud beta memcache サブコマンドごとに gcloud コマンドを呼び出すユーザーに必要な権限を示します。

コマンド 必要な権限
gcloud beta memcache instances create

memcache.instances.get
memcache.instances.create

gcloud beta memcache instances delete

memcache.instances.delete

gcloud beta memcache instances update

memcache.instances.get
memcache.instances.update
memcache.instances.updateParameters

gcloud beta memcache instances list

memcache.instances.list

gcloud beta memcache instances describe

memcache.instances.get

gcloud beta memcache instances apply-parameters

memcache.instances.applyParameters

gcloud beta memcache operations list

memcache.operations.list

gcloud beta memcache operations describe

memcache.operations.get

gcloud beta memcache regions list

memcache.locations.list

gcloud beta memcache regions describe

memcache.locations.get

gcloud beta memcache zones list

memcache.locations.list

API メソッドに必要な権限

次の表に、ユーザーが Memorystore for Memcached API の各メソッドを呼び出すか、API を使用する Google Cloud ツール(Cloud Console や gcloud コマンドライン ツールなど)を使用してタスクを実行するために必要な権限を示します。

方法 必要な権限

locations.get

memcache.locations.get

locations.list

memcache.locations.list

instances.create

memcache.instances.create

instances.delete

memcache.instances.delete

instances.get

memcache.instances.get

instances.list

memcache.instances.list

instances.patch

memcache.instances.update

instances.updateParameters

memcache.instances.updateParameters

instances.applyParameters

memcache.instances.applyParameters

operations.get

memcache.operations.get

operations.list

memcache.operations.list

次のステップ