as-user
ヘッダーを利用すると、JWTアプリケーションは別のユーザーの代理になることが できます。
curl https://api.box.com/2.0/folders/0 \
-H "as-user: [USER_ID]"
-H "authorization: Bearer [ACCESS_TOKEN]"
この場合、ユーザーIDはユーザーのBox識別子です。どのユーザーでも、ユーザーIDは、管理者だけが利用可能なGET /users
エンドポイントを介して確認できます。また、認証済みのユーザーセッションでGET /users/me
エンドポイントを呼び出して確認することもできます。
アプリケーションは、開発者コンソールで、ユーザーとして操作を実行するように構成する必要があります。
さらに、認証済みユーザーは、管理者権限を持つユーザー、つまり、管理者または共同管理者である必要があります。詳細については、ユーザータイプのガイドを参照してください。
すべてのBox公式SDKでは、as-user
ヘッダーを使用してユーザーの代わりに処理を実行することがサポートされています。
.NET
var user_client = new BoxClient(config, session, asUser: '[USER_ID]');
Java
client.asUser([USER_ID]");
// client.asSelf();
Python
user_to_impersonate = client.user(user_id='[USER_ID]')
user_client = client.as_user(user_to_impersonate)
Node
client.asUser('[USER_ID]');
// client.asSelf();
SDKには、他のユーザーに対して新しいクライアントを作成するものもあれば、既存のクライアントを変更して、そのクライアントが元のユーザーに対して認証される状態に戻せるようにするものもあることに注意してください。