このガイドでは、Google Cloud プロジェクトを設定し、コマンドライン ユーティリティからサービス アカウントのロールを作成する方法について説明します。
詳細については、サービス アカウントのロールをご覧ください。
Cloud プロジェクトを設定する
Google Cloud コンソールを使用して Google Cloud プロジェクトを作成します。Google Maps Platform スタートガイドの基本的な手順に沿って操作します。
特定のサービスで課金と API を有効にするには、Google の営業担当者にお問い合わせください。
Cloud CLI ツールをインストールして、営業担当者と開始したサービスの構成を完了します。
CLI をプロジェクトに対して認証します。
注: Cloud SDK と **curl**
などの他の依存関係がすでにインストールされている Cloud Shell インタラクティブ環境の使用を検討してください。Cloud Shell の使用をご覧ください。
shell
gcloud auth login
次のような成功メッセージが表示されます。
You are now logged in as [my-user@example.com].
Your current project is [project-id]. You ...
Fleet Engine API が適切に構成されていることを確認します。
shell
gcloud --project=project-id services enable fleetengine.googleapis.com
このコマンドでエラーが発生した場合は、プロジェクト管理者と Google サポート担当者にアクセス権をリクエストしてください。
コンソールでサービス アカウントを作成する
サービス アカウントを作成するには、次のようにします。
- Google Cloud コンソールに移動します。
- [IAM と管理] カードを見つけてクリックします。
- 左側のナビゲーションで、[サービス アカウント] を選択します。
- ページ上部の [サービス アカウントを作成] をクリックします。
- Google Cloud コンソールに表示するサービス アカウント名を入力します。Google Cloud コンソールでは、この名前に基づいてサービス アカウント ID が生成されます。たとえば、Driver SDK ユーザー サービス アカウントには「fleet-engine-driver-sdk」と入力します。
- [ロール] プルダウンから [Fleet Engine] を選択し、いずれかのロールをサービス アカウントに割り当てます。
- [ユーザーにこのサービス アカウントへのアクセスを許可] セクションはスキップします。
- [完了] をクリックして、サービス アカウントの作成を完了します。
サービス アカウントの作成もご覧ください。
Google Cloud コマンドライン ユーティリティを使用してサービス アカウントを作成する
たとえば、3 つのロールのそれぞれにサービス アカウントを作成し、それぞれのロールを割り当てます。
オンデマンド ルートのロール
gcloud --project=project-id iam service-accounts create fleet-engine-admin gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:fleet-engine-admin@project-id.iam.gserviceaccount.com \ --role=roles/fleetengine.ondemandAdmin gcloud --project=project-id iam service-accounts create fleet-engine-driver-sdk gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:fleet-engine-driver-sdk@project-id.iam.gserviceaccount.com \ --role=roles/fleetengine.driverSdkUser gcloud --project=project-id iam service-accounts create fleet-engine-consumer-sdk gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:fleet-engine-consumer-sdk@project-id.iam.gserviceaccount.com \ --role=roles/fleetengine.consumerSdkUser
スケジュール タスクのロール
gcloud --project=project-id iam service-accounts create fleet-engine-admin gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:fleet-engine-admin@project-id.iam.gserviceaccount.com \ --role=roles/fleetengine.deliveryAdmin gcloud --project=project-id iam service-accounts create fleet-engine-driver-sdk gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:fleet-engine-driver-sdk@project-id.iam.gserviceaccount.com \ --role=roles/fleetengine.deliveryUntrustedDriver gcloud --project=project-id iam service-accounts create fleet-engine-consumer-sdk gcloud projects add-iam-policy-binding project-id \ --member=serviceAccount:fleet-engine-consumer-sdk@project-id.iam.gserviceaccount.com \ --role=roles/fleetengine.deliveryConsumer