Skip to main content

Definición del esquema de autorización

9 Tareas

30 minutos

Visible to: All users
Avanzado Pega Platform 8.6 Español

Escenario

La organización Front Stage desea implementar los siguientes requerimientos de seguridad:

  • Solo los ejecutivos de ventas y gerentes ejecutivos pueden ver información financiera.
  • Un ejecutivo de ventas puede trabajar en los casos creados por otros ejecutivos de ventas. Sin embargo, un ejecutivo de ventas no puede acceder al caso de un colega para un evento con más de 10 000 asistentes.
  • Los gerentes de eventos solo pueden trabajar en los casos asignados a ellos. Sin embargo, el líder del equipo de gerentes de un evento puede trabajar en los casos asignados a cualquier gerente de evento.
  • Los coordinadores de instalaciones solo pueden ver y trabajar en los casos asignados a ellos.
  • Los oficiales ejecutivos pueden ver los casos de todo el ciclo de vida y crear nuevos reportes personalizados.

La estructura organizacional de Front Stage para la planificación de eventos se muestra en la siguiente imagen:

 

FSG org structure

La siguiente tabla incluye las credenciales que necesita para completar el reto.

Función Nombre de usuario Contraseña
Administrador Admin@Booking reglas

La siguiente tabla ofrece una lista de usuarios de muestra que están disponibles para pruebas.

Department Función Nombre de usuario Contraseña
Ejecutivos Oficial ejecutivo y CEO CEO@Booking reglas
Ventas Ejecutivo de ventas SalesExecutive1@Booking reglas
Ventas Ejecutivo de ventas SalesExecutive2@Booking reglas
Instalación Coordinador de instalaciones especializado en estacionamiento FacilityCoordinator1@Booking reglas
Instalación Coordinador de instalaciones especializado en preparación para el clima FacilityCoordinator2@Booking reglas
Instalación Coordinador de instalaciones especializado en preparación para el clima y estacionamiento FacilityCoordinator3@Booking reglas
EventManagers Gerente de evento y líder del equipo EventManager1@Booking reglas
EventManagers Gerente de evento EventManager2@Booking reglas
EventManagers Gerente de evento EventManager3@Booking reglas

Diseñe e implemente el esquema de autorización para cumplir con los requerimientos.

  • Identifique los roles y grupos de acceso.
  • Implemente los requerimientos anteriores.

Debe iniciar su propia instancia de Pega para completar este Título del desafío.

La inicialización puede demorar hasta 5 minutos. Le pedimos que tenga paciencia.

Tareas detalladas

1 Revisar los detalles de la solución

Crear unidades

Agregue las siguientes unidades:

Unidad de organización
Ejecutivos
EventManagers
Instalaciones
Ventas

Crear operadores y asignar habilidades 

Crear/actualizar habilidades

Agregue el CEO, líder de equipo, estacionamiento, habilidades de clima con un rango bajo-alto de 1 a 10.
Cree a los operadores con el grupo de acceso del gerente y el grupo de acceso predeterminado.

Nombre de usuario
SalesExecutive1@Booking
SalesExecutive2@Booking

Para cada uno de los siguientes operadores, actualice las habilidades y calificaciones de los operadores definidos en la tabla:

Nombre de usuario Habilidad(es) y calificación
CEO@Booking CEO (5), líder de equipo (5)
FacilityCoordinator1@Booking Estacionamiento (5)
FacilityCoordinator2@Booking Clima (5)
FacilityCoordinator3@Booking Estacionamiento (5), clima (5)
EventManager1@Booking Líder de equipo (5)

Asignar roles y grupos de acceso

Roles generados por el sistema

El asistente de nueva aplicación crea un rol Booking:Administrator / Booking:Authors y dos roles de usuario: Booking:User y Booking:Manager.

Los usuarios con el rol Booking:User pueden abrir cualquier caso en la aplicación y realizar cualquier asignación. El rol Booking:Manager ofrece la capacidad de crear y actualizar informes, reglas delegadas y grupos de trabajo.

Verificar los grupos de acceso de Booking

Cree y configure roles y grupos de acceso para cada departamento, ya que el acceso se otorga según el departamento.

Cuando la aplicación Reserva de eventos se desarrolló por primera vez, es posible que se hayan creado los siguientes grupos de acceso. De ser así, es posible que los nombres de los grupos de acceso no cumplan con las convenciones de nomenclatura de Pega. Cámbiele los nombres, según sea necesario, usando la información en la siguiente tabla.

Nombre de grupo de acceso del POC Nuevo nombre de grupo de acceso
Booking:FacilityCoordinator Booking:Facilities

