Keystore in das CMS-Format unter z/OS konvertieren
Sie können dynamisches Routing für Liberty-Verbünde in einem z/OS-System definieren. Im Rahmen dieser Aufgabe wird der Keystore in ein CMS-Format konvertiert.
Das bereitgestellte Beispielscript veranschaulicht, wie der CMS-Provider für den Befehl ikeycmd eingerichtet wird. Ihre Umgebung ist möglicherweise anders. Sie müssen den CMS-Provider lokalisieren und das richtige Provider-Offset angeben.
Sie müssen beide gskcmd-Befehle in Schritt 5 im Abschnitt Dynamisches Routing für Liberty-Verbünde einrichten für z/OS ausgeführt werden, indem Sie den Befehl ikeycmd anstelle des Befehls gskcmd verwenden. Die ikeycmd-Befehle müssen den zusätzlichen Parameter -Djava.security.properties, wie im Beispielscript angegeben, enthalten, um den CMS-Provider mit einem entsprechenen Provider-Offset hinzuzufügen. Der Parameter -Djava.security.properties muss den anderen Parametern vorangestellt werden, die in Schritt 5 im Abschnitt Dynamisches Routing für Liberty-Verbünde für jeden Befehl angegeben sind.
#!/bin/sh
# z/Os-ikeycmd-Wrapper, der die CMS-v3-Unterstützung hinzufügt.
# Autor:
if [ -n "$JAVA_HOME" ]; then
echo "Using JAVA_HOME=$JAVA_HOME"
else
JAVA_HOME=/usr/lpp/java/java800/J8.0_64/
fi
# Nach dieser Zeile sollten keine Bearbeitungen erforderlich sein.
> /tmp/java.security.append
# Suchen Sie in der Datei java.security nach dem CMS-Provider, der nicht v3 ist.
if grep CMSProvider $JAVA_HOME/lib/security/java.security >/dev/null; then
if ! grep -i "CMSProvider V3" $JAVA_HOME/lib/security/java.security; then
echo "CMS Provider already present, but no 'V3' argument: $JAVA_HOME/lib/security/java.security"
exit 1
fi
else
# Es muss ein CMS-v3-Provider hinzugefügt werden.
# Suchen Sie nach dem nächsten Provider-Offset.
let NEXT_PROVIDER=1
for PROVIDER in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15; do
if grep security.provider.$PROVIDER $JAVA_HOME/lib/security/java.security >/dev/null; then
let NEXT_PROVIDER=$NEXT_PROVIDER+1
fi
done
# Speichern Sie die Providerposition in einer Datei.
echo "security.provider.$NEXT_PROVIDER=com.ibm.security.cmskeystore.CMSProvider V3" > /tmp/java.security.append
fi
if [ $# -eq 0 ]; then
$JAVA_HOME/bin/ikeycmd -Djava.security.properties=/tmp/java.security.append -help
else
$JAVA_HOME/bin/ikeycmd -Djava.security.properties=/tmp/java.security.append "$@"
fi