Ошибка безопасности аутентификации Windows WCF

Исправление нового сообщения о фиксации
git commit --amend

откроет Вашего редактора, позволяя Вам изменить сообщение о фиксации новой фиксации. Кроме того, можно установить сообщение о фиксации непосредственно в командной строке с:

git commit --amend -m "New commit message"

†¦ однако, это может сделать многострочные сообщения о фиксации или маленькие исправления более громоздкими для ввода.

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

Изменение сообщения фиксации, что Вы уже продвинули к своему удаленному ответвлению

, Если Вы уже продвинули свою фиксацию до Вашего удаленного ответвления, затем Вы будете , потребность вызвать продвигает фиксацию с:

git push   --force
# Or
git push   -f

Предупреждение: продвижение силы перезапишет удаленное ответвление с состоянием Вашего локального одно . Если будут фиксации на удаленном ответвлении, которое Вы не имеете в своем локальном ответвлении, то Вы будете терять те фиксации.

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

Использование интерактивная переоснова

Другая опция состоит в том, чтобы использовать интерактивную переоснову.
Это позволяет Вам редактировать любое сообщение, которое Вы хотите обновить, даже если это не последнее сообщение.

, Чтобы сделать сквош мерзавца, выполните эти шаги:

// X is the number of commits to the last commit you want to be able to edit
git rebase -i HEAD~X

, После того как Вы давите свои фиксации - выбирают e/r для редактирования сообщения

enter image description here

Важное примечание об Интерактивной переоснове

, Когда Вы используете git rebase -i HEAD~X может быть [еще 1148] , чем X фиксации. Мерзавец "соберет" все фиксации в последнем X фиксации и если было слияние, где-нибудь промежуточное, которые располагаются, Вы будете видеть все фиксации также, таким образом, результат будет X +.

Хороший совет:

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

Документация

7
задан 13 August 2009 в 05:19
поделиться

4 ответа

Для поддержки вашего сценария вам необходимо понимать, как работают Protocol Transition и Ограниченное делегирование . Для поддержки этого вам потребуется настроить как Active Directory, так и конечные точки службы WCF. Обратите внимание на использование имени участника-службы (SPN). Взгляните на следующую ссылку и посмотрите, помогут ли они вам. В статье есть образец, демонстрирующий полную сквозную конфигурацию, необходимую для выполнения этой работы.

Как: олицетворять первоначального вызывающего абонента при вызове WCF из веб-приложения

3
ответ дан 7 December 2019 в 14:36
поделиться

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

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

НО: вам обязательно стоит проверить WCF Руководство по безопасности на CodePlex и поиск по запросу "Impersonation"

0
ответ дан 7 December 2019 в 14:36
поделиться

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

DnsEndpointIdentity identity = new DnsEndpointIdentity("localhost"); // localhost is default. Change if your service uses a different value in the service's config.
Uri uri = new Uri("net.tcp://serverName:9990/TestService1");
endpoint = new EndpointAddress(uri, identity, new AddressHeaderCollection());
0
ответ дан 7 December 2019 в 14:36
поделиться

Согласитесь с marc_s, это проблема двойного перехода.

Вам нужно получить окна проверка подлинности на всем пути, поэтому:

  • Запрос должен быть сделан в контексте пользователей Windows
  • IIS должен быть настроен для использования проверки подлинности Windows
  • Web. config должен быть настроен для проверки подлинности Windows с impersonate = true
  • . Пользователь, от имени которого работает пул приложений, должен иметь право выдавать себя за пользователя. Это обычное место, где возникает проблема двойного перехода.

Существует право под названием «Выдача себя за клиента после аутентификации»

http://blogs.technet.com/askperf/archive/2007/10/16 /wmi-troubleshooting-impersonation-rights.aspx

1
ответ дан 7 December 2019 в 14:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: