Azure Mobile Uygulamasına Nancy ekleyebileceğimi görüyorum. http://www.strathweb.com/2014/02/running-owin-pipeline-new-net-azure-mobile-services/ ancak Nancy için kimlik doğrulamayı nasıl ekleyebilirim? Buradaki amaç, aynı sunucuyu kullanarak hem bir web uygulamasına hem de bir mobil uygulamaya sahip olmaktır. Nancy'yi doğrulamak için Azure Mobile Uygulamasını Kullanma
Hedef: Nancy sayfası kimlik doğrulama gerektiriyorsa, ~/.auth/login/aad öğesine atlayın (örneğin), ardından kaynak sayfaya geri dönün.
- düzenlendi yeni Azure Mobile App ASP.NET uygulaması
- Eklendi Nancy
Kaldır varsayılan MobileAppConfig ve oluşturma
new MobileAppConfiguration() .MapApiControllers() .AddTables( new MobileAppTableConfiguration() .MapTableControllers() .AddEntityFramework() ) .AddPushNotifications() .MapLegacyCrossDomainController() .ApplyTo(config);
ile değiştirin: Ben
IndexModule ve Nancy'nin
çalışmasını onaylayınpublic IndexModule() { Get["/"] = _ => "Hello"; }
bir AdminModule oluşturma RequiresAuthentication yüklemeden Nancy.Authentication.Forms Muhtemelen
public AdminModule() : base("admin") { Get["/"] = _ => { this.RequiresAuthentication(); return "This is admin"; }; }
- yapılacak en yanlış şey sonra gelir, ama ben
protected override void ConfigureRequestContainer(TinyIoCContainer container, NancyContext context) { base.ConfigureRequestContainer(container, context); container.Register<IUserMapper, UserMapper>(); } protected override void RequestStartup(TinyIoCContainer container, IPipelines pipelines, NancyContext context) { base.RequestStartup(container, pipelines, context); var formsAuthConfig = new FormsAuthenticationConfiguration { RedirectUrl = "~/.auth/login/aad", UserMapper = container.Resolve<IUserMapper>(), }; FormsAuthentication.Enable(pipelines, formsAuthConfig); }
Bu gönderir var kullanıcı, doğru auth sayfasına, ancak zumo döndürdüğünde (1), belirteçle bir geri arama döndürür ve (2) bir bağlantı verir. returnUrl yerine ana site olan "web sitesi" ve (3) hala gerçekten çalışmıyor.
Güncelleştirme. Görünüşe göre Nancy.Forms.Authentication bunun bir çıkmazıdır. Owin.Security'den UseCookieAuthentication
kullanabilir miyim?
Update2. Nancy.Forms.Authentication'tan kurtuldum. Zumo, kimlik doğrulama işlemini tamamladığında, owin server.user aslında ayarlanmış gibi görünüyor.
( ) Giriş ve yönlendirme nasıl tetiklenir, ancak başka bir sorudur.
Azure'de
yılında ayarını kullanarak girişe zorlamak başardı Ve şaşırtıcı bu da yönlendirme ilgilenir. SignalR/Zumo tablolarını nasıl etkilediğinden emin değilsiniz, ancak umarız ki, başlık için kontrol edip, bunlara giriş yapmaya zorlayamazsınız.
Tatlı, teşekkürler Adrian! – tofutim
Adrian, Nancy.Authentication.Forms kullanmayı denedim ama zumo .auth girişini kullanarak. Bununla birlikte, zumo, tam çalışmayan yanı sıra "returnUrl" ye saygı göstermiyor. – tofutim
İlginç - başka bir yere işaret etmekten nefret edersiniz, ancak bunu Azure Forumları'na (tercihen basit bir repo ile bağlantı) göndermelisiniz: https://social.msdn.microsoft.com/forums/en-US/home?forum = windowsazurewebsitespreview & filter = alltypes & sort = lastpostdesc - bu daha sonra uygun kişiler tarafından görülecektir. Ne yazık ki, bu konuda bir sorun bildirmek için bir GitHub repo yok. –