What are the required accounts and groups to create?

This topic provides a summary of the user accounts and groups that you create. In a multi-computer deployment, Sitecore Commerce accounts and user groups must be created on the domain controller. In a single-server deployment, you can create these accounts and groups on the computer where Sitecore Commerce is installed. For the internal test and development environments, create the same accounts and groups that you create for the data domain in the production environment.

See the following sections for the account and group requirements for each of these areas:

Commerce Server User and Service Accounts

The following table lists the accounts that you create or that are created when you install prerequisite software. You must create the <CS Installer>, <CS Staging User>, CSLOB, and RunTimeUser accounts before you install Commerce Server. Post-installation, you create SQL Server Login accounts and associate the user accounts together with Windows user groups.

Account name Description Windows user group SQL Server login account
<CS Installer> Account of person logged on to install and configure Commerce Server. Administrator, CatalogAdminGroup, MarketingAdminGroup, OrdersAdminGroup, ProfilesAdminGroup not applicable
<CS Staging User> Account of person who manages Commerce Server Staging. not applicable <CS Staging User>
CSLOB Commerce Server Adapters identity. not applicable not applicable
CSStageSvc Commerce Server Staging (CSS) service identity. CSS_SG, CSS Administrators, CSS Operators CSStageSvc

Commerce Server Groups and Account Assignments

Commerce Server Administrator Groups

Create the four administrator groups summarized in the following table. These represent the minimum number of groups to define. You should create distinct user groups based on your business needs. You then assign these groups to authorization roles through the Authorization Manager. For more information, see Authorizing Users and Groups to Access Web Services.

User group Description Accounts to assign
CatalogAdminGroup Administrator group for the Catalog and Inventory Web services. <CS Installer>, Business User Accounts
MarketingAdminGroup Administrator group for the Marketing Web services. <CS Installer>, Business User Accounts
OrdersAdminGroup Administrator group for the Orders Web services. <CS Installer>, Business User Accounts
ProfilesAdminGroup Administrator group for the Profiles Web services. <CS Installer>, Business User Accounts

For a production deployment, you will want to define more groups in order to take full advantage of the role assignment roles available. For descriptions about each predefined role, see the next section.

Commerce Server Web Services and Account and Application Pool Assignments

Commerce Server installs the Web services when you unpack a site, and selects the Web services to install. Each Commerce Server Web service requires definition of a Windows user account, Windows user group, SQL Server login account, and application pool. The following table summarizes the default names Commerce Server and the installation guide use. You create the Windows user accounts before you unpack a site, and you create the SQL Server login accounts and application pools after you unpack the site.

Commerce Server Web service Default name Windows/SQL Login account Windows user group Application pool
Catalog CatalogWebService CatalogWebSvc CatalogAdminGroup, IIS_IUSRS CatalogWebSvcAppPool
Marketing MarketingWebService MarketingWebSvc MarketingAdminGroup, IIS_IUSRS MarketingWebSvcAppPool
Orders OrdersWebService OrdersWebSvc OrdersAdminGroup, IIS_IUSRS OrdersWebSvcAppPool
Profiles ProfilesWebService ProfilesWebSvc ProfilesAdminGroup, IIS_IUSRS ProfilesWebSvcAppPool

For each site that you unpack, we recommend that you create unique Web service account names, SQL Server login account names, Windows user groups, and application pools. You can share application pools, but we do not recommend this action.

Web Service Administrator Role Assignments

The following table lists the Web services and their corresponding authorization stores and administrator roles. You must assign each Web service account to its corresponding authorization role.

Authorization Store Role Account Assignments
CatalogAuthorizationStore.xml Administrator CatalogWebSvc, <CS Installer>
MarketingAuthorizationStore.xml MarketingAdministrator MarketingWebSvc, <CS Installer>
OrdersAuthorizationStore.xml OrdersAdministrator OrdersWebSvc, <CS Installer>
ProfilesAuthorizationStore.xml ProfileAdministrator ProfilesWebSvc, <CS Installer>

