SlideShare a Scribd company logo
SDN Contribution 
Authorization Objects – A Simple Guide 
Applies to: 
Netweaver 2004s Web Application Server SPS7 
Summary 
This guide is intended to demonstrate how to create and use the Authorization Concept in the most simplest of conditions. It is based on the Netweaver Web Application Server, and will utilize a table available in all R/3 systems. 
Author(s): Glen Spalding 
Company: gingle Ltd 
Created on: 24th May 2006 
Author Bio 
There did not appear to be any simple guide and explanation on how to create authorizations in the most simplest manner. Therefore, I thought I would create this basic guide that, I hope, explains the main principles and tasks needed for the beginner. 
This Authorization Object method should only be utilized in the most basic of uses. 
© 2006 SAP AG 1
Table of Contents 
Introduction......................................................................................................................................3 
Scenario...........................................................................................................................................4 
Create Authorization Field...............................................................................................................5 
Create Authorization Class & Object...............................................................................................6 
Create Role, Profile & Authorization................................................................................................9 
Assign Role to User.......................................................................................................................12 
Code the Authorization Check.......................................................................................................13 
Testing...........................................................................................................................................14 
Copyright........................................................................................................................................15 
© 2006 SAP AG 2
Introduction 
The Authorization Object mechanism is used to inspect the current user’s privileges for specific data selection and activities from within a program. 
An Object Class contains one or more Authorization Objects. 
The Authorization Object is where Permitted Activity configurations are performed against specific fields. E.g. Change (being the activity) the material’s text – MAKTX (being the specific field), or Read (being the activity) a certain Customer (using Customer Number – KUNNR, as the specific field). 
Before a User can be granted permission by the Authorization Object, the User’s Master Record is assigned a Role, which includes a Profile. 
The Profile contains what is simply called the Authorization and is where the specific data for the Authorization Object’s field is assigned to the configured Permitted Activity. E.g. Allow changes to any Material Text, or read Customers between the ranges “AA100” & “BB999”. 
Finally the calling of the Authorization Object can me performed in code. User Master Record Role Authorization Object Object ClassAuthorization Object Authorization Object Role Role Authorization 
Profile 
© 2006 SAP AG 3
Scenario 
We will be using table “TSTC” – Transaction Codes, which should exist in any R/3 version. The screen shots are taken from the SAP Netweaver 2004s Release 7. 
We will demonstrate the selection of a record from this table, and due to the privileges revoked from the user, via an Authorization Object, the selection will be denied. 
We will create a specific Authorization Field for which the check will be made against. 
Then the Authorization Class and Authorization Object, in which the Field previously mentioned is added. 
A new Role and Profile will contain the actual Authorization for data. 
The Role will be assigned to the User Master Data. 
Finally the Authorization Object will be called in Code. © 2006 SAP AG 4
Create Authorization Field 
Transaction – SU20 
Create a new Authorization Field by clicking on the Create button. 
Enter “ZTCODE” and “TCODE” in the Field Name and Data Element, then Enter. 
Notice the “Use in Authorization Objects” area at the bottom of the display. 
Naturally, as we have just created this Field, it is not yet utilized in any Authorization Object. 
Save, a “Local Object” will suffice. 
The Field has now been created for use in any Authorization Object. 
© 2006 SAP AG 5
Create Authorization Class & Object 
Transaction – SU21 
Create a new Authorization Class (Object Class) by clicking on the Create button’s drop down icon, then select “Object C 
description and Save. 
Authorization Object. 
Object Class, and performsimilar action to before. Click on the Create buttodrop down, this time selecting “AuthorizatioObject”. 
© 2006 SAP AG 6
In the Authorization Object’s create screen, enter a Name, and description. 
Under the section “Authorization fields” enter two Field names. One being “ACTVT”, this is going to be responsible for the activities that will be permissible, and the other “ZTCODE” which is the Authorization Field, created earlier. 
Note: If a suitable Authorization Field already exists, it is possible to re-use it. However, for this example, we are assuming it did not, to give exposure to all necessary tasks involved when dealing with Authorization Objects. 
Be careful when navigating this screen, as it is a bit buggy. 
Now press the “Permitted activities” button, at the bottom of the Create Authorization Object screen, to begin configuring what actions can be taken against our new field ZTCODE. 
Save when prompted. 
At the next popup, simply press the tick, button to continue. 
Now we should be at the Define Values for the ACTVT field, where we will select 01, 02, and 03. 
Save and exit. 
All out Authorization Objects have now been created. Back out ALL THE WAY and check the creation and configuration in display mode. 
© 2006 SAP AG 7
Having assigned the Authorization Field to the Authorization Object just created. Return back to the Authorization Field – SU20, and check that the Field is actually assigned. 
Double click in the “ZTCODE” Authorization Field line 
On the next screen in the “Use in Authorization Objects” section, see the assignment. 
© 2006 SAP AG 8
Create Role, Profile & Authorization 
Transaction – PFCG 
We now have to create a Role, in which a new Profile will be added, and also an Authorization will be added that is responsible for permitting activities against specific data(fields) in the database – the actual authorization. 
Enter a Role name and press the create Role button, then supply a description and Save. 
On the Authorizations tab, in the “Maintain Authorization Data and Generate Profiles” area, press the “Change Authorization Data” button. 
On the next popup screen – “Choose Template”, select the “Do not select templates” option. 
© 2006 SAP AG 9
We are now in the Authorizations area where we will add specific activities to field data. 
Press the button “Manually”, ( Ctrl + Shift + F9 ) and enter the Authorization Object “Z_TCODE” created earlier. Select the Tick button to continue. 
Expand all nodes. 
Press the edit i 
Select all thre 
S 
No 
a 
© 2006 SAP AG 10
This current Authorization will permit a Create, C 
w 
Generate the Authorization using the generation 
A 
w 
R 
screen, and notice that we now have a Profile assigned to our Role, in the zation Profile” area. 
© 2006 SAP AG 11
Assign Role to User 
Transaction – SU01 
Note: It is not in scope to explain how to create a user, so either, create a suitable user now, or select an appropriate one, so that the Role can be assigned. Also, make sure the user is able to execute a program in SE38, as this is how the Authorization will be tested and demonstrated. 
Choose the User, and in Edit mode, select the Roles tab. 
Assign the Role recently created, press Enter and Save. 
Note: If the User is currently logged on, the User will have to log off and on again before the new Role assignment can be utilized. 
© 2006 SAP AG 12
Code the Authorization Check 
Create the program as seen below to test the Authorization. 
Note the Authorization check with the syntax beginning AUTHORITY-CHECK and the checking of the sy-subrc. Also, the ‘03’ literal that is being passed into the Object check field “ACTVT” which denotes a “read”, and the p_tcode parameter being passed into the Object check field “ZTCODE” which represents the actual data, wishing to “read”. 
REPORT zauth_check_demo. 
DATA: wa_tstc TYPE tstc. 
PARAMETERS: p_tcode TYPE tcode. 
AUTHORITY-CHECK OBJECT 'Z_TCODE' 
ID 'ACTVT' FIELD '03' " read access 
ID 'ZTCODE' FIELD p_tcode. " actual value 
IF sy-subrc EQ 0. " check authorization 
* fetch record 
SELECT SINGLE * 
FROM tstc 
INTO wa_tstc 
WHERE tcode EQ p_tcode. 
WRITE:/ wa_tstc-tcode, 
wa_tstc-pgmna, 
wa_tstc-dypno, 
wa_tstc-menue, 
wa_tstc-cinfo, 
wa_tstc-arbgb. 
ELSE. 
* bad authorization 
WRITE:/ 'Bad Authorization'. 
ENDIF. 
© 2006 SAP AG 13
Testing 
Transaction – SE38 with appropriate Test User, that has been given the Role previously created. 
Execute the program above, in this case ZAUTH_CHECK_DEMO. 
Enter an permitted value and run the program. 
Result 
Now enter any other value, and see the difference 
Result 
© 2006 SAP AG 14
Copyright 
© Copyright 2006 SAP AG. All rights reserved. 
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. 
Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. 
Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. 
IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix, i5/OS, POWER, POWER5, OpenPower and PowerPC are trademarks or registered trademarks of IBM Corporation. 
Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated in the United States and/or other countries. 
Oracle is a registered trademark of Oracle Corporation. 
UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. 
Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. 
HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology. 
Java is a registered trademark of Sun Microsystems, Inc. 
JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. 
MaxDB is a trademark of MySQL AB, Sweden. 
SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. 
These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty. 
These materials are provided “as is” without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. 
SAP shall not be liable for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. 
SAP does not warrant the accuracy or completeness of the information, text, graphics, links or other items contained within these materials. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third party web pages nor provide any warranty whatsoever relating to third party web pages. 
Any software coding and/or code lines/strings (“Code”) included in this documentation are only examples and are not intended to be used in a productive system environment. The Code is only intended better explain and visualize the syntax and phrasing rules of certain coding. SAP does not warrant the correctness and completeness of the Code given herein, and SAP shall not be liable for errors or damages caused by the usage of the Code, except if such damages were caused by SAP intentionally or grossly negligent. 
© 2006 SAP AG 15
Ad

