仮想マシン インスタンスでの Spanner の使用

このページでは、Compute Engine の仮想マシン インスタンスに Spanner データベースへのアクセス権限を付与する方法について説明します。

Compute Engine に作成したインスタンスから Cloud Spanner API へのアクセスには、サービス アカウントを使用できます。サービス アカウントには、アプリケーションのデフォルト認証情報が用意されています。そのため、開発者個人のユーザー認証情報を使用するように各 Compute Engine インスタンスを構成する必要はありません。

次のいずれかの方法でインスタンスにサービス アカウントを構成します。

すべての Cloud API にアクセスできるようにインスタンスを構成する

インスタンスが Cloud Spanner API に迅速にアクセスできるようにするには、新しいインスタンスを作成するときに、デフォルトのサービス アカウントを使用し、すべての Cloud API に完全にアクセスできるように設定します。

  1. Compute Engine VM インスタンスのページに移動します。

    [VM インスタンス] ページに移動

  2. プロジェクトを選択し、[続行] をクリックします。

  3. [インスタンスを作成] をクリックして、新しいインスタンスの作成を開始します。

  4. [ID と API へのアクセス] セクションで、[すべての Cloud API に完全アクセス権を許可] をクリックします。

  5. 必要に応じて他のインスタンス設定の構成を行い、[作成] をクリックします。

これで、Compute Engine インスタンスのサービス アカウントが Cloud Spanner API にアクセスできるようになりました。クライアント ライブラリを使用して、Spanner データベースに読み取りまたは書き込みを実行できます。インスタンスは、デフォルトのサービス アカウントの認証情報を使用して、Cloud Spanner API の認証を行います。

サービス アカウントを使用するようにインスタンスを構成する

インスタンスが特定の API と役割にのみアクセスできるようにするには、Spanner データベースに対するアクセス権のみを持つサービス アカウントを作成し、このサービス アカウントをインスタンスに適用します。

  1. 開発者自身に代わって Spanner にアクセスするサービス アカウントを選択します。以下のいずれかの方法を選択します。

  2. サービス アカウントにロールを付与し、Spanner へのアクセスに必要な権限を設定します。Spanner に適用されるロールの一覧については、Spanner のアクセス制御をご覧ください。

  3. Compute Engine VM インスタンスのページに移動します。

    [VM インスタンス] ページに移動

  4. プロジェクトを選択し、[続行] をクリックします。

  5. [インスタンスを作成] をクリックして、新しいインスタンスの作成を開始します。

  6. [ID と API へのアクセス] セクションで、[サービス アカウント] のリストからサービス アカウントを選択します。

  7. 必要に応じて他のインスタンス設定の構成を行い、[作成] をクリックします。

これで、Compute Engine インスタンスのサービス アカウントが Cloud Spanner API にアクセスできるようになりました。クライアント ライブラリを使用して、Spanner データベースに読み取りまたは書き込みを実行できます。インスタンスがサービス アカウントの認証情報を使用して、Cloud Spanner API の認証を行います。

次のステップ