Configuración de SSL para Oracle Access Management 12c
Introducción
En este tutorial se muestra cómo configurar SSL para el dominio Oracle Access Management 12c.
Este es el sexto tutorial de la serie Introducción a Oracle Access Management 12c. Leerlas secuencialmente.
- Introducción a Oracle Access Management 12c Series - Visión general
- Instalación de Oracle Database para Oracle Access Management 12c
- Creación de Oracle Database para Oracle Access Management 12c
- Instalación de Oracle Access Management 12c
- Configuración de Oracle Access Management 12c
- Configuración de SSL para Oracle Access Management 12c
- Configurar Oracle Unified Directory para Oracle Access Management 12c
- Instalación y configuración de Oracle HTTP Server para Oracle Access Management 12c
- Crear y configurar WebGate
- Protección de una aplicación desplegada en el servidor WebLogic con Oracle Access Management 12c
Objetivo
Para configurar SSL para el dominio Oracle Access Management 12c.
Requisitos
- Para seguir a Configure Oracle Access Management 12c
- OpenSSL 1.0.2 o posterior. Esto solo es necesario si necesita generar su propia autoridad de certificación para fines de prueba.
Creación de almacenes de claves y certificados
Crear un almacén de claves Java
-
Inicie una ventana de terminal como
oracle
y ejecute el siguiente comando para crear un almacén de claves java:mkdir /u01/app/oracle/admin/domains/oam_domain/keystore cd /u01/app/oracle/admin/domains/oam_domain/keystore keytool -genkey -alias <alias> -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -dname <dn> -keypass <password> -keystore <keystore> -storepass <password>
Por ejemplo:
mkdir /u01/app/oracle/admin/domains/oam_domain/keystore cd /u01/app/oracle/admin/domains/oam_domain/keystore keytool -genkey -alias server_cert -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -validity 36500 \ -dname "CN=oam.example.com,OU=Security,O=Example Company,L=Redwood Shores,ST=California,C=US" \ -keypass <password> -keystore oam_keystore.jks -storepass <password>
Sustituya
<password>
por la contraseña que desee.Nota:
CN=oam.example.com
se debe definir en host.domain del servidor donde está instalado OAM.Anote los valores de
-alias
,-keystore
,-keypass
y-storepass
, ya que se utilizan más adelante en este tutorial.
Creación de una solicitud de firma de certificado
-
Cree una solicitud de firma de certificado (CSR) con el siguiente comando:
keytool -certreq -v -alias <alias> -file <filename> -sigalg SHA256withRSA -keypass <password> -storepass <password> -keystore <keystore>
Por ejemplo:
keytool -certreq -v -alias server_cert -file server.csr -sigalg SHA256withRSA -keypass <password> -storepass <password> -keystore oam_keystore.jks
Asegúrese de utilizar los mismos valores
-alias
,-keypass
ystorepass
del paso 1.Nota: Si ve
Warning: The JKS keystore uses a proprietary format
en este o en los pasos subsiguientes, puede ignorar este error.La salida debe ser similar a la siguiente:
Certification request stored in file <server.csr> Submit this to your CA
La CSR debe ser similar a la siguiente:
$ cat server.csr -----BEGIN NEW CERTIFICATE REQUEST----- MIIC+DCCAeACAQAwgYIxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlh MRcwFQYDVQQHEw5SZWR3b29kIFNob3JlczEYMBYGA1UEChMPRXhhbXBsZSBDb21w etc... rhEZEIfvX7jTu6b9Vxy2/RR2sYpQpOlKVMWqBdA1E8UdWaFDXtTOAC+d1FcUrZPw XybKIozSa3lCW+pJ/HCNN30qWiA3Pb76Vi+hlicgXPcUZeYcN2xNM5VXLzY= -----END NEW CERTIFICATE REQUEST-----
-
La CSR se debe enviar a una autoridad de certificación (CA) de su elección para generar un certificado. La CA debe devolver el certificado del servidor y los certificados de CA raíz que firmaron el certificado. Para los fines de este tutorial, los certificados devueltos se guardan como
server.crt
yca.crt
para el certificado de servidor y el certificado de CA respectivamente.Nota: Si no tiene una CA, puede generar la suya propia para fines de prueba. Las instrucciones sobre cómo hacerlo se incluyen en la siguiente sección.
-
Una vez recibidos los certificados, cópielos en el directorio
/u01/app/oracle/admin/domains/oam_domain/keystore
.
Crear una autoridad de certificación y generar el certificado de servidor
Nota: Esta sección solo se debe seguir si no tiene una autoridad de certificación (CA) y necesita generar su propia CA para fines de prueba.
-
Cree un directorio de trabajo para crear los archivos de CA, por ejemplo:
/stage/ssl
:mkdir /stage/ssl cd /stage/ssl
-
Genere una clave privada de 4096 bits (
ca.key
) para la autoridad de certificación raíz (CA):openssl genrsa -out ca.key 4096
La salida será similar a la siguiente:
Generating RSA private key, 4096 bit long modulus ................................................................................................................................................++ .....................++ e is 65537 (0x10001)
-
Cree un certificado de CA raíz autofirmado (
ca.crt
):openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
Cuando se le solicite, introduzca los detalles para crear la CA. Por ejemplo:
You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [XX]:US State or Province Name (full name) []:California Locality Name (eg, city) [Default City]:Redwood City Organization Name (eg, company) [Default Company Ltd]:Example Company Organizational Unit Name (eg, section) []:Security Common Name (eg, your name or your server's hostname) []: Example Company Certificate Authority Email Address []:
No se devuelve ninguna salida a la pantalla.
-
Utilice la CA para generar un certificado a partir de la CSR creada en la sección anterior:
openssl x509 -req -days 36500 -in /u01/app/oracle/admin/domains/oam_domain/keystore/server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt
La salida será similar a la siguiente:
Signature ok subject=/C=US/ST=California/L=Redwood Shores/O=Example Company/OU=Security/CN=oam.example.com Getting CA Private Key
-
Copie
server.crt
yca.crt
en el directorio/u01/app/oracle/admin/domains/oam_domain/keystore/
:cp server.crt ca.crt /u01/app/oracle/admin/domains/oam_domain/keystore/
Importar los certificados al almacén de claves
-
Ejecute el siguiente comando para importar los certificados al almacén de claves:
cd /u01/app/oracle/admin/domains/oam_domain/keystore/ keytool -import -v -noprompt -trustcacerts -alias <alias> -file <rootca_file> -keystore <keystore> -storepass <password>
Por ejemplo:
keytool -import -v -noprompt -trustcacerts -alias rootcacert -file ca.crt -keystore oam_keystore.jks -storepass <password>
La salida será similar a la siguiente:
Certificate was added to keystore [Storing oam_keystore.jks]
Nota: Si su CA tiene más de un certificado de CA en la cadena, debe repetir lo anterior para cada certificado utilizando un alias diferente cada vez. Por ejemplo:
keytool -import -v -noprompt -trustcacerts -alias rootcacert2 -file ca2.cer -keystore oam_keystore.jks -storepass <password>
-
Importe el certificado de servidor al almacén de claves ejecutando el siguiente comando:
keytool -import -v -alias <alias> -file <server_cert_file> -keystore <keystore> -keypass <password> -storepass <password>
Por ejemplo:
keytool -import -v -alias server_cert -file server.crt -keystore oam_keystore.jks -keypass <password> -storepass <password>
La salida será similar a la siguiente:
Certificate reply was installed in keystore [Storing oam_keystore.jks]
-
Visualice el contenido del almacén de claves ejecutando el siguiente comando:
keytool -list -v -keystore oam_keystore.jks -storepass <PASSWORD>
La salida será similar a la siguiente:
Keystore type: JKS Keystore provider: SUN Your keystore contains 2 entries Alias name: rootcacert Creation date: Jun 1, 2022 Entry type: trustedCertEntry Owner: CN=Example Company Certificate Authority, OU=Security, O=Example Company, L=Redwood City, ST=California, C=US Issuer: CN=Example Company Certificate Authority, OU=Security, O=Example Company, L=Redwood City, ST=California, C=US Serial number: c3ed8cc19663b1c5 Valid from: Wed Jun 01 09:44:06 GMT 2022 until: Sat May 29 09:44:06 GMT 2032 Certificate fingerprints: SHA1: 5F:F8:C0:B9:CE:1C:75:85:04:C0:23:D0:63:5E:CC:3B:B4:1F:13:B6 SHA256: BA:8B:9E:E2:16:BD:59:EF:BC:77:4D:10:F7:9C:D3:7B:A6:77:B7:CF:8F:E3:DB:14:44:1E:75:5E:BD:A8:A0:28 Signature algorithm name: SHA256withRSA Subject Public Key Algorithm: 4096-bit RSA key Version: 3 Extensions: #1: ObjectId: 2.5.29.35 Criticality=false AuthorityKeyIdentifier [ KeyIdentifier [ 0000: FD D2 44 11 5F BE 18 12 59 A0 2B 89 37 68 E2 2D ..D._...Y.+.7h.- 0010: 5D 00 D3 5D ]..] ] ] #2: ObjectId: 2.5.29.19 Criticality=false BasicConstraints:[ CA:true PathLen:2147483647 ] #3: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: FD D2 44 11 5F BE 18 12 59 A0 2B 89 37 68 E2 2D ..D._...Y.+.7h.- 0010: 5D 00 D3 5D ]..] ] ] ******************************************* ******************************************* Alias name: server_cert Creation date: Jun 1, 2022 Entry type: PrivateKeyEntry Certificate chain length: 2 Certificate[1]: Owner: CN=oam.example.com, OU=Security, O=Example Company, L=Redwood Shores, ST=California, C=US Issuer: CN=Example Company Certificate Authority, OU=Security, O=Example Company, L=Redwood City, ST=California, C=US Serial number: 1 Valid from: Wed Jun 01 10:28:02 GMT 2022 until: Fri May 08 10:28:02 GMT 2122 Certificate fingerprints: SHA1: C3:5B:FC:E1:38:60:9A:62:D1:C8:07:CC:36:6F:60:8E:BF:A8:B9:25 SHA256: 4A:29:8F:85:D0:5E:9A:49:94:AE:10:F6:77:36:36:BC:4E:75:45:ED:F6:4F:B3:5E:E0:FE:FC:83:1D:DB:BC:9E Signature algorithm name: SHA256withRSA Subject Public Key Algorithm: 2048-bit RSA key Version: 1 Certificate[2]: Owner: CN=Example Company Certificate Authority, OU=Security, O=Example Company, L=Redwood City, ST=California, C=US Issuer: CN=Example Company Certificate Authority, OU=Security, O=Example Company, L=Redwood City, ST=California, C=US Serial number: c3ed8cc19663b1c5 Valid from: Wed Jun 01 09:44:06 GMT 2022 until: Sat May 29 09:44:06 GMT 2032 Certificate fingerprints: SHA1: 5F:F8:C0:B9:CE:1C:75:85:04:C0:23:D0:63:5E:CC:3B:B4:1F:13:B6 SHA256: BA:8B:9E:E2:16:BD:59:EF:BC:77:4D:10:F7:9C:D3:7B:A6:77:B7:CF:8F:E3:DB:14:44:1E:75:5E:BD:A8:A0:28 Signature algorithm name: SHA256withRSA Subject Public Key Algorithm: 4096-bit RSA key Version: 3 Extensions: #1: ObjectId: 2.5.29.35 Criticality=false AuthorityKeyIdentifier [ KeyIdentifier [ 0000: FD D2 44 11 5F BE 18 12 59 A0 2B 89 37 68 E2 2D ..D._...Y.+.7h.- 0010: 5D 00 D3 5D ]..] ] ] #2: ObjectId: 2.5.29.19 Criticality=false BasicConstraints:[ CA:true PathLen:2147483647 ] #3: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: FD D2 44 11 5F BE 18 12 59 A0 2B 89 37 68 E2 2D ..D._...Y.+.7h.- 0010: 5D 00 D3 5D ]..] ] ] ******************************************* *******************************************
Configuración de OAM para SSL
En esta sección, configurará OAM AdminServer para utilizar SSL utilizando el almacén de claves generado anteriormente.
-
Inicie un explorador y acceda a la consola del servidor WebLogic en
http://oam.example.com:7001/console
. Inicie sesión comoweblogic
/<password>
. -
En el centro de cambios, haga clic en Activar y editar.
-
En el panel Estructura de dominio, en oam_domain, navegue hasta Entorno > Servidores. Haga clic en AdminServer.
-
En el separador General, haga clic en la casilla de control Puerto de recepción SSL activado. Haga clic en Guardar:
-
Haga clic en la pestaña Almacenes de claves. En el separador Almacenes de claves, en Almacenes de claves, haga clic en Cambiar:
-
En la lista desplegable Almacenes de claves, seleccione Identidad personalizada y confianza personalizada. Haga clic en Guardar.
-
Rellene los campos del almacén de claves de la siguiente manera y haga clic en Guardar:
Campo Valor Almacén de Claves de Identidad Personalizado /u01/app/oracle/admin/domains/oam_domain/keystore/oam_keystore.jks
Tipo de Almacén de Claves de Identidad Personalizado JKS
Contraseña del Almacén de Claves de Identidad Personalizado <password>
Confirmar Contraseña del Almacén de Claves de Identidad Personalizado <password>
almacén de claves de confianza personalizado /u01/app/oracle/admin/domains/oam_domain/keystore/oam_keystore.jks
Tipo de Almacén de Claves de Protección Personalizado JKS
Contraseña del Almacén de Claves de Protección Personalizado <password>
Confirmar Contraseña del Almacén de Claves de Protección Personalizado <password>
Por ejemplo:
-
Haga clic en el separador SSL. Rellene los campos de la siguiente manera y haga clic en Guardar:
Campo Valor Alias de Clave Privada server_cert
Contraseña de Clave Privada <password>
Confirmar frase de contraseña de clave privada <password>
Por ejemplo:
-
Amplíe la sección Avanzado y, en Verificación de nombre de host, seleccione Ninguno en la lista desplegable. Haga clic en Guardar.
-
En el centro de cambios haga clic en Activar Cambios.
-
Pruebe que puede acceder a la consola de WLS a través de SSL, por ejemplo,
https://oam.example.com:7002/console
. Inicie sesión comoweblogic
/<password>
. -
En el centro de cambios, haga clic en Activar y editar.
-
En el panel Estructura de dominio, en oam_domain, navegue hasta Entorno > Servidores. Haga clic en oam_server1.
-
Repita los pasos 4 a 10 anteriores para oam_server1.
-
En el centro de cambios, haga clic en Activar y editar.
-
En el panel Estructura de dominio, en oam_domain, navegue hasta Entorno > Servidores. Haga clic en oam_policy_mgr1.
-
Repita los pasos 4 a 10 anteriores para oam_policy_mgr1.
-
Pruebe que puede acceder a la consola de Policy Manager a través de SSL, por ejemplo,
https://oam.example.com:14151/access
. Inicie sesión comoweblogic
/<password>
.
Cambiar Valores de Equilibrio de Carga a SSL
-
Inicie un explorador y acceda a la consola del servidor WebLogic en
https://oam.example.com:7002/oamconsole
. Inicie sesión comoweblogic
/<password>
. -
Vaya a Configuración y, a continuación, en el mosaico Configuración, seleccione Ver > Gestor de acceso.
-
En Equilibrio de carga y WebGate Equilibrador de carga de tráfico, defina lo siguiente y haga clic en Aplicar:
- Protocolo del servidor OAM:
https
- Puerto del servidor OAM:
14101
Por ejemplo:
- Protocolo del servidor OAM:
-
Reinicie el servidor
oam_server1
:cd /u01/app/oracle/admin/domains/oam_domain/bin ./stopManagedWebLogic.sh oam_server1 ./startManagedWebLogic.sh oam_server1
Próximo tutorial
Configurar Oracle Unified Directory para Oracle Access Management 12c.
Comentarios
Para proporcionar comentarios sobre este tutorial, póngase en contacto con idm_user_assistance_ww_grp@oracle.com.
Agradecimientos
- Autor: Russ Hodgson
Configure SSL for Oracle Access Management 12c
F59404-01
June 2022
Copyright © 2022, Oracle and/or its affiliates.