AWS License Manager Linux Subscriptions

2024/07/10 - AWS License Manager Linux Subscriptions - 7 new 1 updated api methods

Changes  Add support for third party subscription providers, starting with RHEL subscriptions through Red Hat Subscription Manager (RHSM). Additionally, add support for tagging subscription provider resources, and detect when an instance has more than one Linux subscription and notify the customer.

DeregisterSubscriptionProvider (new) Link ¶

Remove a third-party subscription provider from the Bring Your Own License (BYOL) subscriptions registered to your account.

See also: AWS API Documentation

Request Syntax

client.deregister_subscription_provider(
    SubscriptionProviderArn='string'
)
type SubscriptionProviderArn

string

param SubscriptionProviderArn

[REQUIRED]

The Amazon Resource Name (ARN) of the subscription provider resource to deregister.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

ListRegisteredSubscriptionProviders (new) Link ¶

List Bring Your Own License (BYOL) subscription registration resources for your account.

See also: AWS API Documentation

Request Syntax

client.list_registered_subscription_providers(
    MaxResults=123,
    NextToken='string',
    SubscriptionProviderSources=[
        'RedHat',
    ]
)
type MaxResults

integer

param MaxResults

The maximum items to return in a request.

type NextToken

string

param NextToken

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

type SubscriptionProviderSources

list

param SubscriptionProviderSources

To filter your results, specify which subscription providers to return in the list.

  • (string) --

rtype

dict

returns

Response Syntax

