File: //home/arjun/projects/env/lib/python3.10/site-packages/boto/kms/__pycache__/layer1.cpython-310.pyc
o
we�� � @ sl d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl m
Z
d dlmZ d dlZG dd � d e�Z
dS )
� N)�json)�AWSQueryConnection)�
RegionInfo)�JSONResponseError)�
exceptions)�sixc s� e Zd ZdZdZdZdZdZdZe Z
ejej
ejejejejejejejejejejejejejd�Z� fdd �Zd
d� Zdd
� Z dAdd�ZdBdd�Z dCdd�Z!dd� Z"dd� Z#dd� Z$dd� Z%dd� Z&dd � Z' dCd!d"�Z( dAd#d$�Z) dAd%d&�Z*dDd'd(�Z+d)d*� Z,d+d,� Z-dCd-d.�Z.dCd/d0�Z/dCd1d2�Z0dCd3d4�Z1d5d6� Z2 dBd7d8�Z3d9d:� Z4d;d<� Z5d=d>� Z6d?d@� Z7� Z8S )E�
KMSConnectiona
AWS Key Management Service
AWS Key Management Service (KMS) is an encryption and key
management web service. This guide describes the KMS actions that
you can call programmatically. For general information about KMS,
see (need an address here). For the KMS developer guide, see (need
address here).
AWS provides SDKs that consist of libraries and sample code for
various programming languages and platforms (Java, Ruby, .Net,
iOS, Android, etc.). The SDKs provide a convenient way to create
programmatic access to KMS and AWS. For example, the SDKs take
care of tasks such as signing requests (see below), managing
errors, and retrying requests automatically. For more information
about the AWS SDKs, including how to download and install them,
see `Tools for Amazon Web Services`_.
We recommend that you use the AWS SDKs to make programmatic API
calls to KMS. However, you can also use the KMS Query API to make
to make direct calls to the KMS web service.
**Signing Requests**
Requests must be signed by using an access key ID and a secret
access key. We strongly recommend that you do not use your AWS
account access key ID and secret key for everyday work with KMS.
Instead, use the access key ID and secret access key for an IAM
user, or you can use the AWS Security Token Service to generate
temporary security credentials that you can use to sign requests.
All KMS operations require `Signature Version 4`_.
**Recording API Requests**
KMS supports AWS CloudTrail, a service that records AWS API calls
and related events for your AWS account and delivers them to an
Amazon S3 bucket that you specify. By using the information
collected by CloudTrail, you can determine what requests were made
to KMS, who made the request, when it was made, and so on. To
learn more about CloudTrail, including how to turn it on and find
your log files, see the `AWS CloudTrail User Guide`_
**Additional Resources**
For more information about credentials and request signing, see
the following:
+ `AWS Security Credentials`_. This topic provides general
information about the types of credentials used for accessing AWS.
+ `AWS Security Token Service`_. This guide describes how to
create and use temporary security credentials.
+ `Signing AWS API Requests`_. This set of topics walks you
through the process of signing a request using an access key ID
and a secret access key.
z
2014-11-01z us-east-1zkms.us-east-1.amazonaws.com�KMS�TrentService)�InvalidGrantTokenException�DisabledException�LimitExceededException�DependencyTimeoutException�InvalidMarkerException�AlreadyExistsException�InvalidCiphertextException�KeyUnavailableException�InvalidAliasNameException�UnsupportedOperationException�InvalidArnException�KMSInternalException�InvalidKeyUsageException� MalformedPolicyDocumentException�NotFoundExceptionc s^ |� dd �}|st| | j| j�}d|vs|d d u r|j|d<