Fresh Installation - Windows Server 2012 / 2016 / 2019 / 2022
Pre-Installation
Before getting started, please review the SOLO Server System Requirements.
SOLO Server requires a U.S. English version of Windows. Both the Web server and the database server MUST use the generally accepted U.S. date format, MM/DD/YYYY. Using other date formats (for example, the European date format DD/MM/YYYY, where specification of the day precedes the month) will result in date interpretation problems! This means that U.S. English regional settings are required for Windows and the SQL Server instance. Furthermore, the SOLO Server database MUST use SQL_Latin1_General_CP1_CI_AS collation.
Install Dependencies
If installing on Windows Server 2012, prior to installation, SOLO Server requires the following software to be installed on both the web server and the database server.
- .NET Framework 4.6.2
- This is available from Microsoft, and can be found here. Once installed, be sure to run Windows Updates and install any updates related to the .NET framework.
- SQL Server Native Client 11 (Recommended)
- This is available from Microsoft, and can be found here. Note that if you are installing the web server and the SQL server on the same machine, this can also be installed during SQL Server installation by checking the Client Tools Connectivity option on the Feature Selection page of the SQL Server installer. If not installed SOLO Server will revert to using the older OLE DB driver for data access.
There are no dependencies to install on Windows Server 2016 and later as they ship with all required dependencies.
General Web Server Set-up
Before you can begin installing SOLO Server on your web server, you must first make sure the server is properly configured with the Web Server (IIS) role along with several related Role Services. To configure or verify your server configuration, follow these steps:
- Log into the server as an administrator.
- Open Server Manager, and then choose Add Roles and Features from the Manage menu on the upper right to open the Add Roles and Features wizard.
- Click Next on the Before you begin page.
- On the Select installation type page, choose Role-based or feature-based installation and click Next.
- Select the local server on the Select destination server page, and then click Next.
- On the Select server roles page, check the Web Server (IIS) checkbox if not already checked.
- Drill down into the Web Server (IIS) role and check the following Role Services if not already checked:
- Web Server:
- Common HTTP Features:
- Default Document
- HTTP Errors
- Static Content
- HTTP Redirection
- Health and Diagnostics:
- HTTP Logging (recommended)
- Request Monitor (recommended)
- Performance:
- Static Content Compression (recommended)
- Security:
- Request Filtering (recommended)
- Application Development:
- .NET Extensibility 4.5 (Windows Server 2012) / .NET Extensibility 4.6 (Windows Server 2016) / .NET Extensibility 4.7 (Windows Server 2019) / .NET Extensibility 4.8 (Windows Server 2022)
- Application Initialization (recommended)
- ASP
- ASP.NET 4.5 (Windows Server 2012) / ASP.NET 4.6 (Windows Server 2016) / ASP.NET 4.7 (Windows Server 2019) / ASP.NET 4.8 (Windows Server 2022)
- ISAPI Extensions
- ISAPI Filters
- Common HTTP Features:
- Management Tools
- IIS Management Console
- IIS 6 Management Compatibility
- IIS 6 Metabase Compatibility
- IIS 6 Scripting Tools
- IIS 6 WMI Capability
- IIS Management Scripts and Tools
- Web Server:
- If no changes were required, simply cancel out of the wizard, otherwise, click Next through to the Confirm installation selections page, verify the changes, and click Install to perform the installation.
Please note that the IIS 6 Management Compatibility options are required for the SOLO Server installer to work properly for installation and upgrades.
Next, some additional pre-installation configuration steps are also required for IIS.
- Create a Windows user account to be used by SOLO Server:
- Begin by adding the user to the system by choosing Computer Management from the Tools menu in Server Manager.
- Expand Local Users and Groups on the left, right click the Users section, and choose New User...
- Proceed to add the user account. It is very important to uncheck "User must change password at next login", and check both the "User cannot change password" and "Password never expires" options.
- Alternatively, you may create the user as a domain user account. This is especially convenient if the web server is separate from the database server, and if multiple/redundant servers are being used. If you create the user in a domain instead, the same restrictions apply where the "User cannot change password" and "Password never expires" options must be checked.
- Next, right-click on the user you just created, click properties, and then click on the Member Of tab. Add the user to the IIS_IUSRS group, and then remove the user from the Users group.
- Create an Application Pool for SOLO Server:
- Open Internet Information Services (IIS) Manager.
- On the left, drill down to and right click on the Application Pools option for the local server, and choose Add Application Pool.
- Enter a name, choose .NET Framework v4.0.30319 for the .NET Framework version, and select the Integrated Managed pipeline mode. If present, also check the Start application pool immediately checkbox.
- Once the application pool is created, right click on it and choose Advanced Settings, and make the following changes:
- Set Enable 32-Bit Applications to True.
- Set Start Mode to Always Running.
- Determine whether SOLO Server will be installed as a standalone web site, or as part of an existing web site.
- If you are installing SOLO Server as a new standalone web site:
- Create a folder for the new site on the file system.
- In IIS Manager, on the left, drill down and right click on the Sites option for the local server, and then choose Add Web Site...
- Set the Site name to your new web site's domain name (e.g. secure.mydomain.com).
- Click the "Select..." button to the right of the Site name and select the newly created Application Pool for SOLO Server.
- Click the "..." button in the Content Directory section and select the folder you created for the web site.
- Also under the Content Directory section, click the "Connect as..." button. Select Specific User and click "Set..." Set this user to the Windows user account you created earlier. When done, click the "Test Settings..." button to make sure the credentials work and that the user has access to the folder you created.
- You should also bind the web site to a specific IP address, as this is required for SSL, which you will be required to configure later. If you already installed the SSL certificate for your web site, you may change the binding type in this dialog to https and select the installed SSL certificate.
- Ensure the Start Website immediately checkbox is checked, if present.
- Click OK to create the new web site in IIS.
- Once the web site is created, verify the file system folder created in the first step does not contain a web.config file. It is possible that IIS will automatically create a web.config file in this directory during the web site configuration. If a web.config file is found, rename it as the presence of an existing file will prevent the installer from recognizing the install is a fresh install and result in the configuration files not being correctly initialized. Any content in this file can be merged back in to the new web.config file created when installing SOLO Server.
- If you are installing SOLO Server in an existing web site, it is strongly recommended to configure SOLO Server as an application within the existing web site located in a unique subfolder within the web site. To do so:
- In the file system, create a new subfolder for SOLO within the existing web site.
- In IIS Manager, on the left, drill down to the new folder in the existing web site, right-click on the folder, and click Convert to Application.
- Click the "Select..." button to the right of the Site name and select the newly created application pool for SOLO Server.
- Click the "Connect as..." button. Select Specific User and click "Set..." Set this user to the Windows user account you created earlier. When done, click the "Test Settings..." button to make sure the credentials work and that the user has access to the folder you created.
- Check the Enable Preload checkbox if present.
- Click OK to create the new application in IIS.
- Once the application is created, verify the file system folder created in the first step does not contain a web.config file. It is possible that IIS will automatically create a web.config file in this directory during the application configuration. If a web.config file is found, rename it as the presence of an existing file will prevent the installer from recognizing the install is a fresh install and result in the configuration files not being correctly initialized. Any content in this file can be merged back in to the new web.config file created when installing SOLO Server.
- If you are installing SOLO Server as a new standalone web site:
- Determine how the SOLO web files will be installed within the web site. There are 2 ways which the SOLO web files can be installed:
- Subdirectory Installation (Recommended) - The SOLO root is located in a subdirectory of the web site root, and each of the SOLO subdirectories are off of this subdirectory (e.g. www.company.com/solo/authors, www.company.com/solo/customers, etc.).
- Web Root Installation - The SOLO root matches the web site root, and each of the SOLO subdirectories are off the root directory (e.g. www.company.com/authors, www.company.com/customers, etc.).
- Next, the newly created Site or Application needs some additional configuration. In IIS Manager click on the new Web Site or Application on the left and double-click the ASP icon under the IIS section on the right. Verify or modify the settings as follows (and shown here):
- Set the Enable Buffering and Enable Parent Paths options to True.
- Under Services, expand the Session Properties item and set Enable Session State to False.
- Optionally, if you need to troubleshoot issues or errors, you may expand Compilation section, expand Debugging Properties, and set the Send Errors to Browser property to true. We recommend enabling this for the duration of the SOLO Server installation to ease troubleshooting any installation issues that may arise; however, you should disable this feature once installation has been completed.
- Configure SSL for your web site:
- For production SOLO Server deployments, we strongly recommend using a commercial SSL certificate provider for whatever DNS name is used for the application e.g.) secure.yourcompany.com or license.yourcompanyname or solo.yourcompany.com
- When evaluating SOLO Server, an SSL certificate is still required. You can request a free SSL trial certificate from many SSL certificate providers (one offer is prominently displayed at http://www.thawte.com/) or use an inexpensive Standard SSL certificate from GoDaddy.com which can be issued in minutes. Another alternative is to create a self-signed SSL certificate in the IIS Management Console as described in this helpful article. Note that while you can use a self-signed SSL certificate to administer SOLO Server through a browser (a certificate exception will likely be displayed by your browser), you cannot use Instant Protection PLUS 3 or the Protection PLUS Automation Client library to connect via SSL with this type of certificate.
- If you did not have an SSL certificate to choose from when creating the web site, you will need to install your SSL certificate on the server and configure the web site to use this as follows:
- In IIS Management Console, drill down to the web site on the left, right click on it, and choose Edit Bindings....
- Click the Add button, choose a Type of https, select the IP address to bind the site to, optionally specify the Host name, choose the SSL certificate, and click OK.
General Database Server Set-up
The installer does not create the database. To create the database:
- Open SQL Server Management Studio (SSMS) as an Administrator.
- In the Object Explorer, right click on Databases and select New Database to bring up the New Database dialog.
- On the General page of the dialog:
- Choose an appropriate name for the database.
- If necessary, modify the paths to the data and log files.
- Adjust the Initial Size and Autogrowth settings appropriately for the data and log files. A few things to note:
- The proper values for these settings are dependent on SOLO Server usage.
- The SQL Server defaults (unless overridden in the model database) for these values are very small, and should not be used, as these can quickly lead to fragmentation and related performance issues.
- If you are unsure, we recommend starting at no less than 50 MB Initial Size and 50 MB Autogrowth to start, and then monitoring things and resizing and/or adjusting the autogrowth settings as needed once usage patterns are established.
- Click OK to create the new blank database.
- Once the database is created, create a SQL Server login for SOLO to use to connect to the database:
- In SSMS, return to Object Explorer, expand the Security option, right-click on Logins, and click New Login...
- Create a login for the Windows user created for SOLO Server previously, or alternatively, you may set up a SQL account for SOLO Server to use to authenticate with the database instead. This user should not ever be required to reset the password (as this could prevent SOLO Server from connecting to the database).
- Finally, map the login created in the prior step to a user named SOLOServer in the SOLO database. To do so:
- In Object Explorer, drill down to Security/Users for the newly created SOLO database, right click on Users, then select New Database User. Choose the login from step prior to this as the login name, and enter "SOLOServer" as the user name. This user will be used for all of SOLO Server's database access. Make sure the user's only permission is the Public role.
Installation
You are now ready to install SOLO server.
- First, make sure that there is not any web.config file present in the target website/application folder. If one is present, rename it prior to running the installer. After installation is complete, you may then manually merge any settings into the newly installed file as necessary.
- Begin the installation by running the installer SOLOServer.exe (for licenses including the eCommerce module) or SOLOServer_ActOnly.exe (for licenses without the eCommerce module).
- Click "Next" on the welcome screen.
- Select the installation location. The application will be installed in a SOLO subdirectory of the selected directory. The default is C:\SWKey, and it is highly recommended that this be used. Click "Next" once the installation directory is selected.
- On the "Select Components" screen, choose "WebServer & Database" and click "Next".
- On the "Select WebSite Destination" screen, you can choose to install to install SOLO Server to a particular web site and/or virtual directory by selecting the "Specify WebSite Configured in IIS" option. This option is the recommended one. Alternatively, you may choose the "Specify folders to copy files" to configure several directories to copy the files to, though this is generally not necessary. Important: you cannot use an application virtual directory as a subdirectory!
- If you selected the option to "Specify WebSite Configured in IIS", select the web site or application virtual directory to be used as the web site root on the left. If you wish to install SOLO to a subdirectory of the web site root, select the subdirectory on the left, or type the name of the subdirectory (if it doesn't already exist) you wish to use. You do not add a leading slash to your subdirectory on this screen. (So for example, use "solo" and not "/solo".)
- If you selected the option to "Specify folders to copy files," use the Folder Browser and the arrow buttons to create a list of directories to copy the files to.
- On the "Configure SMTP" screen, enter the credentials needed for the web server and/or the database server to connect to a mail server for sending emails. This dialog allows you to specify the email address used by SOLO Server to send error reports as well as the email address that should receive these error reports (only 1 email address can be used). Make sure that relaying is enabled for this web server's IP address.
- On the ASP.NET application identity settings, enter the credentials for the user account SOLO Server will use for access to the file system and the database. This should be the same account as the web site user created above.
- On the "SQL Server Connection" screen, enter the SQL login credentials for an account which has DBO access. Please note that with SQL Express, the server name must be the instance name, which is usually formatted like [MACHINE_NAME]\SQLExpress. This must be filled out even if you're not planning on installing the database (i.e. if the database has already been installed when you installed on one web server, and you're following these instructions again for a redundant web server).
- On the "Database Operation" screen, select "Install SOLO Schema and Objects to the Database" and click Next. If you are installing SOLO Server on a second web server and the schema was already set up on the database, choose "Do Nothing" and click Next.
- On the "WebSite Connection Details" screen, enter the database user created for SOLO in the "General Database Server Setup" section.
- The next screen summarizes the actions which will be done to install SOLO Server and opens the release notes for review. Click the "Install" button when you are ready to proceed with the installation.
- Restart, if necessary.
Post-Installation
Verify File System Permissions
Starting with SOLO Server Version 1.9.4.4, all file system permissions are set automatically by the installer on new installations. However, if you have trouble logging on for some reason, please double check the file system permissions as noted below.
Set file system directory permissions for the windows user created for use by SOLO (IIS user). The directories and required permissions are as follows:
- Full control to C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\. This is required to allow ASP.NET to compile the aspx pages within SOLO.
- Read access to the Custom HTML, Custom XML, Custom XSL, and WebComponentPages directories in the SOLO\DLLS subdirectory of the install folder.
- All permissions but full control for the SOLO\ESD subdirectory of the install folder.
- All permissions but full control for the SOLO\Temp subdirectory of the install folder.
- Read access to the web site/application folder.
- All permissions but full control for the \products\custom\ directory off of the SOLO root.
- Depending on the location of the web folder, it may also be necessary to grant read permission to the web folder to the user the application pool is running under. With IIS 7, Application Pools receive their own hidden identity by default, and these hidden user accounts are members of the IIS_IUSRS group. If you are unable to log in below and see Access Denied errors from ASP.NET in the application event log, try granting this permission to the IIS_USRS group.
Set-up Configuration Files
SOLO Server uses a combination of 2 configuration files, both of which are shared between the classic ASP and ASP.NET code. If you installed into an empty destination folder, the SOLO Server installation should have set up the necessary configuration to log in, and you can jump down to the Launch your browser to login section. Later you can come back to tweak the configuration parameters to your liking.
If you install into an existing WebSite that has these files (not recommended), they will NOT be overwritten by the installer. Instead, you need to merge the SOLO Server configuration parameters in with your existing files. The base versions are located in the HTML subdirectory of the install folder (C:\SWKey\SOLO\HTML by default). The files are as follows:
- SOLO.config - XML file containing configuration parameters related to database maintenance, HTTP request validation, and error reporting. This file is referenced by web.config. Since this is not a standard IIS configuration file, it can simply be copied from the install directory to the web root and edited, with no need to worry about merging with an existing file. Be sure the correct path for this file is used in the web.config file. Information/instructions on setting up this file can be found in the SOLO.config File Options topic.
- global.asa - Standard classic ASP configuration file. The SOLO Server version of this file uses STARTSOLO.inc to parse the web.config file for all application variables. If no global.asa file is present in the web root, a customized version is installed automatically with values needed for SOLO Server to run. Information/instructions on setting up this file can be found in the Global Application Options topic.
- web.config - Standard ASP.NET configuration file, which is also used by the classic ASP code in SOLO Server. If no web.config file is present in the web root, a customized version is installed automatically with values needed for SOLO Server to run. However if an existing web.config file is present, the contents of the file in the install directory must instead be merged with the existing file. Information/instructions on setting up this file can be found in the Web.config File Options topic.
Sign-in
Once you have completed all of the above steps, launch your browser to https://secure.yourcompany.com/solo/authors/ (or whatever folder you installed into). You may log in with username of Master and password of password. Upon logging in:
- You will be prompted to activate SOLO Server. Click the Activate link, and enter your SOLO Server License ID and Password.
- To activate online when outbound internet access is available on the web server, simply choose the Activate Online option and click Activate.
- If outbound internet access is restricted on the web server, choose the Activate Manually option, click Activate, and follow these steps:
- Copy the content of the Request text area to the clipboard.
- Open a browser and navigate to the manual activation page at https://secure.softwarekey.com/solo/customers/ManualRequest.aspx?AuthorID=2451871
- Paste the copied content the text area on the manual activation page and click Submit.
- Copy the content of the Response text area from the manual activation page to the clipboard, and then paste this response in the Response text area in SOLO Server and click Activate.
- If any errors occur during the activation process, contact support@softwarekey.com
- Next, you will prompted to accept the terms and conditions and click the Agree button.
- Once you have accepted the terms and conditions, you will next be prompted to change your password.
- After changing your password, you will be directed to the author home page.
At this point, you should create a new user account so that you can remove the default account. To do this, follow these steps:
- From the user menu at the top right (which will read master for the current user), choose Users.
- Click the Add New link on the manage users page.
- Enter the required information in the General Information section.
- In the settings section:
- Select the Administrators group
- Uncheck Change Password
- Check Master User ID (this is important - if you do not check this you will have no easy way to grant this permission once the default user is removed).
- Click Save to save the new user.
- Next, log out, and then log back in with your new User ID and password.
- You'll be prompted to accept the terms and conditions again on the new user account.
- After accepting the terms, return the manage users page. Delete the default Master user account.
Note that if you use Instant Protection PLUS 3 or Instant Metering to log into SOLO Server, you will also need to know your Author ID. The default Author ID for a fresh installation of SOLO Server is always 2451871.
If you see the message "An error has occurred in this application. An administrator has been notified." then check the mailbox that you configured to receive email error notices and see why the server is unhappy.
Pointing your browser to the top folder of https://secure.yourcompany.com/solo/ will display nothing because we don't know if the customer is an administrator or a customer. You may create a default.asp or default.htm file that redirects the user where you want to go or display a friendly message.
Secure Internal Web Services and Encrypted Cookies
SOLO Server includes several web services intended only for internal use when communicating between portions of SOLO Server developed using ASP/COM and portions developed using ASP.NET. In order to prevent outside access to these web services, you need to set an internal username and password which SOLO Server will use for authentication during these internal web service calls. In addition, SOLO Server uses encryption to secure several cookies, and requires specifying an encryption key. To configure these, simply edit the web.config file and enter values for the InternalWebSerivceUsername, InternalWebServicePassword, and CookieEncryptionKey entries. Note that if during installation, if no web.config file was present in the web site root, the installer will have automatically populated these web.config entries with random 20 character strings and you can skip this step.
Generate Encryption Keys
The XmlActivationService web methods use public/private key cryptography to encrypt/decrypt and sign/verify both the request and response data to ensure the data is not tampered with. Since these keys need to be uniquely generated by the server, they are not populated by the installer, and must be manually generated. To generate the keys, simply navigate to the Author Encryption Keys page and the server will generate the keys and store them in the database.
Customize HTML Files
Several static HTML files used by SOLO Server can optionally be customized as follows:
- The HTML template files used to generate the headers and footers within each section of SOLO Server can be customized to create a unique look/feel. For more information this, see Customizing SOLO Server HTM Files.
- In order to prevent any issues with browsers rejecting SOLO Server cookies due to security settings, you should set up a compact privacy policy. To do this, edit the files in the W3C folder in the root of the SOLO Server installation directory, replacing any parameters within brackets ([]) with your company specific values. If you already had a compact privacy policy set up at this location, you need to do nothing as the install will not overwrite these files.
Finalize the Database Configuration
-
Set up maintenance jobs for the database files (both full database and optionally transaction log backups, depending on the recovery model chosen for the database). Jobs for these purposes are not installed by SOLO Server because this is a task best left to the local database administrator, who can come up with a maintenance plan geared specifically around the available resources and needs of the customer.
ImportantNote: It is very important to properly configure the maintenance plan based on the recovery model of the database. By default, SQL Server creates new databases configured to use the Full recovery model. If the recovery model is retained, it is EXTREMELY IMPORTANT to configure transaction log backups on a regular basis in addition to full database backups. The transaction log is a circular log file, and when the database is in full recovery mode, portions of this file are cleared for reuse by transaction log backups. If no transaction log backups are taken, space in the log file will never be marked for reuse, and the log file will continually grow, which can eventually lead to running out of disk space.
- Verify/reconfigure database mail (if using SQL Express, skip this step, as database mail is not included in SQL Express). By default, SOLO Server will create a Database Mail account and profile, both named SOLOServer, using the error email and mail server settings entered in the installer. The installer assumes many default settings (port 25, anonymous access, etc.), and it may be necessary to reconfigure things depending on your environment. To test/configure database mail:
- In SQL Server Management Studio, expand the Management section in object explorer.
- Right click on the Database Mail icon, and then select "Send Test E-Mail".
- Enter the email address you specified to send error notifications to as the To address, and click "Send Test E-Mail".
- Verify the email is delivered.
- If the email is not delivered, double click on the Database Mail icon. Click next on the welcome page if it appears.
- Next, select "Manage Database Mail Accounts and profiles", click next, and then select "View, chanage, or delete an existing account".
- Select the SOLOServer account, and adjust the Outgoing mail server and SMTP Authentication properties as needed.
- Configure the database jobs. Refer to SOLO Server Database Jobs for this portion of the install.
- Log in to SOLO Server, choose Daily Processes from the Admin menu, and then edit the default Daily Maintenance process and check the Active checkbox.
- Set the seeds for the Customers, Invoices, and Licenses tables. These will determine the initial Customer ID, Invoice Number, and License ID generated by the system.
- First, go to the Customers, Invoices, and Licenses tables in SQL Server Management Studio, right click and select Design Table, then highlight the first column. At the bottom, set the Identity Seed to your desired initial values.
- You may get an error attempting to save the changes in the previous step as later versions of SQL Server/SSMS do not allow this. If this is the case, use DBCC CHECKIDENT with the RESEED option by running the following 3 commands against the database, replacing the final parameter in each command with your chosen seeds.
- DBCC CHECKIDENT ('dbo.Customers', RESEED, 1000000);
- DBCC CHECKIDENT ('dbo.Invoices', RESEED, 1000000);
- DBCC CHECKIDENT ('dbo.Licenses', RESEED, 1000000);
- Determine if you would like to enable global Distributors/Affiliates. Enabling this will cause any additions, modifications, or deletions of any distributors/affiliates or distributor types to be replicated across all authors. In addition, when a new author is added to the system, they will have the distributor types and all distributors/affiliates automatically associated with their account. If you decided to enable this feature, follow these steps:
- Make sure the database is set to not allow recursive triggers (this is the default). To check whether recursive triggers are enabled, from SSMS, highlight the database, right click on it and then choose properties. Go to the options tab and make sure the "Recursive Triggers" checkbox is unchecked.
- From SQL Server Management Studio, run all of the trigger (*.sql) files in the \SOLO\Database\Triggers\GlobalDistributors subdirectory of the installation directory.
- Determine if you would like to enable auditing of the Licenses table in the database. Note that enabling this may have performance implications in database which contain a large number of licenses. To enable auditing of Licenses:
- From SQL Server Management Studio, run the \SOLO\Database\Triggers\Auditing\dbo.SOLO_TRIG_LicensesUpdate.sql script.
- Update the EnableLicenseAudits web.config entry to True enable the audits in the SOLO Server administration interface.
Optional Steps
Configure Request Filtering
We recommend installing and enabling Request Filtering in IIS on your web server to help protect against attacks.
- If not installed, install the Request Filtering role service at described above in the "General Web Server Setup" section.
- Refer to our sample request filtering configuration for the remaining steps.
- If SOLO Server is installed on a dedicated web server with no other web sites present, you can simply replace the default request filtering configuration with our sample configuration as follows:
- Create a backup of C:\Windows\System32\inetsrv\config\applicatonHost.config.
- Open notepad as an administrator.
- In notepad, open C:\Windows\System32\inetsrv\config\applicationHost.config
- Replace the configuration\system.webServer\security\requestFiltering node with the requestFiltering node from the sample configuration.
- Save the change.
- If SOLO Server is installed on a web server hosting other web sites, using the sample configuration at the server level has the potential to cause issues with other web sites running on the server. In this case, a careful analysis must be made of the current request filtering settings and the sample settings need to be merged in accordingly at either the server, web site, or application level in IIS.
Harden non SOLO Server Databases
By default, all SQL Server databases contain a default Public role which is inherited by all database users. This role is granted numerous permissions by default, including the ability to access the system tables and views. To close this hole, the database installation automatically revokes all permissions from the Public role in the SOLO database and moves them to a new FormerPublic role.
It may also be desirable to lock down any other databases on the server in the same manner, including the system databases. Several helper scripts are installed to accomplish this - they are located in the Database/SecurityScripts folder of the install folder. To lock down the Public role on a database, run the LockDownDatabase.sql script against the database (the change can be undone by running RestorePublicFromFormerPublic.sql). If SOLO Server's database is the only database running on the server, it is safe to run this on all of the system database. If other databases are running, however, you should investigate whether making this change will break any other applications before applying to the system databases.
In addition to those two scripts, two other security related scripts are also included:
- InspectSQLSecurity.sql - Returns info on the current security permissions on a database
- LockDownSQLServer2005.sql - This will lock down numerous settings on a server wide basis. Be sure to carefully analyze this script and only run portions of it that will not break any current applications.
Uninstalling SOLO Server
First, restart IIS so all DLLs will be unloaded. Click Start / Programs / SoftwareKey Licensing System / SOLO Server / Uninstall SOLO Server. Follow the prompts.