AWS License Manager

2020/12/04 - AWS License Manager - 4 updated api methods

Changes  Automated Discovery now has support for custom tags, and detects software uninstalls.

CreateLicenseConfiguration (updated) Link ¶
Changes (request)
{'DisassociateWhenNotFound': 'boolean'}

Creates a license configuration.

A license configuration is an abstraction of a customer license agreement that can be consumed and enforced by License Manager. Components include specifications for the license type (licensing by instance, socket, CPU, or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated Host, or all of these), license affinity to host (how long a license must be associated with a host), and the number of licenses purchased and used.

See also: AWS API Documentation

Request Syntax

client.create_license_configuration(
    Name='string',
    Description='string',
    LicenseCountingType='vCPU'|'Instance'|'Core'|'Socket',
    LicenseCount=123,
    LicenseCountHardLimit=True|False,
    LicenseRules=[
        'string',
    ],
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    DisassociateWhenNotFound=True|False,
    ProductInformationList=[
        {
            'ResourceType': 'string',
            'ProductInformationFilterList': [
                {
                    'ProductInformationFilterName': 'string',
                    'ProductInformationFilterValue': [
                        'string',
                    ],
                    'ProductInformationFilterComparator': 'string'
                },
            ]
        },
    ]
)
type Name

string

param Name

[REQUIRED]

Name of the license configuration.

type Description

string

param Description

Description of the license configuration.

type LicenseCountingType

string

param LicenseCountingType

[REQUIRED]

Dimension used to track the license inventory.

type LicenseCount

integer

param LicenseCount

Number of licenses managed by the license configuration.

type LicenseCountHardLimit

boolean

param LicenseCountHardLimit

Indicates whether hard or soft license enforcement is used. Exceeding a hard limit blocks the launch of new instances.

type LicenseRules

list

param LicenseRules

License rules. The syntax is #name=value (for example, #allowedTenancy=EC2-DedicatedHost). The available rules vary by dimension, as follows.

  • Cores dimension: allowedTenancy | licenseAffinityToHost | maximumCores | minimumCores

  • Instances dimension: allowedTenancy | maximumCores | minimumCores | maximumSockets | minimumSockets | maximumVcpus | minimumVcpus

  • Sockets dimension: allowedTenancy | licenseAffinityToHost | maximumSockets | minimumSockets

  • vCPUs dimension: allowedTenancy | honorVcpuOptimization | maximumVcpus | minimumVcpus

The unit for licenseAffinityToHost is days and the range is 1 to 180. The possible values for allowedTenancy are EC2-Default , EC2-DedicatedHost , and EC2-DedicatedInstance . The possible values for honorVcpuOptimization are True and False .

  • (string) --

type Tags

list

param Tags

Tags to add to the license configuration.

  • (dict) --

    Details about a tag for a license configuration.

    • Key (string) --

      Tag key.

    • Value (string) --

      Tag value.

type DisassociateWhenNotFound

boolean

param DisassociateWhenNotFound

When true, disassociates a resource when software is uninstalled.

type ProductInformationList

list

param ProductInformationList

Product information.

  • (dict) --

    Describes product information for a license configuration.

    • ResourceType (string) -- [REQUIRED]

      Resource type. The possible values are SSM_MANAGED | RDS .

    • ProductInformationFilterList (list) -- [REQUIRED]

      Product information filters.

      The following filters and logical operators are supported when the resource type is SSM_MANAGED :

      • Application Name - The name of the application. Logical operator is EQUALS .

      • Application Publisher - The publisher of the application. Logical operator is EQUALS .

      • Application Version - The version of the application. Logical operator is EQUALS .

      • Platform Name - The name of the platform. Logical operator is EQUALS .

      • Platform Type - The platform type. Logical operator is EQUALS .

      • License Included - The type of license included. Logical operators are EQUALS and NOT_EQUALS . Possible values are: sql-server-enterprise | sql-server-standard | sql-server-web | windows-server-datacenter .

      The following filters and logical operators are supported when the resource type is RDS :

      • Engine Edition - The edition of the database engine. Logical operator is EQUALS . Possible values are: oracle-ee | oracle-se | oracle-se1 | oracle-se2 .

      • License Pack - The license pack. Logical operator is EQUALS . Possible values are: data guard | diagnostic pack sqlt | tuning pack sqlt | ols | olap .

      • (dict) --

        Describes product information filters.

        • ProductInformationFilterName (string) -- [REQUIRED]

          Filter name.

        • ProductInformationFilterValue (list) -- [REQUIRED]

          Filter value.

          • (string) --

        • ProductInformationFilterComparator (string) -- [REQUIRED]

          Logical operator.

