目的
GCP(Google Cloud Platform)での開発において、全ての作業者に同じ権限を与えるわけにはいかないので、実際にプロジェクトで割り振った権限を事例として記載しておく。
あらかじめ用意されているロールベースで割り振ったので、過剰な権限が割り振られてしまっている。本来であれば、必要な権限のみでカスタムロールを作成すべきなのだが、そのあたりは今後の課題としている。
前提条件
このプロジェクトではGCE(Google Compute Engine)、Cloud SQL、BigQueryを利用している。
WindowsのGCE上にアプリケーションを導入し、そのアプリケーションが設定情報が保存されたSQL Serverと業務データ(実際にはテストデータだが)が保存されたBigQueryからデータを取得するという構成である。
メンバーとしてプロジェクトのオーナーとオーナーからプロジェクト開発を委任されたプロジェクト管理者及びプロジェクトの開発者が存在していて、それ以外にアプリケーションのリソースへのアクセス権限を管理するためのサービスアカウントも作成している。
またGCEインスタンス(VM)へはセキュアな接続をしたいので接続IAP Desktopを利用している。
以上の条件の下での設定例となっているため、プロジェクトに応じて不要なロールやアカウントは削除してほしい。
実際に与えた権限
開発のメンバーに「編集者」のロールが付与されているが、これは本プロジェクトでは開発者自身がBigQuery上にデータセットやテーブルを作成することを想定しているからで、実際には試していないが、純粋に閲覧だけであればもっと弱い権限でも可能なはずである。
まとめ
今回のプロジェクトでは利用していないサービスも多いので、はまるケースはあまりないかもしれない。
自分の備忘と、なんらかの参考になればと思っている。