Tôi có một ứng dụng đặt tên là 'Apple' được đăng ký với Azure AD có quyền được ủy quyền trên ứng dụng Azure Management API. Khi được yêu cầu cho ứng dụng này, nó tạo ra nguồn tài nguyên cũ. lưu trữ tài khoản tự động và điều này hoạt động tốt.Xác thực Azure AD giữa các ứng dụng
Tôi có một ứng dụng khác là ứng dụng MVC và nó cũng được đăng ký với cùng một đối tượng thuê AD. Ứng dụng thứ hai sử dụng mã sau để truy xuất mã thông báo truy cập:
var clientCredentials = new ClientCredential(ConfigurationManager.AppSettings["AD_ClientID"], ConfigurationManager.AppSettings["AD_Client_AccessKey"]);
var authContext = new AuthenticationContext(string.Format(ConfigurationManager.AppSettings["AD_Tenant_Login_Url"], ConfigurationManager.AppSettings["AD_Tenant_Id"]));
var result = authContext.AcquireTokenAsync(ConfigurationManager.AppSettings["AD_Resource"], clientCredentials);
if (result == null)
{
throw new InvalidOperationException("Could not get the token");
}
return result.Result;
Kết quả là mã thông báo truy cập có các thuộc tính khác nhau. Bây giờ là ứng dụng thứ hai, truy xuất mã thông báo truy cập với quyền truy cập vào tài nguyên táo, sau đó nó sẽ chuyển đến ứng dụng Apple trong tiêu đề ủy quyền.
Authorization:bearer TokenString
Ứng dụng Apple có thuộc tính Authorize được thêm vào bộ điều khiển. Ứng dụng này được cấu hình với Owin với ứng dụng OAuth với đoạn mã sau
public void ConfigureAuth(IAppBuilder app)
{
app.UseWindowsAzureActiveDirectoryBearerAuthentication(
new WindowsAzureActiveDirectoryBearerAuthenticationOptions
{
Tenant = ConfigurationManager.AppSettings["ida:Tenant"],
TokenValidationParameters = new TokenValidationParameters
{
ValidAudience = ConfigurationManager.AppSettings["ida:Audience"]
},
});
}
Xin lưu ý rằng các thẻ truy cập được lấy từ ứng dụng thứ hai sử dụng AppID riêng của mình và bí mật quan trọng; trong khi ứng dụng khác (Apple) sử dụng AppId và khóa bí mật của riêng nó để xác thực mã thông báo.
Vì vậy, vấn đề của tôi là, ứng dụng APPLE luôn trả về 401 không cho phép đang
trong khi tôi không nhận được bất kỳ câu trả lời nào, tôi có nên thay đổi thẻ, khuyên không? –
Tôi đang theo dõi chủ đề này từ [đây] (https://social.msdn.microsoft.com/Forums/azure/en-US/af1f1ddc-649b-4b35-9e16-ced582380e6c/azure-ad-authentication-between-applications ? forum = WindowsAzureAD), vui lòng cho tôi biết nếu bạn có bất kỳ sự cố nào. –
@Fei Xue, cảm ơn bạn đã bắt tôi ... Tôi đã trả lời câu trả lời của bạn ... –