11.1 Définition du mode FIPS sur Identity Application et Identity Reporting

  1. Créez un dossier pour FIPS. Exemple : /home/fips

  2. Sauvegardez les fichiers suivants dans le dossier créé :

    Fichiers

    Chemin d'accès au fichier existant

    idm.jks

    /opt/netiq/idm/apps/tomcat/conf

    osp.jks

    tomcat.ks

    encrypt-keys.pkcs12

    server.xml

    ism-configuration.properties

    configupdate.sh

    /opt/netiq/idm/apps/configupdate

    configupdate.sh.properties

  3. Accédez au répertoire /mnt/osp/packages/misc/ et copiez osp-tomcat8-pwd-handler-<version>.jar dans le répertoire /opt/netiq/idm/apps/tomcat/lib.

  4. Accédez au répertoire /opt/netiq/idm/apps/tomcat/bin/ et modifiez le fichier setenv.sh comme suit :

    • JAVA_OPTS= -Dorg.bouncycastle.fips.approved_only=true -Dinternal.osp.framework.fips-password=novell -Dorg.bouncycastle.rsa.allow_multi_use=true -Djavax.net.ssl.keyStoreType=BCFKS -Djavax.net.ssl.trustStoreType=BCFKS -Djavax.net.ssl.trustStore=/opt/netiq/idm/apps/tomcat/conf/idm.bcfks -Djavax.net.ssl.trustStorePassword=novell

    • BCFIPS_JARS=/opt/netiq/common/jre/lib/bc-fips-1.0.2.5.jar:/opt/netiq/common/jre/lib/bcpkix-fips-1.0.7.jar:/opt/netiq/common/jre/lib/bctls-fips-1.0.19.jar

    • export CLASSPATH="${BCFIPS_JARS}"

    • Recherchez CATALINA_OPTS et remplacez encrypt-keys.pkcs12 par encrypt-keys.bcfks et remplacez storetype par bcfks

  5. Accédez à /opt/netiq/idm/apps/tomcat/conf/ et exécutez les commandes suivantes :

    keytool -importkeystore -srckeystore idm.jks -srcstorepass novell -srcstoretype PKCS12 -destkeystore idm.bcfks -deststorepass novell -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
    keytool -importkeystore -srckeystore tomcat.ks -srcstorepass novell -srcstoretype PKCS12 -destkeystore tomcat.bcfks -deststorepass novell -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
    keytool -importkeystore -srckeystore idm.jks -srcstorepass novell -srcstoretype PKCS12 -destkeystore /opt/netiq/idm/apps/osp/osp.bcfks -deststorepass novell -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
    keytool -importkeystore -srckeystore tomcat.ks -srcstorepass novell -srcstoretype PKCS12 -destkeystore /opt/netiq/idm/apps/osp/osp.bcfks -deststorepass novell -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH --noprompt
    java -jar <mount-location>/osp/packages/misc/osp-keymanager-6.7.7.jar -genkeys -keystore /opt/netiq/idm/apps/osp/osp.bcfks -storepass novell -storetype BCFKS -application idm -providerClass org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerPath $CLASSPATH -keypass novell -use Encrypting,Signing,TLS
    keytool -importkeystore -srckeystore encrypt-keys.pkcs12 -srcstorepass novell -srcstoretype PKCS12 -destkeystore encrypt-keys.bcfks -deststorepass -deststoretype BCFKS -providerclass  org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider -providerpath $CLASSPATH
  6. Modifiez le fichier server.xml de la façon suivante :

    <!--Connector port="8543" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLSv1.3" keystoreFile="conf/tomcat.ks" keystorePass="novell" maxHttpHeaderSize="65536" sslEnabledProtocols="TLSv1.3" /--> <Connector protocol="com.microfocus.osp.tomcat.http.PasswordHttp11NioProtocol" port="8543" maxThreads="150" maxHttpHeaderSize="65536" SSLEnabled="true" scheme="https" secure="true"> <SSLHostConfig protocol="TLS" protocols="TLSv1.3" ciphers="TLS_DHE_DSS_WITH_AES_128_GCM_SHA256,TLS_DHE_DSS_WITH_AES_256_GCM_SHA384,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_256_CBC_SHA256,TLS_DHE_DSS_WITH_AES_256_CBC_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_CCM,TLS_RSA_WITH_AES_256_CCM,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA" truststoreFile="/opt/netiq/idm/apps/osp/osp.bcfks" truststorePassword="novell" truststoreType="BCFKS" > <Certificate certificateKeystoreFile="/opt/netiq/idm/apps/tomcat/conf/tomcat.bcfks" certificateKeystorePassword="novell" certificateKeyAlias="ssl certificatedns" certificateKeystoreType="BCFKS" /> </SSLHostConfig> </Connector>
  7. Modifiez le fichier ism-configuration.properties comme suit :

    com.netiq.idm.osp.ssl-keystore.file = /opt/netiq/idm/apps/tomcat/conf/tomcat.bcfks
    com.netiq.idm.osp.ssl-keystore.type = BCFKS
    com.netiq.idm.osp.oauth-keystore.file =/opt/netiq/idm/apps/tomcat/conf/osp.bcfks
    com.netiq.idm.osp.oauth-keystore.type = BCFKS
    com.netiq.rpt.ssl-keystore.file = /opt/netiq/idm/apps/tomcat/conf/idm.bcfks
    com.netiq.rpt.ssl-keystore.type = BCFKS
    DirectoryService/realms/jndi/params/KEYSTORE_PATH = /opt/netiq/idm/apps/tomcat/conf/idm.bcfks
    
    com.sssw.fw.security.sigcert.truststore.type = BCFKS
    com.netiq.idm.osp.oauth-truststore.file = /opt/netiq/idm/apps/tomcat/conf/idm.bcfks
    com.netiq.idm.ua.ldap.keystore-type = BCFKS
    com.netiq.idm.osp.oauth-key-alias = ssl certificatedns
  8. Copiez les fichiers .jar suivants dans le répertoire configupdate :

    • bc-fips-1.0.2.5.jar

    • bcpkix-fips-1.0.7.jar

    • bctls-fips-1.0.19.jar

  9. Modifiez le fichier configupdate.sh.properties comme suit :

    master_keystore=/opt/netiq/idm/apps/tomcat/conf/encrypt-keys.bcfks
    master_keystore_type=bcfks
  10. Modifiez le fichier configupdate.sh comme suit  :

    JAVA_OPTS=" -Dorg.bouncycastle.fips.approved_only=true -Dinternal.osp.framework.fips-password=novell -Dorg.bouncycastle.rsa.allow_multi_use=true -Djavax.net.ssl.keyStoreType=BCFKS -Djavax.net.ssl.trustStoreType=BCFKS -Djavax.net.ssl.trustStore=/opt/netiq/idm/apps/tomcat/conf/idm.bcfks -Djavax.net.ssl.trustStorePassword=novell ${JAVA_OPTS}"
    CLASSPATH="/opt/netiq/common/jre/lib/bc-fips-1.0.2.5.jar:/opt/netiq/common/jre/lib/bcpkix-fips-1.0.7.jar:/opt/netiq/common/jre/lib/bctls-fips-1.0.19.jar:$CLASSPATH"
  11. Lancez l'utilitaire configupdate.sh.

  12. Démarrez Tomcat.