Configure Emergency Access (EAM) in GRC 10
Configuring EAM in GRC 10 isn’t a difficult task, but there are some details you have to take into account. The document “AC 10.0 Pre-Implementation From Post-Installation to First Emergency Access” is useful, but it doesn’t consider all the details. Here I’ll try to give you a complete explanation about how to configure EAM successfully.
In GRC Box, execute transaction SPRO and navigate to here:
The following parameters should be set according to the table:
Recommended value (for initial configuration)
4001‐Default Firefighter Validity Period (Days)
4002‐Send Email Immediately
4003‐Retrieve Change Log
4004‐Retrieve System log
4005‐Retrieve Audit log
4006‐Retrieve OS Command log
4007‐Send Log Report Execution Notification Immediately
4008‐Send FirefightId Login Notification
4009‐Log Report Execution Notification
4010‐Firefighter ID role name
Chose a role name, for example
For a complete description of the above parameters, please refer to the guide:
https://service.sap.com/instguides – > SAP BusinessObjects Governance, Risk and Compliance (GRC) -> Acess Control -> Release 10.0 -> Maintaining Configuration Settings Guide – SAP AC 10.0
You might want to change some of them; the recommended values only serve as a guide for the initial configuration.
Changes in the parameters table will be included in a transport request, you should release the transport to your QA/PROD systems when you finish the EAM tests and adapt the parameters according to your requirements.
Parameter 4010: What’s for?
If you’ve been working with GRC 5.3, this parameter should sound weird to you.
The purpose is to identify to the application that the user who is logging on to the target system is a Firefighter ID. The target system makes a call to the GRC Box and reads this configuration to check if the user has this role assigned to them.
That means that you have to create the role that you’ve set in parameter 4010 in all the target systems with the exact name provided there. Usually, you copy it from the standard SAP_GRC_SPM_FFID (it contains RFC authorizations).
Only the users who have that role assigned in the target system will be available for selection in the GRC Box as Firefighters IDs.
Kindly check note: 1668255 – Firefighter ID role name for Param ID 4010
For more information regarding default roles provided by SAP, please refer to Security Guide available here:
https://service.sap.com/instguides – > SAP BusinessObjects Governance, Risk and Compliance (GRC) -> Acess Control -> Release 10.0 -> Security Guide – SAP Access Control 10.0
Adding connector to the SUPMG Scenario:
At this point you have already created the connectors.
Now you have to link the corresponding connectors to the SUPMG scenario:
Required roles in the GRC Box:
SAP provides standard roles that must be copied to the customer namespace. For this sample configuration you should need at least to create a copy for the following roles and generate the corresponding profiles:
Emergency Access management owner
Emergency Access management controller
Emergency Access management firefighter
Emergency Access management administrator
Gives basic authorizations required for all AC users. You must assign this role to all AC users.
You can just name them as Z_<full standard role name> or use a naming convention according to your company requirements.
CAUTION: Please, follow he instructions provided in tha attachment of note:
There are some changes you have to made to the standard roles and also there’s a complete explanation of the authorization objects.
For more information, kindly refer to the Security Guide (link provided above).
Security considerations for EAM Roles:
Kindly read a specific authorization guide for EAM that is attached to the note:
Note 1663949 – EAM: Authorization Fixes for Central Owners and Reason Codes
and take into account the authorization concept for the roles:
“As per the functionality in AC10, we have concept of role based authorization. If a user is having SAP_GRAC_SUPER_USER_MGMT_OWNER role at the backend, then he should be able to assign any FFID to any Firefighter user.
The user Assigned with the Role of EAM Admin “SAP_GRAC_SUPER_USER_MGMT_ADMIN”
and EAM Owner “SAP_GRAC_SUPER_USER_MGMT_OWNER ” can do all available owner action for all connector.
The Auth. Object used for firefighter Maintenance is GRAC_FFOWN & GRAC_OWNER”
—->>> vote for a simpler way if you disagree with this weird role-based model !! –>>> Simple setting for EAM owner/controller authorization
If you are not going to use ARM workflows and you want to restrict Owners, please have a look at the thread:
(Provided by Akshay Gupta)
Required users in the GRC Box:
In order to show a sample for testing, It’s necessary to create (or use existing ones) three users:
FF_OWNER: This user will serve as owner for the firefighter ID. It should be assigned to the role Z_SAP_GRAC_SUPER_USER_MGMT_OWNER
FF_CONTROL: This is the firefighter controller. You assign Z_SAP_GRAC_SUPER_USER_MGMT_CNTLR.
CAUTION: This user MUST have a valid e-mail address maintained in SU01 if you want the controller to receive notifications via e-mail.
FIREFIGHTER: This is the firefighter user, who will be able to access in the target system with the Firefighter ID. You assign Z_SAP_GRAC_SUPER_USER_MGMT_USER in addition to the base roles. If you don’t assign the base roles you won’t see the user (FIREFIGHTER in this case) available for selection in the Firefighters IDs.
<your user>: The user who is going to perform the configurations, must have at least the role Z_SAP_GRAC_SUPER_USER_MGMT_ADMIN assigned.
In addition to all the mentioned roles above, all users must have the roles Z_SAP_GRAC_NWBC and Z_SAP_GRAC_BASE assigned.
For a theoretical explanation of the users and its responsibilities, refer to https://help.sap.com/saphelp_grcac10/helpdata/en/16/404938695540b398a5e76fe8cfb067/frameset.htm
Required roles in the target system:
In the target system you have to make a copy of the role SAP_GRAC_SPM_FFID and generate the profile.
CAUTION: The name of this role MUST be the same configured in the parameter 4010 in the GRC Box. In this example: Z_SAP_GRC_SPM_FFID.
Required users in the target system:
You have to create a user (FIREFIGHTER_ID) in the target system with the corresponding roles required roles/profiles according to your requirements. In addition you must assign to the FIREFIGHTER_ID the role Z_SAP_GRC_SPM_FFID.
This user should be of type: “Service” as per note 1702439
The following note describes an issue you’ll face with this kind of users: Note 1586989 – Object Services icon not available in Firefighter ID session
I’ll update this document when a specific note for GRC 10 is released regarding this issue.
Take into account this important note for service users: 1945098 – Service users are not considered in decentralized firefighter
Creating central Owners and controllers:
Access to the NWBC: http://<server>:<port>/nwbc/ or execute Tcode NWBC in the GRC Box.
Go to the “Setup” tab and:
Create entries for the Firefighter controller and owner:
Creating reason codes:
You have to create at least one reason code to be able to use the firefighter ID later.
Associate the entry to the corresponding target system.
In accordance with note: 1585079
You have to execute the synchronization Jobs in order to make the FF IDs available in GRC Box for selection:
Please make sure that you have performed following configuration steps:
1. Integration Scenarios are configured as explained in note 1562760
2. Please make sure the Firefighter role is assigned to Firefighter IDs in the corresponding client system and that the same role has been given as parameter value for configuration parameter 4010. Configuration parameters can be configured in the transaction code SPRO => Governance, Risk & Compliance => Access Control => Maintain Configuration Settings
3. Run User/Role/Profile/Auth synchronization jobs. The Link to run these jobs can be found Under transaction code SPRO => Governance, Risk & Compliance => Access Control => Synchronization Jobs.
Once you have executed the Repository Sync job with the corresponding target connector, the FF ID will be available for selection in the GRC Box.
See also Note 1668255
…Once you are done with the above steps, re-run an Incremental/Full User Sync for the Firefighter IDs with the Firefighter Role to be SYNCed into the GRC box.Now re-launch the application via NWBC or Portal and then search for the Firefighter ID and this should be available in Firefighter ID list.
Assign Firefighter IDs to Firefighters
Here you assign the Firefighter ID to the corresponding Firefighters users (one or more)
And in the controller tab set the controller user:
Mass upload of assignments: In case you need to perform an initial load or a mass maintenance you can use one of the programs provided for migration as described here 1744929 – Mass Upload of Assignments for EAM
Also check the following note if you require a mass reassignment, for example, mass change of an owner that is currently assigned to many FF IDs:
Firefighter collector Job:
Execute tx. GRAC_SPM_LOG_SYNC and schedule the log collection periodically as per note: 1617529
Known problems with time zones:
Known problem when connector is set to “*”:
Performance problems :
You’ll find many notes in SAP Marketplace related to performance issues.
Have you lost EAM logs?
If you lost some EAM logs and the data is still available in the plug-in system you can schedule a time-based special sync:
E-mail configuration (Centralized Firefighter):
If you want the controller to receive e-mails (firefighter log on notification and firefighter session details) you have to check the following:
- Make sure your Basis team has properly configured outgoing e-emails from GRC Box (Tx. SCOT)
- Controller notification method was set to: Email (see above)
- SPRO parameters:
4002 Send E-mail Immediately YES
4007 Send Log Report Execution
Notification Immediately YES
4008 Send FirefightID Logon Notification YES
4009 Log Report Execution Notification YES
- Controller user (FF_CONTROL) has “Comm.Method” set to “E-Mail” in SU01 and has a valid e-mail address.
- WF-BATCH User must also have an e-mail address in SU01; otherwise you’ll get the following error in tx. SLG1:
According to the configuration settings guide:
You can change the parameter and use another user to send the e-mails.
After executing the GRAC_SPM_LOG_SYNC_UPDATE, please execute tx. SOST and check if the e-mails were generated (you have to access the firefighter to get the e-mails).
Implement Firefighter user Exit:
Despite the Firefighter ID password is changed by the application each time you start the firefighter (you can check it via change documents in the target system), Firefighter Ids need to be restricted from Logging in into SAP System directly via SAP GUI. For this purpose either we need to create and modify the SAP User Login Exit.
Security Issue???: http://scn.sap.com/thread/3273562
If the user exit is properly implemented you’ll get the following message when trying to log-on directly with a Firefighter ID (or any user assigned to role configured in the parameter 1090 in the plug-in System !!!):
Required RFC connections for EAM:
“Yes it is mandatory to make a trusted relationship so that communication can be established between the GRC system and the plug-in.”
This topic has been discussed here (see comments below). The note is for Centralized FF and true is that it works anyway with non trusted connection. In case of decentralized model the connector is used to retrieve logs, so it doesn’t need to be trusted.
Links to more documentation:
Decentralized firefighting (as in GRC 5.3) is available as of GRC 10.0 SP10
As of SP10, Emergency Access decentralized firefighting features are available.Users can install and use the EAM Launchpad to perform ID-based firefighting directly on plug-in systems. This means that Firefighter session could be started from the plugin system itself without the need to access the GRC Box. This approach was used in GRC 5.3. With GRC 10 SP10 you can chose between centralized or decentralized firefighting.
The most important advantage of decentralized firefighting is that you can continue using firefighter even when the GRC Box is down. In my opinion, it’s also more “user-friendly” since the firefighter doesn’t have to log on to GRC Box in order to start the firefighting session, he/she only needs to execute a transaction in the plugin system. For some companies, the centralized approach is better since the user access to a system (GRC Box) and can start firefighter sessions in multiple systems.
Bottom line, the most important thing is that with SP10 you have to option to choose and below you’ll find information that’ll help you to configure decentralized Firefighting.
The idea of a decentralized firefighting wassubmitted by Daniela Bork on SAP Idea Place: Access Firefighter application locally in AC10
So, if you have a good Idea, please share it with SAP customers and employees in the Idea Place and maybe it becomes a new functionality!
Main documentation can be found in the guide attached to the note: Note 1690964 – Emergency Access Management Overview Documentation
In the GRC Box a new parameter is available and must be set accordingly:
Under transaction SPRO, navigate to here:
And create a new entry for parameter 4015 which has to be set to the value “YES”
Additionally a new synchronization job is available and must be executed in order to synchronize the EAM data from GRC Box to the plug-in system. Remember that configurations (firefighter assignments, controllers, owners, reason codes, etc.) are still maintained in a centralized way, i.e in the GRC Box.
In order to sync this data with the plug-in, a new job is available and can be found here:
In the connector field you have to set the corresponding plug-in connector. In order to keep you plugin system updated with the changes you made in the GRC Box, this report should be scheduled periodically, I think hourly would be fine. In addition, if you have multiple plug-in systems, you should follow the same approach as with the log synch: create individual jobs for each connector instead of a unique job with connector value “*”.
Configuration in the plug-in system
In the plug-in system you’ll find new activities under SPRO:
These activities are described in here: 1804207 – GRC EAM 10.0: Configuration parameters introduced in SP10 for EAM
If you haven’t set the parameter 1000 in the plug-in system, you’ll have to do it in order to use decentralized firefighting, otherwise you’ll get an error message as described here:1800772 – Error ‘No Destination specified’ when using transaction /GRCPI/GRIA_EAM
Then, check the parameter as described below:
If the parameter 1000 isn’t present you have to create it and set the value to an RFC destination pointing to the system itself:
Since this configuration is transported I used to recommend to create a new RFC destination in DEV, QAS and PRD system with the same name, let’s say “GRC_CONNECTOR” and transport the configuration throughout your entire landscape. But nowadays, this parameter is used in the log-in notification e-mail to the controller, and if you are going to use that functionality you might want to create a system name independent connector, i.e. “P01CLNT800” and temporally change the client settings in SCC4 in order to allow the table modification in production systems.
The RFC connection does not require a user. It just has to point to the correct system/instance and a specific client.
Controllers have to be created in the GRC Box as well as with centralized firefighting. In addition these users must exist in the plugin system and have a valid e-mail address because login notifications are sent from plug-in system
With the decentralized scheme it’s not necessary to create the firefighter users in the GRC Box, because they’ll start firefighter transaction from the plug-in system.
E-mail considerations (Decentralized model)
Log-in notifications are sent from the plug-in system (the e-mail is sent with the Firefighter user, so remember to properly configure it in SU01):
But, as with the Centralized approach, Log notifications are sent from GRC Box
These requires a proper mail configuration (tx. SCOT) in both systems: plug-in and GRC Box.
General Note for problems with e-mail in decentralized EAM:
You’ll have to create a new role as a copy of SAP_GRAC_SUPER_USER_MGMT_USER.
You should add the following authorization to it:
For some NW releases ACTVT=02 will be also required. Kindly Check 1753459 – EAM: S_USER_GRP with ACTVT=02 required
This role is assigned to the firefighter users. Bear in mind that these users should not have access to user maintenance transactions, for example SU01. If the firefighter IDs are properly assigned to a group and you can restrict the CLASS field this is not a big issue, since despite they could change the password, they won’t be able to access because the user exit is implemented in order to prevent it.
This extra authorization was documented by SAP in November 2013 in the note:
Previous versions of this post contain this solution as unofficial, but now has become official.
“..The firefighter is not having the authorization to change the passowrd. In centralized firefighting the password is changed by RFC user, but in decentralized version as there is not RFC connection, the password is changed by firefighter. The functionality works as in EAM 5.3….”
In addition to this role you also have to create roles for administrator and owner. Remember that extending the validity period is a new activity available in the plug-in system and owners and administrators should have access to it.
Known Problems ( specific to decentralized EAM)
Specific for CUA systems:Note 1814400 – Decentral call is opening different session in CUA
(Documentation provided by:Guido Stusinsky)
Common Issue: Logon screen appears when starting FF session
It’s possible that we get a log on screen after starting the FF session. This is an incorrect behavior since the user doesn’t need to enter the FF ID password.
Here some tips:
- Check the RFC connection. Perform an authorization check in SM59 to check if the RFC user is OK.
- Check that the RFC is pointing to the correct client.
- Look for dumps in ST22 in the plugin system.
- Check if the FF ID password is productive, reset the password or check with changing the user to type “Service” if you are using “Dialog” user for FF ID.
- CUA Systems: Since EAM requires to change the password of the Firefighter ID each time you log-on from the launchpad, the CUA’s initial password needs to be set as ‘Everywhere’ or ‘Proposal’. Please check point 6 of note 1861981 – Things to check when error message ‘Error in opening RFC destination’ appears in GRAC_SPM
- Have a look at the following notes:
Common Issue II: Logs are not getting captured
If you cannot get the FF Logs don’t get frustrated. This is not unusual. I’ll give some tips (and hopefully you can help in order to add more!):
- General recommendations an errors are included in note: 2029368 – EAM Synchronization Jobs Not Completing Resulted in Data Loss
- It could be to an authorization issue with the RFC user. The usual one is related to object S_TOOLS_EX as described 1916172 – User Action Usage Sync Error – User ID showing as — ? — . Anyway you can trace the RFC user via ST01 in the back-end while performing a log synch and check if you have some authorization issue.
- Clock skew: check the system time in the GRC box and compare with the plugin system. You can do it by check System -> Status at “the same time” in both systems. A clock skew of 1-2 minutes can cause severe problems in the log collection. Time zones do not need to be same… it doesn’t make sense by the way, cause having the GRC box in a Server in India and the ECC in Argentina will be impossible. Even here in South America we usually work with Servers in Chile, Brazil, Argentina and these countries sometimes do not use the same time zone. So…using different time zones has to be a possibility, but you have to be very careful with the clock skews, and if you have differences ask your Server Admins to check it and use a NTP Sever to keep all systems synched.
- Check that you have data in transaction STAD and ST03N in the plugin system for the FF ID you’re trying to get the logs. If necessary check with your Basis team if the Statics are being collected properly.Try executing an action usage synch and check in table GRACACTUSAGE if you have data for the FF ID.
- Remember to schedule the job hourly as per SAP recommendation an not running it just when you want to get the logs. This probably will cause lose of data.
- Check transaction SLG1 in the GRC Box in order to know the result of the collection. Sometimes you get there the exact cause, for example “RFC Timeout”, “RFC error”, etc.
- Check for dumps in the plugin system (transaction ST22) and look for dumps created by the RFC user. TIME_OUT or memory related dumps are usual for large systems.
- SAP has released many enhancements and corrections related to log collection. Just to name one of them that isn’t included in
the latest SP: 1962440 – GRC EAM – Change Log Collection Performance Enhancement but you’ll find others in the marketplace an probably SAP will release more. Make sure you have all the corrections applied.
- A last resort when you have problems with log collection (due to performance) would be to create an index on CDHDR table if the dumps in the back-end are related to some queries with such tables and indicate that. The official note is 1741151 – GRC 10.0 Indexing on CDHDR table in case of time out issue due to huge data Creating an index on such table is something that you have to discuss with your DBA, Basis and Development teams. You have to be very careful with that and you should ask SAP if this is recommended to your scenario and there’re no chances to improve the queries in the code. The table stores change documents and also can be reduced via archiving and this should be also an option to discuss before creating an index.
- SAP released a note recently indicating that mass activities cannot be performed by Firefighters: 1378276 – Mass Transaction support through Firefighter product
Common Issue III: Firefighter sessions remain open
SAP considers that such issue isn’t specific to EAM: 1290018 – Firefighter ID is locked in Superuser Privilege Management
If the session isn’t open (check SM04 in the plugin system) but the FF is still locked in the launchpad it might be due to a known bug, for example:
Co-existence of firefighting models
Both models could be used. The decentralized firefighter configuration doesn’t block the centralized firefighter approach. Since you can start only one firefighter session at a time, you cannot use both at the same time and this is automatically controlled by the application.
The administration functions are maintained in the GRC Box. The decentralized firefighting adds a couple of tasks in the plugin system such as logging notification customizations and the possibility to extend the validity date of firefighters if the GRC Box is down. You’ll find a nice illustration in the guide attached to note mentioned earlier (1690964).
Access to decentralized FF
Some standard roles do not include the correct SPM transaction. In order to start decentralized FF the Firefighter user have to type /n/GRCPI/GRIA_EAM in the transaction bar. If you use other tcodes might see an empty table, and if you don’t use /n you’ll receive a message stating something like it’s impossible to execute this function.
GRC 10.1 – What’s new for EAM??
In GRC 10.1 a new option is included in order to set the Firefighter ID Role (parameter 4010) in a system-independent manner.
“This allows you the flexibility of specifying different firefighter ID roles per plug-in system.
For example, you can specify the following:
For Target Connector ERP_001, the firefighter ID role is Z_SAP_FF01.
For Target Connector ERP_002, the firefighter ID role is Z_SAP_FF02.
If you choose to not use this option, the application uses the role name specified in the configuration parameter Firefighter ID Role Name 4010 for all systems including plug-in systems”
Please share your thoughts, comments or documentation in order to improve this guide.
Well folks, that’s all. Hope this document has helped you to successfully configure GRC EAM 😉