2009-07-30 11 views
37

OAuth kullanan özel üyelik sağlayıcısı uygulanması için herhangi önerilen kaynaklar var mıdır? Amaç, kullanıcıların varolan oAuth kimlik bilgilerini kullanarak ASP.NET MVC uygulamasında oturum açmasını sağlamaktı. Kullanıcı kimliği doğrulandıktan sonra, yerleşik ASP.NET yetkilendirme özelliklerinden yararlanmak isterim.OAuth ASP.NET üyelik sağlayıcısı

Teşekkürler.

cevap

45

OAuth olduğunu.

OAuth belirteçleri aracılığıyla, yetkilendirme için yetki verme olup. Yaptığınız şeye bağlı olarak iki senaryodan da yararlanabilirsiniz:

  1. Uygulamanız, bir sağlayıcı tarafından barındırılan bazı kullanıcı verilerini kullanmak ister (twitter veya google). kısacası, kullanıcı giriş ve sağlayıcıya onların verilere erişim için başvurunuzu yetki kabul etmek gerekir ve kullanılabilir bir erişim belirteci verilecek - Hangi durumda uygulamanız bir tüketici olurdu Korunan kaynaklara erişim kazanmak. Alternatif
  2. , sen log-in vb sahip kullanıcılarla, bir uygulama Ve sağlamak istediğiniz (yani tedarikçisin) maruz kalmadan 3. parti uygulamalar (tüketiciler) için bazı kullanıcıların kısıtlı bilgiye erişim senin Bu hizmetlere kullanıcı kimlik bilgileri.

OAuth hakkında daha fazla bilgi için - OAuth.Net website adresine bakın. Şu anda .Net için 3 adet OAuth uygulaması bulunmaktadır.

DevDefined.OAuth

  • Madgex OAuth.Net
  • , gerçekten bir "OAuth" üyelik sağlayıcısı nasıl hayal bile edemiyorum - Gerçekten emniyete yönelik oluyor w hangi uymuyor - API'ler ve genellikle hedef, kişinin takvimi vs. onlara erişim eposta arşivlerini izin vermeden, bir kullanıcıları kitap verilerini ele sadece bir tüketici uygulaması erişim sağlayarak yani daha ayrıntılı bir düzeyde yetki aktarmaktır üyelik/rol tabanlı güvenlik modeli ile ell. Ben gerçekten aradığınızı tahmin ediyorum

    yani oturum Stackoverflow kendisi tanıtılmanızı şekilde OpenId olduğunu. Ben StackOverflow'daki OpenId case study here okuma öneririm ve muhtemelen Net için en iyi OpenID uygulaması DotNetOpenAuth projenin parçası (bu resmen DotNetOpenId, proje is here google kod sitenin adını) şu anda.

    +0

    Sadece bir yorumda bırakarak DotNetOpenAuth şimdi burada bulunabileceğini: i Bu yanıtla insanları ertelemeye düşünüyorum @bittercoder http://www.dotnetopenauth.net/ –

    +4

    ... Bu makaleye bakın . Çoğu zaman insanlar üçüncü taraf API'larının yetkilendirilmesi için oAuth kullanıyorlarsa da, bir SSO özel üyelik asp.net çözümünü örn. Yetkilendirme belirtecinin, asp.net kimlik doğrulama (çerez) belirteci olarak kullanıldığı Google Apps alanıdır. Böylece, Google API’ye sonraki geri aramalarda kullanılabilir. MVC uygulamasının google apps.alanımda apis çağırdığı tam olarak bu senaryo var. oAuth, Kimlik Doğrulama ve Yetkilendirme'dir. –

    +0

    Bu yanıt, şu anki haliyle mevcut olan OAuth 2'den önce oluşturuldu (3+ yıl önce!) - Bu noktada doğru olduğunu söylemeliyim. Bugünlerde dünyanın ters çevrildiğini düşünüyorum ve çoğu insan OpenID'den habersiz, OAuth'u bir kimlik doğrulama mekanizması olarak görüyor ve OAuth'un arkasındaki temel fikirlerin (API erişimi için yetkilendirilmiş kimlik doğrulama/yol) farkında değiller. – Bittercoder

    6

    Sana DotNetOpenAuth arıyor olabilir düşünüyorum. Ben kullanmadım, bu yüzden bir üyelik sağlayıcısı içeriyorsa Kesin olarak söyleyemem, ama yaptığı beklenebilir. Değilse, açık kaynak, bu yüzden yapmaya çalıştığınız şeylerle ilgili olarak size yardımcı olmalı. Ne aradığınızı emin değilim

    2

    rolleri vb

    yapmak size (webforms şablon ancak mvc için aynı şeyi yapabilirsiniz) OAuth kullanarak giriş yaptıktan sonra evrensel sağlayıcıları uzanan göstermek asp.net için varsayılan proje şablonları vardır bir göz https://github.com/rustd/ASPNETTemplates almalı Eğer bu soru haberi beri