概要
Box公式SDKを利用すると、一般的な認証のハードルはなくなりますが、Box APIは、Box公式SDKがなくても使用できます。このガイドでは、OAuth 2.0のフローを手動で完成させるための手順を説明します。- 承認URLを作成する
- ユーザーを承認URLにリダイレクトする
- ユーザーが自分の代わりにアクションを実行するためのアクセス権限をアプリケーションに付与する (成功した場合は承認コードが提供される)
- ユーザーを再度アプリケーションにリダイレクトする
- 承認コードをアクセストークンと交換する
OAuth 2.0フローを介して取得したアクセストークンは、もともとアプリケーションを承認したユーザーに関連付けられています。
as-userヘッダーを使用して、できます。前提条件
続行する前に、以下の手順を完了しておく必要があります。- Box開発者コンソールで、OAuth 2.0認証方法を利用するPlatformアプリを作成する。
- アプリケーションの [構成] タブに移動して、
client_idとclient_secretの値をコピーする。 - アプリケーションの [構成] タブで、少なくとも1つのリダイレクトURIが構成されていることを確認する。
1. 承認URLを作成する
は、以下のパラメータで構成されています。
少なくとも、このURLは常に次の形式を使用します。
https://account.box.com/api/oauth2/authorize?client_id=CLIENTIDHERE&response_type=code
承認URLの詳細を確認する
2. ユーザーをリダイレクトする
次に、ユーザーを承認URLにリダイレクトします。その方法は、アプリケーションフレームワークによって異なります。このトピックの詳細については、ほとんどのフレームワークのドキュメントで説明されています。 指定されたアプリに対して承認URLが無効な場合、ユーザーには、アクセスの許可画面ではなくエラーページが表示されます。たとえば、承認URLに含まれるredirect_uriパラメータが、アプリ用に構成されたURIのいずれとも一致しない場合、ユーザーにはredirect_uri_mismatchエラーが表示されます。
スコープを制限したり追加の状態を渡したりするために、ユーザーをリダイレクトする際に追加のクエリパラメータを渡すことができます。詳細については、承認のリファレンスドキュメントを参照してください。
3. ユーザーがアプリケーションにアクセス権限を付与する
ユーザーは、Box UIを使用して自分のアカウントにログインするために、ブラウザにリダイレクトされます。その後、リクエストされているスコープのリストと、ユーザーに代わって処理を行うアプリケーションを承認するためのオプションが表示されます。
