Прежде всего вы должны забыть о настройке полномочий в web.config.
Затем вы должны убедиться, что вы присваиваете атрибут Authorize
каждому контроллеру (для уверенности используйте подход глобального фильтра).
Ссылка Microsoft.Owin.Security.OpenIdConnect
и все его зависимости.
Добавьте класс запуска Owin с помощью метода public void Configuration(IAppBuilder app)
.Как указано ниже:
using Microsoft.Owin;
using Microsoft.Owin.Security.Cookies;
using Microsoft.Owin.Security.OpenIdConnect;
using System.Collections.Generic;
using System.IdentityModel.Tokens;
[assembly: OwinStartup(typeof(MVC_OWIN_Client.Startup))]
namespace MVC_OWIN_Client
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
JwtSecurityTokenHandler.InboundClaimTypeMap = new Dictionary<string, string>();
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "Cookies"
});
app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
{
ClientId = <Your app instance' identifier, must be registered in IdP>,
Authority = <your IdP>,
RedirectUri = <base address of your app as registered in IdP>,
ResponseType = "id_token",
Scope = "openid email",
UseTokenLifetime = false,
SignInAsAuthenticationType = "Cookies",
});
}
}
}
Используйте ключевые слова "Owin", "Katana" и "Identityserver3" для дальнейшего поиска.