[16.0.0.4 and later]

Configuración de certificados y conjuntos de claves SAF en el sistema operativo z/OS

Migre un colectivo existente para utilizar System Authorization Facility (SAF) para funciones relacionadas con la seguridad, como por ejemplo solicitudes de autenticación, autorización o certificados.

Antes de empezar

Marque los certificados de colectivo que se utilizan para la seguridad administrativa con una serie definida para el controlador y miembro. Por ejemplo, supongamos que el nombre distinguido (DN) del certificado es el siguiente:
DN=<nombre_host>, O=IBM, OU=Collective
Configure el atributo rdn con la serie "OU=Collective" del nombre distinguido en el archivo server.xml:
<collectiveCertificate rdn="OU=Collective"></collectiveCertificate>

Acerca de esta tarea

Firmantes de entidad emisora de certificados (CA) distintos distinguen el controlador colectivo de un miembro. Con SAF, el controlador confía en los miembros y los miembros confían en el controlador.

El componente de unidad organizativa (OU), OU('Collective'), del nombre distinguido de sujeto define la serie y marca el certificado que se reconocerá para el procedimiento siguiente.

En los mandatos RACF de ejemplo siguientes, CONTROL es el ID de usuario RACF del controlador y MEMBER es el ID de usuario RACF del miembro.