Para cambiar el nombre de los grupos de acceso existentes, realice los siguientes pasos:

  1. Desde el sistema de ejercicios, regístrese como administrador@Booking.
  2. En el menú de Dev Studio, haga clic en System > Configure > Refactor > Rules (Sistema > Configurar > Refactorizar > Reglas) y abra el asistente Search/Replace a String (Buscar/reemplazar una cadena).
  3. Seleccione Search/Replace a String.
  4. En el campo Original String Value (Valor de cadena original), ingrese Booking:FacilityCoordinator.
  5. En el campo New String Value (Nuevo valor de cadena), ingrese Booking:Facilities.
  6. Configure Limit search to RuleSets in my RuleSet list? (¿Desea limitar la búsqueda a los rulesets en la lista Mis ruleset?) en No.
  7. En la sección Select RuleSet Scope (Seleccionar alcance de ruleset), seleccione el ruleset Booking .
  8. Haga clic en Next (Siguiente) para mostrar un reporte que muestre la cantidad de registros con ocurrencias y ocurrencias encontradas.
  9. Haga clic en Next (Siguiente) para mostrar un reporte que muestre las reglas seleccionables disponibles que tienen referencias a la clase que se está refactorizando.
  10. En el encabezado del reporte, seleccione el checkbox Rule Type (Tipo de regla) para seleccionar todos los registros.
  11. Opcional: Export to Excel (Exportar a Excel) para mantener un registro de los registros afectados.
  12. Seleccione Finish (Finalizar) para mostrar una confirmación de que el proceso de refactorización está completo, y se muestra un reporte de las instancias de datos y reglas que no se refactorizaron.
  13. Opcional: Export Page to Excel (Exportar página a Excel) o Review Log (Revisar registro).
  14. Haga clic en Done (Listo).
  15. En el grupo de acceso Booking:Facilities, haga clic en Save as (Guardar como) para crear tres grupos de acceso más:
    Grupo de acceso
    Booking:Executives
    Booking:Sales
    Booking:EventManagers

Crear roles de Reserva de eventos

Cree los siguientes roles para cada departamento, ya que los permisos y privilegios se otorgan según el departamento. Guarde los roles en el ruleset del evento.

Identificador de nombre de rol Label Depende de
Booking:Executive Ejecutivo PegaRULES:WorkMgr4
Booking:SalesExecutive Ejecutivo de ventas PegaRULES:WorkMgr4
Booking:EventManager Gerente de evento PegaRULES:WorkMgr4
Booking:FacilityCoordinator Coordinador de instalaciones PegaRULES:WorkMgr4

Asignar roles a los grupos de acceso de Reserva de eventos

Asigne los siguientes roles a los grupos de acceso renombrados. Quite todos los demás roles.

Grupo de acceso Roles
Booking:Executives Booking:Executive, Booking:Manager, Booking:User, PegaRULES:PegaAPI
Booking:Sales Booking:SalesExecutive, Booking:User, PegaRULES:PegaAPI
Booking:Facilities Booking:FacilityCoordinator, Booking:User, PegaRULES:PegaAPI
Booking:EventManagers Booking:EventManager, Booking:User, PegaRULES:PegaAPI

Crear grupos de trabajo de Reserva de eventos

Cree los siguientes grupos de trabajo para cada departamento porque el trabajo suele asignárseles a ellos. Guarde los grupos de trabajo en el ruleset del evento. Además, agregue a los gerentes autorizados, llamados administradores@Booking y autores@Booking en cada grupo de trabajo.

Identificador de grupo de trabajo Descripción Gerente Cesta de trabajo predeterminada
Ejecutivos@FSG Ejecutivos de FSG CEO@Booking Booking:Executives
Ventas@FSG Ventas de FSG SalesExecutive1@Booking Booking:Sales
EventManagers@FSG Gerentes de evento de FSG EventManager1@Booking Booking:EventManagers
Instalaciones@FSG Coordinadores de instalaciones de FSG FacilityCoordinator1@Booking Booking:Facilities

Crear/actualizar cestas de trabajo de Reserva de eventos

Cree o actualice las siguientes cestas de trabajo:

Cesta de trabajo Unidad de organización Grupo de trabajo Función
Booking:Executives Ejecutivos Ejecutivos@FSG Booking:Executive
Booking:EventManagers EventManagers EventManagers@FSG Booking:EventManager
Booking:Facilities Instalaciones Instalaciones@FSG Booking:FacilityCoordinator
Booking:Sales Ventas Ventas@FSG Booking:SalesExecutive

Actualizar para los operadores

Para cada uno de los siguientes operadores, actualice la unidad, los grupos de trabajo y el grupo de acceso predeterminado:

Id. de operador Grupo de trabajo predeterminado Grupo de acceso predeterminado Unidad
CEO@Booking Ejecutivos@FSG Booking:Executives Ejecutivos
SalesExecutive1@Booking Ventas@FSG Booking:Sales Ventas
SalesExecutive2@Booking Ventas@FSG Booking:Sales Ventas
FacilityCoordinator1@Booking Instalaciones@FSG Booking:Facilities Instalaciones
FacilityCoordinator2@Booking Instalaciones@FSG Booking:Facilities Instalaciones
FacilityCoordinator3@Booking Instalaciones@FSG Booking:Facilities Instalaciones
EventManager1@Booking EventManagers@FSG Booking:EventManagers EventManagers
EventManager2@Booking EventManagers@FSG Booking:EventManagers EventManagers
EventManager3@Booking EventManagers@FSG Booking:EventManagers EventManagers

2 Permitir el acceso de oficiales ejecutivos a los casos en todo el ciclo de vida de la reserva de evento

Para permitirles a los oficiales ejecutivos ver los casos en todo el ciclo de vida, edite los Id. de operador y realice los siguientes pasos:

  1. Abra el registro de Id. de operador del CEO@Booking.
  2. En la pestaña Work (Trabajo), en la sección Routing (Enrutamiento), realice los siguientes pasos:
    1. Agregue los siguientes grupos de trabajo: Ejecutivos@FSG, Ventas@FSG, Gerentes de evento@FSG e Instalaciones@FSG.
    2. Especifique Ejecutivos@FSG como el valor predeterminado. La sección completada se asemeja a la siguiente imagen.
      Routing
  3. Abra el grupo de acceso Booking:Executives.
  4. En la pestaña Definition (Definición), agregue los siguientes roles disponibles: Booking:Executive, Booking:SalesExecutive, Booking:EventManager, Booking:FacilityCoordinator, Booking:Manager, Booking:User y PegaRULES:PegaAPI.

    El grupo de acceso completado debería asemejarse a la siguiente imagen:

    Available roles

     

  5. Guarde el grupo de acceso Ejecutivo.

Actualizar el enrutamiento de tipo de caso Reserva de eventos

  1. Desde Case Explorer (Explorador de casos), abra el tipo de caso Reserva de eventos.
  2. En la etapa Manage Event, abra el proceso Hotels (Hoteles).
  3. Abra el panel de propiedades de asignación Search Hotels (Buscar hoteles) y verifique que Specific user (Usuario específico) está configurado como EventManager , como se muestra en la siguiente imagen.
    Event Booking case type routing

     

Actualizar enrutamiento de tipo de caso Estacionamiento

  1. Desde Case Explorer (Explorador de casos), abra el tipo de caso Estacionamiento.
  2. En la etapa Search Parking , abra el proceso Search Parking.
  3. Abra el panel de propiedades de asignación SearchParkingLocations y verifique la siguiente configuración:
    Campo Configuración
    Enrutar a Personalizada
    Tipo de asignación Lista de trabajo
    Enrutador ToLeveledGroup
    Grupo de trabajo Instalaciones@FSG
    Habilidad Estacionamiento
  4. En la etapa Reporting , abra el proceso Reporting.
  5. Abra el panel de propiedades de asignación Enter Number of Cars Parked y verifique la siguiente configuración:
     
    Campo Configuración
    Enrutar a Personalizada
    Tipo de asignación Lista de trabajo
    Enrutador ToWorkParty
    Parte FacilityCoordinator
  6. En la etapa Search Parking , abra el proceso Search Parking.
  7. Abra la acción de flujo SearchParkingLocations.
  8. En la acción de flujo, en la pestaña Action (Acción), en la sección Post-processing (Posprocesamiento), ingrese la siguiente información:
     
    Campo Configuración
    Ejecutar actividad addWorkObjectParty
    Parámetro PartyRole Coordinador de instalaciones
    Parámetro PartyClass Data-Party-Operator
    Parámetro PartyModel CurrentOperator

    Los ajustes Run activity realizados se muestran en la siguiente imagen:

    Add work object party

     

Actualizar enrutamiento de tipo de caso Clima

  1. En el proceso Forecast de la etapa Preparation , abra el panel de propiedades de asignación Track Preparation y verifique que esté configurado con la siguiente información:

    Campo Configuración
    Enrutar a Personalizada
    Tipo de asignación Lista de trabajo
    Enrutador ToLeveledGroup
    Grupo de trabajo Instalaciones@FSG
    Habilidad Clima
  2. En el proceso Resolve Weather Prep de la etapa Resolve , abra el panel de propiedades de asignación Teardown y verifique que esté configurado con la siguiente información:

    Campo Configuración
    Enrutar a Personalizada
    Tipo de asignación Lista de trabajo
    Enrutador ToLeveledGroup
    Grupo de trabajo
    Instalaciones@FSG
    Habilidad Clima

3 Habilite la seguridad de control de acceso basado en atributos

Use el control de acceso basado en atributos (ABAC) para configurar su esquema de autorización. 

Limite el acceso a información financiera con ABAC

