1# coding=utf-8 2# -------------------------------------------------------------------------- 3# Copyright (c) Microsoft Corporation. All rights reserved. 4# Licensed under the MIT License. See License.txt in the project root for license information. 5# Code generated by Microsoft (R) AutoRest Code Generator. 6# Changes may cause incorrect behavior and will be lost if the code is regenerated. 7# -------------------------------------------------------------------------- 8 9from enum import Enum, EnumMeta 10from six import with_metaclass 11 12class _CaseInsensitiveEnumMeta(EnumMeta): 13 def __getitem__(self, name): 14 return super().__getitem__(name.upper()) 15 16 def __getattr__(cls, name): 17 """Return the enum member matching `name` 18 We use __getattr__ instead of descriptors or inserting into the enum 19 class' __dict__ in order to support `name` and `value` being both 20 properties for enum members (which live in the class' __dict__) and 21 enum members themselves. 22 """ 23 try: 24 return cls._member_map_[name.upper()] 25 except KeyError: 26 raise AttributeError(name) 27 28 29class ActionType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): 30 """The type of the action. 31 """ 32 33 EMAIL_CONTACTS = "EmailContacts" 34 AUTO_RENEW = "AutoRenew" 35 36class DeletionRecoveryLevel(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): 37 """Reflects the deletion recovery level currently in effect for certificates in the current vault. 38 If it contains 'Purgeable', the certificate can be permanently deleted by a privileged user; 39 otherwise, only the system can purge the certificate, at the end of the retention interval. 40 """ 41 42 #: Denotes a vault state in which deletion is an irreversible operation, without the possibility 43 #: for recovery. This level corresponds to no protection being available against a Delete 44 #: operation; the data is irretrievably lost upon accepting a Delete operation at the entity level 45 #: or higher (vault, resource group, subscription etc.). 46 PURGEABLE = "Purgeable" 47 #: Denotes a vault state in which deletion is recoverable, and which also permits immediate and 48 #: permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted entity 49 #: during the retention interval (90 days), unless a Purge operation is requested, or the 50 #: subscription is cancelled. System wil permanently delete it after 90 days, if not recovered. 51 RECOVERABLE_PURGEABLE = "Recoverable+Purgeable" 52 #: Denotes a vault state in which deletion is recoverable without the possibility for immediate 53 #: and permanent deletion (i.e. purge). This level guarantees the recoverability of the deleted 54 #: entity during the retention interval(90 days) and while the subscription is still available. 55 #: System wil permanently delete it after 90 days, if not recovered. 56 RECOVERABLE = "Recoverable" 57 #: Denotes a vault and subscription state in which deletion is recoverable within retention 58 #: interval (90 days), immediate and permanent deletion (i.e. purge) is not permitted, and in 59 #: which the subscription itself cannot be permanently canceled. System wil permanently delete it 60 #: after 90 days, if not recovered. 61 RECOVERABLE_PROTECTED_SUBSCRIPTION = "Recoverable+ProtectedSubscription" 62 #: Denotes a vault state in which deletion is recoverable, and which also permits immediate and 63 #: permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90). This level guarantees 64 #: the recoverability of the deleted entity during the retention interval, unless a Purge 65 #: operation is requested, or the subscription is cancelled. 66 CUSTOMIZED_RECOVERABLE_PURGEABLE = "CustomizedRecoverable+Purgeable" 67 #: Denotes a vault state in which deletion is recoverable without the possibility for immediate 68 #: and permanent deletion (i.e. purge when 7<= SoftDeleteRetentionInDays < 90).This level 69 #: guarantees the recoverability of the deleted entity during the retention interval and while the 70 #: subscription is still available. 71 CUSTOMIZED_RECOVERABLE = "CustomizedRecoverable" 72 #: Denotes a vault and subscription state in which deletion is recoverable, immediate and 73 #: permanent deletion (i.e. purge) is not permitted, and in which the subscription itself cannot 74 #: be permanently canceled when 7<= SoftDeleteRetentionInDays < 90. This level guarantees the 75 #: recoverability of the deleted entity during the retention interval, and also reflects the fact 76 #: that the subscription itself cannot be cancelled. 77 CUSTOMIZED_RECOVERABLE_PROTECTED_SUBSCRIPTION = "CustomizedRecoverable+ProtectedSubscription" 78 79class JsonWebKeyCurveName(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): 80 """Elliptic curve name. For valid values, see JsonWebKeyCurveName. 81 """ 82 83 P256 = "P-256" 84 P384 = "P-384" 85 P521 = "P-521" 86 P256_K = "P-256K" 87 88class JsonWebKeyType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): 89 """The type of key pair to be used for the certificate. 90 """ 91 92 EC = "EC" 93 EC_HSM = "EC-HSM" 94 RSA = "RSA" 95 RSA_HSM = "RSA-HSM" 96 OCT = "oct" 97 OCT_HSM = "oct-HSM" 98 99class KeyUsageType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): 100 101 DIGITAL_SIGNATURE = "digitalSignature" 102 NON_REPUDIATION = "nonRepudiation" 103 KEY_ENCIPHERMENT = "keyEncipherment" 104 DATA_ENCIPHERMENT = "dataEncipherment" 105 KEY_AGREEMENT = "keyAgreement" 106 KEY_CERT_SIGN = "keyCertSign" 107 C_RL_SIGN = "cRLSign" 108 ENCIPHER_ONLY = "encipherOnly" 109 DECIPHER_ONLY = "decipherOnly" 110