一些背景知识,我正在公司内部网络中部署一个本地ASP Core 3.1 MVC应用程序。目前在本地开发环境中工作,但最终将在linux系统上运行,在linux系统中,URL通过我们的DNS服务器路由,并提供比普通IP地址更好看的url。我们的组织使用Azure AD,我们的所有员工都拥有microsoft帐户。我正在尝试仅允许通过Microsoft帐户登录。我在Azure门户中遵循了快速入门指南,但现在收到以下错误:"AADSTS50194 ...未配置为多租户应用程序。在'10/15/2018‘之后创建的此类应用程序不支持使用/common终结点。请使用特定于租户的终结点或将应用程序配置为多租户“
据我所知,指南中没有提到任何关于配置端点的内容。我目前将其设置为单租户,因为它似乎只允许遵循此格式的帐户,employeesname@mycompany.com。mycompany.com是我们拥有的域。
这个应用程序将同时为多个用户服务,但我们只希望我们自己的员工有访问权限,没有访客或例外。
问:为什么我应该使用多租户,或者单租户可以吗?如果是单租户,我该如何配置端点?
我是3.1的新手,微软的示例项目是2.1 (我看到他们似乎在这里配置端点,但不确定如何将其更新到3.1)
发布于 2020-10-30 06:50:36
因此,在Startup.cs文件中的尝试之间来回移动之后
services.AddAuthentication().AddMicrosoftAccount(microsoftOptions => {
microsoftOptions.ClientId = Configuration["Authentication:Microsoft:ClientId"];
microsoftOptions.ClientSecret = Configuration["Authentication:Microsoft:ClientSecret"];
//microsoftOptions.CallbackPath = "/signin-microsoft";
});我接受了上面的建议。我改成了多租户,因为更多的限制页面将被手动授予,所以如果有人设法登录我们的网络,使用他们的个人MS帐户,这不会有太大不同
只需确保在您的布局文件(或任何剃刀视图)中使用它:
@if (User.Identity.IsAuthenticated)查看用户是否已正确进行身份验证
https://stackoverflow.com/questions/64599858
复制相似问题