module Network.AWS.IAM.Types.Sum where
import Network.AWS.Prelude
data AssignmentStatusType
= Any
| Assigned
| Unassigned
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText AssignmentStatusType where
parser = takeLowerText >>= \case
"any" -> pure Any
"assigned" -> pure Assigned
"unassigned" -> pure Unassigned
e -> fromTextError $ "Failure parsing AssignmentStatusType from value: '" <> e
<> "'. Accepted values: Any, Assigned, Unassigned"
instance ToText AssignmentStatusType where
toText = \case
Any -> "Any"
Assigned -> "Assigned"
Unassigned -> "Unassigned"
instance Hashable AssignmentStatusType
instance NFData AssignmentStatusType
instance ToByteString AssignmentStatusType
instance ToQuery AssignmentStatusType
instance ToHeader AssignmentStatusType
data ContextKeyTypeEnum
= Binary
| BinaryList
| Boolean
| BooleanList
| Date
| DateList
| IP
| IPList
| Numeric
| NumericList
| String
| StringList
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText ContextKeyTypeEnum where
parser = takeLowerText >>= \case
"binary" -> pure Binary
"binarylist" -> pure BinaryList
"boolean" -> pure Boolean
"booleanlist" -> pure BooleanList
"date" -> pure Date
"datelist" -> pure DateList
"ip" -> pure IP
"iplist" -> pure IPList
"numeric" -> pure Numeric
"numericlist" -> pure NumericList
"string" -> pure String
"stringlist" -> pure StringList
e -> fromTextError $ "Failure parsing ContextKeyTypeEnum from value: '" <> e
<> "'. Accepted values: binary, binaryList, boolean, booleanList, date, dateList, ip, ipList, numeric, numericList, string, stringList"
instance ToText ContextKeyTypeEnum where
toText = \case
Binary -> "binary"
BinaryList -> "binaryList"
Boolean -> "boolean"
BooleanList -> "booleanList"
Date -> "date"
DateList -> "dateList"
IP -> "ip"
IPList -> "ipList"
Numeric -> "numeric"
NumericList -> "numericList"
String -> "string"
StringList -> "stringList"
instance Hashable ContextKeyTypeEnum
instance NFData ContextKeyTypeEnum
instance ToByteString ContextKeyTypeEnum
instance ToQuery ContextKeyTypeEnum
instance ToHeader ContextKeyTypeEnum
data EncodingType
= Pem
| SSH
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText EncodingType where
parser = takeLowerText >>= \case
"pem" -> pure Pem
"ssh" -> pure SSH
e -> fromTextError $ "Failure parsing EncodingType from value: '" <> e
<> "'. Accepted values: PEM, SSH"
instance ToText EncodingType where
toText = \case
Pem -> "PEM"
SSH -> "SSH"
instance Hashable EncodingType
instance NFData EncodingType
instance ToByteString EncodingType
instance ToQuery EncodingType
instance ToHeader EncodingType
data EntityType
= ETAWSManagedPolicy
| ETGroup
| ETLocalManagedPolicy
| ETRole
| ETUser
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText EntityType where
parser = takeLowerText >>= \case
"awsmanagedpolicy" -> pure ETAWSManagedPolicy
"group" -> pure ETGroup
"localmanagedpolicy" -> pure ETLocalManagedPolicy
"role" -> pure ETRole
"user" -> pure ETUser
e -> fromTextError $ "Failure parsing EntityType from value: '" <> e
<> "'. Accepted values: AWSManagedPolicy, Group, LocalManagedPolicy, Role, User"
instance ToText EntityType where
toText = \case
ETAWSManagedPolicy -> "AWSManagedPolicy"
ETGroup -> "Group"
ETLocalManagedPolicy -> "LocalManagedPolicy"
ETRole -> "Role"
ETUser -> "User"
instance Hashable EntityType
instance NFData EntityType
instance ToByteString EntityType
instance ToQuery EntityType
instance ToHeader EntityType
data PolicyEvaluationDecisionType
= Allowed
| ExplicitDeny
| ImplicitDeny
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText PolicyEvaluationDecisionType where
parser = takeLowerText >>= \case
"allowed" -> pure Allowed
"explicitdeny" -> pure ExplicitDeny
"implicitdeny" -> pure ImplicitDeny
e -> fromTextError $ "Failure parsing PolicyEvaluationDecisionType from value: '" <> e
<> "'. Accepted values: allowed, explicitDeny, implicitDeny"
instance ToText PolicyEvaluationDecisionType where
toText = \case
Allowed -> "allowed"
ExplicitDeny -> "explicitDeny"
ImplicitDeny -> "implicitDeny"
instance Hashable PolicyEvaluationDecisionType
instance NFData PolicyEvaluationDecisionType
instance ToByteString PolicyEvaluationDecisionType
instance ToQuery PolicyEvaluationDecisionType
instance ToHeader PolicyEvaluationDecisionType
instance FromXML PolicyEvaluationDecisionType where
parseXML = parseXMLText "PolicyEvaluationDecisionType"
data PolicyScopeType
= AWS
| All
| Local
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText PolicyScopeType where
parser = takeLowerText >>= \case
"aws" -> pure AWS
"all" -> pure All
"local" -> pure Local
e -> fromTextError $ "Failure parsing PolicyScopeType from value: '" <> e
<> "'. Accepted values: AWS, All, Local"
instance ToText PolicyScopeType where
toText = \case
AWS -> "AWS"
All -> "All"
Local -> "Local"
instance Hashable PolicyScopeType
instance NFData PolicyScopeType
instance ToByteString PolicyScopeType
instance ToQuery PolicyScopeType
instance ToHeader PolicyScopeType
data PolicySourceType
= AWSManaged
| Group
| None
| Resource
| Role
| User
| UserManaged
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText PolicySourceType where
parser = takeLowerText >>= \case
"aws-managed" -> pure AWSManaged
"group" -> pure Group
"none" -> pure None
"resource" -> pure Resource
"role" -> pure Role
"user" -> pure User
"user-managed" -> pure UserManaged
e -> fromTextError $ "Failure parsing PolicySourceType from value: '" <> e
<> "'. Accepted values: aws-managed, group, none, resource, role, user, user-managed"
instance ToText PolicySourceType where
toText = \case
AWSManaged -> "aws-managed"
Group -> "group"
None -> "none"
Resource -> "resource"
Role -> "role"
User -> "user"
UserManaged -> "user-managed"
instance Hashable PolicySourceType
instance NFData PolicySourceType
instance ToByteString PolicySourceType
instance ToQuery PolicySourceType
instance ToHeader PolicySourceType
instance FromXML PolicySourceType where
parseXML = parseXMLText "PolicySourceType"
data ReportFormatType =
TextCSV
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText ReportFormatType where
parser = takeLowerText >>= \case
"text/csv" -> pure TextCSV
e -> fromTextError $ "Failure parsing ReportFormatType from value: '" <> e
<> "'. Accepted values: text/csv"
instance ToText ReportFormatType where
toText = \case
TextCSV -> "text/csv"
instance Hashable ReportFormatType
instance NFData ReportFormatType
instance ToByteString ReportFormatType
instance ToQuery ReportFormatType
instance ToHeader ReportFormatType
instance FromXML ReportFormatType where
parseXML = parseXMLText "ReportFormatType"
data ReportStateType
= Complete
| Inprogress
| Started
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText ReportStateType where
parser = takeLowerText >>= \case
"complete" -> pure Complete
"inprogress" -> pure Inprogress
"started" -> pure Started
e -> fromTextError $ "Failure parsing ReportStateType from value: '" <> e
<> "'. Accepted values: COMPLETE, INPROGRESS, STARTED"
instance ToText ReportStateType where
toText = \case
Complete -> "COMPLETE"
Inprogress -> "INPROGRESS"
Started -> "STARTED"
instance Hashable ReportStateType
instance NFData ReportStateType
instance ToByteString ReportStateType
instance ToQuery ReportStateType
instance ToHeader ReportStateType
instance FromXML ReportStateType where
parseXML = parseXMLText "ReportStateType"
data StatusType
= Active
| Inactive
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText StatusType where
parser = takeLowerText >>= \case
"active" -> pure Active
"inactive" -> pure Inactive
e -> fromTextError $ "Failure parsing StatusType from value: '" <> e
<> "'. Accepted values: Active, Inactive"
instance ToText StatusType where
toText = \case
Active -> "Active"
Inactive -> "Inactive"
instance Hashable StatusType
instance NFData StatusType
instance ToByteString StatusType
instance ToQuery StatusType
instance ToHeader StatusType
instance FromXML StatusType where
parseXML = parseXMLText "StatusType"
data SummaryKeyType
= AccessKeysPerUserQuota
| AccountAccessKeysPresent
| AccountMFAEnabled
| AccountSigningCertificatesPresent
| AttachedPoliciesPerGroupQuota
| AttachedPoliciesPerRoleQuota
| AttachedPoliciesPerUserQuota
| GroupPolicySizeQuota
| Groups
| GroupsPerUserQuota
| GroupsQuota
| MFADevices
| MFADevicesInUse
| Policies
| PoliciesQuota
| PolicySizeQuota
| PolicyVersionsInUse
| PolicyVersionsInUseQuota
| ServerCertificates
| ServerCertificatesQuota
| SigningCertificatesPerUserQuota
| UserPolicySizeQuota
| Users
| UsersQuota
| VersionsPerPolicyQuota
deriving (Eq,Ord,Read,Show,Enum,Bounded,Data,Typeable,Generic)
instance FromText SummaryKeyType where
parser = takeLowerText >>= \case
"accesskeysperuserquota" -> pure AccessKeysPerUserQuota
"accountaccesskeyspresent" -> pure AccountAccessKeysPresent
"accountmfaenabled" -> pure AccountMFAEnabled
"accountsigningcertificatespresent" -> pure AccountSigningCertificatesPresent
"attachedpoliciespergroupquota" -> pure AttachedPoliciesPerGroupQuota
"attachedpoliciesperrolequota" -> pure AttachedPoliciesPerRoleQuota
"attachedpoliciesperuserquota" -> pure AttachedPoliciesPerUserQuota
"grouppolicysizequota" -> pure GroupPolicySizeQuota
"groups" -> pure Groups
"groupsperuserquota" -> pure GroupsPerUserQuota
"groupsquota" -> pure GroupsQuota
"mfadevices" -> pure MFADevices
"mfadevicesinuse" -> pure MFADevicesInUse
"policies" -> pure Policies
"policiesquota" -> pure PoliciesQuota
"policysizequota" -> pure PolicySizeQuota
"policyversionsinuse" -> pure PolicyVersionsInUse
"policyversionsinusequota" -> pure PolicyVersionsInUseQuota
"servercertificates" -> pure ServerCertificates
"servercertificatesquota" -> pure ServerCertificatesQuota
"signingcertificatesperuserquota" -> pure SigningCertificatesPerUserQuota
"userpolicysizequota" -> pure UserPolicySizeQuota
"users" -> pure Users
"usersquota" -> pure UsersQuota
"versionsperpolicyquota" -> pure VersionsPerPolicyQuota
e -> fromTextError $ "Failure parsing SummaryKeyType from value: '" <> e
<> "'. Accepted values: AccessKeysPerUserQuota, AccountAccessKeysPresent, AccountMFAEnabled, AccountSigningCertificatesPresent, AttachedPoliciesPerGroupQuota, AttachedPoliciesPerRoleQuota, AttachedPoliciesPerUserQuota, GroupPolicySizeQuota, Groups, GroupsPerUserQuota, GroupsQuota, MFADevices, MFADevicesInUse, Policies, PoliciesQuota, PolicySizeQuota, PolicyVersionsInUse, PolicyVersionsInUseQuota, ServerCertificates, ServerCertificatesQuota, SigningCertificatesPerUserQuota, UserPolicySizeQuota, Users, UsersQuota, VersionsPerPolicyQuota"
instance ToText SummaryKeyType where
toText = \case
AccessKeysPerUserQuota -> "AccessKeysPerUserQuota"
AccountAccessKeysPresent -> "AccountAccessKeysPresent"
AccountMFAEnabled -> "AccountMFAEnabled"
AccountSigningCertificatesPresent -> "AccountSigningCertificatesPresent"
AttachedPoliciesPerGroupQuota -> "AttachedPoliciesPerGroupQuota"
AttachedPoliciesPerRoleQuota -> "AttachedPoliciesPerRoleQuota"
AttachedPoliciesPerUserQuota -> "AttachedPoliciesPerUserQuota"
GroupPolicySizeQuota -> "GroupPolicySizeQuota"
Groups -> "Groups"
GroupsPerUserQuota -> "GroupsPerUserQuota"
GroupsQuota -> "GroupsQuota"
MFADevices -> "MFADevices"
MFADevicesInUse -> "MFADevicesInUse"
Policies -> "Policies"
PoliciesQuota -> "PoliciesQuota"
PolicySizeQuota -> "PolicySizeQuota"
PolicyVersionsInUse -> "PolicyVersionsInUse"
PolicyVersionsInUseQuota -> "PolicyVersionsInUseQuota"
ServerCertificates -> "ServerCertificates"
ServerCertificatesQuota -> "ServerCertificatesQuota"
SigningCertificatesPerUserQuota -> "SigningCertificatesPerUserQuota"
UserPolicySizeQuota -> "UserPolicySizeQuota"
Users -> "Users"
UsersQuota -> "UsersQuota"
VersionsPerPolicyQuota -> "VersionsPerPolicyQuota"
instance Hashable SummaryKeyType
instance NFData SummaryKeyType
instance ToByteString SummaryKeyType
instance ToQuery SummaryKeyType
instance ToHeader SummaryKeyType
instance FromXML SummaryKeyType where
parseXML = parseXMLText "SummaryKeyType"