web-dev-qa-db-ja.com

GCPインスタンスにCompute OSログインを付与する方法

チームメンバーの1人にCompute OSログインのみのアクセスを許可しようとしていますが、それを確立できませんでした。

どうだった?

ステップ1

In the appropriate project under the IAM I added the user email and given Role for Compute OS Login after that.

ステップ2

端末で試しました

# glcoud init 

必要な情報をすべて提供した後、gcloudでログインを試みました

# gcloud compute ssh sjkeerthi@test-instance -- -p 2020

No zone specified. Using zone [europe-west2-c] for instance: [test-instance].
Updating project ssh metadata...failed.                                                                                                              
Updating instance ssh metadata...failed.                                                                                                             
ERROR: (gcloud.compute.ssh) Could not add SSH key to instance metadata:
 - The user does not have access to service account '[email protected]'.  User: '[email protected]'.  Ask a project owner to grant you the iam.serviceAccountActor role on the service account

注:-メタデータの下に設定してもenable-oslogin = True

3
Keerthiraja

次の公開ドキュメント ユーザーアカウントでのOSログインロールの構成 が役立つと思います。取得したエラーは、ユーザーに(iam.serviceAccountUser)ロールがないことを示しています。

The user does not have access to service account '[email protected]'. User: '[email protected]'. Ask a project owner to grant you the iam.serviceAccountActor role on the service account

公開ドキュメントで提供されている例のように、次のプロセスでユーザーにインスタントアクセスを許可できます。

必要なインスタンスアクセスロールをユーザーに付与します。

ユーザーには次の役割が必要です。

  1. Iam.serviceAccountUserの役割。

次のログインロールのいずれか:

  1. 管理者権限を付与しないcompute.osLoginロール
  2. 管理者権限を付与するcompute.osAdminLoginロール
1
arp-sunny.

IAMアカウントに次のロールを追加する必要があります ここに示すように

  • サービスアカウントユーザーroles/iam.serviceAccountUser
  • 次のいずれかの役割:
    • OSログインを計算するroles/compute.osLogin通常のユーザーとしてログインする場合
    • OS管理者ログインの計算roles/compute.osAdminLogin管理者としてログインしたい、またはroot権限を持ちたい場合
0
Brian Baquiran

サービスアカウント「[email protected]」として機能できるように、サービスアカウントアクターの役割をユーザーアカウントに追加する必要があります。

この役割は廃止されました。サービスアカウントユーザーの役割とサービスアカウントトークン作成者をIAMのユーザーアカウントに付与する必要があります。

詳細については、この link で公開ドキュメントを参照できます。

Google Compute Engine(GCE)インスタンスから別のGCEインスタンスにSSH接続しようとしている場合は、ソースインスタンスのCompute Engineスコープが構成設定で読み取り/書き込みに設定されていることを確認して、他のGCEインスタンスにアクセスできるようにします。

0
Django