2012-12-11 64 views
2

我的理解是,反伪造令牌概念是作为html的一部分发送的(就像在隐藏表单域中一样),但如果移动客户端应用程序想要使用API​​登录并注册等...?我不知道该怎么做,我完全禁用伪造令牌吗?保留它会很好,因为它也是一个使用API​​的网站。ValidateAntiForgeryToken仅适用于仅使用REST API的客户端

具体而言,我使用的是MVC 4,我正在查看默认模板附带的AccountController ...它在Login上有一个ValidateAntiForgeryToken属性...?它是否假设您将始终通过html网页形式登录?

回答

1

反伪造令牌的概念是嵌入一个隐藏的字段与框架(POST请求)生成的值或附加到URL地址(GET请求)。该值然后在服务器端进行验证。

默认模板假设您将通过html网页使用登录。如果你想创建一个使用API​​的应用程序,你必须设置自己的授权机制。如果您的应用在其移动版本中使用您的在线网站,则无需更改任何内容。

+1

好的。我希望有一些方法可以为浏览器客户端保留反伪造令牌,同时为应用客户端提供其他功能。也许是一个API来获取应用程序的伪造令牌,所以它可以在后续调用登录等时使用它。主要思想是Web客户端使用与应用程序客户端相同的API,并且API始终检查Web的请求令牌客户。 – JayPrime2012