Installer un Prototype OPAM sur Linux x64

Nous avons déjà déjà présenté Oracle Privileged Account Manager (OPAM) dans ce blog. La plateforme permet à des utilisateurs privilégiés d’accéder temporairement à des comptes techniques comme un compte root, un compte de base de données, un compte LDAP ou le compte administrateur d’une application. La plateforme garantit également que :

  • seuls les utilisateurs privilégiés peuvent obtenir ces accès
  • ces accès sont tracés pour des besoins d’audit
  • les mots de passe sont systématiquement modifiés, inconnus des utilisateurs sauf pour une période limitée, y compris de ses utilisateurs privilégiés. En outre, c’est une bonne façon de garantir la complexité des mots de passe

Dans cet article, nous allons présenter l’installation de la plateforme qui s’appuie sur Oracle Identity and Access Manager et les connecteurs ICF pour fournir les fonctionnalités attendues.

Note préalable:
Cet article retrace l’installation d’un prototype OPAM 11.1.2 sur Linux x86-64. Pour les détails de l’installation, vous vous reporterez à la documentation associée. Vous pourrez également télécharger préalablement le logiciel sur eDelivery.

Etape 1: Installer le référentiel

OPAM nécessite d’installer un référentiel pour stocker les informations associées; ce référentiel est stocké dans une base de données, en général Oracle Standard ou Enterprise. Installez cette base de données préalablement aux autres étapes de la configuration. Créez une base de données nommée IDM pour la suite de la configuration.

Pour créer le référentiel, vous devrez utiliser le Repository Creation Utility ou RCU de la version utilisée. Il s’agit du media V33642-01.zip dans le cas de la version Linux 32 bits pour IdM 11.1.2. La version 64 bits n’existe pas ! vous pouvez donc utiliser la version 32 bits et préalablement :

  • Installer un JDK 1.6
  • Décompresser le RCU dans un répertoire rcuHome
  • Editer le fichier rcu situé dans rcuHome/bin et modifier la valeur du paramètre JRE_DIR pour pointer sur votre runtime Java, comme par exemple /opt/jdk1.6.0_37/jre dans mon cas
  • Changer les droits de l’exécutable rcu à l’aide de la commande chmod u+x

Vous lancerez l’utilitaire en mode graphique à l’aide de la commande rcu et vous choisirez de créer un référentiel. Entrez les informations de connexion à la base de données :

Une fois RCU connecté à la base de données, celui-ci vérifie les pré-requis et vous demande de sélectionner les composants à installer ; sélectionnez « Identity Management – Oracle Privileged Account Manager » ; les composants « AS Common Schemas » sont automatiquement sélectionnés comme ci-dessous :

Procédez ensuite à la création des tablespaces et des composants ; le référentiel est créé.

Etape 2. Installation et Configuration du logiciel

Pour installer OPAM, vous devrez préalablement avoir installé un serveur Weblogic 10.3.6 (ou 10.3.5) sur le serveur. Pour se faire, vous téléchargerez la version depuis eDelivery et l’installerez dans le répertoire de votre choix.

Une fois weblogic installé, installez Oracle Identity and Access Management 11g (11.1.2.0.0)  depuis les distributions stockées dans les fichiers V33644-01_1of2.zip et V33644-01_2of2.zip également disponible sur eDelivery Lancez runInstaller et précisez le chemin du JDK. Précisez le chemin de l’installation comme ci-dessous :

L’installation réalisée, lancez l’assistant de configuration pour créer un nouveau domaine Weblogic. Pour cela, lancez l’utilitaire de création d’un domaine comme ci-dessous :

cd /u01/app/oracle/product/Middleware/Oracle_IDM1/
common/bin/config.sh

Sélectionnez l’installation d’Oracle OPAM ; les composants associés sont automatiquement sélectionnés comme ci-dessous :

Paramétrez ensuite les composants du référentiel associés à cette installation et créés dans l’étape précédente.

