Попробуйте добавить type="text/javascript"
, как показано ниже:
`<script type="text/javascript" src="{{ url_for('static', filename='js/responsivevoice.js') }}"> .
</script>`
Если Вы хотите, чтобы SQL-запросы были выполнены как явленные олицетворением идентификационные данные, Вы, возможно, на самом деле должны включить делегацию своего SQL-сервера. Проверьте эту статью для большего количества информации:
Делает Ваш клиент WCF, устанавливает необходимый "позволенный уровень олицетворения":
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<!-- .... -->
<behaviors>
<endpointBehaviors>
<behavior name="ImpersonationBehavior">
<clientCredentials>
<windows allowedImpersonationLevel="Impersonation" />
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
По умолчанию это установлено на Идентификацию, если ничто не указано явно. Проверьте это сообщение в блоге для большего количества информации.
спасибо парни, я решил его путем чтения XML под объявлением:
[OperationBehavior(Impersonation:=ImpersonationOption.Required)]
это работало только, когда я считал XML непосредственно из Класса WCFService.
Хм... Я не знаю. Однако Вы могли вынудить dll загрузиться вначале. Так как Вы используете IIS, это, по-видимому, было бы в Вашем global.asax - что-то как создание и выбрасывание, TransactionScope должен сделать задание...
Игрение вокруг с этим еще немного, самое легкое решение для IIS разместило сервисы, должно выполнить Ваш Пул приложений с идентификационными данными пользователя домена, который имеет необходимые полномочия. Существуют, вероятно, проблемы с этим с точки зрения безопасности, но в наших целях это достаточно хорошо. Мы можем ограничить полномочия, данные тому пользователю, но все работает, не имея необходимость входить в Kerberos, олицетворение, делегацию и тайны AD.
Спасибо, Хусейн. Я борюсь с этим последние полтора дня. Вот кое-что, что сэкономило бы мне массу времени. Надеюсь, это сэкономит время кому-то еще. У меня возникли проблемы с SQLConnection и олицетворением, когда доступ к реестру запрещен с использованием безопасности транспорта. Я пробовал даже использовать transportwithmessagecredential. Внутри procmon я получал "Bad Impersonation". Моя конфигурация В IIS 7 в виртуальном каталоге включена только проверка подлинности Windows, и я отключил проверку подлинности в режиме ядра. Основные настройки Я установил для него сквозную аутентификацию.
Конфигурация службы -
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="false" />
<services>
<service behaviorConfiguration="SymitarService.ScheduleServiceBehavior" name="SymitarService.ScheduleService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="wsSecure" contract="SymitarService.IScheduleService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="wsHttpBinding" bindingConfiguration="wsSecure" contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="SymitarService.UserDirectoryBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceAuthorization impersonateCallerForAllOperations="true" />
</behavior>
<behavior name="SymitarService.ScheduleServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceAuthorization impersonateCallerForAllOperations="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<netTcpBinding>
<binding name="tcpSecure" portSharingEnabled="true" />
</netTcpBinding>
<wsHttpBinding>
<binding name="wsSecure" allowCookies="true">
<security mode="Transport">
<transport clientCredentialType="Windows" proxyCredentialType="Windows" />
<message clientCredentialType="Windows" negotiateServiceCredential="true" />
</security>
</binding>
</wsHttpBinding>
<mexTcpBinding>
<binding name="mexSecure" />
</mexTcpBinding>
</bindings>
</system.serviceModel>
и клиент
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="WSHttpBinding_IScheduleService" closeTimeout="01:00:00" openTimeout="01:00:00" receiveTimeout="01:00:00" sendTimeout="01:00:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" useDefaultWebProxy="true" allowCookies="true">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<reliableSession ordered="true" inactivityTimeout="00:20:00" enabled="false" />
<security mode="Transport">
<transport clientCredentialType="Windows" proxyCredentialType="Windows" realm="" />
<message clientCredentialType="Windows" negotiateServiceCredential="true" establishSecurityContext="true" />
</security>
</binding>
</wsHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="ImpersonationBehavior">
<clientCredentials>
<windows allowedImpersonationLevel="Impersonation" allowNtlm="true"/>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<client>
<endpoint address="https://server:444/SymitarService/ScheduleService.svc"
binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_IScheduleService"
contract="Symitar.ScheduleService.IScheduleService"
name="WSHttpBinding_IScheduleService"
behaviorConfiguration="ImpersonationBehavior"
>
<identity>
<dns value="localhost" />
</identity>
</endpoint>
</client>
</system.serviceModel>