Ansicht
Dokumentation
CL_RBAM_AUTHORIZATION_CHECK - RBAM Schnittstelle mit direkten Methodenaufrufen
ROGBILLS - Synchronize billing plans RFUMSV00 - Advance Return for Tax on Sales/PurchasesDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
Die Klasse stellt öffentlich Methoden zur RBAM-Berechtigungsprüfung
zur Verfügung. Es existieren die folgenden Methoden:
- AUTHORIZATION_CHECK_BO_NODE_ID
- Die instanzspezifische Berechtigungsprüfung für Core Service und BO Typ
- AUTHORIZATION_CHECK_BO_NODE
- Die Berechtigungsprüfung für Core Service und BO Typ ohne Instanzen
- GET_GRANTED_USERS_BO_NODE
- Ermittlung aller potenziell berechtigte Benutzer für Core Service und BOTyp
AUTHORIZATION_CHECK_BO_NODE_ID
Die instanzspezifische Berechtigungsprüfung für Core Service und BO Typ. Die zu prüfenden Instanzen werden in einer Tabelle übergeben.
Parameter:
Name Typ |
---|
IF_USER RBAM_USER_LOGON_ID (optional) |
IS_OPERATION RBAM_ESF_OPERATION_S |
IF_BO_NAME RBAM_ESF_BO_PNAME |
IF_BO_NODE_NAME RBAM_ESF_BO_NODE_PNAME |
IT_BO_NODE_IDS SESF_BO_NODE_ID_TAB |
RT_AUTHORIZED RBAM_BOOL_T |
Typ Beschreibung |
---|
RBAM_USER_LOGON_ID Anmeldename eines Benutzers (SY-UNAME) |
RBAM_ESF_OPERATION_S Operation eines ESF Geschäftsobjekt-Knotens |
RBAM_ESF_BO_PNAME Proxyname eines ESF Geschäftsobjekts |
RBAM_ESF_BO_NODE_PNAME Proxyname eines ESF Geschäftsobjekt-Knotens |
SESF_BO_NODE_ID_TAB Tabelle von BO Node IDs |
RBAM_BOOL_T Tabelle zu jeder Instanz: berechtigt (abap_bool) |
AUTHORIZATION_CHECK_BO_NODE
Die Berechtigungsprüfung für Core Service und BO Typ ohne Instanzen. Damit kann z. B. geprüft werden, ob ein Benutzer die Berechtigung für die Operation "QUERY" auf dem Business Objekt "SERVICE_PRODUCT" und dem Knoten "ROOT" besitzt.
Parameter:
Name Typ |
---|
IF_USER RBAM_USER_LOGON_ID (optional) |
IS_OPERATION RBAM_ESF_OPERATION_S |
IF_BO_NAME RBAM_ESF_BO_PNAME |
IF_BO_NODE_NAME RBAM_ESF_BO_NODE_PNAME |
EF_AUTHORIZED RBAM_BOOL |
Typ Beschreibung |
---|
RBAM_USER_LOGON_ID Anmeldename eines Benutzers (SY-UNAME) |
RBAM_ESF_OPERATION_S Operation eines ESF Geschäftsobjekt-Knotens |
RBAM_ESF_BO_PNAME Proxyname eines ESF Geschäftsobjekts |
RBAM_ESF_BO_NODE_PNAME Proxyname eines ESF Geschäftsobjekt-Knotens |
RBAM_BOOL Benutzer berechtigt (abap_bool) |
GET_GRANTED_USERS_BO_NODE
Ermittlung aller potenziell berechtigte Benutzer für Core Service und BO Typ
Parameter:
Name Typ |
---|
IS_OPERATION RBAM_ESF_OPERATION_S |
IF_BO_NAME RBAM_ESF_BO_PNAME |
IF_BO_NODE_NAME RBAM_ESF_BO_NODE_PNAME |
RT_GRANTED_USERS RBAM_GRANTED_USER_T |
Typ Beschreibung |
---|
RBAM_ESF_OPERATION_S Operation eines ESF Geschäftsobjekt-Knotens |
RBAM_ESF_BO_PNAME Proxyname eines ESF Geschäftsobjekts |
RBAM_ESF_BO_NODE_PNAME Proxyname eines ESF Geschäftsobjekt-Knotens |
RT_GRANTED_USERS Tabelle der Benutzer plus Flag "instanzbasiert berechtigt" |
Sonderfall: falls alle Benutzers für Operation und Resource berechtigt sind, ist die Tabelle leer und es wird eine Exception vom Typ CX_RBAMRT_ALL_USERS_GRANTED erzeugt. |
Beispiele
Beispiel AUTHORIZATION_CHECK_BO_NODE_ID
DATA: lt_bo_node_ids TYPE sesf_bo_node_id_tab.
DATA: lf_bo_name TYPE rbam_esf_bo_pname.
DATA: ls_operation TYPE rbam_esf_operation_s.
DATA: lt_authorized TYPE rbam_bool_t.
* ls_operation = if_rbam_esf_constants=>co_operation_pattern_retrieve.
ls_operation-type = 'InterfacePattern'.
ls_operation-pname = 'RETRIEVE'.
lf_bo_name = 'SERVICE_PRODUCT'.
lt_authorized =
cl_rbam_authorization_check=>authorization_check_bo_node_id(
is_operation = ls_operation
if_bo_name = lf_bo_name
if_bo_node_name = 'ROOT'
it_bo_node_ids = lt_bo_node_ids
).
Beispiel AUTHORIZATION_CHECK_BO_NODE
DATA: lf_bo_name TYPE rbam_esf_bo_pname.
DATA: ls_operation TYPE rbam_esf_operation_s.
DATA: lf_authorized TYPE rbam_bool.
ls_operation-type = 'InterfacePattern'.
ls_operation-pname = 'RETRIEVE'.
lf_bo_name = 'SERVICE_PRODUCT'.
lf_authorized =
cl_rbam_authorization_check=>authorization_check_bo_node(
is_operation = ls_operation
if_bo_name = lf_bo_name
if_bo_node_name = 'ROOT'
).
Beispiel GET_GRANTED_USERS_BO_NODE
DATA: ls_operation TYPE rbam_esf_operation_s,
lt_granted_users TYPE rbam_granted_user_t,
lr_cx_rbamrt TYPE REF TO cx_rbamrt,
lr_exc_all_users TYPE REF TO cx_rbamrt_all_users_granted.
* ls_operation-type = 'InterfacePattern'.
* ls_operation-pname = 'RETRIEVE'.
ls_operation = if_rbam_esf_constants=>co_operation_pattern_retrieve.
TRY.
lt_granted_users = cl_rbam_authorization_check=>get_granted_users_b
is_operation = ls_operation
if_bo_name = 'SERVICE_PRODUCT'
if_bo_node_name = 'ROOT'
).
CATCH cx_rbamrt_all_users_granted INTO lr_exc_all_users.
* Sonderfall: alle Benutzer sind berechtigt
CATCH cx_rbamrt INTO lr_cx_rbamrt.
ENDTRY.
Hinweis
Konstanten für die Angabe der Operation werden über das Interface IF_RBAM_ESF_CONSTANTS bereitgestellt.
SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up Vendor Master (General Section)
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 7610 Date: 20240423 Time: 091929 sap01-206 ( 48 ms )