AWS imagebuilder documentation change
Summary
Expanded list of unsupported Windows ISO images, restructured CLI/PowerShell examples to use direct parameters instead of JSON input files, added explicit guidance for IAM roles, and included PowerShell command syntax.
Security assessment
The change adds documentation about using the 'AWSServiceRoleForImageBuilder' service-linked role or custom roles for secure access control, which is a security best practice. However, there is no evidence of addressing a specific security vulnerability.
Diff
diff --git a/imagebuilder/latest/userguide/import-iso-disk.md b/imagebuilder/latest/userguide/import-iso-disk.md index c1aecc8b7..6d900ad3a 100644 --- a//imagebuilder/latest/userguide/import-iso-disk.md +++ b//imagebuilder/latest/userguide/import-iso-disk.md @@ -26 +26,8 @@ Image Builder supports the following Windows operating system ISO disk images: -Long-Term Servicing Channel (LTSC) images are not supported. +Image Builder does not support the following Windows operating system ISO disk images: + + * Long-Term Servicing Channel (LTSC) images + + * ISO disk images created from the Windows Media Creation Tool + + * Evaluation images + @@ -28 +34,0 @@ Long-Term Servicing Channel (LTSC) images are not supported. -###### Note @@ -30 +35,0 @@ Long-Term Servicing Channel (LTSC) images are not supported. -Image Builder doesn't support ISO disk images created from the Windows Media Creation Tool. To ensure that you can import your ISO image, download it from the Microsoft 365 admin center. @@ -135,3 +140 @@ AWS CLI -To import an image from an ISO disk file and create an AMI from it, follow these steps from the AWS CLI: - - 1. ###### Create a CLI input JSON file +This example shows how to import an image from an ISO disk file and create an AMI from it with the AWS CLI. @@ -139,5 +142 @@ To import an image from an ISO disk file and create an AMI from it, follow these -To streamline the Image Builder **import-disk-image** command that is used in the AWS CLI, we create a JSON file that contains all of the import configuration that we want to pass into the command. - -###### Note - -The naming convention for the data values in the JSON file follows the pattern that is specified for the Image Builder API operation request parameters. To review the API operation request parameters, see the [ImportDiskImage](https://docs.aws.amazon.com/imagebuilder/latest/APIReference/API_ImportDiskImage.html) operation in the _EC2 Image Builder API Reference_. +Here is a summary of the parameters that we specify in this example: @@ -145 +144 @@ The naming convention for the data values in the JSON file follows the pattern t -To provide the data values as command line parameters, refer to the parameter names specified in the _AWS CLI Command Reference_. to the Image Builder **import-disk-image** command as options. + * name (string, required) – The name for the Image Builder image resource to create as output from the import. @@ -147 +146 @@ To provide the data values as command line parameters, refer to the parameter na -Here is a summary of the parameters that we specify in this example: + * semanticVersion (string, required) – The semantic version for the output image that specifies the version in the following format, with numeric values in each position to indicate a specific version: <major>.<minor>.<patch>. For example, `1.0.0`. To learn more about semantic versioning for Image Builder resources, see [Semantic versioning in Image Builder](./ibhow-semantic-versioning.html). @@ -152,0 +152,4 @@ Here is a summary of the parameters that we specify in this example: + * platform (string, required) – The operating system platform for the ISO disk image. Valid values include `Windows`. + + * osVersion (string, required) – The operating system version for the ISO disk image. Valid values include `Microsoft Windows 11`. + @@ -155 +158 @@ Here is a summary of the parameters that we specify in this example: - * name (string, required) – The name for the Image Builder image resource to create as output from the import. + * uri (string, required) – The URI of the ISO disk file that's stored in Amazon S3. @@ -157 +159,0 @@ Here is a summary of the parameters that we specify in this example: - * osVersion (string, required) – The operating system version for the ISO disk image. Valid values include `Microsoft Windows 11`. @@ -159 +160,0 @@ Here is a summary of the parameters that we specify in this example: - * platform (string, required) – The operating system platform for the ISO disk image. Valid values include `Windows`. @@ -161 +161,0 @@ Here is a summary of the parameters that we specify in this example: - * semanticVersion (string, required) – The semantic version for the output image that specifies the version in the following format, with numeric values in each position to indicate a specific version: <major>.<minor>.<patch>. For example, `1.0.0`. To learn more about semantic versioning for Image Builder resources, see [Semantic versioning in Image Builder](./ibhow-semantic-versioning.html). @@ -163 +162,0 @@ Here is a summary of the parameters that we specify in this example: - * uri (string, required) – The URI of the ISO disk file that's stored in Amazon S3. @@ -165 +164,24 @@ Here is a summary of the parameters that we specify in this example: -Save the file as `import-iso-image.json`, to use in the Image Builder **import-disk-image** command. + aws imagebuilder import-disk-image \ + --name "example-iso-disk-import" \ + --semantic-version "1.0.0" \ + --description "Import an ISO disk image" \ + --execution-role "AWSServiceRoleForImageBuilder" \ + --platform "Windows" \ + --os-version "Microsoft Windows 11" \ + --infrastructure-configuration-arn "arn:aws:imagebuilder:us-east-1:111122223333:infrastructure-configuration/example-infrastructure-configuration-123456789abc", + --uri: "s3://amzn-s3-demo-source-bucket/examplefile.iso" + +After the import is complete, your image appears in the list of images that you own. For more details, see [List images](./image-details-list.html#list-images). + +PowerShell + + +This example shows how to import an image from an ISO disk file and create an AMI from it with PowerShell. + +Here is a summary of the parameters that we specify in this example: + + * name (string, required) – The name for the Image Builder image resource to create as output from the import. + + * semanticVersion (string, required) – The semantic version for the output image that specifies the version in the following format, with numeric values in each position to indicate a specific version: <major>.<minor>.<patch>. For example, `1.0.0`. To learn more about semantic versioning for Image Builder resources, see [Semantic versioning in Image Builder](./ibhow-semantic-versioning.html). + + * description (string) – The description of the image recipe. @@ -167,10 +189 @@ Save the file as `import-iso-image.json`, to use in the Image Builder **import-d - { - "name": "example-iso-disk-import", - "semanticVersion": "1.0.0", - "description": "Import an ISO disk image", - "executionRole": "ExampleExecutionRole", - "platform": "Windows", - "osVersion": "Microsoft Windows 11", - "infrastructureConfigurationArn": "arn:aws:imagebuilder:us-east-1:111122223333:infrastructure-configuration/example-infrastructure-configuration-123456789abc", - "uri": "s3://amzn-s3-demo-source-bucket/examplefile.iso" - } + * executionRole (string) – The name or Amazon Resource Name (ARN) for the IAM role that grants Image Builder access to perform workflow actions to import an image from a Microsoft ISO file. You can specify the [AWSServiceRoleForImageBuilder](./security-iam-awsmanpol.html#sec-iam-manpol-AWSServiceRoleForImageBuilder) service-linked role, or you can specify your own custom role for service access. @@ -178 +191 @@ Save the file as `import-iso-image.json`, to use in the Image Builder **import-d - 2. ###### Import the image + * platform (string, required) – The operating system platform for the ISO disk image. Valid values include `Windows`. @@ -180 +193 @@ Save the file as `import-iso-image.json`, to use in the Image Builder **import-d -Run the **[import-disk-image](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/imagebuilder/import-disk-image.html)** command, with the file that you created as input: + * osVersion (string, required) – The operating system version for the ISO disk image. Valid values include `Microsoft Windows 11`. @@ -182 +195 @@ Run the **[import-disk-image](https://awscli.amazonaws.com/v2/documentation/api/ - aws imagebuilder import-disk-image --cli-input-json file://import-iso-image.json + * infrastructureConfigurationArn (string, required) – The Amazon Resource Name (ARN) of the infrastructure configuration resource that's used for launching the EC2 instance on which the ISO image is built. @@ -184 +197 @@ Run the **[import-disk-image](https://awscli.amazonaws.com/v2/documentation/api/ -###### Note + * uri (string, required) – The URI of the ISO disk file that's stored in Amazon S3. @@ -186 +198,0 @@ Run the **[import-disk-image](https://awscli.amazonaws.com/v2/documentation/api/ - * You must include the `file://` notation at the beginning of the JSON file path. @@ -188 +199,0 @@ Run the **[import-disk-image](https://awscli.amazonaws.com/v2/documentation/api/ - * The path for the JSON file should follow the appropriate convention for the base operating system where you are running the command. For example, Windows uses the backslash (\\) to refer to the directory path, while Linux and macOS use the forward slash (/). @@ -191,0 +203,9 @@ Run the **[import-disk-image](https://awscli.amazonaws.com/v2/documentation/api/ + Import-EC2IBDiskImage ` + -Name "example-iso-disk-import" ` + -SemanticVersion "1.0.0" ` + -Description "Import an ISO disk image" ` + -ExecutionRole "AWSServiceRoleForImageBuilder" ` + -Platform "Windows" ` + -OsVersion "Microsoft Windows 11" ` + -InfrastructureConfigurationArn "arn:aws:imagebuilder:us-east-1:111122223333:infrastructure-configuration/example-infrastructure-configuration-123456789abc" ` + -Uri "s3://amzn-s3-demo-source-bucket/examplefile.ISO"