Locked History Actions

MyCommerceServerUtilities

Microsoft Commerce Server 2007 setup is a bit tedious. The install itself isn't bad but the configuration has numerous steps and is error prone. I'm beginning to put together some tools to help alleviate this.

SQL Scripts

This is the beginning of a script that takes care of the creation of SQL logins, accounts and roles configuration.

/*****************************************************************************************

        Setup Windows integrated database logins for all relevent windows accounts

        INSTRUCTIONS:

        1) Perform the following search and replace:

                a) update the machine name by searching/replacing "<THE_SERVER_NAME>"
                b) update the site name by searching/replacing "<Site_Name>"

        2)      If you installed the CS2007 staging component then uncomment the appropriate section toward the
                end of the script.  Otherwise those users/roles will not be setup.


        Note that if you did not take the default naming convention for
        the database tables you may have additional updates/corrections to make.


*****************************************************************************************/


use MSCS_Admin
go

sp_grantlogin '<THE_SERVER_NAME>\ASPNET'
go

sp_grantlogin '<THE_SERVER_NAME>\RunTimeUser'
go

sp_grantlogin '<THE_SERVER_NAME>\CatalogWebSvc'
go

--sp_grantlogin '<THE_SERVER_NAME>\CSDMSvc'
--go

--sp_grantlogin '<THE_SERVER_NAME>\CSStageSvc'
--go

--sp_grantlogin '<THE_SERVER_NAME>\CSSUser (Commerce Server Staging User)
--go

sp_grantlogin '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_grantlogin '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_grantlogin '<THE_SERVER_NAME>\ProfilesWebSvc'
go


--*****************************************************************************************
--      Grant database access and roles for each login
--*****************************************************************************************


-- ****  database account ASPNET ****

use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\ASPNET'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\ASPNET'
go

-- ****  database account CatalogWebSvc ****
use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'admin_reader_role', '<THE_SERVER_NAME>\CatalogWebSvc'
go

use MSCS_CatalogScratch
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'db_datawriter', '<THE_SERVER_NAME>\CatalogWebSvc'
go

use <Site_Name>_ProductCatalog
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'ctlg_CatalogWriterRole', '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'db_securityadmin', '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'Inventory_ReaderRole', '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'Inventory_WriterRole', '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\CatalogWebSvc'
go

sp_addrolemember 'db_datawriter', '<THE_SERVER_NAME>\CatalogWebSvc'
go


-- ****  database account MarketingWebSvc ****
use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_addrolemember 'admin_reader_role', '<THE_SERVER_NAME>\MarketingWebSvc'
go



use <Site_Name>_Marketing
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\MarketingWebSvc'
go


sp_addrolemember 'mktg_MarketingService_role', '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_addrolemember 'mktg_runtime_role', '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_addrolemember 'mktg_dataManager_role', '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_addrolemember 'mktg_promoCodeGenerator_role', '<THE_SERVER_NAME>\MarketingWebSvc'
go


use <Site_Name>_marketing_lists
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_addrolemember 'db_owner', '<THE_SERVER_NAME>\MarketingWebSvc'
go


use <Site_Name>_ProductCatalog
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_addrolemember 'ctlg_catalogReaderRole', '<THE_SERVER_NAME>\MarketingWebSvc'
go



use <Site_Name>_Profiles
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_addrolemember 'Profile_Reader', '<THE_SERVER_NAME>\MarketingWebSvc'
go

sp_addrolemember 'Profile_Schema_Reader', '<THE_SERVER_NAME>\MarketingWebSvc'
go


-- ****  database account OrdersWebSvc ****

use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'admin_reader_role', '<THE_SERVER_NAME>\OrdersWebSvc'
go


use MSCS_CatalogScratch
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'db_datawriter', '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\OrdersWebSvc'
go


use <Site_Name>_Marketing
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'mktg_runtime_role', '<THE_SERVER_NAME>\OrdersWebSvc'
go


use <Site_Name>_ProductCatalog
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'ctlg_catalogReaderRole', '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'Inventory_ReaderRole', '<THE_SERVER_NAME>\OrdersWebSvc'
go


use <Site_Name>_Profiles
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'Profile_Reader', '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'Profile_Schema_Reader', '<THE_SERVER_NAME>\OrdersWebSvc'
go


use <Site_Name>_TransactionConfig
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'Orders_Management', '<THE_SERVER_NAME>\OrdersWebSvc'
go



use <Site_Name>_Transactions
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'Orders_Management', '<THE_SERVER_NAME>\OrdersWebSvc'
go

sp_addrolemember 'Orders_Runtime', '<THE_SERVER_NAME>\OrdersWebSvc'
go


