Values_4.LockSnapshotResultSourceLocks an Amazon EBS snapshot in either governance or compliance mode to protect it against accidental or malicious deletions for a specific duration. A locked snapshot can't be deleted. You can also use this action to modify the lock settings for a snapshot that is already locked. The allowed modifications depend on the lock mode and lock state: If the snapshot is locked in governance mode, you can modify the lock mode and the lock duration or lock expiration date. If the snapshot is locked in compliance mode and it is in the cooling-off period, you can modify the lock mode and the lock duration or lock expiration date. If the snapshot is locked in compliance mode and the cooling-off period has lapsed, you can only increase the lock duration or extend the lock expiration date.
type nonrec t = {snapshotId : Values_0.String_.t option;The ID of the snapshot
*)lockState : Values_1.LockState.t option;The state of the snapshot lock. Valid states include: compliance-cooloff - The snapshot has been locked in compliance mode but it is still within the cooling-off period. The snapshot can't be deleted, but it can be unlocked and the lock settings can be modified by users with appropriate permissions. governance - The snapshot is locked in governance mode. The snapshot can't be deleted, but it can be unlocked and the lock settings can be modified by users with appropriate permissions. compliance - The snapshot is locked in compliance mode and the cooling-off period has expired. The snapshot can't be unlocked or deleted. The lock duration can only be increased by users with appropriate permissions. expired - The snapshot was locked in compliance or governance mode but the lock duration has expired. The snapshot is not locked and can be deleted.
*)lockDuration : Values_1.RetentionPeriodResponseDays.t option;The period of time for which the snapshot is locked, in days.
*)coolOffPeriod : Values_1.CoolOffPeriodResponseHours.t option;The compliance mode cooling-off period, in hours.
*)coolOffPeriodExpiresOn : Values_0.MillisecondDateTime.t option;The date and time at which the compliance mode cooling-off period expires, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).
*)lockCreatedOn : Values_0.MillisecondDateTime.t option;The date and time at which the snapshot was locked, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).
*)lockExpiresOn : Values_0.MillisecondDateTime.t option;The date and time at which the lock will expire, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).
*)lockDurationStartTime : Values_0.MillisecondDateTime.t option;The date and time at which the lock duration started, in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ).
*)}val error_of_json :
'a ->
Yojson.Safe.t ->
[> `Unknown_operation_error of 'a * string option ]val to_value :
t ->
[> `Structure of
(string
* [> `Enum of string
| `Integer of Values_1.RetentionPeriodResponseDays.t
| `String of Values_0.String_.t
| `Timestamp of Values_0.MillisecondDateTime.t ])
list ]