Hallo,
folgende Situation:
Ich möchte das Content Management System nur bestimmten Nutzern zugängig machen. Die Dateistruktur sieht folgender maßen aus:
<pre>
/ (root)
default.aspx
cms (dir)
default.aspx
content (dir)
default.aspx
<pre>
Aufbau der web.config Datei:
</pre>
01 <configuration>
02 <system.web>
03 <!-- Hier stehen die Konfigurationen, die für die gesamte Anwendung gelten -->
04 . . .
05
06 <!- Standarteinstellungen von VS.NET -->
07 <authentication mode="Windows" />
08 <authorization>
09 <allow users="*" />
10 </authorization>
11 . . .
12 </system.web>
13
14 <- Konfiguration für das Unterverzeichnis /cms/content -->
15 <location path = "/cms/content">
16 <system.web>
17 <authentication mode="Forms">
18 <forms name=".ASPXAUTH" loginUrl="/cms/default.aspx" />
19 </authentication>
20 <authorization>
21 <!- alle Benutzer in diesem Verzeichnis müssen angemldet sein ->
22 <deny users="?" />
23 </authorization>
24 </system.web>
25 </location>
26 </configuration>
</pre>
Wenn ich jetzt versuche eine Seite aus dem Verzeichnis <i>content</i> aufzurufen Bekomme ich eine Fehlermeldung bzw. Konfigurationsfehler.
Hier die ausgabe:
<b>Konfigurationsfehler</b>
Beschreibung: Beim Verarbeiten einer Konfigurationsdatei, die für diese Anforderung erforderlich ist, ist ein Fehler aufgetreten. Überprüfen Sie die unten angegebenen Fehlerinformationen und ändern Sie die Konfigurationsdatei entsprechend.
<b>Parser-Fehlermeldung:</b> Das Verwenden eines Abschnitts, der als allowDefinition='MachineToApplication' nach der Programmebene registriert ist, verursacht einen Fehler. Dieser Fehler kann von einem virtuellen Verzeichnis verursacht werden, das nicht als Anwendung in IIS konfiguriert ist.
<b>Quellfehler:</b>
Rot markiert ist dabei die Zeile 20 <authentication mode="Forms"<
Leider kann ich nicht mit diesen Information anfangen.
Wenn ich die Zeile 07 lösche und stattdessen die Zeilen 17 bis 19 an dessen Position verschiebe funktioniert es. Kann man nur einmal <authentication> in ein web.config Datei verwenden?
Ich habe zu diesem Thema noch eine Frage. Es wird bei dieser Art von Authentifizierung Cookies verwendet. Kann man die Eigenschaften dieser Cookies verändern (Gültigkeitsdauer und so ..).
Ich sage jetzt schon mal DANK! Stefan
folgende Situation:
Ich möchte das Content Management System nur bestimmten Nutzern zugängig machen. Die Dateistruktur sieht folgender maßen aus:
<pre>
/ (root)
default.aspx
cms (dir)
default.aspx
content (dir)
default.aspx
<pre>
Aufbau der web.config Datei:
</pre>
01 <configuration>
02 <system.web>
03 <!-- Hier stehen die Konfigurationen, die für die gesamte Anwendung gelten -->
04 . . .
05
06 <!- Standarteinstellungen von VS.NET -->
07 <authentication mode="Windows" />
08 <authorization>
09 <allow users="*" />
10 </authorization>
11 . . .
12 </system.web>
13
14 <- Konfiguration für das Unterverzeichnis /cms/content -->
15 <location path = "/cms/content">
16 <system.web>
17 <authentication mode="Forms">
18 <forms name=".ASPXAUTH" loginUrl="/cms/default.aspx" />
19 </authentication>
20 <authorization>
21 <!- alle Benutzer in diesem Verzeichnis müssen angemldet sein ->
22 <deny users="?" />
23 </authorization>
24 </system.web>
25 </location>
26 </configuration>
</pre>
Wenn ich jetzt versuche eine Seite aus dem Verzeichnis <i>content</i> aufzurufen Bekomme ich eine Fehlermeldung bzw. Konfigurationsfehler.
Hier die ausgabe:
<b>Konfigurationsfehler</b>
Beschreibung: Beim Verarbeiten einer Konfigurationsdatei, die für diese Anforderung erforderlich ist, ist ein Fehler aufgetreten. Überprüfen Sie die unten angegebenen Fehlerinformationen und ändern Sie die Konfigurationsdatei entsprechend.
<b>Parser-Fehlermeldung:</b> Das Verwenden eines Abschnitts, der als allowDefinition='MachineToApplication' nach der Programmebene registriert ist, verursacht einen Fehler. Dieser Fehler kann von einem virtuellen Verzeichnis verursacht werden, das nicht als Anwendung in IIS konfiguriert ist.
<b>Quellfehler:</b>
Rot markiert ist dabei die Zeile 20 <authentication mode="Forms"<
Leider kann ich nicht mit diesen Information anfangen.
Wenn ich die Zeile 07 lösche und stattdessen die Zeilen 17 bis 19 an dessen Position verschiebe funktioniert es. Kann man nur einmal <authentication> in ein web.config Datei verwenden?
Ich habe zu diesem Thema noch eine Frage. Es wird bei dieser Art von Authentifizierung Cookies verwendet. Kann man die Eigenschaften dieser Cookies verändern (Gültigkeitsdauer und so ..).
Ich sage jetzt schon mal DANK! Stefan
Comment