참고 URL
참고 문서
Analysis of Authorizations in SAP R/3 Untersuchung des Berechtigungskonzepts im SAP R/3 System
by Manuel Lamotte(2008)
Role, Profile, Authorization object 각각의 개념에 대하여
Role이란?
- SAP를 사용하는 USER가 시스템에서 특정 업무를 하기 위해서는 필요한 Role을 할당 받아야 한다.
- Role은 Profile을 생성하고 그 Profile 안 에는 여러 Authorization object가 있다.
- Role은 유저에게 권한을 부여하는 수단이다. Role을 사용자에게 부여하면 자동으로 Profile도 할당하게 된다.
Profile
- Profile은 권한 데이터를 저장하는 Object이다. Standard와 Generated 2가지 형태의 타입이 있다.
- Standard Profile은 유저에게 직접 부여가 가능하다.(역할에 독립적이다.)
- Generated Profile은 유저에게 부여하기 위해서는 Profile을 가지고 있는 역할을 부여해야 한다.
A_ALL은 SAP에 미리 정의된 Standard 타입의 Profile이라 문제없이 독립적으로 부여되지만
T_BY690121 Profile은 SAP_AIO_COSTACC-S이라는 SAP가 가진 기본 Role에 딸린 Generated Profile이기 때문에 독립적으로 부여가 안된다.
Authorization(권한)이란?
- Authorization Object 에 의해 구별/식별된다( Authorization이 Authorization Object를 포함하고 있다.)
- Object class 는 권한 오브젝트 영역을 나타낸다.
- Authorization Object 는 최대 10개의 권한 필드로 이루어져 있다.
Profile이 여러 Authorization을 가질 수 있다. Authorization은 Authorization Object를 가진다.
- 위와 같이 한 profile에 여러 Authorization가 있는 경우에는 Union되어 권한 체크가 수행될 것이다. SAP의 권한 통제 방식은 access를 금지하는 것이 아니라 허용하는 것이기 때문이다.
"Authorizations can only grant access to transactions/functions/data but they can’t forbid the access. Therefore, conflicts resulting from the union cannot occur because the union of access grants implies again access grants and never the denial to access something." - Analysis of Authorizations in SAP R/3 Untersuchung des Berechtigungskonzepts im SAP R/3 System
by Manuel Lamotte(2008)
- SU21 T-CODE에 들어가면 모든 Authorization Object를 볼 수 있다. 크게 Object class로 Authorization Object를 분류하고 있다. Authorization Object를 클릭하면 어떤 Authorization Field들이 들어있는 지 볼 수 있다.
- 위와 같이 관련 권한 필드들을 조회할 수 있다.
- 추가로 아래와 같이 Authorization Object에 필드가 없는 경우도 있다.
- 자재 마스터 생성 Authorization Object를 보면 권한 필드에 일반적인 필드가 아니라 Dummy가 있다.
- 이는 권한을 필드로 통제하는 것이 아니라 권한 오브젝트 자체로 컨트롤한다는 의미이다. 따라서 profile이 이 Authorization Object를 담고 있느냐 아니냐에 따라 자재 생성 권한이 있느냐 없느냐가 갈리는 것이다.
- SU24에서는 T-CODE에 필요한 Authorization Object들을 관리할 수 있다. 단점은 CBO로 만든 프로그램들은 권한 체크가 없는 경우가 대부분이다. 이런 경우 SU24에서 Custom T-CODE에 권한 오브젝트를 넣고 해당 프로그램의 소스코드에
authority-check object 'V_VBAK_VKO' 과 같이 권한 점검 함수를 넣어주어야 한다.
- 권한 통제 목적으로 T-CODE와 Authorization Object를 따로 관리하고 싶다면 접근가능한 T-CODE를 위한 ROLE과 Authorization Object들을 모아놓은 ROLE을 서로 다른 명명규칙을 사용해 관리하면 되지 않을까 한다.
TODO : SU22와 SU24의 차이는 무엇인가
'SAP&ABAP' 카테고리의 다른 글
SAP SD [기초] 4 - Delivery Document, Billing Document (0) | 2024.02.29 |
---|---|
SAP SD [Tips] - Sales Documents의 Dates에 대해서 (0) | 2024.02.22 |
SAP BC [Tips] - RZ11에서 SAP profile 파라미터 변수 유지보수 (0) | 2024.02.20 |
SAP ERP 개론 - 4. PP 모듈 개요 (3) | 2024.02.20 |
SAP SD [기초] 3 - Sales Order (0) | 2024.02.19 |