IAM / Client / create_delegation_request
create_delegation_request¶
- IAM.Client.create_delegation_request(**kwargs)¶
Creates an IAM delegation request for temporary access delegation.
This API is not available for general use. In order to use this API, a caller first need to go through an onboarding process described in the partner onboarding documentation.
See also: AWS API Documentation
Request Syntax
response = client.create_delegation_request( OwnerAccountId='string', Description='string', Permissions={ 'PolicyTemplateArn': 'string', 'Parameters': [ { 'Name': 'string', 'Values': [ 'string', ], 'Type': 'string'|'stringList' }, ] }, RequestMessage='string', RequestorWorkflowId='string', RedirectUrl='string', NotificationChannel='string', SessionDuration=123, OnlySendByOwner=True|False )
- Parameters:
OwnerAccountId (string) –
The Amazon Web Services account ID this delegation request is targeted to.
If the account ID is not known, this parameter can be omitted, resulting in a request that can be associated by any account. If the account ID passed, then the created delegation request can only be associated with an identity of that target account.
Description (string) –
[REQUIRED]
A description of the delegation request.
Permissions (dict) –
[REQUIRED]
The permissions to be delegated in this delegation request.
PolicyTemplateArn (string) –
This ARN maps to a pre-registered policy content for this partner. See the `partner onboarding documentation to understand how to create a delegation template.
Parameters (list) –
A list of policy parameters that define the scope and constraints of the delegated permissions.
(dict) –
Contains information about a policy parameter used to customize delegated permissions.
Name (string) –
The name of the policy parameter.
Values (list) –
The allowed values for the policy parameter.
(string) –
Type (string) –
The data type of the policy parameter value.
RequestMessage (string) –
A message explaining the reason for the delegation request.
Requesters can utilize this field to add a custom note to the delegation request. This field is different from the description such that this is to be utilized for a custom messaging on a case-by-case basis.
For example, if the current delegation request is in response to a previous request being rejected, this explanation can be added to the request via this field.
RequestorWorkflowId (string) –
[REQUIRED]
The workflow ID associated with the requestor.
This is the unique identifier on the partner side that can be used to track the progress of the request.
IAM maintains a uniqueness check on this workflow id for each request - if a workflow id for an existing request is passed, this API call will fail.
RedirectUrl (string) –
The URL to redirect to after the delegation request is processed.
This URL is used by the IAM console to show a link to the customer to re-load the partner workflow.
NotificationChannel (string) –
[REQUIRED]
The notification channel for updates about the delegation request.
At this time,only SNS topic ARNs are accepted for notification. This topic ARN must have a resource policy granting
SNS:Publishpermission to the IAM service principal (iam.amazonaws.com). See partner onboarding documentation for more details.SessionDuration (integer) –
[REQUIRED]
The duration for which the delegated session should remain active, in seconds.
The active time window for the session starts when the customer calls the SendDelegationToken API.
OnlySendByOwner (boolean) –
Specifies whether the delegation token should only be sent by the owner.
This flag prevents any party other than the owner from calling
SendDelegationTokenAPI for this delegation request. This behavior becomes useful when the delegation request owner needs to be present for subsequent partner interactions, but the delegation request was sent to a more privileged user for approval due to the owner lacking sufficient delegation permissions.
- Return type:
dict
- Returns:
Response Syntax
{ 'ConsoleDeepLink': 'string', 'DelegationRequestId': 'string' }
Response Structure
(dict) –
ConsoleDeepLink (string) –
A deep link URL to the Amazon Web Services Management Console for managing the delegation request.
For a console based workflow, partners should redirect the customer to this URL. If the customer is not logged in to any Amazon Web Services account, the Amazon Web Services workflow will automatically direct the customer to log in and then display the delegation request approval page.
DelegationRequestId (string) –
The unique identifier for the created delegation request.
Exceptions