有没有办法在应用程序加载时触发登录页面?
Is there a way to trigger login page on app load?
有没有办法在首次加载应用程序时触发 Azure Active Directory 登录页面?
我目前在 Angular 11 内联网站点上有一些身份验证代码,当用户首次点击 URL 时,该站点使用 APP_INITIALIZER 获取用户的 Windows 凭据,然后从那里将该数据传递到能够验证用户身份并获取所需信息的 API。
使用拦截器拦截对 API 的调用,并在请求中添加 withCredentials 字段以实现此目的。
我目前正在考虑使用 Azure AD 将此功能替换为类似的功能,因为我们正在从 IIS 托管 Web 服务器迁移到托管在 Azure 应用服务上。据我所知,一旦托管在 Azure 上,通过浏览器的 Windows 身份验证就不起作用,因此下一个最佳选择似乎是 Azure AD,因为它仍然包含类似于 Windows 登录的员工数据(使用组织登录)。
到目前为止我看过以下内容:
- The code samples by Microsoft 包含有关使用 MSAL v2 的信息,但没有任何示例说明如何立即提示用户登录,而不必先单击登录按钮。我最接近它的工作是在 app.component.ts 中的 ngOnInit() 函数的末尾添加 this.login() ,但这感觉很像 hack,并且不是'没有像 APP_INITIALIZER.
这样正确地做
- This example 此处确实向我展示了如何创建提示用户在加载时登录的应用程序,但它使用的是更旧的 MSAL v1 库。如果可能的话,我想使用 v2,以防 v1 最终被弃用
我乐于接受任何有助于我保持 Windows 身份验证的想法,但也很乐意迁移到 Azure AD。
以防有人在谷歌搜索时登陆这里。
解决方法是简单地将 MSALGuard 添加到默认 home 路由。这将强制通过 Azure AD 登录。
有没有办法在首次加载应用程序时触发 Azure Active Directory 登录页面?
我目前在 Angular 11 内联网站点上有一些身份验证代码,当用户首次点击 URL 时,该站点使用 APP_INITIALIZER 获取用户的 Windows 凭据,然后从那里将该数据传递到能够验证用户身份并获取所需信息的 API。
使用拦截器拦截对 API 的调用,并在请求中添加 withCredentials 字段以实现此目的。
我目前正在考虑使用 Azure AD 将此功能替换为类似的功能,因为我们正在从 IIS 托管 Web 服务器迁移到托管在 Azure 应用服务上。据我所知,一旦托管在 Azure 上,通过浏览器的 Windows 身份验证就不起作用,因此下一个最佳选择似乎是 Azure AD,因为它仍然包含类似于 Windows 登录的员工数据(使用组织登录)。
到目前为止我看过以下内容:
- The code samples by Microsoft 包含有关使用 MSAL v2 的信息,但没有任何示例说明如何立即提示用户登录,而不必先单击登录按钮。我最接近它的工作是在 app.component.ts 中的 ngOnInit() 函数的末尾添加 this.login() ,但这感觉很像 hack,并且不是'没有像 APP_INITIALIZER. 这样正确地做
- This example 此处确实向我展示了如何创建提示用户在加载时登录的应用程序,但它使用的是更旧的 MSAL v1 库。如果可能的话,我想使用 v2,以防 v1 最终被弃用
我乐于接受任何有助于我保持 Windows 身份验证的想法,但也很乐意迁移到 Azure AD。
以防有人在谷歌搜索时登陆这里。
解决方法是简单地将 MSALGuard 添加到默认 home 路由。这将强制通过 Azure AD 登录。