Skip to content

API for AWS Identity and Access Management

ABAP Package /AWS1/API_IAM
ABAP SDK "TLA" IAM
ABAP Interface /AWS1/IF_IAM

The "TLA" is a Three Letter Abbreviation that appears in ABAP class names, data dictionary objects and other ABAP objects throughout the AWS SDK for SAP ABAP. The TLA for AWS Identity and Access Management is IAM. This TLA helps squeeze ABAP objects into the 30-character length limit of the ABAP data dictionary.

Installation

To install the AWS SDK for SAP ABAP, import the Core transport, along with the transport for the IAM module and other API modules you are interested in. A few modules are included in the Core transport itself. For more information, see the Developer Guide guide.

About The Service

Identity and Access Management

Identity and Access Management (IAM) is a web service for securely controlling access to Amazon Web Services services. With IAM, you can centrally manage users, security credentials such as access keys, and permissions that control which Amazon Web Services resources users and applications can access. For more information about IAM, see Identity and Access Management (IAM) and the Identity and Access Management User Guide.

Programmatic access to IAM

We recommend that you use the Amazon Web Services SDKs to make programmatic API calls to IAM. The Amazon Web Services SDKs consist of libraries and sample code for various programming languages and platforms (for example, Java, Ruby, .NET, iOS, and Android). The SDKs provide a convenient way to create programmatic access to IAM and Amazon Web Services. For example, the SDKs take care of tasks such as cryptographically signing requests, managing errors, and retrying requests automatically. For more information, see Tools to build on Amazon Web Services.

Alternatively, you can also use the IAM Query API to make direct calls to the IAM service. For more information about calling the IAM Query API, see Making query requests in the Identity and Access Management User Guide. IAM supports GET and POST requests for all actions. That is, the API does not require you to use GET for some actions and POST for others. However, GET requests are subject to the limitation size of a URL. Therefore, for operations that require larger sizes, use a POST request.

Signing requests

Requests must be signed using an access key ID and a secret access key. We strongly recommend that you do not use your Amazon Web Services account access key ID and secret access key for everyday work with IAM. You can use the access key ID and secret access key for an IAM user or you can use the Security Token Service to generate temporary security credentials and use those to sign requests.

To sign requests, we recommend that you use Signature Version 4. If you have an existing application that uses Signature Version 2, you do not have to update it to use Signature Version 4. However, some operations now require Signature Version 4. The documentation for operations that require version 4 indicate this requirement.

Additional resources

Using the SDK

In your code, create a client using the SDK module for AWS Identity and Access Management, which is created with factory method /AWS1/CL_IAM_FACTORY=>create(). In this example we will assume you have configured an SDK profile in transaction /AWS1/IMG called ZFINANCE.

DATA(go_session)   = /aws1/cl_rt_session_aws=>create( 'ZFINANCE' ).
DATA(go_iam)       = /aws1/cl_iam_factory=>create( go_session ).

Your variable go_iam is an instance of /AWS1/IF_IAM, and all of the operations in the AWS Identity and Access Management service are accessed by calling methods in /AWS1/IF_IAM.

API Operations

For an overview of ABAP method calls corresponding to API operations in AWS Identity and Access Management, see the Operation List.

Factory Method

/AWS1/CL_IAM_FACTORY=>create( )

Creates an object of type /AWS1/IF_IAM.

IMPORTING

Optional arguments:

iv_protocol TYPE /aws1/rt_protocol /AWS1/RT_PROTOCOL

io_session TYPE REF TO /aws1/cl_rt_session_base /AWS1/CL_RT_SESSION_BASE

iv_region TYPE /aws1/rt_region_id /AWS1/RT_REGION_ID

iv_custom_endpoint TYPE /aws1/rt_endpoint /AWS1/RT_ENDPOINT

RETURNING

oo_client TYPE REF TO /aws1/if_iam /AWS1/IF_IAM

/AWS1/IF_IAM represents the ABAP client for the IAM service, representing each operation as a method call. For more information see the API Page page.

Configuring Programmatically

DATA(lo_config) = DATA(go_iam)->get_config( ).

lo_config is a variable of type /AWS1/CL_IAM_CONFIG. See the documentation for /AWS1/CL_IAM_CONFIG for details on the settings that can be configured.

Waiters

Waiters for Implementation can be accessed via get_waiter() method followed by the waiter method to be called.

Details about the waiter methods available for service Implementation can be found in interface /AWS1/IF_IAM_WAITER.

Paginators

Paginators for AWS Identity and Access Management can be created via get_paginator() which returns a paginator object of type /AWS1/IF_IAM_PAGINATOR. The operation method that is being paginated is called using the paginator object, which accepts any necessary parameters to provide to the underlying API operation. This returns an iterator object which can be used to iterate over paginated results using has_next() and get_next() methods.

Details about the paginator methods available for service AWS Identity and Access Management can be found in interface /AWS1/IF_IAM_PAGINATOR.