Authorizations Overview - Orley House Consulting

advertisement
Authorizations
in SAP
Agenda
•
Governance, Risk and Compliance
•
SAP Authorization Concept
•
User Management
•
Role documentation
•
Troubleshooting Tools
•
SAP Standard Compliance Tools
Governance, Risk and
Compliance
“The relevance of data, or the risk group to which the data belongs, is often
unknown. That is why data remains unprotected.“
(SAP Security and Authorizations - SAP Press)
Key Risk Areas
•
Insufficient functional separation of tasks
•
Missing or partially completed documentation
•
Risks not identified, or inadequately identified
•
Authorization design does not meet requirements
•
User Management incomplete
•
No integrated system dedicated to the management of users and
authorizations
Key Consideration for GRC
• Risk strategy
– Identification of activities that could lead to harm, danger, or loss
• Governance strategy
– "In simple terms Governance is the Set of Processes that keeps the organization alive,
and regulating the internal information flows and decision processes that ensure that its
responses are timely and appropriate“ (Vikas Chauhan, SAP)
• Compliance strategy
– “Compliance is the mechanism that makes governance work. It is compliance with the
organizations own required procedures that enables management of the risks that
endanger the entity. Monitoring and supporting compliance is not just a matter of
keeping the regulators happy; it is the way that the organization monitors and maintains
its health. “(Vikas Chauhan, SAP)
Risk Governance and Compliance
• Recognise and analyse vulnerabilities
• Evaluate data, processes, and systems and need for protection
• Address differences between actual state and target objectives
• Definite user authorizations for data, transactions, and systems with
segregation of responsibilities
• Define administrative processes for managing users and authorisations
• Implement effective change management to provide controlled management of
users and authorizations
• Define monitoring, quality assurance processes and internal controls
Defining Authorizations
• Establish a reliable authorization plan
• Define the user roles that allow you to perform specific tasks in the SAP
System.
• Develop a stable and reliable authorization plan.
• Define procedures for creating and assigning authorizations
Ongoing Definition
• Regularly review the authorization plan to make sure that it continually
applies to your needs.
SAP authorization Concept
Authorization Checks
• All access in SAP is based on the authorization objects that are assigned to the
User who logs on to the system
• Transactions, reports, data tables, programs and activities are protected by
means of authorization checks
• In many SAP modules, transactions are the fundamental building blocks of the
authorization concept.
• SAP HCM is slightly different, as although transaction provide access to the user
interface, data access is controlled via ‘infotypes’
• As well as protecting transactions and their data, transactional authorizations
also restrict organizational and functional elements
Transaction:
Create Material
Transaction code:
MM01
Organizational Restriction:
Company Code
Technical Information
• There is an ABAP program behind every transaction
• Authorization checks are built into the program code
• Programmers commonly use the AUTHORITY-CHECK statement which checks
a specific authorization object at a specific point in the program.
• Authorization objects are used to assign authorizations or restrict access to
transaction codes, activities and data
• To successfully run the program a positive result has to be achieved when the
program is in use
• SAP Systems only allow users to execute transactions or programs if they have
explicitly defined authorizations for the activity.
HR Authorizations
• HR authorizations are built largely around the ‘infotype’ data concept
• Infotypes are data storage areas for HR data
• One transaction potentially gives access to all HR master data (PA30). Unlike
other modules, however, access to the transaction does not grant access to
the database
◦
◦
◦
◦
◦
P_ORGIN – authorizations for HR Master Data in PA
P_ORGINCON – context sensitive authorizations for PA data
PLOG – authorizations for HR Master Data in PD
P_PCLX – authorizations for data stored in clusters
P_PERNR – Personnel Number Check
Structural Authorisations
•
•
Structural Authorizations
–
Assigned to Users in addition to their Role
–
Restrict Users to parts of the Organisation Structure
–
Optional
Structural Authorization with Context
Required where a user has several roles with the Organisation
Example:
–
Time Administrator – updates absence details for own team
–
Training Administrator – updates training records for whole company
SAP Role Concept
Role Concept
The Purpose of Roles
– Allow groups of users with similar access rights to be assigned to the same role,
– Contains screens / transactions and reports in a User Menu
– Contains authorization objects that relate to data that users are permitted to access
The number of Roles defined in an Organisation will depend on:
– Functionality implemented
– Segregation of duties requirements
– Other Governance, Risk and Compliance considerations
Examples
– Payroll Control
– HR Administrator
– Financial Controller
– Audit
Combining Roles
When creating composite roles, SAP will always give the user the highest
authorisation available
• Example:
– Role 1: Read only access to Salary
– Role 2: Maintain access to Salary
– Result: User has Maintain access to Salary
Combining roles can lead to Segregation of Duties issues.
Before adding a role to a user, be sure to understand the implications of the
combination.
Composite Roles
• Composite roles allow you to group together ‘approved’ role combinations.
• Administrators can therefore assign role combinations without having to worry
about whether this will violate the Organisation’s security policy
• Assignment of a number of individual roles also results in the user having
multiple role menu.
• Composite Roles can have their own role menus, allowing consolidation /
removal of duplicates.
Derived Roles
• The concept of ‘Derived Roles’ allows you to have several variations of the same
role
• A ‘parent’ role is created and ‘child’ roles can then be ‘derived’ from that role with
slight variations for ‘Organization level’ objects
• A common example is for a finance role to be created with several variations at
the Company Code Organization level
– Or
• An HR role created with several variations at the Personnel Area Organizational
level
• Changed to the parent role are inherited by the child roles, except for
Organizational level objects, or objects that have been directly changed in the
child role
Role Description
The description tab
should provide a
summary of what the
Role is used for, and a
summary of what
access is granted
Role Menu
The Menu tab shows
the transactions that
have been allocated to
the Role.
CAUTION: Adding a
transaction here will
affect values in the
‘Authorizations’ tab.
Role Authorizations
The Authorizations tab
shows a summary of the
Authorization detail for the
role, including the Profile
Name allocated to the
role.
Clicking on the icons in
the ‘Maintain’ area give
access to the
authorization detail
Authorization Profile
The values in this area are what
control access to transactions
and data.
Authorization objects are
divided into Application areas
Restrictions are set according to
objects and activities
User
The ‘User’ tab shows all
users that have been
allocated this role.
Note: If users are shown
in this tab, and the traffic
light shows ‘red’, you
must conduct a ‘User
Comparison’
User Comparison
• This function runs program PFCG_TIME_DEPENDENCY which ensures that
authorization profiles are in alignment with user master records
• Profiles that are no longer current are removed from the user master records,
and the current profiles are entered.
• User comparison should be carried out If the traffic light on the ‘User
Comparison’ button is red. To carry out user comparison, click on the button.
• You can compare the user master records automatically when you save the role.
To do this, choose Utilities -> Settings and choose the option to compare the
user master records automatically when you save the role.
Structural Authorisations
•
Structural Authorisations
–
Assigned to Users in addition to their Role
–
Restrict Users to parts of the Organisation Structure
–
Optional
Structural Profile Set-up (Transaction OOSP)
Use of Function Modules
Function modules dynamically determines a root object at runtime. No entry needs
to be made in the Object ID field in this case.
Standard Function Modules:
RH_GET_MANAGER_ASSIGNMENT
This function module determines as the root object the organizational unit to which
the user is assigned as manager via relationship A012 (is manager of).
RH_GET_ORG_ASSIGNMENT
This function module determines as the root object the organizational unit to which
the user is assigned organizationally.
Customers can define their own function modules which can dynamically
determine the root object.
Structural Authorization Profile Maintenance
• In the example above, the root object ID is specified as 50000587
• Commonly used objects in Structural Authorisations:
– O – Organization Unit
– S – Position
– P – Person
Structural authorizations can be used to control any PD hierarchy i.e. training and
events, appraisals etc.
Assigning Structural Authorizations (transaction OOSB)
User Management
User Master Record
• User Master Record
–
Required to logon to SAP
• Contains
–
–
–
–
–
–
–
–
Password
Validity
Default settings for date formats, etc.
User Parameters
Roles
Profiles
Groups
Personalization
User Parameters
• User Parameters
– Parameters can be set for users which control default values, screen layout, and
sometimes even access in some transactions
– UGR: HR User Group
◦ Controls screen layout, Menu layout, Personnel Actions list
– CRT: Currency
◦ Default currency
– CAC: Controlling Area
◦ Default Controlling Area
– BUK: Company Code
◦ Default Company Code
Logon and Password Parameters
• All of the following are controlled using system settings:
– Minimum password length (e.g. minimum 8 characters)
– Minimum number of digits/letters/special characters in password (e.g. password must
contain at least one digit)
– Password expiry time (e.g. 30 days)
– Rules for unsuccessful logon attempts (e.g. lock-out after 3 failed attempts)
– Impermissible passwords (e.g. ‘password’)
– Password re-use (e.g. cannot re-use the last five passwords)
– Validity of new passwords
– Validity of reset passwords
Rules for Users
Logging off Inactive Users
• There are logout settings against each SAP system e.g.
– SAP R/3
– Portal
– Solution Manager
• There area also logout settings for individual services
Special Users in SAP
What are Special Users?
– Special users are used to allow a greater level of system
– This may be due to a specific trouble-shooting requirement that requires more access
that would normally be granted
– May be needed to suspend normal segregation of duties under exceptional
circumstances
Why use Special Users?
– Allocation of Special users can be closely time controlled
– Easier to track / audit use of special users than to track the addition of authorisation
rights to an existing user
SAP_ALL
• SAP_ALL is not a role, it is a Authorization Profile
• No ‘normal’ user should have SAP_ALL in a Production environment.
• Roles with similar access to ‘SAP_ALL’ are commonly created for ‘special’ users
that can be allocated in emergencies
SAP_NEW
• SAP_NEW, like SAP_ALL, is an Authorization Profile rather than a role
• A new SAP_NEW profile is provided for each release
• Contains full authorization for any new authorisation check introduced by SAP in
the upgrade
• Commonly assigned to all users after upgrade to ensure that new functionality
can be accessed
• Ideally, however, the authorisations contained in the SAP_NEW single profile
should be distributed to roles and profiles that are used productively
• Once new authorization objects have been distributed, the profile assignment for
SAP_NEW and the SAP_NEW profile can be deleted
Role Assignment
– Direct Assignment
◦ Role assigned to User ID
◦ Changes are manual
Organisation Unit
– Indirect Assignment
Position
◦ Role assigned to position, job or
organisation unit
Role
◦ Changes are automatic
Person
User ID
Indirect Role Assignment I
• Roles are assigned to positions or ‘Jobs’ using infotype 1001 relationship:
– Position / Job > is described by > Role (object type AG)
• Structural Authorisations are assigned to positions or ‘Jobs’ using the ‘PD
Profiles’ infotype (infotype 1017)
• Program RHPROFL0 assigns roles to individuals according to the position that a
user occupies (scheduled background job).
• Result: The user receives authorisations according to the position they occupy.
Indirect Role Assignment II
New Hire / Org
Reassignment
User Name
(infotype 0105)
Position / Job
Assignment
Details
Role
Structural
Authorisation
Person
Program
RHPROFL0
User name
Position / job and
role assignments
RHPROFL0
Role Documentation
Role Definition
The first step in the process is to define the different business roles within the
Organisation.
• These business roles will help define the system access required
• Examples:
– Financial Controller
– HR Administrator
– Payroll Manager
• Each of these roles will have different system access and segregation of duties
requirements
Roles will also be required for implementation and for support
• Examples:
– SAP System Administrator
– User/Role Administrator
– Emergency Access
Role Definition Document (RDD)
Each role requires a written description of
the activities & functions that users with
this role will perform.
This should contain:
– Owners
– Purpose and business processes
– Included access and specific exclusions
– Sign-off
The document should be non-technical to allow end users to understand the
purpose of the role and the access that it grants.
The document should give the information necessary for the technical build, role
testing and role assignment
Documents should be version controlled to allow role changes to be tracked
Role Definition – Technical Detail
Authorisation Object Access e.g. spool list, batch input
Role Menu / Transaction Access
Infotype Access e.g. read only, maintain
Organization Object Access e.g. Company Code, Personnel Area, Employee Group
SAP Troubleshooting tools
SU53
• Standard mechanism for investigating authorization failures
– An administrator can run the transaction for any user
– Output will usually show which authorization object caused the failure
• Limitations:
– Shows the most recent authorization check, so must be run immediately after the
authorization failure
– Only shows the authorization object that caused the failure. Does not show all the
authorizations that would have failed, so it can be laborious working through failures one
by one
– Can give misleading results, depending on the type of failure
ST01 Trace
Setting the Trace
• Restrict the trace to ‘Authorization
Check’
• Add a filter to restrict the trace to
a specific user
• Click on the ‘Trace On’ button
• Click on ‘Trace off’ when the trace
is completed (the system trace
affects system performance)
Trace Analysis
• Ensure that the ‘From’ and ‘To’
fields encompass the time that the
activity was carried out
Trace Display Detail
• In the example, authorization object S_CTS_ADMI was checked.
• RC=0 indicates that the return code was 0 i.e. the authorization check was
successful
• If the RC value is any value other than 0, the authorization check was
unsuccessful i.e. the user did not have the necessary authorizations to carry out
the activity
Transaction SUIM
Role Comparison (RSRUSR050)
SAP Standard Compliance tools
Critical Authorizations
Maintaining Rules
• Maintain critical authorizations
– If you enter a transaction name, the values of the authorization object entered in
transaction maintenance are automatically transferred to the authorization data of the
selected ID
• Maintain Critical Combinations
– Enter critical combinations of the authorizations you have defined in the ‘critical
authorizations’ area
Running the Report
The result lists differ depending on the type of the selection variant:
• For Critical Authorizations
– The selected users are grouped by the IDs of critical authorizations. To check which
critical data is represented by an ID, click on the name of the ID. To analyze the
authorization data of a user master record, select the user by double-clicking it.
– You can use the Profiles and Roles buttons to display lists of profiles and roles assigned
to the selected users.
• For Critical Combinations
– The selected users are grouped by critical combinations. If you select a combination
name, the corresponding critical data is displayed.
– The other functions correspond to those for critical authorizations.
Download