如何使用NANCY和RESTsharp在.NET的REST调用中实现安全性?

如何使用NANCY和RESTsharp在.NET的REST调用中实现安全性?,rest,security,restsharp,nancy,Rest,Security,Restsharp,Nancy,如何向我的REST应用程序添加安全层,我同时控制服务器和客户端, 我使用的是服务器和客户端 如果REST支持是无状态的,我很难理解如何使调用安全 谢谢克里斯蒂安的评论可能足以满足您的需要。它展示了如何使用Nancy外接程序进行Basic或FormsAuth,并且RESTSharp完全支持Basic auth 我已经在工作中构建了一个Nancy驱动的RESTAPI很长一段时间了,我们使用了RESTSharp和普通HTML+JS作为客户端,并选择实现我们自己的基于会话的身份验证(部分原因是我们实现时

如何向我的REST应用程序添加安全层,我同时控制服务器和客户端, 我使用的是服务器和客户端

如果REST支持是无状态的,我很难理解如何使调用安全


谢谢

克里斯蒂安的评论可能足以满足您的需要。它展示了如何使用Nancy外接程序进行Basic或FormsAuth,并且RESTSharp完全支持Basic auth

我已经在工作中构建了一个Nancy驱动的RESTAPI很长一段时间了,我们使用了RESTSharp和普通HTML+JS作为客户端,并选择实现我们自己的基于会话的身份验证(部分原因是我们实现时不存在这些插件)。然而,它的优点在于无论客户机支持什么,它的使用都非常简单。我会很快解释它是如何工作的

客户端使用
POST/sessions
(使用HTTPS)发送用户名和密码(或者,如果您愿意,发送标识符和密钥)以创建新的会话资源。此资源包含可用于后续调用的会话密钥。会话在X分钟不活动后过期

对服务的每次调用都需要有效的会话密钥(创建会话除外)。密钥以cookie或查询字符串的形式提供。当使用RESTSharp时,我们通常将其设置为cookie,并继续重复使用,除非过期

最后,可以通过调用
DELETE/session/{key}
来销毁会话

这是一种保护RESTAPI的简单但有效的(假设使用HTTPS)方法

或者,您可以实现OAuth,RESTSharp显然也支持开箱即用。

答案是否有帮助?