After you assign write permissions to the authorization stores, in order to perform any operation in the Business Management applications, you assign users to the administrator roles for each Web service. By adding <CS Installer> to each administrator role, you can open and use each Business Management application.

BizTalk Adapters Role Assignments

The following table lists the role assignments to which CSLOB, the BizTalk adapters identity, must be added.

Authorization Store Role Description
CatalogAuthorizationStore CatalogAdministrator Gives the catalog adapter permission to import catalog changes and export catalogs.
MarketingAuthorizationStore InventoryAdministrator Gives the inventory adapter permission to import inventory catalog changes and export inventory catalogs.
OrdersAuthorizationStore OrdersAdapter Enables the orders adapter to perform all basic functions, such as Update Purchase Order, Save Purchase Order, Accept Basket, Orders Query, and Orders Export.
ProfilesAuthorizationStore UserObject, ProfileWriter_Adapter Enables the profiles adapter to update profile objects when it uses the following operations: Profile Delete, Profile Update, Profile Import, Profile Query, and Profile Export.

Additional User Groups for Granular Security

The following sections summarize the various authorization roles that are predefined for the Commerce Server systems. For each authorization role of interest, create an associated user group on the domain controller. You can then add business user accounts to the user group.

For each user group you create, you must assign the groups to authorization roles through the Authorization Manager. For more information, see Authorizing Users and Groups to Access Web Services.

Catalog and Inventory Systems

The following table describes the predefined authorization roles for the Catalog System and the Inventory System.

Role Description
CatalogAdministrator Members can manage the Catalog System.
CatalogViewer Members have read access to the Catalog System.
CatalogManager Members can manage all the catalogs in the Catalog System.
SchemaManager Members can manage the catalog and inventory schema, including property, category, and product definitions.
CatalogSetsAdministrator Members can manage all the catalog sets.
CatalogSetsViewer Members can view all the catalog sets in the Catalog System.
InventoryAdministrator Members can manage the Inventory System.
InventoryViewer Members can view all the catalogs in the Inventory System.
InventorySynchronizationManager Members can synchronize the run-time Inventory System with the management system.
Administrator Members can manage the Catalog System and the Inventory System.

Marketing System

The following table describes the predefined authorization roles for the Marketing System.

Role Description
MarketingAdministrator Members have full access to every operation in the Marketing System.
MarketingApprover Members can approve or reject marketing items, such as campaigns, discounts, and expressions.
MarketingAuthor Members can create marketing-related items, including customers, campaigns, discounts, and expressions.
MarketingViewer Members can view and search marketing items, including campaign event logs.
GlobalExpressionAuthor Members can create, edit, and delete global expressions across multiple discounts.
RuntimeSiteManager Members can refresh the Discounts and Advertisements caches of the run-time site.

Orders System

The following table describes the predefined authorization roles for the Orders System.

Role Description
OrdersAdministrator Members can manage data integrity and cleanup issues.
OrdersConfigurationEditor Members can manage orders configuration data for the site.
OrdersViewer Members have read access to view orders.
OrdersAdapter Members can search orders for order processing and updates.

Profiles System

The following table describes the predefined authorization roles for the Profiles System.

Role Description
ProfileAdministrator Members have complete access to the Profiles System.
ProfileWriter_BusinessManager Members of this scope-level role have access to the profile definition within the scope. There are six profile definitions: UserObject, Address, Organization, BlanketPO, CreditCard, and Currency.
ProfileWriter_CSR Members of this scope-level role have access to the profile definition within the scope.
ProfileWriter_Adapter Members of this scope-level role have access to the profile definition within the scope.

Users of the scope-level roles have access only to the profile type within the scope name. For example, members of the ProfileWriter_BusinessManager role in the UserObject scope have access to the UserObject profile definition only. You must add users to each scope-level role individually.

SQL Server Database Instances, Accounts, and Role User Mappings

SQL Server Database Instances Created for Commerce Server

The following table summarizes the Commerce Server databases and default database names that Commerce Server and the installation guide use.

