---
# System prepended metadata

title: Ideasway deployment

---

# Ideasway deployment

[TOC]

## Old Servers
- Stop the `Default Web Site` in IIS
- Copy`BankIdeas.API` to `wwwroot/IDEASWAY/API` and replace the content.
    > Keep the `appsettings.json` in place
- Copy`IdeasBankDist` to `wwwroot/IDEASWAY/Site` and replace the content.
    > Keep the `web.config` in place
- Update connection string in `DbUpCore/DbUpCore.dll.config`
- Run `DbUpCore/DbUpCore.exe`
- Open the `wwwroot/IDEASWAY/API/appsettings.json` and add/update the following options 
```json
{
  "PasswordPolicy": {
    "RequiredDigit": true,
    "RequiredUppercase": true,
    "RequiredLowercase": true,
    "RequiredNonAlphanumeric": true,
    "MinLen": 8
  },
  "SystemSettings": {
    "JwtSettings": {
      "JwtSecretKey": {{keep-old-value}},
      "JwtIssuer": "JwtRoleBasedAuth",
      "JwtAudience": "JwtRoleBasedAuth",
      "ExpireInValue": 15,
      "ExpireInUnit": "Minutes"
    }, ...
  },
  "AuthenticationSettings": {
    "Enable2FA": true,
    "EnableUserRegisteration": true,
    "RegisterationDomainsWhiteList": {{keep-old-value}},
    "MaxOtpAttempts": 5
  }, ...
}
```
- open `wwwroot/IDEASWAY/Site/web.config` add the following inside `<system.webServer>`
```xml
<httpProtocol>
  <customHeaders>
    <add name="X-Frame-Options" value="DENY" />
    <add name="X-Xss-Protection" value="1; mode=block" />
    <add name="X-Content-Type-Options" value="nosniff" />
    <add name="Referrer-Policy" value="no-referrer" />
    <add name="X-Permitted-Cross-Domain-Policies" value="none" />
    <add name="Strict-Transport-Security" value="max-age=31536000; includeSubDomains" />
    <add name="Permissions-Policy"
      value="accelerometer=(), camera=(), geolocation=(), gyroscope=(), magnetometer=(), microphone=(), payment=(), usb=()" />
    <add name="Cross-Origin-Embedder-Policy" value="require-corp" />
    <add name="Cross-Origin-Resource-Policy" value="same-origin" />
    <add name="Cross-Origin-Opener-Policy" value="same-origin" />
  </customHeaders>
</httpProtocol>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
  <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
  <remove name="OPTIONSVerbHandler" />
  <remove name="TRACEVerbHandler" />
  <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*"
    type="System.Web.Handlers.TransferRequestHandler"
    preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
```
- copy the attached file to `wwwroot/IDEASWAY/web.config`
- Start the `Default Web Site` in IIS

## New Servers
### Application Server
- Stop the `Default Web Site` in IIS
- Copy`BankIdeas.API` to `wwwroot/IDEASWAY/API` and replace the content.
    > Keep the `appsettings.json` in place
- Open the `wwwroot/IDEASWAY/API/appsettings.json` and add/update the following options 
```json
{
  "PasswordPolicy": {
    "RequiredDigit": true,
    "RequiredUppercase": true,
    "RequiredLowercase": true,
    "RequiredNonAlphanumeric": true,
    "MinLen": 8
  },
  "SystemSettings": {
    "JwtSettings": {
      "JwtSecretKey": {{keep-old-value}},
      "JwtIssuer": "JwtRoleBasedAuth",
      "JwtAudience": "JwtRoleBasedAuth",
      "ExpireInValue": 15,
      "ExpireInUnit": "Minutes"
    }, ...
  },
  "AuthenticationSettings": {
    "Enable2FA": true,
    "EnableUserRegisteration": true,
    "RegisterationDomainsWhiteList": {{keep-old-value}},
    "MaxOtpAttempts": 5
  }, ...
}
```
- Start the `Default Web Site` in IIS

### Web Server
- Stop the `Default Web Site` in IIS
- Copy`IdeasBankDist` to `wwwroot/IDEASWAY/Site` and replace the content.
    > Keep the `web.config` in place
- open `wwwroot/IDEASWAY/Site/web.config` add the following inside `<system.webServer>`
```xml
<httpProtocol>
  <customHeaders>
    <add name="X-Frame-Options" value="DENY" />
    <add name="X-Xss-Protection" value="1; mode=block" />
    <add name="X-Content-Type-Options" value="nosniff" />
    <add name="Referrer-Policy" value="no-referrer" />
    <add name="X-Permitted-Cross-Domain-Policies" value="none" />
    <add name="Strict-Transport-Security" value="max-age=31536000; includeSubDomains" />
    <add name="Permissions-Policy"
      value="accelerometer=(), camera=(), geolocation=(), gyroscope=(), magnetometer=(), microphone=(), payment=(), usb=()" />
    <add name="Cross-Origin-Embedder-Policy" value="require-corp" />
    <add name="Cross-Origin-Resource-Policy" value="same-origin" />
    <add name="Cross-Origin-Opener-Policy" value="same-origin" />
  </customHeaders>
</httpProtocol>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
  <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
  <remove name="OPTIONSVerbHandler" />
  <remove name="TRACEVerbHandler" />
  <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*"
    type="System.Web.Handlers.TransferRequestHandler"
    preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
```
- add the same to `wwwroot/IDEASWAY/web.config`
- Start the `Default Web Site` in IIS