Procedimiento

  1. Cree certificados SAF y un conjunto de claves para el controlador.
    1. Cree un certificado de entidad emisora de certificados (CA) de controlador colectivo (CERTAUTH).
      RACDCERT CERTAUTH GENCERT SUBJECTSDN(CN('CONTROLLER ROOT') 
      O('IBM') C('US'))SIZE(2048)WITHLABEL('CONTROLLER ROOT') 
      TRUST NOTAFTER(DATE(2035/12/31))
    1. Cree un certificado de servidor para el controlador colectivo firmado por la entidad emisora de certificados de controlador colectivo.
      Importante: Sustituya el texto de controller.host.name con el nombre de host de controlador para evitar una discrepancia de nombre de host con el URL de navegador.
      RACDCERT ID(CONTROL) GENCERT SUBJECTSDN(CN('controller.host.name')   
      O('IBM') OU('Collective')) WITHLABEL('CONTROLLER')  
      SIGNWITH(CERTAUTH LABEL('CONTROLLER ROOT')) SIZE(2048)  
      NOTAFTER(DATE(2020/12/30))  
               
    2. Cree un conjunto de claves para el controlador colectivo.
      RACDCERT ID(CONTROL) ADDRING(CONTROL.KEYRING)
    3. Conecte la entidad emisora de certificados de controlador colectivo al conjunto de claves de controlador.
      RACDCERT CONNECT(CERTAUTH LABEL('CONTROLLER ROOT')  
      RING(CONTROL.KEYRING))ID(CONTROL)
    4. Conecte el certificado de servidor de controlador al conjunto de claves de controlador.
      RACDCERT CONNECT(ID(CONTROL) LABEL('CONTROLLER') 
      RING(CONTROL.KEYRING)) ID(CONTROL)  
  2. Cree certificados SAF y un conjunto de claves para el miembro.
    1. Cree un certificado de entidad emisora de certificados de miembro de colectivo (CERTAUTH).
      RACDCERT CERTAUTH GENCERT SUBJECTSDN(CN('MEMBER ROOT')  
      O('IBM') C('US'))SIZE(2048)WITHLABEL('MEMBER ROOT')  
      TRUST NOTAFTER(DATE(2035/12/31))
    2. Conecte la entidad emisora de certificados de miembro de colectivo al conjunto de claves de controlador.
      RACDCERT CONNECT(CERTAUTH LABEL('MEMBER ROOT')  
      RING(CONTROL.KEYRING))ID(CONTROL)
    3. Cree un certificado de servidor para el miembro de colectivo firmado por la entidad emisora de certificados de miembro de colectivo.
      Importante: Sustituya el texto de member.host.name con el nombre de host miembro para evitar una discrepancia de nombre de host con el URL de navegador.
      RACDCERT ID(MEMBER) GENCERT SUBJECTSDN(CN('member.host.name')  
        O('IBM') OU('Collective')) WITHLABEL('MEMBER')                      
        SIGNWITH(CERTAUTH LABEL('MEMBER ROOT')) SIZE(2048)                  
        NOTAFTER(DATE(2020/12/30))
    4. Cree un conjunto de claves MEMBER.KEY para el miembro de colectivo.
      RACDCERT ID(MEMBER) ADDRING(MEMBER.KEY)
    5. Conecte la entidad emisora de certificados de miembro de colectivo al conjunto de claves MEMBER.KEY.
      RACDCERT CONNECT(CERTAUTH LABEL('MEMBER ROOT') 
      RING(MEMBER.KEY)) ID(MEMBER)    
              
    6. Conecte el certificado de servidor de miembro al conjunto de claves MEMBER.KEY.
      RACDCERT CONNECT(ID(MEMBER) LABEL('MEMBER')   
      RING(MEMBER.KEY)) ID(MEMBER)
    7. Liste el conjunto de claves de miembro.

      Debe ver dos certificados en el conjunto de claves.

      RACDCERT ID(MEMBER) LISTRING(MEMBER.KEY)
      Información de conjunto digital para el usuario MEMBER:                                                                 
             >MEMBER.KEY<                                              
        Nombre
      de etiqueta certificado Propietario certificado USO Valor predeterminado  
        --------------------------------   ------------   --------   -------  
        MEMBER ROOT                        CERTAUTH       CERTAUTH     NO     
                                                                                
        MEMBER                             ID(MEMBER)     PERSONAL     NO       
         
    8. Cree un segundo conjunto de claves MEMBER.TRUST para el miembro.
      RACDCERT ID(MEMBER) ADDRING(MEMBER.TRUST)
    9. Conecte la entidad emisora de certificados de controlador colectivo al conjunto de claves MEMBER.TRUST.
      RACDCERT CONNECT(CERTAUTH LABEL('CONTROLLER ROOT')  
      RING(MEMBER.TRUST))ID(MEMBER)
    10. Liste el conjunto de claves MEMBER.TRUST. Debe ver un único certificado en el conjunto de claves.
      RACDCERT ID(MEMBER) LISTRING(MEMBER.TRUST)
      Información de conjunto digital para el usuario MEMBER:                               
        Conjunto:                                                                 
             >MEMBER.TRUST<                                              
        Nombre
      de etiqueta certificado Propietario certificado USO Valor predeterminado  
        --------------------------------   ------------   --------   -------  
        CONTROLLER ROOT                    CERTAUTH       CERTAUTH     NO     
         
  3. Liste el conjunto de claves de controlador. Debe ver tres certificados en el conjunto de claves.
    RACDCERT ID(CONTROL)LISTRING(CONTROL.KEYRING) 
    Conjunto:                                                                 
           >CONTROL.KEYRING<                                              
      Nombre
    de etiqueta certificado Propietario certificado USO Valor predeterminado  
      --------------------------------   ------------   --------   -------  
      MEMBER ROOT                        CERTAUTH       CERTAUTH     NO     
                                                                            
      CONTROLLER ROOT                    CERTAUTH       CERTAUTH     NO     
                                                                            
      CONTROLLER                         ID(CONTROL)    PERSONAL     NO     
  4. Proporcione al controlador y miembro la autorización para utilizar los conjuntos de claves y certificados de los que son propietarios.

    Puede utilizar perfiles de clase FACILITY o perfiles RDATALIB.

    El ejemplo siguiente utiliza los permisos de clase FACILITY para los usuarios CONTROL y MEMBER:

    PERMIT IRR.DIGTCERT.LIST CLASS(FACILITY) ID(CONTROL MEMBER) ACCESS(READ)
    PERMIT IRR.DIGTCERT.LISTRING CLASS(FACILITY) ID(CONTROL MEMBER) ACCESS(READ)
    SETR RACLIST(FACILITY) REFRESH

    El ejemplo siguiente utiliza los permisos de clase RDATALIB para los usuarios CONTROL y MEMBER:

    PERMIT CONTROL.**.LST CLASS(RDATALIB) ID(CONTROL) ACCESS(READ)
    PERMIT MEMBER.**.LST CLASS(RDATALIB) ID(MEMBER) ACCESS(READ) 
    SETR RACLIST(RDATALIB) REFRESH
  5. Añada la característica de seguridad de z/OS a los archivos serverl.xml de controlador y miembro.
    1. Detenga el controlador y miembro. Guarde una copia de cada uno de los archivos server.xml para el controlador y miembro en los archivos de copia de seguridad.
    2. Continúe editando los archivos server.xml. En los archivos server.xml de controlador y miembro, añada las características siguientes al elemento featureManager:
      <feature>ssl-1.0</feature>
      <feature>zosSecurity-1.0</feature> 
            
    3. Cree un perfil de clase de servidor para que el controlador y miembro puedan acceder a los servicios SAF. Consulte Habilitación de servicios autorizados z/OS en Liberty para z/OS en la documentación del producto. A continuación, en los archivos server.xml de controlador y miembro, sustituya la línea siguiente:
      <quickStartSecurity userName="admin" userPassword="adminpw" />
      con las siguientes cinco líneas:
      <safAuthorization id="saf" racRouteLog="ASIS" />                    
      <safCredentials profilePrefix="BBGZDFLT" unauthenticatedUser="WSGUEST"/>
      <safRegistry id="saf" realm="WASRealm" />                           
      <safRoleMapper profilePattern="%profilePrefix%.%role%" />           
      <zosLogging enableLogToMVS="true"></zosLogging>

      El perfil EJBROLE que controla el acceso al Centro de administración es BBGZDFLT.Administrator.

    4. En los archivos server.xml de controlador y miembro, especifique la serie collectiveCertificate añadiendo la línea siguiente:
      <collectiveCertificate rdn="OU=Collective"></collectiveCertificate>
  6. En el archivo server.xml del controlador, sustituya los nombres de archivo de claves con nombres de conjunto de claves SAF.
    1. Localice el elemento de almacén de claves con el ID defaultKeyStore. Sustituya location="${server.config.dir}/resources/security/key.jks"/> con las líneas siguientes:
      location="safkeyring:///CONTROL.KEYRING"                  
      type="JCERACFKS" fileBased="false" readOnly="true" />
    2. Localice el elemento de almacén de claves con el ID defaultTrustStore. Sustituya location="${server.config.dir}/resources/security/trust.jks"/> con las líneas siguientes:
      location="safkeyring:///CONTROL.KEYRING"                                 
      type="JCERACFKS" fileBased="false" readOnly="true" />  
    3. Localice el elemento de almacén de claves con el ID serverIdentity. Sustituya location="${server.config.dir}/resources/collective/serverIdentity.jks"/> con las líneas siguientes:
      location="safkeyring:///CONTROL.KEYRING"                  
      type="JCERACFKS" fileBased="false" readOnly="true" /> 
          
    4. Localice el elemento de almacén de claves con el ID collectiveTrust. Sustituya location="${server.config.dir}/resources/collective/collectiveTrust.jks"/> con las líneas siguientes:
      location="safkeyring:///CONTROL.KEYRING"                  
      type="JCERACFKS" fileBased="false" readOnly="true" />
          

      No cambie el elemento de almacén de claves collectiveRootKeys.

  7. En el archivo server.xml de miembro, sustituya los nombres de archivo de claves con nombres de conjunto de claves SAF.
    1. Localice el elemento de almacén de claves con el ID defaultKeyStore. Sustituya location="${server.config.dir}/resources/security/key.jks"/> con las líneas siguientes:
      location="safkeyring:///MEMBER.KEY"                  
      type="JCERACFKS" fileBased="false" readOnly="true" />
    2. Localice el elemento de almacén de claves con el ID defaultTrustStore. Sustituya location="${server.config.dir}/resources/security/trust.jks"/> con las líneas siguientes:
      location="safkeyring:///MEMBER.TRUST"                                 
      type="JCERACFKS" fileBased="false" readOnly="true" />  
    3. Localice el elemento de almacén de claves con el ID serverIdentity. Sustituya location="${server.config.dir}/resources/collective/serverIdentity.jks"/> con las líneas siguientes:
      location="safkeyring:///MEMBER.KEY"                  
      type="JCERACFKS" fileBased="false" readOnly="true" />
          
    4. Localice el elemento de almacén de claves con el ID collectiveTrust. Sustituya location="${server.config.dir}/resources/collective/collectiveTrust.jks"/> con las líneas siguientes:
      location="safkeyring:///MEMBER.TRUST"                  
      type="JCERACFKS" fileBased="false" readOnly="true" />
          
  8. Inicie el controlador y miembro.

Icono que indica el tipo de tema Tema de tarea

Nombre de archivo: tagt_wlp_collective_zos_tls.html