class Amazonite::Iam::CreateDelegationRequestRequest

Defined in:

iam/create_delegation_request_request.cr

Constructors

Instance Method Summary

Constructor Detail

def self.from_xml(node : XML::Node) : self #

[View source]
def self.new(description : String, permissions : DelegationPermission, requestor_workflow_id : String, notification_channel : String, session_duration : Int32, owner_account_id : String | Nil = nil, request_message : String | Nil = nil, redirect_url : String | Nil = nil, only_send_by_owner : Bool | Nil = nil) #

[View source]

Instance Method Detail

def ==(other : self) #
Description copied from class Reference

Returns true if this reference is the same as other. Invokes same?.


def description : String #

A description of the delegation request.


[View source]
def description=(description : String) #

A description of the delegation request.


[View source]
def hash(hasher) #
Description copied from class Reference

See Object#hash(hasher)


def notification_channel : String #

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:Publish permission to the IAM service principal (iam.amazonaws.com). See partner onboarding documentation for more details.


[View source]
def notification_channel=(notification_channel : String) #

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:Publish permission to the IAM service principal (iam.amazonaws.com). See partner onboarding documentation for more details.


[View source]
def only_send_by_owner : Bool | Nil #

Specifies whether the delegation token should only be sent by the owner.

This flag prevents any party other than the owner from calling SendDelegationToken API 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.


[View source]
def only_send_by_owner=(only_send_by_owner : Bool | Nil) #

Specifies whether the delegation token should only be sent by the owner.

This flag prevents any party other than the owner from calling SendDelegationToken API 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.


[View source]
def owner_account_id : String | Nil #

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.


[View source]
def owner_account_id=(owner_account_id : String | Nil) #

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.


[View source]
def permissions : DelegationPermission #

The permissions to be delegated in this delegation request.


[View source]
def permissions=(permissions : DelegationPermission) #

The permissions to be delegated in this delegation request.


[View source]
def redirect_url : String | Nil #

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.


[View source]
def redirect_url=(redirect_url : String | Nil) #

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.


[View source]
def request_message : String | Nil #

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.


[View source]
def request_message=(request_message : String | Nil) #

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.


[View source]
def requestor_workflow_id : String #

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.


[View source]
def requestor_workflow_id=(requestor_workflow_id : String) #

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.


[View source]
def session_duration : Int32 #

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.


[View source]
def session_duration=(session_duration : Int32) #

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.


[View source]
def to_query_params(prefix : String) : Array(Tuple(String, String)) #

[View source]
def validate! : Nil #

[View source]