問題タブ [google-cloud-iam]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1345 参照

google-apps-script - Google スプレッドシートでスクリプトを実行すると権限エラーが発生する

Google スプレッドシートを入力として使用するプログラムを開発しています。スプレッドシートの値が読み取られ、処理され、結果が Web ページに表示されます。

ユーザーがサインアップすると、サービス アカウントを使用してテンプレートからスプレッドシートのクローンが作成されます。テンプレートには、ユーザーがスプレッドシートに値を導入するのを支援するために使用したいスクリプトがいくつか含まれています。

しかし、スクリプトは所有者としてサービス アカウントを持っているようで、Google によるとサービス アカウントに属するスクリプトは実行できません。

エラーメッセージは次のとおりです。

Google Apps Script: サービス アカウントが所有しているため、スクリプトを実行できません。実行する前に、プロジェクトを有効なアカウントにコピーまたは転送してください。

スプレッドシートの所有権をサービス アカウントから gmail ユーザーに譲渡します。そのユーザーがスクリプトを作成すると、スクリプトは完全に実行されますが、テンプレートから継承されたスクリプトはまだ所有者としてサービス アカウントを持っているようで、実行できません。

私の質問は...どうすればプロジェクト (スクリプト) の所有権をサービス アカウントから別のユーザーに移すことができますか?

私はそれをグーグルで検索し、開発者のGoogleスプレッドシートサイトで検索しましたが、答えが見つかりませんでした

0 投票する
1 に答える
228 参照

api - 権限 Cloud Resource Manager API

開発者コンソールからプロジェクトを作成、編集、および削除する必要があるアプリケーションを開発しています。

この目的のためにCloud Resource Manager APIを使用しています。

API へのリクエストには OAuth 2.0 が必要なので、OAuth2.0 サーバー ツー サーバー(Two-Legged OAuth または 2LO)を使用しています。

認証トークンを取得したら、新しいプロジェクトを作成するために API にリクエストを行います。許可がないと言われました: The caller has no permissions.

ただし、すべてのプロジェクトのリストを要求すると、正しい応答が得られます。

許可を得るにはどうすればよいですか?

OAuth 2.0 サーバー ツー サーバーを使用するすべての手順に従い、仕事用の Google アカウントを持っています。サービス アカウントには所有者の役割とドメインの委任があります。

ありがとう!!

0 投票する
0 に答える
130 参照

google-bigquery - GCP で IoT を実装する方法: プロジェクトごとのクラウド プロジェクトとサービス アカウントの両方の制限は何ですか? 彼らは何人まで増やすことができますか?

要するに、プロジェクトごとのクラウド プロジェクトとサービス アカウントの両方の制限はどれくらいですか? どうすればそれらを増やすことができますか? アーキテクチャはまったく良いアイデアですか?

私は、顧客ごとに少数のデバイスと数百の顧客を持ち、現場で数万の計画されたデバイスを使用して IoT アプリケーションを開発しています。すべてのデバイスは、少なくとも 100Hz のサンプル レートで、デバイスごとに 1 つのデータセット (またはテーブル) を使用して、継続的に (24 時間 365 日) 測定データを直接 BigQuery にストリーミングします。

もちろん、クラウド データセットへのアクセスを厳しく制限するには、すべてのデバイスを認証および承認する必要があります。認証ガイドに記載されているように、API キーはあまり安全ではありません。したがって、最も適切なソリューションは、デバイスごとに 1 つのアカウント キーを持つ顧客ごとに 1 つのサービス アカウントを持つようです (この GCP 記事で提案されているように)。ただし、Cloud IAM の FAQ には、サービス アカウントの数はプロジェクトごとに 100 に制限されていると記載されています。

  • この制限はすぐに到達する可能性があります。もしそうなら、プロジェクトごとに数千または数万のサービス アカウントにこの制限を増やすのはどれくらい簡単/費用がかかりますか?
  • このようなシナリオでは、必要なプロジェクトの数も簡単に数百または数千に増加する可能性があります。これは実現可能でしょうか?
  • この全体的なコンセプトは実用的ですか、それとも GCP 内により良いアプローチがありますか?
0 投票する
1 に答える
79 参照

google-cloud-platform - Cloud Identity 組織外でのプロジェクトの作成を禁止する

Google Cloud Platform 組織にマッピングされた Cloud Identity 組織があります。

GCP 組織の IAM ポリシーは次のとおりです。

  • 「管理者」はプロジェクトを作成し、管理操作を行うことができます
  • 「開発者」は閲覧可能

GCP Org では問題ありませんが、「Devs」ユーザーが GCP Org の外でプロジェクトを作成できることがわかりました。この動作を防ぐ構成はありますか?

ありがとう

0 投票する
1 に答える
224 参照

google-cloud-platform - Google Cloud: 特定のバケット内の単一ファイルへのアクセスを拒否

私が持っていると仮定します:

  • Google Cloud Storage バケットbucketxyzと 2 つのユーザー グループ:group1group2;
  • とのallusers間のすべてのユーザーを含む追加の 3 番目のグループ。group1group2

その後:

  • そのための IAM ポリシーは、 への読み取り専用アクセスと読み取り/書き込み(ただし、ファイルの削除を避けるため、所有権はありません) をbucketxyz許可します。allusersgroup1

