Cloud Identity Free Edition の環境で Google Cloud Storage を Access Context Manager で IP アドレス制限をしてみました。
「 Access Context Manager 」から「アクセスレベルを作成」をクリックします。
「アクセスレベルのタイトル」を入力します。
「条件を満たした場合に返す値」は TRUE のままです。※条件を満たした場合ブロックされます。
「 IP サブネットワーク」に自身のパブリック IP アドレスを CIDR 形式で入力します。
「保存」をクリックします。
Access Context Manager は以下のような表示になります。
「 VPC Service Controls 」で「新しい境界」をクリックします。
「 Details 」で「境界のタイトル」を入力します。
「 Resources to project 」で「 ADD RESOURCES 」をクリックします。
Google Cloud のプロジェクトを選択し、「 ADD SELECTED RESOURCES 」をクリックします。
選択したプロジェクトが表示されます。
「 Restricted Services 」で「サービスを追加」をクリックします。
「 Google Cloud Storage API 」を選択し、「 GOOGLE CLOUD STORAGE API を追加」をクリックします。
「 Google Cloud Storage API 」が追加されました。
「 Access Levels 」で「アクセスレベルを選択します」をクリックし、先ほど Access Context Manager で作成した「 myip 」を選択し、「 OK 」をクリックします。
「 myip 」が選択されました。
「境界を作成」をクリックします。
境界が作成されました。
バケット一覧を表示すると、エラーが表示され参照できません。
gcloud CLI でもバケットは参照できず、以下のように 403 エラーが帰ってきます。
$ gcloud storage ls
ERROR: (gcloud.storage.ls) HTTPError 403: Request is prohibited by organization's policy. vpcServiceControlsUniqueIdentifier: JBCghgJe3QaxABq7CVMME1qITJe3Dfd51xwOM1xPxAy7lzWA_5iU
Access Context Manager で「編集」をクリックします。
「条件を満たした場合に返す値」を「 FALSE 」に変更します。
「保存」をクリックします。
バケット一覧を表示する事ができました。
gcloud CLI でもバケットが参照できるようになりました。
$ gcloud storage ls
gs://mnrsdev/
※参考サイト
- https://support.google.com/cloudidentity/answer/7389973?hl=ja
- https://cloud.google.com/access-context-manager/docs/overview?hl=ja
ブログを読んで頂きありがとうございます。誰かの何かの参考になれば幸いです。
タグ: access context manager, Google Cloud, google cloud storage