Silverlight - Как использовать службу WCF с клиента с аутентификацией Windows - PullRequest
0 голосов
/ 09 августа 2011

У меня есть приложение silverlight 4, и мне нужен клиент для использования службы WCF, защищенной с помощью SSL и использующей проверку подлинности Windows. Только члены определенной группы активных каталогов должны иметь возможность вызывать службу WCF.

Вот мой web.config. С текущей конфигурацией любой может вызвать службу WCF. какие должны быть правильные значения?

Спасибо, Kruvi

<configuration>

  <system.diagnostics>

  </system.diagnostics>



  <system.web>
    <compilation debug="true" targetFramework="4.0" />
    <customErrors mode="On" defaultRedirect="~\Errors\Error.htm">
      <error statusCode="404" redirect="~\Errors\404.htm"/>
    </customErrors>
  </system.web>

  <connectionStrings>

  </connectionStrings>

  <system.serviceModel>

    <diagnostics>

    </diagnostics>


    <extensions>
      <behaviorExtensions>
        <add name="silverlightFaults"
             type="ZCUtils.SilverlightFaultBehavior, ZCUtils, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
      </behaviorExtensions>
    </extensions>

    <behaviors>
      <endpointBehaviors>
        <behavior name="SilverlightFaultBehavior">
          <silverlightFaults />
        </behavior>
      </endpointBehaviors>

      <serviceBehaviors>
        <behavior name="ZCBehavior">
          <serviceMetadata httpsGetEnabled="true" />          
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
      </serviceBehaviors>

    </behaviors>

    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBindingSsl" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647">
          <security mode="Transport" />
        </binding>
      </basicHttpBinding>        
    </bindings>

    <serviceHostingEnvironment aspNetCompatibilityEnabled="false" multipleSiteBindingsEnabled="true" />

    <services>
      <service name="ZC.Web.Services.ZCServices" behaviorConfiguration="ZCBehavior">
        <endpoint address="" behaviorConfiguration="SilverlightFaultBehavior"
          binding="basicHttpBinding" bindingConfiguration="BasicHttpBindingSsl"
          contract="ZC.Web.Services.ZCServices" />
      </service>
    </services>

  </system.serviceModel>
</configuration>

1 Ответ

1 голос
/ 09 августа 2011

В следующей статье показано, как защитить службу WCF с помощью аутентификации Windows для клиентов Silverlight:

http://msdn.microsoft.com/en-us/library/dd744835(v=vs.95).aspx

В этой статье рассказывается об использовании атрибута PrincipalPermissionAttribute, который позволяет ограничиватьгруппы могут вызывать конкретную операцию обслуживания:

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...