IIS 7.5 Что я делаю не так? - PullRequest
0 голосов
/ 19 мая 2010

В IIS 7.5 под Windows 7 Utilmate у меня есть приложение, которое настроено для аутентификации следующим образом: Аноним & Windows

На веб-сайте ASP.NET я включил проверку подлинности с помощью форм и идентификацию личности = true Я также запрещаю анонимным пользователям.

<authentication mode="Forms">
</authentication>
<identity impersonate="true"/>
<authorization>
<deny user="?">
</authorization>

IIS жалуется. Что я делаю неправильно... Чего я хочу добиться: я хочу, чтобы пользователь Windows вошел в систему, чтобы я мог создать билет FormsAuthentication и передать его в Passive STS. Таким образом, в IIS у меня есть аноним и окна ... Если отмечены только окна, я не могу перейти на страницу Login.aspx, так как у меня есть дополнительный параметр для передачи оттуда. Итак, теперь в webconfig я отключаю анонимных пользователей, говоря deny user = "?" , так что он оставляет меня с аутентифицированным пользователем Windows, но с использованием проверки подлинности с помощью форм. Вы знаете, что я имею в виду ??

http://msdn.microsoft.com/en-us/library/ff649264.aspx

Если вы видите Таблицу 4 IIS Integrated Windows для IIS, тогда Web.config задает 3-ю строку, соответственно WindowsIdentity - Domian \ Username. Работает на IIS 6.0 win2003 / IIS 5.1 под XP

1 Ответ

0 голосов
/ 31 мая 2010

Если это приложение, которое использует идентификацию на основе утверждений, то ответственность за аутентификацию пользователей лежит на самом STS, а не в приложении.

Если вы настраиваете свое (веб) приложение для доверия внешней STS, тогда ваш режим аутентификации будет " Нет ", и у вас будет целый раздел в файле конфигурации для " Microsoft.identityModel ». Затем вы должны настроить адрес STS (атрибут эмитент ). Примерно так:

<microsoft.identityModel>
<service>
  <audienceUris>
    <add value="https://aexpense-dev.adatum.com/" />
  </audienceUris>
  <federatedAuthentication>
    <wsFederation passiveRedirectEnabled="true" issuer="https://localhost/Adatum.SimulatedIssuer/" realm="https://aexpense-dev.adatum.com/" requireHttps="true" />
    <cookieHandler requireSsl="false" />
  </federatedAuthentication>
  <serviceCertificate>
    <certificateReference x509FindType="FindBySubjectDistinguishedName" findValue="CN=localhost"/>
  </serviceCertificate>
  <certificateValidation certificateValidationMode="None"/>
  <applicationService>
    <claimTypeRequired>
      <claimType type="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name" optional="true" />
    </claimTypeRequired>
  </applicationService>
  <issuerNameRegistry type="Microsoft.IdentityModel.Tokens.ConfigurationBasedIssuerNameRegistry, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
    <trustedIssuers>
      <add thumbprint="f260042d59e14937984c6183fbc6bfc71baf5462" name="https://localhost/Adatum.SimulatedIssuer/" />
    </trustedIssuers>
  </issuerNameRegistry>
</service>

Сам STS может использовать проверку подлинности с помощью форм или что-то еще, в зависимости от реализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...