8

REST hizmetlerim ve mobil uygulamam için bahar sosyalini kullanmaya çalışıyorum.Mobile yayına hazır ol sosyal

En iyi yaklaşımın ne olduğunu merak ediyorum.

Ben linkedin kullanmayı planlıyorum, benim mobil uygulamasında içine google kullanıcı adı ve şifre doğrulaması. Bu sosyal giriş, veritabanımdaki kullanıcılara bağlı olmalıdır.

Yaylım uygulamam, bir JWT belirteci ile güvence altına alınması gereken bir API işlevi görecektir. Mobil uygulama, daha sonra API'yi kullanmak için bu JWT belirtecini kullanır.

Cep telefonumda, Linkedin, facebook veya şifre ile giriş yapma/oturum açma olanağına sahip olmak istiyorum.

Bildiğim kadarıyla mobil anlaşılır gibi https://spring.io/guides/tutorials/spring-boot-oauth2/

açıklanan farklı bir oauth akışını gerektirir belirtildiği gibi akış "Kod Değişim için Kanıtı Key" Gerekli benziyor: https://auth0.com/docs/api-auth/grant/authorization-code-pkce

Bu doğru mu? Bunu bahar sosyaliyle en iyi şekilde nasıl yapacağınıza ve bahar sosyal desteğinin bu kullanım durumunu desteklediğine dair hiçbir bilgi bulamadım.

Birisi bana doğru yönde işaret edebilir mi? Sadece mobil uygulamalarla değil, tek bir sayfa uygulamasıyla nasıl yapılacağını öğrendim. Şimdiden çok teşekkürler!

cevap

1

olası bir yolu mobil uygulaması bir Yetkilendirme kodunu almasına SSO yapmak LinkedIn veya Google'ın SDK kullanan

  1. olurdu.
  2. Mobil uygulama, oauth servisinden kullanıcı ayrıntılarını (ör. E-posta) almak için kullanan arka uç hizmetine geçirir.
  3. Arka uç hizmeti, kullanıcı ayrıntıları hakkında ek çalışma yapabilir (örneğin, mevcut kullanıcılarla bağlantı).
  4. Arka uç hizmeti, SSO'yu sonlandıran mobil uygulamaya bir JWT jetonu döndürür.

SSO, kullanıcıları bağlamanız için bir e-posta adresi döndürebilmelidir. Bazen izin için açık bir şekilde başvurmanız gerekir (hangi Facebook gerektirir).

Bu yaklaşımın temel noktası, artık SSO sağlayıcısının SDK'sı kullanılarak mobil uygulamada işlendiğinden, arka uç hizmetlerinde OAuth2 kitaplığının tamamen kullanılmasını engellemesidir. Düzenlenen Mobile SSO Flow

======== :

akış aşağıdaki çizimde özetlenmiştir

Biz bir mobil uygulaması ile Facebook SSO yapmak için bu yaklaşım kullandık ve çok çalıştı iyi. Mobil uygulama iOS'ta ve arka uç hizmeti Spring Boot'daydı.

Tartışma karşılandı.

+0

Bu gönderide yanıtladığınızdan beri bir süredir olduğunu biliyorum, ancak mümkünse, çözümünüzü nasıl uygulayacağınızla ilgili daha fazla ayrıntı verebilir misiniz? –