AWS SDK for Go (PILOT)
API Reference

PREVIEW DOCUMENTATION - This is a preview of a new format for the AWS SDK for Go API Reference documentation. For the current AWS SDK for Go API Reference, see https://docs.aws.amazon.com/sdk-for-go/api/.

We welcome your feedback on this new version of the documentation. Send your comments to aws-sdkdocs-feedback@amazon.com.

CreateRoleInput

import "github.com/aws/aws-sdk-go/service/iam"

type CreateRoleInput struct { AssumeRolePolicyDocument *string `min:"1" type:"string" required:"true"` Description *string `type:"string"` MaxSessionDuration *int64 `min:"3600" type:"integer"` Path *string `min:"1" type:"string"` PermissionsBoundary *string `min:"20" type:"string"` RoleName *string `min:"1" type:"string" required:"true"` Tags []*Tag `type:"list"` }

AssumeRolePolicyDocument

Type: *string

The trust relationship policy document that grants an entity permission to assume the role.

The regex pattern (http://wikipedia.org/wiki/regex) used to validate this parameter is a string of characters consisting of the following:

  • Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range

  • The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF)

  • The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)

AssumeRolePolicyDocument is a required field

Description

Type: *string

A description of the role.

MaxSessionDuration

Type: *int64

The maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours.

Anyone who assumes the role from the AWS CLI or API can use the DurationSeconds API parameter or the duration-seconds CLI parameter to request a longer session. The MaxSessionDuration setting determines the maximum duration that can be requested using the DurationSeconds parameter. If users don't specify a value for the DurationSeconds parameter, their security credentials are valid for one hour by default. This applies when you use the AssumeRole* API operations or the assume-role* CLI operations but does not apply when you use those operations to create a console URL. For more information, see Using IAM Roles (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html) in the IAM User Guide.

Path

Type: *string

The path to the role. For more information about paths, see IAM Identifiers (https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html) in the IAM User Guide.

This parameter is optional. If it is not included, it defaults to a slash (/).

This parameter allows (through its regex pattern (http://wikipedia.org/wiki/regex)) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.

PermissionsBoundary

Type: *string

The ARN of the policy that is used to set the permissions boundary for the role.

RoleName

Type: *string

The name of the role to create.

This parameter allows (through its regex pattern (http://wikipedia.org/wiki/regex)) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-

Role names are not distinguished by case. For example, you cannot create roles named both "PRODROLE" and "prodrole".

RoleName is a required field

Tags

A structure that represents user-provided metadata that can be associated with a resource such as an IAM user or role. For more information about tagging, see Tagging IAM Identities (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html) in the IAM User Guide.

Method

GoString

func (s CreateRoleInput) GoString() string

GoString returns the string representation

SetAssumeRolePolicyDocument

func (s *CreateRoleInput) SetAssumeRolePolicyDocument(v string) *CreateRoleInput

SetAssumeRolePolicyDocument sets the AssumeRolePolicyDocument field's value.

SetDescription

func (s *CreateRoleInput) SetDescription(v string) *CreateRoleInput

SetDescription sets the Description field's value.

SetMaxSessionDuration

func (s *CreateRoleInput) SetMaxSessionDuration(v int64) *CreateRoleInput

SetMaxSessionDuration sets the MaxSessionDuration field's value.

SetPath

func (s *CreateRoleInput) SetPath(v string) *CreateRoleInput

SetPath sets the Path field's value.

SetPermissionsBoundary

func (s *CreateRoleInput) SetPermissionsBoundary(v string) *CreateRoleInput

SetPermissionsBoundary sets the PermissionsBoundary field's value.

SetRoleName

func (s *CreateRoleInput) SetRoleName(v string) *CreateRoleInput

SetRoleName sets the RoleName field's value.

SetTags

func (s *CreateRoleInput) SetTags(v []*Tag) *CreateRoleInput

SetTags sets the Tags field's value.

String

func (s CreateRoleInput) String() string

String returns the string representation

Validate

func (s *CreateRoleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

On this page: