Криптоалгоритм '' не поддерживается в этом контексте - PullRequest
2 голосов
/ 21 октября 2011

У меня есть приложение-служба SharePoint 2010, и когда я пытаюсь выполнить некоторый код на канале, я получаю сообщение об ошибке:

Алгоритм шифрования '' не поддерживается в этом контексте. System.NotSupportedException: CryptoАлгоритм '' не поддерживается в этом контексте.

На самом деле есть только две "кавычки, ничего между ними.Я использую IssuedToken для моего режима аутентификации.Вот мой файл web.config:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.web>
        <compilation debug="true" defaultLanguage="C#" />
    </system.web>
    <system.serviceModel>
        <behaviors>
            <serviceBehaviors>
                <behavior name="TLAPITypeBehaviors" >
                    <serviceMetadata httpGetEnabled="true" />
                </behavior>
            </serviceBehaviors>
        </behaviors>
        <services>
            <service name="AF.TipAndLeadAPI.TipAndLeadAPIServiceApplication" behaviorConfiguration="TLAPITypeBehaviors">
                <endpoint binding="customBinding" bindingConfiguration="TLAPIServiceHttpBinding"
                          contract="AF.TipAndLeadAPI.ITipAndLeadAPIContract"
                          address="" />
            </service>
        </services>
        <bindings>
            <customBinding>
                <binding name="TLAPIServiceHttpBinding">
                    <security authenticationMode="IssuedTokenOverTransport" allowInsecureTransport="true" />
                    <textMessageEncoding>
                        <readerQuotas maxStringContentLength="2048576000" maxArrayLength="2097152000" />
                    </textMessageEncoding>
                    <httpTransport maxReceivedMessageSize="2162688" authenticationScheme="Anonymous" useDefaultWebProxy="false" />
                </binding>
            </customBinding>
        </bindings>
    </system.serviceModel>
    <system.webServer>
        <security>
            <authentication>
                <anonymousAuthentication enabled="true" />
                <windowsAuthentication enabled="false" />
            </authentication>
        </security>
    </system.webServer>
</configuration>

И мой файл client.config:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <system.serviceModel>
        <client>
            <endpoint  address=""
                name="http"
                      binding="customBinding" bindingConfiguration="TLAPIServiceHttpBinding"
                      contract="AF.TipAndLeadAPI.ITipAndLeadAPIContract" />
        </client>
        <bindings>
            <customBinding>
                <binding name="TLAPIServiceHttpBinding">

                    <security authenticationMode="IssuedTokenOverTransport" allowInsecureTransport="true" />
                    <textMessageEncoding>
                        <readerQuotas maxStringContentLength="204857600" maxArrayLength="209715200" />
                    </textMessageEncoding>
                    <httpTransport maxReceivedMessageSize="216268800" authenticationScheme="Anonymous" useDefaultWebProxy="false" />
                </binding>
            </customBinding>
        </bindings>
    </system.serviceModel>
</configuration>

Когда я изменяю свой режим authenticationM на что-то вроде IssuedTokenOverTransport, я получаю ошибку несоответствия сборки.Когда я изменяю его на что-либо с сертификатами, я получаю ошибку сертификата, так что я предполагаю, что это связано с режимом аутентификации.

Любая помощь будет высоко ценится.

...