Mise à jour du gestionnaire de ressources HTTPS Connector à l'aide de l'API REST d'administration

Vous pouvez utiliser l'API REST d'administration d' IBM® App Connect Enterprise pour interroger et mettre à jour les gestionnaires de ressources disponibles pour le serveur d'intégration. Cette rubrique explique comment utiliser l'API REST d'administration pour mettre à jour le gestionnaire de ressources du serveur d'intégration du connecteur HTTPS, en mettant particulièrement l'accent sur le rechargement du certificat de sécurité entrant.

Avant de commencer

Lisez la rubrique suivante:

A propos de cette tâche

Lorsqu'ils reçoivent des connexions entrantes sécurisées via HTTPS, les serveurs d'intégration utilisent le gestionnaire de ressources HTTPS Connector. Vous pouvez interroger et mettre à jour le gestionnaire de ressources HTTPS Connector à l'aide de l'API REST d'administration App Connect Enterprise l'API REST d'administration. Il n'est pas nécessaire de redémarrer le serveur d'intégration pour que ces mises à jour soient prises en compte.

Un certain nombre de situations peuvent nécessiter des mises à jour des propriétés du gestionnaire de ressources HTTPS Connector dans un serveur d'intégration. Vous pouvez mettre à jour dynamiquement les propriétés en question à l'aide de l'instruction PATCH dans l'API REST d'administration. Les mises à jour effectuées à l'aide de l'instruction PATCH sont conservées dans le sous-répertoire overrides du répertoire de travail du serveur d'intégration, ce qui signifie que si le serveur d'intégration est redémarré, les mises à jour ne sont pas perdues.

Interrogation des gestionnaires de ressources disponibles d'un serveur d'intégration

Procédure

Utilisez l'une des méthodes d'API REST suivantes pour interroger les gestionnaires de ressources disponibles d'un serveur d'intégration.
  • Pour un serveur d'intégration indépendant:
    GET http://hostname:port/apiv2/resource-managers
  • Pour un serveur d'intégration géré:
    GET http://hostname:port/apiv2/servers/{server}/resource-managers

Interroger les propriétés du gestionnaire de ressources HTTPS Connector

Procédure

Utilisez l'une des méthodes REST API suivantes pour interroger les propriétés du gestionnaire de ressources HTTPS Connector.
  • Pour un serveur d'intégration indépendant:
    GET http://hostname:port/apiv2/resource-managers/https-connector
    Par exemple, utilisez la commande curl:
    curl -X GET http://hostname:port/apiv2/resource-managers/https-connector
    Une réponse similaire à la suivante est renvoyée :
    {"hasChildren":false,"name":"https-connector","type":"resourceManager","uri":"/apiv2/resource-managers/https-connector",
    "properties":{"AutoRespondToHTTPHEADRequests":false,"CORSAllowCredentials":false,"CORSAllowHeaders":"Accept,Accept-Language,
    Content-Language,Content-Type","CORSAllowMethods":"GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS","CORSAllowOrigins":"*",
    "CORSEnabled":false,"CORSExposeHeaders":"Content-Type","CORSMaxAge":-1,"CipherSpec":"!RC4+RSA:HIGH:+MEDIUM:+LOW",
    "ConnBacklog":100,"EnableLookups":true,"EnableTLSTrace":false,"IWATimeout":300,"IntegratedWindowsAuthentication":"",
    "KeyAlias":"","KeyPassword":"********","KeystoreFile":"","KeystorePassword":"********","KeystoreType":"JKS",
    "ListenerAddress":"0.0.0.0","ListenerPort":7843,"ListenerThreads":-1,"MaxConnections":-1,"MaxKeepAliveRequests":-1,
    "MaxPostSize":-1,"QueueCapacity":1000,"ReqClientAuth":false,"ServerName":"","TLSCertVerifyDepth":100,"TLSContextTimeout":300,
    "TLSProtocols":"","TimeoutSweepInterval":20,"TruststoreFile":"","TruststorePassword":"********","TruststoreType":"JKS",
    "name":"HTTPSConnector","type":"Policy"},"descriptiveProperties":{"className":"HTTPSConnector","isDynamic":"true",
    "policyType":"HTTPSConnector"},"active":{"ListenerPort":-1,"serverRestartRequired":false},"actions":{"available":{"refresh-tls-config":
    "/apiv2/resource-managers/https-connector/refresh-tls-config"}},"children":{},"links":[]}
  • Pour un serveur d'intégration géré:
    GET http://hostname:port/apiv2/servers/{server}/resource-managers/https-connector
    Par exemple, utilisez la commande curl:
    curl -X GET http://hostname:port/apiv2/servers/{server}/resource-managers/https-connector

