Configuration avancée
Directives d'édition des fichiers de configuration
Leprocessmining.conf est un fichier de configuration qui contient les propriétés requises pourIBMProcess Mining pour fonctionner correctement. Le fichier est distribué pour fonctionner sans aucune modification si les valeurs par défaut sont utilisées. Toutefois, lorsque vous modifiez le fichier, veillez à respecter les consignes suivantes :
Vous devez modifier les valeurs dont vous avez besoin (par exemple,
LDAP hostname). Vous n'avez pas besoin de supprimer les valeurs que vous n'utilisez pas.Vous devez spécifier toutes les valeurs, même si elles sont vides. Sinon,IBMProcess Mining ne démarre pas.
Si vous apportez accidentellement une modification, cela pourrait casser le style de format YAML et l'empêcher de fonctionner correctement.
exécution en tant que service
Pour exécuter l'application en tant que service, entrez les commandes suivantes en tant qu'utilisateur root:
cp <PM_HOME>/bin/pm*.service /etc/systemd/system/
chmod 664 /etc/systemd/system/pmweb.service
chmod 664 /etc/systemd/system/pmengine.service
chmod 664 /etc/systemd/system/pmanalytics.service
chmod 664 /etc/systemd/system/pmaccelerators.service
chmod 664 /etc/systemd/system/pmmonitoring.service
chmod 664 /etc/systemd/system/pmmonet.service
chmod 664 /etc/systemd/system/pmbrm.service
systemctl daemon-reload
systemctl enable pmengine.service
systemctl enable pmweb.service
systemctl enable pmanalytics.service
systemctl enable pmaccelerators.service
systemctl enable pmmonitoring.service
systemctl enable pmmonet.service
systemctl enable pmbrm.service
Vous devez modifier les fichiers *.service pour définir les configurations suivantes:
L'utilisateur
RUNAScorrectChemin PM_HOME correct
Démarrage et arrêt du service
Utilisez les commandes suivantes pour tester le service:
systemctl start pmmonet.service
systemctl start pmengine
systemctl start pmweb
systemctl start pmanalytics
systemctl start pmaccelerators
systemctl start pmmonitoring
systemctl start pmbrm
systemctl stop pmmonet.service
systemctl stop pmengine
systemctl stop pmweb
systemctl stop pmanalytics
systemctl stop pmaccelerators
systemctl stop pmmonitoring
systemctl stop pmbrm
Le service de messagerie électronique est utilisé pour envoyer un message de réinitialisation de mot de passe à l'utilisateur.
Pour activer le service de messagerie, éditez la section email de <PM_HOME>/etc/processmining.conf comme suit:
email: {
from: "sender@mycompany.com" #optional, if empty user field will be used
user:"theaccount@mycompany.com",
password:"2bTPnxKK6rsf3z6VNpcEqA==",
smtp: {
starttls: {
enable: true,
required: true
},
auth: true,
host: "smtp.mycompany.com",
port: "465",
socketFactory: {
port: "465" ,
fallback: false
}
},
sendgrid : {
apikey: ""
#host: "" #optional, if empty default value is https://api.sendgrid.com/v3/mail/send
}
},
Utilisation de SendGrid
Si au lieu de SMTP, il est préférable d'adopter SendGrid comme programme de messagerie, les configurations suivantes sont requises:
- Indiquez la zone
email.from(obligatoire). - Spécifiez
sendgrid.sendgrid.apikeyavec votre clé d'API de produit (obligatoire). - Définissez votre SengGrid
host(facultatif). - Remplacez le profil
smtpparsendgriddans la section de profil comme dans l'exemple.
profiles: [
...
...
"sendgrid", # smtp | sendgrid
...
...
]
Chiffrement des données au repos
Système de fichiers
Vous pouvez chiffrer les fichiers de données (CSV) qui ont été téléchargés dans IBM Process Mining avec AWS Key Management Service (KMS).
Pour chiffrer les fichiers de données, vous devez éditer la section encryption dans: <PM_HOME>/etc/processmining.conf comme suit:
encryption: {
aws: {
enabled: true,
# test
region: "eu-west-1",
accessKeyId: "<YOUR AWS ACCESS KEY>",
secretKey: "<YOUR AWS SECRET KEY>",
# arn of the key
cmkId: "arn:aws:kms:eu-west-1:992429998518:key/30be1e99-e584-4de5-a2bd-8c9927990f73"
}
},
Ensuite, éditez la section engine.defaults.project.encryptSourceData et définissez la valeur sur true.
Paramètres de la mémoire JVM
Vous devez définir les paramètres de mémoire du segment de mémoire Java en fonction de la mémoire RAM disponible sur le serveur.
Editez les propriétés suivantes dans <PM_HOME>/bin/environment.conf pour définir ces configurations:
"JVM_MAX_HEAP_ENGINE"
La valeur suggérée est 16 g sur un serveur avec 32 Go de mémoire RAM disponible.
La valeur recommandée est 24 g sur un serveur disposant de plus de 64 Go de mémoire RAM.
"JVM_MAX_DIRECT_MEMORY_ENGINE"
La valeur par défaut de 2g est généralement adéquate pour optimiser les performances.
"JVM_MAX_HEAP"
La valeur par défaut de 2g est généralement adéquate pour optimiser les performances.
"JVM_MAX_DIRECT_MEMORY"
La valeur par défaut de 1g est généralement adéquate pour optimiser les performances.
Après avoir modifié les paramètres JVM, vous devez redémarrer le serveur pour que le changement soit effectif.
Paramètres du système d'exploitation
Lorsque vous créez de nombreux projets que vous prévoyez d'utiliser régulièrement, appliquez les paramètres suivants au plus grand nombre de fichiers possible :
/etc/sysctl.conf
fs.file-max = 2097152
sudo sysctl -p
sudo vi /etc/security/limits.conf
* soft nofile 500000
ulimit -Sn
Activation de la sécurité avancée sous Nginx
Pour un environnement de production, il est conseillé d'activer les configurations de sécurité avancées Nginx .
Atténêter l'attaque lente après l'attaque
Cette configuration est utile pour atténuer les attaques DDOS de post-attaques lentes.
Pour cela, éditez le fichier /etc/nginx/conf.d/processmining.conf et décommentez les sections relatives à l'attaque DDOS slow-post mitigate.
client_body_timeout 5s;
client_header_timeout 5s;
location /signin
{
limit_req zone=one;
limit_conn addr 10;
proxy_pass http://localhost:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
Et
limit_req_zone $binary_remote_addr zone=one:10m rate=30r/m;
limit_conn_zone $binary_remote_addr zone=addr:10m;
Empêchement de l'injection de l'en-tête d'hôte
Pour cela, éditez le fichier /etc/nginx/conf.d/processmining.conf et
- Remplacez
server_name _;parserver_name <CURRENT PUBLIC HOSTNAME>;- Autrement dit,
server_name pm.mycompany.com;
- Autrement dit,
- Supprimez la mise en commentaire de la section
Prevent Host Header Injection. Cela permet de se connecter à une demande de fichier dédiée avec un nom d'hôte non valide comme cible.- Section de mise à jour relative aux certificats
Cookies sécurisés
Pour des raisons de sécurité, il est recommandé d'utiliser des cookies sécurisés. Si l'option est activée, l'application web ne fonctionne qu'avec HTTPS et non sur le port 8080 .
- Editez la section profile dans
<PM_HOME>/etc/processmining.conf. - Supprimez le profil de développement .
Intégration sécurisée à l'application Web Task Mining
Dans un environnement de production, il est recommandé de définir correctement le nom d'hôte de l'application Web Task Mining .
Editez la section sso.redirect dans <PM_HOME>/etc/processmining.conf comme suit:
sso: {
redirect: {
# This must be filled, for security reason, in production environment with the taskmining hostname. I.e. tm.mycompany.com
allow: ""
},
Génération d'une paire de clés pour la configuration de l'application de processus
Une paire de clés contient une clé publique et une clé privée qui permettent aux services Process App de communiquer avec IBM Process Mining. Vous pouvez générer la paire de clés pour Process App à l'aide du script generateKeyPair.sh . Pour plus d'informations sur l'utilisation du script generateKeyPair.sh pour générer une paire de clés, voir Création d'une clé privée et d'une clé publique pour Process App. Toutefois, si vous devez supprimer les paires de clés existantes et les remplacer manuellement par une nouvelle paire de clés, procédez comme suit:
Accéder à
/opt/processmining/etccd /opt/processmining/etcSupprimez les fichiers de paire de clés existants,
acf-ext-publicKey.der,acf-core-privateKey.deretkeypair-callsToAcf.pemrm -i acf-ext-publicKey.der rm -i acf-core-privateKey.der rm -i keypair-callsToAcf.pemGénérer une paire de clés RSA au format
.pemopenssl genrsa -out keypair-callsToAcf.pem 2048Exécutez la commande suivante pour exporter la clé publique au format
.dervers le répertoire<PM_HOME>/etcaprès avoir généré les paires de clés:openssl rsa -in keypair-callsToAcf.pem -outform DER -pubout -out acf-ext-publicKey.derExécutez la commande suivante pour exporter la clé privée au format
.dervers le répertoire{PM_HOME}/etcaprès avoir généré les paires de clés:openssl pkcs8 -topk8 -nocrypt -in keypair-callsToAcf.pem -outform DER -out acf-core-privateKey.der
/opt/processmining , vous devez définir la propriété publicKeyPath dans le fichier <PM_HOME> /etc/processmining.conf à la valeur suivante : filesystem.home:
"<PM_HOME>/etc/acf-ext-publicKey.der"Génération des clés de signature JWT pour l'application de processus
Vous pouvez générer des clés de signature JWT pour établir et sécuriser la communication entre les services d'application de processus et les applications. Par défaut, une clé de signature pour IBM Process Mining est disponible dans les paramètres de base. Si vous souhaitez générer de nouvelles clés JWT, utilisez le portail de génération de clés suivant : https://asecuritysite.com/encryption/keygen.
Pour générer une clé de signature JWT dans l'outil de génération de clés, procédez comme suit:
- Dans la zone Phrase passe , entrez une phrase passe de votre choix.
- Sélectionnez l'algorithme de chiffrement comme illustré ci-dessous pour générer et chiffrer la clé de signature pour IBM Process Mining:

- Copiez les clés de signature JWT générées aux emplacements suivants:
- Première clé générée pour IBM Process Mining:
Copiez dans la zone
issuer.jwt.key.ProcessMiningServicedu fichier<PM_HOME>/etc/accelerator-core.propertiesCopiez dans la zone
issuer.jwt.key.ProcessMiningServicede la section d'accélérateur du fichier<PM_HOME>/etc/processmining.conf
Configuration des paramètres pour la génération de bot RPA
Vous pouvez utiliser IBM Process Mining pour générer des bots RPA . Pour ce faire, il est obligatoire que l'environnement Task Mining soit lié à l'environnement Process Mining et que les fournisseurs actifs soient définis dans le fichier de configuration.
Pour lier l'application Task Mining à l'application Process Mining , vous devez mettre à jour le fichier etc/processmining.conf avec la configuration suivante:
taskmining : {
url : "https://pm-qa-candidate-task-miner.fyre.ibm.com"
}
Vous devez mentionner l'ensemble autorisé de fournisseurs actifs dans le fichier etc/processmining.conf . Pour définir les fournisseurs actifs d'une installation, mettez à jour le fichier etc/processmining.conf avec la configuration suivante:
rpa : {
activeVendors : "IBM_RPA,UI_PATH"
}