rtype

dict

returns

Response Syntax

{
    'LicenseConfigurationArn': 'string'
}

Response Structure

  • (dict) --

    • LicenseConfigurationArn (string) --

      Amazon Resource Name (ARN) of the license configuration.

GetLicenseConfiguration (updated) Link ¶
Changes (response)
{'DisassociateWhenNotFound': 'boolean'}

Gets detailed information about the specified license configuration.

See also: AWS API Documentation

Request Syntax

client.get_license_configuration(
    LicenseConfigurationArn='string'
)
type LicenseConfigurationArn

string

param LicenseConfigurationArn

[REQUIRED]

Amazon Resource Name (ARN) of the license configuration.

rtype

dict

returns

Response Syntax

{
    'LicenseConfigurationId': 'string',
    'LicenseConfigurationArn': 'string',
    'Name': 'string',
    'Description': 'string',
    'LicenseCountingType': 'vCPU'|'Instance'|'Core'|'Socket',
    'LicenseRules': [
        'string',
    ],
    'LicenseCount': 123,
    'LicenseCountHardLimit': True|False,
    'ConsumedLicenses': 123,
    'Status': 'string',
    'OwnerAccountId': 'string',
    'ConsumedLicenseSummaryList': [
        {
            'ResourceType': 'EC2_INSTANCE'|'EC2_HOST'|'EC2_AMI'|'RDS'|'SYSTEMS_MANAGER_MANAGED_INSTANCE',
            'ConsumedLicenses': 123
        },
    ],
    'ManagedResourceSummaryList': [
        {
            'ResourceType': 'EC2_INSTANCE'|'EC2_HOST'|'EC2_AMI'|'RDS'|'SYSTEMS_MANAGER_MANAGED_INSTANCE',
            'AssociationCount': 123
        },
    ],
    'Tags': [
        {
            'Key': 'string',
            'Value': 'string'
        },
    ],
    'ProductInformationList': [
        {
            'ResourceType': 'string',
            'ProductInformationFilterList': [
                {
                    'ProductInformationFilterName': 'string',
                    'ProductInformationFilterValue': [
                        'string',
                    ],
                    'ProductInformationFilterComparator': 'string'
                },
            ]
        },
    ],
    'AutomatedDiscoveryInformation': {
        'LastRunTime': datetime(2015, 1, 1)
    },
    'DisassociateWhenNotFound': True|False
}

