Hiện tại, tôi đã tạo một ứng dụng web 4 máy chủ Nhận dạng với các nhà cung cấp đăng nhập bên ngoài với các bí mật và id khách hàng mặc định. Nhưng mục tiêu của tôi là đăng ký các nhà cung cấp xác thực như Azure, Google, Facebook dựa trên người thuê.
Tôi đã sử dụng lắp ráp đa thuê nhà SaasKit , ở đây tôi đã dùng thử phần mềm trung gian app.usepertenant () . Nhưng phương thức UseGoogleAuthentication () đã lỗi thời, vì vậy tôi không thể đạt được xác thực nhiều bên thuê bằng cách sử dụng phần mềm trung gian hữu dụng này.
Mã hiện tại,
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddMicrosoftAccount(option =>
{
option.ClientId = "clientid";
option.ClientSecret = "clientsecret";
option.SaveTokens = true;
});
Mã dự kiến là như dưới đây,
var authentication = services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme);
if (tenant.hasMicrosoft)
{
authentication.AddMicrosoftAccount(option =>
{
option.ClientId = "clientid";
option.ClientSecret = "clientsecret";
option.SaveTokens = true;
});
}
if (tenant.hasGoogle)
{
authentication.AddGoogle(option =>
{
option.ClientId = "clientid";
option.ClientSecret = "clientsecret";
option.SaveTokens = true;
});
}
authentication.AddCookie( options =>
{
options.SlidingExpiration = true;
options.ExpireTimeSpan = new TimeSpan(7, 0, 0, 0);
});