[ aws . cloudfront ]

create-public-key

Description

Uploads a public key to CloudFront that you can use with signed URLs and signed cookies , or with field-level encryption .

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-public-key
--public-key-config <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--public-key-config (structure)

A CloudFront public key configuration.

CallerReference -> (string)

A string included in the request to help make sure that the request can’t be replayed.

Name -> (string)

A name to help identify the public key.

EncodedKey -> (string)

The public key that you can use with signed URLs and signed cookies , or with field-level encryption .

Comment -> (string)

A comment to describe the public key. The comment cannot be longer than 128 characters.

Shorthand Syntax:

CallerReference=string,Name=string,EncodedKey=string,Comment=string

JSON Syntax:

{
  "CallerReference": "string",
  "Name": "string",
  "EncodedKey": "string",
  "Comment": "string"
}

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.

Examples

To create a CloudFront public key

The following example creates a CloudFront public key by providing the parameters in a JSON file named pub-key-config.json. Before you can use this command, you must have a PEM-encoded public key. For more information, see Create an RSA Key Pair in the Amazon CloudFront Developer Guide.

aws cloudfront create-public-key \
    --public-key-config file://pub-key-config.json

The file pub-key-config.json is a JSON document in the current folder that contains the following. Note that the public key is encoded in PEM format.

{
    "CallerReference": "cli-example",
    "Name": "ExampleKey",
    "EncodedKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPMbCA2Ks0lnd7IR+3pw\nwd3H/7jPGwj8bLUmore7bX+oeGpZ6QmLAe/1UOWcmZX2u70dYcSIzB1ofZtcn4cJ\nenHBAzO3ohBY/L1tQGJfS2A+omnN6H16VZE1JCK8XSJyfze7MDLcUyHZETdxuvRb\nA9X343/vMAuQPnhinFJ8Wdy8YBXSPpy7r95ylUQd9LfYTBzVZYG2tSesplcOkjM3\n2Uu+oMWxQAw1NINnSLPinMVsutJy6ZqlV3McWNWe4T+STGtWhrPNqJEn45sIcCx4\nq+kGZ2NQ0FyIyT2eiLKOX5Rgb/a36E/aMk4VoDsaenBQgG7WLTnstb9sr7MIhS6A\nrwIDAQAB\n-----END PUBLIC KEY-----\n",
    "Comment": "example public key"
}

Output:

{
    "Location": "https://cloudfront.amazonaws.com/2019-03-26/public-key/KDFB19YGCR002",
    "ETag": "E2QWRUHEXAMPLE",
    "PublicKey": {
        "Id": "KDFB19YGCR002",
        "CreatedTime": "2019-12-05T18:51:43.781Z",
        "PublicKeyConfig": {
            "CallerReference": "cli-example",
            "Name": "ExampleKey",
            "EncodedKey": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxPMbCA2Ks0lnd7IR+3pw\nwd3H/7jPGwj8bLUmore7bX+oeGpZ6QmLAe/1UOWcmZX2u70dYcSIzB1ofZtcn4cJ\nenHBAzO3ohBY/L1tQGJfS2A+omnN6H16VZE1JCK8XSJyfze7MDLcUyHZETdxuvRb\nA9X343/vMAuQPnhinFJ8Wdy8YBXSPpy7r95ylUQd9LfYTBzVZYG2tSesplcOkjM3\n2Uu+oMWxQAw1NINnSLPinMVsutJy6ZqlV3McWNWe4T+STGtWhrPNqJEn45sIcCx4\nq+kGZ2NQ0FyIyT2eiLKOX5Rgb/a36E/aMk4VoDsaenBQgG7WLTnstb9sr7MIhS6A\nrwIDAQAB\n-----END PUBLIC KEY-----\n",
            "Comment": "example public key"
        }
    }
}

Output

PublicKey -> (structure)

The public key.

Id -> (string)

The identifier of the public key.

CreatedTime -> (timestamp)

The date and time when the public key was uploaded.

PublicKeyConfig -> (structure)

Configuration information about a public key that you can use with signed URLs and signed cookies , or with field-level encryption .

CallerReference -> (string)

A string included in the request to help make sure that the request can’t be replayed.

Name -> (string)

A name to help identify the public key.

EncodedKey -> (string)

The public key that you can use with signed URLs and signed cookies , or with field-level encryption .

Comment -> (string)

A comment to describe the public key. The comment cannot be longer than 128 characters.

Location -> (string)

The URL of the public key.

ETag -> (string)

The identifier for this version of the public key.