Commerce Server SQL database instance Default database name How the database is created
CS Administration MSCS_Admin Created by the Commerce Server Configuration wizard.
CS Catalog Scratch MSCS_CatalogScratch Created by unpacking the catalog site resource.
Site Catalog <site_name>_productcatalog Created when you unpack the site resource.
Site Marketing <site_name>_marketing Created when you unpack the site resource.
Site Marketing List <site_name>_marketing_lists Created when you unpack the site resource.
Site Profiles <site_name>_profiles Created when you unpack the site resource.
Site Transaction Configuration <site_name>_transactionconfig Created when you unpack the site resource.
Site Transactions <site_name>_transactions Created when you unpack the site resource.

SQL Database Account, Database, and Database Role User Mapping

The following table lists the accounts on the computers that are running SQL Server that you must add to the specified roles. By default, the database names start with StarterSite. However, you might have specified different database names when you unpacked your site.

Database Account Database Roles
CatalogWebSvc MSCS_Admin admin_reader_role, admin_cache_poller_role
MSCS_CatalogScratch db_datareader, db_datawriter, db_ddladmin
StarterSite_ProductCatalog ctlg_CatalogWriterRole, db_datareader, db_datawriter, db_ddladmin, db_securityadmin, Inventory_ReaderRole, Inventory_WriterRole
MarketingWebSvc MSCS_Admin admin_reader_role, admin_cache_poller_role
StarterSite_Marketing mktg_MarketingService_role, mktg_promoCodeGenerator_role
StarterSite_MarketingLists db_owner
StarterSite_ProductCatalog ctlg_catalogReaderRole
StarterSite_Profiles Profile_Reader, Profile_Schema_Reader, ctlg_catalogReaderRole
OrdersWebSvc MSCS_Admin admin_reader_role, admin_cache_poller_role
MSCS_CatalogScratch db_datareader, db_datawriter, db_ddladmin
StarterSite_Marketing mktg_runtime_role
StarterSite_ProductCatalog ctlg_catalogReaderRole, Inventory_ReaderRole
StarterSite_Profiles Profile_Reader, Profile_Schema_Reader
StarterSite_TransactionConfig Orders_Management
StarterSite_Transactions Orders_Management, Orders_Runtime
ProfilesWebSvc MSCS_Admin admin_reader_role, admin_cache_poller_role
StarterSite_Profiles Profile_Schema_Manager, Profile_Runtime, ctlg_CatalogWriterRole
RunTimeUser MSCS_Admin admin_reader_role, admin_cache_poller_role
MSCS_CatalogScratch db_datareader, db_datawriter, db_ddladmin
StarterSite_Marketing mktg_runtime_role
StarterSite_MarketingLists db_datareader
StarterSite_ProductCatalog ctlg_catalogReaderRole, ctlg_CatalogWriterRole, Inventory_RuntimeRole, db_ddladmin, db_securityadmin, Inventory_ReaderRole, Inventory_WriterRole, db_datareader, db_datawriter
StarterSite_Profiles Profile_Schema_Reader, Profile_Runtime
StarterSite_TransactionConfig Orders_Runtime
StarterSite_Transactions Orders_Runtime
CSStageSvc MSCS_Admin admin_reader_role
MSCS_CatalogScratch db_datareader, db_datawriter, db_ddladmin
StarterSite_Marketing db_ddladmin, mktg_staging_role
StarterSite_MarketingLists db_datareader
StarterSite_ProductCatalog ctlg_CatalogWriterRole, db_datareader, db_datawriter, db_ddladmin, db_securityadmin, Inventory_ReaderRole, Inventory_WriterRole
StarterSite_Profiles Profile_Schema_Manager
StarterSite_TransactionConfig Orders_Management
<CS Staging User> MSCS_Admin db_datareader
MSCS_CatalogScratch db_datareader, db_datawriter, db_ddladmin
StarterSite_ProductCatalog ctlg_CatalogWriterRole, Inventory_ReaderRoles