Vous pouvez, le cas échant modifier les propriétés des différents composants. Le domaine est ainsi créé.

Etape 3. Démarrage et post-configuration

Vous devrez en premier lieu démarrer le serveur d’administration Weblogic ainsi que le serveur opam_server1 ; pour cela, dans le cadre d’une production, vous préférerez sans doute utiliser le Node Manager. Pour un pilote, démarrez simplement les 2 serveurs à l’aide des commandes ci-dessous pour l’AdminServer :

cd /u01/app/oracle/product/Middleware
cd user_projects/domains/opam_domain
./startWeblogic.sh

Lancez ensuite la commande startManagedWeblogic.sh pour démarrer le serveur OPAM comme ci-dessous :

cd /u01/app/oracle/product/Middleware
cd user_projects/domains/opam_domain
./startManagedWebLogic.sh opam_server1 http://idm.easyteam.fr:7001

Une fois les serveurs démarr
és, vous devrez modifier le protocole de l’AdminServer et activer Tunneling pour permettre de vos connecter à distance au domaine à l’aide de WLST et du protocole t3 ; connectez-vous à la console Weblogic et sélectionnez l’AdminServer puis les onglets « Protocols > General » et la case à cocher « Enable Tunneling ». Soyez attentif à sélectionner les boutons « Lock & Edit », « Save » et « Activate Changes » :

Vous pourrez ensuite lancer l’assistant opam-config.sh. Celui-ci ajoute notamment un provider TrustServiceIdentityAsserter au « Security Realm » myrealm du domaine weblogic. Exécutez le script ci-dessous :

export ORACLE_HOME=/u01/app/oracle/product/Middleware/Oracle_IDM1
export  MW_HOME=/u01/app/oracle/product/Middleware
export ANT_HOME=$MW_HOME/modules/org.apache.ant_1.7.1
ls $ANT_HOME
export JAVA_HOME=/opt/jdk1.6.0_37
export ANT_OPTS="-Xmx512M -XX:MaxPermSize=512m"&nbsp

cd $ORACLE_HOME/opam/bin
./opam-config.sh

Buildfile: /u01/app/oracle/product/Middleware/Oracle_IDM1/opam/config/build.xml
    [input] Enter Weblogic Admin Username:
weblogic
Enter Weblogic Admin Password:
[input] Enter Weblogic URL: (t3://<weblogic-host>:<weblogic-port>)
t3://idm.easyteam.fr:7001
[input] Enter Weblogic Domain Name
opam_domain
[input] Enter Middleware Home
/u01/app/oracle/product/Middleware

config-opam:
[echo] Configuring Weblogic for OPAM. This may take few Minutes

BUILD SUCCESSFUL
Total time: 9 minutes 37 seconds
Check Log File at /u01/app/oracle/product/Middleware/Oracle_IDM1/opam/config/opam-config.log

Enfin pour terminer les post-configurations, lancez le script configureSecurityStore.py avec les paramètres suivants :

  • -d pour le répertoire du domaine Weblogic
  • -c IAM pour indiquer qu’il s’agit d’une configuration IAM
  • -u IDM_OPSS pour indiquer le schéma de base de données créé par RCU pour stocker la configuration Oracle Plateform Security Service
  • -p pour indiquer le mot de passe du schéma Oracle associé
  • -m create pour indiquer qu’il s’agit de créer le schéma.

Le script correspond alors à celui ci-dessous :

$MW_HOME/oracle_common/common/bin/wlst.sh  
$ORACLE_HOME/common/tools/configureSecurityStore.py
-d $MW_HOME/user_projects/domains/opam_domain
-c IAM -u IDM_OPSS -p manager -m create

Etape 4. Activation de HTTPS

Pour des raisons de sécurité, vous voudrez utiliser des listeners SSL. Pour cela, vous devez donc générer des certificats et les enregistrer dans Weblogic. Pour une plateforme de test, vous pouvez générer des certificats « self-signed ».

Procédez comme dans le script ci-dessous :

cd $MW_HOME/user_projects/domains/opam_domain
cd bin
source ./setDomainEnv.sh
mkdir certs
cd certs
keytool -genkey -alias mycert
-keyalg RSA -keypass weblogic1
-keystore identity.jks -storepass weblogic1
-validity 1065

What is your first and last name?
[Unknown]: idm.easyteam.fr
What is the name of your organizational unit?
[Unknown]: .
What is the name of your organization?
[Unknown]: The ArKZoYd Company
What is the name of your City or Locality?
[Unknown]: Paris
What is the name of your State or Province?
[Unknown]: .
What is the two-letter country code for this unit?
[Unknown]: FR
Is CN=idm.easyteam.fr, OU=., O=The ArKZoYd Company, L=Paris, ST=., C=FR correct?
[no]: yes

Le certificat est créé; pour l’enregistrer dans un référentiel de confiance, exportez-le dans un fichier puis importez-le dans un autre keystore nommé trust.jks :

keytool -export -alias mycert 
-file root.cer
-keystore identity.jks -storepass weblogic1

keytool -import -alias mycert
-trustcacerts -file root.cer
-keystore trust.jks -storepass weblogic1

Une fois les 2 fichiers JKS créés et le certificat self-signed enregistré avec l’alias mycert, modifiez la configuration de vos 2 serveurs AdminServer et opam_server1 pour utiliser les 2 nouveaux identity.jks et trust.jks store ; sélectionnez l’onglet « Configuration > Keystores » et sélectionner « Custom Identity and Custom Trust » ; ajoutez les keystore ainsi que la clé de chiffrement :

Une fois les keystores enregistrés, vous allez déclarer dans la configuration SSL l’alias que le serveur doit utiliser pour retrouver son certificat. Sélectionnez l’onglet « Configuration > SSL » de chacun des serveurs et :

  • entrez l’alias de la clé privée, c’est à dire mycert dans notre cas
  • Assurez-vous ou, le cas échéant modifiez le paramètre « Advanced > Hostname Verification » à la valeur None dans le cas (uniquement) d’un certificats self-signed

 

    Pour terminer, vérifiez ensuite dans la page « Configuration > General » que les listener SSL sont bien activés ainsi que les ports associés puis redémarrez les 2 serveurs comme décrit dans l’étape 3.

    Etape 5. Connexion au serveur OPAM

    OPAM s’appuie sur la gestion des identités de Weblogic. L’étape suivante consiste généralement à vous connecter à votre annuaire d’entreprise. Pour un prototype, vous utiliserez simplement la gestion des identités « Built-in » dans Weblogic. Créer un utilisateur à partir de la console et ajoutez-lui l’ensemble des groupes associés à OPAM comme ci-dessous :

    Vous pourrez alors vous connecter à la console OPAM à l’aide de l’URL ci-dessous https://idm:7002/oinav/opam. Enregistrer le serveur OPAM dans l’écran « Server Configuration » :

    Vous voilà prêt à utiliser OPAM en ajoutant des cibles et en donnant accès aux utilisateurs de l’
    entreprise. Pour un exemple d’utilisation, inspirez-vous de l’article précédent. Les accès sont possibles depuis la console, depuis le script en ligne de commande opam.sh ou directement sur le serveur OPAM à l’aide de l’API REST/JSON.

    Si vous dédiez la plateforme à vos utilisateurs administrateur, le coût reste limité et la solution, qui fait partie de « Identity Governance Suite » vous permettra en quelques jours de sécuriser l’ensemble des mots de passe sensibles de votre entreprise. Pour allez plus loin, vous installerez BI Publisher qui fait également partie de la plateforme et vous permettra de générer des rapports détaillés à la demande. Lisez le white-paper dédié à la solution et N’hésitez pas à partager vos expériences…

    1 réflexion sur “Installer un Prototype OPAM sur Linux x64”

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *