How To Setup NWDI Permissions and Roles
How To Setup NWDI Permissions and Roles
How To Setup NWDI Permissions and Roles
How To…
setup NWDI
Permissions
and Roles
Version 1.20 – April 2007
Applicable Release:
SAP NetWeaver 7.0 - Unified Life_Cycle Management
© Copyright 2007 SAP AG. All rights reserved. contained in this document serves informational
purposes only. National product specifications may vary.
No part of this publication may be reproduced or
transmitted in any form or for any purpose without the These materials are subject to change without notice.
express permission of SAP AG. The information These materials are provided by SAP AG and its affiliated
contained herein may be changed without prior notice. companies ("SAP Group") for informational purposes
only, without representation or warranty of any
Some software products marketed by SAP AG and its kind, and SAP Group shall not be liable for errors or
distributors contain proprietary software components of omissions with respect to the materials. The only
other software vendors. warranties for SAP Group products and services are those
that are set forth in the express warranty statements
Microsoft, Windows, Outlook, and PowerPoint are accompanying such products and services, if any.
registered trademarks of Microsoft Corporation. Nothing herein should be construed as constituting an
additional warranty.
IBM, DB2, DB2 Universal Database, OS/2, Parallel
Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, These materials are provided “as is” without a warranty
iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent of any kind, either express or implied, including but not
Miner, WebSphere, Netfinity, Tivoli, and Informix are limited to, the implied warranties of merchantability,
trademarks or registered trademarks of IBM Corporation fitness for a particular purpose, or non-infringement.
in the United States and/or other countries. SAP shall not be liable for damages of any kind including
without limitation direct, special, indirect, or
Oracle is a registered trademark of Oracle Corporation. consequential damages that may result from the use of
these materials.
UNIX, X/Open, OSF/1, and Motif are registered SAP does not warrant the accuracy or completeness of
trademarks of the Open Group. the information, text, graphics, links or other items
contained within these materials. SAP has no control
Citrix, ICA, Program Neighborhood, MetaFrame, over the information that you may access through the
WinFrame, VideoFrame, and MultiWin are trademarks use of hot links contained in these materials and does not
or registered trademarks of Citrix Systems, Inc. endorse your use of third party web pages nor provide
any warranty whatsoever relating to third party web
HTML, XML, XHTML and W3C are trademarks or pages.
®
registered trademarks of W3C , World Wide Web SAP NetWeaver “How-to” Guides are intended to
Consortium, Massachusetts Institute of Technology. simplify the product implementation. While specific
product features and procedures typically are explained
Java is a registered trademark of Sun Microsystems, Inc. in a practical business context, it is not implied that those
features and procedures are the only approach in solving
JavaScript is a registered trademark of Sun Microsystems, a specific business problem using SAP NetWeaver. Should
Inc., used under license for technology invented and you wish to receive additional information, clarification
implemented by Netscape. or support, please refer to SAP Consulting.
Any software coding and/or code lines / strings (“Code”)
MaxDB is a trademark of MySQL AB, Sweden. included in this documentation are only examples and
are not intended to be used in a productive system
SAP, R/3, mySAP, mySAP.com, xApps, xApp, and other environment. The Code is only intended better explain
SAP products and services mentioned herein as well as and visualize the syntax and phrasing rules of certain
their respective logos are trademarks or registered coding. SAP does not warrant the correctness and
trademarks of SAP AG in Germany and in several other completeness of the Code given herein, and SAP shall
countries all over the world. All other product and not be liable for errors or damages caused by the usage of
service names mentioned are the trademarks of their the Code, except if such damages were caused by SAP
respective companies. Data intentionally or grossly negligent.
1 Scenario......................................................................................................... 2
2 Introduction .................................................................................................... 3
3 Technical mapping......................................................................................... 7
3.1 UME Actions........................................................................................... 7
3.2 J2EE Security Roles ............................................................................... 9
3.3 DTR Permissions.................................................................................... 9
3.4 Track-specific Authorizations................................................................ 12
4 The Step By Step Solution........................................................................... 13
4.1 Check and edit UME settings ............................................................... 13
4.2 Set J2EE Security Roles....................................................................... 16
4.3 Check and edit DTR Permissions ......................................................... 17
-1-
1 Scenario
The SAP NetWeaver Development Infrastructure1 serves as base for realising a
comprehensive software development process, comprising development of several
components, activating components for shared usage, up to consolidation, testing and
deployment.
• All development objects (sources, table definitions, Web Dynpro definitions etc.)
are stored and versioned in the Design Time Repository (DTR)
• Central builds and the resulting archives are provided by the Component Build
Service (CBS)
• The Name Server is the naming authority ensuring unique names (e.g. for
development components (DCs), database tables, Java packages etc.)
• The Change Management Service (CMS) is providing software logistic
functionality and is controlling the development landscape
• The SAP NetWeaver Developer Studio (NWDS) is installed on the developer
desktop and provides an integrated development environment for development
using NWDI
Compare help.sap.com, for a short description of the development steps using NWDI:
http://help.sap.com ÆDocumentation ÆSAP NetWeaver Æ SAP NetWeaver 2004s Æ
English Æ SAP Library
Æ SAP NetWeaver Library
Æ Administrator’s Guide
Æ Technical Operations Manual for SAP NetWeaver
Æ Administration of SAP NetWeaver Systems
Æ AS Java (Application Server for Java)
Æ Software Logistics
Æ Development Infrastructure (DI)
Æ SAP NetWeaver Development Infrastructure
Æ Development Scenarios with the NWDI
The intention of this guide is to show a sample how you can expand the initial security
configuration of the NWDI, which is done by the template installer during the setup
phase, to adapt it to your business needs. With the installation of the usage type DI
(Development Infrastructure) and the post-installation step using the DI template with the
Template Installer, the NWDI is ready to use with a preconfigured track, users, groups
and roles. This guide introduces additional logical roles involved for NWDI based
software development, describes the tasks covered by each role and explains the
needed permissions. Help is given to check and if necessary to adopt the various user,
group and roles settings to your specific installation.
1 For this official name, two abbreviations are currently in use: JDI (Java Development
Infrastructure) and NWDI (NetWeaver Development Infrastructure). Therefore you can find both
abbreviations in parallel.
-2-
2 Introduction
Assume your team wants to extend a Product by a new feature. The initial installation of
NWDI and basic configuration steps are supposed to have been done already. For
implementing the new product feature, a single CMS Track has to pass through. Figure 1
illustrates the activities and attached systems of a CMS Track.
-3-
tested in the Development System, the corresponding Development Components
are released for import in the Consolidation system. The NetWeaver Developer
Studio is the developer’s main tool for these tasks.
• Quality Manager
The quality manager assures that the new product conformsProduct confirms to
the requested quality standards. He is responsible for Product consolidation and
for final approval before product delivery. For approval of the product shipment
the Transport Studio of CMS is used.
Figure 2 assigns the mentioned roles to the process steps while passing a CMS Track.
-4-
The following table describes the tasks for each identified role in more detail. Please
note: The column “Involved systems” summarizes all systems that are called directly as
well as implicitly while processing the tasks. In accordance, the column “needed
privileges” lists privileges needed not only by the role itself but also needed by internal
system users (e.g. service users like NWDI_CMSADM).
2
Note: Using the template installer will pre-configure the Domain ID, which cannot be changed
afterwards.
-5-
test CMS, central access to
development system development
runtime system
release NWDS, CMS Create, release
requests
Transport Access to file system of CMS Æ Transport import in CMS
Manager CMS server Studio systems
Access to SAP Service
Marketplace
Check-in and import
required SCs into
Development System
import into Consolidation
System
Assemble Software
Component version
import into Test System
import into Production
System
Quality tests in Test System appropriate test tool Administration
Manager test CMS, central access to
Development System development
runtime system
Release NWDS, CMS create release
requests
Table 1 Involved systems and necessary privileges
-6-
3 Technical mapping
The NWDI roles and their privileges described in Table 1 must be mapped to technical
permission settings on several levels (UME Actions, J2EE Security Roles, DTR ACLs
and Track-specific ACLs). The following paragraphs give an overview of the settings that
have to be done. Chapter 4 gives a step by step solution for doing it.
Note: Please keep in mind that this guide is based on a single-server installation (all
NWDI components and SLD on a single server). If the NWDI components or the SLD are
distributed on multiple servers a central user administration (CUA) is recommended.
Otherwise you need to setup the same credentials (same user with the same password)
with the appropriate permissions on all systems.
Note: The following permission settings are always based on UME Groups. Depending
on whether an SAP system, LDAP or database is used as user store, users and UME
Groups respectively SAP Roles must be created in different ways. For a detailed
description please see
http://help.sap.com: Æ Documentation ÆSAP NetWeaver Æ SAP NetWeaver 2004s Æ
English Æ SAP Library
Æ SAP NetWeaver Library
Æ SAP NetWeaver Security Guide
Æ User Administration and Authentication
Æ Integration of User Management in Your System Landscape
-7-
NWDI Role User UME Group UME Role UME Actions
Administrator NWDI_ADM NWDI NWDI CBS.Administrator
(default user) .Administrators .Administrator CMS.Administrate
LcrInstanceWriterAll
Member of (default: NWDI NWDI CBS.Developer
development NWDI_DEV) .Developers .Developer (CBS.XDeveloper)
team CMS.Display
CMS.ExportOwn
(CMS.ExportForeign)
LcrInstanceWriterNR
Software NWDI NWDI CBS.Guest
Architect .Architects .Architect CMS.Display
LcrInstanceWriterCR
Landscape NWDI NWDI CMS.ConfigureDomai
Configurator .Configurators .Configurator n
CMS.CreateTrack
CMS.Display
CMS.ModifyTrack
CMS.UserAdmin
LcrInstanceWriterLD
LcrInstanceWriterNR
Transport NWDI NWDI CBS.Administrator
Manager .Operators .Operator CMS.CriticalFunctions
CMS.Display
CMS.Transport
Quality NWDI NWDI CBS.Guest
Manager .QManagers .QManagers CMS.Approve
CMS.Display
CMSAdmin NWDI_ NWDI NWDI CBS.Administrator
(technical CMSADM .CMSAdmins .CMSAdmin
user used by (default user)
CMS)
Table 2 Necessary users, UME Groups, Roles and Actions for NWDI
For the standard workflow, your named users are mapped to the necessary Groups as
needed. Besides this, there are two technical users that are used for special purposes
only; they are not mapped to named users.3
The NWDI_ADM user has all privileges and therefore can perform all tasks in the NWDI.
He is intended to be used for the initial setup of the NWDI and as an emergency user.
For your regular development cycle, you should not use the NWDI_ADM user to ensure
traceability. Instead the usage of dedicated admin users belonging to group
NWDI.Administrators enables you to decouple the J2EE Administrator user from the
applications itself. Furthermore dedicated admin users can be used for delegated
administration of Tracks (see chapter 3.4).
Another unnamed user which is required is the NWDI_CMSADM. This user is not
assigned to a real person, but intended to be used only internally by the CMS. He can
perform all actions in the DTR, CBS, and SLD that are required to configure the NWDI
and operate the CMS. He is also used for intra-component communication between
CBS, DTR and SLD.
3
If you used the Template Installer for the configuration of the NWDI, these users are already
created and assigned to the necessary groups. The settings should be checked either.
-8-
3.2 J2EE Security Roles
For the SLD, it is also necessary to set permissions enabled through J2EE Security
Roles. This has to be done in the Visual Administrator Tool. The permissions have to be
assigned for the application “sap.com/com.sap.lcr*sld”.
Please be aware that you may lock out the user you use to manage permissions, since
permissions are stored as versioned files in the DTR. If this occurs, please refer to the
-9-
section “User Management Steps after Installation Æ Editing the Emergency User” in the
“Configuring the NWDI User Management” section of the online documentation.
- 10 -
To make the assignment easier, Table 6 shows the privileges per resource.
Note: In order to grant permissions on Track level, you should grant the privileges “write”
and “checkIn” on all inactive Workspaces belonging to this Track. The pattern for the
inactive Workspaces is “/ws/<Trackname>/<SC-name>/<CMS-system>/inactive/”.
It is useful to create a UME Group for each Track and grant the permissions to the group
instead of single users.
This can also be used to prevent developers from accidentally working on the CONS
Development Configuration.
- 11 -
3.4 Track-specific Authorizations
In NetWeaver 7.0 and with NetWeaver’04 SPS15, it is possible to specify NWDI
permissions per CMS track. By assigning authorizations to tracks you define areas of
responsibilities for Administrators or Quality Managers.
Note: To restrict access on the DTR workspaces for developers, please use the DTR
ACLs to control the permissions there. With CMS authorizations, it is only possible to
control transports of Change Request, but not the access to a development
configuration.
- 12 -
4 The Step By Step Solution
This chapter gives instructions to check and if necessary to create the settings described
above, based on an NWDI installed on a single server using the UME as user and group
store.4 For distributed installations or the usage of a central user and/or group
administration, you have to adopt the steps to your needs.
4
The configuration shown applies for SAP NetWeaver 7.0. The user interface for SAP
NetWeaver’ 04 looks different.
- 13 -
Log in to UME User Administration GUI
3. Search for existing http://<hostname>:<port>/useradmin and select Group from the
groups list box. Enter your search criteria and choose Go.
- 14 -
On the right side click the Go button to get a list of all available
users. Select one and choose Add. Finish with Save.
- 15 -
4.2 Set J2EE Security Roles
8. Check and edit Java On the left side, choose Server Æ Services Æ Security
security roles. Provider. Search the component of interest; this is
sap.com\com.sap.lcr*sld in our case (see Figure 4). Then click
on the tab “Security Roles” and choose the security role you
want to assign, e.g. LcrInstanceWriterNR. Search for the user or
group, that should be assigned, e.g. NWDI.Developers. Choose
Add and Save.
- 16 -
Figure 4 Assign security roles using the Visual Administrator
- 17 -
After that, you should be able to connect to the DTR, using the
same context menu. Problems may occur if you already have
created already another client. Check which client is selected for
login (click DTR Æ Select Client). In order to change the login
name, please close and re-open the NetWeaver Developer
Studio.
11. Connect to a In order to manage the permissions for a resource, click the
specific resource context menu of repository browser and choose View
Permissions from the title bar of the Permissions view, choose
Menu and select the URL using View Permissions for URL….
- 18 -
Press OK to confirm the principal.
13. Setting the “Ignore For some resources you should break the inheritance by setting
inheritance” flag the “Ignore inheritance” flag.
Use the “Ignore inheritance” button in the top bar of the
permissions view to set this flag for the selected resource.
14. Save the settings When you are finished with all configuration steps for this
for the folder resource, save the entries by pressing the “Save Changes”
button on the top bar of the permissions view.
15. Repeat steps 11 to Repeat the steps for all resources you want to set permissions
14 for all resources to.
- 19 -
16. Activate your When you are finished with your configuration steps, activate
changes the settings in the DTR. You do this via pressing the Activation
button in the top bar of the permissions view.
- 20 -
www.sdn.sap.com/irj/sdn/howtoguides
- 21 -