Para restringir el acceso a información financiera como se describe en el escenario, debe:

  • Cree registros de decisión de acceso de SalesExecutive y ExecutiveOfficer para probar si un operador pertenece al grupo de acceso de ejecutivos de ventas o de oficiales ejecutivos.
  • Cree una condición de políticas de control de acceso de SalesAndExecutives que haga referencia a los nuevos registros de decisión de acceso.
  • Cree una política de control de acceso de propiedades de lectura RestrictFinancialInformation que haga referencia a la nueva condición de política de control de acceso. Los usuarios definidos en la condición de política de control de acceso SalesAndExecutives pueden ver las propiedades .Profit , .Totalcost, .TotalPrice,  .DiscountPercentage, .PricingDisplay.EventPrice, .PricingDisplay.HotelServicePrice.

Crear registros de decisión de acceso de SalesExecutive y ExecutiveOfficer

  1. En Records Explorer (Explorador de registros), expanda la categoría Security (Seguridad).
  2. Seleccione el tipo de registro Access When (Decisión de acceso).
  3. Haga clic en Create (Crear).
  4. En el formulario de registro nuevo, ingrese la siguiente información:
     
    Campo Configuración
    Label Ejecutivo de ventas
    Aplicar a FSG-Booking-Work-BookEvent
    Agregar al ruleset Evento
  5. Haga clic en Create and open (Crear y abrir) para crear el nuevo registro de decisión de acceso.
  6. En la pestaña Conditions (Condiciones), ingrese la siguiente expresión When (Decisión):

    pxThread.pxCurrentAccessGroup = "Booking:Sales".

    La pestaña Conditions (Condiciones) se asemeja a la siguiente imagen:

    Sales executive

     

  7. Guarde el nuevo registro de decisión de acceso de SalesExecutive.
  8. Repita los pasos 1 a 4.
  9. En el formulario de registro nuevo, ingrese la siguiente información.
     
    Campo Configuración
    Label Oficial ejecutivo
    Aplicar a FSG-Booking-Work-BookEvent
    Agregar al ruleset Evento
  10. Haga clic en Create and open (Crear y abrir) para crear el nuevo registro de decisión de acceso.
  11. En la pestaña Conditions (Condiciones), ingrese la siguiente expresión When (Decisión):

    pxThread.pxCurrentAccessGroup = "Booking:Executives"

    La pestaña Conditions (Condiciones) se asemeja a la siguiente imagen:

    Executive officer
  12. Guarde el nuevo registro de decisión de acceso de ExecutiveOfficer.
Nota: Cree un registro de decisión de acceso de BookingAdministrator con pxThread.pxCurrentAccessGroup = "Booking:Authors" o especifique el grupo de acceso requerido en la expresión, para que pueda continuar editando y viendo las propiedades restringidas como administrador@Booking o cualquier otro operador autor (administrador).
Booking admin

Crear una condición de política de control de acceso SalesAndExecutives

  1. Abra el Explorador de registros.
  2. Expanda la categoría Security (Seguridad).
  3. Seleccione los tipos de registros de Access Control Policy Condition (Condición de política de control de acceso).
  4. Haga clic en Create (Crear).
  5. En el formulario de registro nuevo, ingrese la siguiente información:

    Campo Configuración
    Label Ventas y ejecutivos
    Aplicar a FSG-Booking-Work-BookEvent
    Agregar al ruleset Evento
  6. Haga clic en Create and open (Crear y abrir) para crear la nueva condición de política de control de acceso de SalesAndExecutives.
  7. En la pestaña Definition (Definición) de la condición de política de control de acceso, en la sección Conditional Logic (Lógica condicional), agregue los registros de decisión de acceso de ExecutiveOfficer y SalesExecutive que creó.
  8. Opcional: en la sección Policy Conditions (Condiciones de políticas), especifique una condición que siempre resulte falsa para garantizar que el acceso solo se proporcione si una regla de decisión de acceso se evalúa como verdadera.
  9. Guarde el nuevo registro de condición de política de control de acceso de SalesAndExecutives.
    Nota: Agregue una condición de decisión de acceso de BookingAdministrator para que pueda continuar editando y visualizando las propiedades restringidas como administrador@Booking.

    La pestaña Definition (Definición), una vez completa, se asemeja a la siguiente imagen:

    Sales and Executives

Crear una política de control de acceso de RestrictFinancialInformation

  1. Abra el Explorador de registros.
  2. Expanda la categoría Security (Seguridad).
  3. Seleccione los tipos de registros Access Control Policy (Política de control de acceso).
  4. Haga clic en Create (Crear).
  5. En el formulario de registro nuevo, ingrese la siguiente información:

    Campo Configuración
    Label Restringir información financiera
    Acción PropertyRead
    Aplicar a FSG-Booking-Work-BookEvent
    Agregar al ruleset Reserva
  6. Haga clic en Create and open (Crear y abrir) para crear la nueva política de control de acceso de RestrictFinancialInformation.
  7. En la pestaña Definition (Definición) de la política de control de acceso, en el campo Permit access if (Permitir acceso si), ingrese la condición de política de control de la política de SalesAndExecutives que creó.
  8. Agregue las propiedades .Profit , .Totalcost, .TotalPrice,  .DiscountPercentage, .PricingDisplay.EventPrice, .PricingDisplay.HotelServicePrice. Para todas las propiedades, use los dígitos Mask with N (Enmascarar con N) como Método de restricción.

    La pestaña Definition (Definición), una vez completa, se asemeja a la siguiente imagen:

    Sales and executives
  9. Guarde el nuevo registro de política de control de acceso RestrictFinancialInformation.

