WCF授权管理器在请求元数据时未触发



在我的wcf服务的web.config中,我有以下部分:

<behaviors>
  <serviceBehaviors>
    <behavior>
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
      <serviceAuthorization serviceAuthorizationManagerType="Company.Connection.Services.Security.MyAuthorizationManager, Company.Connection.Services" />
    </behavior>
  </serviceBehaviors>
</behaviors>

我想使用我的 serviceAuthorizationManager chemagcescesscore 方法来识别用户并确定是否允许用户获得WSDL我要求元数据。我是否缺少这种配置中的东西?

我的猜测是您必须命名您的行为并使用该名称将行为链接到您的服务。例如

<system.serviceModel>  
  <services>  
    <service name="MyService"  
             behaviorConfiguration="MyServiceBehavior">  
...
<behaviors>
  <serviceBehaviors>
    <behaviour name="MyServiceBehavior">
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
...

最新更新