AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Container for the parameters to the ModifyImageAttribute operation. Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time.

To specify the attribute, you can use the Attribute parameter, or one of the following parameters: Description, ImdsSupport, or LaunchPermission.

Images with an Amazon Web Services Marketplace product code cannot be made public.

To enable the SriovNetSupport enhanced networking attribute of an image, enable SriovNetSupport on an instance and create an AMI from the instance.

Inheritance Hierarchy

System.Object
  Amazon.Runtime.AmazonWebServiceRequest
    Amazon.EC2.AmazonEC2Request
      Amazon.EC2.Model.ModifyImageAttributeRequest

Namespace: Amazon.EC2.Model
Assembly: AWSSDK.EC2.dll
Version: 3.x.y.z

Syntax

C#
public class ModifyImageAttributeRequest : AmazonEC2Request
         IAmazonWebServiceRequest

The ModifyImageAttributeRequest type exposes the following members

Constructors

NameDescription
Public Method ModifyImageAttributeRequest()

Empty constructor used to set properties independently even when a simple constructor is available

Public Method ModifyImageAttributeRequest(string, string)

Instantiates ModifyImageAttributeRequest with the parameterized properties

Properties

NameTypeDescription
Public Property Attribute System.String

Gets and sets the property Attribute.

The name of the attribute to modify.

Valid values: description | imdsSupport | launchPermission

Public Property Description System.String

Gets and sets the property Description.

A new description for the AMI.

Public Property ImageId System.String

Gets and sets the property ImageId.

The ID of the AMI.

Public Property ImdsSupport System.String

Gets and sets the property ImdsSupport.

Set to v2.0 to indicate that IMDSv2 is specified in the AMI. Instances launched from this AMI will have HttpTokens automatically set to required so that, by default, the instance requires that IMDSv2 is used when requesting instance metadata. In addition, HttpPutResponseHopLimit is set to 2. For more information, see Configure the AMI in the Amazon EC2 User Guide.

Do not use this parameter unless your AMI software supports IMDSv2. After you set the value to v2.0, you can't undo it. The only way to “reset” your AMI is to create a new AMI from the underlying snapshot.

Public Property LaunchPermission Amazon.EC2.Model.LaunchPermissionModifications

Gets and sets the property LaunchPermission.

A new launch permission for the AMI.

Public Property OperationType Amazon.EC2.OperationType

Gets and sets the property OperationType.

The operation type. This parameter can be used only when the Attribute parameter is launchPermission.

Public Property OrganizationalUnitArns System.Collections.Generic.List<System.String>

Gets and sets the property OrganizationalUnitArns.

The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter can be used only when the Attribute parameter is launchPermission.

Public Property OrganizationArns System.Collections.Generic.List<System.String>

Gets and sets the property OrganizationArns.

The Amazon Resource Name (ARN) of an organization. This parameter can be used only when the Attribute parameter is launchPermission.

Public Property ProductCodes System.Collections.Generic.List<System.String>

Gets and sets the property ProductCodes.

Not supported.

Public Property UserGroups System.Collections.Generic.List<System.String>

Gets and sets the property UserGroups.

The user groups. This parameter can be used only when the Attribute parameter is launchPermission.

Public Property UserIds System.Collections.Generic.List<System.String>

Gets and sets the property UserIds.

The Amazon Web Services account IDs. This parameter can be used only when the Attribute parameter is launchPermission.

Public Property Value System.String

Gets and sets the property Value.

The value of the attribute being modified. This parameter can be used only when the Attribute parameter is description or imdsSupport.

Examples

This example makes the specified AMI public.

To make an AMI public


var client = new AmazonEC2Client();
var response = client.ModifyImageAttribute(new ModifyImageAttributeRequest 
{
    ImageId = "ami-5731123e",
    LaunchPermission = new LaunchPermissionModifications { Add = new List<LaunchPermission> {
        new LaunchPermission { Group = "all" }
    } }
});


            

This example grants launch permissions for the specified AMI to the specified AWS account.

To grant launch permissions


var client = new AmazonEC2Client();
var response = client.ModifyImageAttribute(new ModifyImageAttributeRequest 
{
    ImageId = "ami-5731123e",
    LaunchPermission = new LaunchPermissionModifications { Add = new List<LaunchPermission> {
        new LaunchPermission { UserId = "123456789012" }
    } }
});


            

Version Information

.NET Core App:
Supported in: 3.1

.NET Standard:
Supported in: 2.0

.NET Framework:
Supported in: 4.5, 4.0, 3.5