4 Restricción del acceso a casos de Reserva de eventos con ABAC

Para restringir el acceso a los casos de Reserva de eventos como se describe en el escenario:

  • Cree el registro de decisión de acceso de EventManager para probar si un operador está en el grupo de acceso de EventManager.
  • Cree el registro de decisión de acceso de TeamLeadEventManager para probar si un operador está en el grupo de acceso de gerente de eventos y tiene una habilidad de líder de equipo.
  • Configure las propiedades usadas en la condición de política de control de acceso para usarlas en búsquedas y reportes.
  • Cree una condición de política de control de acceso de HasEventReadAccess que haga referencia a las nuevas condiciones de decisión de acceso e incluya las condiciones de políticas y los permisos de acceso.
  • Cree una política de control de acceso de RestrictEventAccess que haga referencia a la nueva condición de política de control de acceso.

Crear registros de decisión de acceso de EventManager y TeamLeadEventManager

Realice los siguientes pasos para crear el registro de decisión de acceso de EventManager para probar si un operador pertenece al grupo de acceso de EventManagers.

  1. Desde Records Explorer (Explorador de registros), expanda la categoría Security (Seguridad).
  2. Seleccione los tipos de registro Access When (Decisión de acceso).
  3. Haga clic en Create (Crear).
  4. En el formulario de reglas nuevo, ingrese la siguiente información:
    Campo Configuración
    Label Gerente de evento
    Aplicar a FSG-Booking-Work-BookEvent
    Agregar al ruleset Evento
  5. Haga clic en Create and open (Crear y abrir) para crear el registro de decisión de acceso de EventManager.
  6. En la pestañaConditions , ingrese la siguiente expresión When (Decisión):
    pxThread.pxCurrentAccessGroup = "Booking:EventManagers".

    La pestaña Conditions (Condiciones) se asemeja a la siguiente imagen:
     

    Event Manager
  7. Guarde el nuevo registro de decisión de acceso de EventManager.

Realice los siguientes pasos para crear el registro de decisión de acceso TeamLeadEventManager para probar si un operador pertenece al grupo de acceso de gerentes de evento y tiene la habilidad de líder de equipo.

  1. Desde Records Explorer (Explorador de registros), expanda la categoría Security (Seguridad).
  2. Seleccione los tipos de registro Access When (Decisión de acceso).
  3. Haga clic en Create (Crear).
  4. En el formulario de reglas nuevo, ingrese la siguiente información.
    Campo Configuración
    Label Gerente de evento y líder de equipo
    Aplicar a FSG-Booking-Work-BookEvent
    Agregar al ruleset Evento
  5. Haga clic en Create and open (Crear y abrir) para crear el registro de decisión de acceso de TeamleadEventManager.
  6. En la pestaña Conditions (Condiciones), use la siguiente expresión When (Decisión):
    pxThread.pxCurrentAccessGroup = "Booking:EventManagers" AND function @IsInPageList("TeamLead","pySkillName",OperatorID.pySkills) .

    La pestaña Conditions (Condiciones) se asemeja a la siguiente imagen.

    Team lead event manager
  7. Guarde el nuevo registro de decisión de acceso de TeamLeadEventManager.

Configurar las propiedades de condición de política de control de acceso

Antes de poder configurar la nueva condición de política de control de acceso HasEventReadAccess, realice las siguientes acciones:

  • Crear una nueva propiedad EventManager y asignar un valor
  • Optimizar las propiedades .EventManager y .NumAttendees para la generación de reportes
  • Hacer que NumAttendees sea una propiedad de búsqueda que pueda filtrarse

Crear una nueva propiedad EventManager y asignar un valor

  • Crear una nueva propiedad de tipo de texto EventManager en la clase FSG-Booking-Work-BookEvent
  • Cree un nuevo nombre de data transform PopulateEventManager para completar EventManager desde .pyAssignedOperator, como se muestra en la siguiente imagen:
    Populate Event Manager
  • Actualice la acción de flujo ManagerAssignment agregando el data transform PopulateEventManager en el posprocesamiento, como se muestra en la siguiente imagen:
    Manager assignment

Optimizar las propiedades de EventManager y NumberOfAttendee

En App Explorer, haga clic con el botón secundario en las siguientes propiedades y seleccione Optimize for reporting.

  • (FSG-Booking-Work-BookEvent) EventManager
  • (FSG-Booking-Work-BookEvent) NumberOfAttendees

