Configuración del paquete OSLCLinks para el contexto de seguridad

Es posible que desee configurar el paquete Rational ClearQuest OSLCLinks para que forme parte del sistema de contexto de seguridad de ClearQuest, por ejemplo, para esconder enlaces de usuarios no autorizados.

Acerca de esta tarea

Es necesario realizar pasos adicionales después de aplicar el paquete OSLCLinks en su esquema para configurar el paquete para trabajar con un sistema de contexto de seguridad.

Consulte Creación de un modelo de seguridad para obtener más información sobre la seguridad de ClearQuest.

Procedimiento

  1. Como usuario con privilegios de diseñador de esquemas, ejecute el submandato packageutil setaccess para habilitar el registro OSLCLink para la edición. A continuación, se indica la sinopsis de línea de mandatos para el submandato packageutil setaccess :

    packageutil setaccess -dbset dbset_name user_name password schema_name -record -modifiablebyothers OSLCLink

    Por ejemplo:

    packageutil setaccess –dbset 7.0.0 admin "" ALM -record -modifiablebyothers OSLCLink

    La salida de visualización puede ser similar a lo siguiente:

    --- Checked out revision 3 of schema 'ALM'
    +++ Set access policy for OSLCLink to -modifiablebyothers
    +++ Set access policy for select records, fields, and actions
  2. En ClearQuest Designer, añada un nuevo campo REFERENCE al tipo de registro OSLCLink:
    1. En el esquema donde ha aplicado el paquete OSLCLinks, expanda el nodo Tipos de registro – Sin estado y, a continuación expanda el nodo OSLCLink.
    2. Pulse con el botón derecho del ratón sobre el nodo Campos y pulse Nuevo campo. Se abrirá el recuadro de diálogo Nuevo campo.
    3. Escriba un nombre para el nuevo campo y establezca el Tipo en REFERENCE.
    4. Pulse Finalizar. Se abrirá el separador Propiedades para el nuevo campo.
    5. En la sección Información de referencia del separador Propiedades, establezca la propiedad Hacer referencia a a su tipo de registro de contexto de seguridad.
    6. Seleccione la opción Contexto de seguridad.
  3. Al utilizar ClearQuest Designer, añada el enganche global OSLC_GetSecurityFieldName siguiente al esquema:
    sub OSLC_GetSecurityFieldName
    {
        my $security_fieldname = "";
        my ($entitydef_name) = @_;
        
        # Una tabla hash para mantener el nombre de campo de seguridad de cada
        # entitydef, utilizando el nombre entitydef como clave y seguridad
        # nombre de campo como el valor.
        
        my %security_fields_hash = (
            #añade aquí los pares del campo de contexto de seguridad y entitydef
            #Por ejemplo, "ALMTask"  => "SecurityPolicy"
            );
        
        if (exists $security_fields_hash{$entitydef_name}) {
            my $temp_security_fieldname = $security_fields_hash{$entitydef_name};
            if ( 
            $::session->GetEntityDef($entitydef_name)->IsSecurityContextField($temp_security_fieldname)) {
                $security_fieldname = $temp_security_fieldname;
                }
            }
        
        return $security_fieldname;
    }

    El enganche devuelve el nombre de campo de contexto de seguridad de un tipo de registro específico.

  4. Actualice la tabla %security_fields_hash del enganche global OSLC_GetSecurityFieldName para incluir un par de campos de tipo de registro-contexto de seguridad para cada tipo de registro en el que haya aplicado el paquete OSLCLinks.

    Por ejemplo, si ha aplicado el paquete OSLCLinks en los tipos de registro ALMTask y ALMRequest (cuyos campos de contexto de seguridad se llaman SecurityPolicy) y el campo REFERENCE que ha añadido en el paso 2 se llama oslc_SecurityPolicy, su tabla %security_fields_hash se puede parecer a lo siguiente:

    my %security_fields_hash = (
        "OSLCLink" => "oslc_SecurityPolicy",
        "ALMTask"  => "SecurityPolicy",
        "ALMRequest" => "SecurityPolicy"
  5. Incorpore la revisión del esquema y actualice su base de datos de usuario.
  6. Para evitar cambios en otras partes del registro OSLCLink, inhabilite la edición ejecutando el submandato packageutil setaccess con la opción -modifiablebyowner. A continuación, se indica de nuevo la sinopsis de línea de mandatos para el submandato packageutil setaccess:

    packageutil setaccess -dbset dbset_name user_name password schema_name -record -modifiablebyothers OSLCLink

    Por ejemplo:

    packageutil setaccess –dbset 7.0.0 admin "" ALM -record -modifiablebyowner OSLCLink

    La salida de visualización puede ser similar a lo siguiente:

    --- Checked out revision 4 of schema 'ALM'
    +++ Set access policy for OSLCLink to -modifiablebyowner
    +++ Set access policy for select records, fields, and actions

Comentarios