This repository has been archived by the owner on Jun 17, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 24
Getting started
jayrenn edited this page Mar 30, 2017
·
15 revisions
- Architecture
- Required hardware
- Required software
- Instructions
- Step 1: Create the Application Pool and Website in IIS
- Step 2: Create and prepare the database
- Step 3: Map the ApplicationPoolIdentity to a SQL Server Login
- Step 4: Restart the Application Pool and Website
- Step 5: Registering the first user
- Step 6: Configure the SMTP server and port for email notification
- Step 7: Register the scheduler service
The Enterprise Mode Site List Portal is a web-based application built on the MVC framework, with AngularJS, and SQL Server as the back-end database.
The Enterprise Mode Site List Portal requires the following hardware or hardware features for successful completion:
Hardware | Description |
---|---|
Minimum physical memory | 16 GB RAM recommended |
Available disk space | The PC must have at least 8 GB of free space. Disk must be formatted by NTFS file system for better security. |
The tool requires the following software or software features for successful completion:
Software | Minimum version |
---|---|
Client operating system | Windows 7 or higher |
Active Directory | Domain joined |
Additional server infrastructure | Internet Information Service (IIS) 6.0 or later |
SQL Server | Microsoft SQL Server Enterprise Edition 2012 or later |
Copying the deployment folder to the web server
- Download the source code from the repository.
- Install npm.
- Open the
EMIEWebPortal/
folder in File Explorer. - Press and hold
Shift
, right-click the window, then clickOpen command window here
. - Type
npm i
into the command prompt, then pressEnter
. - Go back up a directory, and open the solution file
EMIEWebPortal.sln
in Visual Studio and build the entire solution. - Copy the contents of the
EMIEWebPortal/
folder to the deployment directory of your Website.
Create a new Application Pool
- In IIS Manager, expand the local computer, right-click Application Pools, then click Add Application Pool.
- In the Application Pool Name field, type the name of the new application pool, e.g.
EMIEWebAppPool
. - Select a .NET CLR version of
v4.0
or higher, and select Managed pipeline mode asIntegrated
. - Click OK.
- Select the Application Pool you just created from the list and click on the Advanced Settings option from the Actions pane.
- Confirm that the Identity value is set to
ApplicationPoolIdentity
. - Click OK and close the dialogue.
- Navigate to your deployment directory in File Explorer, e.g.
D:\EMIEWebApp
. - Right-click on the directory, go to Properties, and select the Security tab.
- Add the newly created Application Pool to the list, e.g.
IIS AppPool\EMIEWebAppPool
, with Full control permissions. Make sure the location is set to search the local computer. - Add Everyone to the list with Read & execute permissions.
Create the Website
- In IIS Manager, expand the local computer, then right-click the Sites folder.
- Select Add Website.
- In the Site name field, enter a name for the Website, e.g.
EMIEWebApp
. - Click the Select button and select the Application Pool you created earlier, e.g.
EMIEWebAppPool
. - In the Physical path field, enter the name of the folder that contains the deployment directory, e.g.
D:\EMIEWebApp
. - Configure the Binding Type, IP address, and Port as appropriate. Seek help from your network administrator if you have any questions.
- Un-check the checkbox Start Website immediately.
- Click OK.
- In IIS Manager, expand the local computer, then select the newly created Website, e.g.
EMIEWebApp
. - From the Features View, double-click on the Authentication icon in the IIS section.
- Enable Windows Authentication. Anonymous Authentication should be enabled by default.
- Return to the Features View, then double-click on the Connection Strings icon in the ASP.NET section.
- Open the
LOBMergedEntities
Connection String for editing. - Enter the name of your local computer where it says
data source=
. - Enter the name of your database where it says
initial catalog=
. The next section will describe how to create the database.
- Launch SQL Server Management Studio.
- In Object Explorer, connect to an instance of the SQL Server Database Engine, e.g.
.
. - Expand the instance, right-click on Databases, then select New Database.
- Enter a database name, e.g.
EMIEDatabase
. - Accept all the default values and click OK.
- Open the
1_CreateEMIETables.sql
query located in theDatabaseScripts/Create DB Tables/
folder. - Replace the database name placeholder with the name you entered in step 4.
- Execute the query.
- Open SQL Server Management Studio and connect to your instance.
- Expand the instance and open the *Security folder at the server level, not the security folder for the database.
- Right-click on Logins and select New Login.
- Do not click Search. In the Login name field, if you have a local SQL Server instance, where IIS and SQL Server are on the same server, enter the name of your Application Pool, e.g.
IIS AppPool\EMIEWebAppPool
. If you have a remote SQL Server instance, where IIS and SQL Server are on the same server, enterDomain\ServerName$
.
(If a search is executed, it will resolve to an account withServerName\AppPool Name
and Management Studio will be unable to resolve the account's SID, as it is virtual) - Open the User Mapping page and check the database you created earlier, e.g.
EMIEDatabase
. Selectdb_owner
in the list of roles. - Click OK.
- In IIS Manager, expand the local computer, then select the Website you created. Click Restart in the Manage Website pane.
- In IIS Manager, expand the local computer, then select the Application Pool you created. Click Recycle in the Application Pool Tasks pane.
- Open your browser and enter the URL for your Website, e.g.
http://emieportal:8085
. - Click Register now.
- In the Email field, type your name or alias and a drop down will be displayed with the corresponding matches.
- Select your name from the drop down.
- Select Role as
Administrator
. - Click Save.
- Navigate to the administrator console page by entering
/#/EMIEAdminConsole
in your address bar, e.g.http://emieportal:8085/#/EMIEAdminConsole
. - A dialog will prompt for the master username and password. The default username is
EMIEAdmin
and the default password isAdmin123
. It is recommended that you change the password using the Change password link after your first use. - Select your name from the list and click Activate.
- Navigate to the home page and you should be able to sign in to the portal.
- Open
web.config
from your deployment directory in Visual Studio or a text editor. - Update the SMTP server and port shown below. The email account and password can be set from the Settings page in the tool.
<add key="host" value="SMTPHOST.corp.microsoft.com"/>
<add key="port" value="2500"/>
The scheduler service is used for production site list changes.
- Copy the folders
App_Data
,bin
, andLogs
fromEMIEWebPortal.SchedulerService\EMIEWebPortal.SchedulerService
to a separate folder, e.g.C:\EMIEService\
. - Run the Developer Command Prompt for Visual Studio as an administrator.
- Change the directory to the path of
InstallUtil.exe
, e.g.C:\Windows\Microsoft.NET\Framework\v4.0.30319
. - Run the command
InstallUtil "<path/to/service/exe>"
, e.g.InstallUtil "C:\EMIEService\bin\Debug\EMIEWebPortal.SchedulerService.exe"
. - Enter the credentials required to run the service.
- Open the services console using
Services.msc
, then start the service with the nameEMIEScheduler
.