OVH Cloud OVH Cloud

ASP + chaine de connexion.

3 réponses
Avatar
Fabrice
Bonoir à tous.

- Je cherche des solutions pour protéger une chaine de connexion à une base
de données en ASP.
J'utilise actuellement une connexion ODBC sans DSN, le tout dans un fichier
.inc que je passe en Include dans les pages ASP.
Le problème dans tout cela est la "sécurité". Un fichier au format texte
contenant des informations sensibles.
Existe t il un moyen ou des manières de protéger cette chaine ? cryptage,
registre, global.asa ?

J'envisage aussi de procéder à la sécurisation d'un site.
- IIS avec SSL et certificat d'une société 1/3
- Authentification basé sur NT pour les utilisateurs du site.
- Peut etre même une authetification basé sur IP.

Pensez vous que cette sécurité peut être suffisante? ou existe t'il des
solutions plus performantes ?

Une dernière question, j'ose... quel est l'avenir dASP face à .net ? Est il
judicieux de coupler les 2 ?

Merci de vos réponses et de votre aide

Fabrice

3 réponses

Avatar
Martin CLAVREUIL
Bonjour,

A propos de la chaine de connexion :

Il est effectivement tout à fait possible d'ecrire les informations de la
chaine de connexion dans la base de registre et d'ouvrir l'ado à partir de
la. Om peut le faire de cette manière par exemple :
set shl=server.createobject("WScript.Shell")
lachaine=shl.regread("HKLMSoftwareVotreCieDonnéesADOConnString")
set db=server.createobject("ADODB.COnnection")
db.open lachaine
[...]

Je ne suis pas sûr (pour des raisons de performance) que le cryptage soit à
recommander

Quant à l'utilisation du global.asa vous pouvez tout à fait faire :
set shl=server.createobject("WScript.Shell")
lachaine=shl.regread("HKLMSoftwareVotreCieDonnéesADOConnString")
set application.value("db")=server.createobject("ADODB.COnnection")
applicaiton("db").open lachaine
[...]
mais en général il n'est pas conseillé de stocker des objets complexes en
application car le serveur va être obligé de mashaler (passer d'un contexte
de sécurité à l'autre) à longueur de temps.

Le mieux dans votre acs semble être de stocker la chaine en bdr puis de
connecter l'ADO à chaque page (via une inclusion par exemple).


A propos de la sécurité, si vous utilisez un certificat X509 ou une
identification NT dans ce cas (c'est d'ailleur la préco MS) vous pouvez
utiliser les compte de sécurité utilisateur (via un mapping pour les
certificats) afin d'identifier l'ado aupres du sgbg et ainsi ne plus avoir
un dur de disgracieux identifiants/mdp dans la chaine de connexion.

L'avenir d'ASP est celui que vous lui donnerez dans votre société. Si toutes
les equipes de dev y sont formées vous pourriez encore l'utiliser longtemps.
Sinon il faut savoir que MS met force communication et technique pour
facilité le passage de ASP -> .NET (formations, documents,webcast msdntv).

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

Bonoir à tous.

- Je cherche des solutions pour protéger une chaine de connexion à une
base de données en ASP.
J'utilise actuellement une connexion ODBC sans DSN, le tout dans un
fichier .inc que je passe en Include dans les pages ASP.
Le problème dans tout cela est la "sécurité". Un fichier au format texte
contenant des informations sensibles.
Existe t il un moyen ou des manières de protéger cette chaine ? cryptage,
registre, global.asa ?

J'envisage aussi de procéder à la sécurisation d'un site.
- IIS avec SSL et certificat d'une société 1/3
- Authentification basé sur NT pour les utilisateurs du site.
- Peut etre même une authetification basé sur IP.

Pensez vous que cette sécurité peut être suffisante? ou existe t'il des
solutions plus performantes ?

Une dernière question, j'ose... quel est l'avenir dASP face à .net ? Est
il judicieux de coupler les 2 ?

Merci de vos réponses et de votre aide

Fabrice



Avatar
Fabrice
hello martin

merci de ta réponse.
sur le plan de la sécurité, cela apporte t il vraiment quelque chose de
stocker la chaine dans le registre?

merci
fab


"Martin CLAVREUIL" a
écrit dans le message de news:
Bonjour,

A propos de la chaine de connexion :

Il est effectivement tout à fait possible d'ecrire les informations de la
chaine de connexion dans la base de registre et d'ouvrir l'ado à partir de
la. Om peut le faire de cette manière par exemple :
set shl=server.createobject("WScript.Shell")
lachaine=shl.regread("HKLMSoftwareVotreCieDonnéesADOConnString")
set db=server.createobject("ADODB.COnnection")
db.open lachaine
[...]

Je ne suis pas sûr (pour des raisons de performance) que le cryptage soit
à recommander

Quant à l'utilisation du global.asa vous pouvez tout à fait faire :
set shl=server.createobject("WScript.Shell")
lachaine=shl.regread("HKLMSoftwareVotreCieDonnéesADOConnString")
set application.value("db")=server.createobject("ADODB.COnnection")
applicaiton("db").open lachaine
[...]
mais en général il n'est pas conseillé de stocker des objets complexes en
application car le serveur va être obligé de mashaler (passer d'un
contexte de sécurité à l'autre) à longueur de temps.

Le mieux dans votre acs semble être de stocker la chaine en bdr puis de
connecter l'ADO à chaque page (via une inclusion par exemple).


A propos de la sécurité, si vous utilisez un certificat X509 ou une
identification NT dans ce cas (c'est d'ailleur la préco MS) vous pouvez
utiliser les compte de sécurité utilisateur (via un mapping pour les
certificats) afin d'identifier l'ado aupres du sgbg et ainsi ne plus avoir
un dur de disgracieux identifiants/mdp dans la chaine de connexion.

L'avenir d'ASP est celui que vous lui donnerez dans votre société. Si
toutes les equipes de dev y sont formées vous pourriez encore l'utiliser
longtemps. Sinon il faut savoir que MS met force communication et
technique pour facilité le passage de ASP -> .NET (formations,
documents,webcast msdntv).

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

Bonoir à tous.

- Je cherche des solutions pour protéger une chaine de connexion à une
base de données en ASP.
J'utilise actuellement une connexion ODBC sans DSN, le tout dans un
fichier .inc que je passe en Include dans les pages ASP.
Le problème dans tout cela est la "sécurité". Un fichier au format texte
contenant des informations sensibles.
Existe t il un moyen ou des manières de protéger cette chaine ? cryptage,
registre, global.asa ?

J'envisage aussi de procéder à la sécurisation d'un site.
- IIS avec SSL et certificat d'une société 1/3
- Authentification basé sur NT pour les utilisateurs du site.
- Peut etre même une authetification basé sur IP.

Pensez vous que cette sécurité peut être suffisante? ou existe t'il des
solutions plus performantes ?

Une dernière question, j'ose... quel est l'avenir dASP face à .net ? Est
il judicieux de coupler les 2 ?

Merci de vos réponses et de votre aide

Fabrice







Avatar
Martin CLAVREUIL
re,

disons qu'il y trois possibilités et deux niveaux de sécu associés :

1 et 2) stocker les login/pwd dans le fichier inc ou dans la base de
registre. Les deux ont sensiblement équivalents mais l'avantage de la bdr
c'est que on dissocie le code et le paramétrage.

3) dans le cas d'un intranet uniquement : utiliser les crédits de
l'utilisateur connecté (authentification intégrée dans sql server). De cette
manière la sécurité est intégrée au domaine et aucun mot de passe n'existe
en clair.

