Jellyfish brain

大阪のフリーランスエンジニアの雑記

GCPについて(IAM, Resource Manager, Cloud API)

GCPについて

概要

Google Cloud Platform(GCP)は、Googleクラウド上で提供するサービス群の総称。Gmail, Youtube, Google map などのサービスレイヤーを支えるインフラレイヤーにあたる。

代表的なサービス

参考資料 : https://cloud.google.com/products?hl=ja コンピューティング、DB、ストレージとWeb開発に必要な機能を横断的に提供している。   Cloud IAM について

参考資料 : https://cloud.google.com/iam?hl=ja https://cloud.google.com/iam/docs/overview?hl=ja Cloud Identity and Access Management(IAM) 誰(ID)がどのリソースに対してどのようなアクセス権(ロール)を持つかを定義することにより、アクセス制御を管理する。つまり、特定のリソースに対してのアクションの実行を、承認されたユーザのみに許可する事ができる。 GCP Console, gcloud コマンド とGUI, CUI どちらからも管理可能。 細やかなロール管理可能。

参考画像 f:id:Nen_lin:20200529101928p:plain

単語、概念

メンバー:リソースへのアクセスが許可されている Google アカウント、サービス アカウント(アプリまたは仮想マシン)、Google グループ、G Suite または Cloud Identity ドメインの事。ユーザー、サービス アカウントまたは Google グループに関連付けられているメールアドレス、あるいは G Suite または Cloud Identity ドメインドメイン名がメンバーの ID になる。

ロール:ロールは権限のコレクション(纏めてbindされているイメージ)の事。権限によって、リソースに対して許可されるオペレーションが決まる。メンバーにロールを付与すると、そのロールに含まれるすべての権限が付与される。※ロール : 権限 = 1 : N (1 対 多)

ポリシー:Cloud IAM ポリシーは、1 つ以上のメンバーを 1 つのロールにバインドする。リソースに対してどのようなアクセス権(ロール)を誰(メンバー)に許可するのかを定義する場合、ポリシーを作成して、そのポリシーをリソースに接続する。

Cloud IAMは、RBAC(Role-Based-Access-Control)の概念のもと提供されるサービス。 RBACはMACDACの中間の概念。 MAC(強制アクセス制御) : 唯一のルール定義者がアクセス制御を決定する。 DAC(任意アクセス制御) : 一般ユーザが自由にリソースへのアクセス制御を行える。 Resource(リソース) : k8s クラスタVMインスタンス、Cloud strage バケット、プロジェクト、組織、フォルダなど広義に渡る...

Cloud Resource Manager について

参考資料 : https://cloud.google.com/resource-manager?hl=ja 組織、プロジェクトなどのリソースをグループ化して階層的にまとめる事が出来る。(GCPのコンソール画面 -> リソースの管理 で組織が持つプロジェクト、フォルダが表示される。) プロジェクトの管理、トラッキングが可能。

単語、概念  

Google Cloud API について 参考資料 : https://cloud.google.com/apis?hl=ja Google Cloud プロダクトにアクセスして、 GoogleAPIを使用できるAPI群サービス。 mirap-office では、Compute Engine API, Cloud SQL Admin API, IAM API など使っている。 料金体系はリクエスト毎とか、画像毎とかあるので公式リファレンスを参考にする。 単語、概念  

AWSと比較して

参考資料 : https://cloud.google.com/docs/compare/aws?hl=ja [IMO] プロダクトの名称は異なるが、どちらもWeb開発に横断的に必要な機能を提供しているので、AWSについてある程度知識がある人がGCPの知らないプロダクトに触り出す場合、概要を知りたい場合は ”GCP Firebase AWS ” とかで検索してみると良いのでは。