Comprobar si el alias del certificado ya está presente

Estoy implementando un script de shell que creará un nuevo certificado autofirmado usando el comando keytool. A continuación se muestra el comando que utilizo para crear el certificado.

    echo "# Creating key and Self Signed Certificate"
    keytool -genkey -alias cert -keyalg RSA -storepass "${KEYSTORE_PASS}" -keypass         "${KEY_PASS}" -keystore cert/keystore.jks -validity 3650 -keysize 1024 -dname "C=${CNTRY}, ST=${ST}, L=${LOC}, O=${ORG}, OU=Certificates, CN=${ORG} SEURAT Certificate Authority"

exit_on_error $?

Para la contraseña y otra información del tema, recibo información del usuario. Ahora este comando falla si el nombre de alias ya existe. Puedo eliminar el alias usando

    keytool -delete -alias 1 -keystore cert/keystore.jks

Pero el comando anterior falla si no se presenta el nombre de alias. Entonces, ¿cómo puedo verificar en el script de shell si el nombre de alias está presente y luego eliminar el certificado y crear uno nuevo en su nombre, o simplemente crearlo?

preguntado el 04 de julio de 12 a las 08:07

1 Respuestas

Tal vez pueda enumerar los alias existentes primero:

[ -z keytool -list -alias cert ] && keytool -genkey -alias cert -keyalg RSA -storepass "${KEYSTORE_PASS}" -keypass

Respondido 04 Jul 12, 09:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.