Незащищенное или неправильно защищенное сообщение об ошибке

Локализация ошибки. Компоненты

АРМ (распределенный вариант установки) и сервер RusGuard. Все версии ПО.

Описание причин и устранение ошибки

Если время и дата настроены некорректно, возможно возникновение ошибки при запуске ПО (см. рис. 7). Для исправления ошибки необходимо привести локальные настройки времени и даты в соответствие с сервером. Допустимое расхождение: +/- 5 минут.

Рисунок 7 - Ошибка при запуске ПО. Некорректно выставлено время и дата на локальном ПК

Рисунок 7 — Ошибка при запуске ПО. Некорректно выставлено время и дата на локальном ПК

Пример

Корректная настройка

В таблице ниже приведены примеры корректной настройки времени/даты (см. табл. 1).

Таблица 1 — Пример правильной настройки времени/даты

Сервер

АРМ

Время 16.50 (часовой пояс +4)

Время 16.50 (часовой пояс +4)

Время 16.50 (часовой пояс +4)

Время 15.50 (часовой пояс +3)

Время 16.50 (часовой пояс +4)

Время 17.50 (часовой пояс +5)

Некорректная настройка

В таблице ниже (см. табл. 2) приведены примеры некорректной настройки времени/даты:

одинаковое время при разных часовых поясах;

разное время в одном часовом поясе.

Таблица 2 — Пример неправильной настройки времени/даты

Сервер

АРМ

Время 16.50 (часовой пояс +4)

Время 16.40 (часовой пояс +4)

Время 16.50 (часовой пояс +4)

Время 16.50 (часовой пояс +3)

Время 16.50 (часовой пояс +4)

Время 16.50 (часовой пояс +5)

Произошла ошибка при проверке безопасности сообщения

когда я пытаюсь вызвать службу WCF я получаю следующее сообщение «произошла ошибка при проверке безопасности сообщения.»

когда я удаляю пользовательскую аутентификацию, служба работает без проблем. Я не могу понять, что я неправильно сконфигурировал в своей сети.конфиг. Любое понимание будет оценено.

  <system.serviceModel>
     <services>
        <service behaviorConfiguration="NAThriveExtensions.nableAPIBehavior"
          name="NAThriveExtensions.nableAPI">
           <endpoint 
             address="" 
             binding="basicHttpBinding" 
             bindingConfiguration="basicHttpBinding_Secure"
             contract="NAThriveExtensions.InableAPI">
           </endpoint>
           <endpoint 
             address="mex" 
             binding="mexHttpsBinding" 
             contract="IMetadataExchange" />
        </service>
     </services>
     <behaviors>
        <serviceBehaviors>
          <behavior name="NAThriveExtensions.nableAPIBehavior">
            <serviceMetadata httpsGetEnabled="true" />
            <serviceDebug includeExceptionDetailInFaults="false" />
            <serviceCredentials>
              <userNameAuthentication 
                userNamePasswordValidationMode="Custom" 
              customUserNamePasswordValidatorType= "NAThriveExtensions.Authentication, NAThriveExtensions" />
            </serviceCredentials>
          </behavior>
        </serviceBehaviors>
     </behaviors>
     <bindings>
       <basicHttpBinding>
         <binding name="basicHttpBinding_Secure">
           <security mode="TransportWithMessageCredential">
             <message clientCredentialType="UserName"/>
           </security>
         </binding>
       </basicHttpBinding>
     </bindings>
  </system.serviceModel>

7 ответов


Я получал это же сообщение об ошибке, и оказалось, что это связано с разницей во времени между моей рабочей станцией и сервером, на котором размещена служба WCF. Сервер был около 10 минут позади моей машины, и WCF security, похоже, не очень нравится.

чтобы найти корневую проблему, я включил serviceSecurityAuditing в конфигурационном файле сервера. Добавьте в конфигурацию/систему следующее.serviceModel / поведение / serviceBehaviors / раздел поведение для вашего обслуживания:

<serviceSecurityAudit 
    auditLogLocation="Application" 
    serviceAuthorizationAuditLevel="Failure" 
    messageAuthenticationAuditLevel="Failure" 
    suppressAuditFailure="true"/>

следующий сайт был полезен в выяснении этого:

http://blogs.microsoft.co.il/blogs/urig/archive/2011/01/23/wcf-quot-an-error-occurred-when-verifying-security-for-the-message-quot-and-service-security-audit.aspx


другая причина это сообщение, когда некоторые из ваших машин не синхронизированы во времени. WCF по умолчанию допускает пятиминутный разрыв; кроме того, он выдает ошибку, если что-то не синхронизировано.

раствор для синхронизации всех ваших машин. time.windows.com славится тем, что не работает, поэтому я предлагаю использовать что-то другое. (Если вы находитесь в корпоративной среде, локальный контроллер домена может быть правильный выбор.)


Это оказалось проблемой на стороне потребления, а не с самой службой. Webmethods 8 программного обеспечения AG потреблял этот сервер, но не было никакого обработчика безопасности, добавленного к службе, поэтому учетные данные не были добавлены в заголовок, что привело к вышеупомянутой ошибке.


Я получаю ту же ошибку на моем сервере IIS 7.5. Я забыл добавить разрешение на чтение на закрытый ключ сертификата в виртуальный аккаунт пула приложений (например, IIS AppPoolASP.NET v4.0).

для информации, тестируя различные комбинации учетных записей и разрешений, я заметил, что пул приложений необходимо переработать, чтобы потерять доступ к ключу, как только он был извлечен один раз.

(0x80131501-произошла ошибка при проверке безопасности сообщение.)


Я получал ту же ошибку, и ни одна из вышеперечисленных помощь для меня.

Я, наконец, отследил его до connectionStrings в родительской сети.config (моя служба была развернута в дочернем приложении на сайте администратора).

Да, звучит смешно, но как только я завернул строки подключения в родительской сети.config с элементом location все начали работать.

для ясности, в родительской сети.config я изменил это

<connectionStrings>
    <add name="..." />
</connectionStrings>

в это

<location path="." inheritInChildApplications="false">
    <connectionStrings>
        <add name="..." />
    </connectionStrings>
</location>

обратите внимание, что эта ошибка также привела к этому очень бесполезному serviceSecurityAudit сообщение:

ошибка проверки подлинности сообщения.
Услуга. :..
Действие:http://schemas.xmlsoap.org/ws/2005/02/trust/RST/SCT
ClientIdentity:
Значение activityid:
ArgumentNullException: значение не может быть null.
Имя параметра: менеджер


Я получал ту же ошибку. Я забыл добавить разрешение на чтение в базу данных членства aspnetdb в (IIS APPPOOLDefaultAppPool).

ошибка проверки подлинности сообщения. Услуга.:…

действие:http://schemas.xmlsoap.org/ws/2005/02/trust/RST/SCT

ClientIdentity:

значение activityid:

SqlException: не удается открыть базу данных «aspnetdb», запрошенную логином. Ошибка входа в систему.

ошибка входа в систему для IIS пользователя
Пула средством’.


имя пользователя и пароль сервер подключения,а не ваши
имя пользователя и пароль для входа в систему.



Offline

pavel.kozak

 


#1
Оставлено
:

10 января 2020 г. 10:23:50(UTC)

pavel.kozak

Статус: Участник

Группы: Участники

Зарегистрирован: 13.12.2019(UTC)
Сообщений: 15
Российская Федерация

Добрый день.

Пока вопрос туманный, т.к. нет полного понимания происходящего.

Есть устоявшийся проект с использованием КриптоПро 4.0 + КриптоПро .NET (6893 работает стабильно), используется для подключения к Web сервису по WCF (Гост 2012).

Начали миграцию проекта на NET Core 3.x + .NET Framework 4.7.2, до этого была смесь Core 2.x + .NET Framework 4.6.1.

Предположительно(т.к. ставим средствами VS 2019, что он там ещё тянет под сомнением) после установки на машину SDK Core 3.x + SDK .NET Framework 4.8 + соответственно сам коре и фреймфорк получаем проблемы с WCF в существующем проекте, т.е. изменений в сам проект ещё не внесли, только установили Core + FrameWork посвежее.

При попытке подключения к сервису с авторизацией по ГОСТ ключу 2012, получаем ошибку:

Коллекция шифрования маркера не поддерживает алгоритм «urn:ietf:params:xml:ns:cpxmlsec:algorithms:transport-gost2012-256».

Т.е. поведение, как будто не установлен КриптоПро .NET. Переустанавливаем весь комплект КриптоПро + КриптоПро .NET. Результата нет.

Проверено на двух машинах Windows 10 И Windows Server 2012 R2.
Сответсвующие лицензии есть и на рабочие станции и на сервер.
Для проверки пришлось VS 2019 на сервер поставить, т.к. думали причина в Windows 10.

