AWS elasticbeanstalk documentation change
Summary
Added documentation for configuring multiple IIS websites with custom bindings and firewall considerations
Security assessment
Documents firewall configuration requirements for non-standard ports but does not address specific vulnerabilities
Diff
diff --git a/elasticbeanstalk/latest/dg/dotnet-manifest-schema.md b/elasticbeanstalk/latest/dg/dotnet-manifest-schema.md index 836da66a2..201904cd0 100644 --- a//elasticbeanstalk/latest/dg/dotnet-manifest-schema.md +++ b//elasticbeanstalk/latest/dg/dotnet-manifest-schema.md @@ -21,0 +22 @@ The deployment manifest follows a specific JSON schema with the following top-le + "websites": [...], @@ -106 +107 @@ _Type:_ Object -Defines IIS configuration settings to apply before deploying applications. Currently supports application pool configuration. +Defines IIS configuration settings to apply before deploying applications. Supports both website and application pool configuration. @@ -110 +111,93 @@ Defines IIS configuration settings to apply before deploying applications. Curre -The `iisConfig` section allows you to configure IIS settings before deploying your applications. This is particularly useful for setting up application pools with specific configurations. +The `iisConfig` section allows you to configure IIS settings before deploying your applications. This includes setting up application pools with specific configurations and configuring IIS websites with custom bindings. + +### IIS websites + +IIS websites allow you to configure custom website settings including physical paths and network bindings before deploying your applications. + +###### Important considerations for creating different IIS websites + + * _Website setup order:_ Websites are configured sequentially in the order they appear in the `websites` array. The platform processes each website configuration in sequence, so ensure proper ordering if you have dependencies between websites. + + * _Firewall and port access:_ Only port 80 is automatically exposed through the default Elastic Beanstalk Windows firewall configuration. If you configure websites to use non-standard ports, you must define custom firewall rules through ebextensions or custom deployment scripts to allow external access to these ports. + + + + +###### Example Website configuration + + + { + "iisConfig": { + "websites": [ + { + "name": "MyCustomSite", + "physicalPath": "C:\inetpub\wwwroot\mysite", + "bindings": [ + { + "protocol": "http", + "port": 8080, + "hostName": "mysite.local" + }, + { + "protocol": "https", + "port": 8443 + } + ] + } + ] + } + } + +###### Website properties + +`name` (required) + + +_Type:_ String + +The name of the IIS website. This name is used to identify the website in IIS Manager and must be unique within the IIS configuration. + +`physicalPath` (required) + + +_Type:_ String + +The physical path on the server where the website files are stored. This path must be accessible to the IIS worker process. + +`bindings` (required) + + +_Type:_ Array + +_Minimum items:_ 1 + +An array of binding configurations that define how the website responds to network requests. Each binding specifies a protocol, port, and optional host name. + +#### Website bindings + +Website bindings define the network endpoints where your IIS website will listen for incoming requests. + +`protocol` (required) + + +_Type:_ String + +_Valid values:_ "http", "https" + +The protocol used for the binding. + +`port` (required) + + +_Type:_ Integer + +_Valid range:_ 1-65535 + +The port number on which the website will listen for requests. + +`hostName` (optional) + + +_Type:_ String + +The host name (domain name) for the binding. @@ -309,0 +403,9 @@ Path to the application bundle (ZIP file) relative to the manifest file. This bu +`iisWebSite` (optional) + + +_Type:_ String + +_Default:_ "Default Web Site" + +The IIS website to deploy the application to. By default, applications are deployed to the "Default Web Site". Optionally, you can specify a different website name, such as one configured in the `iisConfig.websites` section. + @@ -359,0 +462,9 @@ Path to the application bundle relative to the manifest file. This can be either +`iisWebSite` (optional) + + +_Type:_ String + +_Default:_ "Default Web Site" + +The IIS website to deploy the ASP.NET Core application to. By default, applications are deployed to the "Default Web Site". Optionally, you can specify a different website name, such as one configured in the `iisConfig.websites` section. +