通常basis会使用PFCG做">权限管理,时你保存时会产生一个系统外的profile name,
记得SU01时用户有profile 和role两栏位吗?它们的关系如何呢?
首先明白几个概念.
1.activity
这样说吧,我们从activity谈起,activity是什么意思这个你查下
字典也就知道了,对就是规定可做什么动作,比如说不能吸烟只能喝酒,不能多于2两,
不对,这是我老婆讲的,SAP不是这样子的,是只能insert, update,display什么的.
这些东西当年德国佬是写在tobj表中的.
activity 也是可分activity group的.
2.activity category &Authorization group
Role Vs Profile
你看看表T020就知道了,就是什么K,D, A, M什么的.
profile是什么呢?实际上可以理解为所有的authorization data(有很多authorization group--{你可使用OBA7填写,
权限太细也不是好事^_^}和activity组成)的一个集合的名字,通常一个自定义的role产
生一个profile,SAP权限控制是根据profile里的authorization data(objects)来控制的.
role又是什么呢?role只是一个名字而已,然后将profile赋予给它, 比如你SU01建立一个
用户,我没有任何role,但是加如SAP_All profile
也是可做任何事情.
SAP本身有很多default role & profile.
3.最常用的PFCG
->authorizations->change authorization data->
进入后选取selection criteria 可看到所有的authorization object
manually可手工加authorization object,比如你使用某个t-code权限出错误,abap使用SU53检查就
知道缺少哪个authorization objec,然后手工加入就可以.
你选去authorization levels就可by account type再细分权限.
有些甚至直接到表字段.而且你甚至可給一个object分配缓存buffer.
那么SAP是如何做到权限控制的呢,屠夫就用刀小宰一下.
4.关于权限方面的几个t-code.
(一)Role(角色)相关T-code:
PFAC 标准
PFAC_CHG 改变
PFAC_DEL 删除
PFAC_DIS 显示
PFAC_INS 新建
PFAC_STR
PFCG 创建
ROLE_CMP 比较
SUPC 批量建立角色profile
SWUJ 测试
SU03 检测authorzation data
SU25, SU26 检查updated profile
(二)建立用户相关T-code:
SU0
SU01
SU01D
SU01_NAV
SU05
SU50, Su51, SU52
SU1
SU10 批量
SU12 批量
SUCOMP:维护用户公司地址
SU2 change用户参数
SUIM 用户信息系统
用户组
SUGR:维护
SUGRD:显示
SUGRD_NAV:还是维护
SUGR_NAV:还是显示
(三)关于profile&Authoraztion Data
SU02:直接创建profile不用role
SU20:细分Authorization Fields
SU21(SU03):****维护Authorization Objects(TOBJ,USR12).
对于凭证你可细分到:
F_BKPF_BED: Accounting Document: Account Authorization for Customers F_BKPF_BEK: Accounting Document: Account Authorization for Vendors F_BKPF_BES: Accounting Document: Account Authorization for G/L Accounts F_BKPF_BLA: Accounting Document: Authorization for Document Types F_BKPF_BUK: Accounting Document: Authorization for Company Codes F_BKPF_BUP: Accounting Document: Authorization for Posting Periods F_BKPF_GSB: Accounting Document: Authorization for Business Areas F_BKPF_KOA: Accounting Document: Authorization for Account Types F_BKPF_VW : Accounting Document: Change Default Values for Doc.Type/PsKy
然后你进去还可细分,这些个东西是save在USR12表中的. 在DB层是UTAB.
对具体transaction code细分:
SU22,SU24 SU53:*** 就是你出错用来检查没有那些authoraztion objects. SU56:分析authoraztion data buffers. SU87:用来检查用户改变产生的history SU96,SU97,SU98,SU99:干啥的? SUPC:批量产生role
DB和logical层:
SUKRI:Transaction Combinations Critical for Security
tables:
TOBJ : All avaiable authorzation objects.(全在此)
USR12: 用户级authoraztion值
-----------------------------
USR01:主数据 USR02:密码在此 USR04:授权在此 USR03:User address data USR05:User Master Parameter ID USR06:Additional Data per User USR07:Object/values of last authorization check that failed USR08:Table for user menu entries USR09:Entries for user menus (work areas) USR10:User master authorization profiles USR11:User Master Texts for Profiles (USR10) USR12:User master authorization values USR13:Short Texts for Authorizations USR14:Surchargeable Language Versions per User USR15:External User Name USR16:Values for Variables for User Authorizations USR20:Date of last user master reorganization USR21:Assign user name address key USR22:Logon data without kernel access USR30:Additional Information for User Menu USR40:Table for illegal passwords USR41:当前用户 USREFUS: USRBF2 USRBF3 UST04:User Profile在此 UST10C: Composite profiles UST10S: Single profiles (角色对应的) UST12 : Authorizations