2011-02-04 13 views
6

Próbuję dodać katalog do dostępu anon w IIS 7.5. Działa pod Web Dev, ale nie IIS 7.5Autoryzować katalog dla anonimowych użytkowników IIS 7.5?

Obecnie używam tego pliku web.config w katalogu. Jest to katalog z arkuszy stylów:

<?xml version="1.0"?> 
<!-- 
    Note: As an alternative to hand editing this file you can use the 
    web admin tool to configure settings for your application. Use 
    the Website->Asp.Net Configuration option in Visual Studio. 
    A full list of settings and comments can be found in 
    machine.config.comments usually located in 
    \Windows\Microsoft.Net\Framework\v2.x\Config 
--> 

    <configuration> 
     <appSettings/> 
     <connectionStrings/> 
     <system.web> 
      <authorization> 

       <allow users="*" /> 

      </authorization> 

     </system.web> 
    </configuration> 

Aktualizacja:

ja poszedłem do folderu i pod uwierzytelnianiem, zmieniłem uwierzytelnianie anonimowe od IIS_USR basenu. Wydaje się, że to poprawiło.

Będę nagradzać każdego, kto zapewnia bardzo dobre wyjaśnienie i zasoby do zrozumienia tego ustawienia. Również, jak zastosować go globalnie, dobrze byłoby wiedzieć - dla wszystkich folderów.

Odpowiedz

7

Od odpowiedziałeś na swoje pytanie, tutaj jest wyjaśnienie, które mogłyby pomóc

oferty autoryzacji z IIS, który będzie oferował zasobów. Te zasoby mają jednak własne zabezpieczenia, ponieważ są po prostu plikami w systemie plików.

Element Uwierzytelnianie w konfiguracji pomaga w określeniu, w jaki sposób usługi IIS będą identyfikować żądania użytkowników po ich zaakceptowaniu oraz podczas uzyskiwania dostępu do zasobów poza/poza usługami IIS.

Ustawiono to na poziomie witryny, zazwyczaj w pliku applicationHost.config na serwerze. Może on, jeśli zostanie poprawnie skonfigurowany, nadpisany na poziomie witryny.

IIS.net stron na ten temat:

http://www.iis.net/ConfigReference/system.webServer/security/authorization/add

http://www.iis.net/ConfigReference/system.webServer/security/authentication/anonymousAuthentication

Wersja .config, co zrobiłeś w interfejsie wynosi:

<location path="/yourSite"> 
    <system.webServer> 
     <security> 
     <authentication> 
      <anonymousAuthentication enabled="true" username="" /> 
      </authentication> 
     </security> 
    </system.webServer> 
</location> 

Na anon. auth method, pole username określa, które usługi IIS będą podszywać się pod dane zasoby. Jeśli go nie określisz, domyślnie użyje tożsamości pliku apppool.

Teraz, dlaczego to miało znaczenie ... sprawdź rzeczywisty plik na dysku (plik .css). Jeśli to rozwiąże problem, który oznaczałby, że IUSR nie ma dostępu do odczytu tego pliku.

0

Nie masz lokalizacji zdefiniowanej dla autoryzacji. Nie określasz także, jakiego rodzaju uwierzytelniania używasz w pliku web.config (jeśli jest).

<location path="/"> 
    <system.web> 
    <authorization> 
     <allow users="*"/> 
     </authorization> 
    </system.web> 
</location> 
Powiązane problemy