IAM を使用してプロジェクトへのアクセスを許可する

1. 始める前に

この Codelab では、OAuth クライアントを設定する方法と、Google Cloud Console を使用してプロジェクトのプリンシパルに Identity and Access Management(IAM)ロールを付与する方法について説明します。

前提条件

  • Cloud Console を操作できること。

学習内容

  • アプリを OAuth クライアントとして設定する方法。
  • Identity and Access Management(IAM)を使用してアプリへのアクセスを制限する方法。

必要なもの

2. Google Cloud プロジェクトを作成し、請求先アカウントを設定する

  1. Cloud Console にログインします。
  1. プロジェクト セレクタのページに移動します。
  2. [プロジェクトの作成] をクリックします。
  3. プロジェクトに名前を付け、生成されたプロジェクト ID をメモします。
  4. 必要に応じて他のフィールドを編集します。
  1. [作成] をクリックします。
  2. まだ有効にしていない場合は、Google Cloud リソースを使用するために、Cloud コンソールで課金を有効にします

この Codelab で費用が生じたとしても、少額です。クリーンアップ セクションの手順に沿ってリソースをシャットダウンし、この Codelab 以外で費用が発生しないようにしてください。Google Cloud の新規ユーザーは、300 米ドル分の無料トライアルをご利用いただけます。

3. IAM でアクセス権を付与する

IAM を使用すると、プロジェクトとリソースに対するロールベースのアクセス権をユーザーに付与できます。このセクションでは、IAM を使用して、プロジェクトのいくつかのロールに対するアクセス権をユーザーに付与します。

IAM API と Resource Manager API を有効にする

  1. Cloud コンソールのナビゲーション メニューで、[API とサービス] をクリックします。

Cloud コンソールのナビゲーション メニューに [API とサービス] オプションが表示されている。

  1. [API とサービスを有効化] を選択します。

[API とサービスを有効化] オプション

  1. IAM API を検索して有効にします。
  2. Resource Manager API を検索して有効にします。

IAM でロールを付与する

  1. IAM ページに移動します。

プロジェクト名がプロジェクト セレクタに表示されます。プロジェクト セレクタには、現在作業中のプロジェクトが表示されます。

プロジェクト名セレクタが表示されている IAM ページ。

プロジェクトの名前が表示されない場合は、プロジェクト セレクタを使用して選択します。

  1. [追加] をクリックします。
  2. プリンシパルのメールアドレスを入力します。
  3. [ロールを選択] プルダウン メニューから、[ロギング] > [ログ閲覧者] > [保存] を選択します。

IAM ページが表示されている

  1. プリンシパルとロールが [IAM] ページに表示されていることを確認します。

これで、プリンシパルに Identity and Access Management ロールが付与されました。

Identity and Access Management ロールの効果を確認する

このセクションでは、ロールを付与したプリンシパルが目的の Cloud コンソール ページにアクセスできることを確認します。

  1. この URL をロールを付与したプリンシパルに送信します。

https://console.cloud.google.com/logs?project=PROJECT_ID

  1. プリンシパルが URL にアクセスして表示できることを確認します。

適切なロールが付与されていない Cloud Console ページにはアクセスできません。代わりに、次のようなエラー メッセージが表示されます。

You don't have permissions to view logs.

同じプリンシパルに別のロールを付与する

  1. Cloud Console で [IAM] ページに移動します。
  2. 別のロールを付与するプリンシパルを見つけて、[編集 ] d489bd059474ae59.png をクリックします。
  3. [権限の編集] ペインで、[別のロールを追加] をクリックします。

[権限の編集] ペインに [別のロールを追加] オプションが表示されている。

  1. [ロールを選択] プルダウン メニューで、[プロジェクト] > [閲覧者] > [保存] をクリックします。

[権限の編集] ペインにロール オプションが表示されている。

プリンシパルに 2 つ目の Identity and Access Management ロールが付与されました。

プリンシパルに付与したロールを取り消す

  1. ロールを取り消すプリンシパルを見つけて、[d489bd059474ae59.png編集] をクリックします。
  2. [権限の編集] ペインで、プリンシパルに以前に付与した両方のロールの横にある 17033682fbdcca9c.png をクリックします。
  3. [保存] をクリックします。

これで、両方のロールからプリンシパルが削除されました。このユーザーが以前にアクセスできたページを表示しようとすると、エラー メッセージが表示されます。

4. クリーンアップ

この Codelab で使用したリソースに対して Google Cloud アカウントで課金されないようにする手順は次のとおりです。

  1. Cloud コンソールで、[リソースの管理] ページに移動します。
  2. プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
  3. ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。

5. 完了

おめでとうございます!OAuth クライアントを設定し、Cloud コンソールを使用してプロジェクトのプリンシパルに Identity and Access Management ロールを付与する方法を学習しました。