Response Structure

  • (dict) --

    • LicenseConfigurationId (string) --

      Unique ID for the license configuration.

    • LicenseConfigurationArn (string) --

      Amazon Resource Name (ARN) of the license configuration.

    • Name (string) --

      Name of the license configuration.

    • Description (string) --

      Description of the license configuration.

    • LicenseCountingType (string) --

      Dimension on which the licenses are counted.

    • LicenseRules (list) --

      License rules.

      • (string) --

    • LicenseCount (integer) --

      Number of available licenses.

    • LicenseCountHardLimit (boolean) --

      Sets the number of available licenses as a hard limit.

    • ConsumedLicenses (integer) --

      Number of licenses assigned to resources.

    • Status (string) --

      License configuration status.

    • OwnerAccountId (string) --

      Account ID of the owner of the license configuration.

    • ConsumedLicenseSummaryList (list) --

      Summaries of the licenses consumed by resources.

      • (dict) --

        Details about license consumption.

        • ResourceType (string) --

          Resource type of the resource consuming a license.

        • ConsumedLicenses (integer) --

          Number of licenses consumed by the resource.

    • ManagedResourceSummaryList (list) --

      Summaries of the managed resources.

      • (dict) --

        Summary information about a managed resource.

        • ResourceType (string) --

          Type of resource associated with a license.

        • AssociationCount (integer) --

          Number of resources associated with licenses.

    • Tags (list) --

      Tags for the license configuration.

      • (dict) --

        Details about a tag for a license configuration.

        • Key (string) --

          Tag key.

        • Value (string) --

          Tag value.

    • ProductInformationList (list) --

      Product information.

      • (dict) --

        Describes product information for a license configuration.

        • ResourceType (string) --

          Resource type. The possible values are SSM_MANAGED | RDS .

        • ProductInformationFilterList (list) --

          Product information filters.

          The following filters and logical operators are supported when the resource type is SSM_MANAGED :

          • Application Name - The name of the application. Logical operator is EQUALS .

          • Application Publisher - The publisher of the application. Logical operator is EQUALS .

          • Application Version - The version of the application. Logical operator is EQUALS .

          • Platform Name - The name of the platform. Logical operator is EQUALS .

          • Platform Type - The platform type. Logical operator is EQUALS .

          • License Included - The type of license included. Logical operators are EQUALS and NOT_EQUALS . Possible values are: sql-server-enterprise | sql-server-standard | sql-server-web | windows-server-datacenter .

          The following filters and logical operators are supported when the resource type is RDS :

          • Engine Edition - The edition of the database engine. Logical operator is EQUALS . Possible values are: oracle-ee | oracle-se | oracle-se1 | oracle-se2 .

          • License Pack - The license pack. Logical operator is EQUALS . Possible values are: data guard | diagnostic pack sqlt | tuning pack sqlt | ols | olap .

          • (dict) --

            Describes product information filters.

            • ProductInformationFilterName (string) --

              Filter name.

            • ProductInformationFilterValue (list) --

              Filter value.

              • (string) --

            • ProductInformationFilterComparator (string) --

              Logical operator.

    • AutomatedDiscoveryInformation (dict) --

      Automated discovery information.

      • LastRunTime (datetime) --

        Time that automated discovery last ran.

    • DisassociateWhenNotFound (boolean) --

      When true, disassociates a resource when software is uninstalled.

ListLicenseConfigurations (updated) Link ¶
Changes (response)
{'LicenseConfigurations': {'DisassociateWhenNotFound': 'boolean'}}

Lists the license configurations for your account.

See also: AWS API Documentation

Request Syntax

client.list_license_configurations(
    LicenseConfigurationArns=[
        'string',
    ],
    MaxResults=123,
    NextToken='string',
    Filters=[
        {
            'Name': 'string',
            'Values': [
                'string',
            ]
        },
    ]
)
type LicenseConfigurationArns

list

param LicenseConfigurationArns

Amazon Resource Names (ARN) of the license configurations.

  • (string) --

type MaxResults

integer

param MaxResults

Maximum number of results to return in a single call.

type NextToken

string

param NextToken

Token for the next set of results.

type Filters

list

param Filters

Filters to scope the results. The following filters and logical operators are supported:

  • licenseCountingType - The dimension on which licenses are counted. Possible values are vCPU | Instance | Core | Socket . Logical operators are EQUALS | NOT_EQUALS .

  • enforceLicenseCount - A Boolean value that indicates whether hard license enforcement is used. Logical operators are EQUALS | NOT_EQUALS .

  • usagelimitExceeded - A Boolean value that indicates whether the available licenses have been exceeded. Logical operators are EQUALS | NOT_EQUALS .

  • (dict) --

    A filter name and value pair that is used to return more specific results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

    • Name (string) --

      Name of the filter. Filter names are case-sensitive.

    • Values (list) --

      Filter values. Filter values are case-sensitive.

      • (string) --

rtype

dict

returns

Response Syntax