More Related Content

Similar to Authorization objects a simple guide.doc (1) (20)

CATS Approval.pdf
CATS Approval.pdfCATS Approval.pdf
CATS Approval.pdf
ssusereb0ae41
 
]project-open[ Workflow Developer Tutorial Part 3
]project-open[ Workflow Developer Tutorial Part 3]project-open[ Workflow Developer Tutorial Part 3
]project-open[ Workflow Developer Tutorial Part 3
Klaus Hofeditz
 
Build your first rpa bot using IBM RPA automation
Build your first rpa bot using IBM RPA automationBuild your first rpa bot using IBM RPA automation
Build your first rpa bot using IBM RPA automation
Winton Winton
 
Su24
Su24Su24
Su24
Venkata Giridhar
 
Oracle BPM 11g Lesson 2
Oracle BPM 11g Lesson 2Oracle BPM 11g Lesson 2
Oracle BPM 11g Lesson 2
Rakesh Gujjarlapudi
 
Sales force class-3
Sales force class-3Sales force class-3
Sales force class-3
Amit Sharma
 
Df12 Performance Tuning
Df12 Performance TuningDf12 Performance Tuning
Df12 Performance Tuning
Stuart Bernstein
 
Microsoft identity platform and device authorization flow to use azure servic...
Microsoft identity platform and device authorization flow to use azure servic...Microsoft identity platform and device authorization flow to use azure servic...
Microsoft identity platform and device authorization flow to use azure servic...
Sunil kumar Mohanty
 
A Deep Dive into Exploiting SaaS-Based Company Partnership Management Dashboa...
A Deep Dive into Exploiting SaaS-Based Company Partnership Management Dashboa...A Deep Dive into Exploiting SaaS-Based Company Partnership Management Dashboa...
A Deep Dive into Exploiting SaaS-Based Company Partnership Management Dashboa...
HakTrak Cybersecurity Squad
 
Hands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordDataHands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordData
Lynda Kane
 
What is sap security
What is sap securityWhat is sap security
What is sap security
grconlinetraining
 
SAP Security important Questions
SAP Security important QuestionsSAP Security important Questions
SAP Security important Questions
Ragu M
 
Getting Started with Nastel AutoPilot Business Views and Policies - a Tutorial
Getting Started with Nastel AutoPilot Business Views and Policies - a TutorialGetting Started with Nastel AutoPilot Business Views and Policies - a Tutorial
Getting Started with Nastel AutoPilot Business Views and Policies - a Tutorial
Sam Garforth
 
Intellect_Integration_-_Web_Integration_Methods.pdf
Intellect_Integration_-_Web_Integration_Methods.pdfIntellect_Integration_-_Web_Integration_Methods.pdf
Intellect_Integration_-_Web_Integration_Methods.pdf
Modern Modular NY.
 
Basis problems1
Basis problems1Basis problems1
Basis problems1
basisnarayan
 
Lab StepsSTEP 1 Login Form1. In order to do this lab, we need.docx
Lab StepsSTEP 1 Login Form1. In order to do this lab, we need.docxLab StepsSTEP 1 Login Form1. In order to do this lab, we need.docx
Lab StepsSTEP 1 Login Form1. In order to do this lab, we need.docx
smile790243
 
165373293 sap-security-q
165373293 sap-security-q165373293 sap-security-q
165373293 sap-security-q
Anywhere Gondodza SAP.GRC.FI.B.COM.ACC.HONS (MSU)
 
Step by step exercise for bw 365
Step by step exercise for bw 365Step by step exercise for bw 365
Step by step exercise for bw 365
Siva Pradeep Bolisetti
 
Open microsoft visual studio/tutorialoutlet
Open microsoft visual studio/tutorialoutletOpen microsoft visual studio/tutorialoutlet
Open microsoft visual studio/tutorialoutlet
Mitchinson
 
Sap business-object-universe-idt-lab-i
Sap business-object-universe-idt-lab-iSap business-object-universe-idt-lab-i
Sap business-object-universe-idt-lab-i
Amit Sharma
 
]project-open[ Workflow Developer Tutorial Part 3
]project-open[ Workflow Developer Tutorial Part 3]project-open[ Workflow Developer Tutorial Part 3
]project-open[ Workflow Developer Tutorial Part 3
Klaus Hofeditz
 
Build your first rpa bot using IBM RPA automation
Build your first rpa bot using IBM RPA automationBuild your first rpa bot using IBM RPA automation
Build your first rpa bot using IBM RPA automation
Winton Winton
 
Sales force class-3
Sales force class-3Sales force class-3
Sales force class-3
Amit Sharma
 
Microsoft identity platform and device authorization flow to use azure servic...
Microsoft identity platform and device authorization flow to use azure servic...Microsoft identity platform and device authorization flow to use azure servic...
Microsoft identity platform and device authorization flow to use azure servic...
Sunil kumar Mohanty
 
A Deep Dive into Exploiting SaaS-Based Company Partnership Management Dashboa...
A Deep Dive into Exploiting SaaS-Based Company Partnership Management Dashboa...A Deep Dive into Exploiting SaaS-Based Company Partnership Management Dashboa...
A Deep Dive into Exploiting SaaS-Based Company Partnership Management Dashboa...
HakTrak Cybersecurity Squad
 
Hands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordDataHands On: Create a Lightning Aura Component with force:RecordData
Hands On: Create a Lightning Aura Component with force:RecordData
Lynda Kane
 
SAP Security important Questions
SAP Security important QuestionsSAP Security important Questions
SAP Security important Questions
Ragu M
 
Getting Started with Nastel AutoPilot Business Views and Policies - a Tutorial
Getting Started with Nastel AutoPilot Business Views and Policies - a TutorialGetting Started with Nastel AutoPilot Business Views and Policies - a Tutorial
Getting Started with Nastel AutoPilot Business Views and Policies - a Tutorial
Sam Garforth
 
Intellect_Integration_-_Web_Integration_Methods.pdf
Intellect_Integration_-_Web_Integration_Methods.pdfIntellect_Integration_-_Web_Integration_Methods.pdf
Intellect_Integration_-_Web_Integration_Methods.pdf
Modern Modular NY.
 
Lab StepsSTEP 1 Login Form1. In order to do this lab, we need.docx
Lab StepsSTEP 1 Login Form1. In order to do this lab, we need.docxLab StepsSTEP 1 Login Form1. In order to do this lab, we need.docx
Lab StepsSTEP 1 Login Form1. In order to do this lab, we need.docx
smile790243
 
Open microsoft visual studio/tutorialoutlet
Open microsoft visual studio/tutorialoutletOpen microsoft visual studio/tutorialoutlet
Open microsoft visual studio/tutorialoutlet
Mitchinson
 
Sap business-object-universe-idt-lab-i
Sap business-object-universe-idt-lab-iSap business-object-universe-idt-lab-i
Sap business-object-universe-idt-lab-i
Amit Sharma
 

Recently uploaded (20)

antiquity of writing in ancient India- literary & archaeological evidence
antiquity of writing in ancient India- literary & archaeological evidenceantiquity of writing in ancient India- literary & archaeological evidence
antiquity of writing in ancient India- literary & archaeological evidence
PrachiSontakke5
 
Ajanta Paintings: Study as a Source of History
Ajanta Paintings: Study as a Source of HistoryAjanta Paintings: Study as a Source of History
Ajanta Paintings: Study as a Source of History
Virag Sontakke
 
How to Configure Scheduled Actions in odoo 18
How to Configure Scheduled Actions in odoo 18How to Configure Scheduled Actions in odoo 18
How to Configure Scheduled Actions in odoo 18
Celine George
 
Rock Art As a Source of Ancient Indian History
Rock Art As a Source of Ancient Indian HistoryRock Art As a Source of Ancient Indian History
Rock Art As a Source of Ancient Indian History
Virag Sontakke
 
Form View Attributes in Odoo 18 - Odoo Slides
Form View Attributes in Odoo 18 - Odoo SlidesForm View Attributes in Odoo 18 - Odoo Slides
Form View Attributes in Odoo 18 - Odoo Slides
Celine George
 
Bridging the Transit Gap: Equity Drive Feeder Bus Design for Southeast Brooklyn
Bridging the Transit Gap: Equity Drive Feeder Bus Design for Southeast BrooklynBridging the Transit Gap: Equity Drive Feeder Bus Design for Southeast Brooklyn
Bridging the Transit Gap: Equity Drive Feeder Bus Design for Southeast Brooklyn
i4jd41bk
 
*"Sensing the World: Insect Sensory Systems"*
*"Sensing the World: Insect Sensory Systems"**"Sensing the World: Insect Sensory Systems"*
*"Sensing the World: Insect Sensory Systems"*
Arshad Shaikh
 
How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18
Celine George
 
How to Create Kanban View in Odoo 18 - Odoo Slides
How to Create Kanban View in Odoo 18 - Odoo SlidesHow to Create Kanban View in Odoo 18 - Odoo Slides
How to Create Kanban View in Odoo 18 - Odoo Slides
Celine George
 
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Leonel Morgado
 
How to Manage Upselling in Odoo 18 Sales
How to Manage Upselling in Odoo 18 SalesHow to Manage Upselling in Odoo 18 Sales
How to Manage Upselling in Odoo 18 Sales
Celine George
 
PHYSIOLOGY MCQS By DR. NASIR MUSTAFA (PHYSIOLOGY)
PHYSIOLOGY MCQS By DR. NASIR MUSTAFA (PHYSIOLOGY)PHYSIOLOGY MCQS By DR. NASIR MUSTAFA (PHYSIOLOGY)
PHYSIOLOGY MCQS By DR. NASIR MUSTAFA (PHYSIOLOGY)
Dr. Nasir Mustafa
 
Cultivation Practice of Garlic in Nepal.pptx
Cultivation Practice of Garlic in Nepal.pptxCultivation Practice of Garlic in Nepal.pptx
Cultivation Practice of Garlic in Nepal.pptx
UmeshTimilsina1
 
*"The Segmented Blueprint: Unlocking Insect Body Architecture"*.pptx
*"The Segmented Blueprint: Unlocking Insect Body Architecture"*.pptx*"The Segmented Blueprint: Unlocking Insect Body Architecture"*.pptx
*"The Segmented Blueprint: Unlocking Insect Body Architecture"*.pptx
Arshad Shaikh
 
E-Filing_of_Income_Tax.pptx and concept of form 26AS
E-Filing_of_Income_Tax.pptx and concept of form 26ASE-Filing_of_Income_Tax.pptx and concept of form 26AS
E-Filing_of_Income_Tax.pptx and concept of form 26AS
Abinash Palangdar
 
The role of wall art in interior designing
The role of wall art in interior designingThe role of wall art in interior designing
The role of wall art in interior designing
meghaark2110
 
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
Celine George
 
2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx
mansk2
 
How to Manage Amounts in Local Currency in Odoo 18 Purchase
How to Manage Amounts in Local Currency in Odoo 18 PurchaseHow to Manage Amounts in Local Currency in Odoo 18 Purchase
How to Manage Amounts in Local Currency in Odoo 18 Purchase
Celine George
 
APGAR SCORE BY sweety Tamanna Mahapatra MSc Pediatric
APGAR SCORE  BY sweety Tamanna Mahapatra MSc PediatricAPGAR SCORE  BY sweety Tamanna Mahapatra MSc Pediatric
APGAR SCORE BY sweety Tamanna Mahapatra MSc Pediatric
SweetytamannaMohapat
 
antiquity of writing in ancient India- literary & archaeological evidence
antiquity of writing in ancient India- literary & archaeological evidenceantiquity of writing in ancient India- literary & archaeological evidence
antiquity of writing in ancient India- literary & archaeological evidence
PrachiSontakke5
 
Ajanta Paintings: Study as a Source of History
Ajanta Paintings: Study as a Source of HistoryAjanta Paintings: Study as a Source of History
Ajanta Paintings: Study as a Source of History
Virag Sontakke
 
How to Configure Scheduled Actions in odoo 18
How to Configure Scheduled Actions in odoo 18How to Configure Scheduled Actions in odoo 18
How to Configure Scheduled Actions in odoo 18
Celine George
 
Rock Art As a Source of Ancient Indian History
Rock Art As a Source of Ancient Indian HistoryRock Art As a Source of Ancient Indian History
Rock Art As a Source of Ancient Indian History
Virag Sontakke
 
Form View Attributes in Odoo 18 - Odoo Slides
Form View Attributes in Odoo 18 - Odoo SlidesForm View Attributes in Odoo 18 - Odoo Slides
Form View Attributes in Odoo 18 - Odoo Slides
Celine George
 
Bridging the Transit Gap: Equity Drive Feeder Bus Design for Southeast Brooklyn
Bridging the Transit Gap: Equity Drive Feeder Bus Design for Southeast BrooklynBridging the Transit Gap: Equity Drive Feeder Bus Design for Southeast Brooklyn
Bridging the Transit Gap: Equity Drive Feeder Bus Design for Southeast Brooklyn
i4jd41bk
 
*"Sensing the World: Insect Sensory Systems"*
*"Sensing the World: Insect Sensory Systems"**"Sensing the World: Insect Sensory Systems"*
*"Sensing the World: Insect Sensory Systems"*
Arshad Shaikh
 
How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18
Celine George
 
How to Create Kanban View in Odoo 18 - Odoo Slides
How to Create Kanban View in Odoo 18 - Odoo SlidesHow to Create Kanban View in Odoo 18 - Odoo Slides
How to Create Kanban View in Odoo 18 - Odoo Slides
Celine George
 
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Leonel Morgado
 
How to Manage Upselling in Odoo 18 Sales
How to Manage Upselling in Odoo 18 SalesHow to Manage Upselling in Odoo 18 Sales
How to Manage Upselling in Odoo 18 Sales
Celine George
 
PHYSIOLOGY MCQS By DR. NASIR MUSTAFA (PHYSIOLOGY)
PHYSIOLOGY MCQS By DR. NASIR MUSTAFA (PHYSIOLOGY)PHYSIOLOGY MCQS By DR. NASIR MUSTAFA (PHYSIOLOGY)
PHYSIOLOGY MCQS By DR. NASIR MUSTAFA (PHYSIOLOGY)
Dr. Nasir Mustafa
 
Cultivation Practice of Garlic in Nepal.pptx
Cultivation Practice of Garlic in Nepal.pptxCultivation Practice of Garlic in Nepal.pptx
Cultivation Practice of Garlic in Nepal.pptx
UmeshTimilsina1
 
*"The Segmented Blueprint: Unlocking Insect Body Architecture"*.pptx
*"The Segmented Blueprint: Unlocking Insect Body Architecture"*.pptx*"The Segmented Blueprint: Unlocking Insect Body Architecture"*.pptx
*"The Segmented Blueprint: Unlocking Insect Body Architecture"*.pptx
Arshad Shaikh
 
E-Filing_of_Income_Tax.pptx and concept of form 26AS
E-Filing_of_Income_Tax.pptx and concept of form 26ASE-Filing_of_Income_Tax.pptx and concept of form 26AS
E-Filing_of_Income_Tax.pptx and concept of form 26AS
Abinash Palangdar
 
The role of wall art in interior designing
The role of wall art in interior designingThe role of wall art in interior designing
The role of wall art in interior designing
meghaark2110
 
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
Celine George
 
2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx
mansk2
 
How to Manage Amounts in Local Currency in Odoo 18 Purchase
How to Manage Amounts in Local Currency in Odoo 18 PurchaseHow to Manage Amounts in Local Currency in Odoo 18 Purchase
How to Manage Amounts in Local Currency in Odoo 18 Purchase
Celine George
 
APGAR SCORE BY sweety Tamanna Mahapatra MSc Pediatric
APGAR SCORE  BY sweety Tamanna Mahapatra MSc PediatricAPGAR SCORE  BY sweety Tamanna Mahapatra MSc Pediatric
APGAR SCORE BY sweety Tamanna Mahapatra MSc Pediatric
SweetytamannaMohapat
 
Ad

Authorization objects a simple guide.doc (1)

  • 1. SDN Contribution Authorization Objects – A Simple Guide Applies to: Netweaver 2004s Web Application Server SPS7 Summary This guide is intended to demonstrate how to create and use the Authorization Concept in the most simplest of conditions. It is based on the Netweaver Web Application Server, and will utilize a table available in all R/3 systems. Author(s): Glen Spalding Company: gingle Ltd Created on: 24th May 2006 Author Bio There did not appear to be any simple guide and explanation on how to create authorizations in the most simplest manner. Therefore, I thought I would create this basic guide that, I hope, explains the main principles and tasks needed for the beginner. This Authorization Object method should only be utilized in the most basic of uses. © 2006 SAP AG 1
  • 2. Table of Contents Introduction......................................................................................................................................3 Scenario...........................................................................................................................................4 Create Authorization Field...............................................................................................................5 Create Authorization Class & Object...............................................................................................6 Create Role, Profile & Authorization................................................................................................9 Assign Role to User.......................................................................................................................12 Code the Authorization Check.......................................................................................................13 Testing...........................................................................................................................................14 Copyright........................................................................................................................................15 © 2006 SAP AG 2
  • 3. Introduction The Authorization Object mechanism is used to inspect the current user’s privileges for specific data selection and activities from within a program. An Object Class contains one or more Authorization Objects. The Authorization Object is where Permitted Activity configurations are performed against specific fields. E.g. Change (being the activity) the material’s text – MAKTX (being the specific field), or Read (being the activity) a certain Customer (using Customer Number – KUNNR, as the specific field). Before a User can be granted permission by the Authorization Object, the User’s Master Record is assigned a Role, which includes a Profile. The Profile contains what is simply called the Authorization and is where the specific data for the Authorization Object’s field is assigned to the configured Permitted Activity. E.g. Allow changes to any Material Text, or read Customers between the ranges “AA100” & “BB999”. Finally the calling of the Authorization Object can me performed in code. User Master Record Role Authorization Object Object ClassAuthorization Object Authorization Object Role Role Authorization Profile © 2006 SAP AG 3
  • 4. Scenario We will be using table “TSTC” – Transaction Codes, which should exist in any R/3 version. The screen shots are taken from the SAP Netweaver 2004s Release 7. We will demonstrate the selection of a record from this table, and due to the privileges revoked from the user, via an Authorization Object, the selection will be denied. We will create a specific Authorization Field for which the check will be made against. Then the Authorization Class and Authorization Object, in which the Field previously mentioned is added. A new Role and Profile will contain the actual Authorization for data. The Role will be assigned to the User Master Data. Finally the Authorization Object will be called in Code. © 2006 SAP AG 4
  • 5. Create Authorization Field Transaction – SU20 Create a new Authorization Field by clicking on the Create button. Enter “ZTCODE” and “TCODE” in the Field Name and Data Element, then Enter. Notice the “Use in Authorization Objects” area at the bottom of the display. Naturally, as we have just created this Field, it is not yet utilized in any Authorization Object. Save, a “Local Object” will suffice. The Field has now been created for use in any Authorization Object. © 2006 SAP AG 5
  • 6. Create Authorization Class & Object Transaction – SU21 Create a new Authorization Class (Object Class) by clicking on the Create button’s drop down icon, then select “Object C description and Save. Authorization Object. Object Class, and performsimilar action to before. Click on the Create buttodrop down, this time selecting “AuthorizatioObject”. © 2006 SAP AG 6
  • 7. In the Authorization Object’s create screen, enter a Name, and description. Under the section “Authorization fields” enter two Field names. One being “ACTVT”, this is going to be responsible for the activities that will be permissible, and the other “ZTCODE” which is the Authorization Field, created earlier. Note: If a suitable Authorization Field already exists, it is possible to re-use it. However, for this example, we are assuming it did not, to give exposure to all necessary tasks involved when dealing with Authorization Objects. Be careful when navigating this screen, as it is a bit buggy. Now press the “Permitted activities” button, at the bottom of the Create Authorization Object screen, to begin configuring what actions can be taken against our new field ZTCODE. Save when prompted. At the next popup, simply press the tick, button to continue. Now we should be at the Define Values for the ACTVT field, where we will select 01, 02, and 03. Save and exit. All out Authorization Objects have now been created. Back out ALL THE WAY and check the creation and configuration in display mode. © 2006 SAP AG 7
  • 8. Having assigned the Authorization Field to the Authorization Object just created. Return back to the Authorization Field – SU20, and check that the Field is actually assigned. Double click in the “ZTCODE” Authorization Field line On the next screen in the “Use in Authorization Objects” section, see the assignment. © 2006 SAP AG 8
  • 9. Create Role, Profile & Authorization Transaction – PFCG We now have to create a Role, in which a new Profile will be added, and also an Authorization will be added that is responsible for permitting activities against specific data(fields) in the database – the actual authorization. Enter a Role name and press the create Role button, then supply a description and Save. On the Authorizations tab, in the “Maintain Authorization Data and Generate Profiles” area, press the “Change Authorization Data” button. On the next popup screen – “Choose Template”, select the “Do not select templates” option. © 2006 SAP AG 9
  • 10. We are now in the Authorizations area where we will add specific activities to field data. Press the button “Manually”, ( Ctrl + Shift + F9 ) and enter the Authorization Object “Z_TCODE” created earlier. Select the Tick button to continue. Expand all nodes. Press the edit i Select all thre S No a © 2006 SAP AG 10
  • 11. This current Authorization will permit a Create, C w Generate the Authorization using the generation A w R screen, and notice that we now have a Profile assigned to our Role, in the zation Profile” area. © 2006 SAP AG 11
  • 12. Assign Role to User Transaction – SU01 Note: It is not in scope to explain how to create a user, so either, create a suitable user now, or select an appropriate one, so that the Role can be assigned. Also, make sure the user is able to execute a program in SE38, as this is how the Authorization will be tested and demonstrated. Choose the User, and in Edit mode, select the Roles tab. Assign the Role recently created, press Enter and Save. Note: If the User is currently logged on, the User will have to log off and on again before the new Role assignment can be utilized. © 2006 SAP AG 12
  • 13. Code the Authorization Check Create the program as seen below to test the Authorization. Note the Authorization check with the syntax beginning AUTHORITY-CHECK and the checking of the sy-subrc. Also, the ‘03’ literal that is being passed into the Object check field “ACTVT” which denotes a “read”, and the p_tcode parameter being passed into the Object check field “ZTCODE” which represents the actual data, wishing to “read”. REPORT zauth_check_demo. DATA: wa_tstc TYPE tstc. PARAMETERS: p_tcode TYPE tcode. AUTHORITY-CHECK OBJECT 'Z_TCODE' ID 'ACTVT' FIELD '03' " read access ID 'ZTCODE' FIELD p_tcode. " actual value IF sy-subrc EQ 0. " check authorization * fetch record SELECT SINGLE * FROM tstc INTO wa_tstc WHERE tcode EQ p_tcode. WRITE:/ wa_tstc-tcode, wa_tstc-pgmna, wa_tstc-dypno, wa_tstc-menue, wa_tstc-cinfo, wa_tstc-arbgb. ELSE. * bad authorization WRITE:/ 'Bad Authorization'. ENDIF. © 2006 SAP AG 13
  • 14. Testing Transaction – SE38 with appropriate Test User, that has been given the Role previously created. Execute the program above, in this case ZAUTH_CHECK_DEMO. Enter an permitted value and run the program. Result Now enter any other value, and see the difference Result © 2006 SAP AG 14
  • 15. Copyright © Copyright 2006 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix, i5/OS, POWER, POWER5, OpenPower and PowerPC are trademarks or registered trademarks of IBM Corporation. Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated in the United States and/or other countries. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MaxDB is a trademark of MySQL AB, Sweden. SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty. These materials are provided “as is” without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. SAP shall not be liable for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. SAP does not warrant the accuracy or completeness of the information, text, graphics, links or other items contained within these materials. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third party web pages nor provide any warranty whatsoever relating to third party web pages. Any software coding and/or code lines/strings (“Code”) included in this documentation are only examples and are not intended to be used in a productive system environment. The Code is only intended better explain and visualize the syntax and phrasing rules of certain coding. SAP does not warrant the correctness and completeness of the Code given herein, and SAP shall not be liable for errors or damages caused by the usage of the Code, except if such damages were caused by SAP intentionally or grossly negligent. © 2006 SAP AG 15
  翻译: