1

我正在编写多个客户端应用程序(iPhone/android/windows 手机),它们将调用 Azure ACS 安全的 mvc webapi 控制器(对不起,首字母缩略词汤)。

使用 WIF(嗯,.net 4.5)保护 webapi 很简单,我可以被动登录而不会出现问题。

我还创建了一个 POC iPhone 应用程序,该应用程序使用 Web 浏览器让用户针对 azure AD IP 进行身份验证,然后使用此处的指南我可以获得一个 javascript 令牌。

现在我想下一步是在 Web 控制器上使用JSON Web Token Handler,我应该能够很好地提取数据。

但是,我可以将令牌存储多长时间?我应该尝试使用 webapi 端点,如果它被拒绝,让用户重新进行身份验证,还是无论如何设置令牌使其永不过期,或者几个月后过期?

谢谢

罗斯

4

1 回答 1

0

AFAIK,ACS 将 JWT 令牌的生命周期限制为 24 小时(这不是 JWT 约束 - 它是 ACS 约束);之后你必须更新它。长时间存储安全令牌通常不是一个好主意,因为用户可能被停用或她的声明可能已更改。通过查看安全令牌的“exp”成员,您可以知道令牌何时过期。您将从 ACS 收到的安全令牌是 BASE64 编码的。如果有 2 到 3 个由点分隔的部分。如果您解码令牌,则令牌的第二部分将为您提供“exp”成员。Microsoft 在 https://github.com/WindowsAzure-Toolkits/wa-toolkit-ios提供了适用于 ios 的工具包。(也存在用于 android 等的工具包)。

于 2013-02-28T07:54:52.107 回答