Signature des fonctions et plug-ins personnalisés ou d'éditeurs tiers pour une installation et une mise à jour

Des plug-ins Eclipse peuvent être créés et utilisés pour étendre la fonctionnalité client de Notes®. Les fonctions et les plug-ins sont paramétrés avec le logiciel client.

Pourquoi et quand exécuter cette tâche

Pour simplifier l'installation ou le déploiement, signez vos fonctions et vos plug-ins.

ATTENTION : Le programme d'installation de Notes® requiert que l'ensemble des fonctions et des plug-ins se trouvant dans le kit d'installation soient signés et horodatés.

Vous pouvez signer vos nouvelles fonctions et vos nouveaux plug-ins dans le cadre de la préparation de l'installation et de la mise à jour à l'aide d'un certificat de signature du code obtenu auprès d'une autorité de certification. Une fois signées et placées correctement dans le kit d'installation, les fonctions peuvent être installées si le certificat de signature du code est inclus dans le magasin de clés du kit. Si le certificat de signature du code n'est pas un fichier accrédité, vous pouvez modifier la politique de vérification des signatures d'installation pour autoriser l'installation du contenu signé mais non accrédité.

Remarque : Les fonctions et plug-ins installés lors de l'installation ou de la mise à jour de Notes® doivent être signés. Les fonctions et plug-ins déployés dans une installation existante de Notes®, par exemple à l'aide d'un widget, doivent être signés par un certificateur accrédité.

Les paramètres administratifs d'accréditation par défaut peuvent être envoyés aux clients par le biais des paramètres de politique Domino®, disponibles dans la section relative aux paramètres administratifs d'accréditation par défaut, que vous trouvez dans l'onglet Clés et certificat du document de politique de sécurité. Utilisez cette option de politique pour spécifier vos valeurs administratives d'accréditation par défaut, à employer pendant l'installation ou la mise à niveau de Notes® ou bien pendant un déploiement de plug-in client dans une installation existante de Notes®.

Remarque : Des certificats d'horodatage peuvent être ajoutés aux plug-ins signés afin de garantir la validité à long terme des signatures de plug-in. Vous pouvez utiliser des paramètres de politique de sécurité afin d'ignorer les dates d'expiration des certificats d'horodatage valides au moment de la signature du plug-in. Avec cette approche, les utilisateurs ne sont pas bloqués au cours de l'utilisation ou de l'installation de plug-ins signés lorsque les certificats d'horodatage arrivent à expiration. Pour plus d'informations sur la création d'un document de paramètres de politique de sécurité, consultez les rubriques connexes.

La signature des fonctions et plug-ins personnalisés ou tiers permet les opérations suivantes :

  • Vous autorise à imposer les paramètres de politique pour déterminer le type de contenu signé/non signé à télécharger à partir d'un site de mise à jour Eclipse autorisé
  • Permet d'installer une fonction dans le cadre d'une installation ou d'une mise à niveau de Notes®
  • Evite que les utilisateurs ne soient invités à accréditer les fonctions ou plug-ins déployés
  • Vous autorise à modifier la politique par défaut utilisée par le code de vérification des signatures au moment de l'installation et de la mise à jour à l'aide d'une politique Domino® ou en définissant des préférences dans le fichier PLUGIN_CUSTOMIZATION.INI du kit d'installation.
  • En fonction des paramètres de l'administrateur, autorise les utilisateurs à prendre des décisions d'accréditation reposant sur les données de certification

Lorsque vous installez de nouvelles fonctions et de nouveaux plug-ins personnalisés ou d'éditeurs tiers dans le cadre d'une installation Notes®, vous pouvez ajouter vos propres certificats dans un magasin de clés pour que les fonctions signées soient accréditées pendant l'installation et la mise à jour à partir du kit d'installation. Vous pouvez signer les fonctions et les plug-ins à l'aide de l'outil JarSigner inclus dans le kit Java Development Kit (JDK) ou à l'aide d'un outil tiers, tel que PDE (Plugin Development Environment) dans Eclipse. Les certificats peuvent être obtenus auprès de nombreuses autorités de certification réputées.

