Aller au contenu

Exécution des connecteurs

Il existe plusieurs méthodes pour exécuter une séquence de provisioning :

  • Via des fichiers de type Batch ou PowerShell avec des lignes de commande appelant l’exécutable HPPRunCli
  • Via l’interface de gestion les jobs
  • Via les webservices SIP

Exécution des séquences de provisioning avec HPPRUNCLI.exe

Dans un fichier de type Batch ou PowerShell, il est nécessaire d’appeler l’exécutable HppRunClie.exe suivi des options suivantes :

Options Fonction Obligatoire (O/N)
-sec [Nom séquence] Option pour indiquer la séquence à exécuter. O
-cfg [Nom_fichier_config] Option pour indiquer le fichier de configuration à utiliser. N. Par défaut c’est le fichier hpp.ini qui est utilisé.
-obj [Val_attribut1|Val_attribut2|…] Option pour indiquer la valeur d’attribut de matching pour exécuter la séquence de manière unitaire. Si plusieurs valeurs d’attributs sont à indiquer, il faut les mettre par ordre d’exécution des exports. N
-seq [Nm_répertoire] Option pour indiquer le nom du répertoire de sortie des fichiers de logs. N

Exécution des séquences de provisioning via l'interface de gestion des jobs

Depuis la page de consultation des instances de jobs séquences de provisioning , il est possible d’exécuter un job soit de manière unitaire soit pour une exécution en masse.

Pour lancer un job en l'exécutant en masse, cliquez sur le bouton « type:inline ».

Sélectionnez le ou les jobs souhaités, puis cliquez sur « Valider » pour mettre les jobs dans la file d'attente.

Pour lancer un job de manière unitaire, cliquez sur le bouton « type:inline ».

Sélectionnez le job souhaité, puis renseignez la valeur pour sélectionner l’objet sur lequel vous souhaitez exécuter le job.

Avertissement : Actuellement, si votre job contient plusieurs séquences, pour pouvoir lancer un job en mode unitaire, il faut que l’attribut de matching soit la même valeur pour toutes les séquences.

Exécution des séquences de provisioning via les webservices SIP

Exemple de script pour exécuter un job de provisioning via un script powershell:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
$urlGenToken = "https://[URL_serveur_SID]:44350/connect/token"
$BodyJsonPostToken = "grant_type=password&client_id=sip&client_secret=sip&username=[login_cpt]&password=[mot_de_passe_compte]"
$MonHeader = @{
        "Content-Type" = "application/x-www-form-urlencoded"
        "accept" = "Application/Json"
        "Host" = "[URL_serveur_SID]:44350"
    }

$MonHeaderReq = @{
        "Content-Type" = "application/x-www-form-urlencoded"
        "accept" = "Application/Json"
        "Host" = "[URL_serveur_SID]:44350"
        "Authorization" = "Bearer $($token_gen)" 
    }

try {

    $result = Invoke-RestMethod -Uri $urlGenToken -Method Post -Headers $MonHeader -Body $BodyJsonPostToken 
    $token_gen = $result.access_token
    #ajouter logs
}
catch {
    $token_gen = ""
    #ajouter logs
}

if ($token_gen -ne "")
{
    $job_code = [code_du_job_à_exécuter]
    $MonHeaderReq = @{
        "Content-Type" = "application/x-www-form-urlencoded"
        "accept" = "Application/Json"
        "Host" = "sid.iam-test.ght49.intra:44355"
        "Authorization" = "Bearer $($token_gen)"
    }
    $urlExecutionJob="https://sid.iam-test.ght49.intra:44355/scim/v2/job/run/$job_code"

    try {
        $res = Invoke-RestMethod -Uri $urlExecutionJob -Method Post -Headers $MonHeaderReq  
        #ajouter logs
    }
    catch {
        #ajouter logs et traitement
    }
}

Dans le même principe, pour relancer via un script PowerShell un job de provisioning qui aurait été arrêté à cause d’un seuil d’import, il faut récupérer l’ID de l’instance de job en appelant la route /scim/v2/job-instance/ (méthode GET).

Se rendre sur la documentation swagger pour plus d’informations : https://[URL_Serveur_SIP]:44355/swagger/

Exécution du nouveau connecteur d'alimentation amont (à partir de 7.0 SP3)

A partir de la version 7.0 SP3, il est possible d’affecter des rôles et/ou habilitations à des identités via un nouveau connecteur d’alimentation amont.

