Tôi đã định cấu hình nhiều nhà cung cấp bên ngoài cho Azure AD B2C. Ngay bây giờ, người dùng buộc phải chọn nhà cung cấp mà họ muốn xác thực. Làm cách nào để định cấu hình hệ thống để người dùng có thể nhập địa chỉ email và hệ thống có thể tự động chuyển tiếp người dùng đến IDP phù hợp dựa trên địa chỉ email của họ. Tương tự như cách điểm cuối xác thực phổ biến hoạt động cho các miền khác nhau trong Azure AD work và tài khoản sinh viên.Làm cách nào để triển khai một giao diện đăng nhập duy nhất cho nhiều nhà cung cấp trong Azure AD B2C
Trả lời
Azure AD B2C không cung cấp chức năng khám phá IDP tự động nào. Bạn có thể yêu cầu tính năng này trong Azure AD B2C feedback forum
Bạn có thể thực hiện những điều khoản này bằng cách tận dụng các tính năng domain_hint
tuy nhiên điều này sẽ yêu cầu bạn giữ bảng riêng của bạn, nơi bạn theo dõi các mối quan hệ tên-to-IDP. Sau đó bạn sẽ xây dựng trang của riêng mình nơi người dùng có thể nhập tên người dùng của mình và dựa trên bảng ánh xạ này rồi chuyển hướng đến B2C với gợi ý tên miền tương ứng (ví dụ: domain_hint=facebook.com
)
Điều này tương tự như cách xác thực tài khoản Microsoft Visual Studio hiện xác định xem email bạn đã nhập là tài khoản cá nhân hay tài khoản doanh nghiệp. Bạn sẽ nhận thấy rằng khi bạn nhập tên người dùng/email của bạn, nó sẽ suy nghĩ một chút và sau đó chuyển hướng bạn đến phương thức xác thực thích hợp. – Pytry
Tôi thích ý tưởng @Saca được đề xuất, nhưng đây cũng là một tùy chọn khác để xem xét.
Có trang "đích" và cho phép người dùng quyết định cách đăng nhập, tương tự như cách một số trang web sẽ có liên kết "đăng nhập bằng facebook" và "đăng nhập bằng google".
Tôi có thể đặt giá trị nonce để đảm bảo rằng họ không thể đăng nhập mà không cần truy cập trang đích. Đặt cookie để bạn có thể nhớ tùy chọn người dùng cho thiết bị/trình duyệt đó và cũng để lại tùy chọn cho họ chọn phương thức xác thực/đăng nhập khác.
Tùy chọn của bạn là tốt khi bạn có một ứng dụng xã hội mà không ai quan tâm đến ai sử dụng nó. Bây giờ hãy cho tôi biết cách thức này sẽ hoạt động nếu bạn đang cung cấp dịch vụ cho hai doanh nghiệp cạnh tranh (và cả hai cung cấp dịch vụ IDP) và họ phải đăng nhập mặc dù cùng một trang. Họ có thể thấy rằng họ đều là khách hàng của bạn. Đó là một kịch bản làm tổn thương một doanh nghiệp. Tôi có thể tưởng tượng 100 người khác mà người dùng từ một tổ chức không nên biết rằng bạn cung cấp dịch vụ cho một tổ chức khác. – Juxhin
Tôi không chắc chắn cách tiếp cận này là khác nhau từ những gì B2C đã cung cấp ra khỏi hộp mặc dù. B2C cung cấp cho bạn một trang với các nút cho mỗi IDP ... – Saca
@saca Sự khác biệt chính là nó cho phép bạn đặt giá trị nonce cũng như kiểm soát chính sách mà người dùng sẽ sử dụng để đăng nhập. – Pytry
- 1. API ASP.NET 5 - Azure AD B2C
- 2. Cách tốt nhất để triển khai Đăng nhập một lần với tất cả các nhà cung cấp chính?
- 3. Nhà cung cấp thành viên ASP.NET - Đăng nhập một lần
- 4. Sự cố với Azure AD B2C oauth/OpenIdConnect
- 5. node.js Triển khai nhà cung cấp OpenID
- 6. Tài khoản duy nhất cho nhiều nhà cung cấp OAuth (Facebook, Google, Windows Live)?
- 7. cách tốt nhất để cung cấp một AutoMappingOverride cho một giao diện trong automapper fluentnhibernate
- 8. Azure AD B2C tích hợp với tài khoản doanh nghiệp (Azure?)
- 9. nhà cung cấp dịch vụ quản lý tài nguyên Azure?
- 10. Làm thế nào để đăng ký nhiều triển khai của cùng một giao diện trong Asp.Net Core?
- 11. Nhà cung cấp tự động trong triển khai web (msdeploy.exe)
- 12. cung cấp dịch vụ giao diện mà không cung cấp
- 13. Làm cách nào để triển khai giao diện trong Ada?
- 14. Triển khai Nhà cung cấp OAuth 2.0 sử dụng Coldfusion
- 15. TinyIoC - Nhiều triển khai giao diện
- 16. Làm cách nào để cung cấp cho RichTextBox một giao diện phẳng?
- 17. Cố gắng triển khai Azure Active Directory B2C cho tôi lỗi 404
- 18. Kiểm soát đăng nhập và nhà cung cấp tư cách thành viên tùy chỉnh
- 19. Thư viện MSAL hoặc ADAL để sử dụng với Azure AD B2C và Xamarin
- 20. Vấn đề CORS khi nhận được mã thông báo trong Azure AD B2C (Dòng lệnh Implict)
- 21. Nhận dạng ASP.NET - Triển khai tùy chỉnh với nhiều nhà cung cấp
- 22. Làm cách nào để triển khai giao diện Iterable?
- 23. Cách triển khai nhà cung cấp NoSQL Identity cho ASP.NET 5 MVC 6
- 24. Làm thế nào để cung cấp cho infixities cho các nhà khai thác trong lambda?
- 25. Làm cách nào để thay đổi url Nhà cung cấp triển khai trong tệp kê khai của ClickOnce?
- 26. Laravel: Triển khai và thư mục nhà cung cấp
- 27. Cách triển khai nhà cung cấp bộ nhớ cache tùy chỉnh với ASP.NET MVC
- 28. Giao diện triển khai C#
- 29. Nhà cung cấp thành viên nào triển khai người dùng được lưu trữ trong web.config?
- 30. Mùa xuân Nhiều triển khai cùng một giao diện
Ví dụ về nhà cung cấp bên ngoài là gì? Họ là những nhà cung cấp nhận dạng người tiêu dùng như Facebook, v.v ...? Hay chúng bao gồm các nhà cung cấp nhận dạng doanh nghiệp? –
@ChrisPadgett chủ yếu là các nhà cung cấp doanh nghiệp – Juxhin