Hacer que NumAttendees sea una propiedad de búsqueda que pueda filtrarse

  1. En el encabezado del encabezado de Dev Studio, haga clic en Create > SysAdmin > Custom Search Properties (Crear > Administrador del sistema > Propiedades de búsqueda personalizadas).
  2. En el campo Class Name (Nombre de clase), ingrese FSG-Booking-Work-BookEvent.
  3. Haga clic en Create and open (Crear y abrir).
  4. En el encabezado de registro, configure Associated RuleSet (Ruleset asociado) en Event.
  5. Seleccione el checkbox Use dedicated index .
  6. Guarde el botón del formulario de regla,
  7. Click on Create dedicated index que está disponible solo en Save (Guardar) del formulario de regla.
  8. En la pestaña Definition (Definición) de las propiedades de búsqueda personalizadas, seleccione la propiedad FSG-Booking-Work-BookEvent.
  9. Haga clic en Add (Agregar) para abrir el cuadro de diálogo Property Configurations (Configuraciones de propiedad).
  10. En el cuadro de diálogo Property Configurations (Configuraciones de propiedad), seleccione la propiedad NumAttendees.
  11. Haga clic en Submit (Enviar) para guardar sus actualizaciones y cierre el cuadro de diálogo.
  12. Expanda FSG-Booking-Work-BookEvent.

  13. Seleccione el cuadro de verificación Include in search results (Incluir en resultados de búsqueda).

    La pestaña Definition (Definición), completada en el registro de propiedades de búsqueda personalizada, se ve de la siguiente manera:

    pySearch
  14. Guarde el registro de propiedades de búsqueda personalizada FSG-Booking-Work-BookEvent • pySearch.

5 Configurar la condición de política de control de acceso de HasEventReadAccess

  1. En Records Explorer (Explorador de registros), expanda la categoría Security (Seguridad).
  2. Seleccione los tipos de registros de Access Control Policy Condition (Condición de política de control de acceso).
  3. Haga clic en Create (Crear).
  4. En el formulario de reglas nuevo, ingrese la siguiente información:
     
    Campo Configuración
    Label Tiene acceso de lectura de evento
    Aplicar a FSG-Booking-Work-BookEvent
    Agregar al ruleset Evento
  5. Haga clic en Create and open (Crear y abrir) para crear la condición de política de control de acceso HasEventReadAccess.
  6. En la pestaña Pages & Classes (Páginas y clases), agregue el OperatorID de Page name (Nombre de página) usando la clase Data-Admin-Operator-ID.
  7. En la pestaña Definition , realice lo siguiente:
    1. en la sección Conditional Logic , agregue los registros de decisión de acceso TeamLeadEventManager, EventManager y SalesExecutive que creó como condiciones.
    2. En la sección Policy Conditions (Condiciones de política), especifique las siguientes condiciones. Condition D (Condición D) siempre resulta verdadera para garantizar que no se evite el acceso si ninguna de las reglas de decisión de acceso se evalúa como verdadera.

    Condición Origen de la columna Relación Valor
    A .NumberOfAttendees es inferior a 10000
    B .pxCreateOperator Es igual a OperatorID.pyUserIdentifier
    C .EventManager Es igual a OperatorID.pyUserIdentifier
    D .pxCreateOperator No es nulo  

    La pestaña Definition (Definición), completada en el registro de condiciones de políticas de control de acceso, se ve de la siguiente manera:

    HasEventReadAccess
  8. Guarde la condición de política de control de acceso HasEventReadAccess.

Crear la política de control de acceso RestrictEventAccess

En el tipo de caso Event Booking (Reserva de evento), cree una política de control de acceso con una acción de lectura, para restringir el acceso a los casos de Event Booking.

  1. Abra el Explorador de registros.
  2. Expanda la categoría Security (Seguridad).
  3. Seleccione los tipos de registros Access Control Policy (Política de control de acceso).
  4. Haga clic en Create (Crear).
  5. En el formulario de reglas nuevo, ingrese la siguiente información:
     
    Campo Configuración
    Label Restringir acceso al evento
    Aplicar a FSG-Booking-Work-BookEvent
    Agregar al ruleset Evento
    Acción Leer
  6. Haga clic en Create and open (Crear y abrir) para abrir la nueva política de control de acceso RestrictEventAccess.
  7. En el campo Permit access if (Permitir acceso si), ingrese la condición de política de control de acceso HasEventReadAccess que creó.

    La política de control de acceso Read • RestrictEventAccess completada se muestra en la siguiente imagen:

    Restrict event access
  8. Guarde la política de control de acceso RestrictEventAccess.

Restringir el acceso a casos de instalaciones

Puede restringir la apertura de casos Facility (Instalaciones) usando el control de acceso basado en el rol. Para hacerlo, abra el tipo de caso Facility (Instalaciones) y use Access Manager para configurar el impedimento de acceso a Perform (Ejecutar).
 

