API Keysを取得
WLTE OpenAPIを呼び出すための認証情報が必要なときは、このページを参照してください。
API Keyの作成場所
- Developer Consoleにサインインします: https://developer.svnwi.com/wlte
- アプリケーションを開きます。
- API Client管理に移動します。
- API Clientを作成します。
- 統合に必要な最小限のスコープを選択します。
- 生成された
clientIdとclientSecretを保存します。
Developer Console上では、API KeyはAPI Clientとして作成されます。作成後、次の2つの値を受け取ります。
| 値 | 用途 |
|---|---|
clientId | API Clientの公開識別子 |
clientSecret | サーバーがアクセストークンをリクエストするために使うシークレット |
clientId と clientSecret を合わせて、アクセストークンを取得するための認証情報として使います。
Developer Consoleで管理できること
| 項目 | 用途 |
|---|---|
| API Keys | API Clientを作成し、clientId / clientSecret を取得する |
| 権限 | 統合がアクセスできるデバイスと操作を制御する |
| 認証情報のライフサイクル | 認証情報のローテーション、無効化、削除 |
| トラブルシューティング | サポートに連絡する際にクライアントID、リクエストID、タイムスタンプを使用する |
Keyの使い方
サーバーは認証情報を、有効期限の短いアクセストークンと交換します。
http
POST /wlte/v1/auth/token続いて、サーバーはトークンを使ってREST APIを呼び出します。
http
Authorization: Bearer {accessToken}clientSecret を使って直接デバイスAPIを呼び出さないでください。シークレットはアクセストークンをリクエストするためだけに使います。
必須のセキュリティルール
clientSecretはサーバー側のシークレットストレージにのみ保管してください。clientSecretをブラウザコード、モバイルアプリ、公開リポジトリ、スクリーンショット、ログに置かないでください。clientSecretは作成時またはローテーション時にのみ表示されます。すぐに保存してください。- シークレットを紛失した場合はローテーションしてください。元の値を再表示することはできません。
- 可能であれば、本番・ステージング・ローカルテストで別々のAPI Clientを使用してください。
- 使われなくなったAPI Clientは無効化してください。
権限
スコープは、API Keyができることを制御します。たとえば読み取り専用のKeyでは、リレーの制御やデバイス設定の変更はできません。
APIコールが AUTH_SCOPE_DENIED を返した場合は、Developer ConsoleでAPI Clientのスコープを更新し、変更を保存して、新しいアクセストークンを取得してから再試行してください。
権限とセキュリティを参照してください。
ローテーションと無効化の挙動
認証情報のライフサイクル変更は、APIサーバー側で強制されます。
| 変更 | 想定される挙動 |
|---|---|
| シークレットのローテーション | 古いシークレットでは新しいトークンをリクエストできなくなる |
| API Clientの無効化 | 新規トークンのリクエストが失敗し、保護されたAPIは既存のトークンを拒否する |
| API Clientの削除 | 新規トークンのリクエストが失敗し、保護されたAPIは既存のトークンを拒否する |
| 権限の変更 | 既存のトークンも現在の権限状態に照らしてチェックされる |
古いシークレットを停止する前にサーバー側の更新が完了するよう、ローテーションを計画してください。