{
    'NextToken': 'string',
    'RegisteredSubscriptionProviders': [
        {
            'LastSuccessfulDataRetrievalTime': 'string',
            'SecretArn': 'string',
            'SubscriptionProviderArn': 'string',
            'SubscriptionProviderSource': 'RedHat',
            'SubscriptionProviderStatus': 'ACTIVE'|'INVALID'|'PENDING',
            'SubscriptionProviderStatusMessage': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • NextToken (string) --

      The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.

    • RegisteredSubscriptionProviders (list) --

      The list of BYOL registration resources that fit the criteria you specified in the request.

      • (dict) --

        A third-party provider for operating system (OS) platform software and license subscriptions, such as Red Hat. When you register a third-party Linux subscription provider, License Manager can get subscription data from the registered provider.

        • LastSuccessfulDataRetrievalTime (string) --

          The timestamp from the last time that License Manager accessed third-party subscription data for your account from your registered Linux subscription provider.

        • SecretArn (string) --

          The Amazon Resource Name (ARN) of the Secrets Manager secret that stores your registered Linux subscription provider access token. For RHEL account subscriptions, this is the offline token.

        • SubscriptionProviderArn (string) --

          The Amazon Resource Name (ARN) of the Linux subscription provider resource that you registered.

        • SubscriptionProviderSource (string) --

          A supported third-party Linux subscription provider. License Manager currently supports Red Hat subscriptions.

        • SubscriptionProviderStatus (string) --

          Indicates the status of your registered Linux subscription provider access token from the last time License Manager retrieved subscription data. For RHEL account subscriptions, this is the status of the offline token.

        • SubscriptionProviderStatusMessage (string) --

          A detailed message that's associated with your BYOL subscription provider token status.

ListTagsForResource (new) Link ¶

List the metadata tags that are assigned to the specified Amazon Web Services resource.

See also: AWS API Documentation

Request Syntax

client.list_tags_for_resource(
    resourceArn='string'
)
type resourceArn

string

param resourceArn

[REQUIRED]

The Amazon Resource Name (ARN) of the resource for which to list metadata tags.

rtype

dict

returns

Response Syntax

{
    'tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • tags (dict) --

      The metadata tags for the requested resource.

      • (string) --

        • (string) --

UntagResource (new) Link ¶

Remove one or more metadata tag from the specified Amazon Web Services resource.

See also: AWS API Documentation

Request Syntax

client.untag_resource(
    resourceArn='string',
    tagKeys=[
        'string',
    ]
)
type resourceArn

string

param resourceArn

[REQUIRED]

The Amazon Resource Name (ARN) of the Amazon Web Services resource to remove the metadata tags from.

type tagKeys

list

param tagKeys

[REQUIRED]

A list of metadata tag keys to remove from the requested resource.

  • (string) --

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

RegisterSubscriptionProvider (new) Link ¶

Register the supported third-party subscription provider for your Bring Your Own License (BYOL) subscription.

See also: AWS API Documentation

Request Syntax

client.register_subscription_provider(
    SecretArn='string',
    SubscriptionProviderSource='RedHat',
    Tags={
        'string': 'string'
    }
)
type SecretArn

string

param SecretArn

[REQUIRED]

The Amazon Resource Name (ARN) of the secret where you've stored your subscription provider's access token. For RHEL subscriptions managed through the Red Hat Subscription Manager (RHSM), the secret contains your Red Hat Offline token.

type SubscriptionProviderSource

string

param SubscriptionProviderSource

[REQUIRED]

The supported Linux subscription provider to register.

type Tags

dict

param Tags

The metadata tags to assign to your registered Linux subscription provider resource.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'SubscriptionProviderArn': 'string',
    'SubscriptionProviderSource': 'RedHat',
    'SubscriptionProviderStatus': 'ACTIVE'|'INVALID'|'PENDING'
}

Response Structure

  • (dict) --

    • SubscriptionProviderArn (string) --

      The Amazon Resource Name (ARN) of the Linux subscription provider resource that you registered.

    • SubscriptionProviderSource (string) --

      The Linux subscription provider that you registered.

    • SubscriptionProviderStatus (string) --

      Indicates the status of the registration action for the Linux subscription provider that you requested.

GetRegisteredSubscriptionProvider (new) Link ¶

Get details for a Bring Your Own License (BYOL) subscription that's registered to your account.

See also: AWS API Documentation

Request Syntax

client.get_registered_subscription_provider(
    SubscriptionProviderArn='string'
)
type SubscriptionProviderArn

string

param SubscriptionProviderArn

[REQUIRED]

The Amazon Resource Name (ARN) of the BYOL registration resource to get details for.

rtype

dict

returns

Response Syntax

{
    'LastSuccessfulDataRetrievalTime': 'string',
    'SecretArn': 'string',
    'SubscriptionProviderArn': 'string',
    'SubscriptionProviderSource': 'RedHat',
    'SubscriptionProviderStatus': 'ACTIVE'|'INVALID'|'PENDING',
    'SubscriptionProviderStatusMessage': 'string'
}

Response Structure

  • (dict) --

    • LastSuccessfulDataRetrievalTime (string) --

      The timestamp from the last time License Manager retrieved subscription details from your registered third-party Linux subscription provider.

    • SecretArn (string) --

      The Amazon Resource Name (ARN) of the third-party access secret stored in Secrets Manager for the BYOL registration resource specified in the request.

    • SubscriptionProviderArn (string) --

      The Amazon Resource Name (ARN) for the BYOL registration resource specified in the request.

    • SubscriptionProviderSource (string) --

      The subscription provider for the BYOL registration resource specified in the request.

    • SubscriptionProviderStatus (string) --

      The status of the Linux subscription provider access token from the last successful subscription data request.

    • SubscriptionProviderStatusMessage (string) --

      The detailed message from your subscription provider token status.

TagResource (new) Link ¶

Add metadata tags to the specified Amazon Web Services resource.

See also: AWS API Documentation

Request Syntax

client.tag_resource(
    resourceArn='string',
    tags={
        'string': 'string'
    }
)
type resourceArn

string

param resourceArn

[REQUIRED]

The Amazon Resource Name (ARN) of the Amazon Web Services resource to which to add the specified metadata tags.

type tags

dict

param tags

[REQUIRED]

The metadata tags to assign to the Amazon Web Services resource. Tags are formatted as key value pairs.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

ListLinuxSubscriptionInstances (updated) Link ¶
Changes (response)
{'Instances': {'DualSubscription': 'string',
               'OsVersion': 'string',
               'RegisteredWithSubscriptionProvider': 'string',
               'SubscriptionProviderCreateTime': 'string',
               'SubscriptionProviderUpdateTime': 'string'}}

Lists the running Amazon EC2 instances that were discovered with commercial Linux subscriptions.

See also: AWS API Documentation

Request Syntax

client.list_linux_subscription_instances(
    Filters=[
        {
            'Name': 'string',
            'Operator': 'Equal'|'NotEqual'|'Contains',
            'Values': [
                'string',
            ]
        },
    ],
    MaxResults=123,
    NextToken='string'
)
type Filters

list

param Filters

An array of structures that you can use to filter the results by your specified criteria. For example, you can specify Region in the Name , with the contains operator to list all subscriptions that match a partial string in the Value , such as us-west .

For each filter, you can specify one of the following values for the Name key to streamline results:

  • AccountID

  • AmiID

  • DualSubscription

  • InstanceID

  • InstanceType

  • ProductCode

  • Region

  • Status

  • UsageOperation

For each filter, you can use one of the following Operator values to define the behavior of the filter:

  • contains

  • equals

  • Notequal

  • (dict) --

    A filter object 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.

    • Name (string) --

      The type of name to filter by.

    • Operator (string) --

      An operator for filtering results.

    • Values (list) --

      One or more values for the name to filter by.

      • (string) --

type MaxResults

integer

param MaxResults

The maximum items to return in a request.

type NextToken

string

param NextToken

A token to specify where to start paginating. This is the nextToken from a previously truncated response.

rtype

dict

returns

Response Syntax

{
    'Instances': [
        {
            'AccountID': 'string',
            'AmiId': 'string',
            'DualSubscription': 'string',
            'InstanceID': 'string',
            'InstanceType': 'string',
            'LastUpdatedTime': 'string',
            'OsVersion': 'string',
            'ProductCode': [
                'string',
            ],
            'Region': 'string',
            'RegisteredWithSubscriptionProvider': 'string',
            'Status': 'string',
            'SubscriptionName': 'string',
            'SubscriptionProviderCreateTime': 'string',
            'SubscriptionProviderUpdateTime': 'string',
            'UsageOperation': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Instances (list) --

      An array that contains instance objects.

      • (dict) --

        Details discovered information about a running instance using Linux subscriptions.

        • AccountID (string) --

          The account ID which owns the instance.

        • AmiId (string) --

          The AMI ID used to launch the instance.

        • DualSubscription (string) --

          Indicates that you have two different license subscriptions for the same software on your instance.

        • InstanceID (string) --

          The instance ID of the resource.

        • InstanceType (string) --

          The instance type of the resource.

        • LastUpdatedTime (string) --

          The time in which the last discovery updated the instance details.

        • OsVersion (string) --

          The operating system software version that runs on your instance.

        • ProductCode (list) --

          The product code for the instance. For more information, see Usage operation values in the License Manager User Guide .

          • (string) --

        • Region (string) --

          The Region the instance is running in.

        • RegisteredWithSubscriptionProvider (string) --

          Indicates that your instance uses a BYOL license subscription from a third-party Linux subscription provider that you've registered with License Manager.

        • Status (string) --

          The status of the instance.

        • SubscriptionName (string) --

          The name of the license subscription that the instance uses.

        • SubscriptionProviderCreateTime (string) --

          The timestamp when you registered the third-party Linux subscription provider for the subscription that the instance uses.

        • SubscriptionProviderUpdateTime (string) --

          The timestamp from the last time that the instance synced with the registered third-party Linux subscription provider.

        • UsageOperation (string) --

          The usage operation of the instance. For more information, see For more information, see Usage operation values in the License Manager User Guide .

    • NextToken (string) --

      The next token used for paginated responses. When this field isn't empty, there are additional elements that the service hasn't included in this request. Use this token with the next request to retrieve additional objects.