6 Confirme su trabajo

  1. Cierre sesión como administrador@Booking.
  2. Inicie sesión como usuario@Booking y cree un nuevo caso de Event Booking (Reserva de evento). Tenga en cuenta que los campos .Profit , .Totalcost, .TotalPrice,  .DiscountPercentage están enmascarados y son de solo lectura.
  3. Cierre sesión.
  4. Inicie sesión como SalesExecutive1@Booking y cree un nuevo caso de Event Booking (Reserva de evento). Tenga en cuenta que los campos .Profit , .Totalcost, .TotalPrice,  .DiscountPercentage, .PricingDisplay.EventPrice, .PricingDisplay.HotelServicePrice no están enmascarados y son editables.

  5. Cree dos casos de Event Booking (Reserva de eventos):
    1. Uno con menos de 10.000 asistentes y otro
    2. Uno con más de 10.000 asistentes.
      No complete el paso de aprobación del cliente en ningún caso.
  6. Cierre sesión.
  7. Inicie sesión como SalesExecutive2@Booking y cambie al portal de gerente de casos y realice lo siguiente:
    1. En el dashboard, seleccione Sales Executive 1 (Ejecutivo de ventas 1) en la sección Team members (Miembros del equipo) para ver los casos abiertos de SalesExecutive1@Booking.
    2. Seleccione Customer Approval (Aprobación del cliente) para el caso con menos de 10.000 asistentes. Como resultado, puede trabajar en el caso.
    3. Seleccione Customer Approval (Aprobación del cliente) para el caso con más de 10.000 asistentes. Se muestra el siguiente mensaje de error: Access Control Policy denied access for class FSG-Booking-Work-BookEvent and action Open.
    4. Cierre sesión.
  8. Inicie sesión como EventManager2@Booking. Cambie al portal de gerente de casos y realice lo siguiente:
    1. En el dashboard, seleccione Event Manager 1 (Gerente de evento 1) en la sección Team members (Miembros del equipo) para ver casos abiertos de EventManager1@Booking.
    2. Seleccione Approve Assignment (Aprobar asignación) para cualquier caso enumerado. Como resultado, debe recibir un mensaje de error: “La política de control de acceso rechazó el acceso para la clase FSG-Booking-Work-BookEvent y la acción Open (Abierto)”.
    3. Cierre sesión.
  9. Inicie sesión como EventManager1@Booking. Cambie al portal de gerente de casos y realice lo siguiente.
    1. En el dashboard, seleccione Event Manager 2 (Gerente de evento 2) en la sección Team members (Miembros del equipo) para ver casos abiertos de EventManager2@Booking.
    2. Seleccione Approve Assignment (Aprobar asignación) para cualquier caso enumerado. Como resultado, puede trabajar en el caso seleccionado.

7 Enfoques alternativos

Se presentan los siguientes enfoques alternativos. No es necesario desarrollarlos. Las instrucciones detalladas proporcionadas son una guía en caso de que quiera experimentar usando el control de acceso basado en roles (RBAC) para restringir el acceso a casos de Event Booking (Reserva de eventos) o restringir el acceso a asignaciones de instalaciones usando ABAC.

Restringir el acceso a información financiera

No hay enfoques alternativos para restringir el acceso a la información financiera.

Restringir el acceso a casos de eventos usando RBAC

Cree un rol para los eventos y agréguelo a grupos de acceso adecuados. Use Access Manager para crear un registro de acceso del rol al objeto con un registro de decisión de acceso que defina las restricciones.

Restricción del acceso a casos de Event Booking (Reserva de eventos): comparación entre RBAC y ABAC

La siguiente tabla describe los pros y los contras de cada enfoque.

Diseño Pros Contras
Control de acceso basado en atributos Fácil de configurar No se muestra en Access Manager
Control de acceso basado en roles Se muestra en Access Manager Requiere un rol adicional

Restringir el acceso a asignaciones de instalaciones usando ABAC (opcional)

  1. Para la clase Assign-Worklist, cree una condición de decisión de acceso llamada FacilityCoordinator en el ruleset Event (Evento).
  2. En la pestaña Conditions (Condiciones), use la siguiente expresión When... (Decisión):

    pxThread.pxCurrentAccessGroup = "Booking:Facilities"

    La pestaña Conditions (Condiciones) debe asemejarse a la siguiente imagen:

    Facility coordinator
  3. Para la clase Assign-Worklist, cree una nueva condición de política de control de acceso FacilityCaseAssignedToMe en el ruleset Event (Evento).
  4. En la pestaña Pages & Classes (Páginas y clases) del registro de condición de política de control de acceso, ingrese OperatorID en el campo Page name (Nombre de página) e ingrese Data-Admin-Operator-ID en el campo Class (Clase).
  5. En la pestaña Definition (Definición), verifique si el usuario es coordinador de instalaciones y compruebe si el caso está asignado a ese usuario. Para todos los demás, otorgue el acceso.
    La configuración de la pestaña Definition (Definición) se muestra en la siguiente imagen:

    Facility coordinator
  6. Para la clase Assign-Worklist, cree una política de control de acceso RestrictFacilityCases en el ruleset EventBooking. Configure Action to Read (Acción de lectura) para restringir a otros coordinadores de instalaciones para que no puedan abrir la asignación y realizar el trabajo.
  7. En el campo Permit access if (Permitir acceso si), ingrese la condición de política de control de acceso FacilityCaseAssignedToMe que creó.

    La política de control de acceso debería verse como la siguiente imagen:

    Facility case managed

     

