Lo sapevi che esiste una funzionalità chiamata "pareggiamento utenti" User Comparison in SAP? Anche in S/4HANA?
Ma a cosa serve e perché in alcuni casi potrebbero esserci errori?
PFUD cosa è? A cosa serve?
Si tratta di una transazione che può essere avviata in modalità online o background che permette di andare a verificare le corrette attribuzioni dei profili autorizzativi in base ai relativi ruoli.
Ovvero nel caso in cui ci sia un ruolo assegnato con una determinata validità es. da oggi fino al 31.12.2022, garantisce il primo gennaio 2023 questo ruolo (e quindi profili) non sia più assegnato all'utente.
Senza questa funzionalità attiva, in queste situazioni rimarrebbero attive abilitazioni anche se scadute!
Per questo motivo è caldamente suggerito pianificare questo programma in maniera periodica, ad esempio ogni notte.
Inoltre, è necessario avviare questa funzionalità ogni volta che un nuovo ruolo è assegnato ad un utente. Ad esempio, a seguito di un trasporto dall'ambiente di sviluppo a quello di produzione. In questi casi è possibile aspettare l'avvio del job notturno (se pianificato) oppure eseguire manualmente il programma sul ruolo interessato.
Dove trovo questa funzionalità?
È presente in diversi punti, nella transazione PFCG, nella transazione PFUD, chiaramente e infine nella transazione SU01 (leggi qui quali sono le transazioni importanti nella gestione delle autorizzazioni SAP)
Nella transazione SU01, nel tab "Roles" è possibile vedere la colonna "Status" nelle release SAP più recenti (ad esempio S/4HANA) o il pulsante "User master record" anch'esso con lo stato. Nel caso in cui sia Rosso serve intervenire facendo il pareggiamento utenti.
Nella transazione PFCG (Profile Generator) nel tab "Users" anche in questo caso, attraverso il pulsante "User Comparison" oppure come passaggio dalla PFCG alla PFUD nel menù "Utilities"
Oppure, ovviamente, nella transazione specifica PFUD. Dove è possibile indicare il ruolo oppure l'insieme dei ruoli su cui far avviare il confronto.
Il programma che può essere utilizzato per pianificare il job di questa funzionalità si chiama RHAUTUPD_NEW è possibile pianificarlo tramite la transazione SM36 oppure la funzionalità nella transazione PFUD chiamata "Schedule or Check the Background job for the Full Comparison" in questo caso sarò proposto un nome job standard chiamato "PFCG_TIME_DEPENDENCY"
Tramite l'icona "Info" nella parte alta della transazione è possibile capire a cosa servano i vari flag presenti nella transazione.
Attenzione, se non l'hai mai eseguita, questa transazione può creare dei disservizi andando a rimuovere delle abilitazioni.
Tips -> Tramite la nota OSS seguente: "2734455 - Optimized user comparison after role imports" la SAP ha introdotto la possibilità a seguito di un trasporto legato ai ruoli che la PFUD sia eseguita in automatico, senza alcun intervento manuale.
Quali possono essere degli errori comuni?
Uno degli errori più classici che puoi trovare nei log di questa transazione è quello chiamato: "Type of role is undetermined". In questo caso esiste una specifica nota per risolverlo, la seguente: 2555130 - PFUD | Type of role is undetermined
L'errore si presenta sotto questa forma:
Questo errore è dovuto al fatto che, per qualche motivo, alcuni ruoli, non hanno degli attributi corretti e quindi il sistema non riesce a capire che tipo di ruolo sia (se singolo o composto). Di conseguenza il programma genera l'errore sopra.
Attraverso un programma di correzione allegato alla nota (Z_ADD_COLL_FLAG) è possibile identificare e correggere queste anomalie sistemando il problema.
Una ulteriore casistica potrebbe essere quella legato alla colonna "Status" in rosso nella transazione SU01 (vedi immagine sopra). In questo caso potrebbe essere sufficiente eseguire nuovamente la transazione PFUD oppure individuare queste casistiche attraverso il function module seguente: PRGN_CHECK_USERPROF_STATUS oppure interrogando e correlando le tabelle AGR_DEFINE, AGR_1016, AGR_USERS, UST04.