Il existe des solutions hybrides comme la crypto du mot de passe mais dans
le cas d'un fichier (ou bdr) bien protégé si l'assaillant arrive déjà à le
lire c'est qu'il doit également etre en mesure de casser les algo souvent
discutables des composants que l'on trouve sur le net.


"Fabrice" a écrit dans le message de
news:%
hello martin

merci de ta réponse.
sur le plan de la sécurité, cela apporte t il vraiment quelque chose de
stocker la chaine dans le registre?

merci
fab


"Martin CLAVREUIL" a
écrit dans le message de news:
> Bonjour,
>
> A propos de la chaine de connexion :
>
> Il est effectivement tout à fait possible d'ecrire les informations de


la
> chaine de connexion dans la base de registre et d'ouvrir l'ado à partir


de
> la. Om peut le faire de cette manière par exemple :
> set shl=server.createobject("WScript.Shell")
> lachaine=shl.regread("HKLMSoftwareVotreCieDonnéesADOConnString")
> set db=server.createobject("ADODB.COnnection")
> db.open lachaine
> [...]
>
> Je ne suis pas sûr (pour des raisons de performance) que le cryptage


soit
> à recommander
>
> Quant à l'utilisation du global.asa vous pouvez tout à fait faire :
> set shl=server.createobject("WScript.Shell")
> lachaine=shl.regread("HKLMSoftwareVotreCieDonnéesADOConnString")
> set application.value("db")=server.createobject("ADODB.COnnection")
> applicaiton("db").open lachaine
> [...]
> mais en général il n'est pas conseillé de stocker des objets complexes


en
> application car le serveur va être obligé de mashaler (passer d'un
> contexte de sécurité à l'autre) à longueur de temps.
>
> Le mieux dans votre acs semble être de stocker la chaine en bdr puis de
> connecter l'ADO à chaque page (via une inclusion par exemple).
>
>
> A propos de la sécurité, si vous utilisez un certificat X509 ou une
> identification NT dans ce cas (c'est d'ailleur la préco MS) vous pouvez
> utiliser les compte de sécurité utilisateur (via un mapping pour les
> certificats) afin d'identifier l'ado aupres du sgbg et ainsi ne plus


avoir
> un dur de disgracieux identifiants/mdp dans la chaine de connexion.
>
> L'avenir d'ASP est celui que vous lui donnerez dans votre société. Si
> toutes les equipes de dev y sont formées vous pourriez encore l'utiliser
> longtemps. Sinon il faut savoir que MS met force communication et
> technique pour facilité le passage de ASP -> .NET (formations,
> documents,webcast msdntv).
>
> "Fabrice" a écrit dans le message de news:
>
>> Bonoir à tous.
>>
>> - Je cherche des solutions pour protéger une chaine de connexion à une
>> base de données en ASP.
>> J'utilise actuellement une connexion ODBC sans DSN, le tout dans un
>> fichier .inc que je passe en Include dans les pages ASP.
>> Le problème dans tout cela est la "sécurité". Un fichier au format


texte
>> contenant des informations sensibles.
>> Existe t il un moyen ou des manières de protéger cette chaine ?


cryptage,
>> registre, global.asa ?
>>
>> J'envisage aussi de procéder à la sécurisation d'un site.
>> - IIS avec SSL et certificat d'une société 1/3
>> - Authentification basé sur NT pour les utilisateurs du site.
>> - Peut etre même une authetification basé sur IP.
>>
>> Pensez vous que cette sécurité peut être suffisante? ou existe t'il des
>> solutions plus performantes ?
>>
>> Une dernière question, j'ose... quel est l'avenir dASP face à .net ?


Est
>> il judicieux de coupler les 2 ?
>>
>> Merci de vos réponses et de votre aide
>>
>> Fabrice
>>
>
>