前提条件
すでに以下を行っていることを前提としています。
認証を構成する
サービス アカウントによる認証は次のように設定します。
- API クラスに App Engine Endpoints API をインポートします。 - import endpoints
- サービス アカウントの issuer オブジェクトを API デコレータに追加します。例: - @endpoints.api( name='echo', version='v1', issuers={'serviceAccount': endpoints.Issuer( 'YOUR_SERVICE_ACCOUNT_EMAIL', 'https://www.googleapis.com/robot/v1/metadata/x509/YOUR_SERVICE_ACCOUNT_EMAIL')}, audiences={'serviceAccount': ['YOUR_AUDIENCE']})- echoは、API の名前に置き換えます。
- v1は、API のバージョンに置き換えます。
- YOUR_SERVICE_ACCOUNT_EMAILは、サービス アカウントのメールアドレスに置き換えます。
- YOUR_AUDIENCEは、呼び出し側のサービスが送信する- audフィールドの値に置き換えます。
 
- 次のメソッド定義例のように、認証情報が正しいかどうかを確認する各 API メソッドで、有効な - Userが存在するかどうかを確認して、存在しない場合は- 401エラーを発生させます。- user = endpoints.get_current_user() # If there's no user defined, the request was unauthenticated, so we # raise 401 Unauthorized.
- API をデプロイします。新しいクライアントを追加するたびに API を再デプロイする必要があります。