OVH Cloud OVH Cloud

Désespoire :-(( -- Protéger un sous-répertoire ?

7 réponses
Avatar
Olivier
Bonjour

J'ai mon site qui aurait un accès pour tout le monde.
Par contre, je voudrais réserver un sous-répertoire (et donc toutes les
pages web qui sont dedans) aux utilisateurs enregistrés.
Avec <Authentication mode="Forms">.

J'ai suivi l'exemple : http://support.microsoft.com/kb/308157/FR/
Bon tout marche mais seulement avec la racine du disque.

Si j'essaye avec un sous-répertoire de mon site ! ca marche pas ?
comment faire ?
Où placer les fichiers Web.Config ?
Que mettre dans <Authentication> et <Authorization> ?

Merci pour toute aide, car là, je sèche (malgré des recherches sur le web
:-(

Merci
Olivier

7 réponses

Avatar
Patrice Manac'h
Bonjour,

pour un sous répertoie, la syntaxe est du type :
<configuration>
<system.web>
<sessionState cookieless="true" timeout="10"/>
</system.web>

<!- Configuration for the "Sub1" subdirectory. -->
<location path="sub1">
<system.web>
<httpHandlers>
<add verb="*" path="Sub1.Scott" type="Sub1.Scott"/>
<add verb="*" path="Sub1.David" type="Sub1.David"/>
</httpHandlers>
</system.web>
</location>

<!- Configuration for the "Sub2" subdirectory. -->
<location path="sub2">
<system.web>
<httpHandlers>
<add verb="*" path="Sub2.Scott" type="Sub2.Scott"/>
<add verb="*" path="Sub2.David" type="Sub2.David"/>
</httpHandlers>
</system.web>
</location>
</configuration>

Cordialement,

P. Manac'h
MCS France

"Olivier" a écrit dans le message de news:

Bonjour

J'ai mon site qui aurait un accès pour tout le monde.
Par contre, je voudrais réserver un sous-répertoire (et donc toutes les
pages web qui sont dedans) aux utilisateurs enregistrés.
Avec <Authentication mode="Forms">.

J'ai suivi l'exemple : http://support.microsoft.com/kb/308157/FR/
Bon tout marche mais seulement avec la racine du disque.

Si j'essaye avec un sous-répertoire de mon site ! ca marche pas ?
comment faire ?
Où placer les fichiers Web.Config ?
Que mettre dans <Authentication> et <Authorization> ?

Merci pour toute aide, car là, je sèche (malgré des recherches sur le web
:-(

Merci
Olivier




Avatar
Olivier
Merci

Et ca, c'set dans le fichier Web.Config, mais où ?
A la racine du site ?
Je crée un autre fichier Web.Config dans le sous-répertoire ?

Merci
Olivier

"Patrice Manac'h" a écrit dans le message de
news:%
Bonjour,

pour un sous répertoie, la syntaxe est du type :
<configuration>
<system.web>
<sessionState cookieless="true" timeout="10"/>
</system.web>

<!- Configuration for the "Sub1" subdirectory. -->
<location path="sub1">
<system.web>
<httpHandlers>
<add verb="*" path="Sub1.Scott" type="Sub1.Scott"/>
<add verb="*" path="Sub1.David" type="Sub1.David"/>
</httpHandlers>
</system.web>
</location>

<!- Configuration for the "Sub2" subdirectory. -->
<location path="sub2">
<system.web>
<httpHandlers>
<add verb="*" path="Sub2.Scott" type="Sub2.Scott"/>
<add verb="*" path="Sub2.David" type="Sub2.David"/>
</httpHandlers>
</system.web>
</location>
</configuration>

Cordialement,

P. Manac'h
MCS France

"Olivier" a écrit dans le message de news:

> Bonjour
>
> J'ai mon site qui aurait un accès pour tout le monde.
> Par contre, je voudrais réserver un sous-répertoire (et donc toutes les
> pages web qui sont dedans) aux utilisateurs enregistrés.
> Avec <Authentication mode="Forms">.
>
> J'ai suivi l'exemple : http://support.microsoft.com/kb/308157/FR/
> Bon tout marche mais seulement avec la racine du disque.
>
> Si j'essaye avec un sous-répertoire de mon site ! ca marche pas ?
> comment faire ?
> Où placer les fichiers Web.Config ?
> Que mettre dans <Authentication> et <Authorization> ?
>
> Merci pour toute aide, car là, je sèche (malgré des recherches sur le


web
> :-(
>
> Merci
> Olivier
>
>




Avatar
Patrice Manac'h
Bonjour,

non, dans celui de la racine (pour que la notion de sous-répertoire ait un
sens).

Cordialement,

P. Manac'h
MCS France

"Olivier" a écrit dans le message de news:
%
Merci

Et ca, c'set dans le fichier Web.Config, mais où ?
A la racine du site ?
Je crée un autre fichier Web.Config dans le sous-répertoire ?

Merci
Olivier

"Patrice Manac'h" a écrit dans le message
de
news:%
Bonjour,

pour un sous répertoie, la syntaxe est du type :
<configuration>
<system.web>
<sessionState cookieless="true" timeout="10"/>
</system.web>

<!- Configuration for the "Sub1" subdirectory. -->
<location path="sub1">
<system.web>
<httpHandlers>
<add verb="*" path="Sub1.Scott" type="Sub1.Scott"/>
<add verb="*" path="Sub1.David" type="Sub1.David"/>
</httpHandlers>
</system.web>
</location>

<!- Configuration for the "Sub2" subdirectory. -->
<location path="sub2">
<system.web>
<httpHandlers>
<add verb="*" path="Sub2.Scott" type="Sub2.Scott"/>
<add verb="*" path="Sub2.David" type="Sub2.David"/>
</httpHandlers>
</system.web>
</location>
</configuration>

Cordialement,

P. Manac'h
MCS France

"Olivier" a écrit dans le message de news:

> Bonjour
>
> J'ai mon site qui aurait un accès pour tout le monde.
> Par contre, je voudrais réserver un sous-répertoire (et donc toutes les
> pages web qui sont dedans) aux utilisateurs enregistrés.
> Avec <Authentication mode="Forms">.
>
> J'ai suivi l'exemple : http://support.microsoft.com/kb/308157/FR/
> Bon tout marche mais seulement avec la racine du disque.
>
> Si j'essaye avec un sous-répertoire de mon site ! ca marche pas ?
> comment faire ?
> Où placer les fichiers Web.Config ?
> Que mettre dans <Authentication> et <Authorization> ?
>
> Merci pour toute aide, car là, je sèche (malgré des recherches sur le


web
> :-(
>
> Merci
> Olivier
>
>








Avatar
Olivier
merci beaucoup

olivier


"Patrice Manac'h" a écrit dans le message de
news:
Bonjour,

non, dans celui de la racine (pour que la notion de sous-répertoire ait un
sens).

Cordialement,

P. Manac'h
MCS France

"Olivier" a écrit dans le message de news:
%
> Merci
>
> Et ca, c'set dans le fichier Web.Config, mais où ?
> A la racine du site ?
> Je crée un autre fichier Web.Config dans le sous-répertoire ?
>
> Merci
> Olivier
>
> "Patrice Manac'h" a écrit dans le


message
> de
> news:%
>> Bonjour,
>>
>> pour un sous répertoie, la syntaxe est du type :
>> <configuration>
>> <system.web>
>> <sessionState cookieless="true" timeout="10"/>
>> </system.web>
>>
>> <!- Configuration for the "Sub1" subdirectory. -->
>> <location path="sub1">
>> <system.web>
>> <httpHandlers>
>> <add verb="*" path="Sub1.Scott" type="Sub1.Scott"/>
>> <add verb="*" path="Sub1.David" type="Sub1.David"/>
>> </httpHandlers>
>> </system.web>
>> </location>
>>
>> <!- Configuration for the "Sub2" subdirectory. -->
>> <location path="sub2">
>> <system.web>
>> <httpHandlers>
>> <add verb="*" path="Sub2.Scott" type="Sub2.Scott"/>
>> <add verb="*" path="Sub2.David" type="Sub2.David"/>
>> </httpHandlers>
>> </system.web>
>> </location>
>> </configuration>
>>
>> Cordialement,
>>
>> P. Manac'h
>> MCS France
>>
>> "Olivier" a écrit dans le message de news:
>>
>> > Bonjour
>> >
>> > J'ai mon site qui aurait un accès pour tout le monde.
>> > Par contre, je voudrais réserver un sous-répertoire (et donc toutes


les
>> > pages web qui sont dedans) aux utilisateurs enregistrés.
>> > Avec <Authentication mode="Forms">.
>> >
>> > J'ai suivi l'exemple : http://support.microsoft.com/kb/308157/FR/
>> > Bon tout marche mais seulement avec la racine du disque.
>> >
>> > Si j'essaye avec un sous-répertoire de mon site ! ca marche pas ?
>> > comment faire ?
>> > Où placer les fichiers Web.Config ?
>> > Que mettre dans <Authentication> et <Authorization> ?
>> >
>> > Merci pour toute aide, car là, je sèche (malgré des recherches sur le
> web
>> > :-(
>> >
>> > Merci
>> > Olivier
>> >
>> >
>>
>>
>
>




Avatar
Olivier
Heu ... désolé mais ca marche pas :-(

franchement y a un manque partout sur le net concernant cette question.
Impossible de trouver un exemple concernant un sous-répertoire ?

J'ai créé un projet ASP.NET avec
- une page Default.aspx (qui sera accessible pour tout le monde, même non
authentifié)
-je créé un sous répertoire [perso] avec dedans une page toto.aspx
ce répertoire [perso] et toutes les pages dedans sera NON accessible aux
personnes NON enregistrés.
et c'est là que je bloque :-((
Voici mon fichier Web.Config
' DEBUT ------------
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.web>
<compilation defaultLanguage="vb" debug="true" />
<customErrors mode="RemoteOnly" />

<authentication mode="Forms">
<forms name=".ASPXFORMSDEMO" loginUrl="logon.aspx" protection="All"
path="/" timeout="30" />
</authentication>

<location path="perso">
<system.web>
<httpHandlers>
<add verb="*" path="perso.olive" type="perso.olive" />
</httpHandlers>
</system.web>
</location>

<authorization>
<deny users="*" />
</authorization>

<trace enabled="false" requestLimit="10" pageOutput="false"
traceMode="SortByTime" localOnly="true" />

<sessionState mode="InProc"
stateConnectionString="tcpip7.0.0.1:42424" sqlConnectionString="data
source7.0.0.1;Trusted_Connection=yes"
cookieless="false" timeout="20" />

<globalization requestEncoding="utf-8" responseEncoding="utf-8" />

</system.web>
</configuration>

' FIN -----------

Merci pour votre effort

Olivier





"Patrice Manac'h" a écrit dans le message de
news:
Bonjour,

non, dans celui de la racine (pour que la notion de sous-répertoire ait un
sens).

Cordialement,

P. Manac'h
MCS France

"Olivier" a écrit dans le message de news:
%
> Merci
>
> Et ca, c'set dans le fichier Web.Config, mais où ?
> A la racine du site ?
> Je crée un autre fichier Web.Config dans le sous-répertoire ?
>
> Merci
> Olivier
>
> "Patrice Manac'h" a écrit dans le


message
> de
> news:%
>> Bonjour,
>>
>> pour un sous répertoie, la syntaxe est du type :
>> <configuration>
>> <system.web>
>> <sessionState cookieless="true" timeout="10"/>
>> </system.web>
>>
>> <!- Configuration for the "Sub1" subdirectory. -->
>> <location path="sub1">
>> <system.web>
>> <httpHandlers>
>> <add verb="*" path="Sub1.Scott" type="Sub1.Scott"/>
>> <add verb="*" path="Sub1.David" type="Sub1.David"/>
>> </httpHandlers>
>> </system.web>
>> </location>
>>
>> <!- Configuration for the "Sub2" subdirectory. -->
>> <location path="sub2">
>> <system.web>
>> <httpHandlers>
>> <add verb="*" path="Sub2.Scott" type="Sub2.Scott"/>
>> <add verb="*" path="Sub2.David" type="Sub2.David"/>
>> </httpHandlers>
>> </system.web>
>> </location>
>> </configuration>
>>
>> Cordialement,
>>
>> P. Manac'h
>> MCS France
>>
>> "Olivier" a écrit dans le message de news:
>>
>> > Bonjour
>> >
>> > J'ai mon site qui aurait un accès pour tout le monde.
>> > Par contre, je voudrais réserver un sous-répertoire (et donc toutes


les
>> > pages web qui sont dedans) aux utilisateurs enregistrés.
>> > Avec <Authentication mode="Forms">.
>> >
>> > J'ai suivi l'exemple : http://support.microsoft.com/kb/308157/FR/
>> > Bon tout marche mais seulement avec la racine du disque.
>> >
>> > Si j'essaye avec un sous-répertoire de mon site ! ca marche pas ?
>> > comment faire ?
>> > Où placer les fichiers Web.Config ?
>> > Que mettre dans <Authentication> et <Authorization> ?
>> >
>> > Merci pour toute aide, car là, je sèche (malgré des recherches sur le
> web
>> > :-(
>> >
>> > Merci
>> > Olivier
>> >
>> >
>>
>>
>
>




Avatar
Sacha
Le noeud <location ...> doit être à l'exterieur du noeud <system.web> mais
quand même dans <configuration>

ex:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.web>
....
</system.web>

<!-- un bloc location par sous-répertoire -->
<location path="perso">
<system.web>
<authorization>
<allow .. />
<deny .. />
</authorization>
</system.web>
</location>

<!-- fin du config après !!! -->
</configuration>


"Olivier" a écrit dans le message de
news:%
Heu ... désolé mais ca marche pas :-(

franchement y a un manque partout sur le net concernant cette question.
Impossible de trouver un exemple concernant un sous-répertoire ?

J'ai créé un projet ASP.NET avec
- une page Default.aspx (qui sera accessible pour tout le monde, même non
authentifié)
-je créé un sous répertoire [perso] avec dedans une page toto.aspx
ce répertoire [perso] et toutes les pages dedans sera NON accessible aux
personnes NON enregistrés.
et c'est là que je bloque :-((
Voici mon fichier Web.Config
' DEBUT ------------
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.web>
<compilation defaultLanguage="vb" debug="true" />
<customErrors mode="RemoteOnly" />

<authentication mode="Forms">
<forms name=".ASPXFORMSDEMO" loginUrl="logon.aspx" protection="All"
path="/" timeout="30" />
</authentication>

<location path="perso">
<system.web>
<httpHandlers>
<add verb="*" path="perso.olive" type="perso.olive" />
</httpHandlers>
</system.web>
</location>

<authorization>
<deny users="*" />
</authorization>

<trace enabled="false" requestLimit="10" pageOutput="false"
traceMode="SortByTime" localOnly="true" />

<sessionState mode="InProc"
stateConnectionString="tcpip7.0.0.1:42424" sqlConnectionString="data
source7.0.0.1;Trusted_Connection=yes"
cookieless="false" timeout="20" />

<globalization requestEncoding="utf-8" responseEncoding="utf-8" />

</system.web>
</configuration>

' FIN -----------

Merci pour votre effort

Olivier





"Patrice Manac'h" a écrit dans le message


de
news:
> Bonjour,
>
> non, dans celui de la racine (pour que la notion de sous-répertoire ait


un
> sens).
>
> Cordialement,
>
> P. Manac'h
> MCS France
>
> "Olivier" a écrit dans le message de news:
> %
> > Merci
> >
> > Et ca, c'set dans le fichier Web.Config, mais où ?
> > A la racine du site ?
> > Je crée un autre fichier Web.Config dans le sous-répertoire ?
> >
> > Merci
> > Olivier
> >
> > "Patrice Manac'h" a écrit dans le
message
> > de
> > news:%
> >> Bonjour,
> >>
> >> pour un sous répertoie, la syntaxe est du type :
> >> <configuration>
> >> <system.web>
> >> <sessionState cookieless="true" timeout="10"/>
> >> </system.web>
> >>
> >> <!- Configuration for the "Sub1" subdirectory. -->
> >> <location path="sub1">
> >> <system.web>
> >> <httpHandlers>
> >> <add verb="*" path="Sub1.Scott" type="Sub1.Scott"/>
> >> <add verb="*" path="Sub1.David" type="Sub1.David"/>
> >> </httpHandlers>
> >> </system.web>
> >> </location>
> >>
> >> <!- Configuration for the "Sub2" subdirectory. -->
> >> <location path="sub2">
> >> <system.web>
> >> <httpHandlers>
> >> <add verb="*" path="Sub2.Scott" type="Sub2.Scott"/>
> >> <add verb="*" path="Sub2.David" type="Sub2.David"/>
> >> </httpHandlers>
> >> </system.web>
> >> </location>
> >> </configuration>
> >>
> >> Cordialement,
> >>
> >> P. Manac'h
> >> MCS France
> >>
> >> "Olivier" a écrit dans le message de news:
> >>
> >> > Bonjour
> >> >
> >> > J'ai mon site qui aurait un accès pour tout le monde.
> >> > Par contre, je voudrais réserver un sous-répertoire (et donc toutes
les
> >> > pages web qui sont dedans) aux utilisateurs enregistrés.
> >> > Avec <Authentication mode="Forms">.
> >> >
> >> > J'ai suivi l'exemple : http://support.microsoft.com/kb/308157/FR/
> >> > Bon tout marche mais seulement avec la racine du disque.
> >> >
> >> > Si j'essaye avec un sous-répertoire de mon site ! ca marche pas ?
> >> > comment faire ?
> >> > Où placer les fichiers Web.Config ?
> >> > Que mettre dans <Authentication> et <Authorization> ?
> >> >
> >> > Merci pour toute aide, car là, je sèche (malgré des recherches sur


le
> > web
> >> > :-(
> >> >
> >> > Merci
> >> > Olivier
> >> >
> >> >
> >>
> >>
> >
> >
>
>




Avatar
Olivier
Bon après de longues heures de recherches :
Avec un fichier Web.Config à la racine du site, ca marche, ouf !!

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.web>
<compilation defaultLanguage="vb" debug="true" />

<customErrors mode="RemoteOnly" />

<authentication mode="Forms">
<forms name=".ASPXFORMSDEMO" loginUrl="perso/logon.aspx" protection="All"
path="/" timeout="30" />
</authentication>


<authorization>
<allow users="*" />
</authorization>


<trace enabled="false" requestLimit="10" pageOutput="false"
traceMode="SortByTime" localOnly="true" />

<sessionState mode="InProc"
stateConnectionString="tcpip7.0.0.1:42424" sqlConnectionString="data
source7.0.0.1;Trusted_Connection=yes"
cookieless="false" timeout="20" />

<globalization requestEncoding="utf-8" responseEncoding="utf-8" />

</system.web>

<location path="perso" >
<system.web>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</location>

</configuration>



Olivier


"Olivier" a écrit dans le message de
news:
Bonjour

J'ai mon site qui aurait un accès pour tout le monde.
Par contre, je voudrais réserver un sous-répertoire (et donc toutes les
pages web qui sont dedans) aux utilisateurs enregistrés.
Avec <Authentication mode="Forms">.

J'ai suivi l'exemple : http://support.microsoft.com/kb/308157/FR/
Bon tout marche mais seulement avec la racine du disque.

Si j'essaye avec un sous-répertoire de mon site ! ca marche pas ?
comment faire ?
Où placer les fichiers Web.Config ?
Que mettre dans <Authentication> et <Authorization> ?

Merci pour toute aide, car là, je sèche (malgré des recherches sur le web
:-(

Merci
Olivier