hit*_*tch 5 c# security wcf web-services
我希望通过互联网向一系列客户提供服务.在这个阶段,api非常小,我只希望已知的客户端能够访问该服务.我现在不需要能够识别客户端,但是我预计随着api的增长,我将来需要能够识别客户端.
我想知道在短期内确保服务安全的最佳方法是什么,从长远来看,我可能希望能够授权客户端访问服务上的特定方法?
我在考虑使用传输安全性 - 即SSL.我是否还应该使用Message security来查看
clientCredentialType="certificate"
Run Code Online (Sandbox Code Playgroud)
在哪个clase每个客户端将拥有自己的证书,将使用该服务对其进行身份验证?
或者我应该只是为每个客户提供一个API密钥,它将提供类似的客户差异化水平?
欢迎任何其他建议.
请注意,这是服务接口的服务 - 即不是客户端应用程序.服务的用户数量将受到限制,我预计不需要在数据级别应用安全性,更多的是在方法访问级别.
小智 0
您可以使用自定义用户名/密码身份验证来验证用户身份,或使用 AD 身份验证来控制谁可以使用该服务。
我认为目前最好的解决方案是使用自定义用户名/密码身份验证并暂时允许每个用户,因为您不想识别用户。将来当您想要识别用户时,请更改代码并放入验证。
请参阅https://msdn.microsoft.com/en-us/library/aa702565(v=vs.110).aspx。在验证函数中,暂时不要抛出任何异常