Masquer les login et mot de passe à SQL server
Fichiers Applications.xml & Avanteam.WindowService.Scheduler.exe.config
La solution consiste à faire en sorte que les .exe de l'application soient exécutés avec des comptes Windows qui eux mêmes ont accès en lecture/écriture sur les bases SQL (compte de service pour le scheduler, et compte utilisateur pour Process Studio).
Prérequis : SQL server doit autoriser l'authentification Windows. Les comptes de service / comptes utilisateurs doivent être déclarés au niveau SQL avec les bons droits sur les bases. Les éxecutables (ex scheduler, Process Studio) doivent s'exécuter sous ces comptes Windows.
A réaliser dans les chaînes de connexions : Retrait du login et mot de passe et ajout de la directive : Integrated Security=SSPI Exemple :
<Connection name="QMDoc.Application" type="Sql" connectionstring="Data Source=MONSERVEURSQL;Initial Catalog=MABDD;Persist Security Info=True;Integrated Security=SSPI" />
Si on se connecte avec le compte Windows préalablement déclaré dans SQL Serveur, on peut lancer Process Studio avec un fonctionnement normal (connexion Ok). Pour les services, le principe est le même : le service doit être exécuté par le compte de service (option 'Ouvrir session en tant que ')
Fichier WEB.CONFIG
Il est possible de masquer les login / mots de passe dans le web.config d'une application Avanteam , selon la configuration du serveur, plusieurs actions peuvent être à effectuer :
1. Sauvegarder votre web.config actuel
2. Se connecter à l'application en tant qu'utilisateur ayant des droits "Admin"
3. Aller dans Admintools et lancer l'outil "ProtectSection"
Cocher "ConnectionStrings" et cliquer sur le bouton "Protect Sections"

Trois résultats sont possibles: => Vous obtenez le message : "Sections protected"
La section "ConnectionStrings" a bien été protégée et va ressembler à:
<connectionStrings configProtectionProvider="RsaProtectedConfigurationProvider">
<EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element"
xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#">
<EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#rsa-1_5" />
<KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
<KeyName>Rsa Key</KeyName>
</KeyInfo>
<CipherData>
<CipherValue>RPshtHHn0X+I7+iKZufbbabjzOwKaERJC147QGJ48jz0LhRZal15bRXlFoVpjjrx99hC6YO2OO5JPUm2exXDVOkgX/tB2zzSYfqUq2FqO0BABKzdDmI0FeuWX3WgHAFKJtQivrd04a6KYCICZWscrqAtLHbeoyIIPU980jryuSQ=</CipherValue>
</CipherData>
</EncryptedKey>
</KeyInfo>
<CipherData>
<CipherValue>HxSqxtpPa7803J0+chhTU5jHVREoyPt+uPq3n0r9g2Yrjfvg4mXyI2grwgyemwQOLqrnfhspnYzL1ZJX0wz5QEqs4ikH0ewoP2EFtxNSBzZ8weo+X3hkIwZPEppNic1dgkWdAFDx3UU+1XUoZBzh+VEbETsY6zZZbuGo/ElXQm31hROesE1UIiZS70gpuyCMxDAjRR8TOphyxNudXob0Ts4nDcdTpdALbRSo3BcC2x+gfwbZQ6oa80Gca+rKWH6IivSwPwTrh35CTfZ5p9VahfL0gVy5cUQXMQRVCzvcCkKO9GM8NQCu22cEl3q9IPgqnaK0LcSLKa6EncwPig1F6xuDKduom2VT7CItfMKb0j/i7cAG19Aw/lFMiheuOegiZ3NOUEsVBPelW4fB5xAlwpl1vkhF9YH099HfposvekbZq0QNE6P13PBR6ce8jJyWwan2/FMKJxqe5I8hnNKNkpS+QKxdY33GiggUFVoH3MLuU5VnPOnkXXhInBmzlpQDGA3CKdm7m+M2AtTiOlNfVRzh7zpNFVhUUepjnZ/qGxRc3pWl1d3rmgHI0VX7hbJqQRt8RVTUx4M5tjGIT4mV0cvRLu2PIjeOUD0PeNZNUsQ/de/mkj2v9p7XeBATwPRZzs2R0gPpEUnqfswAnK2kfxYRWqbava5Cj3ijf/Lgu8CcYNd8lcs387BsXo3vWaI5kOrEPw1bGDBN7Z4f6nusINm0yeQBqLyvKbyPoPQAHqicV21SJwkmf2BaG/bB8nLDdpSRHBMK6IlTja4BSBylx7Xqc9VNaC+1J7qSnr5ZU6OhBNwxshoYq252ALIIzW1AttZxwbsAOzAouA/bc0b555xzDt/PezrNkhMi4awJ2e9cekXOnRn34V7jbFQuNdLYN+DHlK62+JsLzsI0s7deemfWIYCyVSZuUnOKQy61e/5bkUP13u8Ue+PA6HJRvyzIrFA+pYRDXlEVVCqCxHQ06VCGiu3Ow6llq1w4JyJf50R0hAEDUeGl3YZcQAybxIl738doOsquXVNH6OzmRcYaDjbumtNBLPv1rb3SMim22ygYaKDzFp5mXsiUcgL4IsWN3bG3c/CuWd7lhPBxEgduiKKdGTsOEfiHhAPfg6TEplW+GnLOJOc6H/IxdEXFyo0MsHRM8ZCIEpNFPnvIG5d+wfp9WYFNKzFAMwoiitCi6NUaQhZW2xtPprM91Sn7t09KaMlHzUI0orwnQrmlAw3YBKgdfrx0IjCj</CipherValue>
</CipherData>
</EncryptedData>
</connectionStrings>
=> Vous obtenez un message d'erreur d'accès au fichier web.config Il s'agit d'un problème de droits d'accès à ce fichier. Elargissez les droits d'accès au web.config et retourner au point 3.
=> Vous obtenez un message: "Une erreur s'est produite lors de l'exécution du gestionnaire de section..."
Il faut faire quelques manipulations en plus :
4. Aller dans Admintools et lancer l'outil "AspNetRunOn" qui permet de connaitre l'identité sous laquelle fonctionne ASP.NET et Noter le résultat :

5. Ouvrir une fenêtre de commande en mode Administrateur
Aller dans
%systemroot%\Microsoft.NET\Framework\versionNumber
6. Tapez la commande suivante :
aspnet_regiis -pa "NetFrameworkConfigurationKey" "ResultatdeAspNetRunOn"
Soit dans notre exemple
aspnet_regiis -pa "NetFrameworkConfigurationKey" "AUTORITE NT\IUSR"
7. Relancer le point 3
Cette opération peut également être faite sur le site portail qui a son propre web.config