【发布时间】:2020-02-08 16:30:00
【问题描述】:
我有一个作为 Azure 应用服务托管的 ASP .Net Core 2.2 Web API。然后是一个使用这个 API 的 Angular SPA,它作为一个静态网站托管在 Azure 存储上。
我目前使用 Auth0 作为我们的身份验证和身份服务器。我正在考虑用 Azure 替换 Auth0,但我花了几天时间试图弄清楚我应该做什么,但我完全迷失了。
因此,Auth0 当前服务的目的是保护我的 Web API,并为其提供身份服务,以便 API 知道哪个用户已登录。所以当前端调用 API,Auth0 自动将其重定向到登录页面。在这里,用户可以使用现有帐户(包括社交帐户)登录,也可以创建一个新帐户。登录后,Auth0 会为前端提供访问令牌。然后,前端将这个访问令牌包含在每个 API 调用的标头中。访问令牌包括 API 用来知道哪个用户在进行调用的身份信息。所有用户都存储在 Auth0 中。因此,当新用户使用前端 Web 应用程序时,Auth0 会将他们重定向到登录屏幕,在那里他们选择“注册”,并在 Auth0 中创建一个帐户。顺便说一句,任何用户都可以这样做 - 这是一个任何人都可以注册和使用的公共网络应用程序。
所以,当考虑使用 Azure 而不是 Auth0 时,首先让我感到困惑的是有各种身份验证服务:
在 Azure 门户中,在我的应用服务下,在“身份验证/授权”下,有一个标记为“应用服务身份验证”的切换开关。如果我打开它,我可以设置身份验证提供程序。
在 Azure 门户中,有 Azure Active Directory,我猜这与上述内容有关?
还有 Azure B2C。
Azure 应用服务身份验证和 Azure B2C 有什么区别?我应该使用哪一个?上面第 1 点和第 2 点有什么区别?我见过的一些例子使用第 1 点和一些使用第 2 点。
抱歉,这是一个非常模糊的问题。我只是在努力弄清楚该朝哪个方向前进。我发现 Auth0 非常简单,但不幸的是我不能对 Azure 身份验证说同样的话。我基本上只是想弄清楚哪个 Azure 选项最适合替换 Auth0,因为我现在正在使用它。谢谢
【问题讨论】:
-
您在使用 Auth0 时遇到了什么问题?
-
嗨,丹。 Auth0 没有问题。我只是认为在 Azure 上托管所有内容会很好。我已经在 Azure 上获得了后端 API 和前端 SPA,并且我正在使用 Azure Blob 存储来存储文档。所以我想如果我也将身份验证转移到 Azure,那么一切都可以在 Azure 上融合在一起。认为这可能很方便...
标签: azure authentication authorization auth0 azure-authentication