AWS Systems Manager for SAP

2022/11/18 - AWS Systems Manager for SAP - 16 new api methods

Changes  remove ssmsap client AWS Systems Manager for SAP provides simplified operations and management of SAP applications such as SAP HANA. With this release, SAP customers and partners can automate and simplify their SAP system administration tasks such as backup/restore of SAP HANA.

ListTagsForResource (new) Link ¶

Lists all tags on an SAP HANA application and/or database registered with AWS Systems Manager for SAP.

See also: AWS API Documentation

Request Syntax

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

string

param resourceArn

[REQUIRED]

rtype

dict

returns

Response Syntax

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

Response Structure

  • (dict) --

    • tags (dict) --

      • (string) --

        • (string) --

ListDatabases (new) Link ¶

Lists the SAP HANA databases of an application registered with AWS Systems Manager for SAP.

See also: AWS API Documentation

Request Syntax

client.list_databases(
    ApplicationId='string',
    ComponentId='string',
    NextToken='string',
    MaxResults=123
)
type ApplicationId

string

param ApplicationId

type ComponentId

string

param ComponentId

type NextToken

string

param NextToken

type MaxResults

integer

param MaxResults

rtype

dict

returns

Response Syntax

{
    'Databases': [
        {
            'ApplicationId': 'string',
            'ComponentId': 'string',
            'DatabaseId': 'string',
            'DatabaseType': 'SYSTEM'|'TENANT',
            'Arn': 'string',
            'Tags': {
                'string': 'string'
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Databases (list) --

      • (dict) --

        • ApplicationId (string) --

        • ComponentId (string) --

        • DatabaseId (string) --

        • DatabaseType (string) --

        • Arn (string) --

        • Tags (dict) --

          • (string) --

            • (string) --

    • NextToken (string) --

PutResourcePermission (new) Link ¶

Adds permissions to the target database.

See also: AWS API Documentation

Request Syntax

client.put_resource_permission(
    ActionType='RESTORE',
    SourceResourceArn='string',
    ResourceArn='string'
)
type ActionType

string

param ActionType

[REQUIRED]

type SourceResourceArn

string

param SourceResourceArn

[REQUIRED]

type ResourceArn

string

param ResourceArn

[REQUIRED]

rtype

dict

returns

Response Syntax

{
    'Policy': 'string'
}

Response Structure

  • (dict) --

    • Policy (string) --

ListApplications (new) Link ¶

Lists all the applications registered with AWS Systems Manager for SAP.

See also: AWS API Documentation

Request Syntax

client.list_applications(
    NextToken='string',
    MaxResults=123
)
type NextToken

string

param NextToken

type MaxResults

integer

param MaxResults

rtype

dict

returns

Response Syntax

{
    'Applications': [
        {
            'Id': 'string',
            'Type': 'HANA',
            'Arn': 'string',
            'Tags': {
                'string': 'string'
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Applications (list) --

      • (dict) --

        • Id (string) --

        • Type (string) --

        • Arn (string) --

        • Tags (dict) --

          • (string) --

            • (string) --

    • NextToken (string) --

GetComponent (new) Link ¶

Gets the component of an application registered with AWS Systems Manager for SAP.

See also: AWS API Documentation

Request Syntax

client.get_component(
    ApplicationId='string',
    ComponentId='string'
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

type ComponentId

string

param ComponentId

[REQUIRED]

rtype

dict

returns

Response Syntax

{
    'Component': {
        'ComponentId': 'string',
        'ApplicationId': 'string',
        'ComponentType': 'HANA',
        'Status': 'ACTIVATED',
        'Databases': [
            'string',
        ],
        'Hosts': [
            {
                'HostName': 'string',
                'HostRole': 'LEADER'|'WORKER'|'STANDBY'|'UNKNOWN',
                'HostIp': 'string',
                'InstanceId': 'string'
            },
        ],
        'PrimaryHost': 'string',
        'LastUpdated': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • Component (dict) --

      • ComponentId (string) --

      • ApplicationId (string) --

      • ComponentType (string) --

      • Status (string) --

      • Databases (list) --

        • (string) --

      • Hosts (list) --

        • (dict) --

          • HostName (string) --

          • HostRole (string) --

          • HostIp (string) --

          • InstanceId (string) --

      • PrimaryHost (string) --

      • LastUpdated (datetime) --

RegisterApplication (new) Link ¶

Register an SAP application with AWS Systems Manager for SAP. You must meet the following requirements before registering.

The SAP application you want to register with AWS Systems Manager for SAP is running on Amazon EC2.

AWS Systems Manager Agent must be setup on an Amazon EC2 instance along with the required IAM permissions.

Amazon EC2 instance(s) must have access to the secrets created in AWS Secrets Manager to manage SAP applications and components.

See also: AWS API Documentation

Request Syntax

client.register_application(
    ApplicationId='string',
    ApplicationType='HANA',
    Instances=[
        'string',
    ],
    SapInstanceNumber='string',
    Sid='string',
    Tags={
        'string': 'string'
    },
    Credentials=[
        {
            'DatabaseName': 'string',
            'CredentialType': 'ADMIN',
            'SecretId': 'string'
        },
    ]
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

type ApplicationType

string

param ApplicationType

[REQUIRED]

type Instances

list

param Instances

[REQUIRED]

  • (string) --

type SapInstanceNumber

string

param SapInstanceNumber

type Sid

string

param Sid

type Tags

dict

param Tags
  • (string) --

    • (string) --

type Credentials

list

param Credentials

[REQUIRED]

  • (dict) --

    • DatabaseName (string) -- [REQUIRED]

    • CredentialType (string) -- [REQUIRED]

    • SecretId (string) -- [REQUIRED]

rtype

dict

returns

Response Syntax

{
    'Application': {
        'Id': 'string',
        'Type': 'HANA',
        'Arn': 'string',
        'AppRegistryArn': 'string',
        'Status': 'ACTIVATED'|'STARTING'|'STOPPED'|'STOPPING'|'FAILED'|'REGISTERING'|'DELETING'|'UNKNOWN',
        'Components': [
            'string',
        ],
        'LastUpdated': datetime(2015, 1, 1),
        'StatusMessage': 'string'
    },
    'OperationId': 'string'
}

Response Structure

  • (dict) --

    • Application (dict) --

      • Id (string) --

      • Type (string) --

      • Arn (string) --

      • AppRegistryArn (string) --

      • Status (string) --

      • Components (list) --

        • (string) --

      • LastUpdated (datetime) --

      • StatusMessage (string) --

    • OperationId (string) --

ListComponents (new) Link ¶

Lists all the components registered with AWS Systems Manager for SAP.

See also: AWS API Documentation

Request Syntax

client.list_components(
    ApplicationId='string',
    NextToken='string',
    MaxResults=123
)
type ApplicationId

string

param ApplicationId

type NextToken

string

param NextToken

type MaxResults

integer

param MaxResults

rtype

dict

returns

Response Syntax

{
    'Components': [
        {
            'ApplicationId': 'string',
            'ComponentId': 'string',
            'ComponentType': 'HANA',
            'Tags': {
                'string': 'string'
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Components (list) --

      • (dict) --

        • ApplicationId (string) --

        • ComponentId (string) --

        • ComponentType (string) --

        • Tags (dict) --

          • (string) --

            • (string) --

    • NextToken (string) --

UpdateApplicationSettings (new) Link ¶

See also: AWS API Documentation

Request Syntax

client.update_application_settings(
    ApplicationId='string',
    CredentialsToAddOrUpdate=[
        {
            'DatabaseName': 'string',
            'CredentialType': 'ADMIN',
            'SecretId': 'string'
        },
    ],
    CredentialsToRemove=[
        {
            'DatabaseName': 'string',
            'CredentialType': 'ADMIN',
            'SecretId': 'string'
        },
    ]
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

type CredentialsToAddOrUpdate

list

param CredentialsToAddOrUpdate
  • (dict) --

    • DatabaseName (string) -- [REQUIRED]

    • CredentialType (string) -- [REQUIRED]

    • SecretId (string) -- [REQUIRED]

type CredentialsToRemove

list

param CredentialsToRemove
  • (dict) --

    • DatabaseName (string) -- [REQUIRED]

    • CredentialType (string) -- [REQUIRED]

    • SecretId (string) -- [REQUIRED]

rtype

dict

returns

Response Syntax

{
    'Message': 'string',
    'OperationIds': [
        'string',
    ]
}

Response Structure

  • (dict) --

    • Message (string) --

    • OperationIds (list) --

      • (string) --

DeregisterApplication (new) Link ¶

Deregister an SAP application with AWS Systems Manager for SAP. This action does not affect the existing setup of your SAP workloads on Amazon EC2.

See also: AWS API Documentation

Request Syntax

client.deregister_application(
    ApplicationId='string'
)
type ApplicationId

string

param ApplicationId

[REQUIRED]

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

GetApplication (new) Link ¶

Gets an application registered with AWS Systems Manager for SAP. It also returns the components of the application.

See also: AWS API Documentation

Request Syntax

client.get_application(
    ApplicationId='string',
    ApplicationArn='string'
)
type ApplicationId

string

param ApplicationId

type ApplicationArn

string

param ApplicationArn

rtype

dict

returns

Response Syntax

{
    'Application': {
        'Id': 'string',
        'Type': 'HANA',
        'Arn': 'string',
        'AppRegistryArn': 'string',
        'Status': 'ACTIVATED'|'STARTING'|'STOPPED'|'STOPPING'|'FAILED'|'REGISTERING'|'DELETING'|'UNKNOWN',
        'Components': [
            'string',
        ],
        'LastUpdated': datetime(2015, 1, 1),
        'StatusMessage': 'string'
    },
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • Application (dict) --

      • Id (string) --

      • Type (string) --

      • Arn (string) --

      • AppRegistryArn (string) --

      • Status (string) --

      • Components (list) --

        • (string) --

      • LastUpdated (datetime) --

      • StatusMessage (string) --

    • Tags (dict) --

      • (string) --

        • (string) --

GetOperation (new) Link ¶

Gets the details of an operation by specifying the operation ID.

See also: AWS API Documentation

Request Syntax

client.get_operation(
    OperationId='string'
)
type OperationId

string

param OperationId

[REQUIRED]

rtype

dict

returns

Response Syntax

{
    'Operation': {
        'Id': 'string',
        'Type': 'string',
        'Status': 'INPROGRESS'|'SUCCESS'|'ERROR',
        'StatusMessage': 'string',
        'Properties': {
            'string': 'string'
        },
        'ResourceType': 'string',
        'ResourceId': 'string',
        'ResourceArn': 'string',
        'StartTime': datetime(2015, 1, 1),
        'EndTime': datetime(2015, 1, 1),
        'LastUpdatedTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • Operation (dict) --

      • Id (string) --

      • Type (string) --

      • Status (string) --

      • StatusMessage (string) --

      • Properties (dict) --

        • (string) --

          • (string) --

      • ResourceType (string) --

      • ResourceId (string) --

      • ResourceArn (string) --

      • StartTime (datetime) --

      • EndTime (datetime) --

      • LastUpdatedTime (datetime) --

TagResource (new) Link ¶

Creates tag for a resource by specifying the ARN.

See also: AWS API Documentation

Request Syntax

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

string

param resourceArn

[REQUIRED]

type tags

dict

param tags

[REQUIRED]

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

GetResourcePermission (new) Link ¶

Gets permissions associated with the target database.

See also: AWS API Documentation

Request Syntax

client.get_resource_permission(
    ActionType='RESTORE',
    ResourceArn='string'
)
type ActionType

string

param ActionType

type ResourceArn

string

param ResourceArn

[REQUIRED]

rtype

dict

returns

Response Syntax

{
    'Policy': 'string'
}

Response Structure

  • (dict) --

    • Policy (string) --

UntagResource (new) Link ¶

Delete the tags for a resource.

See also: AWS API Documentation

Request Syntax

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

string

param resourceArn

[REQUIRED]

type tagKeys

list

param tagKeys

[REQUIRED]

Adds/updates or removes credentials for applications registered with AWS Systems Manager for SAP.

  • (string) --

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

DeleteResourcePermission (new) Link ¶

Removes permissions associated with the target database.

See also: AWS API Documentation

Request Syntax

client.delete_resource_permission(
    ActionType='RESTORE',
    SourceResourceArn='string',
    ResourceArn='string'
)
type ActionType

string

param ActionType

type SourceResourceArn

string

param SourceResourceArn

type ResourceArn

string

param ResourceArn

[REQUIRED]

rtype

dict

returns

Response Syntax

{
    'Policy': 'string'
}

Response Structure

  • (dict) --

    • Policy (string) --

GetDatabase (new) Link ¶

Gets the SAP HANA database of an application registered with AWS Systems Manager for SAP.

See also: AWS API Documentation

Request Syntax

client.get_database(
    ApplicationId='string',
    ComponentId='string',
    DatabaseId='string',
    DatabaseArn='string'
)
type ApplicationId

string

param ApplicationId

type ComponentId

string

param ComponentId

type DatabaseId

string

param DatabaseId

type DatabaseArn

string

param DatabaseArn

rtype

dict

returns

Response Syntax

{
    'Database': {
        'ApplicationId': 'string',
        'ComponentId': 'string',
        'Credentials': [
            {
                'DatabaseName': 'string',
                'CredentialType': 'ADMIN',
                'SecretId': 'string'
            },
        ],
        'DatabaseId': 'string',
        'DatabaseName': 'string',
        'DatabaseType': 'SYSTEM'|'TENANT',
        'Arn': 'string',
        'Status': 'RUNNING'|'STARTING'|'STOPPED'|'WARNING'|'UNKNOWN',
        'PrimaryHost': 'string',
        'SQLPort': 123,
        'LastUpdated': datetime(2015, 1, 1)
    },
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • Database (dict) --

      • ApplicationId (string) --

      • ComponentId (string) --

      • Credentials (list) --

        • (dict) --

          • DatabaseName (string) --

          • CredentialType (string) --

          • SecretId (string) --

      • DatabaseId (string) --

      • DatabaseName (string) --

      • DatabaseType (string) --

      • Arn (string) --

      • Status (string) --

      • PrimaryHost (string) --

      • SQLPort (integer) --

      • LastUpdated (datetime) --

    • Tags (dict) --

      • (string) --

        • (string) --