-- ****  database account ProfilesWebSvc ****

use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\ProfilesWebSvc'
go

sp_addrolemember 'admin_reader_role', '<THE_SERVER_NAME>\ProfilesWebSvc'
go

use <Site_Name>_Profiles
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\ProfilesWebSvc'
go

sp_addrolemember 'Profile_Schema_Manager', '<THE_SERVER_NAME>\ProfilesWebSvc'
go

sp_addrolemember 'Profile_Runtime', '<THE_SERVER_NAME>\ProfilesWebSvc'
go



-- ****  database account RunTimeUser ****

use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'admin_reader_role', '<THE_SERVER_NAME>\RunTimeUser'
go



use MSCS_CatalogScratch
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'db_datawriter', '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\RunTimeUser'
go


use <Site_Name>_Marketing
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'mktg_runtime_role', '<THE_SERVER_NAME>\RunTimeUser'
go




use <Site_Name>_Marketing_lists
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\RunTimeUser'
go


use <Site_Name>_ProductCatalog
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'ctlg_catalogReaderRole', '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'Inventory_RuntimeRole', '<THE_SERVER_NAME>\RunTimeUser'
go


use <Site_Name>_Profiles
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'Profile_Schema_Reader', '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'Profile_Runtime', '<THE_SERVER_NAME>\RunTimeUser'


use <Site_Name>_TransactionConfig
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'Orders_Runtime', '<THE_SERVER_NAME>\RunTimeUser'
go


use <Site_Name>_Transactions
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\RunTimeUser'
go

sp_addrolemember 'Orders_Runtime', '<THE_SERVER_NAME>\RunTimeUser'
go

/*
-- ****  database account CSDMSvc ****

use DirectMailer
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSDMSvc'
go

sp_addrolemember 'db_owner', '<THE_SERVER_NAME>\CSDMSvc'
go




use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSDMSvc'
go

sp_addrolemember 'admin_reader_role', '<THE_SERVER_NAME>\CSDMSvc'



use <Site_Name>_Marketing
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSDMSvc'
go

sp_addrolemember 'mktg_directmailer_role', '<THE_SERVER_NAME>\CSDMSvc'


use <Site_Name>_Marketing_lists
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSDMSvc'
go

sp_addrolemember 'db_owner', '<THE_SERVER_NAME>\CSDMSvc'


use <Site_Name>_Profiles
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSDMSvc'
go

sp_addrolemember 'Profile_Schema_Reader', '<THE_SERVER_NAME>\CSDMSvc'
go

sp_addrolemember 'Profile_Reader', '<THE_SERVER_NAME>\CSDMSvc'
go

 -- ****  database account CSStageSvc ****

use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'admin_reader_role', '<THE_SERVER_NAME>\CSStageSvc'
go

use MSCS_CatalogScratch
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'db_datawriter', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\CSStageSvc'
go



use <Site_Name>_Marketing
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'mktg_staging_role', '<THE_SERVER_NAME>\CSStageSvc'
go

use <Site_Name>_Marketing_lists
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'godb_datareader', '<THE_SERVER_NAME>\CSStageSvc'
go

use <Site_Name>_ProductCatalog
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'ctlg_CatalogWriterRole', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'db_datawriter', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'db_securityadmin', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'Inventory_ReaderRole', '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'Inventory_WriterRole', '<THE_SERVER_NAME>\CSStageSvc'
go




use <Site_Name>_Profiles
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'Profile_Schema_Manager', '<THE_SERVER_NAME>\CSStageSvc'
go


use <Site_Name>_TransactionConfig
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSStageSvc'
go

sp_addrolemember 'Orders_Management', '<THE_SERVER_NAME>\CSStageSvc'
go




-- ****  database account CSSUser (<Domain>\<Staging User>) ****

use <Site_Name>_ProductCatalog
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSSUser'
go

sp_addrolemember 'ctlg_CatalogReaderRole', '<THE_SERVER_NAME>\CSSUser'
go

sp_addrolemember 'Inventory_ReaderRole', '<THE_SERVER_NAME>\CSSUser'
go

use MSCS_Admin
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSSUser'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\CSSUser'
go


use MSCS_CatalogScratch
go

sp_grantdbaccess @loginame = '<THE_SERVER_NAME>\CSSUser'
go

sp_addrolemember 'db_datareader', '<THE_SERVER_NAME>\CSSUser'
go

sp_addrolemember 'db_datawriter', '<THE_SERVER_NAME>\CSSUser'
go

sp_addrolemember 'db_ddladmin', '<THE_SERVER_NAME>\CSSUser'
go

*/


CategoryMicrosoftCommerceServer