Restricción del acceso a asignaciones de instalaciones: comparación entre RBAC y ABAC

La siguiente tabla describe los pros y los contras de cada enfoque.

Diseño Pros Contras
Control de acceso basado en atributos Fácil de configurar No se muestra en Access Manager
Control de acceso basado en roles Se muestra en Access Manager Requiere un rol adicional

8 Revisar opciones alternativas

Se presentan los siguientes enfoques alternativos. No es necesario desarrollarlos. Las instrucciones detalladas proporcionadas son una guía en caso de que quiera experimentar usando el control de acceso basado en roles (RBAC) para restringir el acceso a casos de Event Booking (Reserva de eventos) o restringir el acceso a asignaciones de instalaciones usando ABAC.

Restringir el acceso a información financiera

No hay enfoques alternativos para restringir el acceso a la información financiera.

Restringir el acceso a casos de eventos usando RBAC

Cree un rol para los eventos y agréguelo a grupos de acceso adecuados. Use Access Manager para crear un registro de acceso del rol al objeto con un registro de decisión de acceso que defina las restricciones.

Restricción del acceso a casos de Event Booking (Reserva de eventos): comparación entre RBAC y ABAC

La siguiente tabla describe los pros y los contras de cada enfoque.

Diseño Pros Contras
Control de acceso basado en atributos Fácil de configurar No se muestra en Access Manager
Control de acceso basado en roles Se muestra en Access Manager Requiere un rol adicional

Restringir el acceso a asignaciones de instalaciones usando ABAC (opcional)

  1. Para la clase Assign-Worklist, cree una condición de decisión de acceso llamada FacilityCoordinator en el ruleset Event (Evento).
  2. En la pestaña Conditions (Condiciones), use la siguiente expresión When... (Decisión):

    pxThread.pxCurrentAccessGroup = "Booking:Facilities"

    La pestaña Conditions (Condiciones) debe asemejarse a la siguiente imagen:

    Facility coordinator
  3. Para la clase Assign-Worklist, cree una nueva condición de política de control de acceso FacilityCaseAssignedToMe en el ruleset Event (Evento).
  4. En la pestaña Pages & Classes (Páginas y clases) del registro de condición de política de control de acceso, ingrese OperatorID en el campo Page name (Nombre de página) e ingrese Data-Admin-Operator-ID en el campo Class (Clase).
  5. En la pestaña Definition (Definición), verifique si el usuario es coordinador de instalaciones y compruebe si el caso está asignado a ese usuario. Para todos los demás, otorgue el acceso.
    La configuración de la pestaña Definition (Definición) se muestra en la siguiente imagen:

    Facility coordinator
  6. Para la clase Assign-Worklist, cree una política de control de acceso RestrictFacilityCases en el ruleset EventBooking. Configure Action to Read (Acción de lectura) para restringir a otros coordinadores de instalaciones para que no puedan abrir la asignación y realizar el trabajo.
  7. En el campo Permit access if (Permitir acceso si), ingrese la condición de política de control de acceso FacilityCaseAssignedToMe que creó.

    La política de control de acceso debería verse como la siguiente imagen:

    Facility case managed

     

Restricción del acceso a asignaciones de instalaciones: comparación entre RBAC y ABAC

La siguiente tabla describe los pros y los contras de cada enfoque:

Diseño Pros Contras
Control de acceso basado en atributos Fácil de configurar No se muestra en Access Manager
Control de acceso basado en roles Se muestra en Access Manager Requiere un rol adicional

9 Revisar la solución

El archivo de la solución RAP (Rule Admin Product) proporcionado en la misión de diseño de la aplicación de este curso no contiene una implementación completa de todos los requerimientos de autorización especificados en los Requerimientos de escenarios de Front Stage. Todos los requerimientos mencionados pueden implementarse usando una combinación de RBAC y ABAC.

Para revisar la solución implementada, cambie la aplicación a Booking Authorization cuando esté registrado con un operador Admin@Booking.



Disponible en la siguiente misión:

If you are having problems with your training, please review the Pega Academy Support FAQs.

¿Le ha resultado útil este contenido?

¿Quiere ayudarnos a mejorar este contenido?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice