create_entitlement

create_entitlement(**kwargs)

Creates a new entitlement. Entitlements control access to specific applications within a stack, based on user attributes. Entitlements apply to SAML 2.0 federated user identities. Amazon AppStream 2.0 user pool and streaming URL users are entitled to all applications in a stack. Entitlements don't apply to the desktop stream view application, or to applications managed by a dynamic app provider using the Dynamic Application Framework.

See also: AWS API Documentation

Request Syntax

response = client.create_entitlement(
    Name='string',
    StackName='string',
    Description='string',
    AppVisibility='ALL'|'ASSOCIATED',
    Attributes=[
        {
            'Name': 'string',
            'Value': 'string'
        },
    ]
)
Parameters
  • Name (string) --

    [REQUIRED]

    The name of the entitlement.

  • StackName (string) --

    [REQUIRED]

    The name of the stack with which the entitlement is associated.

  • Description (string) -- The description of the entitlement.
  • AppVisibility (string) --

    [REQUIRED]

    Specifies whether all or selected apps are entitled.

  • Attributes (list) --

    [REQUIRED]

    The attributes of the entitlement.

    • (dict) --

      An attribute associated with an entitlement. Application entitlements work by matching a supported SAML 2.0 attribute name to a value when a user identity federates to an Amazon AppStream 2.0 SAML application.

      • Name (string) -- [REQUIRED]

        A supported AWS IAM SAML PrincipalTag attribute that is matched to the associated value when a user identity federates into an Amazon AppStream 2.0 SAML application.

        The following are valid values:

        • roles
        • department
        • organization
        • groups
        • title
        • costCenter
        • userType
      • Value (string) -- [REQUIRED]

        A value that is matched to a supported SAML attribute name when a user identity federates into an Amazon AppStream 2.0 SAML application.

Return type

dict

Returns

Response Syntax

{
    'Entitlement': {
        'Name': 'string',
        'StackName': 'string',
        'Description': 'string',
        'AppVisibility': 'ALL'|'ASSOCIATED',
        'Attributes': [
            {
                'Name': 'string',
                'Value': 'string'
            },
        ],
        'CreatedTime': datetime(2015, 1, 1),
        'LastModifiedTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • Entitlement (dict) --

      The entitlement.

      • Name (string) --

        The name of the entitlement.

      • StackName (string) --

        The name of the stack with which the entitlement is associated.

      • Description (string) --

        The description of the entitlement.

      • AppVisibility (string) --

        Specifies whether all or selected apps are entitled.

      • Attributes (list) --

        The attributes of the entitlement.

        • (dict) --

          An attribute associated with an entitlement. Application entitlements work by matching a supported SAML 2.0 attribute name to a value when a user identity federates to an Amazon AppStream 2.0 SAML application.

          • Name (string) --

            A supported AWS IAM SAML PrincipalTag attribute that is matched to the associated value when a user identity federates into an Amazon AppStream 2.0 SAML application.

            The following are valid values:

            • roles
            • department
            • organization
            • groups
            • title
            • costCenter
            • userType
          • Value (string) --

            A value that is matched to a supported SAML attribute name when a user identity federates into an Amazon AppStream 2.0 SAML application.

      • CreatedTime (datetime) --

        The time when the entitlement was created.

      • LastModifiedTime (datetime) --

        The time when the entitlement was last modified.

Exceptions

  • AppStream.Client.exceptions.OperationNotPermittedException
  • AppStream.Client.exceptions.ResourceNotFoundException
  • AppStream.Client.exceptions.LimitExceededException
  • AppStream.Client.exceptions.EntitlementAlreadyExistsException