SAP自定义权限对象创建步骤
- 格式:doc
- 大小:267.00 KB
- 文档页数:6
济南分公司SAP系统权限设置
和修改操作流程
1.概述
1.1目的
规范SAP用户权限设置和修改的操作流程,加强SAP用户权限的管理,保证SAP系统的安全、稳定运行。
1.2读者
SAP系统的最终用户和SAP系统的用户、权限管理员。
2.用户权限设置和修改操作流程
2.1用户权限的设置
权限管理员根据“中国石化济南分公司ERP最终用户申请表”相关栏目的内容,对用户管理员所创建的用户ID赋予相应的权限。
2.2用户权限的修改
ERP最终用户由于岗位或者业务范围的调整,需要对其权限进行修改(增加或者减少权限)时,必须填写“中国石化济南分公司ERP最终用户权限修改申请表”(请参见附表三),经所在单位的主要领导审核批准后,交信息中心。
经信息中心领导审核后,权限管理员在SAP系统中,手工对相应用户ID进行权限的修改,并通知用户本人。
附表三
中国石化济南分公司
2、“功能模块”指用户使用SAP中的功能模块,其中有:FI/CO—
财务/成本管理,PP—生产计划, SD—销售/分销,MRO—物料采
购管理,MM—物料管理,PM—设备维护,HR—人力资源。
单位(部门)负责人(签章):
年月日
信息中心审核:
年月日
2。
SAP用户权限管理配置及操作手册SAP用户权限管理配置及操作手册SAP用户权限管理配置及操作手册Overview业务说明OverviewSAP的每个用户能够拥有的角色是有数量限制的,大概是300多点,具体不记得了。
如果只在S_TCODE和菜单中设置了某个事务代码,而没有设置权限对象,此时将不能真正拥有执行该事务代码的权限。
SAP的权限检查机制:SAP进入一个t-code,要检查两个东西1)S_TCODE2) 表TSTCA 里面和这个T-cdoe相对应的object。
有些tcode在tstca里面没有对应的object,就会导致直接往S_TCODE中加事务代码不能使用的情况。
SAP权限架构概念权限对象Authorization objectSAP在事务码(T-code)的基础上通过权限对象对权限进行进一步的细分,例如用户有创建供应商的权限,但是创建供应商的事务码中有单独的权限对象,那么就可以通过权限对象设置不同的用户可以操作不同的供应商数据。
角色-Role同类的USER使用SAP的目的和常用的功能都是类似的﹐例如业务一定需要用到开S/O的权限。
当我们把某类USER需要的权限都归到一个集合中﹐这个集合就是“职能”(Role)。
所谓的“角色”或者“职能”﹐是sap4.0才开始有的概念﹐其实就是对user的需求进行归类﹐使权限的设定更方便。
(面向对象的权限!!)分为single role 和composite role两种﹐后者其实是前者的集合。
角色模板-Template RoleRole的模板﹐一般是single role.但这个模板具有一个强大的功能﹐能通过更改模板而更改所有应用(sap称为Derive“继承”)此模板的Role(sap称之为adjust)参数文件-Profile参数文件相当于指定对应的权限数据及权限组的定义。
每个角色下会产生一个附属的参数文件。
真正记录权限的设定的文件﹐从sap4.0开始是与Role绑定在一起的。
388
SAP从入门到精通
图14-3 权限维护界面
输入权限“名称”后,单击“Create Role ”按钮,即可进入权限维护细节界面,具体细节可以查看第4章权限创建部分的内容。
下面主要看一下权限创建后的结构部分,如图14-4所示。
从图中可以清楚地看到一个权限的体系结构。
我们创建的是一个采购权限,这个权限下包含了3个事务代码(ME21N 、ME22N 、ME23N )。
权限事务一开始,会去检查权限字段为“TCD ”中所包含的事务代码是哪些,然后再去检查对应的权限对象,例如M_BEST_BSA 、M_BEST_EKG 、M_BEST_EKO 、M_BEST_WRK ,这些都是这个权限所包含的权限对象。
另外还可以看到,在每个权限对象的下面,还包含有一个权限字段叫“ACTVT ”,也叫“作业”。
可以看到,每个作业的后面都有01、02、03
等数字选项,单击“
”按钮,可以看一看这些字段指的是什么内容,如图14-5
所示。
图14-4 权限结构 图14-5 “作业”内容选项 从图中可以看到,01代表创建、02代表更改、03代表显示,每个数字都代表了具体的操作。
所以从这个例子就完全可以对应到之前所讲到的权限管理结构上。
14.3 事务代码、权限对象的创建及生成
SAP 系统中权限的创建在前面已经介绍过,本节介绍事务代码、权限对象的创建及生成。
14.3.1 权限对象的创建及生成
SAP 系统中有很多系统自带的权限对象,用户也可以自己创建权限对象。
本小节介绍权限对象的创建及生成,具体的操作步骤如下。
這次因為設定權限,所以有機會接觸權限物件(Authority Object),利用這個機會從程式面整理一下希望此文件對大家有所幫助,能更了解權限物件內部運作及機制,謝謝。
主要介紹整個應用流程如下(由於某些t-code需要Basis權限,所以在IDES上測試):------------------------------------------------------------※●●自己畫的架構圖:●●●首先建立一個Domain●●●定義資料型態為Char1●●●在Value Range裡列舉A、B、C三類(會反映到我們設定object Value時,提供選單)●●●接著設定Data Element●●●為Data Element設定Domain●●●再來輸入交易代碼SU20設定權限欄位●●●新增權限欄位●●●其中Search Help會依據Data Element變化,若無也可自行設定●●●輸入權限欄位名稱及Data Element,可看出Search Help已自動帶出(因為Domain有設定)●●●輸入SU21,設定權限物件●●●如下圖,建立物件類別及權限物件●●●輸入物件類別名稱●●●設定權限物件,指定權限欄位●●●輸入SU24,設定交易代碼t-code及權限物件關係※●●(此設定會影響那些權限物件及物件值自動帶入PFCG,若沒有設定此步驟,則必須在PFCG手動加入)●●●輸入T-code●●●如下圖,可設定T-code及Authority Object、Value關係※●●這就可以解釋為何某些T-code和值會自動帶入到PFCG●●●設定PFCG-交易代碼●●●如下圖,可以看到ZTESTAUTH、欄位ZTESTFD及建議值B皆自動帶出(當然也可不設定SU24而手動加入權限物件)●●●此欄位帶出Domain的列舉值●●●指派user※●●程式撰寫,藉由AUTHORITY-CHECK OBJECT檢查權限物件欄位的值是否符合PFCG設定的值●●●登入測試user●●●執行測試程式●●●權限檢查成功●●●在設定時空值影響測試,下圖將值清空●●●權限檢查失敗●●●此時若將值改為space●●●權限檢查成功※●●這此可知某些空值是否會造成權限問題,還是要視程式寫法而定。
sap权限设定完整版s a p权限设定完整版集团标准化工作小组[Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]权限设定操作手册权限维护1.注意1.1.用户、角色、事务代码、授权对象的关系用户:由几个角色组成角色:由一系列事务代码搭建事务代码:需要系统规定的必要授权对象才能运行授权对象:由它的参数来定义1.2.权限设定须谨慎权限设定非常重要,并且权限的排错查询非常繁琐、耗时,因此在做权限设定时一定要谨慎,每次更改都要记录。
1.3.测试环境下修改除非特殊情况,权限设定不允许在正式环境直接更改。
一般都是在测试环境修改、测试成功后,再传到正式环境。
1.4.拒绝不合理权限要求Basis不是决定用户权限范围的人,而是实际管理中大大小小业务流的管理者。
所以,变更权限设定,务必要求用户提供经过领导签核的申请表。
对于用户不合理的权限要求,顾问有责任拒绝。
2.角色维护2.1.作业说明基本由权限的大架构有User ID(用户),Role(角色),Profile(权限参数文件)三层,可知权限的设定也会有相应的三层。
目的SAP中的权限管理可以通过建立若干角色的方式进行,角色的定义为SAP中单个或者多个事务代码(T-Code)组成的一个角色定位。
角色是指在业务中事先定义的执行特殊职能的工作。
可以为单个的用户的需求去创建角色,也可以通过事务代码创建角色,然后分配给各个需要这些角色的用户。
创建角色主要有三种方式:手工创建。
适合所有新建角色的需求,主要对应权限追加;继承。
主要对应设定派生角色;复制。
主要对应设定基本的角色。
继承与复制创建角色的区别:用继承的方式建立新角色,继承后,只需要填写,Object就全部标识为绿灯。
用复制的方式建立新角色,需要在Object里填入值,Object才能全部标识为绿灯。
以上是两者操作上最大的区别。
2.2.创建单一角色事务代码与菜单路径PFCG –工具 -> 管理 -> 用户维护 -> 角色管理 -> 角色菜单此为事务代码输入栏后续作业工具列图示/其它说明备注输入事务代码可于命令栏输入[ 事务代码 ]并按ENTER键,执行程序鼠标双击(或)将鼠标光标停在欲执行对象,并双击鼠标左键。
SAP信息化项目权限处理操作手册文档修改记录1.创建与分配权限操作1.1 维护用户(SU01)1.1.1 增加用户1)进入事务码SU01,先填入自定义的用户编码,再点击创建按钮进入下一屏。
2)在下图中填入用户名称和密码,后点击保存。
3)保存后提示。
在用户创建这里,必填项只有用户编码、用户名称、密码。
1.1.2 修改用户1)修改用户和创建用户都是事务码SU01,可在此界面给用户赋予角色。
先输入要修改的用户,然后点击修改按钮进入下一屏,如下图:2)点到“角色”页签,在角色栏选择具体的角色。
3)选好角色后,点击借上方的保存按钮,提示。
注:每个用户都要赋予下图所示的“基础全局角色”。
1.2 维护角色(PFCG)1.2.1 增加角色1)进入事务码PFCG,先填入自定义角色编码,再点击“单一角色”按钮。
2)点击“单一角色”按钮后进入下一屏,填写好“描述”点击上方的保存按钮。
1.2.2 给角色分配事务码1)角色简历完成后,给它赋事务码权限。
操作如下图:2)分配后的效果如下图:1.2.3 设置“权限”参数文件1)点击到“权限”页签,2)点击:“参数文件名称”栏目右边的按钮后,再点击“更改权限数据按钮”进入下一屏。
在下图中点击“组织级别”,在弹出的“定义组织级别”对话框中输入“公司代码”、“控制范围”等信息后,点击对话框上的保存按钮。
上图只是把操作过程表述出来了,下面将“定义组织级别”对话框详细的配置截图如下:1.2.4 手动配置权限在配置好组织级别后,有时还需要手动调整部分权限,通过界面上方的按钮来完成。
1)手动调整跨公司销售业务范围1020和2020的发票权限,只能看但是不能操作。
而本公司的1100销售组织具有全部的权限。
2)插入自开发报表的权限对象。
下面的四个对象是自开发的权限对象,需要手动插入权限中。
操作方法如下:查看插入效果:剩下的三个以此类推。
1.2.5 保存并生成“权限”参数文件1)将权限的黄色点绿。
1.创建 Data ElementTCODE SE801) 创建 Data ElementName: Z_EMP_ID00 Field Label 属性 Le ngth Sho rt Med ium Lon g Hea ding 19 EMPLOYEE ID HEADING 20 EMPLOYEE EMPLOYEE ID 15 EMPLOYEE ID 10 ID Field Label2) 为 Z_EMP_ID00 创建一个 DomainName Data Type No. Characters Decimal PlacesZ_EMP_ID00 NUMC 10 0Output Length102.创建 Authorization FieldsTCODE SU20 Field Name Data element ZEMPID00 Z_EMPID003.创建 Authorization Object多个 Authorization Fields 是被归在一个 Authorization Object 中的,创建好 Objec t 后需要把 Z_EMPID00 assign 给它. TCODE SU21图 SU21-1 (SU21 界面)1) 创建一个 Object class ZEMPObject Class TextZEMP Empleyee Object class.2) 在 ZEMP 里创建一个 Authorization Object ZEMPOBJ00Object TextZEMPOBJ00 Employee object 00.Field nameZEMPID00图 SU21-2 (创建 Authorization Object)图 SU21-3 (Object Class 和 Authorization Object 创建完毕)4.为用户添加 Profile这个 Profile 包含用户对 Object ZEMPOBJ00 的各个 Field 有权限访问的具体范围.1) 创建 ProfileTCODE SU01 在菜单 Enviroment > Mainten Profile(F9) Profile: ZEMPRF00 选择 Create.图 SU01-1 (创建 Profile) 在下半部分的表格中的 Object 列中添加 ZEMPOBJ00 Save, 激活 Authorization 列输入 ZAHUEMP,双击新建它 Text: Authorization for Employee. 点击 Maintenance Value, 在 From 列和 To 列分别输入* 分别激活 Authorization, Profile.图 SU01-2 (Profile 创建完毕)2) 将 ZAHUEMP assign 给用户 BCUSER.然后回到 SU01 对 BCUSER 的界面, 在 Profile 面板: 添加 ZEMPRF00 Save.5.创建 RoleTCODE PFCG Role ZEMPR 选择 Single Role1) Description: Maintenance Employee ID在 Authorizations 面板中: Profile Name Profile Text ZEMPRF00 Employee Profile2) 给这个 Role 添加用户在 User 面板中: User: BCUSER6.创建测试程序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.。
创建自定义权限对象
步骤1:事务代码SU21(Maintain Authorization Objects),单击创建。
选择“Object class”(如果已经有的Object Class能满足需要则不要此步,直接做步骤三)
步骤2:填入Object class和Text名称,然后保存。
步骤3:单击创建,选择“Authorization Object”。
步骤4:填入Object,Text,class名称,在Authorization fields的fields name中加入需要控制的字段名,然后保存,完成自定义权限对象的创建。
(如果已经存在的字段没有满足需要的,则需要点击“Fields maintenance”按钮做步骤五)
步骤5:单击创建
步骤6:单击创建填入所需Fields Name, Data element, Table Name名称,保存。
返回步骤四,填入刚刚建好的字段名称,保存。
完成全线对象的创建。
步骤7:用事务代码PFCG,手工分配自定义的权限对象。
步骤8:在程序控制写入代码控制自定义权限对象。
Function module:EXIT_SAPLMGMU_001
INCLUDE ZXMG0U02.
*&---------------------------------------------------------------------*
*& Include ZXMG0U02
*&---------------------------------------------------------------------* TABLES: MAKT.
IF sy-tcode = 'MM01' OR sy-tcode = 'MM02'.
AUTHORITY-CHECK OBJECT 'ZMATNR' ID 'ACTIVITY' FIELD '01'.
IF sy-subrc NE 0.
SELECT SINGLE * FROM MAKT WHERE MATNR = WMARA-MATNR AND SPRAS = SY-LANGU. READ TABLE STEXT WITH KEY SPRAS = SY-LANGU.
IF SY-SUBRC = 0.
IF STEXT-MAKTX <> MAKT-MAKTX.
MESSAGE 'You have not the authority change material text' TYPE 'E'. ENDIF.
ELSE.
MESSAGE 'You have not the authority change material text' TYPE 'E'. ENDIF.
ENDIF.
ENDIF.
注意:Object name, Object field name及Object field值可根据实际情况修改。
上面示例程序定义为,Object field ‘ACTIVITY’= 01时为可修改物料描述
当‘ACTIVITY’等于其他值时则未不可修改。