无法在单个 wcf 端点行为中组合 <enablewebscript> 和 <clientcredentials>

问题描述 投票:0回答:1

我正在尝试将enablewebscript 和clientcredentials 组合在单个wcf 端点行为中,以便我可以通过指纹获取x509 证书。 但是,当我在单个端点行为中定义上述两个标签时,该服务无法按预期工作。

有什么方法可以将enablewebscript和clientcredentials结合到单个wcf端点行为中吗?

<behaviors>
    <endpointBehaviors>
        <behavior name="CombinedBehavior">
            <enableWebScript />
            <clientCredentials>
                <!-- Configure your client credentials settings -->
            </clientCredentials>
        </behavior>
    </endpointBehaviors>
</behaviors>

这对我不起作用。

wcf wcf-security wcf-behaviour
1个回答
0
投票

据我所知,

<enableWebScript>
启用端点行为,从而可以从 ASP.NET AJAX 网页使用服务。

要从 ASP.NET AJAX 客户端调用 WCF 服务,必须使用

WebHttpBinding
配置该服务,并且必须将
WebScriptEnablingBehavior
添加到端点行为集合中。这可以通过在服务端添加 WebScriptEnablingElement 在配置中完成,如下所示:

<system.serviceModel>  
<services>  
        <service name="Microsoft.Ajax.Samples.CalculatorService">  
            <endpoint address=""  
                behaviorConfiguration="AspNetAjaxBehavior"   
                binding="webHttpBinding"  
                contract="Microsoft.Ajax.Samples.ICalculator" />  
        </service>  
    </services>  
    <behaviors>  
        <endpointBehaviors>  
            <behavior name="AspNetAjaxBehavior">  
                <enableWebScript />  
            </behavior>  
        </endpointBehaviors>  
    </behaviors>  
</system.serviceModel> 

所以你不能将

<enableWebScript>
<Clientcredentials>
组合在一起。

更多详细信息可以在此文档中找到:https://learn.microsoft.com/en-us/dotnet/api/system.servicemodel.configuration.webscriptenablingelement?view=netframework-4.8.1

© www.soinside.com 2019 - 2024. All rights reserved.