Tôi đã thiết lập xác thực OpenID Connect trong ứng dụng ASP.NET MVC của mình bằng cách sử dụng OWIN Middleware.Kết nối OpenID của Azure qua OWIN Middleware dẫn đến Vòng chuyển hướng vô hạn
Khi đầu ra Fiddler này hiển thị, sau khi đăng nhập thành công qua Azure OpenID Connect, trình duyệt liên tục lặp lại qua lại giữa site.azurewebsites.net và login.windows.net của tôi.
tôi đã đảm bảo sau khóa được phù hợp một cách chính xác thông tin Azure AD
<add key="ida:AADInstance" value="https://login.windows.net/{0}" />
<add key="ida:Tenant" value="******.onmicrosoft.com" />
<add key="ida:ClientId" value="*******" />
<add key="ida:PostLogoutRedirectUri" value="*********" />
Và mã Start.cs của tôi là như sau
private static string clientId = ConfigurationManager.AppSettings["ida:ClientId"];
private static string aadInstance = ConfigurationManager.AppSettings["ida:AADInstance"];
private static string tenant = ConfigurationManager.AppSettings["ida:Tenant"];
private static string postLogoutRedirectUri = ConfigurationManager.AppSettings["ida:PostLogoutRedirectUri"];
private string authority = String.Format(CultureInfo.InvariantCulture, aadInstance, tenant);
IAuthorizationService authorizationService = new AuthorizationService();
public void ConfigureAuth(IAppBuilder app)
{
app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);
app.UseCookieAuthentication(new CookieAuthenticationOptions()
{
ExpireTimeSpan =TimeSpan.FromMinutes(15)
});
app.UseOpenIdConnectAuthentication(
new OpenIdConnectAuthenticationOptions
{
ClientId = clientId,
Authority = authority,
PostLogoutRedirectUri = postLogoutRedirectUri}
});
}
}
Không chắc những gì đang gây ra điều này liên tục chuyển hướng. Tôi đã đặt thuộc tính [Authorize]
trên Bộ điều khiển MVC nơi Url chuyển hướng đăng bài xác thực.
ban đầu bạn chỉ truy cập trang web trên http? không phải https? tôi có cùng một kịch bản mà nếu tôi nhấn vào trang web chỉ với http, tôi được chuyển hướng để đăng nhập, được xác thực, chuyển hướng trở lại và kết thúc trong một vòng lặp. đã kết thúc buộc https. – JuneT
Mọi thứ đang được truy cập trên HTTPS. – puri
Bạn đã bao giờ tìm ra giải pháp cho vấn đề của mình chưa? Tôi gặp một vấn đề tương tự. Câu trả lời dưới đây không giúp được gì. – dave