bucketxyz:file_shared.txtおよびfile_resticted.txt次の 2 つのシナリオの2 つのファイルも検討してください。

  1. file_shared.txtで誰かが書き込むことができますがgroup1、でユーザーがアクセスすることもできますgroup2-上記の IAM ポリシーを使用するだけで完了します。
  2. file_restricted.txtのユーザーのみが書き込みおよびアクセスできますgroup1

の専用ACL ルールを使用file_restricted.txtして、シナリオ #2 を実装することは可能bucketxyzですか? はいの場合、どのように?

0 投票する
1 に答える
314 参照

firebase - firebase auth を使用した pubsub (gcp iam)

REST & GRPC API を介して firestore を使用する (組み込み + モバイル) アプリを作成しています。各アクセスは、firebase ユーザー ID を識別する firebase ベアラー トークンを使用して認証します。

同じトークン/firebase uid を使用して pubsub から通知を取得し、その firebase uid を特定のトピックに制限したいのですが、pubsub は firestore authentication ではなく gcp の IAM を使用します。pubsub/iam で firebase ユーザーを参照するにはどうすればよいですか?

ありがとう!

0 投票する
1 に答える
132 参照

google-cloud-platform - IAM ユーザーに API 認証情報へのアクセスを許可する

IAM を介してユーザーにAPI 資格情報へのアクセスを許可しようとしています。ただし、これらのアクセス許可をカプセル化する既存の定義済み製品ロールが見つかりません。私が見つけることができる最も近いものはサービスアカウントroles/ iam.serviceAccountTokenCreatorの下にありますが、それは私がアクセスを許可することしかできません:

サービス アカウントを作成するのではなく、サインインして OAuth 資格情報/アクセス キーを管理できる別のユーザー アカウントを作成したいだけです。

0 投票する
1 に答える
287 参照

google-cloud-platform - IAM ロールを GSuite 管理コンソール グループに割り当てる

GCP で IAM ロールを GSuite 組織のすべてのメンバーに割り当てる方法を説明するドキュメントはたくさんありますが、これ以上詳細な権限については説明していません。

GSuite で管理コンソール グループを作成し、GCP でそのグループのすべてのメンバーに特定の IAM ロールを適用することはできますか?

0 投票する
1 に答える
1259 参照

firebase - Firestore への呼び出しがサーバー側で行われたときのクラウド Firestore へのユーザー アクセスとデータ制御

nodejs、express、firebase functions、firestore を使用して Web ベースのプロジェクトを開始しましたが、最終的には firebase ホスティングを使用したいと考えています。これまでのところ、承認と認証に到達するまで、すべてをサーバー側に保つことができました。モデル ビュー コントローラー構造を使用しているため、firestore への呼び出しがサーバー側で行われるため、firestore セキュリティ ルールが機能しません。Firestore セキュリティ ルールは、firestore クライアント側にアクセスする場合にのみ機能します。

Google Cloud IAM (Identity and Access Management) を使用して、Cloud Firestore セキュリティ ルールの場合と同様に、firestore への読み取り/書き込みのユーザー レベルを制御できますか?

その場合、MySQL で別のユーザーを設定するのと同じように機能します。

そのため、管理者がサインインするときは admin_webuser を使用してデータベースに接続し、他のユーザーがサインインする場合は user_webuser を使用してデータベースに接続します。

IAMを使用してfirestoreに接続するために、nodejs、express、firebase関数を使用して上記のようなセットアップを実現できますか?

現在、モデルフォルダーで、次の方法でfirestoreを呼び出します。

admin.initializeApp(functions.config().firebase);セットアップされた IAM ルールに基づいて、別の構成ファイルにヒットするようにパーツを変更できると思いますか? では、管理者が自分の Web サイトにログインするときに、別の構成ファイルを含むモデル フォルダーを使用できますか?

IAM のドキュメントを読みましたが、意味がありません。誰かが私にアドバイスしてもらえますか:

  1. IAM を使用して firestore で CRUD を実行できる管理者を設定するには?

  2. 管理者が私のウェブサイトにサインインしたときにのみ、firestore で CRUD 操作を実行できるようにするにはどうすればよいでしょうか?

0 投票する
1 に答える
804 参照

google-compute-engine - Google Compute インスタンスのクローンを作成するときに「compute.images.get」権限エラーが発生するのはなぜですか?

私は、Google コンピューティング インスタンスで運用 Web サイトに取り組んでいます。

ステージング サイトをセットアップしたいのですが、それを行う最も簡単な方法は、運用インスタンスのクローンを作成することです。

複製しようとすると、次のエラーが表示されます。

「projects/wordpress-sites-170807/global/images/SANITISED-template」に必要な「compute.images.get」権限

Required 'compute.images.get' permissionGoogle検索で役立つ参照を見つけることができませんでした。

質問:

1. この特定の Cloud Platform コンソールに対する編集者レベルの権限しかありません。このエラーは、ユーザーとしての私に固有のものですか? (私は現在、プロジェクトの「所有者」であるため、私の個人的な許可が問題になる可能性を排除しました)

2. この権限の問題がインスタンス自体に関連している場合、"compute.image.get" 権限を持つように権限を変更するにはどうすればよいですか?