OAuth 1.0a
主要な概念
キーとトークンを使ったリクエストへの署名
authorization ヘッダーに含めて署名する必要があります。まずは、X 開発者用 App の詳細ページで、次のような複数のキーとトークンを生成できます。
API key と secret:oauth_consumer_keyoauth_consumer_secret | これらは、API リクエストを行う際に、あなたの X 開発者用 App を表すユーザー名とパスワードのようなものです。 |
Access token と secret:oauth_tokenoauth_token_secret | Access token と access token secret は、OAuth 1.0a API リクエストを認証するために使用されるユーザー固有の認証情報です。これらは、リクエストがどの X アカウントに代わって行われているかを指定します。 開発者アカウントに関連付けられているのと同じ X アカウントに代わって App がリクエストを行うようにしたい場合は、[X 開発者用 App の]/resources/fundamentals/developer-apps) 詳細ページで、自分用の access token と token secret を生成できます。 別のユーザーの access token を生成したい場合は、以下の「Making requests on behalf of users」を参照してください。 |
ユーザーに代わってリクエストを送信する
oauth_token と oauth_token_secret) が生成されます。
これらのキーとトークンを取得したら、シグネチャを作成してゼロから組み立てることもできます。ただし、仕組みを十分に理解している場合、または OAuth 1.0a を必要とするエンドポイントへのリクエスト送信に以下で紹介するツールのいずれかを使用している場合を除き、この方法は推奨しません。
参考として、生成されたすべてのトークンを Authorization ヘッダーに渡して署名した cURL リクエストの例を次に示します。
注意: ユーザーアクセス トークンは機密性が高いため、厳重に保護する必要があります。アクセス トークンが生成されると、そのトークンの対象となるユーザーは、あなたのアプリケーションがそれらを安全に保持してくれると信頼していることになります。APIキーとユーザーアクセス トークンの両方のセキュリティが侵害された場合、アプリケーションを通じて非公開情報やアカウント機能へのアクセスが外部にさらされるおそれがあります。キーとアクセス トークンの保護 について、ぜひ詳しく学んでください。
便利なツール
| Postman | REST API リクエストを作成・送信できる API クライアントです。このツールの詳細については、チュートリアル「Postman を使い始める」をご覧ください。 |
| Insomnia | Insomnia は、Mac、Windows、Linux に対応し、Cookie 管理、環境変数、コード生成、認証機能を備えた REST API クライアントです。 |