我看到,我可以添加南希到我的Azure移动应用程序。http://www.strathweb.com/2014/02/running-owin-pipeline-new-net-azure-mobile-services/,但是我如何为南希添加身份验证呢?这里的目标是能够同时使用同一台服务器的web应用程序和移动应用程序。
:如果Nancy需要身份验证,跳到~/..auth/(例如),然后返回到原始页面。
我所处的:
这会将用户发送到右侧的auth页面,但是当zumo返回它时,(1)返回一个带有令牌的回调,(2)给出一个指向“网站”的链接,该网站是主站点,而不是returnUrl,(3)仍然不能工作。
更新。看起来Nancy.Forms.Authentication在这方面是个死胡同。我可以使用来自UseCookieAuthentication的Owin.Security吗?
Update2.我摆脱了Nancy.Forms.Authentication。看起来,当Zumo完成身份验证时,实际上已经设置了owin server.user。
protected override void ApplicationStartup(TinyIoCContainer container, IPipelines pipelines)
{
base.ApplicationStartup(container, pipelines);
Csrf.Enable(pipelines);
pipelines.BeforeRequest.AddItemToStartOfPipeline(FlowPrincipal);
}
private Response FlowPrincipal(NancyContext context)
{
var env = Get<IDictionary<string, object>>(context.Items, NancyMiddleware.RequestEnvironmentKey);
if (env != null)
{
var principal = Get<IPrincipal>(env, "server.User") as ClaimsPrincipal;
if (principal != null)
{
context.CurrentUser = new ClaimsPrincipalUserIdentity(principal);
}
}
return null;
}将给有效的可用用户。但是,如何触发登录和重定向是另一个问题。
Update3. i能够强制使用Azure中的设置进行登录。

令人惊讶的是,这也解决了重定向问题。不确定它如何影响SignalR/Zumo表,但希望它能够检查头部,而不强制登录这些表。
发布于 2017-03-06 18:44:45
您所引用的博客文章是针对Azure Mobile服务的,而不是Azure Mobile应用程序。
看看我书的第六章- http://aka.ms/zumobook。它显式地向您展示了如何处理各种平台的应用程序服务身份验证。Nancy并不是其中之一,但是MVC版本应该可以帮助您。
https://stackoverflow.com/questions/42590132
复制相似问题