使用 .NET 成员资格提供程序来保护 WCF SOAP API 的安全?
是否可以利用内置的 .NET 成员资格提供程序(SQL 提供程序是重要的)来验证和授权 WCF SOAP API 调用?即我只希望特定的注册用户(在成员资格提供程序 dB 内)能够使用特定的 SOAP 端点。人们会如何去做这件事呢?
谢谢!
Is it possible to leverage the in-built .NET membership providers (SQL provider is the important one) to authenticate and authorize WCF SOAP API calls? i.e. I only want specific registered users (inside the membership provider dB) to be able to consume specific SOAP endpoints. How would one go about doing this?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用会员资格提供商对用户进行身份验证。此身份验证可以通过 2 种方式进行
为此 WCF 服务需要在 ASP.Net 兼容模式下运行。
用户通过身份验证后,下一步就是在 WCF 服务中添加授权检查。您可以使用 RoleProviders 方法 IsUserInRole 来执行此类检查。完成上述操作后,您还可以进行 url 授权。 URL授权可以根据角色限制对整个服务的访问。
You can authenticate user using the Membership Providers. This authentication can happen in 2 ways
for this the WCF service needs to run in ASP.Net compatibility mode.
Once the user is authentication the next step for you would be to add authorization checks within you WCF service. You can use the RoleProviders method IsUserInRole to perform such checks. You can also do url authorization once you have done the above stuff. Url authorization can restrict access to entire service based on the role.
CodePlex 安全指南 站点的身份验证和授权部分提供了示例配置和代码这将帮助您实现您想要做的事情。
The CodePlex Security Guidance site, Authentication and Authorization sections provide sample configs and code that will help you achieve what you're trying to do.