!--a11y-->
Proceso de verificación de autorización por
número de personal 
Un usuario intenta llamar el registro de infotipo de un empleado. Como consecuencia, la verificación de autorización se llama utilizando los parámetros siguientes:
|
LEVEL |
Nivel de autorización |
|
TCLAS |
Clase de transacción = Diferencia de número de personal/número de candidato |
|
PERNR |
Número de personal (o número de candidato) |
|
INFTY |
Infotipo |
|
SUBTY |
Subtipo |
Los parámetros BEGDA y ENDDA no son necesarios, siempre que se evalúe la asignación actual del usuario a un número de personal. Cuando el sistema reconoce que un número de personal pertenece a un usuario, los datos se diferencian utilizando solamente el parámetro infotipo/subtipo. No se produce una diferenciación basada en el tiempo.
El sistema realiza todos los pasos siguientes de la verificación de autorización.
...
1. Se evalúa la clase de transacción. Si la verificación se aplica a un número de candidato, la verificación termina con el resultado indeciso.
2. Se evalúa el indicador principal de autorización PERNR. Si se desactiva el indicador, la verificación termina con el resultado indeciso.
3. Se especifica el número de personal que pertenece al usuario (en la versión estándar desde el infotipo 0105, subtipo 0001, en las versiones anteriores, desde la tabla T513A Valores de usuario).
4. Si el número de personal no coincide con el número de personal que se va a verificar o si no se encuentra ningún número de personal, la verificación termina con el resultado indeciso. (De este modo, las opciones de autorización para el objeto de autorización P_PERNR nunca afectan a la verificación de autorización por número de personal en los números de personal que no se atribuyen al usuario.)
5. Se realiza una verificación de autorización para el objeto de autorización P_PERNR :
AUTHORITY-CHECK OBJECT 'P_PERNR'
ID 'AUTHC' FIELD LEVEL
ID 'PSIGN' FIELD '*'
ID 'INFTY' FIELD INFTY
ID 'SUBTY' FIELD SUBTY
6. Si esta verificación es correcta (SY-SUBRC = 0), se autoriza la salida.
7. Se realiza una segunda verificación de autorización para el objeto de autorización P_PERNR:
AUTHORITY-CHECK OBJECT 'P_PERNR'
ID 'AUTHC' FIELD LEVEL
ID 'PSIGN' FIELD 'E'
ID 'INFTY' FIELD INFTY
ID 'SUBTY' FIELD SUBTY
8. Si esta verificación es correcta (SY-SUBRC = 0), no se autoriza la salida.
9. Se realiza una tercera verificación de autorización para el objeto de autorización P_PERNR:
AUTHORITY-CHECK OBJECT 'P_PERNR'
ID 'AUTHC' FIELD LEVEL
ID 'PSIGN' FIELD 'I'
ID 'INFTY' FIELD INFTY
ID 'SUBTY' FIELD SUBTY
10. Si esta verificación es correcta (SY-SUBRC = 0), se autoriza la salida.
11. Si ninguna de las verificaciones realizadas fuera correcta, la salida es indecisa.

La verificación que utiliza P_PERNR con PSIGN = * no se realizó en versiones anteriores. A un usuario con la autorización * para P_PERNR en el campo PSIGN siempre se le negará el acceso por esta razón. Esto significaba, entre otras cosas, que los usuarios con autorizaciones globales no podían acceder a su propio número de personal durante las verificaciones de autorización activas por número de personal.
¿Por qué no, por tanto, fijar la verificación a PSIGN E o I? Un usuario con una autorización E e I debería poder acceder y no poder acceder a su propio número de personal. Dado que el sistema no puede interpretar esto de un modo significativo, debería negar la autorización según la estrategia en caso de duda, negar la autorización. De este modo se descarta inmediatamente fijar las verificaciones E e I. Las verificaciones adicionales PSIGN = * se registraron para asegurar que los usuarios con autorización SAP_ALL tengan siempre autorización para acceder a sus propios números de personal.
Véase también:
Diagrama de flujo de la verificación de autorización por número de personal