Les liens Identités – Rôles et Identités/Rôles – Habilitations créés et/ou supprimés à partir d'une source autoritaire sont gérés par un nouveau type de lien dans la base de données. Ainsi, l'export des liens Identités – Rôles et Identités/Rôles – Habilitations du référentiel Identity retournera seulement les rôles et habilitations affectés par SIP.

Configurer un connecteur de lien Identités - Rôles

Pour configurer un connecteur de lien identités - Rôles, il est nécessaire de créer au minimum :

  • Un export d’une source autoritaire qui doit contenir les informations suivantes :
    • UID de l’identité (obligatoire)
    • Code du rôle à affecter (obligatoire) – monovalué.
    • Date de début du rôle (facultatif)
    • Date de fin du rôle (facultatif)
  • Un export du référentiel Identity de type PERSON_ROLES dans lequel il faut préciser les types de personnes et les codes des référentiels pour lesquels on veut créer des liens identités - rôles.
  • Une règle de synchronisation pour définir les opérations de Matching, Création, Modification et Suppression
    • Dans la règle de Matching, comparez l’uid de l’identité et le code du rôle
    • Dans la règle de création, il est obligatoire de préciser l’uid de l’identité et le code du rôle. Les dates de début et de fin sont facultatives
    • Dans la règle de modification, il est obligatoire de préciser l’ID du lien personne – rôle, récupéré dans l’export du référentiel Identity. Seul les dates peuvent être modifiées
    • Dans la règle de suppression, il est obligatoire de préciser l’ID du lien personne – rôle, récupéré dans l’export du référentiel Identity.
    • Syntaxe des codes Identity à utiliser dans les règles de synchronisation :
      • person = UID de l’identité
      • role = code du rôle
      • startdate = date de début du rôle
      • enddate = date de fin du rôle
      • id = id du lien identité-rôle (champ id dans la table sid.PersonRoles)
  • Un import dans le référentiel Identity de type PERSON_ROLES. Il est possible de cocher l’option pour désactiver le calcul des comptes à la volée afin de gérer le temps d’import en cas de grosse volumétrie. Si l’option a été activée, il est nécessaire d’exécuter un import de type ACCOUNTCALC pour recalculer les comptes du référentiel impacté.

Configurer un connecteur de lien Identités - Rôles

  • Un export d’une source autoritaire qui doit contenir les informations suivantes :
    • UID de l’identité (obligatoire)
    • Code du rôle (obligatoire) – monovalué.
    • Code de l’habilitation à affecter au lien identité/rôle (obligatoire) – monovalué
    • Date de début de l’habilitation (facultatif)
    • Date de fin de l’habilitation (facultatif)

Attention

Le lien Identités/Rôles doit préalablement exister pour un bon fonctionnement du connecteur de lien Identité/Rôle – Habilitations

  • Un export du référentiel Identity de type PERSON_RIGHTS dans lequel il faut préciser les types de personnes et les codes des référentiels pour lesquels on veut créer des liens identités/rôles - habilitations.
  • Une règle de synchronisation pour définir les opérations de Matching, Création, Modification et Suppression
    • Dans la règle de Matching, comparez l’uid de l’identité, le code du rôle et le code de l’habilitation
    • Dans la règle de création, il est obligatoire de préciser l’uid de l’identité, le code du rôle et le code de l’habilitation. Les dates de début et de fin sont facultatives
    • Dans la règle de modification, il est obligatoire de préciser l’ID du lien personne/rôle - habilitation, récupéré dans l’export du référentiel Identity. Seul les dates peuvent être modifiées.
    • Dans la règle de suppression, il est obligatoire de préciser l’ID du lien personne/rôle - habilitation, récupéré dans l’export du référentiel Identity.
    • Syntaxe des codes Identity à utiliser dans les règles de synchronisation :
      • person = UID de l’identité
      • role = code du rôle
      • right = code de l’habilitation
      • startdate = date de début de l’habilitation
      • enddate = date de fin de l’habilitation
    • id = id du lien identité-rôle-right (champ id dans la table sid.PersonRights)
  • Un import dans le référentiel Identity de type PERSON_RIGHTS. Il est possible de cocher l’option pour désactiver le calcul des comptes à la volée afin de gérer le temps d’import en cas de grosse volumétrie. Si l’option a été activée, il est nécessaire d’exécuter un import de type ACCOUNTCALC pour recalculer les comptes du référentiel impacté.