首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >安全WebAPi,Windows和MVC网站

安全WebAPi,Windows和MVC网站
EN

Stack Overflow用户
提问于 2013-10-24 15:36:22
回答 1查看 1.3K关注 0票数 1

我正在开发一个Windows 8应用程序和一个ASP.NET MVC 5网站,每个网站都将访问一个WebApi服务(WebApi 2)。该网站和WebApi基于VS2013 RTM提供的模板,并使用项目模板中可用的“个人帐户”身份验证选项进行设置。

模板设置WebApi项目以启用承载令牌、应用程序cookie和外部登录cookie等,而公开的操作对它们具有授权属性。

我的两个问题是:

1)如果我使用在WP8应用程序上使用Google/Twitter对用户进行身份验证,如何才能获得WebApi以允许经过身份验证的用户访问这些操作?

2)与#1相同,但从ASP.NET MVC 5网站的角度看?

在我看来,我所看到的似乎每个请求都需要一个承载令牌。要获得此令牌,我是否正确地认为,我将访问WebApi公开的“令牌”端点以获取令牌,并且需要在每个请求中传递该令牌?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-24 20:46:17

对于1,可以使用azure移动服务WP8 sdk启动浏览器控件,从外部站点授权用户。代码应该与windows商店应用程序中的WebAuthenticationBroker类似。

对于2,带有单个auth的web模板使用隐式流 2.0将应用程序访问令牌返回给客户端。在MVC应用程序中,您可以将用户重定向到

代码语言:javascript
运行
复制
http://<web api domain address>/api/account/externallogin?provider=Facebook&redirect_uri=<your callback url in MVC app>&response_type=token&client_id=mvc. 

在MVC视图中,您需要使用javascript从url片段获取访问令牌,它不会被发送到服务器。在您的web服务器中,您需要在ApplicationOAuthProvider中允许客户机id和回调url。

对于1和2,您不使用令牌端点来获取令牌。您正在使用授权端点通过隐式流获取令牌。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19570325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档