このページでは、組織内アクセス制限の使用方法の一般的な例について説明します。
組織のみにアクセスを制限する
この例では、組織 A の Google Cloud 管理者と下り(外向き)プロキシ管理者が連携して、従業員が Google Cloud 組織内のリソースにのみアクセスできるように制限します。
アクセスを組織のみに制限するには、次の操作を行います。
Google Cloud 管理者が組織 A の Google Cloud 組織 ID を取得するには、
gcloud organizations list
コマンドを使用します。gcloud organizations list
出力例は次のとおりです。
DISPLAY_NAME: Organization A ID: 123456789 DIRECTORY_CUSTOMER_ID: a1b2c3d4
下り(外向き)プロキシ管理者は、Google Cloud 管理者から組織 ID を取得したら、次の形式でヘッダー値の JSON 表現を作成します。
{ "resources": ["organizations/123456789"], "options": "strict" }
下り(外向き)プロキシ管理者は、RFC 4648 セクション 5 の仕様に沿って、リクエスト ヘッダーの値をエンコードします。
たとえば、ヘッダー値の JSON 表現が
authorized_orgs.json
ファイルに保存されている場合、ファイルをエンコードするには、次の basenc コマンドを実行します。$ cat authorized_orgs.json | basenc --base64url -w0 ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiXSwKICJvcHRpb25zIjogInN0cmljdCIKfQo
下り(外向き)プロキシ管理者として、組織 A の管理対象デバイスから送信されるすべてのリクエストに次のリクエスト ヘッダーが挿入されるように下り(外向き)プロキシを構成します。
X-Goog-Allowed-Resources: ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiXSwKICJvcHRpb25zIjogInN0cmljdCIKfQo
組織へのアクセスを制限し、Cloud Storage リソースに対する読み取りリクエストを許可する
この例では、組織 A の Google Cloud 管理者と下り(外向き)プロキシ管理者が連携して、Cloud Storage リソースに対する読み取りリクエストを除き、従業員が Google Cloud 組織内のリソースのみにアクセスするように制限します。管理者は、従業員が Cloud Storage を使用して静的コンテンツをホストする外部ウェブサイトにアクセスできるようにするために、組織内アクセス制限の適用から Cloud Storage リソースへの読み取りリクエストを省略することをおすすめします。管理者は、cloudStorageReadAllowed
オプションを使用して Cloud Storage リソースへの読み取りリクエストを許可します。
次のようにして、組織にのみアクセスを制限し、Cloud Storage リソースに対する読み取りリクエストを許可します。
Google Cloud 管理者が組織 A の Google Cloud 組織 ID を取得するには、
gcloud organizations list
コマンドを使用します。gcloud organizations list
出力例は次のとおりです。
DISPLAY_NAME: Organization A ID: 123456789 DIRECTORY_CUSTOMER_ID: a1b2c3d4
下り(外向き)プロキシ管理者は、Google Cloud 管理者から組織 ID を取得したら、次の形式でヘッダー値の JSON 表現を作成します。
{ "resources": ["organizations/123456789"], "options": "cloudStorageReadAllowed" }
下り(外向き)プロキシ管理者は、RFC 4648 セクション 5 の仕様に沿って、リクエスト ヘッダーの値をエンコードします。
たとえば、ヘッダー値の JSON 表現が
authorized_orgs.json
ファイルに保存されている場合、ファイルをエンコードするには、次の basenc コマンドを実行します。$ cat authorized_orgs.json | basenc --base64url -w0 ewogICJyZXNvdXJjZXMiOiBbIm9yZ2FuaXphdGlvbnMvMTIzNDU2Nzg5Il0sCiAgIm9wdGlvbnMiOiAiY2xvdWRTdG9yYWdlUmVhZEFsbG93ZCIKfQo=l
下り(外向き)プロキシ管理者として、組織 A の管理対象デバイスから送信されるすべてのリクエストに次のリクエスト ヘッダーが挿入されるように下り(外向き)プロキシを構成します。
X-Goog-Allowed-Resources: ewogICJyZXNvdXJjZXMiOiBbIm9yZ2FuaXphdGlvbnMvMTIzNDU2Nzg5Il0sCiAgIm9wdGlvbnMiOiAiY2xvdWRTdG9yYWdlUmVhZEFsbG93ZCIKfQo=l
組織 A の従業員は、Google Cloud 組織へアクセスできるようになり、Cloud Storage リソースへの読み込みアクセス権を取得します。
従業員がベンダーの Google Cloud 組織にアクセスできるようにする
この例では、組織 B の Google Cloud 管理者と下り(外向き)プロキシ管理者が連携して、従業員が既存の Google Cloud 組織に加えて、ベンダーの Google Cloud 組織にアクセスできるようにします。
従業員によるアクセスを組織とベンダーの組織のみに制限するには、次の手順を実施します。
Google Cloud 管理者として、ベンダーと連携してベンダー組織の Google Cloud 組織 ID を取得します。
下り(外向き)プロキシ管理者として、既存の組織 ID に加えてベンダー組織 ID を含めるには、ヘッダー値の JSON 表現を更新する必要があります。Google Cloud 管理者からベンダーの組織 ID を取得したら、ヘッダー値を次の形式で更新します。
{ "resources": ["organizations/1234", "organizations/3456"], "options": "strict" }
下り(外向き)プロキシ管理者は、RFC 4648 セクション 5 の仕様に沿って、リクエスト ヘッダーの値をエンコードします。
たとえば、ヘッダー値の JSON 表現が
authorized_orgs.json
ファイルに保存されている場合、ファイルをエンコードするには、次の basenc コマンドを実行します。$ cat authorized_orgs.json | basenc --base64url -w0 ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiLCAib3JnYW5pemF0aW9ucy8xMDExMTIxMzE0Il0sCiAib3B0aW9ucyI6ICJzdHJpY3QiCn0K
下り(外向き)プロキシ管理者として、組織 B の管理対象デバイスから送信されるすべてのリクエストに次のリクエスト ヘッダーが挿入されるように下り(外向き)プロキシを構成します。
X-Goog-Allowed-Resources: ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiLCAib3JnYW5pemF0aW9ucy8xMDExMTIxMzE0Il0sCiAib3B0aW9ucyI6ICJzdHJpY3QiCn0K
これで、組織 B の従業員がベンダーと Google Cloud 組織の両方にアクセスできるようになりました。
アップロードのみに制限する
この例では、組織 C の Google Cloud 管理者と下り(外向き)プロキシ管理者が連携して、従業員のアップロード アクセスを Google Cloud 組織内のリソースのみに制限します。
アップロード アクセスを組織のみに制限するには、次の操作を行います。
Google Cloud 管理者が組織 C の Google Cloud 組織 ID を取得するには、
gcloud organizations list
コマンドを使用します。gcloud organizations list
出力例は次のとおりです。
DISPLAY_NAME: Organization C ID: 123456789 DIRECTORY_CUSTOMER_ID: a1b2c3d4
下り(外向き)プロキシ管理者は、Google Cloud 管理者から組織 ID を取得したら、次の形式でヘッダー値の JSON 表現を作成します。
{ "resources": ["organizations/123456789"], "options": "strict" }
下り(外向き)プロキシ管理者は、RFC 4648 セクション 5 の仕様に沿って、リクエスト ヘッダーの値をエンコードします。
たとえば、ヘッダー値の JSON 表現が
authorized_orgs.json
ファイルに保存されている場合、ファイルをエンコードするには、次の basenc コマンドを実行します。$ cat authorized_orgs.json | basenc --base64url -w0 ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiXSwKICJvcHRpb25zIjogInN0cmljdCIKfQo
下り(外向き)プロキシ管理者として、組織 C の管理者対象デバイスから送信される PUT、POST、PATCH メソッドのリクエストに対してのみ次のリクエスト ヘッダーが挿入されるように下り(外向き)プロキシを構成します。
X-Goog-Allowed-Resources: ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiXSwKICJvcHRpb25zIjogInN0cmljdCIKfQo
次のステップ
- 組織内アクセス制限でサポートされているサービスについて学ぶ。