ITPub博客

首页 > 数字化转型 > ERP > AUTHORITY-CHECK

AUTHORITY-CHECK

ERP 作者:w8828028 时间:2014-07-10 15:51:24 0 删除 编辑
 作为一个开发人员而言,能够学会查找权限的object id,以及profile是很重要的。现在就总结一下经常用的事务代码吧,放在这里以备以后使用。

    SU01:Assign profile=>就是创建用户然后分配权限的profile

    SU02:Creating profile=>创建profile

    SU03:Creating authorization=>创建权限

    SU21:List of object class=>在这里创建object class

    SU22:List of transaction with check object=>把事务代码相关的check object找出来

    SU24:Maintain assignment of authorization object of transaction=>根据事务代码找到相关的authority  object.

    SU25:我没有权限使用,就是复制系统标准的profile

    SUIM :Display a generated authorization profile

    SU53:Display authorization data for user=>列出用户的权限

例子:

1.创建Data Element
TCODE SE80

1) 创建Data Element

Name: Z_EMP_ID00
Field Label
属性
     Length     Field Label
Short 10       ID
Medium 15 EMPLOYEE ID
Long 20 EMPLOYEE EMPLOYEE ID
Heading 19 EMPLOYEE ID HEADING

 

2) 为Z_EMP_ID00创建一个Domain
Name Z_EMP_ID00
Data Type NUMC
No. Characters 10
Decimal Places 0
Output Length 10

 

2.创建Authorization Fields
TCODE SU20
Field Name ZEMPID00
Data element Z_EMPID00

 

3.创建Authorization Object
多个Authorization Fields是被归在一个Authorization Object中的,创建好Object后需要把Z_EMPID00 assign给它.
TCODE SU21

500)this.width=500;" border=0>

图SU21-1 (SU21界面)

 

1) 创建一个Object class ZEMP
Object Class ZEMP
Text Empleyee Object class.

 

2) 在ZEMP里创建一个Authorization Object ZEMPOBJ00
Object ZEMPOBJ00
Text Employee object 00.
Field name ZEMPID00

500)this.width=500;" border=0>

图SU21-2 (创建Authorization Object)

 

500)this.width=500;" border=0>

图SU21-3 (Object Class和Authorization Object创建完毕)

 

4.为用户添加Profile
这个Profile包含用户对Object ZEMPOBJ00的各个Field有权限访问的具体范围.

 

1) 创建Profile
TCODE SU01
在菜单Enviroment > Mainten Profile(F9)
Profile: ZEMPRF00
选择Create.

500)this.width=500;" border=0>

图SU01-1 (创建Profile)

在下半部分的表格中的Object列中添加ZEMPOBJ00,Save, 激活
Authorization
列输入ZAHUEMP,双击新建它
Text: Authorization for Employee.
点击Maintenance Value, 在From列和To列分别输入*
分别激活Authorization, Profile.

500)this.width=500;" border=0>

图SU01-2 (Profile 创建完毕)

2) 将ZAHUEMP assign给用户BCUSER.
然后回到SU01对BCUSER的界面, 在Profile面板:
添加ZEMPRF00,Save.

5.创建Role
TCODE PFCG
Role ZEMPR
选择Single Role

1) Description:
Maintenance Employee ID
在Authorizations面板中:
Profile Name  ZEMPRF00
Profile Text Employee Profile

2) 给这个Role添加用户
在User面板中:
User: BCUSER

6.创建测试程序
REPORT  ZAUTHORITY01.
DATA: Z(20) VALUE 'abc'.
AUTHORITY-CHECK OBJECT 'ZEMPOBJ00'
                ID 'ZEMPID00' FIELD Z.
WRITE:/ Z.
IF SY-SUBRC = 0.
  WRITE:/ 'PASS'.
ELSE.
  WRITE:/ 'Sorry.'.
ENDIF.

 

7.运行程序
用户BCUSER必须先退出系统然后登录后前面设置的role才会生效.运行程序,结果为PASS.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29742890/viewspace-1215831/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 字符串转数字
下一篇: 报表工具QUERY
请登录后发表评论 登录
全部评论

注册时间:2014-07-08

  • 博文量
    10
  • 访问量
    18633