1

GCPのサービスアカウントに対してきわめてきめ細かなアクセス制御を設定する必要があります。このエラーが表示されています:BigQueryユーザー向けにGoogle Cloud Platformの個々の権限を許可する方法

"user SERVICE_ACCOUNT does not have bigquery.jobs.create permission in project PROJECT_ID".

私はUI/gcloudユーティリティを使用して、ロールロール/ bigqueryを与えることができます。 ユーザーですが、このサービスアカウントには必要ない他の多くの権限があります。

gcloud/UIなどの方法で個々の権限を許可するにはどうすればよいですか?

答えて

2

あなたがGoogleクラウドコンソールで直接IAMを設定することができます。

https://console.cloud.google.com/iam-admin/iam/

サービスアカウントは、サーバー側のアプリケーションのために使用されるように設計され、例えばなど言い換えるとのVM、AppEngineの:

[It's] an account that belongs to your application instead of to an individual end user. Your application calls Google APIs on behalf of the service account, so users aren't directly involved.

https://developers.google.com/identity/protocols/OAuth2ServiceAccount

サービスアカウントが異なるBigQueryのIAMコンソールを介して、それに割り当てられた役割、そのように持つことができます。enter image description here

あなたは、個々の追加も追加しますコンソールを使用してユーザー(Googleアカウントにバックアップされたメール)をIAMに送信し、次にBigQueryで個別に許可する権限を選択します( enter image description here

BigQueryのアクセス許可&ロールはhereと定義されています。 IAMセクションに表示enter image description here

+0

私はBigQuery.user.roleにユーザーに権限を与えたくないので、リスト/取得データセットを許可し、新しいデータセットを作成します。 Create job/queries権限を他人なしで付与する方法はありますか? – yura

+0

いいえ、私はそこにいるとは思わない。外部の(サードパーティなどの)外部ユーザーや社内ユーザーですか? –

+0

サービスアカウントです。 – yura

0

あなたはCustom Rolesを使用することができ、:

enter image description here

必要なアクセス許可の特定の組み合わせを持つロールを作成します。次に、IAM役割割り当てページの「カスタム」に表示され、API経由で利用可能になります。あなたの特定のユースケースについては

、カスタム役割で次の操作を試してください。

  • bigquery.jobs.create
  • bigquery.jobs.get
  • bigquery.tables.create
  • BigQueryの。 tables.update
関連する問題