Sebagai contoh:
- Kami menjalankan dua situs komunitas di dua domain (panggil mereka
example.comdanexample.net). - Kami ingin dapat memperluasnya ke lebih banyak domain nanti.
- Kami ingin mengizinkan beberapa jenis login (OpenID, Facebook, Twitter, nama pengguna / kata sandi standar).
- Kami ingin seseorang yang masuk ke satu situs secara otomatis masuk ke situs lain.
Dengan kata lain, ini sedikit mirip dengan jaringan StackExchange.
Dalam hal ini, apakah rencana ini akan berhasil?
- Atur
example.comdanexample.net(dan tambahan yang lebih baru) sebagai pihak yang mengandalkan OpenID, yang hanya menerima login OpenIDid.example.org. - Atur
example.comdanexample.netlakukan permintaan balasan-langsung OpenID saat pertama kali Anda mengunjunginya, sehingga jika Anda masuk,id.example.orgAnda langsung dan secara otomatis masuk ke situs yang Anda kunjungi. Mereka harus mengatur cookie jika Anda tidak masuk, untuk menyimpannya melakukan ini pada setiap permintaan halaman. - Diatur
id.example.orgsebagai penyedia dan konsumen OpenID. Ini juga harus mengkonsumsi Facebook dan penyedia identitas lainnya, dan memungkinkan akses nama pengguna / kata sandi standar. (Beberapa metode login dapat dilampirkan ke satu akun.) - Saat keluar, cukup ubah token otentikasi dalam database. Pengguna masih akan memiliki cookie, tetapi mereka tidak akan berarti. Dengan demikian pengguna dapat keluar dari semua situs secara bersamaan. Beberapa token otentikasi dapat disimpan terhadap satu pengguna pada satu waktu (dan harus berbeda untuk setiap situs), sehingga pengguna dapat keluar di satu browser tetapi masih masuk di yang lain. Keluar selalu keluar untuk semua situs.
Satu-satunya masalah yang saya dapat lihat di atas adalah ini:
- Seseorang mengunjungi
example.com. Cookie "tidak masuk" ditetapkan. - Zie kemudian melanjutkan
example.net. Dito. - Zie kemudian masuk, dan melanjutkan menjelajah
example.net. - Zie kemudian kembali ke
example.comdan, karena cookie "tidak masuk", tidak dicentangid.example.orgdan karenanya tidak masuk. - Namun, begitu zie mengklik tombol "masuk", zie masuk.
Saya rasa ini bukan masalah besar.
Secara keseluruhan, saya pikir ini adalah sistem yang cukup bagus. Saya hanya ingin melihatnya diulas. Apakah ada masalah yang belum saya perkirakan? Apakah itu buggy atau lambat? StackExchange menggunakan metode yang sangat berbeda. Saya kira mereka punya alasan bagus untuk itu?