2013-02-01 13 views
5

Box Apiを使用してアクセストークンを取得しましたが、1時間で有効期限が切れています。 私がここでしたいのは、UserNameとPasswordを渡して、有効期限の切れていないボックスからアクセストークンを取得するか、ボックスからアクセストークンを取得しますか?

私は期限切れでないアクセストークンを必要とするか、ボックスユーザーIDとパスワードをAPIに渡してアクセストークンを取得する必要があります。

上記のことが可能な場合は、私に方法を教えてください。

事前に感謝を...

答えて

6

あなたは無記名トークンとリフレッシュトークンと呼ばれるものを持っています。ベアラートークンは1時間有効で、リフレッシュトークンは60日間有効です。リフレッシュトークンは、リフレッシュを実行するときに両方のクロックをリセットする別のトークンペアのためにトレードインすることができます。

ボックスには、ActiveDirectory/Okta/Ping/2-factor/2-factor/Okta/Okta/Okta/Ping/2-factor/SSOを使用してSSOを実行する必要があるエンタープライズカスタマーにとっては本質的に機能しないため、 SecureIDサインフローが流れます。

おそらく、トークンの更新を処理するSDKが必要です。ほとんどのユーザーは、数週間休暇を取らない限り、2度目のログオンは必要ありません。 Boxはすでにseveral SDKsをリリースしています。すべてオープンソースライセンスのgithubにあります。彼らのほとんどは自動的にトークンをリフレッシュします。

また、最新のトークンを使用して新しいトークンを複数回取得するなど、マルチサーバー実装がよりスムーズにリフレッシュトークンフローで機能するように、いくつかの機能拡張を追加しました(2014年初頭)狭い時間窓。これは、両方のマルチスレッド環境で、複数のスレッド(またはサーバー)にわたって新しいトークンを取得しようとする場合に役立ちます。また、ネットワークの中断が発生し、最初のリフレッシュコールから実際に新しいトークンペアを取得しない場合に役立ちます。

+0

返信いただきありがとうございます。 私は開発のためにCシャープを使用しています。 – user2003167

+0

既にV2 APIに基づいて開発されたC#SDKコミュニティがあります。 https://github.com/jhoerr/box-csharp-sdk-v2 – Peter

+0

リフレッシュトークンの有効期限が14日から60日間に延長されました。 –

関連する問題