Azure 移动服务中的身份验证流程是什么?如何处理社交代币?

What is the Authentication flow in Azure Mobile Services? How Social tokens are handled?

在我使用 Aws Cognito 之前,流程的工作原理很简单,但我无法理解 Azure 移动服务身份验证的好处。我关注了 this documentation 但它让我更加困惑。 当我将 aws 与 facebook 登录一起使用时。

还有其他问题,Azure 也在使用联合身份如果我明白,在 Cognito 上我可以看到用户。它们存储在 azure 中的什么地方,我能以某种方式看到它们还是我需要自己存储?

What is the Authentication flow in Azure Mobile Services? How Social tokens are handled?

  1. 移动客户端请求Azure移动前端(第一次)

  2. 它将重定向到社交平台以使用用户自定义信息登录。

  3. 如果有效,则身份提供商令牌将存储在 Azure mobile platform

  4. Azure会从身份提供者token中获取userId或email信息,然后向移动客户端颁发一个过期时间的token,并将其存储在移动客户端中。

where are they stored in azure, can I see them somehow or I need to store myself?

我们可以从App Service Token Store中得到答案。我们不需要自己存储它。

Internally, all these tokens are stored in your app’s local file storage under D:/home/data/.auth/tokens. The tokens themselves are all encrypted in user-specific .json files using app-specific encryption keys and cryptographically signed as per best practice. This is an internal detail that your app code does not need to worry about. Just know that they are secure.

正如您提到的 link,它是安全的,我们可以重新使用它。根据我的经验,将令牌存储在客户端永不过期是不安全的。

参考文献:

Architecture of Azure App Service Authentication / Authorization