将WCF服务限制为特定用户帐户的最佳方法

时间:2012-11-10 21:44:00

标签: c# .net wcf

我将使用Window Service / Service Host托管基本的HTTP WCF服务。 我想将服务限制为2个特定的窗口活动目录用户,这些帐户在PRD和DEV环境之间会有所不同,因此它们将在配置文件中设置。

我想知道最好的方法是什么,我通常知道如果我使用IIS托管服务,那么我可以在Web.config中限制它: http://www.rickgaribay.net/archive/2007/04/04/recipe-wcf-basichttpbinding-with-windows-authentication.aspx 但是,由于我使用ServiceHost进行托管,所以我不相信这是一个选项。

根据我的阅读,似乎可以使用服务类级别的PrincipalPermission声明属性来执行此操作: http://msdn.microsoft.com/en-us/library/vstudio/ms731200(v=vs.100).aspx 但是我不太清楚这是否会通过窗口服务的窗口帐户或发出HTTP请求的帐户。我需要的是传递HTTP请求帐户。 此外,使用声明属性,是否可以使用配置文件属性而不是硬编码属性?

如有任何建议,如果您需要更多信息,请告知我们。

2 个答案:

答案 0 :(得分:3)

答案 1 :(得分:3)

我发现以下文章适合我需要的内容,基本上它涉及使用行为的授权: http://allen-conway-dotnet.blogspot.co.uk/2010/01/how-to-create-aspnet-windows.html