public_keys
Creates, updates, deletes or gets a public_key resource or lists public_keys in a region
Overview
| Name | public_keys |
| Type | Resource |
| Description | A public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html). |
| Id | awscc.cloudfront.public_keys |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
created_time | string | |
id | string | |
public_key_config | object | Configuration information about a public key that you can use with [signed URLs and signed cookies](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html), or with [field-level encryption](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html). |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
id | string | |
region | string | AWS region. |
For more information, see AWS::CloudFront::PublicKey.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | public_keys | INSERT | PublicKeyConfig, region |
delete_resource | public_keys | DELETE | Identifier, region |
update_resource | public_keys | UPDATE | Identifier, PatchDocument, region |
list_resources | public_keys_list_only | SELECT | region |
get_resource | public_keys | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual public_key.
SELECT
region,
created_time,
id,
public_key_config
FROM awscc.cloudfront.public_keys
WHERE
region = 'us-east-1' AND
Identifier = '{{ id }}';
Lists all public_keys in a region.
SELECT
region,
id
FROM awscc.cloudfront.public_keys_list_only
WHERE
region = 'us-east-1';
INSERT example
Use the following StackQL query and manifest file to create a new public_key resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.cloudfront.public_keys (
PublicKeyConfig,
region
)
SELECT
'{{ public_key_config }}',
'{{ region }}';
/*+ create */
INSERT INTO awscc.cloudfront.public_keys (
PublicKeyConfig,
region
)
SELECT
'{{ public_key_config }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: public_key
props:
- name: public_key_config
value:
caller_reference: '{{ caller_reference }}'
comment: '{{ comment }}'
encoded_key: '{{ encoded_key }}'
name: '{{ name }}'
UPDATE example
Use the following StackQL query and manifest file to update a public_key resource, using stack-deploy.
/*+ update */
UPDATE awscc.cloudfront.public_keys
SET PatchDocument = string('{{ {
"PublicKeyConfig": public_key_config
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ id }}';
DELETE example
/*+ delete */
DELETE FROM awscc.cloudfront.public_keys
WHERE
Identifier = '{{ id }}' AND
region = 'us-east-1';
Permissions
To operate on the public_keys resource, the following permissions are required:
- Create
- Delete
- List
- Read
- Update
cloudfront:CreatePublicKey
cloudfront:DeletePublicKey,
cloudfront:GetPublicKey
cloudfront:ListPublicKeys
cloudfront:GetPublicKey
cloudfront:UpdatePublicKey,
cloudfront:GetPublicKey