2011-10-12 41 views
10

Genel olarak DotNetOpenAuth ve OAuth ile aşina olduğum için, ancak Web API geliştirmesi açısından, aşağıdaki gibi bir web hizmetini kilitlemenin en iyi yolu nedir? kriterleri:Kimlik doğrulamasını işlemenin en iyi yolu .NET WCF Web API'sı

  • uygulama kolaylığı
  • açıkça standart tabanlı olsun ya da olmasın son kullanıcı dönük platformlarda (iOS, Android, Win Telefon, Flex ...)
  • ile
  • çalışabilirlik/uyumluluk (gibi OAuth örneğin,

Teşekkürler!

cevap

5

buraya bir göz atın: OAuth 2.0 in Web API

WebApiContrib projesi içinde orada yalındır Temel Kimlik Doğrulama örnekleri de vardır ama SSL olmadan kullanılmamalıdır.

+0

Bunu kontrol etmek! Teşekkürler. –

+4

Tamam, bu yardımcı olur, ama işte benim sorum: sağlanan örnekte "Facebook" olarak nasıl davranırım? Makale, harici bir OAuth kredisi sağlayıcısı kullanmak istediğinizi varsayar. Hem kredi sağlayıcısını hem de web servisini burada oluşturmak istiyorum. –

0

Internet'te kimlik doğrulamayı işlemek için bir kaç tane wcf web api uygulaması vardır. Ben http://misaxionsoftware.wordpress.com/2011/07/29/secure-restful-web-service-by-wcf-web-api-no-https-seriously/

Not @ yanı birini yapmış: Kod Önizleme 3 dayanmaktadır, bazı sınıf adı uygulanması fikri SSL'siz güvenli iletişimi sağlamak olduğunu Önizleme 5.

değişti.

Yapılandırması kolaydır. Tüm işler mesaj işleyicide yapıldığı için işlev hizmetinize şeffaftır. Hizmet yönteminizde kimlik doğrulama işlevini çağırmaktan rahatsız olmazsınız.

RSA şifrelemesinin desteklendiği uç nokta ile uyumludur.

Standartlar tabanlı, hmm ... Standartlar

3

DotNetOpenAuth .zip indir OAuth tarafından korunan bir örnek WCF hizmeti içeren ... vakadan vakaya değişir.

+0

Numunelerini yeni indirdim. Pek çok örnek için minnettarım, ama tüm proje isimleri ve terminolojisiyle biraz kafam karıştı. Bilinen bir openid sağlayıcısı (google gibi) kullanmak yerine Oauth2'yi bir oauth jetonu sağladığını gösteren belirli bir örnek var mı? – Adam

+1

'OAuthResourceServer' örneğinde yetkilendirme için bir OAuth 2 erişim belirteci kullanılıyor. "OAuthAuthorizationServer" örneği, bu erişim belirteçlerinin yayınlanmasını gösterir. Yetkilendirme sunucusunun, kullanıcının oturum açmak için OpenID kullanması OAuth akışına ortogonaldir ve istediğiniz herhangi bir şeyle değiştirebilirsiniz. –

İlgili konular