у нас есть веб-приложение, встроенное в c # и Angularjs, и конфигурация для использования проверки подлинности Windows, недавно я удалил проверку подлинности Windows и добавил единый вход (Azure AD), проблема, когда я ввел свои учетные данные и запись в журнал, никогда не отнимает у меняк веб-приложению это похоже на цикл при попытке входа в систему, вот так выглядит мой журнал.
2018-05-10 16:28:05 :: 1 POST / portal - 443 - ::1 Mozilla / 5.0 + (Windows + NT + 10.0; + Win64; + x64; + rv: 59.0) + Gecko / 20100101 + Firefox / 59.0 https://login.microsoftonline.com/f8b6a2d7-0364-40ce-943e-eb02d6c35deb/oauth2/authorize?client_id=359xxxx2-877e-xxx-9538-9e_xxxxxxxxxxxxxxxxxxxx
2018-05-10 16:28:05:: 1 GET / portal - 80 - :: 1 Mozilla / 5.0 + (Windows + NT + 10.0; + Win64; + x64; + rv: 59.0) + Gecko / 20100101 + Firefox / 59.0 - 302 0 0 2
2018-05-10 16:28:35 :: 1 POST / portal - 443 - :: 1 Mozilla / 5.0 + (Windows + NT + 10.0; + Win64; + x64; + rv: 59.0) + Gecko /20100101 + Firefox / 59,0 https://login.microsoftonline.com/f8b6axce-943e-eb02dxdeb/oauth2/authx272-877e-4xx4-9538-9e63a5a810d32Exxxxxxx.40306.1x54 302 0 64 29x4
2018-05-10 16:36:15 :: 1 GET / portal - 80 - :: 1 Mozilla / 5.0 + (Windows +NT + 10.0; + Win64; + x64) + AppleWebKit / 537.36 + (KHTML, + like + Gecko) + Chrome / 66.0.3359.139 + Safari / 537.36 - 302 0 0 2
2018-05-10 16:37:36 :: 1 POST / portal - 443 - :: 1 Mozilla / 5.0 + (Windows + NT + 10.0; + Win64; + x64) + AppleWebKit / 537.36 + (KHTML, + like + Gecko)+ Chrome / 66.0.3359.139 + Safari / 537.36 https://login.microsoftonline.com/kmsi 302 0 64 43715
И так далее и далее!
my StartUp.Auth.cs
public void ConfigureAuth(IAppBuilder app)
{
ApplicationDbContext db = new ApplicationDbContext();
app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);
app.UseCookieAuthentication(new CookieAuthenticationOptions());
app.UseOpenIdConnectAuthentication(
new OpenIdConnectAuthenticationOptions
{
ClientId = clientId,
Authority = Authority,
PostLogoutRedirectUri = postLogoutRedirectUri,
Notifications = new OpenIdConnectAuthenticationNotifications()
{
// If there is a code in the OpenID Connect response, redeem it for an access token and refresh token, and store those away.
AuthorizationCodeReceived = (context) =>
{
var code = context.Code;
ClientCredential credential = new ClientCredential(clientId, appKey);
string signedInUserID = context.AuthenticationTicket.Identity.FindFirst(ClaimTypes.NameIdentifier).Value;
AuthenticationContext authContext = new AuthenticationContext(Authority, new ADALTokenCache(signedInUserID));
return authContext.AcquireTokenByAuthorizationCodeAsync(
code, new Uri(HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Path)), credential, graphResourceId);
}
}
Любое предложение, что может происходить здесь