0

如何使用 ADAL 在 iOS 中启用多资源支持。在这么多网站中进行了搜索,但发现很难理解具有多个资源的流程,使用 Refresh Token 和 Access Token。谁能简要解释一下这个流程?

根据图书馆,ADTokenCacheStoreItem 将有 accessToken 将为零,以防项目存储多资源刷新令牌。但是每当我调用acquireTokenWithResource:clientId:redirectUri:我都得到访问令牌和刷新令牌。我怎么能告诉图书馆我的是多源请求。我需要做任何设置吗?

/*!收到的访问令牌。应该为零,以防项目存储多资源刷新令牌。/@property NSString accessToken;

而且,我是否需要每次调用acquireTokenWithResource:clientId:redirectUri 之前调用每个API 有或没有不同的端点。或者我是否有责任缓存/存储每个资源的访问令牌和到期日期?另外我如何在多资源情况下处理静默登录?

4

1 回答 1

1

使用 ADAL,您只需在acquireToken*每次应用程序需要访问令牌时调用某种形式,假定进行 API 调用。ADAL 应该为您处理令牌缓存、刷新等。您永远不必手动使用刷新令牌。

Azure AD 中的刷新令牌本质上是“多资源”。也就是说,您可以请求资源 1 的访问令牌,接收该访问令牌 + 刷新令牌对,然后使用刷新令牌获取对资源 2 的访问令牌。这允许您“静默”地获取不同资源的令牌,这意味着用户只需登录一次。

于 2016-10-17T17:36:44.867 回答