Mise à jour dynamique des propriétés du gestionnaire de ressources HTTPS Connector

Procédure

Utilisez l'une des méthodes REST API suivantes pour mettre à jour dynamiquement les propriétés du gestionnaire de ressources HTTPS Connector.
Le fait de pouvoir mettre à jour dynamiquement ces propriétés, en particulier KeystoreFile , est utile lorsque vous utilisez des autorités de certification qui actualisent fréquemment leurs certificats, mais que vous ne souhaitez pas redémarrer le serveur d'intégration à chaque fois que l'actualisation se produit.

Les mises à jour prennent effet sur la première connexion entrante après la mise à jour ; les connexions préexistantes conservent la configuration d'origine. Il n'est pas nécessaire de redémarrer le serveur d'intégration pour que les modifications soient prises en compte.

Vous pouvez mettre à jour les propriétés suivantes du gestionnaire de ressources HTTPS Connector :
  • KeyAlias
  • KeystoreFile -vous pouvez spécifier le chemin d'accès à un certificat de serveur entrant mis à jour sans qu'il soit nécessaire de redémarrer le serveur d'intégration pour que le certificat soit appliqué aux connexions entrantes suivantes.
  • KeystorePassword
  • KeystoreType
  • TruststoreFile
  • TruststorePassword
  • TruststoreType
Pour plus d'informations sur ces paramètres, voir Serveur d'intégration HTTP listener parameters (SOAP and HTTP nodes).
  • Par exemple, pour mettre à jour les propriétés KeyAlias, KeystoreFile, KeystorePassword, et KeystoreType pour le gestionnaire de ressources du connecteur HTTPS pour un serveur d'intégration indépendant, utilisez la commande curl suivante avec le verbe PATCH :
    curl -X PATCH -H "Content-Type: application/json" http://hostname:port/apiv2/resource-managers/https-connector 
    -d "{\"properties\": {\"KeyAlias\":\"server1cert\",\"KeystoreFile\": \"C:\\temp\\myserver_keystore.p12\",\
    "KeystorePassword\": \"server::keystorePass\",\"KeystoreType\": \"p12\"}}"
  • Pour un serveur d'intégration géré, pour mettre à jour les mêmes propriétés pour le gestionnaire de ressources HTTPS Connector pour un serveur d'intégration géré, utilisez la commande curl suivante avec le verbe PATCH :
    curl -X PATCH -H "Content-Type: application/json" http://hostname:port/apiv2/servers/{server}/resource-managers/https-connector 
    -d "{\"properties\": {\"KeyAlias\":\"server1cert\",\"KeystoreFile\": \"C:\\temp\\myserver_keystore.p12\",\"KeystorePassword\": \
    "server::keystorePass\",\"KeystoreType\": \"p12\"}}"
Si la commande aboutit, le code d'état HTTP 204 est renvoyé. Vous pouvez voir les valeurs mises à jour dans le sous-répertoireoverrides du répertoire de travail du serveur d'intégration.

Chargement dynamique d'un nouveau certificat serveur en réutilisant le même fichier de clés

A propos de cette tâche

Vous pouvez réutiliser le même fichier de clés mais avec une valeur différente pour le certificat de sécurité du serveur afin d'actualiser le certificat de serveur à utiliser par le serveur d'intégration sans avoir à redémarrer le serveur d'intégration. Au lieu de mettre à jour le certificat de serveur en utilisant le verbe PATCH dans l'API REST, comme décrit dans Mise à jour dynamique des propriétés du gestionnaire de ressources HTTPS Connector, vous devez utiliser la méthode POST pour charger un nouveau certificat de serveur que vous avez défini dans un fichier de certificat portant le même nom que celui que vous avez utilisé précédemment.

Procédure

Utilisez les commandes suivantes pour actualiser la configuration du serveur d'intégration TLS, en incluant la valeur mise à jour du certificat du serveur dans le fichier de certificat réutilisé.
Les mises à jour prennent effet sur la première connexion entrante qui suit la mise à jour. Il n'est pas nécessaire de redémarrer le serveur d'intégration pour que les modifications soient prises en compte.
  • Par exemple, pour garantir l'utilisation d'un certificat serveur mis à jour spécifié dans un fichier de certificat réutilisé pour un serveur d'intégration indépendant, utilisez la commande curl suivante:
    curl -X POST http://hostname:port/apiv2/resource-managers/https-connector/refresh-tls-config
  • Pour un serveur d'intégration géré:
    curl -X POST http://hostname:port/apiv2/servers/{server}/resource-managers/https-connector/refresh-tls-config
Si la commande aboutit, le code d'état HTTP 200 est renvoyé.