libZSservicesZSamazonka-glacierZSamazonka-glacier
Copyright(c) 2013-2021 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone

Amazonka.Glacier.InitiateVaultLock

Description

This operation initiates the vault locking process by doing the following:

  • Installing a vault lock policy on the specified vault.
  • Setting the lock state of vault lock to InProgress.
  • Returning a lock ID, which is used to complete the vault locking process.

You can set one vault lock policy for each vault and this policy can be up to 20 KB in size. For more information about vault lock policies, see Amazon Glacier Access Control with Vault Lock Policies.

You must complete the vault locking process within 24 hours after the vault lock enters the InProgress state. After the 24 hour window ends, the lock ID expires, the vault automatically exits the InProgress state, and the vault lock policy is removed from the vault. You call CompleteVaultLock to complete the vault locking process by setting the state of the vault lock to Locked.

After a vault lock is in the Locked state, you cannot initiate a new vault lock for the vault.

You can abort the vault locking process by calling AbortVaultLock. You can get the state of the vault lock by calling GetVaultLock. For more information about the vault locking process, Amazon Glacier Vault Lock.

If this operation is called when the vault lock is in the InProgress state, the operation returns an AccessDeniedException error. When the vault lock is in the InProgress state you must call AbortVaultLock before you can initiate a new vault lock policy.

Synopsis

Creating a Request

data InitiateVaultLock Source #

The input values for InitiateVaultLock.

See: newInitiateVaultLock smart constructor.

Constructors

InitiateVaultLock' 

Fields

  • policy :: Maybe VaultLockPolicy

    The vault lock policy as a JSON string, which uses "\" as an escape character.

  • accountId :: Text

    The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single '-' (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens ('-') in the ID.

  • vaultName :: Text

    The name of the vault.

Instances

Instances details
Eq InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Read InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Show InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Generic InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Associated Types

type Rep InitiateVaultLock :: Type -> Type #

NFData InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Methods

rnf :: InitiateVaultLock -> () #

Hashable InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

ToJSON InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

AWSRequest InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Associated Types

type AWSResponse InitiateVaultLock #

ToHeaders InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

ToPath InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

ToQuery InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

type Rep InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

type Rep InitiateVaultLock = D1 ('MetaData "InitiateVaultLock" "Amazonka.Glacier.InitiateVaultLock" "libZSservicesZSamazonka-glacierZSamazonka-glacier" 'False) (C1 ('MetaCons "InitiateVaultLock'" 'PrefixI 'True) (S1 ('MetaSel ('Just "policy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe VaultLockPolicy)) :*: (S1 ('MetaSel ('Just "accountId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "vaultName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text))))
type AWSResponse InitiateVaultLock Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

newInitiateVaultLock Source #

Create a value of InitiateVaultLock with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:policy:InitiateVaultLock', initiateVaultLock_policy - The vault lock policy as a JSON string, which uses "\" as an escape character.

$sel:accountId:InitiateVaultLock', initiateVaultLock_accountId - The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single '-' (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens ('-') in the ID.

$sel:vaultName:InitiateVaultLock', initiateVaultLock_vaultName - The name of the vault.

Request Lenses

initiateVaultLock_policy :: Lens' InitiateVaultLock (Maybe VaultLockPolicy) Source #

The vault lock policy as a JSON string, which uses "\" as an escape character.

initiateVaultLock_accountId :: Lens' InitiateVaultLock Text Source #

The AccountId value is the AWS account ID. This value must match the AWS account ID associated with the credentials used to sign the request. You can either specify an AWS account ID or optionally a single '-' (hyphen), in which case Amazon Glacier uses the AWS account ID associated with the credentials used to sign the request. If you specify your account ID, do not include any hyphens ('-') in the ID.

Destructuring the Response

data InitiateVaultLockResponse Source #

Contains the Amazon S3 Glacier response to your request.

See: newInitiateVaultLockResponse smart constructor.

Constructors

InitiateVaultLockResponse' 

Fields

Instances

Instances details
Eq InitiateVaultLockResponse Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Read InitiateVaultLockResponse Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Show InitiateVaultLockResponse Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Generic InitiateVaultLockResponse Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

Associated Types

type Rep InitiateVaultLockResponse :: Type -> Type #

NFData InitiateVaultLockResponse Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

type Rep InitiateVaultLockResponse Source # 
Instance details

Defined in Amazonka.Glacier.InitiateVaultLock

type Rep InitiateVaultLockResponse = D1 ('MetaData "InitiateVaultLockResponse" "Amazonka.Glacier.InitiateVaultLock" "libZSservicesZSamazonka-glacierZSamazonka-glacier" 'False) (C1 ('MetaCons "InitiateVaultLockResponse'" 'PrefixI 'True) (S1 ('MetaSel ('Just "lockId") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "httpStatus") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Int)))

newInitiateVaultLockResponse Source #

Create a value of InitiateVaultLockResponse with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:lockId:InitiateVaultLockResponse', initiateVaultLockResponse_lockId - The lock ID, which is used to complete the vault locking process.

$sel:httpStatus:InitiateVaultLockResponse', initiateVaultLockResponse_httpStatus - The response's http status code.

Response Lenses

initiateVaultLockResponse_lockId :: Lens' InitiateVaultLockResponse (Maybe Text) Source #

The lock ID, which is used to complete the vault locking process.