L'accréditation des fonctions est vérifiée au cours du paramétrage de l'installation et de la mise à jour. Si Notes® est déjà installé, les fonctions sont vérifiées au cours du paramétrage à l'exécution.

  • Paramétrage de l'installation et de la mise à jour

    Le programme d'installation Notes® permet d'installer et d'effectuer un paramétrage initial des fonctions nouvelles ou mises à jour à partir du site de mise à jour du kit d'installation UPDATESITE.ZIP. Au cours de ce paramétrage initial, l'accréditation se base sur le fichier du magasin de clés Java situé dans le répertoire Notes® du kit d'installation de deploy. Aucune interface utilisateur n'est disponible pour les invites d'accréditation au cours de l'installation de Notes®, toutes les fonctions installées doivent être signées par un signataire accrédité.

    Remarque : Lorsque vous exécutez le kit d'installation du client Notes®, le magasin de clés Java est copié dans le dossier notes\framework\rcp\deploy\.keystore.JCEKS.IBM_J9_VM.install. Ce magasin contient le certificat de signature du code IBM® utilisé lors de l'installation.

    Les composants contenus dans le fichier zip du site de mise à jour (updateSite.zip) figurant dans le kit d'installation Notes® doivent être signés, y compris les fichiers JAR des fonctions et plug-ins personnalisés ou d'éditeurs tiers. Le processus de paramétrage vérifie la signature. Cela permet aux administrateurs et aux utilisateurs de contrôler et de valider le code signé en cours de téléchargement auprès du client.

  • Paramétrage à l'exécution

    Si Notes® est en cours d'exécution, le paramétrage peut être initié manuellement par l'utilisateur, par programmation en fonction de critères planifiés ou bien par un autre mécanisme de paramétrage (tel que celui utilisé par le processus de paramétrage de widgets). Lors du paramétrage à l'exécution, le magasin de clés Notes® et le carnet d'adresses personnel de l'utilisateur sont combinés afin de déterminer l'accréditation pour les fonctions et plug-ins déployés.

    Remarque : Lorsque vous exécutez le kit d'installation du client Notes®, le magasin de clés Java est copié dans le dossier notes\framework\rcp\deploy\.keystore.JCEKS.IBM_J9_VM.install (sur une plateforme Mac OS X, il s'agit du dossier .keystore.JCEKS.Java_HotSpot_Client_VM.install). Ce magasin de clés contient le certificat de signature du code IBM® utilisé pendant l'installation. Néanmoins, lors du paramétrage à l'exécution, Notes® utilise un autre magasin d'accréditation, disponible dans l'application Contacts de l'utilisateur (names.nsf). La vue Avancé/Certificats de l'application Contacts de l'utilisateur contient des certificats utilisés lors du paramétrage à l'exécution afin de déterminer l'accréditation adéquate. Les certificats d'accréditation peuvent être copiés dans la vue Avancé/Certificats de l'application Contacts, par l'intermédiaire de la section de la politique de sécurité traitant des paramètres administratifs d'accréditation par défaut, ou bien l'utilisateur peut sélectionner Installer ce plug-in et ajouter le signataire à ma liste de signataires accrédités pendant qu'il effectue le paramétrage. Dans l'idéal, vous devez configurer les paramètres d'accréditation de telle sorte que les utilisateurs ne reçoivent jamais d'invites d'accréditation. Envoyez les certificats d'accréditation à l'application Contacts de l'utilisateur par le biais de la politique définie (ou de l'application deploy.nsf si vous ne souhaitez pas faire appel à la politique), de façon à ce que les fonctions et plug-ins déployés soient installés sans invites d'accréditation.
    Remarque : Pour plus d'informations sur la personnalisation d'un kit d'installation pour les valeurs par défaut d'accréditation, consultez les rubriques connexes.

    Si vous avez signé numériquement les fonctions à installer ou à mettre à jour, le système de paramétrage effectue les opérations suivantes :

    • Affiche les erreurs sur le contenu non accrédité sous la forme d'un résumé de post-installation
    • Offre une interface utilisateur cohérente pour traiter le contenu accrédité et non accrédité lors de l'exécution en fonction des paramètres de politique
    • Prend des décisions d'accréditation en fonction des paramètres de politique gérés afin que vous puissiez remplacer les paramètres par défaut et gérer les paramètres de politique à partir d'un serveur

Si vous signez des fonctions et des plug-ins que vous prévoyez de déployer pour les utilisateurs d'une autre façon que dans le kit d'installation Notes®, tenez compte des points suivants :

  • Utilisez Domino® Administrator pour définir les politiques de vérification des signatures par défaut à utiliser par le client Notes® sur la page Paramètres de sécurité > Plug-ins signés.
    Remarque : La politique Domino® a priorité sur les paramètres définis dans le fichier deploy\plugin_customization.ini du kit d'installation. La politique Domino® n'affecte pas l'installation initiale.
  • Si vous utilisez une application deploy.nsf sur le client Notes® pour définir l'accréditation, Notes® lit cette application au démarrage pour déterminer les paramètres d'accréditation de la session. En revanche, si vous avez utilisé l'onglet Clés et certificats de la boîte de dialogue Politique de sécurité pour envoyer les paramètres administratifs d'accréditation par défaut, ces derniers sont appliqués et l'application deploy.nsf de l'utilisateur est ignorée.
  • Déployez ou proposez aux utilisateurs le kit d'installation, notamment le magasin de clés que vous avez mis à jour dans le répertoire de déploiement du kit d'installation.

Pour plus d'informations, voir Pushing certifier and trust settings using policy or a client install kit.

Signature et ajout de nouvelles fonctions au kit

Pourquoi et quand exécuter cette tâche

Cette procédure permet de signer les fichiers JAR des nouvelles fonctions et des nouveaux plug-ins personnalisés ou d'éditeurs tiers, ainsi que d'ajouter ces fonctions au kit d'installation Notes®.

Pour réaliser cette procédure, vous devez avoir généré ou obtenu les fichiers JAR des nouveaux plug-ins et fonctions personnalisés ou d'éditeurs tiers, afin de les utiliser dans un site de mise à jour Eclipse. Utilisez l'outil JarSigner de JRE, Eclipse ou tout autre outil tiers.

Procédure

  1. Définissez la variable d'environnement de répertoire JAVA_HOME sur la ou les machines sur lesquelles vous prévoyez d'installer Notes®, de façon à pointer vers le dossier JDK dans lequel se trouve le programme Keytool. Dans l'exemple de ligne de commande suivant, le dossier bin\keytool nécessaire figure dans le répertoire de la variable JAVA_HOME indiquée.
    set JAVA_HOME=C:\sign-plugin\abx\java\jdk1.5.0_05
  2. Créez un magasin de clés et générez la paire de clés publique/privée EclipseFeaturesAlias ainsi qu'un certificat autosigné associé à la clé privée de la paire. Un exemple de ligne de commande est présenté ci-dessous :
    %JAVA_HOME%\bin\keytool -genkey -dname "cn=Bob, ou=Sales, o=foo, c=US" -alias EclipseFeaturesAlias -keypass privatekeypassword -keystore C:\sign-plugin\abx\mykeystore -storepass keystorepassword -keyalg "RSA" -validity 360
  3. Affichez la paire de clés et le certificat. Un exemple de ligne de commande est présenté ci-dessous :
    %JAVA_HOME%\bin\keytool -list -v -alias EclipseFeaturesAlias -keystore C:\sign-plugin\abx\mykeystore -storepass keystorepassword
  4. Pour la fonction que vous prévoyez d'ajouter au kit d'installation, signez ses fichiers JAR updatesite (dans le dossier de fonctions et dans le dossier de plug-ins) en utilisant le certificat auto-signé ou la paire de clés. Des exemples de lignes de commande permettant de signer les fichiers JAR dans le dossier de fonctions et le dossier de plug-ins sont présentés ci-dessous :
    %JAVA_HOME%\bin\jarsigner -verbose -keystore C:\sign-plugin\abx\mykeystore -storepass keystorepassword -keypass privatekeypassword C:\sign-plugin\abx\mytestUpdatesite\features\com.ibm.sign.demo.feature_1.0.0.jar EclipseFeaturesAlias 
    %JAVA_HOME%\bin\jarsigner -verbose -keystore C:\sign-plugin\abx\mykeystore-storepass keystorepassword -keypass privatekeypassword C:\sign-plugin\abx\mytestUpdatesite\plugins\com.ibm.sign.demo_1.0.0.jar EclipseFeaturesAlias
  5. Mettez à jour le manifeste d'installation (deploy\install.xml) dans le kit d'installation Notes®. Un snippet s'affiche (voir la rubrique "Personnalisation du manifeste d'installation de Notes® pour les fonctions Eclipse nouvelles ou d'éditeurs tiers" afin d'obtenir une description des paramètres installfeature).
    <?xml version="1.0" encoding="ISO-8859-1"?> 
    <ibm-portal-composite> 
    <domain-object name="com.ibm.rcp.installmanifest"> 
    <object-data>
        <install version="8.0.0.20081211.1925">
    <!-- add this sample installfeature snippet to the end of the manifest,before the </install> line --> 
    <installfeature default="false" description="My hello world feature"id="test" name="Test" required="false" show="true" version="1.0.0">
            <requirements>
                             <feature download-size="222"
    id="com.ibm.sign.demo.feature" match="perfect" shared="true" size="199"url="jar:${installer.root}/updateSite.zip!/" version="1.0.0"/>
             </requirements>
     </installfeature>
     <!-- end of addition -->
        </install>
    </object-data>
    </domain-object>
    </ibm-portal-composite>
    Remarque : Cette étape est également décrite dans les rubriques suivantes : Personnalisation du kit d'installation de Notes® pour ajouter ou supprimer des fonctions Eclipse et Ajout de nouvelles fonctions au kit d'installation Notes® à l'aide d'un outil fourni.
  6. Ajoutez la fonction signée au kit d'installation Notes®.
    1. Procédez à l'extraction du fichier Notes® du kit d'installation updatesite.zip dans c:\updatesite. Vous obtenez ainsi un dossier de fonctions, un dossier de plug-ins et un fichier site.xml.
    2. Copiez vos fichiers JAR de fonctions et de plug-ins signés dans les dossiers décompressés correspondants du site de mise à jour.
    3. Mettez à jour le fichier site.xml décompressé du site de mise à jour afin qu'il reflète la nouvelle fonction. Voici un exemple d'entrée :
      <feature url="features/com.ibm.sign.demo.feature_1.0.0.jar"id="com.ibm.sign.demo.feature" version="1.0.0"/> 
    4. Compressez le dossier updatesite modifié.
    5. Copiez le fichier updatesite.zip modifié dans le kit d'installation Notes®, afin de remplacer le fichier updatesite.zip d'origine.
  7. Exportez un certificat d'accréditation pouvant authentifier votre clé publique. Un exemple de ligne de commande est présenté ci-dessous :
    %JAVA_HOME%\bin\keytool -export -alias EclipseFeaturesAlias -file EclipseFeaturesAlias.cer -keystore C:\sign-plugin\abx\mykeystore -storepass keystorepassword
  8. Ajoutez le certificat d'accréditation exporté dans le magasin de clés du kit d'installation Notes® afin que votre clé publique soit accréditée lors de l'installation. Un exemple de ligne de commande est présenté ci-dessous :
    %JAVA_HOME%\bin\keytool.exe -import -keystore C:\sign-plugin\abx\AllClient.msi.w32\deploy\.keystore.JCEKS.IBM_J9_VM.install -storetype JCEKS -alias EclipseFeaturesAlias -file EclipseFeaturesAlias.cer -storepass ""
  9. Dressez la liste des entrées figurant dans le magasin de clés du kit d'installation Notes®. Un exemple de ligne de commande est présenté ci-dessous :
    %JAVA_HOME%\bin\keytool.exe -list -v -keystore C:\sign-plugin\abx\AllClient.msi.w32\deploy\.keystore.JCEKS.IBM_J9_VM.install -storetype JCEKS -alias EclipseFeaturesAlias -storepass ""