File: //usr/lib/python3/dist-packages/boto/cognito/identity/__pycache__/layer1.cpython-310.pyc
o
ckF[}` � @ sX d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl m
Z
G dd� de�ZdS ) � N)�json)�AWSQueryConnection)�
RegionInfo)�JSONResponseError)�
exceptionsc s� e Zd ZdZdZdZdZdZdZe Z
ejej
ejejejejejejd�Z� fdd �Zd
d� Z d)d
d�Zdd� Zdd� Zd*dd�Zd*dd�Z d+dd�Zd*dd�Zd*dd�Z d,dd�Zdd � Z d!d"� Z!d#d$� Z" d)d%d&�Z#d'd(� Z$� Z%S )-�CognitoIdentityConnectiona�
Amazon Cognito
Amazon Cognito is a web service that delivers scoped temporary
credentials to mobile devices and other untrusted environments.
Amazon Cognito uniquely identifies a device and supplies the user
with a consistent identity over the lifetime of an application.
Using Amazon Cognito, you can enable authentication with one or
more third-party identity providers (Facebook, Google, or Login
with Amazon), and you can also choose to support unauthenticated
access from your app. Cognito delivers a unique identifier for
each user and acts as an OpenID token provider trusted by AWS
Security Token Service (STS) to access temporary, limited-
privilege AWS credentials.
To provide end-user credentials, first make an unsigned call to
GetId. If the end user is authenticated with one of the supported
identity providers, set the `Logins` map with the identity
provider token. `GetId` returns a unique identifier for the user.
Next, make an unsigned call to GetOpenIdToken, which returns the
OpenID token necessary to call STS and retrieve AWS credentials.
This call expects the same `Logins` map as the `GetId` call, as
well as the `IdentityID` originally returned by `GetId`. The token
returned by `GetOpenIdToken` can be passed to the STS operation
`AssumeRoleWithWebIdentity`_ to retrieve AWS credentials.
z
2014-06-30z us-east-1z(cognito-identity.us-east-1.amazonaws.com�CognitoIdentity�AWSCognitoIdentityService)�LimitExceededException�ResourceConflictException�'DeveloperUserAlreadyRegisteredException�TooManyRequestsException�InvalidParameterException�ResourceNotFoundException�InternalErrorException�NotAuthorizedExceptionc s^ |� dd �}|st| | j| j�}d|vs|d d u r|j|d<