Zoom sur… Newtest LDAP intégration
a suite Newtest doit s’intégrer parfaitement dans votre Système d’Information afin, notamment, d’en faciliter l’usage. La version NEP 2.1.1 ne déroge pas à cette règle en vous proposant de bénéficier du Single Sign On (SSO) au niveau de Newtest Management Console (NMC) et de Newtest Reporting (NRS). Vous et vos équipes pourrez donc accéder directement à vos interfaces Newtest sans devoir vous ré-authentifier.
L’authentification unique via le LDAP devient un point central de l’architecture SI.
Site Z Site B
Site A
SI MailServer
Ged Application
Intranet
extranet LDAP
AD
Utilisateur Utilisateur Utilisateur
Newtest
NMC Supervision&
Gestion
NRS reporting
L
Quels sont les prérequis techniques ?
a solution SSO Newtest se base sur le LDAP Active Directory de Microsoft. Les prérequis sont donc les suivants :
‐ Disposer d’un LDAP de type Microsoft Active Directory
‐ Avoir l’option LD AD sur la gamme de produits Newtest. Cette nouvelle fonctionnalité est soumise à la licence « LDAP authentification » au niveau du serveur NMC
‐ Avoir un compte utilisateur qui dispose des droits pour naviguer dans l’Active Directory
‐ Avoir Newtest Management Console (NMC) et Newtest Reporting (NRS) dans le même domaine que l’AD
‐ Etre capable de naviguer dans la racine de l’AD à partir du NMC et du NRS avec le compte utilisateur
‐ S’assurer que l’URL du LDAP (de type LDAP://domain_name) est accessible
‐ Etre mono domaine
Comment fonctionne Newtest SSO ?
ous utilisons l’information auth_login contenue dans le header HTTP. Nous mémorisons dans nos repository une association groupe AD et type de profil utilisateur Newtest. Lors de la demande de connexion, nous extrayons de l’AD les membres appartenant aux groupes AD présents dans nos repository et vérifions l’appartenance de l’utilisateur à un de ces groupes. Si cela est le cas, nous créons dynamiquement l’utilisateur au niveau des systèmes Newtest en utilisant les informations de l’AD et en lui appliquant les droits du profil utilisateur associé au groupe AD.
L’authentification SSO Newtest se base sur deux nouvelles URL : Pour NMC : http://<nep-address>/nmcsso/login.aspx
Pour NRS : http://<nep-address>/nrssso/login.aspx
Ces deux répertoires virtuels de IIS pointent sur les mêmes ressources Web que les sites avec authentification standard Newtest, à la différence que seul l’accès authentification Windows est autorisé. L’analyse LDAP se contente d’interroger LDAP sur les groupes de l’utilisateur. Un droit en lecture suffit.
L’analyse des groupes d’appartenance se base sur les « member of » du LDAP pour l’utilisateur demandeur de login.
La récupération du user s’effectue par l’analyse du HTTP header à travers la lecture de la variable auth_login.
L
N
client iis newtest Requête HTTP
Transit AUTH_LOGIN VIDE http header
Accès anonyme
Rejet code 401
Transit AUTH_LOGIN user windows http header
Authentification windows
Ldap ad server
Requête LDAP sur le user Auth_LOGIN pour collecte de
member of
Si ok accès home page si ko accès login.aspx
Accès home page si ok sinon login.aspx Rejet code 401+liste des authentifications supportés
Requête HTTP header authentification windows
Le basculement de l’authentification Newtest vers l’authentification SSO LDAP AD s’appuie sur la configuration du Virtual Directory NMC ainsi que sur les mécanismes de IIS.
Pour diagnostiquer, rapidement, le bon format du HTTP header, nous fournissons, à la racine de nos sites, une page de test « httpheader.asp ». Celle-ci vous permet de vérifier la présence et la valeur de la variable auth_login
Exemple
Variables Values
ALL_HTTP
HTTP_CONNECTION:Keep-Alive HTTP_ACCEPT:image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-
shockwave-flash, application/vnd.ms-excel, application/vnd.ms- powerpoint, application/msword, */*
HTTP_ACCEPT_LANGUAGE:fr
HTTP_COOKIE:NOPAut=Username=sysadmin&Password=E83 56458D210FB897885E7B35F4CAB4 HTTP_HOST:west
HTTP_USER_AGENT:Mozilla/4.0 (compatible; MSIE 7.0;
Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727;
InfoPath.1) HTTP_UA_CPU:x86
ALL_RAW
Connection: Keep-Alive Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */* Accept-Language: fr Cookie:
NOPAut=Username=sysadmin&Password=E8356458D210FB8 97885E7B35F4CAB4 Host: west User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322;
.NET CLR 2.0.50727; InfoPath.1) UA-CPU: x86 APPL_MD_PATH /LM/W3SVC/1/ROOT/nmc APPL_PHYSICAL_PATH F:\nmc_210\Web\
AUTH_PASSWORD
AUTH_TYPE
AUTH_USER CERT_COOKIE
CERT_FLAGS CERT_ISSUER
CERT_KEYSIZE CERT_SECRETKEYSIZE
CERT_SERIALNUMBER CERT_SERVER_ISSUER
CERT_SERVER_SUBJECT CERT_SUBJECT
CONTENT_LENGTH 0 CONTENT_TYPE
GATEWAY_INTERFACE CGI/1.1
HTTPS Off
HTTPS_KEYSIZE HTTPS_SECRETKEYSIZE
HTTPS_SERVER_ISSUER HTTPS_SERVER_SUBJECT
INSTANCE_ID 1 INSTANCE_META_PATH /LM/W3SVC/1
LOCAL_ADDR 192.168.5.61
LOGON_USER
PATH_INFO /nmc/httpheader.asp PATH_TRANSLATED F:\nmc_210\Web\httpheader.asp
QUERY_STRING REMOTE_ADDR 192.168.5.200
REMOTE_HOST 192.168.5.200 REMOTE_USER
REQUEST_METHOD GET SCRIPT_NAME /nmc/httpheader.asp SERVER_NAME west SERVER_PORT 80
SERVER_PORT_SECURE 0 SERVER_PROTOCOL HTTP/1.0
SERVER_SOFTWARE Microsoft-IIS/6.0 URL /nmc/httpheader.asp
HTTP_CONNECTION Keep-Alive HTTP_ACCEPT
image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
HTTP_ACCEPT_LANGUAGE fr
HTTP_COOKIE NOPAut=Username=sysadmin&Password=E8356458D210FB8 97885E7B35F4CAB4
HTTP_HOST west
HTTP_USER_AGENT Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.1)
HTTP_UA_CPU x86
Quelles sont les spécificités de la configuration des produits Newtest pour le SSO ? our la configuration du SSO sous Newtest, nous vous conseillons de vous procurer la documentation d’implémentation. Toutefois, voici les éléments spécifiques nécessaires au bon fonctionnement de l’interconnexion de l’AD et de Newtest.
• Les clés de registres Windows
De nouvelles clés de registres Windows sont créées :
• base HKLM\SOFTWARE\Auditec sa\NEWTEST SERVER
clé valeur chaîne ADPassword : mot de passe de l’utilisateur du domaine
clé valeur chaîne ADUsername : utilisateur du domaine ayant les droits de lecture au niveau du serveur LDAP
Clé de registre serveur reporting
• base HKLM\SOFTWARE\Auditec sa\Enterpriseportal
clé valeur chaîne ADPassword : mot de passe de l’utilisateur du domaine
clé valeur chaîne ADUsername : utilisateur du domaine ayant les droits de lecture au niveau du serveur LDAP
Les mots de passe sont cryptés durant l’utilisation de notre utilitaire configtool (installdir\web\bin). Si pour une nécessité quelconque, vous deviez mettre à jour les données des registres Windows, utilisez la commande :
configtool -adu « nom de l’utilisateur » -adp « mot de passe de l’utilisateur »
• Les paramètres d’application
Associés aux clés de registres, de nouveaux paramètres d’application sont liés à l’option LDAP. Ils sont configurables via le menu de Gestion des paramètres d’application :
• LDAPServerAddress : URL LDAP utilisée pour toutes les requêtes vers l’AD
• LDAPAuthentification : booléen d’activation de l’authentification LDAP
P
Comment activer le SSO au niveau du NMC et du NRS ?
ette nouvelle fonctionnalité est soumise à la licence « LDAP authentification » au niveau du serveur NMC. Il faut donc :
• Disposer d’une licence ayant l’option LDAP activée ;
• Activer l’authentification LDAP via les paramètres d’application ;
• Configurer l’utilisateur AD et le mot de passe utilisé pour l’interrogation de l’AD ;
• Renseigner l’URL du LDAP :
• Configurer les règles AD (menu utilisateurs/règles AD) : association groupe AD et profil utilisateur Newtest ;
Attention les règles AD Newtest (association groupe AD et profil utilisateur Newtest) ne se configurent qu’au niveau du serveur NMC. Ces même règles seront diffusées à Newtest Reporting via le DWH par les lots ETL. Un déclenchement de transfert de données NMC/DWH et DWH /Newtest Reporting est donc nécéssaire avant l’utilisation du SSO Newtest au niveau du NRS.
C
Quelles sont les éléments de l’AD interrogés et obligatoires pour un bon fonctionnement avec Newtest ?
otre interrogation LDAP est basée sur certains champs de l’AD.
Pour les groupes (génération des associations groupes AD profil utilisateur Newtest) :
Nom Obligatoire Valeur
objectClass Oui group
groupType Oui -2147483646 ou -
2147483640
cn Oui
distinguishedName Oui
sAMAccountName Oui
member Non
Pour les utilisateurs (vérification d’appartenance au groupe AD référencés dans Newtest et création du compte local Newtest):
Nom Obligatoire Valeur
objectClass Oui user
objectCategory Oui person
sAMAccountName Oui
distinguishedName Oui
userPrincipalName Oui
sn Non
givenName Non
mail Non
homePhone Non
Nous parcourrons l’AD à partir de la racine. Mais seul certains types de groupe sont éligibles pour l’association groupe AD et profil utilisateur Newtest.
N
La liste de tous les types présents dans l’Active Directory ainsi que tous les groupes utilisables sont donnés dans le tableau ci-dessous : les groupes « global » et « universel » de type security
Group Scope Group Type
Domain local Global Universal
Security NOK OK OK
Distribution NOK NOK NOK
Quels sont les flux de données LDAP/AD /Newtest ? otons trois mécanismes bien distincts :
• définition des associations groupe AD et profil utilisateur Newtest : ce mécanisme se base sur :
o interrogation à partir du root de l’AD de tous les groupes de type global ou universel
o utilisation de l’utilisateur et mot de passe des clés de registre pour collecter la liste des groupes AD
o utilisation de l’URL LDAP de tblconfig pour l’interrogation de l’AD
• contrôle des droits d’accès d’un utilisateur du domaine en SSO
o récupération des groupes AD des ADRules de la base Newtest
o liste de tous les « member of » de ces groupes en utilisant l’utilisateur AD de la registry
o vérification de la présence de l’utilisateur dans un de ces groupes o si test OK
création de l’utilisateur s’il n’existe pas et s’il appartient à un groupe de règles
démarrage de session o si test KO
refus de connexion si l’utilisateur n’appartient pas à un des groupes de règles
• contrôle des droits d’accès d’un utilisateur de domaine se signant via la page d’authentification Newtest
o test de connexion à l’AD en utilisant identifiant et mot de passe saisie dans la page d’authentification Newtest
o si test OK
N
liste de tous les « member of » de ces groupes en utilisant l’utilisateur AD de la registry
vérification de la présence de l’utilisateur dans un de ces groupes
si test OK
• création de l’utilisateur si il n’existe pas et s’il appartient à un groupe de règles
• démarrage de session
si test KO
• refus de connexion si l’utilisateur n’appartient pas à un des groupes de règles
Soit pour le contrôle des droits d’accès d’un utilisateur du domaine en SSO :
NEP user
Web Browser Htlm header AUTH_USER
IIS Query NEP URL
NEP WEB SITE Login Page
NMC Databases Query Ad rules
Ad Groups
Serveur LDAP
Query member of Ad group On LDAP://DEV_DOMAIN Check auth_user
is member
1
2
3
Create user if necessary 4
NEP WEB SITE Home Page
Home page access 5
Soit pour la définition des associations groupe AD et profil utilisateur Newtest :
IIS
Nep Administration profile
NEP WEB SITE Adrules Page
NMC Databases Write Ad rules
Bind Ad Groups and Newtest user profile
Serveur LDAP
Query Ad group Global and universal on root domain
On LDAP://DEV_DOMAIN With Aduser and Adpassword
2
1
NEP user
Soit pour le contrôle des droits d’accès d’un utilisateur de domaine se signant via la page d’authentification Newtest :
IIS Query NEP URL
NEP WEB SITE Login Page
NMC Databases Query Ad rules
Ad Groups
Serveur LDAP
Query member of Ad group On LDAP://DEV_DOMAIN Check auth_user
is a member
2
3
4
Create user if necessary 5
NEP WEB SITE Home Page
Home page access 6
NEP user
Connexion with user/password LDAP://DEV_DOMAIN
1
Comment installer cette fonctionnalité ?
Le document Newtest_LDAP_v11_EN.pdf permet la mise en service et la configuration des différents éléments du SSO sous Newtest.