Интересный момент, попробовали поднять версию Крипто Про .NET (SDK Крипто Про .NET поднимали соответственно) до 7132

Выше указанная ошибка на этапе подключения пропала, но при вызове получили другую ошибку:
System.ServiceModel.FaultException: An error occurred when verifying security for the message.

Попробую узнать какую версию SDK Крипто Про использует поставщик Web Сервиса.

Отредактировано пользователем 10 января 2020 г. 10:25:30(UTC)
 | Причина: Не указана


Вверх

Offline

Максим Коллегин

 


#2
Оставлено
:

10 января 2020 г. 10:54:47(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,253
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 658 раз в 582 постах

Обновлять КриптоПро .Net при обновлении .Net нужно с вероятностью 90%
Для .Net Core мы делаем fork (обсуждается в соседней ветке), но до WCF там ещё далеко.

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

pavel.kozak

 


#3
Оставлено
:

10 января 2020 г. 11:02:18(UTC)

pavel.kozak

Статус: Участник

Группы: Участники

Зарегистрирован: 13.12.2019(UTC)
Сообщений: 15
Российская Федерация

Спасибо.

Да, форк видели но не решились, поэтому и смесь Core 98% + Framework 2%.

Сосредоточимся тогда на вопросе почему не работает с .NET КриптоПро 7132.

Попробуем ещё раз пересобрать с новым SDK 7132, может что-то упустил.

Насколько важно, что бы .NET КриптоПро был одинаковый на клиенте и на сервере?
Мне кажется должно быть все равно. На сервер повлиять мы не сможем.


Вверх

Offline

Максим Коллегин

 


#4
Оставлено
:

10 января 2020 г. 11:11:32(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,253
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 658 раз в 582 постах

Автор: pavel.kozak Перейти к цитате

Насколько важно, что бы .NET КриптоПро был одинаковый на клиенте и на сервере?
Мне кажется должно быть все равно. На сервер повлиять мы не сможем.

Не должны быть одинаковыми.

Постарайтесь собрать трассировку WCF — посмотрим.

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

pavel.kozak

 


#5
Оставлено
:

10 января 2020 г. 13:10:45(UTC)

pavel.kozak

Статус: Участник

Группы: Участники

Зарегистрирован: 13.12.2019(UTC)
Сообщений: 15
Российская Федерация

Пересобрал с последним SDK.

Если по трейсу, то получается следующий порядок:

Пытаемся вызвать удаленную функцию TestAuthentication

Поставщик токена безопасности открыт.
На клиенте запущен сеанс безопасности.
Подлинность EndpointReference была определена.
Успешно выполнена аутентификациа.
Протокол безопасности обеспечил защиту исходящего сообщения.
Через канал отправлено сообщение
Через канал получено сообщение
Через канал запроса получен ответ.

Генерирование исключения
«Процессору безопасности не удалось найти заголовок безопасности в сообщении. Это может быть вызвано тем, что сообщение не защищено или имеет место несоответствия привязки между взаимодействующими сторонами. Это может произойти, если служба настроена с режимом безопасности, а клиент не применяет режим безопасности.»

Незащищенное или неправильно защищенное сообщение об ошибке было получено от другой стороны.

Протоколу безопасности не может проверить входящее сообщение.

Конец.

Тот же код с предыдущей версией работает корректно. Пока не возможности проверить на чистой машине свежий SDK КриптоПро на старом фреймвекке.


Вверх

Offline

pavel.kozak

 


#6
Оставлено
:

10 января 2020 г. 13:19:38(UTC)

pavel.kozak

Статус: Участник

Группы: Участники

Зарегистрирован: 13.12.2019(UTC)
Сообщений: 15
Российская Федерация

Автор: Максим Коллегин Перейти к цитате

Не должны быть одинаковыми.
Постарайтесь собрать трассировку WCF — посмотрим.

Оказывается, все таки есть зависимости.

https://br.so-ups.ru/Pub…ws=%5Bobject%20Object%5D

Как-то упустил эту новость.

Теперь тупичок, придется ещё одну кашу делать и запускать прослойку на машине со старым фремвёрком и старым .NET КриптоПро :(.


Вверх

Offline

Максим Коллегин

 


#7
Оставлено
:

10 января 2020 г. 20:27:26(UTC)

Максим Коллегин

Статус: Сотрудник

Группы: Администраторы

Зарегистрирован: 12.12.2007(UTC)
Сообщений: 6,253
Мужчина
Откуда: КРИПТО-ПРО

Сказал «Спасибо»: 21 раз
Поблагодарили: 658 раз в 582 постах

Странно, ничего не слышал про это. Изучим вопрос.

Знания в базе знаний, поддержка в техподдержке


Вверх

WWW


Offline

Артём Макаров

 


#8
Оставлено
:

13 января 2020 г. 8:31:35(UTC)

Артём Макаров

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 20.02.2017(UTC)
Сообщений: 184

Сказал(а) «Спасибо»: 4 раз
Поблагодарили: 48 раз в 48 постах

Добрый день.

Подскажите, какой сейчас target framework задан в проекте?

Какая привязка используется?

Если возможно приложите файл конфигурации клиента (app.config).

Можете приложить wcf trace и messssage log с ошибкой?

Как собирать можно посмотреть тут — https://docs.microsoft.c…figuring-message-logging
Пример —

Код:

<system.diagnostics>
	<sources>
	  <source name="System.ServiceModel.MessageLogging" switchValue="All">
		<listeners>
		  <add type="System.Diagnostics.DefaultTraceListener" name="Default">
			<filter type="" />
		  </add>
		  <add name="ServiceModelMessageLoggingListener">
			<filter type="" />
		  </add>
		</listeners>
	  </source>
	  <source name="System.ServiceModel" switchValue="All" propagateActivity="true">
		<listeners>
		  <add type="System.Diagnostics.DefaultTraceListener" name="Default">
			<filter type="" />
		  </add>
		  <add name="ServiceModelTraceListener">
			<filter type="" />
		  </add>
		</listeners>
	  </source>
	</sources>
	<sharedListeners>
	  <add initializeData="C:logsmy_service_web_messages.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" name="ServiceModelMessageLoggingListener" traceOutputOptions="Timestamp">
		<filter type="" />
	  </add>
	  <add initializeData="C:logsmy_serice_web_tracelog.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" name="ServiceModelTraceListener" traceOutputOptions="Timestamp">
		<filter type="" />
	  </add>
	</sharedListeners>
	<trace autoflush="true" />
  </system.diagnostics>

Техническую поддержку оказываем тут
Наша база знаний


Вверх

Offline

pavel.kozak

 


#9
Оставлено
:

13 января 2020 г. 10:01:40(UTC)

pavel.kozak

Статус: Участник

Группы: Участники

Зарегистрирован: 13.12.2019(UTC)
Сообщений: 15
Российская Федерация

Автор: Максим Коллегин Перейти к цитате

Странно, ничего не слышал про это. Изучим вопрос.

Насколько успел узнать, тикет поставщиком сервиса создавался, примерно в то время когда они писали эту новость.


Вверх

Offline

pavel.kozak

 


#10
Оставлено
:

13 января 2020 г. 10:11:57(UTC)

pavel.kozak

Статус: Участник

Группы: Участники

Зарегистрирован: 13.12.2019(UTC)
Сообщений: 15
Российская Федерация

Автор: Артём Макаров Перейти к цитате

Подскажите, какой сейчас target framework задан в проекте?

Проверяли несколько, поведение и ошибка одинаковые и на 4.6.2, 4.7.1, 4.8.
Версия .NET Крипто про — 7132. Основной Крипто Про ставился последний 4.0, 9963.

Автор: Артём Макаров Перейти к цитате

Какая привязка используется?

WSHttpBinding

Это пример со стенда, в основном проекте вместо конфига настройка из кода идет. Но значения те же.

<wsHttpBinding>
<binding name=»wsHttpCertificateBinding» closeTimeout=»01:00:00″ openTimeout=»01:00:00″ receiveTimeout=»01:00:00″ sendTimeout=»01:00:00″
maxBufferPoolSize=»52428800″ maxReceivedMessageSize=»52428800″>
<readerQuotas maxStringContentLength=»2147483647″/>
<security>
<message clientCredentialType=»Certificate» negotiateServiceCredential=»false»/>
</security>
</binding>
</wsHttpBinding>

<endpoint address=»http://br.so-ups.ru:8091/PersonalApi/PersonalApiService.svc/ByCertificate»
binding=»wsHttpBinding» bindingConfiguration=»wsHttpCertificateBinding»
contract=»PersonalApiService.IPersonalApiService» name=»wsHttpCertificateEndpoint»>
<identity>
<certificateReference findValue=»5cee4b2593de373e184377a718bb5af83dea466b» x509FindType=»FindByThumbprint»
storeLocation=»LocalMachine» storeName=»My» />
</identity>
</endpoint>

Автор: Артём Макаров Перейти к цитате

Можете приложить wcf trace и messssage log с ошибкой?

Я отправлю в личку, то что собрали в пятницу с нашими настройками, если не подойдет, то позже сниму с вашими рекомендациями.


Вверх
Пользователи, просматривающие эту тему

Guest

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

When I try to call a WCF service I am getting the following message «An error occurred when verifying security for the message.»

When I remove the custom authenication the service works no problem. I can’t figure out though what I have misconfigured in my web.config. Any insight would be appreciated.

  <system.serviceModel>
     <services>
        <service behaviorConfiguration="NAThriveExtensions.nableAPIBehavior"
          name="NAThriveExtensions.nableAPI">
           <endpoint 
             address="" 
             binding="basicHttpBinding" 
             bindingConfiguration="basicHttpBinding_Secure"
             contract="NAThriveExtensions.InableAPI">
           </endpoint>
           <endpoint 
             address="mex" 
             binding="mexHttpsBinding" 
             contract="IMetadataExchange" />
        </service>
     </services>
     <behaviors>
        <serviceBehaviors>
          <behavior name="NAThriveExtensions.nableAPIBehavior">
            <serviceMetadata httpsGetEnabled="true" />
            <serviceDebug includeExceptionDetailInFaults="false" />
            <serviceCredentials>
              <userNameAuthentication 
                userNamePasswordValidationMode="Custom" 
              customUserNamePasswordValidatorType= "NAThriveExtensions.Authentication, NAThriveExtensions" />
            </serviceCredentials>
          </behavior>
        </serviceBehaviors>
     </behaviors>
     <bindings>
       <basicHttpBinding>
         <binding name="basicHttpBinding_Secure">
           <security mode="TransportWithMessageCredential">
             <message clientCredentialType="UserName"/>
           </security>
         </binding>
       </basicHttpBinding>
     </bindings>
  </system.serviceModel>

asked Sep 21, 2010 at 23:26

Matt Klepeis's user avatar

Matt KlepeisMatt Klepeis

1,7241 gold badge14 silver badges25 bronze badges

I was getting this same error message and it turned out to be due to a time difference between my workstation machine and the server hosting the WCF service. The server was about 10 minutes behind my machine and WCF security doesn’t seem to like that very much.

To find the root problem I turned on serviceSecurityAuditing in the server’s config file. Add the following to the configuration/system.serviceModel/behaviors/serviceBehaviors/behavior section for your service:

<serviceSecurityAudit 
    auditLogLocation="Application" 
    serviceAuthorizationAuditLevel="Failure" 
    messageAuthenticationAuditLevel="Failure" 
    suppressAuditFailure="true"/>

The following site was helpful in figuring this out:

http://blogs.microsoft.co.il/blogs/urig/archive/2011/01/23/wcf-quot-an-error-occurred-when-verifying-security-for-the-message-quot-and-service-security-audit.aspx

answered Mar 7, 2013 at 23:10

Sam's user avatar

3

Another cause of this message is when some of your machines are not synchronized in time. WCF, by default, allows a five-minute gap; beyond this, it throws an error if things are out of synch.

The solution is to synch all your machines. time.windows.com is notorious for not working, so I suggest using something else. (If you’re in a corporate environment, a local domain controller may be the correct choice here.)

answered Jan 31, 2014 at 16:30

ashes999's user avatar

ashes999ashes999

9,84715 gold badges72 silver badges120 bronze badges

3

This ended up being an problem on the consuming side, not with the service itself. Software AG’s webMethods 8 was consuming this server but there was no Security Handler added to the service so the credentials were not being added to the header thus resulting the in the aforementioned error.

answered Oct 8, 2010 at 16:24

Matt Klepeis's user avatar

Matt KlepeisMatt Klepeis

1,7241 gold badge14 silver badges25 bronze badges

2

I had a similar issue.
I was building my datetime formatted strings using my local time, but my service/server was expecting GMT.

I needed to get the GMT time (JAVA):

final Date currentTime = new Date();    
final SimpleDateFormat sdf = 
new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'.000Z'");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
System.out.println(sdf.format(currentTime));

answered Mar 17, 2019 at 20:42

Pablo Chvx's user avatar

Pablo ChvxPablo Chvx

1,74917 silver badges31 bronze badges

I was getting the same error on my IIS 7.5 server. I forgot to add Read permission on the certificate’s private key to the app pool virtual account (e.g. IIS AppPoolASP.NET v4.0).

For info, whilst testing various combinations of accounts and permissions, I noticed that the app pool needed to be recycled to lose access to the key, once it had been retrieved once.

(0x80131501 — An error occurred when verifying security for the message.)

answered Apr 8, 2013 at 5:57

ssg31415926's user avatar

ssg31415926ssg31415926

1,0172 gold badges13 silver badges21 bronze badges

I was getting the same error and none of the above help for me.

I finally tracked it down to connectionStrings in a parent web.config (my service was deployed to a child application to an admin site).

Yes sounds ridiculous, but as soon as I wrapped the connection strings in the parent web.config with a location element all started working.

For clarity, in parent web.config, I changed this

<connectionStrings>
    <add name="..." />
</connectionStrings>

to this

<location path="." inheritInChildApplications="false">
    <connectionStrings>
        <add name="..." />
    </connectionStrings>
</location>

Note this error also resulted in this very unhelpful serviceSecurityAudit log message:

Message authentication failed.
Service: …
Action: http://schemas.xmlsoap.org/ws/2005/02/trust/RST/SCT
ClientIdentity:
ActivityId:
ArgumentNullException: Value cannot be null.
Parameter name: manager

answered Sep 6, 2016 at 12:30

Dan's user avatar

I was getting the same error. I forgot to add Read permission on the membership database aspnetdb to the (IIS APPPOOLDefaultAppPool).

Message authentication failed. Service:….

Action: http://schemas.xmlsoap.org/ws/2005/02/trust/RST/SCT

ClientIdentity:

ActivityId:

SqlException: Cannot open database «aspnetdb» requested by the login. The login failed.

Login failed for user ‘IIS
APPPOOLDefaultAppPool’.

Community's user avatar

answered Dec 19, 2016 at 7:24

Yasser Mohammed's user avatar

The username and password is the server you connection,not your
system login username and password.

answered Dec 23, 2015 at 9:05

MapleStory's user avatar

MapleStoryMapleStory

6183 gold badges11 silver badges21 bronze badges

У меня проблема с подключением к моей службе WCF с помощью clientCredentialType="UserName".

Когда я запускаю код ниже, я получаю сообщение об ошибке

FaultException: при проверке безопасности для сообщения произошла ошибка.

При игре с некоторыми значениями привязки я также получаю Access is denied..

Fiddler говорит, что нет заголовка авторизации, и я не могу найти имя пользователя или пароль в запросе.

Вот выдержки из моего конфига:

  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
    <services>
      <service name="InventoryServices.MobileAPI"  behaviorConfiguration="customBehaviour">
        <endpoint address=""
                  binding="basicHttpBinding"
                  bindingConfiguration="secureHttpBinding"
                  contract="InventoryServices.IMobileAPI"/>

        <endpoint address="mex"
                  binding="mexHttpsBinding"
                  contract="IMetadataExchange" />
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="customBehaviour">
          <serviceSecurityAudit auditLogLocation="Application" serviceAuthorizationAuditLevel="Failure" messageAuthenticationAuditLevel="Failure" suppressAuditFailure="true" />
          <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
          <serviceMetadata httpsGetEnabled="true"/>
          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
          <serviceDebug includeExceptionDetailInFaults="true"/>
          <serviceCredentials>
            <userNameAuthentication userNamePasswordValidationMode="Custom"
               customUserNamePasswordValidatorType="InventoryLibrary.Helpers.UserAuthentication,InventoryLibrary"/>
          </serviceCredentials>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
    <bindings>
      <basicHttpBinding>
        <binding name="secureHttpBinding">
          <security mode="TransportWithMessageCredential">
            <transport clientCredentialType="Basic" proxyCredentialType="Basic" realm="MyRealm"/>
            <message clientCredentialType="UserName" algorithmSuite="Default"  />
          </security>
        </binding>
      </basicHttpBinding>
    </bindings>

Мой валидатор имени пользователя/пароля выглядит так:

  public class UserAuthentication : UserNamePasswordValidator {
        public override void Validate(string userName, string password) {

            EntitiesContext db = new EntitiesContext();
            db.Logs.Add(new DomainModels.Log() {
                DateLogged = DateTime.Now,
                Message = "hit auth",
                Type = DomainModels.LogType.Info
            });
            db.SaveChanges();

            try {

                if (userName == "test" && password == "test123") {
                    Console.WriteLine("Authentic User");
                }
            }
            catch (Exception ex) {
                throw new FaultException("Unknown Username or Incorrect Password");
            }
        }
    }

У меня это как простой тест на моем сервисе:

[OperationContract]
[XmlSerializerFormat]
void Test();

[PrincipalPermission(SecurityAction.Demand, Name = "test")]
public void Test() {

}

У меня есть собственный сертификат SSL на моем сервере, и я могу получить доступ к своим сервисам/метаданным.

Затем я добавил ссылку на службу в консольном приложении и попытаюсь подключиться к службе с помощью этого кода ниже:

class Program {
    static void Main(string[] args) {

        Stuff.InitiateSSLTrust();

        BasicHttpBinding binding = new BasicHttpBinding();
        binding.Security.Mode = BasicHttpSecurityMode.Transport;
        binding.Security.Transport.Realm = "MyRealm";

        ServiceReference1.MobileAPIClient serviceProxy = new ServiceReference1.MobileAPIClient(binding, new EndpointAddress("https://xx.xx.xx.xx/InventoryServices.MobileApi.svc"));

        serviceProxy.ClientCredentials.UserName.UserName = "test";
        serviceProxy.ClientCredentials.UserName.Password = "test123";

        try {

            var a = serviceProxy.Login("a", "b");
        }
        catch (Exception ex) {
            var ex2 = ex;
        }
    }
}

public class Stuff {
    public static void InitiateSSLTrust() {
        try {
            //Change SSL checks so that all checks pass
            ServicePointManager.ServerCertificateValidationCallback =
                new RemoteCertificateValidationCallback(
                    delegate { return true; }
                );
        }
        catch (Exception ex) {
        }
    }
}

Я проверил средство просмотра событий на сервере, и эта ошибка появляется с каждым запросом:

MessageSecurityException: процессору безопасности не удалось найти заголовок безопасности в сообщении. Это может быть связано с тем, что сообщение является необеспеченной ошибкой или потому, что существует связующее несоответствие между общающимися сторонами. Это может произойти, если служба настроена для обеспечения безопасности, а клиент не использует безопасность.

Ответ 1

Вы указываете стороне клиента использовать BasicHttpSecurityMode.Transport, тогда как служба ожидает BasicHttpSecurityMode.TransportWithMessageCredential. Это проблема, потому что служба ищет учетные данные клиента в заголовке сообщения SOAP, и клиент не отправит их с привязкой, сконфигурированной таким образом.

Следовательно, поэтому пара имени пользователя/пароля отсутствует в заголовке сообщения, когда вы являетесь свидетелем. Таким образом, зритель событий был прав, что между связующими сторонами имело место несовпадение.

Также установите ClientCredentialType на клиенте BasicHttpMessageCredentialType.UserName для Message уровня безопасности. По умолчанию BasicHttpBinding использует None, которые являются анонимными клиентами.

Здесь фрагмент кода, описывающий вышеизложенные изменения:

var basicHttpBinding = new BasicHttpBinding(
                              BasicHttpSecurityMode.TransportWithMessageCredential);
basicHttpBinding.Security.Message.ClientCredentialType = 
                                     BasicHttpMessageCredentialType.UserName;

Ответ 2

Это также может быть вызвано отсутствием синхронизации между клиентом и сервером. Если сертификат или подписанный токен являются недействительными по времени, то может быть возвращено то же сообщение An error occurred when verifying security for the message..

  • Remove From My Forums
  • Вопрос

  • Добрый день, господа. Подскажите, куда копать.

    Windows Server 2008 R2 32 bit.

    В IIS развернут узел,  — сайт web-forms,с аутентификацией по сертификату. 

    Есть ссылка на wcf, от которой получает данные. 

     При запускe на iisexpress через VS2013 в режиме отладки — все хорошо. После публикации и размещения на вышеуказанном сервере — вот такая ошибка:

    Ошибка сервера в приложении ‘/’.


    Описание: Необработанное исключение при выполнении текущего веб-запроса. Изучите трассировку стека для получения дополнительных сведений о данной ошибке и о вызвавшем ее фрагменте кода.

    Сведения об исключении: System.ServiceModel.FaultException: An error occurred when verifying security for the message.

    Ошибка источника:

    Необработанное исключение при выполнении текущего веб-запроса. Информацию о происхождении и месте возникновения исключения можно получить, используя следующую трассировку стека исключений.

    Трассировка стека:

    [FaultException: An error occurred when verifying security for the message.]
    
    [MessageSecurityException: Незащищенное или неправильно защищенное сообщение об ошибке было получено от другой стороны. Код ошибки и описание см. внутреннее исключение.]
       System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) +10818447
       System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) +336
       Service_portal.ServiceReference.IHotLine.GetData(String ProcName, CustomParams[] _params, String DBname) +0
       Service_portal.ContactClass.AddParams(String name, String value, String proc, String dbnum) +276
       Service_portal.ControlDistionary.Page_Load(Object sender, EventArgs e) +59
       System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +51
       System.Web.UI.Control.OnLoad(EventArgs e) +92
       System.Web.UI.Control.LoadRecursive() +54
       System.Web.UI.Control.LoadRecursive() +145
       System.Web.UI.Control.LoadRecursive() +145
       System.Web.UI.Control.LoadRecursive() +145
       System.Web.UI.Control.LoadRecursive() +145
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772
    

    • Перемещено

      26 марта 2015 г. 11:36

Ответы

  • Здравствуйте,

    Похоже на ошибку с WCF, как одна из возможных причин, если время клиента и сервера отличается более чем на 10 минут, то не удастся пройти
    проверку безопасности .


    Best Regards, Andrei …
    Microsoft Certified Professional

    • Предложено в качестве ответа
      Tomas Lilov
      26 марта 2015 г. 12:30
    • Помечено в качестве ответа
      Иван ПродановMicrosoft contingent staff, Moderator
      31 марта 2015 г. 7:50
  • Remove From My Forums
  • Question

  • Hello,

    We have a wcf service hosted in IIS. We used basicHttpBinding and implemented a UserNamePasswordValidator for the custom authentication.

    However, we have issues when the WCF is consumed with a asmx client.

    An error occurred when verifying security for the message.

    (because asmx client can only work basicHttpBinding with transport security. basic authentication is disabled.)

    Here is my security config

                        <security mode="TransportWithMessageCredential">
                            <transport clientCredentialType="None" proxyCredentialType="None"
                                realm="" />
                            <message clientCredentialType="UserName" algorithmSuite="Default" />
                        </security>

    what are the solutions? We thought of using a simple Message Header for the authentication, however we don’t want to pass the credentials in the parameters of the method call

    var s = new service.TaskService();
    s.GetSomething(credential, TaskNumber); //not nice...
    • Edited by

      Tuesday, June 4, 2013 7:58 AM

Answers

  • Maybe the following links can help you to sort out what the problem is: http://stackoverflow.com/questions/3765212/an-error-occurred-when-verifying-security-for-the-message

    http://blogs.microsoft.co.il/blogs/urig/archive/2011/01/23/wcf-quot-an-error-occurred-when-verifying-security-for-the-message-quot-and-service-security-audit.aspx

    Like I wrote before, you should be able to use a UserNamePasswordValidator with basicHttpBinding by using the Message security mode with a certificate or the TransportWithMessageCredential security mode with SSL.

    • Edited by
      Magnus (MM8)MVP
      Tuesday, June 4, 2013 2:22 PM
    • Marked as answer by
      Haixia_Xie
      Tuesday, June 11, 2013 7:43 AM
    • Marked as answer by
      Haixia_Xie
      Tuesday, June 11, 2013 7:43 AM
  • Remove From My Forums
  • Question

  • Hello,

    We have a wcf service hosted in IIS. We used basicHttpBinding and implemented a UserNamePasswordValidator for the custom authentication.

    However, we have issues when the WCF is consumed with a asmx client.

    An error occurred when verifying security for the message.

    (because asmx client can only work basicHttpBinding with transport security. basic authentication is disabled.)

    Here is my security config

                        <security mode="TransportWithMessageCredential">
                            <transport clientCredentialType="None" proxyCredentialType="None"
                                realm="" />
                            <message clientCredentialType="UserName" algorithmSuite="Default" />
                        </security>

    what are the solutions? We thought of using a simple Message Header for the authentication, however we don’t want to pass the credentials in the parameters of the method call

    var s = new service.TaskService();
    s.GetSomething(credential, TaskNumber); //not nice...
    • Edited by

      Tuesday, June 4, 2013 7:58 AM

Answers

  • Maybe the following links can help you to sort out what the problem is: http://stackoverflow.com/questions/3765212/an-error-occurred-when-verifying-security-for-the-message

    http://blogs.microsoft.co.il/blogs/urig/archive/2011/01/23/wcf-quot-an-error-occurred-when-verifying-security-for-the-message-quot-and-service-security-audit.aspx

    Like I wrote before, you should be able to use a UserNamePasswordValidator with basicHttpBinding by using the Message security mode with a certificate or the TransportWithMessageCredential security mode with SSL.

    • Edited by
      Magnus (MM8)MVP
      Tuesday, June 4, 2013 2:22 PM
    • Marked as answer by
      Haixia_Xie
      Tuesday, June 11, 2013 7:43 AM
    • Marked as answer by
      Haixia_Xie
      Tuesday, June 11, 2013 7:43 AM

Для работы с WCF-сервисами по защищенному соединению в проекте MVC в файл Global.asax добавил следующую строку:

protected void Application_Start()
{
   ...
   System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate (object s, System.Security.Cryptography.X509Certificates.X509Certificate certificate, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors) { return true; };
   ...
}

В WCF-сервисах внес изменения в конфигурационный файл, поменял тип безопасности с Message на TransportWithMessageCredential:

<ws2007FederationHttpBinding>
        <binding openTimeout="00:05:00" closeTimeout="00:05:00" receiveTimeout="00:25:00" sendTimeout="00:25:00">
          <security mode="TransportWithMessageCredential">
            <message establishSecurityContext="false"
                     issuedKeyType="BearerKey">
              <issuerMetadata address="https://xxx/issue/wstrust/mex" />
              <issuer address="https://xxx/issue/wstrust/message/username"></issuer>
            </message>
          </security>
        </binding>
      </ws2007FederationHttpBinding>

И немного увеличил таймауты. Еще добавил в Identity.config мэнеджер:

<system.identityModel>
  <identityConfiguration>

    <claimsAuthorizationManager type="xxx.AuthorizationManager, xxx" />
    ...
  </identityConfiguration>
</system.identityModel>

Содержимое самого менеджера для начала сделал примитивно простым. Затем можно будет дополнительно настроить безопасность с помощью него, но пока все выглядит так:

using System.Collections.ObjectModel;
using System.Security.Claims;
using System.Security.Principal;

public class AuthorizationManager : ClaimsAuthorizationManager
    {
        public override bool CheckAccess(AuthorizationContext context)
        {
            Collection<Claim> resource = context.Resource;
            Collection<Claim> action = context.Action;
            ClaimsPrincipal principal = context.Principal;
            IIdentity пользователь = principal.Identity;
            return true;
            //return base.CheckAccess(context);
        }
    }

Также, в файле конфигурации сервисов, для каждого сервиса задал описания, по какой привязке будет работать каждый:

<services>
      <service name="xxx.WsFedService">
        <endpoint contract="xxx.Interfaces.IWsFedService" 
                  binding="ws2007FederationHttpBinding"/>
      <service name="xxx.BasicService">
        <endpoint contract="xxx.Interfaces.IBasicService" 
                  binding="basicHttpBinding"/>
      ...
      </service>
</services>

Пожалуй, самой главной проблемой, оказалась кодировка файла конфигурации. Немного ранее я настраивал все на тестовом стенде и все работало. Но у нас в проекте произошли некоторые изменения и мы перешли с VS2013 на VS2015. Понадобился один день, чтобы найти причину. Я просто взял и написал весь конфиг руками с нуля. Конфиг оказался почти копией того, что был ранее, но все же я внес некоторые изменения, которые описал в ответе. В общем — все работает так как нужно и я буду рад, если кому-то смог помочь решить подобную проблему.


Offline

CommonUsr

 


#1
Оставлено
:

12 ноября 2014 г. 11:32:58(UTC)

CommonUsr

Статус: Активный участник

Группы: Участники

Зарегистрирован: 17.10.2013(UTC)
Сообщений: 35

Сказал(а) «Спасибо»: 12 раз

Добрый день! При настройке dss возникла проблема. Доступ в админку имеется. Но при переходе в раздел «Пользователи» https://<host>/sts/admins/users/list выпадает сообщение: «Недопустимый URI: Невозможно выполнить разбор имени хоста.»
В чем может быть проблема?

В логах фиксируется:
ERROR : Unhandle Error occured
System.UriFormatException: Недопустимый URI: Невозможно выполнить разбор имени хоста.
в System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
в System.UriBuilder..ctor(String uri)
в ASP._Page_Views_users_List_cshtml.Execute() в c:Program FilesCrypto ProDSSSTSAdminsViewsUsersList.cshtml:строка 11
в System.Web.WebPages.WebPageBase.ExecutePageHierarchy()
в System.Web.Mvc.WebViewPage.ExecutePageHierarchy()
в System.Web.WebPages.StartPage.ExecutePageHierarchy()
в System.Web.WebPages.WebPageBase.ExecutePageHierarchy(WebPageContext pageContext, TextWriter writer, WebPageRenderingBase startPage)
в System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context)
в System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
в System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilterRecursive(IList`1 filters, Int32 filterIndex, ResultExecutingContext preContext, ControllerContext controllerContext, ActionResult actionResult)
в System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult)
в System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult)
в System.Web.Mvc.Controller.<BeginExecuteCore>b__1d(IAsyncResult asyncResult, ExecuteCoreState innerState)
в System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult)
в System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)
в System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult)
в System.Web.Mvc.MvcHandler.<BeginProcessRequest>b__5(IAsyncResult asyncResult, ProcessRequestState innerState)
в System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncVoid`1.CallEndDelegate(IAsyncResult asyncResult)
в System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
в System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Недопустимый URI: Невозможно выполнить разбор имени хоста.


Вверх


Offline

Андрей Писарев

 


#2
Оставлено
:

12 ноября 2014 г. 13:04:39(UTC)

Андрей *

Статус: Сотрудник

Группы: Участники

Зарегистрирован: 26.07.2011(UTC)
Сообщений: 11,986
Мужчина
Российская Федерация

Сказал «Спасибо»: 457 раз
Поблагодарили: 1905 раз в 1474 постах

А значение host покажите или будем дальше гадать?

Техническую поддержку оказываем тут
Наша база знаний


Вверх

WWW


Offline

CommonUsr

 


#3
Оставлено
:

12 ноября 2014 г. 13:10:52(UTC)

CommonUsr

Статус: Активный участник

Группы: Участники

Зарегистрирован: 17.10.2013(UTC)
Сообщений: 35

Сказал(а) «Спасибо»: 12 раз

Вы про <host>? Да я без умысла его спрятал. cpca20


Вверх


Offline

khomenko

 


#4
Оставлено
:

12 ноября 2014 г. 13:20:03(UTC)

Михаил Хоменко

Статус: Активный участник

Группы: Администраторы, Участники
Зарегистрирован: 28.04.2010(UTC)
Сообщений: 140
Мужчина
Откуда: Крипто-Про

Поблагодарили: 15 раз в 14 постах

Добрый день,

Скорей всего у вас недонастроен Центр Идентификации DSS.
Выполните команду Get-DssStsProperties, если св-во «Адрес веб интерфейса Сервера Подписи» будет пустым:
Заполните его значением «http(s):\<host>Frontend» через командлет Set-DssStsProperties -FrontendUrl <value>


Вверх

thanks 1 пользователь поблагодарил Михаил Хоменко за этот пост.

CommonUsr

оставлено 12.11.2014(UTC)


Offline

CommonUsr

 


#5
Оставлено
:

12 ноября 2014 г. 13:38:16(UTC)

CommonUsr

Статус: Активный участник

Группы: Участники

Зарегистрирован: 17.10.2013(UTC)
Сообщений: 35

Сказал(а) «Спасибо»: 12 раз

Спасибо большое.


Вверх


Offline

CommonUsr

 


#6
Оставлено
:

12 ноября 2014 г. 16:12:40(UTC)

CommonUsr

Статус: Активный участник

Группы: Участники

Зарегистрирован: 17.10.2013(UTC)
Сообщений: 35

Сказал(а) «Спасибо»: 12 раз

При попытке зайти в «Управление пользователем» выпадает «Ошибка при получении политики сервера подписи».

ERROR : Произошла ошибка во время работы контроллера DSS.Web.Frontend.Controllers.UsersController
Действие Index
DSS.Common.Web.Exceptions.DssWebConfigurationException: Ошибка при получении политики сервера подписи. —> System.InvalidOperationException: Ошибка при получении политики сервера подписи. —> System.ServiceModel.Security.MessageSecurityException: Незащищенное или неправильно защищенное сообщение об ошибке было получено от другой стороны. Код ошибки и описание см. внутреннее исключение. —> System.ServiceModel.FaultException: Обработка сообщения невозможно, так как действие «http://dss.cryptopro.ru/services/2014/08/IAdvancedSignService/GetPolicy» недопустимо или нераспознано.
— Конец трассировки внутреннего стека исключений —

Server stack trace:
в System.ServiceModel.Security.SecuritySessionClientSettings`1.SecurityRequestSessionChannel.ProcessReply(Message reply, TimeSpan timeout, SecurityProtocolCorrelationState correlationState)
в System.ServiceModel.Security.SecuritySessionClientSettings`1.SecurityRequestSessionChannel.Request(Message message, TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
в System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
в System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:
в System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
в System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
в DSS.Common.Service.IAdvancedSignService.GetPolicy()
в DSS.Web.Frontend.FrontendWebApplication.GetSignServerPolicy(ChannelFactory`1 ssChannelFactory, String realm, Boolean throwOnException)
— Конец трассировки внутреннего стека исключений —
— Конец трассировки внутреннего стека исключений —
в DSS.Web.Frontend.FrontendWebApplication.GetSignServerPolicy(ChannelFactory`1 ssChannelFactory, String realm, Boolean throwOnException)
в DSS.Web.Frontend.FrontendWebApplication.get_SignServerPolicy()
в DSS.Web.Frontend.Controllers.UsersController.Index()
в lambda_method(Closure , ControllerBase , Object[] )
в System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
в System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
в System.Web.Mvc.Async.AsyncControllerActionInvoker.<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, ActionInvocation innerInvokeState)
в System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`2.CallEndDelegate(IAsyncResult asyncResult)
в System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<InvokeActionMethodFilterAsynchronouslyRecursive>b__3f()
в System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass48.<InvokeActionMethodFilterAsynchronouslyRecursive>b__41()
в System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass33.<BeginInvokeActionMethodWithFilters>b__32(IAsyncResult asyncResult)
в System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<>c__DisplayClass2b.<BeginInvokeAction>b__1c()
в System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass21.<BeginInvokeAction>b__1e(IAsyncResult asyncResult)
Ошибка при получении политики сервера подписи.
Ошибка при получении политики сервера подписи.
Незащищенное или неправильно защищенное сообщение об ошибке было получено от другой стороны. Код ошибки и описание см. внутреннее исключение.
Обработка сообщения невозможно, так как действие «http://dss.cryptopro.ru/services/2014/08/IAdvancedSignService/GetPolicy» недопустимо или нераспознано.

Просморел все настройки. Единственно, что показалось не так: отсутсвовал параметр PrivateCabUrl при вызове Get-DSSIdentityProvider. Установил значение https://<host>/STS/Users/UserPrivateCab/
Но ничего не изменилось.


Вверх


Offline

khomenko

 


#7
Оставлено
:

13 ноября 2014 г. 18:00:16(UTC)

Михаил Хоменко

Статус: Активный участник

Группы: Администраторы, Участники
Зарегистрирован: 28.04.2010(UTC)
Сообщений: 140
Мужчина
Откуда: Крипто-Про

Поблагодарили: 15 раз в 14 постах

Здравствуйте,

В руководстве администратора DSS в разделе 6.2.11 — опечатка в адресе Сервера подписи :(

Выполните команду:
Set-DssFeProperties -SignServerAddress «http://<адрес компонента SignServer>/SignServer/SignServiceEx.svc»
(SignService.svc -> SignServiceEx.svc)

Отредактировано пользователем 13 ноября 2014 г. 18:05:03(UTC)
 | Причина: Не указана


Вверх

thanks 1 пользователь поблагодарил Михаил Хоменко за этот пост.

CommonUsr

оставлено 14.11.2014(UTC)


Offline

CommonUsr

 


#8
Оставлено
:

14 ноября 2014 г. 8:28:23(UTC)

CommonUsr

Статус: Активный участник

Группы: Участники

Зарегистрирован: 17.10.2013(UTC)
Сообщений: 35

Сказал(а) «Спасибо»: 12 раз

Добрый день! Спасибо помогло. Так же была еще одна ошибка «Алгоритм ключа сертификата не поддерживается». Видимо из-за того, что сервисный сертификат у меня был ГОСТовый и он же был привязан в IIS (на тестовой машине развернул уц и дсс вместе). Без гостового сертификата в привязках ЦР терял связь с ЦС, поэтому обошелся отдельным rsa сертом для сервисов DSS и гостовым для IIS.


Вверх

Пользователи, просматривающие эту тему

Guest

Быстрый переход
 

Вы не можете создавать новые темы в этом форуме.

Вы не можете отвечать в этом форуме.

Вы не можете удалять Ваши сообщения в этом форуме.

Вы не можете редактировать Ваши сообщения в этом форуме.

Вы не можете создавать опросы в этом форуме.

Вы не можете голосовать в этом форуме.

I have the below given setting in my web.config of my WCF service, this was working fine till today and suddenly started giving the error «An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail.» I have verified the time in my server and client it’s same.
Any thoughts?

<bindings>
  <customBinding>
    <binding name="stsBinding">
      <security authenticationMode="UserNameOverTransport" requireDerivedKeys="false"
          keyEntropyMode="ServerEntropy" requireSecurityContextCancellation="false"
          requireSignatureConfirmation="false">
      </security>
      <httpsTransport maxReceivedMessageSize="66665536"/>
    </binding>
  </customBinding>

  <wsFederationHttpBinding>
    <binding name="serviceFederation">

      <readerQuotas maxStringContentLength="2147483647"
               maxDepth="2147483647"
               maxBytesPerRead="2147483647"
               maxArrayLength="2147483647"/>

      <security mode="TransportWithMessageCredential">
        <!-- Ping token type MUST be SAML 1.1, do not change -->
        <message issuedTokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV1.1"
            negotiateServiceCredential="false">
          <!-- TODO: You must put the proper issuer URN of the Ping STS; normally this would be the Ping base URL -->
          <issuer address="https://my-sso-server.com"
              binding="customBinding" bindingConfiguration="stsBinding" />
        </message>
      </security>
    </binding>

asked Nov 10, 2010 at 15:29

blue's user avatar

Things to check:

  • Is there any windows patch that has been installed, sometimes this tightens security and stops things working.
  • Is there a password that has expired, often the cause when things stop working.

answered Nov 10, 2010 at 16:38

Shiraz Bhaiji's user avatar

Shiraz BhaijiShiraz Bhaiji

63.7k33 gold badges143 silver badges248 bronze badges

0

19 ответов

Это очень непонятная ошибка, которую бросают службы WCF. Проблема в том, что WCF не может проверить безопасность сообщения, которое было передано службе.

Это почти всегда из-за перекоса сервера. Удаленный сервер и время системы клиента должны находиться в пределах (обычно) 10 минут друг от друга. Если это не так, проверка безопасности не удастся.

Я бы назвал eloqua.com и узнал, что у них на сервере, и сравним это с вашим сервером.

Randolpho
09 янв. 2010, в 01:13

Поделиться

Хотя ваша проблема была решена с помощью одного из вышеперечисленных решений, в интересах других, здесь есть еще один вариант.

Вы также можете получить это исключение, когда неверные учетные данные передаются на базовую конечную точку (SOAP 1.1), которая использует учетные данные пользователя, как вы. Например, если вы вызываете службу из кода и делаете что-то вроде этого:

var service = new TestService();

service.ClientCredentials.UserName.UserName = "InvalidUser";
service.ClientCredentials.UserName.Password = "InvalidPass";

Это отличается от конечной точки WSHTTP (SOAP 1.2), которая выдает AccessDeniedException, когда пропускаются недопустимые учетные данные. Я лично считаю, что содержащееся здесь сообщение мало вводит в заблуждение (это, безусловно, стоило мне нескольких минут, когда я впервые столкнулся с этим по этой причине), но основная причина была ясна, когда я консультировался с журналами трассировки диагностики WCF.

Xcalibur
02 сен. 2011, в 09:00

Поделиться

У вас, очевидно, проблема с подсистемой безопасности WCF. Какая привязка вы используете? Какая аутентификация? Шифрование? Подписание? Вам нужно пересечь границы домена?

Немного оглядываясь дальше показывает, что другие испытывают эту ошибку, если часы клиента и сервера не синхронизированы (более пяти минут), потому что некоторые схемы безопасности полагаются на синхронизированные часы.

Daniel Brückner
27 сен. 2009, в 23:27

Поделиться

Такая же проблема, с которой я столкнулся с моим клиентским приложением, — это приложение WinForms С# 4.0

Когда я прочитал здесь решение, я проверил дату и время клиентского компьютера, но это было правильно, и текущее время показывалось, но все же я столкнулся с этой проблемой.

После некоторого рабочего дня я обнаружил, что выбран неправильный часовой пояс, я в Индии, а часовой пояс — в Канаде, хост-сервер находится в Кувейте.

Я обнаружил, что система преобразует время в универсальное время.

Когда я изменил часовой пояс в часовом поясе Индии, проблема была подобрана.

Haider Ali Wajihi
31 авг. 2013, в 14:42

Поделиться

Если вы передаете учетные данные пользователя от клиента (согласно приведенному ниже блоку кода), он должен совпадать с именем пользователя/паролем на сервере. в противном случае вы получите эту ошибку.

FYI, в моем случае я использую «basicHTTPAuthentication» с режимом безопасности «TransportWithMessageCredential». И служба WCF размещена в IIS на https.

var service = new TestService();

service.ClientCredentials.UserName.UserName = "InvalidUser";
service.ClientCredentials.UserName.Password = "InvalidPass";

Надеюсь, это поможет кому-то…:)

user2206393
25 март 2013, в 07:42

Поделиться

Попробуйте изменить режим безопасности на «транспорт».

У вас есть несоответствие между тегом безопасности и транспортным тегом.

Shiraz Bhaiji
01 окт. 2009, в 16:01

Поделиться

В моем случае, когда я изменил протокол wshttpbinding от https до http, он начал работать.

chintan
18 май 2012, в 08:13

Поделиться

Для чего это стоит — у меня также была эта ошибка и я обнаружил, что она была вызвана строкой соединения в веб-службах, где web.config настроен на подключение к неправильной машине.

Chris B
19 июль 2011, в 14:57

Поделиться

Просто ради обмена… У меня был редкий случай, который заставил меня почесывать затылок на несколько минут. Даже в то время, когда решение по перекос было очень точным, и я решил эту проблему раньше, на этот раз было иначе. Я был на новой машине Win8.1, которую я помню, имея проблему с часовым поясом, и я вручную скорректировал время. Ну, я продолжал получать ошибку, несмотря на то, что время, отображаемое на сервере, и у клиента было только разницей в секундах. То, что я сделал, это активировать «летнее сохранение» (обратите внимание, что я действительно в летнее время, но при настройке времени вручную) в «настройке даты и времени» затем перешел в раздел времени в Интернете и обновил… время в мой компьютер сохранял то же самое, но ошибка исчезла.

Надеюсь, это полезно для всех!

Jemil Marcos
02 авг. 2015, в 17:28

Поделиться

В моем случае я использовал сертификаты для проверки подлинности с помощью параметра certificateValidationMode, установленного в «PeerTrust», и я забыл установить сертификат клиента в хранилище Windows (LocalMachineTrustedPeople), чтобы сделать его принятым сервером.

Milton Carranza
28 июль 2015, в 18:35

Поделиться

В моем случае я получал эту ошибку на той же машине, в своем тестовом клиент-серверном приложении. Но эта проблема была решена с помощью «Справочной службы обновления».

  • Тушар Г. Валабалкар

user605172
06 фев. 2011, в 10:30

Поделиться

У меня также была эта проблема из справочной службы, устаревшей, даже с сервером и клиентом на том же компьютере. Запуск «Update Service Reference» обычно исправляет это, если это проблема.

Sam
24 авг. 2010, в 06:44

Поделиться

Мне пришлось изменить SecurityMode на Message (WSHttpBinding), прежде чем он сработает. т.е.

_wcf = new ServiceRequestClient(new WSHttpBinding(SecurityMode.Message),                     
       new EndpointAddress(_wcfRequestServerAddress));

JarmoP
14 дек. 2017, в 12:28

Поделиться

<wsHttpBinding>
        <binding name="ISG_Binding_Configuration" bypassProxyOnLocal="true" useDefaultWebProxy="false" hostNameComparisonMode="WeakWildcard" sendTimeout="00:30:00" receiveTimeout="00:30:00" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647">
          <readerQuotas maxArrayLength="2147483647" maxStringContentLength="2147483647" />
          <security mode="None">
            <message establishSecurityContext="false" clientCredentialType="UserName"/>
          </security>
        </binding>
      </wsHttpBinding>

Ankit Jain
19 июль 2017, в 12:24

Поделиться

В большинстве случаев это исключение возникает, когда на сервере возникают ошибки, наиболее распространенная из них — неправильная конфигурация базы данных аутентификации или аутентификация. В моем случае была другая синхронизация часов
убедитесь, что оба клиента и сервера имеют одинаковые настройки

Нажмите «Время на стороне справа» → «Изменить параметры времени…» → «Время в Интернете» → Изменить настройки… → установите флажок «Синхронизировать с интернет-сервером времени» если он не установлен → из раскрывающегося списка сервера выберите «times.windows.com» → Обновить сейчас → ОК

Adeel Nazir
14 март 2017, в 09:38

Поделиться

Я получал эту ошибку из-за того, что BasicHttpBinding не отправлял совместимое messageVersion в службу, которую я вызывал. Мое решение состояло в том, чтобы использовать пользовательскую привязку, как показано ниже

 <bindings>
  <customBinding>
    <binding name="Soap11UserNameOverTransport" openTimeout="00:01:00" receiveTimeout="00:1:00" >
      <security authenticationMode="UserNameOverTransport">
      </security>          
      <textMessageEncoding messageVersion="Soap11WSAddressing10" writeEncoding="utf-8" />
      <httpsTransport></httpsTransport>
    </binding>
  </customBinding>      
</bindings>

Lukie
20 фев. 2015, в 03:41

Поделиться

Попробуйте следующее:

catch (System.Reflection.TargetInvocationException e1)  
      String excType   
      excType = e1.InnerException.GetType().ToString()  
      choose case excType  
                case "System.ServiceModel.FaultException"  
                          System.ServiceModel.FaultException e2  
                          e2 = e1.InnerException  
                          System.ServiceModel.Channels.MessageFault fault  
                          fault = e2.CreateMessageFault()  
                          ls_message = "Class: uo_bcfeWS, Method: registraUnilateral ~r~n" + "Exception(1): " + fault.Reason.ToString()   
                          if (fault.HasDetail) then  
                                    System.Xml.XmlReader reader  
                                    reader = fault.GetReaderAtDetailContents()  
                                    ls_message += " " + reader.Value  
                                    do while reader.Read()  
                                              ls_message += reader.Value  
                                    loop  
                          end if  
                case "System.Text.DecoderFallbackException"  
                          System.Text.DecoderFallbackException e3  
                          e3 = e1.InnerException  
                          ls_message = "Class: uo_bcfeWS, Method: registraUnilateral ~r~n" + "Exception(1): " + e3.Message   
                case else  
                          ls_message = "Class: uo_bcfeWS, Method: registraUnilateral ~r~n" + "Exception(1): " + e1.Message  
      end choose  
      MessageBox ( "Error", ls_message )  
      //logError(ls_message)  
      return false  

Omar Trinidad Chavez Mojarro
12 дек. 2014, в 03:30

Поделиться

Убедитесь, что ваш SendTimeout не прошел после открытия клиента.

albertjan
30 июль 2014, в 09:05

Поделиться

В моем случае есть две проблемы, которые будут генерировать это исключение.

Обратите внимание, что моя среда использует Single Sign On (или STS, если хотите) для аутентификации пользователя через сайт MVC ASP.NET. Сайт MVC, в свою очередь, вызывает вызов службы к моей конечной точке службы, передавая токен-носитель, который он запрашивал с сервера STS с токеном Bootstrap ранее. Ошибка, которую я получил, — это когда я сделал вызов службы с сайта MVC.

  • Служба WCF не была настроена как полагающаяся сторона в моем SSO (или STS, если вы предпочитаете).

  • Конфигурация сервиса не была настроена должным образом. В частности, для аудитории uris node для system.identityModel. Он должен точно соответствовать URL-адресу конечной точки службы.

    <system.identityModel>
        <identityConfiguration>
            <audienceUris>
                <add value="https://localhost/IdpExample.YService/YService.svc" />
            </audienceUris>
            ....
        </identityConfiguration>
    </system.identityModel>
    

stack247
13 июнь 2014, в 01:09

Поделиться

Ещё вопросы

  • 1Как я могу удалить список языковых настроек в исходном уровне Android?
  • 0MySQL, как найти общие данные в нескольких таблицах
  • 0Allegro5: выводит инт на экран
  • 0Angular требует два клика, чтобы показать местоположение Google Geocode
  • 1Как читать PDF-файлы на азиатских языках (китайский, японский, тайский и т. Д.) И хранить их в виде строки в python
  • 0Код Jquery для разделения ссылки href
  • 1Одинаковые элементы массива
  • 0CMAC: очень длинное целое число в качестве начального числа для функции random ()
  • 1Массовая вставка текстового файла в SQL Server с помощью pymssql
  • 1OAuth Google Plus войдите в систему: 400. Это ошибка. Ошибка: redirect_uri_mismatch
  • 0JQuery добавление входного Val вместе
  • 0Как работать с сим-данными по дифференциальным уравнениям
  • 0Угловая директива для пользовательской проверки
  • 1Hibernate softdelete — индекс столбца вне диапазона исключений при мягком удалении
  • 0как вызвать функцию angular синхронно, чтобы вернуть результат функции вне angular
  • 1Вектор Drawable внутри Layer-List растягивается
  • 0Программа не запускается (.exe не может быть найден)
  • 1NotFoundError: Тензорное имя «Предсказание / InceptionResnetV2 / AuxLogits / Conv2d_1b_1x1 / BatchNorm / beta» не найдено в файлах контрольных точек
  • 1Понимание 3D-моделей и узлов в Libgdx
  • 0G ++ с Mountain Lion поддерживает -msse4.2?
  • 0Жасмин тест для угловой директивы не работает
  • 1словарь ключа и списка — удалить ключ, если какое-либо значение в списке отсутствует
  • 0@media не работает правильно для меня
  • 0Вызов метода производного класса из общей ссылки на базовый класс
  • 0Не могу получить подготовленное заявление для печати в php
  • 0Флажок манипулирования вводом
  • 1Рельсы — относительные пути — методы
  • 0C ++ store количество раз, когда main называется [closed]
  • 1Как контролировать отображение окон tkinter Toplevel?
  • 1Рекурсивный метод изменения словаря во время итерации
  • 1Офлайновые фрагменты в объемных данных
  • 0Строки исчезают на Datatables?
  • 0Перетащите информацию таблицы?
  • 0Динамический CSS с AnguarJS / Ionic Framework
  • 1JAXP — поиск в каталоге отладки XSD
  • 0Как получить время 2 часа от текущего времени в IONIC
  • 0Сортировка списка, содержащего классы, на основе закрытых членов класса
  • 0Стандартный метод обработки не найденных (404) ошибок во всех видах веб-серверов
  • 0C # UWP Форма входа, проверяющая учетные данные в удаленной базе данных MySQL
  • 0Mustache_Autoloader отсутствует с Composer
  • 1Попытка понять сложность пространства вывода каскадных строк
  • 1Websocket не может установить соединение
  • 0Fat Free Framework возвращает ошибку 404 с пользовательскими маршрутами
  • 0PHP — извлекать числа и заключать их в <span>
  • 0Запустите .exe файл кода C, используя Eclipse
  • 0Я пытаюсь сделать регистрационную форму с MySQL в Java, и это дает мне ошибку
  • 0проверочный код с <a> <noscript>
  • 1Как найти приблизительные координаты из четырех разных списков и координат
  • 0Время компиляции сгенерированный идентификатор типа константы
  • 0Создайте «форму расчета» в javascript

настройки сервера:

<?xml version="1.0"?>
<configuration>
<system.serviceModel>
    <behaviors>
        <serviceBehaviors>
            <behavior name="ServiceCredentialsBehavior">
                <serviceCredentials>
                    <serviceCertificate findValue="cn=cool" storeName="TrustedPeople" storeLocation="CurrentUser" />
                </serviceCredentials>
                <serviceMetadata httpGetEnabled="true" />
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <services>
        <service behaviorConfiguration="ServiceCredentialsBehavior" name="Service">
            <endpoint address="" binding="wsHttpBinding" bindingConfiguration="MessageAndUserName" name="SecuredByTransportEndpoint" contract="IService"/>
        </service>
    </services>
    <bindings>
        <wsHttpBinding>
            <binding name="MessageAndUserName">
                <security mode="Message">
                    <message clientCredentialType="UserName"/>
                </security>
            </binding>
        </wsHttpBinding>
    </bindings>
    <client/>
</system.serviceModel>
<system.web>
    <compilation debug="true"/>
</system.web>

конфигурация моего клиента:

<?xml version="1.0" encoding="utf-8"?>
  <configuration>
<system.serviceModel>
    <behaviors>
        <endpointBehaviors>
            <behavior name="LocalCertValidation">
                <clientCredentials>
                    <serviceCertificate>
                        <authentication certificateValidationMode="PeerTrust" trustedStoreLocation="CurrentUser" />
                    </serviceCertificate>
                </clientCredentials>
            </behavior>
        </endpointBehaviors>
    </behaviors>
    <bindings>
        <wsHttpBinding>
            <binding name="WSHttpBinding_IService" >
                <security mode="Message">
                    <message clientCredentialType="UserName" />
                </security>
            </binding>
        </wsHttpBinding>
    </bindings>
    <client>
        <endpoint address="http://localhost:48097/WCFServer/Service.svc"
                  binding="wsHttpBinding"
                  bindingConfiguration="WSHttpBinding_IService"
                  contract="ServiceReference1.IService"
                  name="WSHttpBinding_IService" behaviorConfiguration="LocalCertValidation">
            <identity>
                <dns value ="cool" />
            </identity>
        </endpoint>
    </client>
</system.serviceModel>

сервис:

public string TestAccess()
{
    return OperationContext.Current.ServiceSecurityContext.PrimaryIdentity.Name;
}

клиент:

        ServiceClient client = new ServiceClient();
        client.ClientCredentials.UserName.UserName = "Admin";
        client.ClientCredentials.UserName.Password = "123";
        Console.WriteLine(client.TestAccess());
        Console.ReadLine();

ошибка:
Незащищенное или неправильно защищенное сообщение об ошибке было получено от другой стороны. См для код ошибки и описание.
внутреннее исключение:
По крайней мере один маркер безопасности в сообщении не удалось подтвердить.

как разрешить это исключение?

2 ответов



поскольку сообщение об ошибке довольно неясно, я подумал, что я бы поставил его там как другое возможное решение.

моя среда использует единый вход (или STS, если вы предпочитаете) для аутентификации пользователя через ASP.NET сайт MVC. Сайт MVC, в свою очередь, выполняет вызов службы в мою конечную точку службы, передавая маркер носителя, который он запросил у сервера STS с маркером начальной загрузки ранее. Ошибка, которую я получил, была, когда я сделал вызов службы с сайта MVC.

в моем случае, это вызвало по конфигурации моей службы, как указано ниже. В частности, узел audienceUris должен точно соответствовать конечной точке службы:

<system.identityModel>
    <identityConfiguration>
        <audienceUris>
            <add value="https://localhost/IdpExample.YService/YService.svc" />
        </audienceUris>
        ....
    </identityConfiguration>
</system.identityModel>

HTH.


  • Remove From My Forums
  • Вопрос

  • Добрый день, господа. Подскажите, куда копать.

    Windows Server 2008 R2 32 bit.

    В IIS развернут узел,  — сайт web-forms,с аутентификацией по сертификату. 

    Есть ссылка на wcf, от которой получает данные. 

     При запускe на iisexpress через VS2013 в режиме отладки — все хорошо. После публикации и размещения на вышеуказанном сервере — вот такая ошибка:

    Ошибка сервера в приложении ‘/’.


    An error occurred when verifying security for the message.

    Описание: Необработанное исключение при выполнении текущего веб-запроса. Изучите трассировку стека для получения дополнительных сведений о данной ошибке и о вызвавшем ее фрагменте кода.

    Сведения об исключении: System.ServiceModel.FaultException: An error occurred when verifying security for the message.

    Ошибка источника:

    Необработанное исключение при выполнении текущего веб-запроса. Информацию о происхождении и месте возникновения исключения можно получить, используя следующую трассировку стека исключений.

    Трассировка стека:

    [FaultException: An error occurred when verifying security for the message.]
    
    [MessageSecurityException: Незащищенное или неправильно защищенное сообщение об ошибке было получено от другой стороны. Код ошибки и описание см. внутреннее исключение.]
       System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) +10818447
       System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) +336
       Service_portal.ServiceReference.IHotLine.GetData(String ProcName, CustomParams[] _params, String DBname) +0
       Service_portal.ContactClass.AddParams(String name, String value, String proc, String dbnum) +276
       Service_portal.ControlDistionary.Page_Load(Object sender, EventArgs e) +59
       System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +51
       System.Web.UI.Control.OnLoad(EventArgs e) +92
       System.Web.UI.Control.LoadRecursive() +54
       System.Web.UI.Control.LoadRecursive() +145
       System.Web.UI.Control.LoadRecursive() +145
       System.Web.UI.Control.LoadRecursive() +145
       System.Web.UI.Control.LoadRecursive() +145
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +772
    

    • Перемещено

      26 марта 2015 г. 11:36

Ответы

  • Здравствуйте,

    Похоже на ошибку с WCF, как одна из возможных причин, если время клиента и сервера отличается более чем на 10 минут, то не удастся пройти
    проверку безопасности .


    Best Regards, Andrei …
    Microsoft Certified Professional

    • Предложено в качестве ответа
      Tomas Lilov
      26 марта 2015 г. 12:30
    • Помечено в качестве ответа
      Иван ПродановMicrosoft contingent staff, Moderator
      31 марта 2015 г. 7:50

Понравилась статья? Поделить с друзьями:
  • Неизвестная ошибка 10012 mi home
  • Незачем ошибки считать
  • Незамеченный герой или ошибка альбуса дамблдора фанфик
  • Незамеченные учителем ошибки как пишется
  • Незамеченные студентом ошибки