{
    'LicenseConfigurations': [
        {
            'LicenseConfigurationId': 'string',
            'LicenseConfigurationArn': 'string',
            'Name': 'string',
            'Description': 'string',
            'LicenseCountingType': 'vCPU'|'Instance'|'Core'|'Socket',
            'LicenseRules': [
                'string',
            ],
            'LicenseCount': 123,
            'LicenseCountHardLimit': True|False,
            'DisassociateWhenNotFound': True|False,
            'ConsumedLicenses': 123,
            'Status': 'string',
            'OwnerAccountId': 'string',
            'ConsumedLicenseSummaryList': [
                {
                    'ResourceType': 'EC2_INSTANCE'|'EC2_HOST'|'EC2_AMI'|'RDS'|'SYSTEMS_MANAGER_MANAGED_INSTANCE',
                    'ConsumedLicenses': 123
                },
            ],
            'ManagedResourceSummaryList': [
                {
                    'ResourceType': 'EC2_INSTANCE'|'EC2_HOST'|'EC2_AMI'|'RDS'|'SYSTEMS_MANAGER_MANAGED_INSTANCE',
                    'AssociationCount': 123
                },
            ],
            'ProductInformationList': [
                {
                    'ResourceType': 'string',
                    'ProductInformationFilterList': [
                        {
                            'ProductInformationFilterName': 'string',
                            'ProductInformationFilterValue': [
                                'string',
                            ],
                            'ProductInformationFilterComparator': 'string'
                        },
                    ]
                },
            ],
            'AutomatedDiscoveryInformation': {
                'LastRunTime': datetime(2015, 1, 1)
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • LicenseConfigurations (list) --

      Information about the license configurations.

      • (dict) --

        A license configuration is an abstraction of a customer license agreement that can be consumed and enforced by License Manager. Components include specifications for the license type (licensing by instance, socket, CPU, or vCPU), allowed tenancy (shared tenancy, Dedicated Instance, Dedicated Host, or all of these), host affinity (how long a VM must be associated with a host), and the number of licenses purchased and used.

        • LicenseConfigurationId (string) --

          Unique ID of the license configuration.

        • LicenseConfigurationArn (string) --

          Amazon Resource Name (ARN) of the license configuration.

        • Name (string) --

          Name of the license configuration.

        • Description (string) --

          Description of the license configuration.

        • LicenseCountingType (string) --

          Dimension to use to track the license inventory.

        • LicenseRules (list) --

          License rules.

          • (string) --

        • LicenseCount (integer) --

          Number of licenses managed by the license configuration.

        • LicenseCountHardLimit (boolean) --

          Number of available licenses as a hard limit.

        • DisassociateWhenNotFound (boolean) --

          When true, disassociates a resource when software is uninstalled.

        • ConsumedLicenses (integer) --

          Number of licenses consumed.

        • Status (string) --

          Status of the license configuration.

        • OwnerAccountId (string) --

          Account ID of the license configuration's owner.

        • ConsumedLicenseSummaryList (list) --

          Summaries for licenses consumed by various resources.

          • (dict) --

            Details about license consumption.

            • ResourceType (string) --

              Resource type of the resource consuming a license.

            • ConsumedLicenses (integer) --

              Number of licenses consumed by the resource.

        • ManagedResourceSummaryList (list) --

          Summaries for managed resources.

          • (dict) --

            Summary information about a managed resource.

            • ResourceType (string) --

              Type of resource associated with a license.

            • AssociationCount (integer) --

              Number of resources associated with licenses.

        • ProductInformationList (list) --

          Product information.

          • (dict) --

            Describes product information for a license configuration.

            • ResourceType (string) --

              Resource type. The possible values are SSM_MANAGED | RDS .

            • ProductInformationFilterList (list) --

              Product information filters.

              The following filters and logical operators are supported when the resource type is SSM_MANAGED :

              • Application Name - The name of the application. Logical operator is EQUALS .

              • Application Publisher - The publisher of the application. Logical operator is EQUALS .

              • Application Version - The version of the application. Logical operator is EQUALS .

              • Platform Name - The name of the platform. Logical operator is EQUALS .

              • Platform Type - The platform type. Logical operator is EQUALS .

              • License Included - The type of license included. Logical operators are EQUALS and NOT_EQUALS . Possible values are: sql-server-enterprise | sql-server-standard | sql-server-web | windows-server-datacenter .

              The following filters and logical operators are supported when the resource type is RDS :

              • Engine Edition - The edition of the database engine. Logical operator is EQUALS . Possible values are: oracle-ee | oracle-se | oracle-se1 | oracle-se2 .

              • License Pack - The license pack. Logical operator is EQUALS . Possible values are: data guard | diagnostic pack sqlt | tuning pack sqlt | ols | olap .

              • (dict) --

                Describes product information filters.

                • ProductInformationFilterName (string) --

                  Filter name.

                • ProductInformationFilterValue (list) --

                  Filter value.

                  • (string) --

                • ProductInformationFilterComparator (string) --

                  Logical operator.

        • AutomatedDiscoveryInformation (dict) --

          Automated discovery information.

          • LastRunTime (datetime) --

            Time that automated discovery last ran.

    • NextToken (string) --

      Token for the next set of results.

UpdateLicenseConfiguration (updated) Link ¶
Changes (request)
{'DisassociateWhenNotFound': 'boolean'}

Modifies the attributes of an existing license configuration.

See also: AWS API Documentation

Request Syntax

client.update_license_configuration(
    LicenseConfigurationArn='string',
    LicenseConfigurationStatus='AVAILABLE'|'DISABLED',
    LicenseRules=[
        'string',
    ],
    LicenseCount=123,
    LicenseCountHardLimit=True|False,
    Name='string',
    Description='string',
    ProductInformationList=[
        {
            'ResourceType': 'string',
            'ProductInformationFilterList': [
                {
                    'ProductInformationFilterName': 'string',
                    'ProductInformationFilterValue': [
                        'string',
                    ],
                    'ProductInformationFilterComparator': 'string'
                },
            ]
        },
    ],
    DisassociateWhenNotFound=True|False
)
type LicenseConfigurationArn

string

param LicenseConfigurationArn

[REQUIRED]

Amazon Resource Name (ARN) of the license configuration.

type LicenseConfigurationStatus

string

param LicenseConfigurationStatus

New status of the license configuration.

type LicenseRules

list

param LicenseRules

New license rule. The only rule that you can add after you create a license configuration is licenseAffinityToHost.

  • (string) --

type LicenseCount

integer

param LicenseCount

New number of licenses managed by the license configuration.

type LicenseCountHardLimit

boolean

param LicenseCountHardLimit

New hard limit of the number of available licenses.

type Name

string

param Name

New name of the license configuration.

type Description

string

param Description

New description of the license configuration.

type ProductInformationList

list

param ProductInformationList

New product information.

  • (dict) --

    Describes product information for a license configuration.

    • ResourceType (string) -- [REQUIRED]

      Resource type. The possible values are SSM_MANAGED | RDS .

    • ProductInformationFilterList (list) -- [REQUIRED]

      Product information filters.

      The following filters and logical operators are supported when the resource type is SSM_MANAGED :

      • Application Name - The name of the application. Logical operator is EQUALS .

      • Application Publisher - The publisher of the application. Logical operator is EQUALS .

      • Application Version - The version of the application. Logical operator is EQUALS .

      • Platform Name - The name of the platform. Logical operator is EQUALS .

      • Platform Type - The platform type. Logical operator is EQUALS .

      • License Included - The type of license included. Logical operators are EQUALS and NOT_EQUALS . Possible values are: sql-server-enterprise | sql-server-standard | sql-server-web | windows-server-datacenter .

      The following filters and logical operators are supported when the resource type is RDS :

      • Engine Edition - The edition of the database engine. Logical operator is EQUALS . Possible values are: oracle-ee | oracle-se | oracle-se1 | oracle-se2 .

      • License Pack - The license pack. Logical operator is EQUALS . Possible values are: data guard | diagnostic pack sqlt | tuning pack sqlt | ols | olap .

      • (dict) --

        Describes product information filters.

        • ProductInformationFilterName (string) -- [REQUIRED]

          Filter name.

        • ProductInformationFilterValue (list) -- [REQUIRED]

          Filter value.

          • (string) --

        • ProductInformationFilterComparator (string) -- [REQUIRED]

          Logical operator.

type DisassociateWhenNotFound

boolean

param DisassociateWhenNotFound

When true, disassociates a resource when software is uninstalled.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --