Saya telah mencoba untuk membungkus kepala saya dengan kerangka kerja Identitas Inti ASP.NET yang baru.

Saya ingin dapat mengizinkan pelanggan untuk masuk menggunakan penyedia eksternal sehingga saya tidak perlu khawatir tentang penyimpanan kata sandi. Itu berfungsi jika saya menggunakan penyedia default: .AddDefaultIdentity<EntityUser>(), bersama dengan .AddAuthentication (dengan AddFacebook, AddGoogle, AddMicrosoftAccount).

Beberapa orang memiliki akun Google dan akun Facebook. Saya ingin mengizinkan pengguna untuk masuk ke akun mereka, dan kemudian menambahkan penyedia tambahan ke pengguna yang sama (selama email cocok).

Bagian Kerangka Identitas dari AspNetCore tampaknya mengontrol segalanya dengan ketat. Saya tahu cara mengganti tampilan, tetapi tidak tahu cara mengganti aliran kontrol. Bagaimana saya bisa mencelupkan logika saya sendiri ke dalam prosesnya untuk memaksa login, registrasi? Saya juga ingin meneruskan pengguna ke penyedia eksternal saat pengguna sudah masuk.

Yang saya butuhkan hanyalah arahan, mereka telah memisahkan begitu banyak kekhawatiran dengan AspNetCore baru yang mirip dengan bawang. Hal ini membuat sulit untuk mengetahui di mana apa yang Anda inginkan. Saya bahkan tidak tahu apa yang saya tidak tahu untuk memulai.

0
Allen Clark Copeland Jr 30 Maret 2019, 19:38

1 menjawab

Jawaban Terbaik

Ini sudah berfungsi seperti yang Anda inginkan, pengguna dapat menambahkan penyedia apa pun yang telah Anda konfigurasikan dari halaman di ~/Identity/Account/Manage/ExternalLogins

Anda dapat melihat rel kode sumber halaman pisau cukur ExternalLogins memiliki logika yang akan menampilkan opsi bagi pengguna untuk menambahkan autentikasi sosial ke akun mereka yang ada.

2
Joe Audette 30 Maret 2019, 18:04