0

我正在努力使用 WIF 和 ACS 保护托管在 Azure 中的 IIS 托管 svc WCF 服务。

我在这里找到了很多方法:http: //msdn.microsoft.com/en-us/library/gg185939.aspx

我对那些描述如何创建安全 WCF 服务并使用证书或用户名/密码进行身份验证的人特别感兴趣。

现在 ACS 定义部分已经很清楚了。但是当谈到保护服务本身时,我很挣扎。我正在使用 WebRole 和 SVC 文件来公开服务,并且操作方法中的配置是在代码中完成的,我猜它也不适用于 azure webrole。

任何有关如何使这种组合起作用的帮助将不胜感激!

4

2 回答 2

2

只是一个小说明:如果您依赖 ACS,那么身份验证(以任何形式:证书/用户名/密码等)将在 ACS 中发生,而不是在您的应用程序中。您的 WCF 服务只需要 ACS 颁发的令牌,并且基本上不知道所使用的身份验证类型。

此外,实际实现取决于您是创建 SOAP 服务还是 REST 服务。通常,您会涉及不同的令牌格式和协议(例如 SAML 与 SWT 等)

除了您提到的操作方法之外,请查看本指南中的示例。特别是这些:

http://msdn.microsoft.com/en-us/library/hh446528.aspx

http://msdn.microsoft.com/en-us/library/hh446531.aspx

希望能帮助到你

于 2011-11-04T17:21:39.030 回答
0

您很可能需要使用 HttpModule 来保护您的服务。该模块的主要职责是读取 Authorization 标头并创建声明。

还要确保在 web.config 标签中应该包含

您可以从以下示例中获取 HttpModule 的代码。

http://acs.codeplex.com/wikipage?title=ACS%20Windows%20Phone%20Sample

查看 ProtectedResourceModule.cs

喜悦

于 2011-12-07T12:54:47.110 回答