認証と認証

SAS Portal API と統合する場合は、サービス アカウントを使用して認証を行うことを強くおすすめします。必要に応じて、サービス アカウントを作成します。サービス アカウント キーを作成するときは、キータイプとして必ず JSON を選択してください。完了すると、サービス アカウント キーがブラウザのデフォルトの場所にダウンロードされます。さらに、サービス アカウントに「プロジェクト オーナー」のロールを付与してください。

次に、サービス アカウントの認証を署名なしトークンとして指定する必要があります。cURL で HTTP リクエストを行うなど、SAS Portal API を直接呼び出す場合は、Authorization ヘッダーで署名なしトークンとして認証を渡します。サービス アカウントで署名なしトークンを取得する手順は、次のとおりです。

  1. gcloud コマンドライン ツールをインストールします。
  2. サービス アカウントを認証します。次のコマンドで、${KEY_FILE} をサービス アカウント キー ファイルのパスに置き換えます。

    gcloud auth activate-service-account --key-file ${KEY_FILE}
  3. サービス アカウントを使用して認証トークンを取得します。

    gcloud auth print-access-token

    このコマンドはアクセス トークンの値を返します。

  4. API を使用する場合は、トークン値を Authorization ヘッダーで署名なしトークンとして渡します。次の例をご覧ください。

    curl -X GET -H "X-Goog-User-Project: ${CLIENT_PROJECT}" \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer ${TOKEN}" \
    "https://sasportal.googleapis.com/v1alpha1/customers"

    ${CLIENT_PROJECT} には、リクエストの送信元となる Google Cloud プロジェクトの ID を設定し、${TOKEN} を認証トークンに設定します。