amazonka-iam 1.6.1 → 2.0
raw patch · 577 files changed
+58423/−25413 lines, 577 filesdep +case-insensitivedep ~amazonka-coredep ~amazonka-testdep ~basesetup-changedPVP ok
version bump matches the API change (PVP)
Dependencies added: case-insensitive
Dependency ranges changed: amazonka-core, amazonka-test, base
API changes (from Hackage documentation)
- Network.AWS.IAM: AWS :: PolicyScopeType
- Network.AWS.IAM: AWSManaged :: PolicySourceType
- Network.AWS.IAM: AccessKeysPerUserQuota :: SummaryKeyType
- Network.AWS.IAM: AccountAccessKeysPresent :: SummaryKeyType
- Network.AWS.IAM: AccountMFAEnabled :: SummaryKeyType
- Network.AWS.IAM: AccountSigningCertificatesPresent :: SummaryKeyType
- Network.AWS.IAM: Active :: StatusType
- Network.AWS.IAM: All :: PolicyScopeType
- Network.AWS.IAM: Allowed :: PolicyEvaluationDecisionType
- Network.AWS.IAM: Any :: AssignmentStatusType
- Network.AWS.IAM: Assigned :: AssignmentStatusType
- Network.AWS.IAM: AttachedPoliciesPerGroupQuota :: SummaryKeyType
- Network.AWS.IAM: AttachedPoliciesPerRoleQuota :: SummaryKeyType
- Network.AWS.IAM: AttachedPoliciesPerUserQuota :: SummaryKeyType
- Network.AWS.IAM: Binary :: ContextKeyTypeEnum
- Network.AWS.IAM: BinaryList :: ContextKeyTypeEnum
- Network.AWS.IAM: Boolean :: ContextKeyTypeEnum
- Network.AWS.IAM: BooleanList :: ContextKeyTypeEnum
- Network.AWS.IAM: Date :: ContextKeyTypeEnum
- Network.AWS.IAM: DateList :: ContextKeyTypeEnum
- Network.AWS.IAM: ETAWSManagedPolicy :: EntityType
- Network.AWS.IAM: ETGroup :: EntityType
- Network.AWS.IAM: ETLocalManagedPolicy :: EntityType
- Network.AWS.IAM: ETRole :: EntityType
- Network.AWS.IAM: ETUser :: EntityType
- Network.AWS.IAM: ExplicitDeny :: PolicyEvaluationDecisionType
- Network.AWS.IAM: Failed :: DeletionTaskStatusType
- Network.AWS.IAM: Group :: PolicySourceType
- Network.AWS.IAM: GroupPolicySizeQuota :: SummaryKeyType
- Network.AWS.IAM: Groups :: SummaryKeyType
- Network.AWS.IAM: GroupsPerUserQuota :: SummaryKeyType
- Network.AWS.IAM: GroupsQuota :: SummaryKeyType
- Network.AWS.IAM: IP :: ContextKeyTypeEnum
- Network.AWS.IAM: IPList :: ContextKeyTypeEnum
- Network.AWS.IAM: ImplicitDeny :: PolicyEvaluationDecisionType
- Network.AWS.IAM: InProgress :: DeletionTaskStatusType
- Network.AWS.IAM: Inactive :: StatusType
- Network.AWS.IAM: Local :: PolicyScopeType
- Network.AWS.IAM: MFADevices :: SummaryKeyType
- Network.AWS.IAM: MFADevicesInUse :: SummaryKeyType
- Network.AWS.IAM: None :: PolicySourceType
- Network.AWS.IAM: NotStarted :: DeletionTaskStatusType
- Network.AWS.IAM: Numeric :: ContextKeyTypeEnum
- Network.AWS.IAM: NumericList :: ContextKeyTypeEnum
- Network.AWS.IAM: Pem :: EncodingType
- Network.AWS.IAM: Policies :: SummaryKeyType
- Network.AWS.IAM: PoliciesQuota :: SummaryKeyType
- Network.AWS.IAM: PolicySizeQuota :: SummaryKeyType
- Network.AWS.IAM: PolicyVersionsInUse :: SummaryKeyType
- Network.AWS.IAM: PolicyVersionsInUseQuota :: SummaryKeyType
- Network.AWS.IAM: RSTComplete :: ReportStateType
- Network.AWS.IAM: RSTInprogress :: ReportStateType
- Network.AWS.IAM: RSTStarted :: ReportStateType
- Network.AWS.IAM: Resource :: PolicySourceType
- Network.AWS.IAM: Role :: PolicySourceType
- Network.AWS.IAM: SSH :: EncodingType
- Network.AWS.IAM: ServerCertificates :: SummaryKeyType
- Network.AWS.IAM: ServerCertificatesQuota :: SummaryKeyType
- Network.AWS.IAM: SigningCertificatesPerUserQuota :: SummaryKeyType
- Network.AWS.IAM: String :: ContextKeyTypeEnum
- Network.AWS.IAM: StringList :: ContextKeyTypeEnum
- Network.AWS.IAM: Succeeded :: DeletionTaskStatusType
- Network.AWS.IAM: TextCSV :: ReportFormatType
- Network.AWS.IAM: Unassigned :: AssignmentStatusType
- Network.AWS.IAM: User :: PolicySourceType
- Network.AWS.IAM: UserManaged :: PolicySourceType
- Network.AWS.IAM: UserPolicySizeQuota :: SummaryKeyType
- Network.AWS.IAM: Users :: SummaryKeyType
- Network.AWS.IAM: UsersQuota :: SummaryKeyType
- Network.AWS.IAM: VersionsPerPolicyQuota :: SummaryKeyType
- Network.AWS.IAM: _CredentialReportExpiredException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _CredentialReportNotPresentException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _CredentialReportNotReadyException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _DeleteConflictException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _DuplicateCertificateException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _DuplicateSSHPublicKeyException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _EntityAlreadyExistsException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _EntityTemporarilyUnmodifiableException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _InvalidAuthenticationCodeException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _InvalidCertificateException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _InvalidInputException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _InvalidPublicKeyException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _InvalidUserTypeException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _KeyPairMismatchException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _MalformedCertificateException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _MalformedPolicyDocumentException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _NoSuchEntityException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _PasswordPolicyViolationException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _PolicyEvaluationException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _PolicyNotAttachableException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _ServiceFailureException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _ServiceNotSupportedException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _UnmodifiableEntityException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: _UnrecognizedPublicKeyEncodingException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM: accessKeyInfo :: Text -> AccessKey -> StatusType -> Text -> AccessKeyInfo
- Network.AWS.IAM: accessKeyLastUsed :: UTCTime -> Text -> Text -> AccessKeyLastUsed
- Network.AWS.IAM: accessKeyMetadata :: AccessKeyMetadata
- Network.AWS.IAM: akiAccessKeyId :: Lens' AccessKeyInfo AccessKey
- Network.AWS.IAM: akiCreateDate :: Lens' AccessKeyInfo (Maybe UTCTime)
- Network.AWS.IAM: akiSecretAccessKey :: Lens' AccessKeyInfo Text
- Network.AWS.IAM: akiStatus :: Lens' AccessKeyInfo StatusType
- Network.AWS.IAM: akiUserName :: Lens' AccessKeyInfo Text
- Network.AWS.IAM: akluLastUsedDate :: Lens' AccessKeyLastUsed UTCTime
- Network.AWS.IAM: akluRegion :: Lens' AccessKeyLastUsed Text
- Network.AWS.IAM: akluServiceName :: Lens' AccessKeyLastUsed Text
- Network.AWS.IAM: akmAccessKeyId :: Lens' AccessKeyMetadata (Maybe AccessKey)
- Network.AWS.IAM: akmCreateDate :: Lens' AccessKeyMetadata (Maybe UTCTime)
- Network.AWS.IAM: akmStatus :: Lens' AccessKeyMetadata (Maybe StatusType)
- Network.AWS.IAM: akmUserName :: Lens' AccessKeyMetadata (Maybe Text)
- Network.AWS.IAM: apPolicyARN :: Lens' AttachedPolicy (Maybe Text)
- Network.AWS.IAM: apPolicyName :: Lens' AttachedPolicy (Maybe Text)
- Network.AWS.IAM: attachedPolicy :: AttachedPolicy
- Network.AWS.IAM: ceContextKeyName :: Lens' ContextEntry (Maybe Text)
- Network.AWS.IAM: ceContextKeyType :: Lens' ContextEntry (Maybe ContextKeyTypeEnum)
- Network.AWS.IAM: ceContextKeyValues :: Lens' ContextEntry [Text]
- Network.AWS.IAM: contextEntry :: ContextEntry
- Network.AWS.IAM: data AccessKeyInfo
- Network.AWS.IAM: data AccessKeyLastUsed
- Network.AWS.IAM: data AccessKeyMetadata
- Network.AWS.IAM: data AssignmentStatusType
- Network.AWS.IAM: data AttachedPolicy
- Network.AWS.IAM: data ContextEntry
- Network.AWS.IAM: data ContextKeyTypeEnum
- Network.AWS.IAM: data DeletionTaskFailureReasonType
- Network.AWS.IAM: data DeletionTaskStatusType
- Network.AWS.IAM: data EncodingType
- Network.AWS.IAM: data EntityType
- Network.AWS.IAM: data EvaluationResult
- Network.AWS.IAM: data GetContextKeysForPolicyResponse
- Network.AWS.IAM: data Group
- Network.AWS.IAM: data GroupDetail
- Network.AWS.IAM: data InstanceProfile
- Network.AWS.IAM: data LoginProfile
- Network.AWS.IAM: data MFADevice
- Network.AWS.IAM: data ManagedPolicyDetail
- Network.AWS.IAM: data OpenIdConnectProviderListEntry
- Network.AWS.IAM: data OrganizationsDecisionDetail
- Network.AWS.IAM: data PasswordPolicy
- Network.AWS.IAM: data Policy
- Network.AWS.IAM: data PolicyDetail
- Network.AWS.IAM: data PolicyEvaluationDecisionType
- Network.AWS.IAM: data PolicyGroup
- Network.AWS.IAM: data PolicyRole
- Network.AWS.IAM: data PolicyScopeType
- Network.AWS.IAM: data PolicySourceType
- Network.AWS.IAM: data PolicyUser
- Network.AWS.IAM: data PolicyVersion
- Network.AWS.IAM: data Position
- Network.AWS.IAM: data ReportFormatType
- Network.AWS.IAM: data ReportStateType
- Network.AWS.IAM: data ResourceSpecificResult
- Network.AWS.IAM: data Role
- Network.AWS.IAM: data RoleDetail
- Network.AWS.IAM: data RoleUsageType
- Network.AWS.IAM: data SAMLProviderListEntry
- Network.AWS.IAM: data SSHPublicKey
- Network.AWS.IAM: data SSHPublicKeyMetadata
- Network.AWS.IAM: data ServerCertificate
- Network.AWS.IAM: data ServerCertificateMetadata
- Network.AWS.IAM: data ServiceSpecificCredential
- Network.AWS.IAM: data ServiceSpecificCredentialMetadata
- Network.AWS.IAM: data SigningCertificate
- Network.AWS.IAM: data SimulatePolicyResponse
- Network.AWS.IAM: data Statement
- Network.AWS.IAM: data StatusType
- Network.AWS.IAM: data SummaryKeyType
- Network.AWS.IAM: data User
- Network.AWS.IAM: data UserDetail
- Network.AWS.IAM: data VirtualMFADevice
- Network.AWS.IAM: deletionTaskFailureReasonType :: DeletionTaskFailureReasonType
- Network.AWS.IAM: dtfrtReason :: Lens' DeletionTaskFailureReasonType (Maybe Text)
- Network.AWS.IAM: dtfrtRoleUsageList :: Lens' DeletionTaskFailureReasonType [RoleUsageType]
- Network.AWS.IAM: erEvalActionName :: Lens' EvaluationResult Text
- Network.AWS.IAM: erEvalDecision :: Lens' EvaluationResult PolicyEvaluationDecisionType
- Network.AWS.IAM: erEvalDecisionDetails :: Lens' EvaluationResult (HashMap Text PolicyEvaluationDecisionType)
- Network.AWS.IAM: erEvalResourceName :: Lens' EvaluationResult (Maybe Text)
- Network.AWS.IAM: erMatchedStatements :: Lens' EvaluationResult [Statement]
- Network.AWS.IAM: erMissingContextValues :: Lens' EvaluationResult [Text]
- Network.AWS.IAM: erOrganizationsDecisionDetail :: Lens' EvaluationResult (Maybe OrganizationsDecisionDetail)
- Network.AWS.IAM: erResourceSpecificResults :: Lens' EvaluationResult [ResourceSpecificResult]
- Network.AWS.IAM: evaluationResult :: Text -> PolicyEvaluationDecisionType -> EvaluationResult
- Network.AWS.IAM: gARN :: Lens' Group Text
- Network.AWS.IAM: gCreateDate :: Lens' Group UTCTime
- Network.AWS.IAM: gGroupId :: Lens' Group Text
- Network.AWS.IAM: gGroupName :: Lens' Group Text
- Network.AWS.IAM: gPath :: Lens' Group Text
- Network.AWS.IAM: gckfpContextKeyNames :: Lens' GetContextKeysForPolicyResponse [Text]
- Network.AWS.IAM: gdARN :: Lens' GroupDetail (Maybe Text)
- Network.AWS.IAM: gdAttachedManagedPolicies :: Lens' GroupDetail [AttachedPolicy]
- Network.AWS.IAM: gdCreateDate :: Lens' GroupDetail (Maybe UTCTime)
- Network.AWS.IAM: gdGroupId :: Lens' GroupDetail (Maybe Text)
- Network.AWS.IAM: gdGroupName :: Lens' GroupDetail (Maybe Text)
- Network.AWS.IAM: gdGroupPolicyList :: Lens' GroupDetail [PolicyDetail]
- Network.AWS.IAM: gdPath :: Lens' GroupDetail (Maybe Text)
- Network.AWS.IAM: getContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
- Network.AWS.IAM: group' :: Text -> Text -> Text -> Text -> UTCTime -> Group
- Network.AWS.IAM: groupDetail :: GroupDetail
- Network.AWS.IAM: iam :: Service
- Network.AWS.IAM: instanceProfile :: Text -> Text -> Text -> Text -> UTCTime -> InstanceProfile
- Network.AWS.IAM: instanceProfileExists :: Wait GetInstanceProfile
- Network.AWS.IAM: ipARN :: Lens' InstanceProfile Text
- Network.AWS.IAM: ipCreateDate :: Lens' InstanceProfile UTCTime
- Network.AWS.IAM: ipInstanceProfileId :: Lens' InstanceProfile Text
- Network.AWS.IAM: ipInstanceProfileName :: Lens' InstanceProfile Text
- Network.AWS.IAM: ipPath :: Lens' InstanceProfile Text
- Network.AWS.IAM: ipRoles :: Lens' InstanceProfile [Role]
- Network.AWS.IAM: loginProfile :: Text -> UTCTime -> LoginProfile
- Network.AWS.IAM: lpCreateDate :: Lens' LoginProfile UTCTime
- Network.AWS.IAM: lpPasswordResetRequired :: Lens' LoginProfile (Maybe Bool)
- Network.AWS.IAM: lpUserName :: Lens' LoginProfile Text
- Network.AWS.IAM: managedPolicyDetail :: ManagedPolicyDetail
- Network.AWS.IAM: mdEnableDate :: Lens' MFADevice UTCTime
- Network.AWS.IAM: mdSerialNumber :: Lens' MFADevice Text
- Network.AWS.IAM: mdUserName :: Lens' MFADevice Text
- Network.AWS.IAM: mfaDevice :: Text -> Text -> UTCTime -> MFADevice
- Network.AWS.IAM: mpdARN :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM: mpdAttachmentCount :: Lens' ManagedPolicyDetail (Maybe Int)
- Network.AWS.IAM: mpdCreateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
- Network.AWS.IAM: mpdDefaultVersionId :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM: mpdDescription :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM: mpdIsAttachable :: Lens' ManagedPolicyDetail (Maybe Bool)
- Network.AWS.IAM: mpdPath :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM: mpdPolicyId :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM: mpdPolicyName :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM: mpdPolicyVersionList :: Lens' ManagedPolicyDetail [PolicyVersion]
- Network.AWS.IAM: mpdUpdateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
- Network.AWS.IAM: oddAllowedByOrganizations :: Lens' OrganizationsDecisionDetail (Maybe Bool)
- Network.AWS.IAM: oicpleARN :: Lens' OpenIdConnectProviderListEntry (Maybe Text)
- Network.AWS.IAM: openIdConnectProviderListEntry :: OpenIdConnectProviderListEntry
- Network.AWS.IAM: organizationsDecisionDetail :: OrganizationsDecisionDetail
- Network.AWS.IAM: pARN :: Lens' Policy (Maybe Text)
- Network.AWS.IAM: pAttachmentCount :: Lens' Policy (Maybe Int)
- Network.AWS.IAM: pColumn :: Lens' Position (Maybe Int)
- Network.AWS.IAM: pCreateDate :: Lens' Policy (Maybe UTCTime)
- Network.AWS.IAM: pDefaultVersionId :: Lens' Policy (Maybe Text)
- Network.AWS.IAM: pDescription :: Lens' Policy (Maybe Text)
- Network.AWS.IAM: pIsAttachable :: Lens' Policy (Maybe Bool)
- Network.AWS.IAM: pLine :: Lens' Position (Maybe Int)
- Network.AWS.IAM: pPath :: Lens' Policy (Maybe Text)
- Network.AWS.IAM: pPolicyId :: Lens' Policy (Maybe Text)
- Network.AWS.IAM: pPolicyName :: Lens' Policy (Maybe Text)
- Network.AWS.IAM: pUpdateDate :: Lens' Policy (Maybe UTCTime)
- Network.AWS.IAM: passwordPolicy :: PasswordPolicy
- Network.AWS.IAM: pdPolicyDocument :: Lens' PolicyDetail (Maybe Text)
- Network.AWS.IAM: pdPolicyName :: Lens' PolicyDetail (Maybe Text)
- Network.AWS.IAM: pgGroupId :: Lens' PolicyGroup (Maybe Text)
- Network.AWS.IAM: pgGroupName :: Lens' PolicyGroup (Maybe Text)
- Network.AWS.IAM: policy :: Policy
- Network.AWS.IAM: policyDetail :: PolicyDetail
- Network.AWS.IAM: policyGroup :: PolicyGroup
- Network.AWS.IAM: policyRole :: PolicyRole
- Network.AWS.IAM: policyUser :: PolicyUser
- Network.AWS.IAM: policyVersion :: PolicyVersion
- Network.AWS.IAM: position :: Position
- Network.AWS.IAM: ppAllowUsersToChangePassword :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM: ppExpirePasswords :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM: ppHardExpiry :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM: ppMaxPasswordAge :: Lens' PasswordPolicy (Maybe Natural)
- Network.AWS.IAM: ppMinimumPasswordLength :: Lens' PasswordPolicy (Maybe Natural)
- Network.AWS.IAM: ppPasswordReusePrevention :: Lens' PasswordPolicy (Maybe Natural)
- Network.AWS.IAM: ppRequireLowercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM: ppRequireNumbers :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM: ppRequireSymbols :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM: ppRequireUppercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM: prRoleId :: Lens' PolicyRole (Maybe Text)
- Network.AWS.IAM: prRoleName :: Lens' PolicyRole (Maybe Text)
- Network.AWS.IAM: puUserId :: Lens' PolicyUser (Maybe Text)
- Network.AWS.IAM: puUserName :: Lens' PolicyUser (Maybe Text)
- Network.AWS.IAM: pvCreateDate :: Lens' PolicyVersion (Maybe UTCTime)
- Network.AWS.IAM: pvDocument :: Lens' PolicyVersion (Maybe Text)
- Network.AWS.IAM: pvIsDefaultVersion :: Lens' PolicyVersion (Maybe Bool)
- Network.AWS.IAM: pvVersionId :: Lens' PolicyVersion (Maybe Text)
- Network.AWS.IAM: rARN :: Lens' Role Text
- Network.AWS.IAM: rAssumeRolePolicyDocument :: Lens' Role (Maybe Text)
- Network.AWS.IAM: rCreateDate :: Lens' Role UTCTime
- Network.AWS.IAM: rDescription :: Lens' Role (Maybe Text)
- Network.AWS.IAM: rMaxSessionDuration :: Lens' Role (Maybe Natural)
- Network.AWS.IAM: rPath :: Lens' Role Text
- Network.AWS.IAM: rRoleId :: Lens' Role Text
- Network.AWS.IAM: rRoleName :: Lens' Role Text
- Network.AWS.IAM: rdARN :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM: rdAssumeRolePolicyDocument :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM: rdAttachedManagedPolicies :: Lens' RoleDetail [AttachedPolicy]
- Network.AWS.IAM: rdCreateDate :: Lens' RoleDetail (Maybe UTCTime)
- Network.AWS.IAM: rdInstanceProfileList :: Lens' RoleDetail [InstanceProfile]
- Network.AWS.IAM: rdPath :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM: rdRoleId :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM: rdRoleName :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM: rdRolePolicyList :: Lens' RoleDetail [PolicyDetail]
- Network.AWS.IAM: resourceSpecificResult :: Text -> PolicyEvaluationDecisionType -> ResourceSpecificResult
- Network.AWS.IAM: role' :: Text -> Text -> Text -> Text -> UTCTime -> Role
- Network.AWS.IAM: roleDetail :: RoleDetail
- Network.AWS.IAM: roleUsageType :: RoleUsageType
- Network.AWS.IAM: rsrEvalDecisionDetails :: Lens' ResourceSpecificResult (HashMap Text PolicyEvaluationDecisionType)
- Network.AWS.IAM: rsrEvalResourceDecision :: Lens' ResourceSpecificResult PolicyEvaluationDecisionType
- Network.AWS.IAM: rsrEvalResourceName :: Lens' ResourceSpecificResult Text
- Network.AWS.IAM: rsrMatchedStatements :: Lens' ResourceSpecificResult [Statement]
- Network.AWS.IAM: rsrMissingContextValues :: Lens' ResourceSpecificResult [Text]
- Network.AWS.IAM: rutRegion :: Lens' RoleUsageType (Maybe Text)
- Network.AWS.IAM: rutResources :: Lens' RoleUsageType [Text]
- Network.AWS.IAM: sAMLProviderListEntry :: SAMLProviderListEntry
- Network.AWS.IAM: sCertificateBody :: Lens' ServerCertificate Text
- Network.AWS.IAM: sCertificateChain :: Lens' ServerCertificate (Maybe Text)
- Network.AWS.IAM: sEndPosition :: Lens' Statement (Maybe Position)
- Network.AWS.IAM: sServerCertificateMetadata :: Lens' ServerCertificate ServerCertificateMetadata
- Network.AWS.IAM: sSourcePolicyId :: Lens' Statement (Maybe Text)
- Network.AWS.IAM: sSourcePolicyType :: Lens' Statement (Maybe PolicySourceType)
- Network.AWS.IAM: sStartPosition :: Lens' Statement (Maybe Position)
- Network.AWS.IAM: samlpleARN :: Lens' SAMLProviderListEntry (Maybe Text)
- Network.AWS.IAM: samlpleCreateDate :: Lens' SAMLProviderListEntry (Maybe UTCTime)
- Network.AWS.IAM: samlpleValidUntil :: Lens' SAMLProviderListEntry (Maybe UTCTime)
- Network.AWS.IAM: scCertificateBody :: Lens' SigningCertificate Text
- Network.AWS.IAM: scCertificateId :: Lens' SigningCertificate Text
- Network.AWS.IAM: scStatus :: Lens' SigningCertificate StatusType
- Network.AWS.IAM: scUploadDate :: Lens' SigningCertificate (Maybe UTCTime)
- Network.AWS.IAM: scUserName :: Lens' SigningCertificate Text
- Network.AWS.IAM: scmARN :: Lens' ServerCertificateMetadata Text
- Network.AWS.IAM: scmExpiration :: Lens' ServerCertificateMetadata (Maybe UTCTime)
- Network.AWS.IAM: scmPath :: Lens' ServerCertificateMetadata Text
- Network.AWS.IAM: scmServerCertificateId :: Lens' ServerCertificateMetadata Text
- Network.AWS.IAM: scmServerCertificateName :: Lens' ServerCertificateMetadata Text
- Network.AWS.IAM: scmUploadDate :: Lens' ServerCertificateMetadata (Maybe UTCTime)
- Network.AWS.IAM: serverCertificate :: ServerCertificateMetadata -> Text -> ServerCertificate
- Network.AWS.IAM: serverCertificateMetadata :: Text -> Text -> Text -> Text -> ServerCertificateMetadata
- Network.AWS.IAM: serviceSpecificCredential :: UTCTime -> Text -> Text -> Text -> Text -> Text -> StatusType -> ServiceSpecificCredential
- Network.AWS.IAM: serviceSpecificCredentialMetadata :: Text -> StatusType -> Text -> UTCTime -> Text -> Text -> ServiceSpecificCredentialMetadata
- Network.AWS.IAM: signingCertificate :: Text -> Text -> Text -> StatusType -> SigningCertificate
- Network.AWS.IAM: simulatePolicyResponse :: SimulatePolicyResponse
- Network.AWS.IAM: spEvaluationResults :: Lens' SimulatePolicyResponse [EvaluationResult]
- Network.AWS.IAM: spIsTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
- Network.AWS.IAM: spMarker :: Lens' SimulatePolicyResponse (Maybe Text)
- Network.AWS.IAM: spkFingerprint :: Lens' SSHPublicKey Text
- Network.AWS.IAM: spkSSHPublicKeyBody :: Lens' SSHPublicKey Text
- Network.AWS.IAM: spkSSHPublicKeyId :: Lens' SSHPublicKey Text
- Network.AWS.IAM: spkStatus :: Lens' SSHPublicKey StatusType
- Network.AWS.IAM: spkUploadDate :: Lens' SSHPublicKey (Maybe UTCTime)
- Network.AWS.IAM: spkUserName :: Lens' SSHPublicKey Text
- Network.AWS.IAM: spkmSSHPublicKeyId :: Lens' SSHPublicKeyMetadata Text
- Network.AWS.IAM: spkmStatus :: Lens' SSHPublicKeyMetadata StatusType
- Network.AWS.IAM: spkmUploadDate :: Lens' SSHPublicKeyMetadata UTCTime
- Network.AWS.IAM: spkmUserName :: Lens' SSHPublicKeyMetadata Text
- Network.AWS.IAM: sscCreateDate :: Lens' ServiceSpecificCredential UTCTime
- Network.AWS.IAM: sscServiceName :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM: sscServicePassword :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM: sscServiceSpecificCredentialId :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM: sscServiceUserName :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM: sscStatus :: Lens' ServiceSpecificCredential StatusType
- Network.AWS.IAM: sscUserName :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM: sscmCreateDate :: Lens' ServiceSpecificCredentialMetadata UTCTime
- Network.AWS.IAM: sscmServiceName :: Lens' ServiceSpecificCredentialMetadata Text
- Network.AWS.IAM: sscmServiceSpecificCredentialId :: Lens' ServiceSpecificCredentialMetadata Text
- Network.AWS.IAM: sscmServiceUserName :: Lens' ServiceSpecificCredentialMetadata Text
- Network.AWS.IAM: sscmStatus :: Lens' ServiceSpecificCredentialMetadata StatusType
- Network.AWS.IAM: sscmUserName :: Lens' ServiceSpecificCredentialMetadata Text
- Network.AWS.IAM: sshPublicKey :: Text -> Text -> Text -> Text -> StatusType -> SSHPublicKey
- Network.AWS.IAM: sshPublicKeyMetadata :: Text -> Text -> StatusType -> UTCTime -> SSHPublicKeyMetadata
- Network.AWS.IAM: statement :: Statement
- Network.AWS.IAM: uARN :: Lens' User Text
- Network.AWS.IAM: uCreateDate :: Lens' User UTCTime
- Network.AWS.IAM: uPasswordLastUsed :: Lens' User (Maybe UTCTime)
- Network.AWS.IAM: uPath :: Lens' User Text
- Network.AWS.IAM: uUserId :: Lens' User Text
- Network.AWS.IAM: uUserName :: Lens' User Text
- Network.AWS.IAM: udARN :: Lens' UserDetail (Maybe Text)
- Network.AWS.IAM: udAttachedManagedPolicies :: Lens' UserDetail [AttachedPolicy]
- Network.AWS.IAM: udCreateDate :: Lens' UserDetail (Maybe UTCTime)
- Network.AWS.IAM: udGroupList :: Lens' UserDetail [Text]
- Network.AWS.IAM: udPath :: Lens' UserDetail (Maybe Text)
- Network.AWS.IAM: udUserId :: Lens' UserDetail (Maybe Text)
- Network.AWS.IAM: udUserName :: Lens' UserDetail (Maybe Text)
- Network.AWS.IAM: udUserPolicyList :: Lens' UserDetail [PolicyDetail]
- Network.AWS.IAM: user :: Text -> Text -> Text -> Text -> UTCTime -> User
- Network.AWS.IAM: userDetail :: UserDetail
- Network.AWS.IAM: userExists :: Wait GetUser
- Network.AWS.IAM: virtualMFADevice :: Text -> VirtualMFADevice
- Network.AWS.IAM: vmdBase32StringSeed :: Lens' VirtualMFADevice (Maybe ByteString)
- Network.AWS.IAM: vmdEnableDate :: Lens' VirtualMFADevice (Maybe UTCTime)
- Network.AWS.IAM: vmdQRCodePNG :: Lens' VirtualMFADevice (Maybe ByteString)
- Network.AWS.IAM: vmdSerialNumber :: Lens' VirtualMFADevice Text
- Network.AWS.IAM: vmdUser :: Lens' VirtualMFADevice (Maybe User)
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: acitoicpClientId :: Lens' AddClientIdToOpenIdConnectProvider Text
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: acitoicpOpenIdConnectProviderARN :: Lens' AddClientIdToOpenIdConnectProvider Text
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: addClientIdToOpenIdConnectProvider :: Text -> Text -> AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: addClientIdToOpenIdConnectProviderResponse :: AddClientIdToOpenIdConnectProviderResponse
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: data AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: data AddClientIdToOpenIdConnectProviderResponse
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProviderResponse
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProviderResponse
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProviderResponse
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProviderResponse
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProviderResponse
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProviderResponse
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddClientIdToOpenIdConnectProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.AddClientIdToOpenIdConnectProvider.AddClientIdToOpenIdConnectProvider
- Network.AWS.IAM.AddRoleToInstanceProfile: addRoleToInstanceProfile :: Text -> Text -> AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: addRoleToInstanceProfileResponse :: AddRoleToInstanceProfileResponse
- Network.AWS.IAM.AddRoleToInstanceProfile: artipInstanceProfileName :: Lens' AddRoleToInstanceProfile Text
- Network.AWS.IAM.AddRoleToInstanceProfile: artipRoleName :: Lens' AddRoleToInstanceProfile Text
- Network.AWS.IAM.AddRoleToInstanceProfile: data AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: data AddRoleToInstanceProfileResponse
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Data.Data.Data Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Data.Data.Data Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
- Network.AWS.IAM.AddRoleToInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
- Network.AWS.IAM.AddRoleToInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
- Network.AWS.IAM.AddRoleToInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddRoleToInstanceProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
- Network.AWS.IAM.AddUserToGroup: addUserToGroup :: Text -> Text -> AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: addUserToGroupResponse :: AddUserToGroupResponse
- Network.AWS.IAM.AddUserToGroup: autgGroupName :: Lens' AddUserToGroup Text
- Network.AWS.IAM.AddUserToGroup: autgUserName :: Lens' AddUserToGroup Text
- Network.AWS.IAM.AddUserToGroup: data AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: data AddUserToGroupResponse
- Network.AWS.IAM.AddUserToGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.AddUserToGroup.AddUserToGroupResponse
- Network.AWS.IAM.AddUserToGroup: instance Data.Data.Data Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance Data.Data.Data Network.AWS.IAM.AddUserToGroup.AddUserToGroupResponse
- Network.AWS.IAM.AddUserToGroup: instance Data.Hashable.Class.Hashable Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance GHC.Classes.Eq Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance GHC.Classes.Eq Network.AWS.IAM.AddUserToGroup.AddUserToGroupResponse
- Network.AWS.IAM.AddUserToGroup: instance GHC.Generics.Generic Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance GHC.Generics.Generic Network.AWS.IAM.AddUserToGroup.AddUserToGroupResponse
- Network.AWS.IAM.AddUserToGroup: instance GHC.Read.Read Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance GHC.Read.Read Network.AWS.IAM.AddUserToGroup.AddUserToGroupResponse
- Network.AWS.IAM.AddUserToGroup: instance GHC.Show.Show Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance GHC.Show.Show Network.AWS.IAM.AddUserToGroup.AddUserToGroupResponse
- Network.AWS.IAM.AddUserToGroup: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AddUserToGroup: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.AddUserToGroup.AddUserToGroup
- Network.AWS.IAM.AttachGroupPolicy: agpGroupName :: Lens' AttachGroupPolicy Text
- Network.AWS.IAM.AttachGroupPolicy: agpPolicyARN :: Lens' AttachGroupPolicy Text
- Network.AWS.IAM.AttachGroupPolicy: attachGroupPolicy :: Text -> Text -> AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: attachGroupPolicyResponse :: AttachGroupPolicyResponse
- Network.AWS.IAM.AttachGroupPolicy: data AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: data AttachGroupPolicyResponse
- Network.AWS.IAM.AttachGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
- Network.AWS.IAM.AttachGroupPolicy: instance Data.Data.Data Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance Data.Data.Data Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
- Network.AWS.IAM.AttachGroupPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
- Network.AWS.IAM.AttachGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
- Network.AWS.IAM.AttachGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
- Network.AWS.IAM.AttachGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
- Network.AWS.IAM.AttachGroupPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachGroupPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.AttachGroupPolicy.AttachGroupPolicy
- Network.AWS.IAM.AttachRolePolicy: arpPolicyARN :: Lens' AttachRolePolicy Text
- Network.AWS.IAM.AttachRolePolicy: arpRoleName :: Lens' AttachRolePolicy Text
- Network.AWS.IAM.AttachRolePolicy: attachRolePolicy :: Text -> Text -> AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: attachRolePolicyResponse :: AttachRolePolicyResponse
- Network.AWS.IAM.AttachRolePolicy: data AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: data AttachRolePolicyResponse
- Network.AWS.IAM.AttachRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.AttachRolePolicy.AttachRolePolicyResponse
- Network.AWS.IAM.AttachRolePolicy: instance Data.Data.Data Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance Data.Data.Data Network.AWS.IAM.AttachRolePolicy.AttachRolePolicyResponse
- Network.AWS.IAM.AttachRolePolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.AttachRolePolicy.AttachRolePolicyResponse
- Network.AWS.IAM.AttachRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.AttachRolePolicy.AttachRolePolicyResponse
- Network.AWS.IAM.AttachRolePolicy: instance GHC.Read.Read Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance GHC.Read.Read Network.AWS.IAM.AttachRolePolicy.AttachRolePolicyResponse
- Network.AWS.IAM.AttachRolePolicy: instance GHC.Show.Show Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance GHC.Show.Show Network.AWS.IAM.AttachRolePolicy.AttachRolePolicyResponse
- Network.AWS.IAM.AttachRolePolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachRolePolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.AttachRolePolicy.AttachRolePolicy
- Network.AWS.IAM.AttachUserPolicy: attachUserPolicy :: Text -> Text -> AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: attachUserPolicyResponse :: AttachUserPolicyResponse
- Network.AWS.IAM.AttachUserPolicy: aupPolicyARN :: Lens' AttachUserPolicy Text
- Network.AWS.IAM.AttachUserPolicy: aupUserName :: Lens' AttachUserPolicy Text
- Network.AWS.IAM.AttachUserPolicy: data AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: data AttachUserPolicyResponse
- Network.AWS.IAM.AttachUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.AttachUserPolicy.AttachUserPolicyResponse
- Network.AWS.IAM.AttachUserPolicy: instance Data.Data.Data Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance Data.Data.Data Network.AWS.IAM.AttachUserPolicy.AttachUserPolicyResponse
- Network.AWS.IAM.AttachUserPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.AttachUserPolicy.AttachUserPolicyResponse
- Network.AWS.IAM.AttachUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.AttachUserPolicy.AttachUserPolicyResponse
- Network.AWS.IAM.AttachUserPolicy: instance GHC.Read.Read Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance GHC.Read.Read Network.AWS.IAM.AttachUserPolicy.AttachUserPolicyResponse
- Network.AWS.IAM.AttachUserPolicy: instance GHC.Show.Show Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance GHC.Show.Show Network.AWS.IAM.AttachUserPolicy.AttachUserPolicyResponse
- Network.AWS.IAM.AttachUserPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.AttachUserPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.AttachUserPolicy.AttachUserPolicy
- Network.AWS.IAM.ChangePassword: changePassword :: Text -> Text -> ChangePassword
- Network.AWS.IAM.ChangePassword: changePasswordResponse :: ChangePasswordResponse
- Network.AWS.IAM.ChangePassword: cpNewPassword :: Lens' ChangePassword Text
- Network.AWS.IAM.ChangePassword: cpOldPassword :: Lens' ChangePassword Text
- Network.AWS.IAM.ChangePassword: data ChangePassword
- Network.AWS.IAM.ChangePassword: data ChangePasswordResponse
- Network.AWS.IAM.ChangePassword: instance Control.DeepSeq.NFData Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance Control.DeepSeq.NFData Network.AWS.IAM.ChangePassword.ChangePasswordResponse
- Network.AWS.IAM.ChangePassword: instance Data.Data.Data Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance Data.Data.Data Network.AWS.IAM.ChangePassword.ChangePasswordResponse
- Network.AWS.IAM.ChangePassword: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance GHC.Classes.Eq Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance GHC.Classes.Eq Network.AWS.IAM.ChangePassword.ChangePasswordResponse
- Network.AWS.IAM.ChangePassword: instance GHC.Generics.Generic Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance GHC.Generics.Generic Network.AWS.IAM.ChangePassword.ChangePasswordResponse
- Network.AWS.IAM.ChangePassword: instance GHC.Read.Read Network.AWS.IAM.ChangePassword.ChangePasswordResponse
- Network.AWS.IAM.ChangePassword: instance GHC.Show.Show Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance GHC.Show.Show Network.AWS.IAM.ChangePassword.ChangePasswordResponse
- Network.AWS.IAM.ChangePassword: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.ChangePassword: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ChangePassword.ChangePassword
- Network.AWS.IAM.CreateAccessKey: cakUserName :: Lens' CreateAccessKey (Maybe Text)
- Network.AWS.IAM.CreateAccessKey: cakrsAccessKey :: Lens' CreateAccessKeyResponse AccessKeyInfo
- Network.AWS.IAM.CreateAccessKey: cakrsResponseStatus :: Lens' CreateAccessKeyResponse Int
- Network.AWS.IAM.CreateAccessKey: createAccessKey :: CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: createAccessKeyResponse :: Int -> AccessKeyInfo -> CreateAccessKeyResponse
- Network.AWS.IAM.CreateAccessKey: data CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: data CreateAccessKeyResponse
- Network.AWS.IAM.CreateAccessKey: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateAccessKey.CreateAccessKeyResponse
- Network.AWS.IAM.CreateAccessKey: instance Data.Data.Data Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance Data.Data.Data Network.AWS.IAM.CreateAccessKey.CreateAccessKeyResponse
- Network.AWS.IAM.CreateAccessKey: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance GHC.Classes.Eq Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance GHC.Classes.Eq Network.AWS.IAM.CreateAccessKey.CreateAccessKeyResponse
- Network.AWS.IAM.CreateAccessKey: instance GHC.Generics.Generic Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance GHC.Generics.Generic Network.AWS.IAM.CreateAccessKey.CreateAccessKeyResponse
- Network.AWS.IAM.CreateAccessKey: instance GHC.Read.Read Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance GHC.Show.Show Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance GHC.Show.Show Network.AWS.IAM.CreateAccessKey.CreateAccessKeyResponse
- Network.AWS.IAM.CreateAccessKey: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccessKey: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateAccessKey.CreateAccessKey
- Network.AWS.IAM.CreateAccountAlias: caaAccountAlias :: Lens' CreateAccountAlias Text
- Network.AWS.IAM.CreateAccountAlias: createAccountAlias :: Text -> CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: createAccountAliasResponse :: CreateAccountAliasResponse
- Network.AWS.IAM.CreateAccountAlias: data CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: data CreateAccountAliasResponse
- Network.AWS.IAM.CreateAccountAlias: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateAccountAlias.CreateAccountAliasResponse
- Network.AWS.IAM.CreateAccountAlias: instance Data.Data.Data Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance Data.Data.Data Network.AWS.IAM.CreateAccountAlias.CreateAccountAliasResponse
- Network.AWS.IAM.CreateAccountAlias: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance GHC.Classes.Eq Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance GHC.Classes.Eq Network.AWS.IAM.CreateAccountAlias.CreateAccountAliasResponse
- Network.AWS.IAM.CreateAccountAlias: instance GHC.Generics.Generic Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance GHC.Generics.Generic Network.AWS.IAM.CreateAccountAlias.CreateAccountAliasResponse
- Network.AWS.IAM.CreateAccountAlias: instance GHC.Read.Read Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance GHC.Read.Read Network.AWS.IAM.CreateAccountAlias.CreateAccountAliasResponse
- Network.AWS.IAM.CreateAccountAlias: instance GHC.Show.Show Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance GHC.Show.Show Network.AWS.IAM.CreateAccountAlias.CreateAccountAliasResponse
- Network.AWS.IAM.CreateAccountAlias: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateAccountAlias: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateAccountAlias.CreateAccountAlias
- Network.AWS.IAM.CreateGroup: cgGroupName :: Lens' CreateGroup Text
- Network.AWS.IAM.CreateGroup: cgPath :: Lens' CreateGroup (Maybe Text)
- Network.AWS.IAM.CreateGroup: cgrsGroup :: Lens' CreateGroupResponse Group
- Network.AWS.IAM.CreateGroup: cgrsResponseStatus :: Lens' CreateGroupResponse Int
- Network.AWS.IAM.CreateGroup: createGroup :: Text -> CreateGroup
- Network.AWS.IAM.CreateGroup: createGroupResponse :: Int -> Group -> CreateGroupResponse
- Network.AWS.IAM.CreateGroup: data CreateGroup
- Network.AWS.IAM.CreateGroup: data CreateGroupResponse
- Network.AWS.IAM.CreateGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateGroup.CreateGroupResponse
- Network.AWS.IAM.CreateGroup: instance Data.Data.Data Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance Data.Data.Data Network.AWS.IAM.CreateGroup.CreateGroupResponse
- Network.AWS.IAM.CreateGroup: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance GHC.Classes.Eq Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance GHC.Classes.Eq Network.AWS.IAM.CreateGroup.CreateGroupResponse
- Network.AWS.IAM.CreateGroup: instance GHC.Generics.Generic Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance GHC.Generics.Generic Network.AWS.IAM.CreateGroup.CreateGroupResponse
- Network.AWS.IAM.CreateGroup: instance GHC.Read.Read Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance GHC.Read.Read Network.AWS.IAM.CreateGroup.CreateGroupResponse
- Network.AWS.IAM.CreateGroup: instance GHC.Show.Show Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance GHC.Show.Show Network.AWS.IAM.CreateGroup.CreateGroupResponse
- Network.AWS.IAM.CreateGroup: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateGroup: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateGroup.CreateGroup
- Network.AWS.IAM.CreateInstanceProfile: cipInstanceProfileName :: Lens' CreateInstanceProfile Text
- Network.AWS.IAM.CreateInstanceProfile: cipPath :: Lens' CreateInstanceProfile (Maybe Text)
- Network.AWS.IAM.CreateInstanceProfile: ciprsInstanceProfile :: Lens' CreateInstanceProfileResponse InstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: ciprsResponseStatus :: Lens' CreateInstanceProfileResponse Int
- Network.AWS.IAM.CreateInstanceProfile: createInstanceProfile :: Text -> CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: createInstanceProfileResponse :: Int -> InstanceProfile -> CreateInstanceProfileResponse
- Network.AWS.IAM.CreateInstanceProfile: data CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: data CreateInstanceProfileResponse
- Network.AWS.IAM.CreateInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
- Network.AWS.IAM.CreateInstanceProfile: instance Data.Data.Data Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance Data.Data.Data Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
- Network.AWS.IAM.CreateInstanceProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
- Network.AWS.IAM.CreateInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
- Network.AWS.IAM.CreateInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
- Network.AWS.IAM.CreateInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
- Network.AWS.IAM.CreateInstanceProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateInstanceProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateInstanceProfile.CreateInstanceProfile
- Network.AWS.IAM.CreateLoginProfile: clpPassword :: Lens' CreateLoginProfile Text
- Network.AWS.IAM.CreateLoginProfile: clpPasswordResetRequired :: Lens' CreateLoginProfile (Maybe Bool)
- Network.AWS.IAM.CreateLoginProfile: clpUserName :: Lens' CreateLoginProfile Text
- Network.AWS.IAM.CreateLoginProfile: clprsLoginProfile :: Lens' CreateLoginProfileResponse LoginProfile
- Network.AWS.IAM.CreateLoginProfile: clprsResponseStatus :: Lens' CreateLoginProfileResponse Int
- Network.AWS.IAM.CreateLoginProfile: createLoginProfile :: Text -> Text -> CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: createLoginProfileResponse :: Int -> LoginProfile -> CreateLoginProfileResponse
- Network.AWS.IAM.CreateLoginProfile: data CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: data CreateLoginProfileResponse
- Network.AWS.IAM.CreateLoginProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateLoginProfile.CreateLoginProfileResponse
- Network.AWS.IAM.CreateLoginProfile: instance Data.Data.Data Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance Data.Data.Data Network.AWS.IAM.CreateLoginProfile.CreateLoginProfileResponse
- Network.AWS.IAM.CreateLoginProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance GHC.Classes.Eq Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance GHC.Classes.Eq Network.AWS.IAM.CreateLoginProfile.CreateLoginProfileResponse
- Network.AWS.IAM.CreateLoginProfile: instance GHC.Generics.Generic Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance GHC.Generics.Generic Network.AWS.IAM.CreateLoginProfile.CreateLoginProfileResponse
- Network.AWS.IAM.CreateLoginProfile: instance GHC.Read.Read Network.AWS.IAM.CreateLoginProfile.CreateLoginProfileResponse
- Network.AWS.IAM.CreateLoginProfile: instance GHC.Show.Show Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance GHC.Show.Show Network.AWS.IAM.CreateLoginProfile.CreateLoginProfileResponse
- Network.AWS.IAM.CreateLoginProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateLoginProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateLoginProfile.CreateLoginProfile
- Network.AWS.IAM.CreateOpenIdConnectProvider: coicpClientIdList :: Lens' CreateOpenIdConnectProvider [Text]
- Network.AWS.IAM.CreateOpenIdConnectProvider: coicpThumbprintList :: Lens' CreateOpenIdConnectProvider [Text]
- Network.AWS.IAM.CreateOpenIdConnectProvider: coicpURL :: Lens' CreateOpenIdConnectProvider Text
- Network.AWS.IAM.CreateOpenIdConnectProvider: coicprsOpenIdConnectProviderARN :: Lens' CreateOpenIdConnectProviderResponse (Maybe Text)
- Network.AWS.IAM.CreateOpenIdConnectProvider: coicprsResponseStatus :: Lens' CreateOpenIdConnectProviderResponse Int
- Network.AWS.IAM.CreateOpenIdConnectProvider: createOpenIdConnectProvider :: Text -> CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: createOpenIdConnectProviderResponse :: Int -> CreateOpenIdConnectProviderResponse
- Network.AWS.IAM.CreateOpenIdConnectProvider: data CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: data CreateOpenIdConnectProviderResponse
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProviderResponse
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProviderResponse
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProviderResponse
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProviderResponse
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProviderResponse
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProviderResponse
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreateOpenIdConnectProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateOpenIdConnectProvider.CreateOpenIdConnectProvider
- Network.AWS.IAM.CreatePolicy: cpDescription :: Lens' CreatePolicy (Maybe Text)
- Network.AWS.IAM.CreatePolicy: cpPath :: Lens' CreatePolicy (Maybe Text)
- Network.AWS.IAM.CreatePolicy: cpPolicyDocument :: Lens' CreatePolicy Text
- Network.AWS.IAM.CreatePolicy: cpPolicyName :: Lens' CreatePolicy Text
- Network.AWS.IAM.CreatePolicy: cprsPolicy :: Lens' CreatePolicyResponse (Maybe Policy)
- Network.AWS.IAM.CreatePolicy: cprsResponseStatus :: Lens' CreatePolicyResponse Int
- Network.AWS.IAM.CreatePolicy: createPolicy :: Text -> Text -> CreatePolicy
- Network.AWS.IAM.CreatePolicy: createPolicyResponse :: Int -> CreatePolicyResponse
- Network.AWS.IAM.CreatePolicy: data CreatePolicy
- Network.AWS.IAM.CreatePolicy: data CreatePolicyResponse
- Network.AWS.IAM.CreatePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.CreatePolicy.CreatePolicyResponse
- Network.AWS.IAM.CreatePolicy: instance Data.Data.Data Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance Data.Data.Data Network.AWS.IAM.CreatePolicy.CreatePolicyResponse
- Network.AWS.IAM.CreatePolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance GHC.Classes.Eq Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance GHC.Classes.Eq Network.AWS.IAM.CreatePolicy.CreatePolicyResponse
- Network.AWS.IAM.CreatePolicy: instance GHC.Generics.Generic Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance GHC.Generics.Generic Network.AWS.IAM.CreatePolicy.CreatePolicyResponse
- Network.AWS.IAM.CreatePolicy: instance GHC.Read.Read Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance GHC.Read.Read Network.AWS.IAM.CreatePolicy.CreatePolicyResponse
- Network.AWS.IAM.CreatePolicy: instance GHC.Show.Show Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance GHC.Show.Show Network.AWS.IAM.CreatePolicy.CreatePolicyResponse
- Network.AWS.IAM.CreatePolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreatePolicy.CreatePolicy
- Network.AWS.IAM.CreatePolicyVersion: cpvPolicyARN :: Lens' CreatePolicyVersion Text
- Network.AWS.IAM.CreatePolicyVersion: cpvPolicyDocument :: Lens' CreatePolicyVersion Text
- Network.AWS.IAM.CreatePolicyVersion: cpvSetAsDefault :: Lens' CreatePolicyVersion (Maybe Bool)
- Network.AWS.IAM.CreatePolicyVersion: cpvrsPolicyVersion :: Lens' CreatePolicyVersionResponse (Maybe PolicyVersion)
- Network.AWS.IAM.CreatePolicyVersion: cpvrsResponseStatus :: Lens' CreatePolicyVersionResponse Int
- Network.AWS.IAM.CreatePolicyVersion: createPolicyVersion :: Text -> Text -> CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: createPolicyVersionResponse :: Int -> CreatePolicyVersionResponse
- Network.AWS.IAM.CreatePolicyVersion: data CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: data CreatePolicyVersionResponse
- Network.AWS.IAM.CreatePolicyVersion: instance Control.DeepSeq.NFData Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance Control.DeepSeq.NFData Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
- Network.AWS.IAM.CreatePolicyVersion: instance Data.Data.Data Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance Data.Data.Data Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
- Network.AWS.IAM.CreatePolicyVersion: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance GHC.Classes.Eq Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance GHC.Classes.Eq Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
- Network.AWS.IAM.CreatePolicyVersion: instance GHC.Generics.Generic Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance GHC.Generics.Generic Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
- Network.AWS.IAM.CreatePolicyVersion: instance GHC.Read.Read Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance GHC.Read.Read Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
- Network.AWS.IAM.CreatePolicyVersion: instance GHC.Show.Show Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance GHC.Show.Show Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
- Network.AWS.IAM.CreatePolicyVersion: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreatePolicyVersion: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreatePolicyVersion.CreatePolicyVersion
- Network.AWS.IAM.CreateRole: crAssumeRolePolicyDocument :: Lens' CreateRole Text
- Network.AWS.IAM.CreateRole: crDescription :: Lens' CreateRole (Maybe Text)
- Network.AWS.IAM.CreateRole: crMaxSessionDuration :: Lens' CreateRole (Maybe Natural)
- Network.AWS.IAM.CreateRole: crPath :: Lens' CreateRole (Maybe Text)
- Network.AWS.IAM.CreateRole: crRoleName :: Lens' CreateRole Text
- Network.AWS.IAM.CreateRole: createRole :: Text -> Text -> CreateRole
- Network.AWS.IAM.CreateRole: createRoleResponse :: Int -> Role -> CreateRoleResponse
- Network.AWS.IAM.CreateRole: crrsResponseStatus :: Lens' CreateRoleResponse Int
- Network.AWS.IAM.CreateRole: crrsRole :: Lens' CreateRoleResponse Role
- Network.AWS.IAM.CreateRole: data CreateRole
- Network.AWS.IAM.CreateRole: data CreateRoleResponse
- Network.AWS.IAM.CreateRole: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateRole.CreateRoleResponse
- Network.AWS.IAM.CreateRole: instance Data.Data.Data Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance Data.Data.Data Network.AWS.IAM.CreateRole.CreateRoleResponse
- Network.AWS.IAM.CreateRole: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance GHC.Classes.Eq Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance GHC.Classes.Eq Network.AWS.IAM.CreateRole.CreateRoleResponse
- Network.AWS.IAM.CreateRole: instance GHC.Generics.Generic Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance GHC.Generics.Generic Network.AWS.IAM.CreateRole.CreateRoleResponse
- Network.AWS.IAM.CreateRole: instance GHC.Read.Read Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance GHC.Read.Read Network.AWS.IAM.CreateRole.CreateRoleResponse
- Network.AWS.IAM.CreateRole: instance GHC.Show.Show Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance GHC.Show.Show Network.AWS.IAM.CreateRole.CreateRoleResponse
- Network.AWS.IAM.CreateRole: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateRole: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateRole.CreateRole
- Network.AWS.IAM.CreateSAMLProvider: createSAMLProvider :: Text -> Text -> CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: createSAMLProviderResponse :: Int -> CreateSAMLProviderResponse
- Network.AWS.IAM.CreateSAMLProvider: csamlpName :: Lens' CreateSAMLProvider Text
- Network.AWS.IAM.CreateSAMLProvider: csamlpSAMLMetadataDocument :: Lens' CreateSAMLProvider Text
- Network.AWS.IAM.CreateSAMLProvider: csamlprsResponseStatus :: Lens' CreateSAMLProviderResponse Int
- Network.AWS.IAM.CreateSAMLProvider: csamlprsSAMLProviderARN :: Lens' CreateSAMLProviderResponse (Maybe Text)
- Network.AWS.IAM.CreateSAMLProvider: data CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: data CreateSAMLProviderResponse
- Network.AWS.IAM.CreateSAMLProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
- Network.AWS.IAM.CreateSAMLProvider: instance Data.Data.Data Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance Data.Data.Data Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
- Network.AWS.IAM.CreateSAMLProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance GHC.Classes.Eq Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance GHC.Classes.Eq Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
- Network.AWS.IAM.CreateSAMLProvider: instance GHC.Generics.Generic Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance GHC.Generics.Generic Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
- Network.AWS.IAM.CreateSAMLProvider: instance GHC.Read.Read Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance GHC.Read.Read Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
- Network.AWS.IAM.CreateSAMLProvider: instance GHC.Show.Show Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance GHC.Show.Show Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
- Network.AWS.IAM.CreateSAMLProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateSAMLProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateSAMLProvider.CreateSAMLProvider
- Network.AWS.IAM.CreateServiceLinkedRole: createServiceLinkedRole :: Text -> CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: createServiceLinkedRoleResponse :: Int -> CreateServiceLinkedRoleResponse
- Network.AWS.IAM.CreateServiceLinkedRole: cslrAWSServiceName :: Lens' CreateServiceLinkedRole Text
- Network.AWS.IAM.CreateServiceLinkedRole: cslrCustomSuffix :: Lens' CreateServiceLinkedRole (Maybe Text)
- Network.AWS.IAM.CreateServiceLinkedRole: cslrDescription :: Lens' CreateServiceLinkedRole (Maybe Text)
- Network.AWS.IAM.CreateServiceLinkedRole: cslrrsResponseStatus :: Lens' CreateServiceLinkedRoleResponse Int
- Network.AWS.IAM.CreateServiceLinkedRole: cslrrsRole :: Lens' CreateServiceLinkedRoleResponse (Maybe Role)
- Network.AWS.IAM.CreateServiceLinkedRole: data CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: data CreateServiceLinkedRoleResponse
- Network.AWS.IAM.CreateServiceLinkedRole: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
- Network.AWS.IAM.CreateServiceLinkedRole: instance Data.Data.Data Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance Data.Data.Data Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
- Network.AWS.IAM.CreateServiceLinkedRole: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance GHC.Classes.Eq Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance GHC.Classes.Eq Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
- Network.AWS.IAM.CreateServiceLinkedRole: instance GHC.Generics.Generic Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance GHC.Generics.Generic Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
- Network.AWS.IAM.CreateServiceLinkedRole: instance GHC.Read.Read Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance GHC.Read.Read Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
- Network.AWS.IAM.CreateServiceLinkedRole: instance GHC.Show.Show Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance GHC.Show.Show Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
- Network.AWS.IAM.CreateServiceLinkedRole: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceLinkedRole: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
- Network.AWS.IAM.CreateServiceSpecificCredential: createServiceSpecificCredential :: Text -> Text -> CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: createServiceSpecificCredentialResponse :: Int -> CreateServiceSpecificCredentialResponse
- Network.AWS.IAM.CreateServiceSpecificCredential: csscServiceName :: Lens' CreateServiceSpecificCredential Text
- Network.AWS.IAM.CreateServiceSpecificCredential: csscUserName :: Lens' CreateServiceSpecificCredential Text
- Network.AWS.IAM.CreateServiceSpecificCredential: csscrsResponseStatus :: Lens' CreateServiceSpecificCredentialResponse Int
- Network.AWS.IAM.CreateServiceSpecificCredential: csscrsServiceSpecificCredential :: Lens' CreateServiceSpecificCredentialResponse (Maybe ServiceSpecificCredential)
- Network.AWS.IAM.CreateServiceSpecificCredential: data CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: data CreateServiceSpecificCredentialResponse
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Data.Data.Data Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Data.Data.Data Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance GHC.Classes.Eq Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance GHC.Classes.Eq Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
- Network.AWS.IAM.CreateServiceSpecificCredential: instance GHC.Generics.Generic Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance GHC.Generics.Generic Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
- Network.AWS.IAM.CreateServiceSpecificCredential: instance GHC.Read.Read Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance GHC.Show.Show Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance GHC.Show.Show Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateServiceSpecificCredential: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
- Network.AWS.IAM.CreateUser: createUser :: Text -> CreateUser
- Network.AWS.IAM.CreateUser: createUserResponse :: Int -> CreateUserResponse
- Network.AWS.IAM.CreateUser: cuPath :: Lens' CreateUser (Maybe Text)
- Network.AWS.IAM.CreateUser: cuUserName :: Lens' CreateUser Text
- Network.AWS.IAM.CreateUser: cursResponseStatus :: Lens' CreateUserResponse Int
- Network.AWS.IAM.CreateUser: cursUser :: Lens' CreateUserResponse (Maybe User)
- Network.AWS.IAM.CreateUser: data CreateUser
- Network.AWS.IAM.CreateUser: data CreateUserResponse
- Network.AWS.IAM.CreateUser: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateUser.CreateUserResponse
- Network.AWS.IAM.CreateUser: instance Data.Data.Data Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance Data.Data.Data Network.AWS.IAM.CreateUser.CreateUserResponse
- Network.AWS.IAM.CreateUser: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance GHC.Classes.Eq Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance GHC.Classes.Eq Network.AWS.IAM.CreateUser.CreateUserResponse
- Network.AWS.IAM.CreateUser: instance GHC.Generics.Generic Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance GHC.Generics.Generic Network.AWS.IAM.CreateUser.CreateUserResponse
- Network.AWS.IAM.CreateUser: instance GHC.Read.Read Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance GHC.Read.Read Network.AWS.IAM.CreateUser.CreateUserResponse
- Network.AWS.IAM.CreateUser: instance GHC.Show.Show Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance GHC.Show.Show Network.AWS.IAM.CreateUser.CreateUserResponse
- Network.AWS.IAM.CreateUser: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateUser: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateUser.CreateUser
- Network.AWS.IAM.CreateVirtualMFADevice: createVirtualMFADevice :: Text -> CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: createVirtualMFADeviceResponse :: Int -> VirtualMFADevice -> CreateVirtualMFADeviceResponse
- Network.AWS.IAM.CreateVirtualMFADevice: cvmdPath :: Lens' CreateVirtualMFADevice (Maybe Text)
- Network.AWS.IAM.CreateVirtualMFADevice: cvmdVirtualMFADeviceName :: Lens' CreateVirtualMFADevice Text
- Network.AWS.IAM.CreateVirtualMFADevice: cvmdrsResponseStatus :: Lens' CreateVirtualMFADeviceResponse Int
- Network.AWS.IAM.CreateVirtualMFADevice: cvmdrsVirtualMFADevice :: Lens' CreateVirtualMFADeviceResponse VirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: data CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: data CreateVirtualMFADeviceResponse
- Network.AWS.IAM.CreateVirtualMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
- Network.AWS.IAM.CreateVirtualMFADevice: instance Data.Data.Data Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance Data.Data.Data Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
- Network.AWS.IAM.CreateVirtualMFADevice: instance Data.Hashable.Class.Hashable Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
- Network.AWS.IAM.CreateVirtualMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
- Network.AWS.IAM.CreateVirtualMFADevice: instance GHC.Read.Read Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance GHC.Show.Show Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance GHC.Show.Show Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
- Network.AWS.IAM.CreateVirtualMFADevice: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.CreateVirtualMFADevice: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
- Network.AWS.IAM.DeactivateMFADevice: data DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: data DeactivateMFADeviceResponse
- Network.AWS.IAM.DeactivateMFADevice: deactivateMFADevice :: Text -> Text -> DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: deactivateMFADeviceResponse :: DeactivateMFADeviceResponse
- Network.AWS.IAM.DeactivateMFADevice: dmdSerialNumber :: Lens' DeactivateMFADevice Text
- Network.AWS.IAM.DeactivateMFADevice: dmdUserName :: Lens' DeactivateMFADevice Text
- Network.AWS.IAM.DeactivateMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
- Network.AWS.IAM.DeactivateMFADevice: instance Data.Data.Data Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance Data.Data.Data Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
- Network.AWS.IAM.DeactivateMFADevice: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
- Network.AWS.IAM.DeactivateMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
- Network.AWS.IAM.DeactivateMFADevice: instance GHC.Read.Read Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance GHC.Read.Read Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
- Network.AWS.IAM.DeactivateMFADevice: instance GHC.Show.Show Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance GHC.Show.Show Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
- Network.AWS.IAM.DeactivateMFADevice: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeactivateMFADevice: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeactivateMFADevice.DeactivateMFADevice
- Network.AWS.IAM.DeleteAccessKey: dakAccessKeyId :: Lens' DeleteAccessKey AccessKey
- Network.AWS.IAM.DeleteAccessKey: dakUserName :: Lens' DeleteAccessKey (Maybe Text)
- Network.AWS.IAM.DeleteAccessKey: data DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: data DeleteAccessKeyResponse
- Network.AWS.IAM.DeleteAccessKey: deleteAccessKey :: AccessKey -> DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: deleteAccessKeyResponse :: DeleteAccessKeyResponse
- Network.AWS.IAM.DeleteAccessKey: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteAccessKey.DeleteAccessKeyResponse
- Network.AWS.IAM.DeleteAccessKey: instance Data.Data.Data Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance Data.Data.Data Network.AWS.IAM.DeleteAccessKey.DeleteAccessKeyResponse
- Network.AWS.IAM.DeleteAccessKey: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance GHC.Classes.Eq Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance GHC.Classes.Eq Network.AWS.IAM.DeleteAccessKey.DeleteAccessKeyResponse
- Network.AWS.IAM.DeleteAccessKey: instance GHC.Generics.Generic Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance GHC.Generics.Generic Network.AWS.IAM.DeleteAccessKey.DeleteAccessKeyResponse
- Network.AWS.IAM.DeleteAccessKey: instance GHC.Read.Read Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance GHC.Read.Read Network.AWS.IAM.DeleteAccessKey.DeleteAccessKeyResponse
- Network.AWS.IAM.DeleteAccessKey: instance GHC.Show.Show Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance GHC.Show.Show Network.AWS.IAM.DeleteAccessKey.DeleteAccessKeyResponse
- Network.AWS.IAM.DeleteAccessKey: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccessKey: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteAccessKey.DeleteAccessKey
- Network.AWS.IAM.DeleteAccountAlias: daaAccountAlias :: Lens' DeleteAccountAlias Text
- Network.AWS.IAM.DeleteAccountAlias: data DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: data DeleteAccountAliasResponse
- Network.AWS.IAM.DeleteAccountAlias: deleteAccountAlias :: Text -> DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: deleteAccountAliasResponse :: DeleteAccountAliasResponse
- Network.AWS.IAM.DeleteAccountAlias: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
- Network.AWS.IAM.DeleteAccountAlias: instance Data.Data.Data Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance Data.Data.Data Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
- Network.AWS.IAM.DeleteAccountAlias: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance GHC.Classes.Eq Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance GHC.Classes.Eq Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
- Network.AWS.IAM.DeleteAccountAlias: instance GHC.Generics.Generic Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance GHC.Generics.Generic Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
- Network.AWS.IAM.DeleteAccountAlias: instance GHC.Read.Read Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance GHC.Read.Read Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
- Network.AWS.IAM.DeleteAccountAlias: instance GHC.Show.Show Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance GHC.Show.Show Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
- Network.AWS.IAM.DeleteAccountAlias: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountAlias: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteAccountAlias.DeleteAccountAlias
- Network.AWS.IAM.DeleteAccountPasswordPolicy: data DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: data DeleteAccountPasswordPolicyResponse
- Network.AWS.IAM.DeleteAccountPasswordPolicy: deleteAccountPasswordPolicy :: DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: deleteAccountPasswordPolicyResponse :: DeleteAccountPasswordPolicyResponse
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Data.Data.Data Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Data.Data.Data Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance GHC.Read.Read Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance GHC.Read.Read Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance GHC.Show.Show Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance GHC.Show.Show Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteAccountPasswordPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
- Network.AWS.IAM.DeleteGroup: data DeleteGroup
- Network.AWS.IAM.DeleteGroup: data DeleteGroupResponse
- Network.AWS.IAM.DeleteGroup: deleteGroup :: Text -> DeleteGroup
- Network.AWS.IAM.DeleteGroup: deleteGroupResponse :: DeleteGroupResponse
- Network.AWS.IAM.DeleteGroup: dgGroupName :: Lens' DeleteGroup Text
- Network.AWS.IAM.DeleteGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteGroup.DeleteGroupResponse
- Network.AWS.IAM.DeleteGroup: instance Data.Data.Data Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance Data.Data.Data Network.AWS.IAM.DeleteGroup.DeleteGroupResponse
- Network.AWS.IAM.DeleteGroup: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance GHC.Classes.Eq Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance GHC.Classes.Eq Network.AWS.IAM.DeleteGroup.DeleteGroupResponse
- Network.AWS.IAM.DeleteGroup: instance GHC.Generics.Generic Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance GHC.Generics.Generic Network.AWS.IAM.DeleteGroup.DeleteGroupResponse
- Network.AWS.IAM.DeleteGroup: instance GHC.Read.Read Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance GHC.Read.Read Network.AWS.IAM.DeleteGroup.DeleteGroupResponse
- Network.AWS.IAM.DeleteGroup: instance GHC.Show.Show Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance GHC.Show.Show Network.AWS.IAM.DeleteGroup.DeleteGroupResponse
- Network.AWS.IAM.DeleteGroup: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroup: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteGroup.DeleteGroup
- Network.AWS.IAM.DeleteGroupPolicy: dGroupName :: Lens' DeleteGroupPolicy Text
- Network.AWS.IAM.DeleteGroupPolicy: dPolicyName :: Lens' DeleteGroupPolicy Text
- Network.AWS.IAM.DeleteGroupPolicy: data DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: data DeleteGroupPolicyResponse
- Network.AWS.IAM.DeleteGroupPolicy: deleteGroupPolicy :: Text -> Text -> DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: deleteGroupPolicyResponse :: DeleteGroupPolicyResponse
- Network.AWS.IAM.DeleteGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
- Network.AWS.IAM.DeleteGroupPolicy: instance Data.Data.Data Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance Data.Data.Data Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
- Network.AWS.IAM.DeleteGroupPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
- Network.AWS.IAM.DeleteGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
- Network.AWS.IAM.DeleteGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
- Network.AWS.IAM.DeleteGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
- Network.AWS.IAM.DeleteGroupPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteGroupPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteGroupPolicy.DeleteGroupPolicy
- Network.AWS.IAM.DeleteInstanceProfile: data DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: data DeleteInstanceProfileResponse
- Network.AWS.IAM.DeleteInstanceProfile: deleteInstanceProfile :: Text -> DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: deleteInstanceProfileResponse :: DeleteInstanceProfileResponse
- Network.AWS.IAM.DeleteInstanceProfile: dipInstanceProfileName :: Lens' DeleteInstanceProfile Text
- Network.AWS.IAM.DeleteInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
- Network.AWS.IAM.DeleteInstanceProfile: instance Data.Data.Data Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance Data.Data.Data Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
- Network.AWS.IAM.DeleteInstanceProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
- Network.AWS.IAM.DeleteInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
- Network.AWS.IAM.DeleteInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
- Network.AWS.IAM.DeleteInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
- Network.AWS.IAM.DeleteInstanceProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteInstanceProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteInstanceProfile.DeleteInstanceProfile
- Network.AWS.IAM.DeleteLoginProfile: data DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: data DeleteLoginProfileResponse
- Network.AWS.IAM.DeleteLoginProfile: deleteLoginProfile :: Text -> DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: deleteLoginProfileResponse :: DeleteLoginProfileResponse
- Network.AWS.IAM.DeleteLoginProfile: dlpUserName :: Lens' DeleteLoginProfile Text
- Network.AWS.IAM.DeleteLoginProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
- Network.AWS.IAM.DeleteLoginProfile: instance Data.Data.Data Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance Data.Data.Data Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
- Network.AWS.IAM.DeleteLoginProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance GHC.Classes.Eq Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance GHC.Classes.Eq Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
- Network.AWS.IAM.DeleteLoginProfile: instance GHC.Generics.Generic Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance GHC.Generics.Generic Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
- Network.AWS.IAM.DeleteLoginProfile: instance GHC.Read.Read Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance GHC.Read.Read Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
- Network.AWS.IAM.DeleteLoginProfile: instance GHC.Show.Show Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance GHC.Show.Show Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
- Network.AWS.IAM.DeleteLoginProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteLoginProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteLoginProfile.DeleteLoginProfile
- Network.AWS.IAM.DeleteOpenIdConnectProvider: data DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: data DeleteOpenIdConnectProviderResponse
- Network.AWS.IAM.DeleteOpenIdConnectProvider: deleteOpenIdConnectProvider :: Text -> DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: deleteOpenIdConnectProviderResponse :: DeleteOpenIdConnectProviderResponse
- Network.AWS.IAM.DeleteOpenIdConnectProvider: doicpOpenIdConnectProviderARN :: Lens' DeleteOpenIdConnectProvider Text
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProviderResponse
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProviderResponse
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProviderResponse
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProviderResponse
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProviderResponse
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProviderResponse
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeleteOpenIdConnectProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteOpenIdConnectProvider.DeleteOpenIdConnectProvider
- Network.AWS.IAM.DeletePolicy: data DeletePolicy
- Network.AWS.IAM.DeletePolicy: data DeletePolicyResponse
- Network.AWS.IAM.DeletePolicy: deletePolicy :: Text -> DeletePolicy
- Network.AWS.IAM.DeletePolicy: deletePolicyResponse :: DeletePolicyResponse
- Network.AWS.IAM.DeletePolicy: dpPolicyARN :: Lens' DeletePolicy Text
- Network.AWS.IAM.DeletePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeletePolicy.DeletePolicyResponse
- Network.AWS.IAM.DeletePolicy: instance Data.Data.Data Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance Data.Data.Data Network.AWS.IAM.DeletePolicy.DeletePolicyResponse
- Network.AWS.IAM.DeletePolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeletePolicy.DeletePolicyResponse
- Network.AWS.IAM.DeletePolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeletePolicy.DeletePolicyResponse
- Network.AWS.IAM.DeletePolicy: instance GHC.Read.Read Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance GHC.Read.Read Network.AWS.IAM.DeletePolicy.DeletePolicyResponse
- Network.AWS.IAM.DeletePolicy: instance GHC.Show.Show Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance GHC.Show.Show Network.AWS.IAM.DeletePolicy.DeletePolicyResponse
- Network.AWS.IAM.DeletePolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeletePolicy.DeletePolicy
- Network.AWS.IAM.DeletePolicyVersion: data DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: data DeletePolicyVersionResponse
- Network.AWS.IAM.DeletePolicyVersion: deletePolicyVersion :: Text -> Text -> DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: deletePolicyVersionResponse :: DeletePolicyVersionResponse
- Network.AWS.IAM.DeletePolicyVersion: dpvPolicyARN :: Lens' DeletePolicyVersion Text
- Network.AWS.IAM.DeletePolicyVersion: dpvVersionId :: Lens' DeletePolicyVersion Text
- Network.AWS.IAM.DeletePolicyVersion: instance Control.DeepSeq.NFData Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance Control.DeepSeq.NFData Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
- Network.AWS.IAM.DeletePolicyVersion: instance Data.Data.Data Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance Data.Data.Data Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
- Network.AWS.IAM.DeletePolicyVersion: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance GHC.Classes.Eq Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance GHC.Classes.Eq Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
- Network.AWS.IAM.DeletePolicyVersion: instance GHC.Generics.Generic Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance GHC.Generics.Generic Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
- Network.AWS.IAM.DeletePolicyVersion: instance GHC.Read.Read Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance GHC.Read.Read Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
- Network.AWS.IAM.DeletePolicyVersion: instance GHC.Show.Show Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance GHC.Show.Show Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
- Network.AWS.IAM.DeletePolicyVersion: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeletePolicyVersion: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeletePolicyVersion.DeletePolicyVersion
- Network.AWS.IAM.DeleteRole: data DeleteRole
- Network.AWS.IAM.DeleteRole: data DeleteRoleResponse
- Network.AWS.IAM.DeleteRole: deleteRole :: Text -> DeleteRole
- Network.AWS.IAM.DeleteRole: deleteRoleResponse :: DeleteRoleResponse
- Network.AWS.IAM.DeleteRole: drRoleName :: Lens' DeleteRole Text
- Network.AWS.IAM.DeleteRole: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteRole.DeleteRoleResponse
- Network.AWS.IAM.DeleteRole: instance Data.Data.Data Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance Data.Data.Data Network.AWS.IAM.DeleteRole.DeleteRoleResponse
- Network.AWS.IAM.DeleteRole: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance GHC.Classes.Eq Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance GHC.Classes.Eq Network.AWS.IAM.DeleteRole.DeleteRoleResponse
- Network.AWS.IAM.DeleteRole: instance GHC.Generics.Generic Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance GHC.Generics.Generic Network.AWS.IAM.DeleteRole.DeleteRoleResponse
- Network.AWS.IAM.DeleteRole: instance GHC.Read.Read Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance GHC.Read.Read Network.AWS.IAM.DeleteRole.DeleteRoleResponse
- Network.AWS.IAM.DeleteRole: instance GHC.Show.Show Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance GHC.Show.Show Network.AWS.IAM.DeleteRole.DeleteRoleResponse
- Network.AWS.IAM.DeleteRole: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRole: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteRole.DeleteRole
- Network.AWS.IAM.DeleteRolePolicy: data DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: data DeleteRolePolicyResponse
- Network.AWS.IAM.DeleteRolePolicy: delPolicyName :: Lens' DeleteRolePolicy Text
- Network.AWS.IAM.DeleteRolePolicy: delRoleName :: Lens' DeleteRolePolicy Text
- Network.AWS.IAM.DeleteRolePolicy: deleteRolePolicy :: Text -> Text -> DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: deleteRolePolicyResponse :: DeleteRolePolicyResponse
- Network.AWS.IAM.DeleteRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
- Network.AWS.IAM.DeleteRolePolicy: instance Data.Data.Data Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance Data.Data.Data Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
- Network.AWS.IAM.DeleteRolePolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
- Network.AWS.IAM.DeleteRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
- Network.AWS.IAM.DeleteRolePolicy: instance GHC.Read.Read Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance GHC.Read.Read Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
- Network.AWS.IAM.DeleteRolePolicy: instance GHC.Show.Show Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance GHC.Show.Show Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
- Network.AWS.IAM.DeleteRolePolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteRolePolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteRolePolicy.DeleteRolePolicy
- Network.AWS.IAM.DeleteSAMLProvider: data DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: data DeleteSAMLProviderResponse
- Network.AWS.IAM.DeleteSAMLProvider: deleteSAMLProvider :: Text -> DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: deleteSAMLProviderResponse :: DeleteSAMLProviderResponse
- Network.AWS.IAM.DeleteSAMLProvider: dsamlpSAMLProviderARN :: Lens' DeleteSAMLProvider Text
- Network.AWS.IAM.DeleteSAMLProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
- Network.AWS.IAM.DeleteSAMLProvider: instance Data.Data.Data Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance Data.Data.Data Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
- Network.AWS.IAM.DeleteSAMLProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance GHC.Classes.Eq Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance GHC.Classes.Eq Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
- Network.AWS.IAM.DeleteSAMLProvider: instance GHC.Generics.Generic Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance GHC.Generics.Generic Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
- Network.AWS.IAM.DeleteSAMLProvider: instance GHC.Read.Read Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance GHC.Read.Read Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
- Network.AWS.IAM.DeleteSAMLProvider: instance GHC.Show.Show Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance GHC.Show.Show Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
- Network.AWS.IAM.DeleteSAMLProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSAMLProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteSAMLProvider.DeleteSAMLProvider
- Network.AWS.IAM.DeleteSSHPublicKey: data DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: data DeleteSSHPublicKeyResponse
- Network.AWS.IAM.DeleteSSHPublicKey: deleteSSHPublicKey :: Text -> Text -> DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: deleteSSHPublicKeyResponse :: DeleteSSHPublicKeyResponse
- Network.AWS.IAM.DeleteSSHPublicKey: dspkSSHPublicKeyId :: Lens' DeleteSSHPublicKey Text
- Network.AWS.IAM.DeleteSSHPublicKey: dspkUserName :: Lens' DeleteSSHPublicKey Text
- Network.AWS.IAM.DeleteSSHPublicKey: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
- Network.AWS.IAM.DeleteSSHPublicKey: instance Data.Data.Data Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance Data.Data.Data Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
- Network.AWS.IAM.DeleteSSHPublicKey: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance GHC.Classes.Eq Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance GHC.Classes.Eq Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
- Network.AWS.IAM.DeleteSSHPublicKey: instance GHC.Generics.Generic Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance GHC.Generics.Generic Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
- Network.AWS.IAM.DeleteSSHPublicKey: instance GHC.Read.Read Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance GHC.Read.Read Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
- Network.AWS.IAM.DeleteSSHPublicKey: instance GHC.Show.Show Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance GHC.Show.Show Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
- Network.AWS.IAM.DeleteSSHPublicKey: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteSSHPublicKey: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
- Network.AWS.IAM.DeleteServerCertificate: data DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: data DeleteServerCertificateResponse
- Network.AWS.IAM.DeleteServerCertificate: deleteServerCertificate :: Text -> DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: deleteServerCertificateResponse :: DeleteServerCertificateResponse
- Network.AWS.IAM.DeleteServerCertificate: dscServerCertificateName :: Lens' DeleteServerCertificate Text
- Network.AWS.IAM.DeleteServerCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
- Network.AWS.IAM.DeleteServerCertificate: instance Data.Data.Data Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance Data.Data.Data Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
- Network.AWS.IAM.DeleteServerCertificate: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance GHC.Classes.Eq Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance GHC.Classes.Eq Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
- Network.AWS.IAM.DeleteServerCertificate: instance GHC.Generics.Generic Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance GHC.Generics.Generic Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
- Network.AWS.IAM.DeleteServerCertificate: instance GHC.Read.Read Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance GHC.Read.Read Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
- Network.AWS.IAM.DeleteServerCertificate: instance GHC.Show.Show Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance GHC.Show.Show Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
- Network.AWS.IAM.DeleteServerCertificate: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServerCertificate: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteServerCertificate.DeleteServerCertificate
- Network.AWS.IAM.DeleteServiceLinkedRole: data DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: data DeleteServiceLinkedRoleResponse
- Network.AWS.IAM.DeleteServiceLinkedRole: deleteServiceLinkedRole :: Text -> DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: deleteServiceLinkedRoleResponse :: Int -> Text -> DeleteServiceLinkedRoleResponse
- Network.AWS.IAM.DeleteServiceLinkedRole: dslrRoleName :: Lens' DeleteServiceLinkedRole Text
- Network.AWS.IAM.DeleteServiceLinkedRole: dslrrsDeletionTaskId :: Lens' DeleteServiceLinkedRoleResponse Text
- Network.AWS.IAM.DeleteServiceLinkedRole: dslrrsResponseStatus :: Lens' DeleteServiceLinkedRoleResponse Int
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Data.Data.Data Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Data.Data.Data Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance GHC.Classes.Eq Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance GHC.Classes.Eq Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
- Network.AWS.IAM.DeleteServiceLinkedRole: instance GHC.Generics.Generic Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance GHC.Generics.Generic Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
- Network.AWS.IAM.DeleteServiceLinkedRole: instance GHC.Read.Read Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance GHC.Read.Read Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
- Network.AWS.IAM.DeleteServiceLinkedRole: instance GHC.Show.Show Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance GHC.Show.Show Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceLinkedRole: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
- Network.AWS.IAM.DeleteServiceSpecificCredential: data DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: data DeleteServiceSpecificCredentialResponse
- Network.AWS.IAM.DeleteServiceSpecificCredential: deleteServiceSpecificCredential :: Text -> DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: deleteServiceSpecificCredentialResponse :: DeleteServiceSpecificCredentialResponse
- Network.AWS.IAM.DeleteServiceSpecificCredential: dsscServiceSpecificCredentialId :: Lens' DeleteServiceSpecificCredential Text
- Network.AWS.IAM.DeleteServiceSpecificCredential: dsscUserName :: Lens' DeleteServiceSpecificCredential (Maybe Text)
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Data.Data.Data Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Data.Data.Data Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance GHC.Classes.Eq Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance GHC.Classes.Eq Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance GHC.Generics.Generic Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance GHC.Generics.Generic Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance GHC.Read.Read Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance GHC.Read.Read Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance GHC.Show.Show Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance GHC.Show.Show Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteServiceSpecificCredential: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
- Network.AWS.IAM.DeleteSigningCertificate: data DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: data DeleteSigningCertificateResponse
- Network.AWS.IAM.DeleteSigningCertificate: deleteSigningCertificate :: Text -> DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: deleteSigningCertificateResponse :: DeleteSigningCertificateResponse
- Network.AWS.IAM.DeleteSigningCertificate: dscCertificateId :: Lens' DeleteSigningCertificate Text
- Network.AWS.IAM.DeleteSigningCertificate: dscUserName :: Lens' DeleteSigningCertificate (Maybe Text)
- Network.AWS.IAM.DeleteSigningCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
- Network.AWS.IAM.DeleteSigningCertificate: instance Data.Data.Data Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance Data.Data.Data Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
- Network.AWS.IAM.DeleteSigningCertificate: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance GHC.Classes.Eq Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance GHC.Classes.Eq Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
- Network.AWS.IAM.DeleteSigningCertificate: instance GHC.Generics.Generic Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance GHC.Generics.Generic Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
- Network.AWS.IAM.DeleteSigningCertificate: instance GHC.Read.Read Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance GHC.Read.Read Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
- Network.AWS.IAM.DeleteSigningCertificate: instance GHC.Show.Show Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance GHC.Show.Show Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
- Network.AWS.IAM.DeleteSigningCertificate: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteSigningCertificate: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteSigningCertificate.DeleteSigningCertificate
- Network.AWS.IAM.DeleteUser: data DeleteUser
- Network.AWS.IAM.DeleteUser: data DeleteUserResponse
- Network.AWS.IAM.DeleteUser: deleteUser :: Text -> DeleteUser
- Network.AWS.IAM.DeleteUser: deleteUserResponse :: DeleteUserResponse
- Network.AWS.IAM.DeleteUser: duUserName :: Lens' DeleteUser Text
- Network.AWS.IAM.DeleteUser: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteUser.DeleteUserResponse
- Network.AWS.IAM.DeleteUser: instance Data.Data.Data Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance Data.Data.Data Network.AWS.IAM.DeleteUser.DeleteUserResponse
- Network.AWS.IAM.DeleteUser: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance GHC.Classes.Eq Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance GHC.Classes.Eq Network.AWS.IAM.DeleteUser.DeleteUserResponse
- Network.AWS.IAM.DeleteUser: instance GHC.Generics.Generic Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance GHC.Generics.Generic Network.AWS.IAM.DeleteUser.DeleteUserResponse
- Network.AWS.IAM.DeleteUser: instance GHC.Read.Read Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance GHC.Read.Read Network.AWS.IAM.DeleteUser.DeleteUserResponse
- Network.AWS.IAM.DeleteUser: instance GHC.Show.Show Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance GHC.Show.Show Network.AWS.IAM.DeleteUser.DeleteUserResponse
- Network.AWS.IAM.DeleteUser: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUser: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteUser.DeleteUser
- Network.AWS.IAM.DeleteUserPolicy: data DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: data DeleteUserPolicyResponse
- Network.AWS.IAM.DeleteUserPolicy: deleteUserPolicy :: Text -> Text -> DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: deleteUserPolicyResponse :: DeleteUserPolicyResponse
- Network.AWS.IAM.DeleteUserPolicy: dupPolicyName :: Lens' DeleteUserPolicy Text
- Network.AWS.IAM.DeleteUserPolicy: dupUserName :: Lens' DeleteUserPolicy Text
- Network.AWS.IAM.DeleteUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
- Network.AWS.IAM.DeleteUserPolicy: instance Data.Data.Data Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance Data.Data.Data Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
- Network.AWS.IAM.DeleteUserPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
- Network.AWS.IAM.DeleteUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
- Network.AWS.IAM.DeleteUserPolicy: instance GHC.Read.Read Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance GHC.Read.Read Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
- Network.AWS.IAM.DeleteUserPolicy: instance GHC.Show.Show Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance GHC.Show.Show Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
- Network.AWS.IAM.DeleteUserPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteUserPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteUserPolicy.DeleteUserPolicy
- Network.AWS.IAM.DeleteVirtualMFADevice: data DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: data DeleteVirtualMFADeviceResponse
- Network.AWS.IAM.DeleteVirtualMFADevice: deleteVirtualMFADevice :: Text -> DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: deleteVirtualMFADeviceResponse :: DeleteVirtualMFADeviceResponse
- Network.AWS.IAM.DeleteVirtualMFADevice: dvmdSerialNumber :: Lens' DeleteVirtualMFADevice Text
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Data.Data.Data Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Data.Data.Data Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
- Network.AWS.IAM.DeleteVirtualMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
- Network.AWS.IAM.DeleteVirtualMFADevice: instance GHC.Read.Read Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance GHC.Read.Read Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
- Network.AWS.IAM.DeleteVirtualMFADevice: instance GHC.Show.Show Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance GHC.Show.Show Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DeleteVirtualMFADevice: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
- Network.AWS.IAM.DetachGroupPolicy: data DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: data DetachGroupPolicyResponse
- Network.AWS.IAM.DetachGroupPolicy: detachGroupPolicy :: Text -> Text -> DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: detachGroupPolicyResponse :: DetachGroupPolicyResponse
- Network.AWS.IAM.DetachGroupPolicy: dgpGroupName :: Lens' DetachGroupPolicy Text
- Network.AWS.IAM.DetachGroupPolicy: dgpPolicyARN :: Lens' DetachGroupPolicy Text
- Network.AWS.IAM.DetachGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
- Network.AWS.IAM.DetachGroupPolicy: instance Data.Data.Data Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance Data.Data.Data Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
- Network.AWS.IAM.DetachGroupPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
- Network.AWS.IAM.DetachGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
- Network.AWS.IAM.DetachGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
- Network.AWS.IAM.DetachGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
- Network.AWS.IAM.DetachGroupPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachGroupPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DetachGroupPolicy.DetachGroupPolicy
- Network.AWS.IAM.DetachRolePolicy: data DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: data DetachRolePolicyResponse
- Network.AWS.IAM.DetachRolePolicy: detachRolePolicy :: Text -> Text -> DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: detachRolePolicyResponse :: DetachRolePolicyResponse
- Network.AWS.IAM.DetachRolePolicy: drpPolicyARN :: Lens' DetachRolePolicy Text
- Network.AWS.IAM.DetachRolePolicy: drpRoleName :: Lens' DetachRolePolicy Text
- Network.AWS.IAM.DetachRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DetachRolePolicy.DetachRolePolicyResponse
- Network.AWS.IAM.DetachRolePolicy: instance Data.Data.Data Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance Data.Data.Data Network.AWS.IAM.DetachRolePolicy.DetachRolePolicyResponse
- Network.AWS.IAM.DetachRolePolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.DetachRolePolicy.DetachRolePolicyResponse
- Network.AWS.IAM.DetachRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.DetachRolePolicy.DetachRolePolicyResponse
- Network.AWS.IAM.DetachRolePolicy: instance GHC.Read.Read Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance GHC.Read.Read Network.AWS.IAM.DetachRolePolicy.DetachRolePolicyResponse
- Network.AWS.IAM.DetachRolePolicy: instance GHC.Show.Show Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance GHC.Show.Show Network.AWS.IAM.DetachRolePolicy.DetachRolePolicyResponse
- Network.AWS.IAM.DetachRolePolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachRolePolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DetachRolePolicy.DetachRolePolicy
- Network.AWS.IAM.DetachUserPolicy: dPolicyARN :: Lens' DetachUserPolicy Text
- Network.AWS.IAM.DetachUserPolicy: dUserName :: Lens' DetachUserPolicy Text
- Network.AWS.IAM.DetachUserPolicy: data DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: data DetachUserPolicyResponse
- Network.AWS.IAM.DetachUserPolicy: detachUserPolicy :: Text -> Text -> DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: detachUserPolicyResponse :: DetachUserPolicyResponse
- Network.AWS.IAM.DetachUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.DetachUserPolicy.DetachUserPolicyResponse
- Network.AWS.IAM.DetachUserPolicy: instance Data.Data.Data Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance Data.Data.Data Network.AWS.IAM.DetachUserPolicy.DetachUserPolicyResponse
- Network.AWS.IAM.DetachUserPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.DetachUserPolicy.DetachUserPolicyResponse
- Network.AWS.IAM.DetachUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.DetachUserPolicy.DetachUserPolicyResponse
- Network.AWS.IAM.DetachUserPolicy: instance GHC.Read.Read Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance GHC.Read.Read Network.AWS.IAM.DetachUserPolicy.DetachUserPolicyResponse
- Network.AWS.IAM.DetachUserPolicy: instance GHC.Show.Show Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance GHC.Show.Show Network.AWS.IAM.DetachUserPolicy.DetachUserPolicyResponse
- Network.AWS.IAM.DetachUserPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.DetachUserPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.DetachUserPolicy.DetachUserPolicy
- Network.AWS.IAM.EnableMFADevice: data EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: data EnableMFADeviceResponse
- Network.AWS.IAM.EnableMFADevice: emdAuthenticationCode1 :: Lens' EnableMFADevice Text
- Network.AWS.IAM.EnableMFADevice: emdAuthenticationCode2 :: Lens' EnableMFADevice Text
- Network.AWS.IAM.EnableMFADevice: emdSerialNumber :: Lens' EnableMFADevice Text
- Network.AWS.IAM.EnableMFADevice: emdUserName :: Lens' EnableMFADevice Text
- Network.AWS.IAM.EnableMFADevice: enableMFADevice :: Text -> Text -> Text -> Text -> EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: enableMFADeviceResponse :: EnableMFADeviceResponse
- Network.AWS.IAM.EnableMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.EnableMFADevice.EnableMFADeviceResponse
- Network.AWS.IAM.EnableMFADevice: instance Data.Data.Data Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance Data.Data.Data Network.AWS.IAM.EnableMFADevice.EnableMFADeviceResponse
- Network.AWS.IAM.EnableMFADevice: instance Data.Hashable.Class.Hashable Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.EnableMFADevice.EnableMFADeviceResponse
- Network.AWS.IAM.EnableMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.EnableMFADevice.EnableMFADeviceResponse
- Network.AWS.IAM.EnableMFADevice: instance GHC.Read.Read Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance GHC.Read.Read Network.AWS.IAM.EnableMFADevice.EnableMFADeviceResponse
- Network.AWS.IAM.EnableMFADevice: instance GHC.Show.Show Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance GHC.Show.Show Network.AWS.IAM.EnableMFADevice.EnableMFADeviceResponse
- Network.AWS.IAM.EnableMFADevice: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.EnableMFADevice: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.EnableMFADevice.EnableMFADevice
- Network.AWS.IAM.GenerateCredentialReport: data GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: data GenerateCredentialReportResponse
- Network.AWS.IAM.GenerateCredentialReport: gcrrsDescription :: Lens' GenerateCredentialReportResponse (Maybe Text)
- Network.AWS.IAM.GenerateCredentialReport: gcrrsResponseStatus :: Lens' GenerateCredentialReportResponse Int
- Network.AWS.IAM.GenerateCredentialReport: gcrrsState :: Lens' GenerateCredentialReportResponse (Maybe ReportStateType)
- Network.AWS.IAM.GenerateCredentialReport: generateCredentialReport :: GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: generateCredentialReportResponse :: Int -> GenerateCredentialReportResponse
- Network.AWS.IAM.GenerateCredentialReport: instance Control.DeepSeq.NFData Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance Control.DeepSeq.NFData Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
- Network.AWS.IAM.GenerateCredentialReport: instance Data.Data.Data Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance Data.Data.Data Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
- Network.AWS.IAM.GenerateCredentialReport: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance GHC.Classes.Eq Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance GHC.Classes.Eq Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
- Network.AWS.IAM.GenerateCredentialReport: instance GHC.Generics.Generic Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance GHC.Generics.Generic Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
- Network.AWS.IAM.GenerateCredentialReport: instance GHC.Read.Read Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance GHC.Read.Read Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
- Network.AWS.IAM.GenerateCredentialReport: instance GHC.Show.Show Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance GHC.Show.Show Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
- Network.AWS.IAM.GenerateCredentialReport: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GenerateCredentialReport: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GenerateCredentialReport.GenerateCredentialReport
- Network.AWS.IAM.GetAccessKeyLastUsed: data GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: data GetAccessKeyLastUsedResponse
- Network.AWS.IAM.GetAccessKeyLastUsed: gakluAccessKeyId :: Lens' GetAccessKeyLastUsed AccessKey
- Network.AWS.IAM.GetAccessKeyLastUsed: gaklursAccessKeyLastUsed :: Lens' GetAccessKeyLastUsedResponse (Maybe AccessKeyLastUsed)
- Network.AWS.IAM.GetAccessKeyLastUsed: gaklursResponseStatus :: Lens' GetAccessKeyLastUsedResponse Int
- Network.AWS.IAM.GetAccessKeyLastUsed: gaklursUserName :: Lens' GetAccessKeyLastUsedResponse (Maybe Text)
- Network.AWS.IAM.GetAccessKeyLastUsed: getAccessKeyLastUsed :: AccessKey -> GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: getAccessKeyLastUsedResponse :: Int -> GetAccessKeyLastUsedResponse
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Control.DeepSeq.NFData Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Control.DeepSeq.NFData Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Data.Data.Data Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Data.Data.Data Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance GHC.Classes.Eq Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance GHC.Classes.Eq Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
- Network.AWS.IAM.GetAccessKeyLastUsed: instance GHC.Generics.Generic Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance GHC.Generics.Generic Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
- Network.AWS.IAM.GetAccessKeyLastUsed: instance GHC.Read.Read Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance GHC.Read.Read Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
- Network.AWS.IAM.GetAccessKeyLastUsed: instance GHC.Show.Show Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance GHC.Show.Show Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccessKeyLastUsed: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
- Network.AWS.IAM.GetAccountAuthorizationDetails: data GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: data GetAccountAuthorizationDetailsResponse
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadFilter :: Lens' GetAccountAuthorizationDetails [EntityType]
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadMarker :: Lens' GetAccountAuthorizationDetails (Maybe Text)
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadMaxItems :: Lens' GetAccountAuthorizationDetails (Maybe Natural)
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadrsGroupDetailList :: Lens' GetAccountAuthorizationDetailsResponse [GroupDetail]
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadrsIsTruncated :: Lens' GetAccountAuthorizationDetailsResponse (Maybe Bool)
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadrsMarker :: Lens' GetAccountAuthorizationDetailsResponse (Maybe Text)
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadrsPolicies :: Lens' GetAccountAuthorizationDetailsResponse [ManagedPolicyDetail]
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadrsResponseStatus :: Lens' GetAccountAuthorizationDetailsResponse Int
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadrsRoleDetailList :: Lens' GetAccountAuthorizationDetailsResponse [RoleDetail]
- Network.AWS.IAM.GetAccountAuthorizationDetails: gaadrsUserDetailList :: Lens' GetAccountAuthorizationDetailsResponse [UserDetail]
- Network.AWS.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetails :: GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetailsResponse :: Int -> GetAccountAuthorizationDetailsResponse
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Control.DeepSeq.NFData Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Control.DeepSeq.NFData Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Data.Data.Data Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Data.Data.Data Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance GHC.Classes.Eq Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance GHC.Classes.Eq Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance GHC.Generics.Generic Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance GHC.Generics.Generic Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance GHC.Read.Read Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance GHC.Read.Read Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance GHC.Show.Show Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance GHC.Show.Show Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountAuthorizationDetails: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
- Network.AWS.IAM.GetAccountPasswordPolicy: data GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: data GetAccountPasswordPolicyResponse
- Network.AWS.IAM.GetAccountPasswordPolicy: gapprsPasswordPolicy :: Lens' GetAccountPasswordPolicyResponse PasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: gapprsResponseStatus :: Lens' GetAccountPasswordPolicyResponse Int
- Network.AWS.IAM.GetAccountPasswordPolicy: getAccountPasswordPolicy :: GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: getAccountPasswordPolicyResponse :: Int -> PasswordPolicy -> GetAccountPasswordPolicyResponse
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Data.Data.Data Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Data.Data.Data Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
- Network.AWS.IAM.GetAccountPasswordPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
- Network.AWS.IAM.GetAccountPasswordPolicy: instance GHC.Read.Read Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance GHC.Read.Read Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
- Network.AWS.IAM.GetAccountPasswordPolicy: instance GHC.Show.Show Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance GHC.Show.Show Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountPasswordPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
- Network.AWS.IAM.GetAccountSummary: data GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: data GetAccountSummaryResponse
- Network.AWS.IAM.GetAccountSummary: gasrsResponseStatus :: Lens' GetAccountSummaryResponse Int
- Network.AWS.IAM.GetAccountSummary: gasrsSummaryMap :: Lens' GetAccountSummaryResponse (HashMap SummaryKeyType Int)
- Network.AWS.IAM.GetAccountSummary: getAccountSummary :: GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: getAccountSummaryResponse :: Int -> GetAccountSummaryResponse
- Network.AWS.IAM.GetAccountSummary: instance Control.DeepSeq.NFData Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance Control.DeepSeq.NFData Network.AWS.IAM.GetAccountSummary.GetAccountSummaryResponse
- Network.AWS.IAM.GetAccountSummary: instance Data.Data.Data Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance Data.Data.Data Network.AWS.IAM.GetAccountSummary.GetAccountSummaryResponse
- Network.AWS.IAM.GetAccountSummary: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance GHC.Classes.Eq Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance GHC.Classes.Eq Network.AWS.IAM.GetAccountSummary.GetAccountSummaryResponse
- Network.AWS.IAM.GetAccountSummary: instance GHC.Generics.Generic Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance GHC.Generics.Generic Network.AWS.IAM.GetAccountSummary.GetAccountSummaryResponse
- Network.AWS.IAM.GetAccountSummary: instance GHC.Read.Read Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance GHC.Read.Read Network.AWS.IAM.GetAccountSummary.GetAccountSummaryResponse
- Network.AWS.IAM.GetAccountSummary: instance GHC.Show.Show Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance GHC.Show.Show Network.AWS.IAM.GetAccountSummary.GetAccountSummaryResponse
- Network.AWS.IAM.GetAccountSummary: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetAccountSummary: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetAccountSummary.GetAccountSummary
- Network.AWS.IAM.GetContextKeysForCustomPolicy: data GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: data GetContextKeysForPolicyResponse
- Network.AWS.IAM.GetContextKeysForCustomPolicy: gckfcpPolicyInputList :: Lens' GetContextKeysForCustomPolicy [Text]
- Network.AWS.IAM.GetContextKeysForCustomPolicy: gckfpContextKeyNames :: Lens' GetContextKeysForPolicyResponse [Text]
- Network.AWS.IAM.GetContextKeysForCustomPolicy: getContextKeysForCustomPolicy :: GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: getContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance Data.Data.Data Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance GHC.Read.Read Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance GHC.Show.Show Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForCustomPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: data GetContextKeysForPolicyResponse
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: data GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: gckfpContextKeyNames :: Lens' GetContextKeysForPolicyResponse [Text]
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: gckfppPolicyInputList :: Lens' GetContextKeysForPrincipalPolicy [Text]
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: gckfppPolicySourceARN :: Lens' GetContextKeysForPrincipalPolicy Text
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: getContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: getContextKeysForPrincipalPolicy :: Text -> GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance Data.Data.Data Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance GHC.Read.Read Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance GHC.Show.Show Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetContextKeysForPrincipalPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
- Network.AWS.IAM.GetCredentialReport: data GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: data GetCredentialReportResponse
- Network.AWS.IAM.GetCredentialReport: getCredentialReport :: GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: getCredentialReportResponse :: Int -> GetCredentialReportResponse
- Network.AWS.IAM.GetCredentialReport: grsContent :: Lens' GetCredentialReportResponse (Maybe ByteString)
- Network.AWS.IAM.GetCredentialReport: grsGeneratedTime :: Lens' GetCredentialReportResponse (Maybe UTCTime)
- Network.AWS.IAM.GetCredentialReport: grsReportFormat :: Lens' GetCredentialReportResponse (Maybe ReportFormatType)
- Network.AWS.IAM.GetCredentialReport: grsResponseStatus :: Lens' GetCredentialReportResponse Int
- Network.AWS.IAM.GetCredentialReport: instance Control.DeepSeq.NFData Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance Control.DeepSeq.NFData Network.AWS.IAM.GetCredentialReport.GetCredentialReportResponse
- Network.AWS.IAM.GetCredentialReport: instance Data.Data.Data Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance Data.Data.Data Network.AWS.IAM.GetCredentialReport.GetCredentialReportResponse
- Network.AWS.IAM.GetCredentialReport: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance GHC.Classes.Eq Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance GHC.Classes.Eq Network.AWS.IAM.GetCredentialReport.GetCredentialReportResponse
- Network.AWS.IAM.GetCredentialReport: instance GHC.Generics.Generic Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance GHC.Generics.Generic Network.AWS.IAM.GetCredentialReport.GetCredentialReportResponse
- Network.AWS.IAM.GetCredentialReport: instance GHC.Read.Read Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance GHC.Read.Read Network.AWS.IAM.GetCredentialReport.GetCredentialReportResponse
- Network.AWS.IAM.GetCredentialReport: instance GHC.Show.Show Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance GHC.Show.Show Network.AWS.IAM.GetCredentialReport.GetCredentialReportResponse
- Network.AWS.IAM.GetCredentialReport: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetCredentialReport: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetCredentialReport.GetCredentialReport
- Network.AWS.IAM.GetGroup: data GetGroup
- Network.AWS.IAM.GetGroup: data GetGroupResponse
- Network.AWS.IAM.GetGroup: getGroup :: Text -> GetGroup
- Network.AWS.IAM.GetGroup: getGroupResponse :: Int -> Group -> GetGroupResponse
- Network.AWS.IAM.GetGroup: ggGroupName :: Lens' GetGroup Text
- Network.AWS.IAM.GetGroup: ggMarker :: Lens' GetGroup (Maybe Text)
- Network.AWS.IAM.GetGroup: ggMaxItems :: Lens' GetGroup (Maybe Natural)
- Network.AWS.IAM.GetGroup: ggrsGroup :: Lens' GetGroupResponse Group
- Network.AWS.IAM.GetGroup: ggrsIsTruncated :: Lens' GetGroupResponse (Maybe Bool)
- Network.AWS.IAM.GetGroup: ggrsMarker :: Lens' GetGroupResponse (Maybe Text)
- Network.AWS.IAM.GetGroup: ggrsResponseStatus :: Lens' GetGroupResponse Int
- Network.AWS.IAM.GetGroup: ggrsUsers :: Lens' GetGroupResponse [User]
- Network.AWS.IAM.GetGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.GetGroup.GetGroupResponse
- Network.AWS.IAM.GetGroup: instance Data.Data.Data Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance Data.Data.Data Network.AWS.IAM.GetGroup.GetGroupResponse
- Network.AWS.IAM.GetGroup: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance GHC.Classes.Eq Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance GHC.Classes.Eq Network.AWS.IAM.GetGroup.GetGroupResponse
- Network.AWS.IAM.GetGroup: instance GHC.Generics.Generic Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance GHC.Generics.Generic Network.AWS.IAM.GetGroup.GetGroupResponse
- Network.AWS.IAM.GetGroup: instance GHC.Read.Read Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance GHC.Read.Read Network.AWS.IAM.GetGroup.GetGroupResponse
- Network.AWS.IAM.GetGroup: instance GHC.Show.Show Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance GHC.Show.Show Network.AWS.IAM.GetGroup.GetGroupResponse
- Network.AWS.IAM.GetGroup: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroup: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetGroup.GetGroup
- Network.AWS.IAM.GetGroupPolicy: data GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: data GetGroupPolicyResponse
- Network.AWS.IAM.GetGroupPolicy: getGroupPolicy :: Text -> Text -> GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: getGroupPolicyResponse :: Int -> Text -> Text -> Text -> GetGroupPolicyResponse
- Network.AWS.IAM.GetGroupPolicy: ggpGroupName :: Lens' GetGroupPolicy Text
- Network.AWS.IAM.GetGroupPolicy: ggpPolicyName :: Lens' GetGroupPolicy Text
- Network.AWS.IAM.GetGroupPolicy: ggprsGroupName :: Lens' GetGroupPolicyResponse Text
- Network.AWS.IAM.GetGroupPolicy: ggprsPolicyDocument :: Lens' GetGroupPolicyResponse Text
- Network.AWS.IAM.GetGroupPolicy: ggprsPolicyName :: Lens' GetGroupPolicyResponse Text
- Network.AWS.IAM.GetGroupPolicy: ggprsResponseStatus :: Lens' GetGroupPolicyResponse Int
- Network.AWS.IAM.GetGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetGroupPolicy.GetGroupPolicyResponse
- Network.AWS.IAM.GetGroupPolicy: instance Data.Data.Data Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance Data.Data.Data Network.AWS.IAM.GetGroupPolicy.GetGroupPolicyResponse
- Network.AWS.IAM.GetGroupPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetGroupPolicy.GetGroupPolicyResponse
- Network.AWS.IAM.GetGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetGroupPolicy.GetGroupPolicyResponse
- Network.AWS.IAM.GetGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.GetGroupPolicy.GetGroupPolicyResponse
- Network.AWS.IAM.GetGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.GetGroupPolicy.GetGroupPolicyResponse
- Network.AWS.IAM.GetGroupPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetGroupPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetGroupPolicy.GetGroupPolicy
- Network.AWS.IAM.GetInstanceProfile: data GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: data GetInstanceProfileResponse
- Network.AWS.IAM.GetInstanceProfile: getInstanceProfile :: Text -> GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: getInstanceProfileResponse :: Int -> InstanceProfile -> GetInstanceProfileResponse
- Network.AWS.IAM.GetInstanceProfile: gipInstanceProfileName :: Lens' GetInstanceProfile Text
- Network.AWS.IAM.GetInstanceProfile: giprsInstanceProfile :: Lens' GetInstanceProfileResponse InstanceProfile
- Network.AWS.IAM.GetInstanceProfile: giprsResponseStatus :: Lens' GetInstanceProfileResponse Int
- Network.AWS.IAM.GetInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.GetInstanceProfile.GetInstanceProfileResponse
- Network.AWS.IAM.GetInstanceProfile: instance Data.Data.Data Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance Data.Data.Data Network.AWS.IAM.GetInstanceProfile.GetInstanceProfileResponse
- Network.AWS.IAM.GetInstanceProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.GetInstanceProfile.GetInstanceProfileResponse
- Network.AWS.IAM.GetInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.GetInstanceProfile.GetInstanceProfileResponse
- Network.AWS.IAM.GetInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.GetInstanceProfile.GetInstanceProfileResponse
- Network.AWS.IAM.GetInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.GetInstanceProfile.GetInstanceProfileResponse
- Network.AWS.IAM.GetInstanceProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetInstanceProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetInstanceProfile.GetInstanceProfile
- Network.AWS.IAM.GetLoginProfile: data GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: data GetLoginProfileResponse
- Network.AWS.IAM.GetLoginProfile: getLoginProfile :: Text -> GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: getLoginProfileResponse :: Int -> LoginProfile -> GetLoginProfileResponse
- Network.AWS.IAM.GetLoginProfile: glpUserName :: Lens' GetLoginProfile Text
- Network.AWS.IAM.GetLoginProfile: glprsLoginProfile :: Lens' GetLoginProfileResponse LoginProfile
- Network.AWS.IAM.GetLoginProfile: glprsResponseStatus :: Lens' GetLoginProfileResponse Int
- Network.AWS.IAM.GetLoginProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.GetLoginProfile.GetLoginProfileResponse
- Network.AWS.IAM.GetLoginProfile: instance Data.Data.Data Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance Data.Data.Data Network.AWS.IAM.GetLoginProfile.GetLoginProfileResponse
- Network.AWS.IAM.GetLoginProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance GHC.Classes.Eq Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance GHC.Classes.Eq Network.AWS.IAM.GetLoginProfile.GetLoginProfileResponse
- Network.AWS.IAM.GetLoginProfile: instance GHC.Generics.Generic Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance GHC.Generics.Generic Network.AWS.IAM.GetLoginProfile.GetLoginProfileResponse
- Network.AWS.IAM.GetLoginProfile: instance GHC.Read.Read Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance GHC.Read.Read Network.AWS.IAM.GetLoginProfile.GetLoginProfileResponse
- Network.AWS.IAM.GetLoginProfile: instance GHC.Show.Show Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance GHC.Show.Show Network.AWS.IAM.GetLoginProfile.GetLoginProfileResponse
- Network.AWS.IAM.GetLoginProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetLoginProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetLoginProfile.GetLoginProfile
- Network.AWS.IAM.GetOpenIdConnectProvider: data GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: data GetOpenIdConnectProviderResponse
- Network.AWS.IAM.GetOpenIdConnectProvider: getOpenIdConnectProvider :: Text -> GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: getOpenIdConnectProviderResponse :: Int -> GetOpenIdConnectProviderResponse
- Network.AWS.IAM.GetOpenIdConnectProvider: goicpOpenIdConnectProviderARN :: Lens' GetOpenIdConnectProvider Text
- Network.AWS.IAM.GetOpenIdConnectProvider: goicprsClientIdList :: Lens' GetOpenIdConnectProviderResponse [Text]
- Network.AWS.IAM.GetOpenIdConnectProvider: goicprsCreateDate :: Lens' GetOpenIdConnectProviderResponse (Maybe UTCTime)
- Network.AWS.IAM.GetOpenIdConnectProvider: goicprsResponseStatus :: Lens' GetOpenIdConnectProviderResponse Int
- Network.AWS.IAM.GetOpenIdConnectProvider: goicprsThumbprintList :: Lens' GetOpenIdConnectProviderResponse [Text]
- Network.AWS.IAM.GetOpenIdConnectProvider: goicprsURL :: Lens' GetOpenIdConnectProviderResponse (Maybe Text)
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProviderResponse
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProviderResponse
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProviderResponse
- Network.AWS.IAM.GetOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProviderResponse
- Network.AWS.IAM.GetOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProviderResponse
- Network.AWS.IAM.GetOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProviderResponse
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetOpenIdConnectProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetOpenIdConnectProvider.GetOpenIdConnectProvider
- Network.AWS.IAM.GetPolicy: data GetPolicy
- Network.AWS.IAM.GetPolicy: data GetPolicyResponse
- Network.AWS.IAM.GetPolicy: getPolicy :: Text -> GetPolicy
- Network.AWS.IAM.GetPolicy: getPolicyResponse :: Int -> GetPolicyResponse
- Network.AWS.IAM.GetPolicy: gpPolicyARN :: Lens' GetPolicy Text
- Network.AWS.IAM.GetPolicy: gprsPolicy :: Lens' GetPolicyResponse (Maybe Policy)
- Network.AWS.IAM.GetPolicy: gprsResponseStatus :: Lens' GetPolicyResponse Int
- Network.AWS.IAM.GetPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetPolicy.GetPolicyResponse
- Network.AWS.IAM.GetPolicy: instance Data.Data.Data Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance Data.Data.Data Network.AWS.IAM.GetPolicy.GetPolicyResponse
- Network.AWS.IAM.GetPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetPolicy.GetPolicyResponse
- Network.AWS.IAM.GetPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetPolicy.GetPolicyResponse
- Network.AWS.IAM.GetPolicy: instance GHC.Read.Read Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance GHC.Read.Read Network.AWS.IAM.GetPolicy.GetPolicyResponse
- Network.AWS.IAM.GetPolicy: instance GHC.Show.Show Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance GHC.Show.Show Network.AWS.IAM.GetPolicy.GetPolicyResponse
- Network.AWS.IAM.GetPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetPolicy.GetPolicy
- Network.AWS.IAM.GetPolicyVersion: data GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: data GetPolicyVersionResponse
- Network.AWS.IAM.GetPolicyVersion: getPolicyVersion :: Text -> Text -> GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: getPolicyVersionResponse :: Int -> GetPolicyVersionResponse
- Network.AWS.IAM.GetPolicyVersion: gpvPolicyARN :: Lens' GetPolicyVersion Text
- Network.AWS.IAM.GetPolicyVersion: gpvVersionId :: Lens' GetPolicyVersion Text
- Network.AWS.IAM.GetPolicyVersion: gpvrsPolicyVersion :: Lens' GetPolicyVersionResponse (Maybe PolicyVersion)
- Network.AWS.IAM.GetPolicyVersion: gpvrsResponseStatus :: Lens' GetPolicyVersionResponse Int
- Network.AWS.IAM.GetPolicyVersion: instance Control.DeepSeq.NFData Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance Control.DeepSeq.NFData Network.AWS.IAM.GetPolicyVersion.GetPolicyVersionResponse
- Network.AWS.IAM.GetPolicyVersion: instance Data.Data.Data Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance Data.Data.Data Network.AWS.IAM.GetPolicyVersion.GetPolicyVersionResponse
- Network.AWS.IAM.GetPolicyVersion: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance GHC.Classes.Eq Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance GHC.Classes.Eq Network.AWS.IAM.GetPolicyVersion.GetPolicyVersionResponse
- Network.AWS.IAM.GetPolicyVersion: instance GHC.Generics.Generic Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance GHC.Generics.Generic Network.AWS.IAM.GetPolicyVersion.GetPolicyVersionResponse
- Network.AWS.IAM.GetPolicyVersion: instance GHC.Read.Read Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance GHC.Read.Read Network.AWS.IAM.GetPolicyVersion.GetPolicyVersionResponse
- Network.AWS.IAM.GetPolicyVersion: instance GHC.Show.Show Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance GHC.Show.Show Network.AWS.IAM.GetPolicyVersion.GetPolicyVersionResponse
- Network.AWS.IAM.GetPolicyVersion: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetPolicyVersion: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetPolicyVersion.GetPolicyVersion
- Network.AWS.IAM.GetRole: data GetRole
- Network.AWS.IAM.GetRole: data GetRoleResponse
- Network.AWS.IAM.GetRole: getRole :: Text -> GetRole
- Network.AWS.IAM.GetRole: getRoleResponse :: Int -> Role -> GetRoleResponse
- Network.AWS.IAM.GetRole: grRoleName :: Lens' GetRole Text
- Network.AWS.IAM.GetRole: grrsResponseStatus :: Lens' GetRoleResponse Int
- Network.AWS.IAM.GetRole: grrsRole :: Lens' GetRoleResponse Role
- Network.AWS.IAM.GetRole: instance Control.DeepSeq.NFData Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance Control.DeepSeq.NFData Network.AWS.IAM.GetRole.GetRoleResponse
- Network.AWS.IAM.GetRole: instance Data.Data.Data Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance Data.Data.Data Network.AWS.IAM.GetRole.GetRoleResponse
- Network.AWS.IAM.GetRole: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance GHC.Classes.Eq Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance GHC.Classes.Eq Network.AWS.IAM.GetRole.GetRoleResponse
- Network.AWS.IAM.GetRole: instance GHC.Generics.Generic Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance GHC.Generics.Generic Network.AWS.IAM.GetRole.GetRoleResponse
- Network.AWS.IAM.GetRole: instance GHC.Read.Read Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance GHC.Read.Read Network.AWS.IAM.GetRole.GetRoleResponse
- Network.AWS.IAM.GetRole: instance GHC.Show.Show Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance GHC.Show.Show Network.AWS.IAM.GetRole.GetRoleResponse
- Network.AWS.IAM.GetRole: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRole: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetRole.GetRole
- Network.AWS.IAM.GetRolePolicy: data GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: data GetRolePolicyResponse
- Network.AWS.IAM.GetRolePolicy: getRolePolicy :: Text -> Text -> GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: getRolePolicyResponse :: Int -> Text -> Text -> Text -> GetRolePolicyResponse
- Network.AWS.IAM.GetRolePolicy: grpPolicyName :: Lens' GetRolePolicy Text
- Network.AWS.IAM.GetRolePolicy: grpRoleName :: Lens' GetRolePolicy Text
- Network.AWS.IAM.GetRolePolicy: grprsPolicyDocument :: Lens' GetRolePolicyResponse Text
- Network.AWS.IAM.GetRolePolicy: grprsPolicyName :: Lens' GetRolePolicyResponse Text
- Network.AWS.IAM.GetRolePolicy: grprsResponseStatus :: Lens' GetRolePolicyResponse Int
- Network.AWS.IAM.GetRolePolicy: grprsRoleName :: Lens' GetRolePolicyResponse Text
- Network.AWS.IAM.GetRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetRolePolicy.GetRolePolicyResponse
- Network.AWS.IAM.GetRolePolicy: instance Data.Data.Data Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance Data.Data.Data Network.AWS.IAM.GetRolePolicy.GetRolePolicyResponse
- Network.AWS.IAM.GetRolePolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetRolePolicy.GetRolePolicyResponse
- Network.AWS.IAM.GetRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetRolePolicy.GetRolePolicyResponse
- Network.AWS.IAM.GetRolePolicy: instance GHC.Read.Read Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance GHC.Read.Read Network.AWS.IAM.GetRolePolicy.GetRolePolicyResponse
- Network.AWS.IAM.GetRolePolicy: instance GHC.Show.Show Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance GHC.Show.Show Network.AWS.IAM.GetRolePolicy.GetRolePolicyResponse
- Network.AWS.IAM.GetRolePolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetRolePolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetRolePolicy.GetRolePolicy
- Network.AWS.IAM.GetSAMLProvider: data GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: data GetSAMLProviderResponse
- Network.AWS.IAM.GetSAMLProvider: getSAMLProvider :: Text -> GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: getSAMLProviderResponse :: Int -> GetSAMLProviderResponse
- Network.AWS.IAM.GetSAMLProvider: gsamlpSAMLProviderARN :: Lens' GetSAMLProvider Text
- Network.AWS.IAM.GetSAMLProvider: gsamlprsCreateDate :: Lens' GetSAMLProviderResponse (Maybe UTCTime)
- Network.AWS.IAM.GetSAMLProvider: gsamlprsResponseStatus :: Lens' GetSAMLProviderResponse Int
- Network.AWS.IAM.GetSAMLProvider: gsamlprsSAMLMetadataDocument :: Lens' GetSAMLProviderResponse (Maybe Text)
- Network.AWS.IAM.GetSAMLProvider: gsamlprsValidUntil :: Lens' GetSAMLProviderResponse (Maybe UTCTime)
- Network.AWS.IAM.GetSAMLProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.GetSAMLProvider.GetSAMLProviderResponse
- Network.AWS.IAM.GetSAMLProvider: instance Data.Data.Data Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance Data.Data.Data Network.AWS.IAM.GetSAMLProvider.GetSAMLProviderResponse
- Network.AWS.IAM.GetSAMLProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance GHC.Classes.Eq Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance GHC.Classes.Eq Network.AWS.IAM.GetSAMLProvider.GetSAMLProviderResponse
- Network.AWS.IAM.GetSAMLProvider: instance GHC.Generics.Generic Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance GHC.Generics.Generic Network.AWS.IAM.GetSAMLProvider.GetSAMLProviderResponse
- Network.AWS.IAM.GetSAMLProvider: instance GHC.Read.Read Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance GHC.Read.Read Network.AWS.IAM.GetSAMLProvider.GetSAMLProviderResponse
- Network.AWS.IAM.GetSAMLProvider: instance GHC.Show.Show Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance GHC.Show.Show Network.AWS.IAM.GetSAMLProvider.GetSAMLProviderResponse
- Network.AWS.IAM.GetSAMLProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSAMLProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetSAMLProvider.GetSAMLProvider
- Network.AWS.IAM.GetSSHPublicKey: data GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: data GetSSHPublicKeyResponse
- Network.AWS.IAM.GetSSHPublicKey: getSSHPublicKey :: Text -> Text -> EncodingType -> GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: getSSHPublicKeyResponse :: Int -> GetSSHPublicKeyResponse
- Network.AWS.IAM.GetSSHPublicKey: gspkEncoding :: Lens' GetSSHPublicKey EncodingType
- Network.AWS.IAM.GetSSHPublicKey: gspkSSHPublicKeyId :: Lens' GetSSHPublicKey Text
- Network.AWS.IAM.GetSSHPublicKey: gspkUserName :: Lens' GetSSHPublicKey Text
- Network.AWS.IAM.GetSSHPublicKey: gspkrsResponseStatus :: Lens' GetSSHPublicKeyResponse Int
- Network.AWS.IAM.GetSSHPublicKey: gspkrsSSHPublicKey :: Lens' GetSSHPublicKeyResponse (Maybe SSHPublicKey)
- Network.AWS.IAM.GetSSHPublicKey: instance Control.DeepSeq.NFData Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance Control.DeepSeq.NFData Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
- Network.AWS.IAM.GetSSHPublicKey: instance Data.Data.Data Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance Data.Data.Data Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
- Network.AWS.IAM.GetSSHPublicKey: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance GHC.Classes.Eq Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance GHC.Classes.Eq Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
- Network.AWS.IAM.GetSSHPublicKey: instance GHC.Generics.Generic Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance GHC.Generics.Generic Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
- Network.AWS.IAM.GetSSHPublicKey: instance GHC.Read.Read Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance GHC.Read.Read Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
- Network.AWS.IAM.GetSSHPublicKey: instance GHC.Show.Show Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance GHC.Show.Show Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
- Network.AWS.IAM.GetSSHPublicKey: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetSSHPublicKey: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetSSHPublicKey.GetSSHPublicKey
- Network.AWS.IAM.GetServerCertificate: data GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: data GetServerCertificateResponse
- Network.AWS.IAM.GetServerCertificate: getServerCertificate :: Text -> GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: getServerCertificateResponse :: Int -> ServerCertificate -> GetServerCertificateResponse
- Network.AWS.IAM.GetServerCertificate: gscServerCertificateName :: Lens' GetServerCertificate Text
- Network.AWS.IAM.GetServerCertificate: gscrsResponseStatus :: Lens' GetServerCertificateResponse Int
- Network.AWS.IAM.GetServerCertificate: gscrsServerCertificate :: Lens' GetServerCertificateResponse ServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.GetServerCertificate.GetServerCertificateResponse
- Network.AWS.IAM.GetServerCertificate: instance Data.Data.Data Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance Data.Data.Data Network.AWS.IAM.GetServerCertificate.GetServerCertificateResponse
- Network.AWS.IAM.GetServerCertificate: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance GHC.Classes.Eq Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance GHC.Classes.Eq Network.AWS.IAM.GetServerCertificate.GetServerCertificateResponse
- Network.AWS.IAM.GetServerCertificate: instance GHC.Generics.Generic Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance GHC.Generics.Generic Network.AWS.IAM.GetServerCertificate.GetServerCertificateResponse
- Network.AWS.IAM.GetServerCertificate: instance GHC.Read.Read Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance GHC.Read.Read Network.AWS.IAM.GetServerCertificate.GetServerCertificateResponse
- Network.AWS.IAM.GetServerCertificate: instance GHC.Show.Show Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance GHC.Show.Show Network.AWS.IAM.GetServerCertificate.GetServerCertificateResponse
- Network.AWS.IAM.GetServerCertificate: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServerCertificate: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetServerCertificate.GetServerCertificate
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: data GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: data GetServiceLinkedRoleDeletionStatusResponse
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: getServiceLinkedRoleDeletionStatus :: Text -> GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: getServiceLinkedRoleDeletionStatusResponse :: Int -> DeletionTaskStatusType -> GetServiceLinkedRoleDeletionStatusResponse
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: gslrdsDeletionTaskId :: Lens' GetServiceLinkedRoleDeletionStatus Text
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: gslrdsrsReason :: Lens' GetServiceLinkedRoleDeletionStatusResponse (Maybe DeletionTaskFailureReasonType)
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: gslrdsrsResponseStatus :: Lens' GetServiceLinkedRoleDeletionStatusResponse Int
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: gslrdsrsStatus :: Lens' GetServiceLinkedRoleDeletionStatusResponse DeletionTaskStatusType
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Control.DeepSeq.NFData Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Control.DeepSeq.NFData Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Data.Data.Data Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Data.Data.Data Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Classes.Eq Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Classes.Eq Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Generics.Generic Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Generics.Generic Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Read.Read Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Read.Read Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Show.Show Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Show.Show Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
- Network.AWS.IAM.GetUser: data GetUser
- Network.AWS.IAM.GetUser: data GetUserResponse
- Network.AWS.IAM.GetUser: getUser :: GetUser
- Network.AWS.IAM.GetUser: getUserResponse :: Int -> User -> GetUserResponse
- Network.AWS.IAM.GetUser: guUserName :: Lens' GetUser (Maybe Text)
- Network.AWS.IAM.GetUser: gursResponseStatus :: Lens' GetUserResponse Int
- Network.AWS.IAM.GetUser: gursUser :: Lens' GetUserResponse User
- Network.AWS.IAM.GetUser: instance Control.DeepSeq.NFData Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance Control.DeepSeq.NFData Network.AWS.IAM.GetUser.GetUserResponse
- Network.AWS.IAM.GetUser: instance Data.Data.Data Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance Data.Data.Data Network.AWS.IAM.GetUser.GetUserResponse
- Network.AWS.IAM.GetUser: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance GHC.Classes.Eq Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance GHC.Classes.Eq Network.AWS.IAM.GetUser.GetUserResponse
- Network.AWS.IAM.GetUser: instance GHC.Generics.Generic Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance GHC.Generics.Generic Network.AWS.IAM.GetUser.GetUserResponse
- Network.AWS.IAM.GetUser: instance GHC.Read.Read Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance GHC.Read.Read Network.AWS.IAM.GetUser.GetUserResponse
- Network.AWS.IAM.GetUser: instance GHC.Show.Show Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance GHC.Show.Show Network.AWS.IAM.GetUser.GetUserResponse
- Network.AWS.IAM.GetUser: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUser: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetUser.GetUser
- Network.AWS.IAM.GetUserPolicy: data GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: data GetUserPolicyResponse
- Network.AWS.IAM.GetUserPolicy: getUserPolicy :: Text -> Text -> GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: getUserPolicyResponse :: Int -> Text -> Text -> Text -> GetUserPolicyResponse
- Network.AWS.IAM.GetUserPolicy: gupPolicyName :: Lens' GetUserPolicy Text
- Network.AWS.IAM.GetUserPolicy: gupUserName :: Lens' GetUserPolicy Text
- Network.AWS.IAM.GetUserPolicy: guprsPolicyDocument :: Lens' GetUserPolicyResponse Text
- Network.AWS.IAM.GetUserPolicy: guprsPolicyName :: Lens' GetUserPolicyResponse Text
- Network.AWS.IAM.GetUserPolicy: guprsResponseStatus :: Lens' GetUserPolicyResponse Int
- Network.AWS.IAM.GetUserPolicy: guprsUserName :: Lens' GetUserPolicyResponse Text
- Network.AWS.IAM.GetUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.GetUserPolicy.GetUserPolicyResponse
- Network.AWS.IAM.GetUserPolicy: instance Data.Data.Data Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance Data.Data.Data Network.AWS.IAM.GetUserPolicy.GetUserPolicyResponse
- Network.AWS.IAM.GetUserPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.GetUserPolicy.GetUserPolicyResponse
- Network.AWS.IAM.GetUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.GetUserPolicy.GetUserPolicyResponse
- Network.AWS.IAM.GetUserPolicy: instance GHC.Read.Read Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance GHC.Read.Read Network.AWS.IAM.GetUserPolicy.GetUserPolicyResponse
- Network.AWS.IAM.GetUserPolicy: instance GHC.Show.Show Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance GHC.Show.Show Network.AWS.IAM.GetUserPolicy.GetUserPolicyResponse
- Network.AWS.IAM.GetUserPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.GetUserPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.GetUserPolicy.GetUserPolicy
- Network.AWS.IAM.ListAccessKeys: data ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: data ListAccessKeysResponse
- Network.AWS.IAM.ListAccessKeys: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAccessKeys.ListAccessKeysResponse
- Network.AWS.IAM.ListAccessKeys: instance Data.Data.Data Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance Data.Data.Data Network.AWS.IAM.ListAccessKeys.ListAccessKeysResponse
- Network.AWS.IAM.ListAccessKeys: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance GHC.Classes.Eq Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance GHC.Classes.Eq Network.AWS.IAM.ListAccessKeys.ListAccessKeysResponse
- Network.AWS.IAM.ListAccessKeys: instance GHC.Generics.Generic Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance GHC.Generics.Generic Network.AWS.IAM.ListAccessKeys.ListAccessKeysResponse
- Network.AWS.IAM.ListAccessKeys: instance GHC.Read.Read Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance GHC.Read.Read Network.AWS.IAM.ListAccessKeys.ListAccessKeysResponse
- Network.AWS.IAM.ListAccessKeys: instance GHC.Show.Show Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance GHC.Show.Show Network.AWS.IAM.ListAccessKeys.ListAccessKeysResponse
- Network.AWS.IAM.ListAccessKeys: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListAccessKeys.ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: lakMarker :: Lens' ListAccessKeys (Maybe Text)
- Network.AWS.IAM.ListAccessKeys: lakMaxItems :: Lens' ListAccessKeys (Maybe Natural)
- Network.AWS.IAM.ListAccessKeys: lakUserName :: Lens' ListAccessKeys (Maybe Text)
- Network.AWS.IAM.ListAccessKeys: lakrsAccessKeyMetadata :: Lens' ListAccessKeysResponse [AccessKeyMetadata]
- Network.AWS.IAM.ListAccessKeys: lakrsIsTruncated :: Lens' ListAccessKeysResponse (Maybe Bool)
- Network.AWS.IAM.ListAccessKeys: lakrsMarker :: Lens' ListAccessKeysResponse (Maybe Text)
- Network.AWS.IAM.ListAccessKeys: lakrsResponseStatus :: Lens' ListAccessKeysResponse Int
- Network.AWS.IAM.ListAccessKeys: listAccessKeys :: ListAccessKeys
- Network.AWS.IAM.ListAccessKeys: listAccessKeysResponse :: Int -> ListAccessKeysResponse
- Network.AWS.IAM.ListAccountAliases: data ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: data ListAccountAliasesResponse
- Network.AWS.IAM.ListAccountAliases: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAccountAliases.ListAccountAliasesResponse
- Network.AWS.IAM.ListAccountAliases: instance Data.Data.Data Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance Data.Data.Data Network.AWS.IAM.ListAccountAliases.ListAccountAliasesResponse
- Network.AWS.IAM.ListAccountAliases: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance GHC.Classes.Eq Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance GHC.Classes.Eq Network.AWS.IAM.ListAccountAliases.ListAccountAliasesResponse
- Network.AWS.IAM.ListAccountAliases: instance GHC.Generics.Generic Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance GHC.Generics.Generic Network.AWS.IAM.ListAccountAliases.ListAccountAliasesResponse
- Network.AWS.IAM.ListAccountAliases: instance GHC.Read.Read Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance GHC.Read.Read Network.AWS.IAM.ListAccountAliases.ListAccountAliasesResponse
- Network.AWS.IAM.ListAccountAliases: instance GHC.Show.Show Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance GHC.Show.Show Network.AWS.IAM.ListAccountAliases.ListAccountAliasesResponse
- Network.AWS.IAM.ListAccountAliases: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListAccountAliases.ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: laaMarker :: Lens' ListAccountAliases (Maybe Text)
- Network.AWS.IAM.ListAccountAliases: laaMaxItems :: Lens' ListAccountAliases (Maybe Natural)
- Network.AWS.IAM.ListAccountAliases: laarsAccountAliases :: Lens' ListAccountAliasesResponse [Text]
- Network.AWS.IAM.ListAccountAliases: laarsIsTruncated :: Lens' ListAccountAliasesResponse (Maybe Bool)
- Network.AWS.IAM.ListAccountAliases: laarsMarker :: Lens' ListAccountAliasesResponse (Maybe Text)
- Network.AWS.IAM.ListAccountAliases: laarsResponseStatus :: Lens' ListAccountAliasesResponse Int
- Network.AWS.IAM.ListAccountAliases: listAccountAliases :: ListAccountAliases
- Network.AWS.IAM.ListAccountAliases: listAccountAliasesResponse :: Int -> ListAccountAliasesResponse
- Network.AWS.IAM.ListAttachedGroupPolicies: data ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: data ListAttachedGroupPoliciesResponse
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Data.Data.Data Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Data.Data.Data Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
- Network.AWS.IAM.ListAttachedGroupPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
- Network.AWS.IAM.ListAttachedGroupPolicies: instance GHC.Read.Read Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance GHC.Read.Read Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
- Network.AWS.IAM.ListAttachedGroupPolicies: instance GHC.Show.Show Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance GHC.Show.Show Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: lagpGroupName :: Lens' ListAttachedGroupPolicies Text
- Network.AWS.IAM.ListAttachedGroupPolicies: lagpMarker :: Lens' ListAttachedGroupPolicies (Maybe Text)
- Network.AWS.IAM.ListAttachedGroupPolicies: lagpMaxItems :: Lens' ListAttachedGroupPolicies (Maybe Natural)
- Network.AWS.IAM.ListAttachedGroupPolicies: lagpPathPrefix :: Lens' ListAttachedGroupPolicies (Maybe Text)
- Network.AWS.IAM.ListAttachedGroupPolicies: lagprsAttachedPolicies :: Lens' ListAttachedGroupPoliciesResponse [AttachedPolicy]
- Network.AWS.IAM.ListAttachedGroupPolicies: lagprsIsTruncated :: Lens' ListAttachedGroupPoliciesResponse (Maybe Bool)
- Network.AWS.IAM.ListAttachedGroupPolicies: lagprsMarker :: Lens' ListAttachedGroupPoliciesResponse (Maybe Text)
- Network.AWS.IAM.ListAttachedGroupPolicies: lagprsResponseStatus :: Lens' ListAttachedGroupPoliciesResponse Int
- Network.AWS.IAM.ListAttachedGroupPolicies: listAttachedGroupPolicies :: Text -> ListAttachedGroupPolicies
- Network.AWS.IAM.ListAttachedGroupPolicies: listAttachedGroupPoliciesResponse :: Int -> ListAttachedGroupPoliciesResponse
- Network.AWS.IAM.ListAttachedRolePolicies: data ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: data ListAttachedRolePoliciesResponse
- Network.AWS.IAM.ListAttachedRolePolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
- Network.AWS.IAM.ListAttachedRolePolicies: instance Data.Data.Data Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance Data.Data.Data Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
- Network.AWS.IAM.ListAttachedRolePolicies: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
- Network.AWS.IAM.ListAttachedRolePolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
- Network.AWS.IAM.ListAttachedRolePolicies: instance GHC.Read.Read Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance GHC.Read.Read Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
- Network.AWS.IAM.ListAttachedRolePolicies: instance GHC.Show.Show Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance GHC.Show.Show Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
- Network.AWS.IAM.ListAttachedRolePolicies: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: larpMarker :: Lens' ListAttachedRolePolicies (Maybe Text)
- Network.AWS.IAM.ListAttachedRolePolicies: larpMaxItems :: Lens' ListAttachedRolePolicies (Maybe Natural)
- Network.AWS.IAM.ListAttachedRolePolicies: larpPathPrefix :: Lens' ListAttachedRolePolicies (Maybe Text)
- Network.AWS.IAM.ListAttachedRolePolicies: larpRoleName :: Lens' ListAttachedRolePolicies Text
- Network.AWS.IAM.ListAttachedRolePolicies: larprsAttachedPolicies :: Lens' ListAttachedRolePoliciesResponse [AttachedPolicy]
- Network.AWS.IAM.ListAttachedRolePolicies: larprsIsTruncated :: Lens' ListAttachedRolePoliciesResponse (Maybe Bool)
- Network.AWS.IAM.ListAttachedRolePolicies: larprsMarker :: Lens' ListAttachedRolePoliciesResponse (Maybe Text)
- Network.AWS.IAM.ListAttachedRolePolicies: larprsResponseStatus :: Lens' ListAttachedRolePoliciesResponse Int
- Network.AWS.IAM.ListAttachedRolePolicies: listAttachedRolePolicies :: Text -> ListAttachedRolePolicies
- Network.AWS.IAM.ListAttachedRolePolicies: listAttachedRolePoliciesResponse :: Int -> ListAttachedRolePoliciesResponse
- Network.AWS.IAM.ListAttachedUserPolicies: data ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: data ListAttachedUserPoliciesResponse
- Network.AWS.IAM.ListAttachedUserPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
- Network.AWS.IAM.ListAttachedUserPolicies: instance Data.Data.Data Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance Data.Data.Data Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
- Network.AWS.IAM.ListAttachedUserPolicies: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
- Network.AWS.IAM.ListAttachedUserPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
- Network.AWS.IAM.ListAttachedUserPolicies: instance GHC.Read.Read Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance GHC.Read.Read Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
- Network.AWS.IAM.ListAttachedUserPolicies: instance GHC.Show.Show Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance GHC.Show.Show Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
- Network.AWS.IAM.ListAttachedUserPolicies: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: laupMarker :: Lens' ListAttachedUserPolicies (Maybe Text)
- Network.AWS.IAM.ListAttachedUserPolicies: laupMaxItems :: Lens' ListAttachedUserPolicies (Maybe Natural)
- Network.AWS.IAM.ListAttachedUserPolicies: laupPathPrefix :: Lens' ListAttachedUserPolicies (Maybe Text)
- Network.AWS.IAM.ListAttachedUserPolicies: laupUserName :: Lens' ListAttachedUserPolicies Text
- Network.AWS.IAM.ListAttachedUserPolicies: lauprsAttachedPolicies :: Lens' ListAttachedUserPoliciesResponse [AttachedPolicy]
- Network.AWS.IAM.ListAttachedUserPolicies: lauprsIsTruncated :: Lens' ListAttachedUserPoliciesResponse (Maybe Bool)
- Network.AWS.IAM.ListAttachedUserPolicies: lauprsMarker :: Lens' ListAttachedUserPoliciesResponse (Maybe Text)
- Network.AWS.IAM.ListAttachedUserPolicies: lauprsResponseStatus :: Lens' ListAttachedUserPoliciesResponse Int
- Network.AWS.IAM.ListAttachedUserPolicies: listAttachedUserPolicies :: Text -> ListAttachedUserPolicies
- Network.AWS.IAM.ListAttachedUserPolicies: listAttachedUserPoliciesResponse :: Int -> ListAttachedUserPoliciesResponse
- Network.AWS.IAM.ListEntitiesForPolicy: data ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: data ListEntitiesForPolicyResponse
- Network.AWS.IAM.ListEntitiesForPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
- Network.AWS.IAM.ListEntitiesForPolicy: instance Data.Data.Data Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance Data.Data.Data Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
- Network.AWS.IAM.ListEntitiesForPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance GHC.Classes.Eq Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance GHC.Classes.Eq Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
- Network.AWS.IAM.ListEntitiesForPolicy: instance GHC.Generics.Generic Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance GHC.Generics.Generic Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
- Network.AWS.IAM.ListEntitiesForPolicy: instance GHC.Read.Read Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance GHC.Read.Read Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
- Network.AWS.IAM.ListEntitiesForPolicy: instance GHC.Show.Show Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance GHC.Show.Show Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
- Network.AWS.IAM.ListEntitiesForPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: lefpEntityFilter :: Lens' ListEntitiesForPolicy (Maybe EntityType)
- Network.AWS.IAM.ListEntitiesForPolicy: lefpMarker :: Lens' ListEntitiesForPolicy (Maybe Text)
- Network.AWS.IAM.ListEntitiesForPolicy: lefpMaxItems :: Lens' ListEntitiesForPolicy (Maybe Natural)
- Network.AWS.IAM.ListEntitiesForPolicy: lefpPathPrefix :: Lens' ListEntitiesForPolicy (Maybe Text)
- Network.AWS.IAM.ListEntitiesForPolicy: lefpPolicyARN :: Lens' ListEntitiesForPolicy Text
- Network.AWS.IAM.ListEntitiesForPolicy: lefprsIsTruncated :: Lens' ListEntitiesForPolicyResponse (Maybe Bool)
- Network.AWS.IAM.ListEntitiesForPolicy: lefprsMarker :: Lens' ListEntitiesForPolicyResponse (Maybe Text)
- Network.AWS.IAM.ListEntitiesForPolicy: lefprsPolicyGroups :: Lens' ListEntitiesForPolicyResponse [PolicyGroup]
- Network.AWS.IAM.ListEntitiesForPolicy: lefprsPolicyRoles :: Lens' ListEntitiesForPolicyResponse [PolicyRole]
- Network.AWS.IAM.ListEntitiesForPolicy: lefprsPolicyUsers :: Lens' ListEntitiesForPolicyResponse [PolicyUser]
- Network.AWS.IAM.ListEntitiesForPolicy: lefprsResponseStatus :: Lens' ListEntitiesForPolicyResponse Int
- Network.AWS.IAM.ListEntitiesForPolicy: listEntitiesForPolicy :: Text -> ListEntitiesForPolicy
- Network.AWS.IAM.ListEntitiesForPolicy: listEntitiesForPolicyResponse :: Int -> ListEntitiesForPolicyResponse
- Network.AWS.IAM.ListGroupPolicies: data ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: data ListGroupPoliciesResponse
- Network.AWS.IAM.ListGroupPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListGroupPolicies.ListGroupPoliciesResponse
- Network.AWS.IAM.ListGroupPolicies: instance Data.Data.Data Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance Data.Data.Data Network.AWS.IAM.ListGroupPolicies.ListGroupPoliciesResponse
- Network.AWS.IAM.ListGroupPolicies: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListGroupPolicies.ListGroupPoliciesResponse
- Network.AWS.IAM.ListGroupPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListGroupPolicies.ListGroupPoliciesResponse
- Network.AWS.IAM.ListGroupPolicies: instance GHC.Read.Read Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance GHC.Read.Read Network.AWS.IAM.ListGroupPolicies.ListGroupPoliciesResponse
- Network.AWS.IAM.ListGroupPolicies: instance GHC.Show.Show Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance GHC.Show.Show Network.AWS.IAM.ListGroupPolicies.ListGroupPoliciesResponse
- Network.AWS.IAM.ListGroupPolicies: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListGroupPolicies.ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: lgpGroupName :: Lens' ListGroupPolicies Text
- Network.AWS.IAM.ListGroupPolicies: lgpMarker :: Lens' ListGroupPolicies (Maybe Text)
- Network.AWS.IAM.ListGroupPolicies: lgpMaxItems :: Lens' ListGroupPolicies (Maybe Natural)
- Network.AWS.IAM.ListGroupPolicies: lgprsIsTruncated :: Lens' ListGroupPoliciesResponse (Maybe Bool)
- Network.AWS.IAM.ListGroupPolicies: lgprsMarker :: Lens' ListGroupPoliciesResponse (Maybe Text)
- Network.AWS.IAM.ListGroupPolicies: lgprsPolicyNames :: Lens' ListGroupPoliciesResponse [Text]
- Network.AWS.IAM.ListGroupPolicies: lgprsResponseStatus :: Lens' ListGroupPoliciesResponse Int
- Network.AWS.IAM.ListGroupPolicies: listGroupPolicies :: Text -> ListGroupPolicies
- Network.AWS.IAM.ListGroupPolicies: listGroupPoliciesResponse :: Int -> ListGroupPoliciesResponse
- Network.AWS.IAM.ListGroups: data ListGroups
- Network.AWS.IAM.ListGroups: data ListGroupsResponse
- Network.AWS.IAM.ListGroups: instance Control.DeepSeq.NFData Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance Control.DeepSeq.NFData Network.AWS.IAM.ListGroups.ListGroupsResponse
- Network.AWS.IAM.ListGroups: instance Data.Data.Data Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance Data.Data.Data Network.AWS.IAM.ListGroups.ListGroupsResponse
- Network.AWS.IAM.ListGroups: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance GHC.Classes.Eq Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance GHC.Classes.Eq Network.AWS.IAM.ListGroups.ListGroupsResponse
- Network.AWS.IAM.ListGroups: instance GHC.Generics.Generic Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance GHC.Generics.Generic Network.AWS.IAM.ListGroups.ListGroupsResponse
- Network.AWS.IAM.ListGroups: instance GHC.Read.Read Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance GHC.Read.Read Network.AWS.IAM.ListGroups.ListGroupsResponse
- Network.AWS.IAM.ListGroups: instance GHC.Show.Show Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance GHC.Show.Show Network.AWS.IAM.ListGroups.ListGroupsResponse
- Network.AWS.IAM.ListGroups: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListGroups.ListGroups
- Network.AWS.IAM.ListGroups: lgMarker :: Lens' ListGroups (Maybe Text)
- Network.AWS.IAM.ListGroups: lgMaxItems :: Lens' ListGroups (Maybe Natural)
- Network.AWS.IAM.ListGroups: lgPathPrefix :: Lens' ListGroups (Maybe Text)
- Network.AWS.IAM.ListGroups: lgrsGroups :: Lens' ListGroupsResponse [Group]
- Network.AWS.IAM.ListGroups: lgrsIsTruncated :: Lens' ListGroupsResponse (Maybe Bool)
- Network.AWS.IAM.ListGroups: lgrsMarker :: Lens' ListGroupsResponse (Maybe Text)
- Network.AWS.IAM.ListGroups: lgrsResponseStatus :: Lens' ListGroupsResponse Int
- Network.AWS.IAM.ListGroups: listGroups :: ListGroups
- Network.AWS.IAM.ListGroups: listGroupsResponse :: Int -> ListGroupsResponse
- Network.AWS.IAM.ListGroupsForUser: data ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: data ListGroupsForUserResponse
- Network.AWS.IAM.ListGroupsForUser: instance Control.DeepSeq.NFData Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance Control.DeepSeq.NFData Network.AWS.IAM.ListGroupsForUser.ListGroupsForUserResponse
- Network.AWS.IAM.ListGroupsForUser: instance Data.Data.Data Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance Data.Data.Data Network.AWS.IAM.ListGroupsForUser.ListGroupsForUserResponse
- Network.AWS.IAM.ListGroupsForUser: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance GHC.Classes.Eq Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance GHC.Classes.Eq Network.AWS.IAM.ListGroupsForUser.ListGroupsForUserResponse
- Network.AWS.IAM.ListGroupsForUser: instance GHC.Generics.Generic Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance GHC.Generics.Generic Network.AWS.IAM.ListGroupsForUser.ListGroupsForUserResponse
- Network.AWS.IAM.ListGroupsForUser: instance GHC.Read.Read Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance GHC.Read.Read Network.AWS.IAM.ListGroupsForUser.ListGroupsForUserResponse
- Network.AWS.IAM.ListGroupsForUser: instance GHC.Show.Show Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance GHC.Show.Show Network.AWS.IAM.ListGroupsForUser.ListGroupsForUserResponse
- Network.AWS.IAM.ListGroupsForUser: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListGroupsForUser.ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: lgfuMarker :: Lens' ListGroupsForUser (Maybe Text)
- Network.AWS.IAM.ListGroupsForUser: lgfuMaxItems :: Lens' ListGroupsForUser (Maybe Natural)
- Network.AWS.IAM.ListGroupsForUser: lgfuUserName :: Lens' ListGroupsForUser Text
- Network.AWS.IAM.ListGroupsForUser: lgfursGroups :: Lens' ListGroupsForUserResponse [Group]
- Network.AWS.IAM.ListGroupsForUser: lgfursIsTruncated :: Lens' ListGroupsForUserResponse (Maybe Bool)
- Network.AWS.IAM.ListGroupsForUser: lgfursMarker :: Lens' ListGroupsForUserResponse (Maybe Text)
- Network.AWS.IAM.ListGroupsForUser: lgfursResponseStatus :: Lens' ListGroupsForUserResponse Int
- Network.AWS.IAM.ListGroupsForUser: listGroupsForUser :: Text -> ListGroupsForUser
- Network.AWS.IAM.ListGroupsForUser: listGroupsForUserResponse :: Int -> ListGroupsForUserResponse
- Network.AWS.IAM.ListInstanceProfiles: data ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: data ListInstanceProfilesResponse
- Network.AWS.IAM.ListInstanceProfiles: instance Control.DeepSeq.NFData Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance Control.DeepSeq.NFData Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
- Network.AWS.IAM.ListInstanceProfiles: instance Data.Data.Data Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance Data.Data.Data Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
- Network.AWS.IAM.ListInstanceProfiles: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance GHC.Classes.Eq Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance GHC.Classes.Eq Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
- Network.AWS.IAM.ListInstanceProfiles: instance GHC.Generics.Generic Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance GHC.Generics.Generic Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
- Network.AWS.IAM.ListInstanceProfiles: instance GHC.Read.Read Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance GHC.Read.Read Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
- Network.AWS.IAM.ListInstanceProfiles: instance GHC.Show.Show Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance GHC.Show.Show Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
- Network.AWS.IAM.ListInstanceProfiles: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListInstanceProfiles.ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: lipMarker :: Lens' ListInstanceProfiles (Maybe Text)
- Network.AWS.IAM.ListInstanceProfiles: lipMaxItems :: Lens' ListInstanceProfiles (Maybe Natural)
- Network.AWS.IAM.ListInstanceProfiles: lipPathPrefix :: Lens' ListInstanceProfiles (Maybe Text)
- Network.AWS.IAM.ListInstanceProfiles: liprsInstanceProfiles :: Lens' ListInstanceProfilesResponse [InstanceProfile]
- Network.AWS.IAM.ListInstanceProfiles: liprsIsTruncated :: Lens' ListInstanceProfilesResponse (Maybe Bool)
- Network.AWS.IAM.ListInstanceProfiles: liprsMarker :: Lens' ListInstanceProfilesResponse (Maybe Text)
- Network.AWS.IAM.ListInstanceProfiles: liprsResponseStatus :: Lens' ListInstanceProfilesResponse Int
- Network.AWS.IAM.ListInstanceProfiles: listInstanceProfiles :: ListInstanceProfiles
- Network.AWS.IAM.ListInstanceProfiles: listInstanceProfilesResponse :: Int -> ListInstanceProfilesResponse
- Network.AWS.IAM.ListInstanceProfilesForRole: data ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: data ListInstanceProfilesForRoleResponse
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Control.DeepSeq.NFData Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Control.DeepSeq.NFData Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Data.Data.Data Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Data.Data.Data Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance GHC.Classes.Eq Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance GHC.Classes.Eq Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
- Network.AWS.IAM.ListInstanceProfilesForRole: instance GHC.Generics.Generic Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance GHC.Generics.Generic Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
- Network.AWS.IAM.ListInstanceProfilesForRole: instance GHC.Read.Read Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance GHC.Read.Read Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
- Network.AWS.IAM.ListInstanceProfilesForRole: instance GHC.Show.Show Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance GHC.Show.Show Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: lipfrMarker :: Lens' ListInstanceProfilesForRole (Maybe Text)
- Network.AWS.IAM.ListInstanceProfilesForRole: lipfrMaxItems :: Lens' ListInstanceProfilesForRole (Maybe Natural)
- Network.AWS.IAM.ListInstanceProfilesForRole: lipfrRoleName :: Lens' ListInstanceProfilesForRole Text
- Network.AWS.IAM.ListInstanceProfilesForRole: lipfrrsInstanceProfiles :: Lens' ListInstanceProfilesForRoleResponse [InstanceProfile]
- Network.AWS.IAM.ListInstanceProfilesForRole: lipfrrsIsTruncated :: Lens' ListInstanceProfilesForRoleResponse (Maybe Bool)
- Network.AWS.IAM.ListInstanceProfilesForRole: lipfrrsMarker :: Lens' ListInstanceProfilesForRoleResponse (Maybe Text)
- Network.AWS.IAM.ListInstanceProfilesForRole: lipfrrsResponseStatus :: Lens' ListInstanceProfilesForRoleResponse Int
- Network.AWS.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRole :: Text -> ListInstanceProfilesForRole
- Network.AWS.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRoleResponse :: Int -> ListInstanceProfilesForRoleResponse
- Network.AWS.IAM.ListMFADevices: data ListMFADevices
- Network.AWS.IAM.ListMFADevices: data ListMFADevicesResponse
- Network.AWS.IAM.ListMFADevices: instance Control.DeepSeq.NFData Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance Control.DeepSeq.NFData Network.AWS.IAM.ListMFADevices.ListMFADevicesResponse
- Network.AWS.IAM.ListMFADevices: instance Data.Data.Data Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance Data.Data.Data Network.AWS.IAM.ListMFADevices.ListMFADevicesResponse
- Network.AWS.IAM.ListMFADevices: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance GHC.Classes.Eq Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance GHC.Classes.Eq Network.AWS.IAM.ListMFADevices.ListMFADevicesResponse
- Network.AWS.IAM.ListMFADevices: instance GHC.Generics.Generic Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance GHC.Generics.Generic Network.AWS.IAM.ListMFADevices.ListMFADevicesResponse
- Network.AWS.IAM.ListMFADevices: instance GHC.Read.Read Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance GHC.Read.Read Network.AWS.IAM.ListMFADevices.ListMFADevicesResponse
- Network.AWS.IAM.ListMFADevices: instance GHC.Show.Show Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance GHC.Show.Show Network.AWS.IAM.ListMFADevices.ListMFADevicesResponse
- Network.AWS.IAM.ListMFADevices: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListMFADevices.ListMFADevices
- Network.AWS.IAM.ListMFADevices: listMFADevices :: ListMFADevices
- Network.AWS.IAM.ListMFADevices: listMFADevicesResponse :: Int -> ListMFADevicesResponse
- Network.AWS.IAM.ListMFADevices: lmdMarker :: Lens' ListMFADevices (Maybe Text)
- Network.AWS.IAM.ListMFADevices: lmdMaxItems :: Lens' ListMFADevices (Maybe Natural)
- Network.AWS.IAM.ListMFADevices: lmdUserName :: Lens' ListMFADevices (Maybe Text)
- Network.AWS.IAM.ListMFADevices: lmdrsIsTruncated :: Lens' ListMFADevicesResponse (Maybe Bool)
- Network.AWS.IAM.ListMFADevices: lmdrsMFADevices :: Lens' ListMFADevicesResponse [MFADevice]
- Network.AWS.IAM.ListMFADevices: lmdrsMarker :: Lens' ListMFADevicesResponse (Maybe Text)
- Network.AWS.IAM.ListMFADevices: lmdrsResponseStatus :: Lens' ListMFADevicesResponse Int
- Network.AWS.IAM.ListOpenIdConnectProviders: data ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: data ListOpenIdConnectProvidersResponse
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Control.DeepSeq.NFData Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Control.DeepSeq.NFData Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProvidersResponse
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Data.Data.Data Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Data.Data.Data Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProvidersResponse
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance GHC.Classes.Eq Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance GHC.Classes.Eq Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProvidersResponse
- Network.AWS.IAM.ListOpenIdConnectProviders: instance GHC.Generics.Generic Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance GHC.Generics.Generic Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProvidersResponse
- Network.AWS.IAM.ListOpenIdConnectProviders: instance GHC.Read.Read Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance GHC.Read.Read Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProvidersResponse
- Network.AWS.IAM.ListOpenIdConnectProviders: instance GHC.Show.Show Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance GHC.Show.Show Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProvidersResponse
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListOpenIdConnectProviders.ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: listOpenIdConnectProviders :: ListOpenIdConnectProviders
- Network.AWS.IAM.ListOpenIdConnectProviders: listOpenIdConnectProvidersResponse :: Int -> ListOpenIdConnectProvidersResponse
- Network.AWS.IAM.ListOpenIdConnectProviders: loicprsOpenIdConnectProviderList :: Lens' ListOpenIdConnectProvidersResponse [OpenIdConnectProviderListEntry]
- Network.AWS.IAM.ListOpenIdConnectProviders: loicprsResponseStatus :: Lens' ListOpenIdConnectProvidersResponse Int
- Network.AWS.IAM.ListPolicies: data ListPolicies
- Network.AWS.IAM.ListPolicies: data ListPoliciesResponse
- Network.AWS.IAM.ListPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListPolicies.ListPoliciesResponse
- Network.AWS.IAM.ListPolicies: instance Data.Data.Data Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance Data.Data.Data Network.AWS.IAM.ListPolicies.ListPoliciesResponse
- Network.AWS.IAM.ListPolicies: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListPolicies.ListPoliciesResponse
- Network.AWS.IAM.ListPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListPolicies.ListPoliciesResponse
- Network.AWS.IAM.ListPolicies: instance GHC.Read.Read Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance GHC.Read.Read Network.AWS.IAM.ListPolicies.ListPoliciesResponse
- Network.AWS.IAM.ListPolicies: instance GHC.Show.Show Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance GHC.Show.Show Network.AWS.IAM.ListPolicies.ListPoliciesResponse
- Network.AWS.IAM.ListPolicies: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListPolicies.ListPolicies
- Network.AWS.IAM.ListPolicies: listPolicies :: ListPolicies
- Network.AWS.IAM.ListPolicies: listPoliciesResponse :: Int -> ListPoliciesResponse
- Network.AWS.IAM.ListPolicies: lpMarker :: Lens' ListPolicies (Maybe Text)
- Network.AWS.IAM.ListPolicies: lpMaxItems :: Lens' ListPolicies (Maybe Natural)
- Network.AWS.IAM.ListPolicies: lpOnlyAttached :: Lens' ListPolicies (Maybe Bool)
- Network.AWS.IAM.ListPolicies: lpPathPrefix :: Lens' ListPolicies (Maybe Text)
- Network.AWS.IAM.ListPolicies: lpScope :: Lens' ListPolicies (Maybe PolicyScopeType)
- Network.AWS.IAM.ListPolicies: lprsIsTruncated :: Lens' ListPoliciesResponse (Maybe Bool)
- Network.AWS.IAM.ListPolicies: lprsMarker :: Lens' ListPoliciesResponse (Maybe Text)
- Network.AWS.IAM.ListPolicies: lprsPolicies :: Lens' ListPoliciesResponse [Policy]
- Network.AWS.IAM.ListPolicies: lprsResponseStatus :: Lens' ListPoliciesResponse Int
- Network.AWS.IAM.ListPolicyVersions: data ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: data ListPolicyVersionsResponse
- Network.AWS.IAM.ListPolicyVersions: instance Control.DeepSeq.NFData Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance Control.DeepSeq.NFData Network.AWS.IAM.ListPolicyVersions.ListPolicyVersionsResponse
- Network.AWS.IAM.ListPolicyVersions: instance Data.Data.Data Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance Data.Data.Data Network.AWS.IAM.ListPolicyVersions.ListPolicyVersionsResponse
- Network.AWS.IAM.ListPolicyVersions: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance GHC.Classes.Eq Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance GHC.Classes.Eq Network.AWS.IAM.ListPolicyVersions.ListPolicyVersionsResponse
- Network.AWS.IAM.ListPolicyVersions: instance GHC.Generics.Generic Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance GHC.Generics.Generic Network.AWS.IAM.ListPolicyVersions.ListPolicyVersionsResponse
- Network.AWS.IAM.ListPolicyVersions: instance GHC.Read.Read Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance GHC.Read.Read Network.AWS.IAM.ListPolicyVersions.ListPolicyVersionsResponse
- Network.AWS.IAM.ListPolicyVersions: instance GHC.Show.Show Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance GHC.Show.Show Network.AWS.IAM.ListPolicyVersions.ListPolicyVersionsResponse
- Network.AWS.IAM.ListPolicyVersions: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: listPolicyVersions :: Text -> ListPolicyVersions
- Network.AWS.IAM.ListPolicyVersions: listPolicyVersionsResponse :: Int -> ListPolicyVersionsResponse
- Network.AWS.IAM.ListPolicyVersions: lpvMarker :: Lens' ListPolicyVersions (Maybe Text)
- Network.AWS.IAM.ListPolicyVersions: lpvMaxItems :: Lens' ListPolicyVersions (Maybe Natural)
- Network.AWS.IAM.ListPolicyVersions: lpvPolicyARN :: Lens' ListPolicyVersions Text
- Network.AWS.IAM.ListPolicyVersions: lpvrsIsTruncated :: Lens' ListPolicyVersionsResponse (Maybe Bool)
- Network.AWS.IAM.ListPolicyVersions: lpvrsMarker :: Lens' ListPolicyVersionsResponse (Maybe Text)
- Network.AWS.IAM.ListPolicyVersions: lpvrsResponseStatus :: Lens' ListPolicyVersionsResponse Int
- Network.AWS.IAM.ListPolicyVersions: lpvrsVersions :: Lens' ListPolicyVersionsResponse [PolicyVersion]
- Network.AWS.IAM.ListRolePolicies: data ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: data ListRolePoliciesResponse
- Network.AWS.IAM.ListRolePolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListRolePolicies.ListRolePoliciesResponse
- Network.AWS.IAM.ListRolePolicies: instance Data.Data.Data Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance Data.Data.Data Network.AWS.IAM.ListRolePolicies.ListRolePoliciesResponse
- Network.AWS.IAM.ListRolePolicies: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListRolePolicies.ListRolePoliciesResponse
- Network.AWS.IAM.ListRolePolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListRolePolicies.ListRolePoliciesResponse
- Network.AWS.IAM.ListRolePolicies: instance GHC.Read.Read Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance GHC.Read.Read Network.AWS.IAM.ListRolePolicies.ListRolePoliciesResponse
- Network.AWS.IAM.ListRolePolicies: instance GHC.Show.Show Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance GHC.Show.Show Network.AWS.IAM.ListRolePolicies.ListRolePoliciesResponse
- Network.AWS.IAM.ListRolePolicies: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListRolePolicies.ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: listRolePolicies :: Text -> ListRolePolicies
- Network.AWS.IAM.ListRolePolicies: listRolePoliciesResponse :: Int -> ListRolePoliciesResponse
- Network.AWS.IAM.ListRolePolicies: lrpMarker :: Lens' ListRolePolicies (Maybe Text)
- Network.AWS.IAM.ListRolePolicies: lrpMaxItems :: Lens' ListRolePolicies (Maybe Natural)
- Network.AWS.IAM.ListRolePolicies: lrpRoleName :: Lens' ListRolePolicies Text
- Network.AWS.IAM.ListRolePolicies: lrprsIsTruncated :: Lens' ListRolePoliciesResponse (Maybe Bool)
- Network.AWS.IAM.ListRolePolicies: lrprsMarker :: Lens' ListRolePoliciesResponse (Maybe Text)
- Network.AWS.IAM.ListRolePolicies: lrprsPolicyNames :: Lens' ListRolePoliciesResponse [Text]
- Network.AWS.IAM.ListRolePolicies: lrprsResponseStatus :: Lens' ListRolePoliciesResponse Int
- Network.AWS.IAM.ListRoles: data ListRoles
- Network.AWS.IAM.ListRoles: data ListRolesResponse
- Network.AWS.IAM.ListRoles: instance Control.DeepSeq.NFData Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance Control.DeepSeq.NFData Network.AWS.IAM.ListRoles.ListRolesResponse
- Network.AWS.IAM.ListRoles: instance Data.Data.Data Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance Data.Data.Data Network.AWS.IAM.ListRoles.ListRolesResponse
- Network.AWS.IAM.ListRoles: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance GHC.Classes.Eq Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance GHC.Classes.Eq Network.AWS.IAM.ListRoles.ListRolesResponse
- Network.AWS.IAM.ListRoles: instance GHC.Generics.Generic Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance GHC.Generics.Generic Network.AWS.IAM.ListRoles.ListRolesResponse
- Network.AWS.IAM.ListRoles: instance GHC.Read.Read Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance GHC.Read.Read Network.AWS.IAM.ListRoles.ListRolesResponse
- Network.AWS.IAM.ListRoles: instance GHC.Show.Show Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance GHC.Show.Show Network.AWS.IAM.ListRoles.ListRolesResponse
- Network.AWS.IAM.ListRoles: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListRoles.ListRoles
- Network.AWS.IAM.ListRoles: listRoles :: ListRoles
- Network.AWS.IAM.ListRoles: listRolesResponse :: Int -> ListRolesResponse
- Network.AWS.IAM.ListRoles: lrMarker :: Lens' ListRoles (Maybe Text)
- Network.AWS.IAM.ListRoles: lrMaxItems :: Lens' ListRoles (Maybe Natural)
- Network.AWS.IAM.ListRoles: lrPathPrefix :: Lens' ListRoles (Maybe Text)
- Network.AWS.IAM.ListRoles: lrrsIsTruncated :: Lens' ListRolesResponse (Maybe Bool)
- Network.AWS.IAM.ListRoles: lrrsMarker :: Lens' ListRolesResponse (Maybe Text)
- Network.AWS.IAM.ListRoles: lrrsResponseStatus :: Lens' ListRolesResponse Int
- Network.AWS.IAM.ListRoles: lrrsRoles :: Lens' ListRolesResponse [Role]
- Network.AWS.IAM.ListSAMLProviders: data ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: data ListSAMLProvidersResponse
- Network.AWS.IAM.ListSAMLProviders: instance Control.DeepSeq.NFData Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance Control.DeepSeq.NFData Network.AWS.IAM.ListSAMLProviders.ListSAMLProvidersResponse
- Network.AWS.IAM.ListSAMLProviders: instance Data.Data.Data Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance Data.Data.Data Network.AWS.IAM.ListSAMLProviders.ListSAMLProvidersResponse
- Network.AWS.IAM.ListSAMLProviders: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance GHC.Classes.Eq Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance GHC.Classes.Eq Network.AWS.IAM.ListSAMLProviders.ListSAMLProvidersResponse
- Network.AWS.IAM.ListSAMLProviders: instance GHC.Generics.Generic Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance GHC.Generics.Generic Network.AWS.IAM.ListSAMLProviders.ListSAMLProvidersResponse
- Network.AWS.IAM.ListSAMLProviders: instance GHC.Read.Read Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance GHC.Read.Read Network.AWS.IAM.ListSAMLProviders.ListSAMLProvidersResponse
- Network.AWS.IAM.ListSAMLProviders: instance GHC.Show.Show Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance GHC.Show.Show Network.AWS.IAM.ListSAMLProviders.ListSAMLProvidersResponse
- Network.AWS.IAM.ListSAMLProviders: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListSAMLProviders.ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: listSAMLProviders :: ListSAMLProviders
- Network.AWS.IAM.ListSAMLProviders: listSAMLProvidersResponse :: Int -> ListSAMLProvidersResponse
- Network.AWS.IAM.ListSAMLProviders: lsamlprsResponseStatus :: Lens' ListSAMLProvidersResponse Int
- Network.AWS.IAM.ListSAMLProviders: lsamlprsSAMLProviderList :: Lens' ListSAMLProvidersResponse [SAMLProviderListEntry]
- Network.AWS.IAM.ListSSHPublicKeys: data ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: data ListSSHPublicKeysResponse
- Network.AWS.IAM.ListSSHPublicKeys: instance Control.DeepSeq.NFData Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance Control.DeepSeq.NFData Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
- Network.AWS.IAM.ListSSHPublicKeys: instance Data.Data.Data Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance Data.Data.Data Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
- Network.AWS.IAM.ListSSHPublicKeys: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance GHC.Classes.Eq Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance GHC.Classes.Eq Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
- Network.AWS.IAM.ListSSHPublicKeys: instance GHC.Generics.Generic Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance GHC.Generics.Generic Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
- Network.AWS.IAM.ListSSHPublicKeys: instance GHC.Read.Read Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance GHC.Read.Read Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
- Network.AWS.IAM.ListSSHPublicKeys: instance GHC.Show.Show Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance GHC.Show.Show Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
- Network.AWS.IAM.ListSSHPublicKeys: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListSSHPublicKeys.ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: listSSHPublicKeys :: ListSSHPublicKeys
- Network.AWS.IAM.ListSSHPublicKeys: listSSHPublicKeysResponse :: Int -> ListSSHPublicKeysResponse
- Network.AWS.IAM.ListSSHPublicKeys: lspkMarker :: Lens' ListSSHPublicKeys (Maybe Text)
- Network.AWS.IAM.ListSSHPublicKeys: lspkMaxItems :: Lens' ListSSHPublicKeys (Maybe Natural)
- Network.AWS.IAM.ListSSHPublicKeys: lspkUserName :: Lens' ListSSHPublicKeys (Maybe Text)
- Network.AWS.IAM.ListSSHPublicKeys: lspkrsIsTruncated :: Lens' ListSSHPublicKeysResponse (Maybe Bool)
- Network.AWS.IAM.ListSSHPublicKeys: lspkrsMarker :: Lens' ListSSHPublicKeysResponse (Maybe Text)
- Network.AWS.IAM.ListSSHPublicKeys: lspkrsResponseStatus :: Lens' ListSSHPublicKeysResponse Int
- Network.AWS.IAM.ListSSHPublicKeys: lspkrsSSHPublicKeys :: Lens' ListSSHPublicKeysResponse [SSHPublicKeyMetadata]
- Network.AWS.IAM.ListServerCertificates: data ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: data ListServerCertificatesResponse
- Network.AWS.IAM.ListServerCertificates: instance Control.DeepSeq.NFData Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance Control.DeepSeq.NFData Network.AWS.IAM.ListServerCertificates.ListServerCertificatesResponse
- Network.AWS.IAM.ListServerCertificates: instance Data.Data.Data Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance Data.Data.Data Network.AWS.IAM.ListServerCertificates.ListServerCertificatesResponse
- Network.AWS.IAM.ListServerCertificates: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance GHC.Classes.Eq Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance GHC.Classes.Eq Network.AWS.IAM.ListServerCertificates.ListServerCertificatesResponse
- Network.AWS.IAM.ListServerCertificates: instance GHC.Generics.Generic Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance GHC.Generics.Generic Network.AWS.IAM.ListServerCertificates.ListServerCertificatesResponse
- Network.AWS.IAM.ListServerCertificates: instance GHC.Read.Read Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance GHC.Read.Read Network.AWS.IAM.ListServerCertificates.ListServerCertificatesResponse
- Network.AWS.IAM.ListServerCertificates: instance GHC.Show.Show Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance GHC.Show.Show Network.AWS.IAM.ListServerCertificates.ListServerCertificatesResponse
- Network.AWS.IAM.ListServerCertificates: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListServerCertificates.ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: listServerCertificates :: ListServerCertificates
- Network.AWS.IAM.ListServerCertificates: listServerCertificatesResponse :: Int -> ListServerCertificatesResponse
- Network.AWS.IAM.ListServerCertificates: lscMarker :: Lens' ListServerCertificates (Maybe Text)
- Network.AWS.IAM.ListServerCertificates: lscMaxItems :: Lens' ListServerCertificates (Maybe Natural)
- Network.AWS.IAM.ListServerCertificates: lscPathPrefix :: Lens' ListServerCertificates (Maybe Text)
- Network.AWS.IAM.ListServerCertificates: lscrsIsTruncated :: Lens' ListServerCertificatesResponse (Maybe Bool)
- Network.AWS.IAM.ListServerCertificates: lscrsMarker :: Lens' ListServerCertificatesResponse (Maybe Text)
- Network.AWS.IAM.ListServerCertificates: lscrsResponseStatus :: Lens' ListServerCertificatesResponse Int
- Network.AWS.IAM.ListServerCertificates: lscrsServerCertificateMetadataList :: Lens' ListServerCertificatesResponse [ServerCertificateMetadata]
- Network.AWS.IAM.ListServiceSpecificCredentials: data ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: data ListServiceSpecificCredentialsResponse
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Control.DeepSeq.NFData Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Control.DeepSeq.NFData Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Data.Data.Data Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Data.Data.Data Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance GHC.Classes.Eq Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance GHC.Classes.Eq Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
- Network.AWS.IAM.ListServiceSpecificCredentials: instance GHC.Generics.Generic Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance GHC.Generics.Generic Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
- Network.AWS.IAM.ListServiceSpecificCredentials: instance GHC.Read.Read Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance GHC.Read.Read Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
- Network.AWS.IAM.ListServiceSpecificCredentials: instance GHC.Show.Show Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance GHC.Show.Show Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: listServiceSpecificCredentials :: ListServiceSpecificCredentials
- Network.AWS.IAM.ListServiceSpecificCredentials: listServiceSpecificCredentialsResponse :: Int -> ListServiceSpecificCredentialsResponse
- Network.AWS.IAM.ListServiceSpecificCredentials: lsscServiceName :: Lens' ListServiceSpecificCredentials (Maybe Text)
- Network.AWS.IAM.ListServiceSpecificCredentials: lsscUserName :: Lens' ListServiceSpecificCredentials (Maybe Text)
- Network.AWS.IAM.ListServiceSpecificCredentials: lsscrsResponseStatus :: Lens' ListServiceSpecificCredentialsResponse Int
- Network.AWS.IAM.ListServiceSpecificCredentials: lsscrsServiceSpecificCredentials :: Lens' ListServiceSpecificCredentialsResponse [ServiceSpecificCredentialMetadata]
- Network.AWS.IAM.ListSigningCertificates: data ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: data ListSigningCertificatesResponse
- Network.AWS.IAM.ListSigningCertificates: instance Control.DeepSeq.NFData Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance Control.DeepSeq.NFData Network.AWS.IAM.ListSigningCertificates.ListSigningCertificatesResponse
- Network.AWS.IAM.ListSigningCertificates: instance Data.Data.Data Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance Data.Data.Data Network.AWS.IAM.ListSigningCertificates.ListSigningCertificatesResponse
- Network.AWS.IAM.ListSigningCertificates: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance GHC.Classes.Eq Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance GHC.Classes.Eq Network.AWS.IAM.ListSigningCertificates.ListSigningCertificatesResponse
- Network.AWS.IAM.ListSigningCertificates: instance GHC.Generics.Generic Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance GHC.Generics.Generic Network.AWS.IAM.ListSigningCertificates.ListSigningCertificatesResponse
- Network.AWS.IAM.ListSigningCertificates: instance GHC.Read.Read Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance GHC.Read.Read Network.AWS.IAM.ListSigningCertificates.ListSigningCertificatesResponse
- Network.AWS.IAM.ListSigningCertificates: instance GHC.Show.Show Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance GHC.Show.Show Network.AWS.IAM.ListSigningCertificates.ListSigningCertificatesResponse
- Network.AWS.IAM.ListSigningCertificates: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListSigningCertificates.ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: lMarker :: Lens' ListSigningCertificates (Maybe Text)
- Network.AWS.IAM.ListSigningCertificates: lMaxItems :: Lens' ListSigningCertificates (Maybe Natural)
- Network.AWS.IAM.ListSigningCertificates: lUserName :: Lens' ListSigningCertificates (Maybe Text)
- Network.AWS.IAM.ListSigningCertificates: listSigningCertificates :: ListSigningCertificates
- Network.AWS.IAM.ListSigningCertificates: listSigningCertificatesResponse :: Int -> ListSigningCertificatesResponse
- Network.AWS.IAM.ListSigningCertificates: lrsCertificates :: Lens' ListSigningCertificatesResponse [SigningCertificate]
- Network.AWS.IAM.ListSigningCertificates: lrsIsTruncated :: Lens' ListSigningCertificatesResponse (Maybe Bool)
- Network.AWS.IAM.ListSigningCertificates: lrsMarker :: Lens' ListSigningCertificatesResponse (Maybe Text)
- Network.AWS.IAM.ListSigningCertificates: lrsResponseStatus :: Lens' ListSigningCertificatesResponse Int
- Network.AWS.IAM.ListUserPolicies: data ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: data ListUserPoliciesResponse
- Network.AWS.IAM.ListUserPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance Control.DeepSeq.NFData Network.AWS.IAM.ListUserPolicies.ListUserPoliciesResponse
- Network.AWS.IAM.ListUserPolicies: instance Data.Data.Data Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance Data.Data.Data Network.AWS.IAM.ListUserPolicies.ListUserPoliciesResponse
- Network.AWS.IAM.ListUserPolicies: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance GHC.Classes.Eq Network.AWS.IAM.ListUserPolicies.ListUserPoliciesResponse
- Network.AWS.IAM.ListUserPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance GHC.Generics.Generic Network.AWS.IAM.ListUserPolicies.ListUserPoliciesResponse
- Network.AWS.IAM.ListUserPolicies: instance GHC.Read.Read Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance GHC.Read.Read Network.AWS.IAM.ListUserPolicies.ListUserPoliciesResponse
- Network.AWS.IAM.ListUserPolicies: instance GHC.Show.Show Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance GHC.Show.Show Network.AWS.IAM.ListUserPolicies.ListUserPoliciesResponse
- Network.AWS.IAM.ListUserPolicies: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListUserPolicies.ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: listUserPolicies :: Text -> ListUserPolicies
- Network.AWS.IAM.ListUserPolicies: listUserPoliciesResponse :: Int -> ListUserPoliciesResponse
- Network.AWS.IAM.ListUserPolicies: lupMarker :: Lens' ListUserPolicies (Maybe Text)
- Network.AWS.IAM.ListUserPolicies: lupMaxItems :: Lens' ListUserPolicies (Maybe Natural)
- Network.AWS.IAM.ListUserPolicies: lupUserName :: Lens' ListUserPolicies Text
- Network.AWS.IAM.ListUserPolicies: luprsIsTruncated :: Lens' ListUserPoliciesResponse (Maybe Bool)
- Network.AWS.IAM.ListUserPolicies: luprsMarker :: Lens' ListUserPoliciesResponse (Maybe Text)
- Network.AWS.IAM.ListUserPolicies: luprsPolicyNames :: Lens' ListUserPoliciesResponse [Text]
- Network.AWS.IAM.ListUserPolicies: luprsResponseStatus :: Lens' ListUserPoliciesResponse Int
- Network.AWS.IAM.ListUsers: data ListUsers
- Network.AWS.IAM.ListUsers: data ListUsersResponse
- Network.AWS.IAM.ListUsers: instance Control.DeepSeq.NFData Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance Control.DeepSeq.NFData Network.AWS.IAM.ListUsers.ListUsersResponse
- Network.AWS.IAM.ListUsers: instance Data.Data.Data Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance Data.Data.Data Network.AWS.IAM.ListUsers.ListUsersResponse
- Network.AWS.IAM.ListUsers: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance GHC.Classes.Eq Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance GHC.Classes.Eq Network.AWS.IAM.ListUsers.ListUsersResponse
- Network.AWS.IAM.ListUsers: instance GHC.Generics.Generic Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance GHC.Generics.Generic Network.AWS.IAM.ListUsers.ListUsersResponse
- Network.AWS.IAM.ListUsers: instance GHC.Read.Read Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance GHC.Read.Read Network.AWS.IAM.ListUsers.ListUsersResponse
- Network.AWS.IAM.ListUsers: instance GHC.Show.Show Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance GHC.Show.Show Network.AWS.IAM.ListUsers.ListUsersResponse
- Network.AWS.IAM.ListUsers: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListUsers.ListUsers
- Network.AWS.IAM.ListUsers: listUsers :: ListUsers
- Network.AWS.IAM.ListUsers: listUsersResponse :: Int -> ListUsersResponse
- Network.AWS.IAM.ListUsers: luMarker :: Lens' ListUsers (Maybe Text)
- Network.AWS.IAM.ListUsers: luMaxItems :: Lens' ListUsers (Maybe Natural)
- Network.AWS.IAM.ListUsers: luPathPrefix :: Lens' ListUsers (Maybe Text)
- Network.AWS.IAM.ListUsers: lursIsTruncated :: Lens' ListUsersResponse (Maybe Bool)
- Network.AWS.IAM.ListUsers: lursMarker :: Lens' ListUsersResponse (Maybe Text)
- Network.AWS.IAM.ListUsers: lursResponseStatus :: Lens' ListUsersResponse Int
- Network.AWS.IAM.ListUsers: lursUsers :: Lens' ListUsersResponse [User]
- Network.AWS.IAM.ListVirtualMFADevices: data ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: data ListVirtualMFADevicesResponse
- Network.AWS.IAM.ListVirtualMFADevices: instance Control.DeepSeq.NFData Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance Control.DeepSeq.NFData Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
- Network.AWS.IAM.ListVirtualMFADevices: instance Data.Data.Data Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance Data.Data.Data Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
- Network.AWS.IAM.ListVirtualMFADevices: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance GHC.Classes.Eq Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance GHC.Classes.Eq Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
- Network.AWS.IAM.ListVirtualMFADevices: instance GHC.Generics.Generic Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance GHC.Generics.Generic Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
- Network.AWS.IAM.ListVirtualMFADevices: instance GHC.Read.Read Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance GHC.Show.Show Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance GHC.Show.Show Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
- Network.AWS.IAM.ListVirtualMFADevices: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ListVirtualMFADevices.ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: listVirtualMFADevices :: ListVirtualMFADevices
- Network.AWS.IAM.ListVirtualMFADevices: listVirtualMFADevicesResponse :: Int -> ListVirtualMFADevicesResponse
- Network.AWS.IAM.ListVirtualMFADevices: lvmdAssignmentStatus :: Lens' ListVirtualMFADevices (Maybe AssignmentStatusType)
- Network.AWS.IAM.ListVirtualMFADevices: lvmdMarker :: Lens' ListVirtualMFADevices (Maybe Text)
- Network.AWS.IAM.ListVirtualMFADevices: lvmdMaxItems :: Lens' ListVirtualMFADevices (Maybe Natural)
- Network.AWS.IAM.ListVirtualMFADevices: lvmdrsIsTruncated :: Lens' ListVirtualMFADevicesResponse (Maybe Bool)
- Network.AWS.IAM.ListVirtualMFADevices: lvmdrsMarker :: Lens' ListVirtualMFADevicesResponse (Maybe Text)
- Network.AWS.IAM.ListVirtualMFADevices: lvmdrsResponseStatus :: Lens' ListVirtualMFADevicesResponse Int
- Network.AWS.IAM.ListVirtualMFADevices: lvmdrsVirtualMFADevices :: Lens' ListVirtualMFADevicesResponse [VirtualMFADevice]
- Network.AWS.IAM.PutGroupPolicy: data PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: data PutGroupPolicyResponse
- Network.AWS.IAM.PutGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.PutGroupPolicy.PutGroupPolicyResponse
- Network.AWS.IAM.PutGroupPolicy: instance Data.Data.Data Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance Data.Data.Data Network.AWS.IAM.PutGroupPolicy.PutGroupPolicyResponse
- Network.AWS.IAM.PutGroupPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance GHC.Classes.Eq Network.AWS.IAM.PutGroupPolicy.PutGroupPolicyResponse
- Network.AWS.IAM.PutGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance GHC.Generics.Generic Network.AWS.IAM.PutGroupPolicy.PutGroupPolicyResponse
- Network.AWS.IAM.PutGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance GHC.Read.Read Network.AWS.IAM.PutGroupPolicy.PutGroupPolicyResponse
- Network.AWS.IAM.PutGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance GHC.Show.Show Network.AWS.IAM.PutGroupPolicy.PutGroupPolicyResponse
- Network.AWS.IAM.PutGroupPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.PutGroupPolicy.PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: pgpGroupName :: Lens' PutGroupPolicy Text
- Network.AWS.IAM.PutGroupPolicy: pgpPolicyDocument :: Lens' PutGroupPolicy Text
- Network.AWS.IAM.PutGroupPolicy: pgpPolicyName :: Lens' PutGroupPolicy Text
- Network.AWS.IAM.PutGroupPolicy: putGroupPolicy :: Text -> Text -> Text -> PutGroupPolicy
- Network.AWS.IAM.PutGroupPolicy: putGroupPolicyResponse :: PutGroupPolicyResponse
- Network.AWS.IAM.PutRolePolicy: data PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: data PutRolePolicyResponse
- Network.AWS.IAM.PutRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.PutRolePolicy.PutRolePolicyResponse
- Network.AWS.IAM.PutRolePolicy: instance Data.Data.Data Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance Data.Data.Data Network.AWS.IAM.PutRolePolicy.PutRolePolicyResponse
- Network.AWS.IAM.PutRolePolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.PutRolePolicy.PutRolePolicyResponse
- Network.AWS.IAM.PutRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.PutRolePolicy.PutRolePolicyResponse
- Network.AWS.IAM.PutRolePolicy: instance GHC.Read.Read Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance GHC.Read.Read Network.AWS.IAM.PutRolePolicy.PutRolePolicyResponse
- Network.AWS.IAM.PutRolePolicy: instance GHC.Show.Show Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance GHC.Show.Show Network.AWS.IAM.PutRolePolicy.PutRolePolicyResponse
- Network.AWS.IAM.PutRolePolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.PutRolePolicy.PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: prpPolicyDocument :: Lens' PutRolePolicy Text
- Network.AWS.IAM.PutRolePolicy: prpPolicyName :: Lens' PutRolePolicy Text
- Network.AWS.IAM.PutRolePolicy: prpRoleName :: Lens' PutRolePolicy Text
- Network.AWS.IAM.PutRolePolicy: putRolePolicy :: Text -> Text -> Text -> PutRolePolicy
- Network.AWS.IAM.PutRolePolicy: putRolePolicyResponse :: PutRolePolicyResponse
- Network.AWS.IAM.PutUserPolicy: data PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: data PutUserPolicyResponse
- Network.AWS.IAM.PutUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.PutUserPolicy.PutUserPolicyResponse
- Network.AWS.IAM.PutUserPolicy: instance Data.Data.Data Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance Data.Data.Data Network.AWS.IAM.PutUserPolicy.PutUserPolicyResponse
- Network.AWS.IAM.PutUserPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance GHC.Classes.Eq Network.AWS.IAM.PutUserPolicy.PutUserPolicyResponse
- Network.AWS.IAM.PutUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance GHC.Generics.Generic Network.AWS.IAM.PutUserPolicy.PutUserPolicyResponse
- Network.AWS.IAM.PutUserPolicy: instance GHC.Read.Read Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance GHC.Read.Read Network.AWS.IAM.PutUserPolicy.PutUserPolicyResponse
- Network.AWS.IAM.PutUserPolicy: instance GHC.Show.Show Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance GHC.Show.Show Network.AWS.IAM.PutUserPolicy.PutUserPolicyResponse
- Network.AWS.IAM.PutUserPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.PutUserPolicy.PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: pupPolicyDocument :: Lens' PutUserPolicy Text
- Network.AWS.IAM.PutUserPolicy: pupPolicyName :: Lens' PutUserPolicy Text
- Network.AWS.IAM.PutUserPolicy: pupUserName :: Lens' PutUserPolicy Text
- Network.AWS.IAM.PutUserPolicy: putUserPolicy :: Text -> Text -> Text -> PutUserPolicy
- Network.AWS.IAM.PutUserPolicy: putUserPolicyResponse :: PutUserPolicyResponse
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: data RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: data RemoveClientIdFromOpenIdConnectProviderResponse
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProviderResponse
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Data.Data.Data Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProviderResponse
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance GHC.Classes.Eq Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProviderResponse
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance GHC.Generics.Generic Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProviderResponse
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance GHC.Read.Read Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProviderResponse
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance GHC.Show.Show Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProviderResponse
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider.RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: rcifoicpClientId :: Lens' RemoveClientIdFromOpenIdConnectProvider Text
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: rcifoicpOpenIdConnectProviderARN :: Lens' RemoveClientIdFromOpenIdConnectProvider Text
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: removeClientIdFromOpenIdConnectProvider :: Text -> Text -> RemoveClientIdFromOpenIdConnectProvider
- Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider: removeClientIdFromOpenIdConnectProviderResponse :: RemoveClientIdFromOpenIdConnectProviderResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: data RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: data RemoveRoleFromInstanceProfileResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Data.Data.Data Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Data.Data.Data Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance GHC.Classes.Eq Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance GHC.Generics.Generic Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance GHC.Read.Read Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance GHC.Show.Show Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: removeRoleFromInstanceProfile :: Text -> Text -> RemoveRoleFromInstanceProfile
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: removeRoleFromInstanceProfileResponse :: RemoveRoleFromInstanceProfileResponse
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: rrfipInstanceProfileName :: Lens' RemoveRoleFromInstanceProfile Text
- Network.AWS.IAM.RemoveRoleFromInstanceProfile: rrfipRoleName :: Lens' RemoveRoleFromInstanceProfile Text
- Network.AWS.IAM.RemoveUserFromGroup: data RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: data RemoveUserFromGroupResponse
- Network.AWS.IAM.RemoveUserFromGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
- Network.AWS.IAM.RemoveUserFromGroup: instance Data.Data.Data Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance Data.Data.Data Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
- Network.AWS.IAM.RemoveUserFromGroup: instance Data.Hashable.Class.Hashable Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance GHC.Classes.Eq Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance GHC.Classes.Eq Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
- Network.AWS.IAM.RemoveUserFromGroup: instance GHC.Generics.Generic Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance GHC.Generics.Generic Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
- Network.AWS.IAM.RemoveUserFromGroup: instance GHC.Read.Read Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance GHC.Read.Read Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
- Network.AWS.IAM.RemoveUserFromGroup: instance GHC.Show.Show Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance GHC.Show.Show Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
- Network.AWS.IAM.RemoveUserFromGroup: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.RemoveUserFromGroup.RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: removeUserFromGroup :: Text -> Text -> RemoveUserFromGroup
- Network.AWS.IAM.RemoveUserFromGroup: removeUserFromGroupResponse :: RemoveUserFromGroupResponse
- Network.AWS.IAM.RemoveUserFromGroup: rufgGroupName :: Lens' RemoveUserFromGroup Text
- Network.AWS.IAM.RemoveUserFromGroup: rufgUserName :: Lens' RemoveUserFromGroup Text
- Network.AWS.IAM.ResetServiceSpecificCredential: data ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: data ResetServiceSpecificCredentialResponse
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Control.DeepSeq.NFData Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Control.DeepSeq.NFData Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Data.Data.Data Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Data.Data.Data Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance GHC.Classes.Eq Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance GHC.Classes.Eq Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
- Network.AWS.IAM.ResetServiceSpecificCredential: instance GHC.Generics.Generic Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance GHC.Generics.Generic Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
- Network.AWS.IAM.ResetServiceSpecificCredential: instance GHC.Read.Read Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance GHC.Show.Show Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance GHC.Show.Show Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: resetServiceSpecificCredential :: Text -> ResetServiceSpecificCredential
- Network.AWS.IAM.ResetServiceSpecificCredential: resetServiceSpecificCredentialResponse :: Int -> ResetServiceSpecificCredentialResponse
- Network.AWS.IAM.ResetServiceSpecificCredential: rsscServiceSpecificCredentialId :: Lens' ResetServiceSpecificCredential Text
- Network.AWS.IAM.ResetServiceSpecificCredential: rsscUserName :: Lens' ResetServiceSpecificCredential (Maybe Text)
- Network.AWS.IAM.ResetServiceSpecificCredential: rsscrsResponseStatus :: Lens' ResetServiceSpecificCredentialResponse Int
- Network.AWS.IAM.ResetServiceSpecificCredential: rsscrsServiceSpecificCredential :: Lens' ResetServiceSpecificCredentialResponse (Maybe ServiceSpecificCredential)
- Network.AWS.IAM.ResyncMFADevice: data ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: data ResyncMFADeviceResponse
- Network.AWS.IAM.ResyncMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance Control.DeepSeq.NFData Network.AWS.IAM.ResyncMFADevice.ResyncMFADeviceResponse
- Network.AWS.IAM.ResyncMFADevice: instance Data.Data.Data Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance Data.Data.Data Network.AWS.IAM.ResyncMFADevice.ResyncMFADeviceResponse
- Network.AWS.IAM.ResyncMFADevice: instance Data.Hashable.Class.Hashable Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance GHC.Classes.Eq Network.AWS.IAM.ResyncMFADevice.ResyncMFADeviceResponse
- Network.AWS.IAM.ResyncMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance GHC.Generics.Generic Network.AWS.IAM.ResyncMFADevice.ResyncMFADeviceResponse
- Network.AWS.IAM.ResyncMFADevice: instance GHC.Read.Read Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance GHC.Read.Read Network.AWS.IAM.ResyncMFADevice.ResyncMFADeviceResponse
- Network.AWS.IAM.ResyncMFADevice: instance GHC.Show.Show Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance GHC.Show.Show Network.AWS.IAM.ResyncMFADevice.ResyncMFADeviceResponse
- Network.AWS.IAM.ResyncMFADevice: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.ResyncMFADevice.ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: resyncMFADevice :: Text -> Text -> Text -> Text -> ResyncMFADevice
- Network.AWS.IAM.ResyncMFADevice: resyncMFADeviceResponse :: ResyncMFADeviceResponse
- Network.AWS.IAM.ResyncMFADevice: rmdAuthenticationCode1 :: Lens' ResyncMFADevice Text
- Network.AWS.IAM.ResyncMFADevice: rmdAuthenticationCode2 :: Lens' ResyncMFADevice Text
- Network.AWS.IAM.ResyncMFADevice: rmdSerialNumber :: Lens' ResyncMFADevice Text
- Network.AWS.IAM.ResyncMFADevice: rmdUserName :: Lens' ResyncMFADevice Text
- Network.AWS.IAM.SetDefaultPolicyVersion: data SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: data SetDefaultPolicyVersionResponse
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Control.DeepSeq.NFData Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Control.DeepSeq.NFData Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Data.Data.Data Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Data.Data.Data Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Data.Hashable.Class.Hashable Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance GHC.Classes.Eq Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance GHC.Classes.Eq Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
- Network.AWS.IAM.SetDefaultPolicyVersion: instance GHC.Generics.Generic Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance GHC.Generics.Generic Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
- Network.AWS.IAM.SetDefaultPolicyVersion: instance GHC.Read.Read Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance GHC.Read.Read Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
- Network.AWS.IAM.SetDefaultPolicyVersion: instance GHC.Show.Show Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance GHC.Show.Show Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: sdpvPolicyARN :: Lens' SetDefaultPolicyVersion Text
- Network.AWS.IAM.SetDefaultPolicyVersion: sdpvVersionId :: Lens' SetDefaultPolicyVersion Text
- Network.AWS.IAM.SetDefaultPolicyVersion: setDefaultPolicyVersion :: Text -> Text -> SetDefaultPolicyVersion
- Network.AWS.IAM.SetDefaultPolicyVersion: setDefaultPolicyVersionResponse :: SetDefaultPolicyVersionResponse
- Network.AWS.IAM.SimulateCustomPolicy: data SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: data SimulatePolicyResponse
- Network.AWS.IAM.SimulateCustomPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance Data.Data.Data Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance GHC.Classes.Eq Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance GHC.Generics.Generic Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance GHC.Read.Read Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance GHC.Show.Show Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.SimulateCustomPolicy.SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: scpActionNames :: Lens' SimulateCustomPolicy [Text]
- Network.AWS.IAM.SimulateCustomPolicy: scpCallerARN :: Lens' SimulateCustomPolicy (Maybe Text)
- Network.AWS.IAM.SimulateCustomPolicy: scpContextEntries :: Lens' SimulateCustomPolicy [ContextEntry]
- Network.AWS.IAM.SimulateCustomPolicy: scpMarker :: Lens' SimulateCustomPolicy (Maybe Text)
- Network.AWS.IAM.SimulateCustomPolicy: scpMaxItems :: Lens' SimulateCustomPolicy (Maybe Natural)
- Network.AWS.IAM.SimulateCustomPolicy: scpPolicyInputList :: Lens' SimulateCustomPolicy [Text]
- Network.AWS.IAM.SimulateCustomPolicy: scpResourceARNs :: Lens' SimulateCustomPolicy [Text]
- Network.AWS.IAM.SimulateCustomPolicy: scpResourceHandlingOption :: Lens' SimulateCustomPolicy (Maybe Text)
- Network.AWS.IAM.SimulateCustomPolicy: scpResourceOwner :: Lens' SimulateCustomPolicy (Maybe Text)
- Network.AWS.IAM.SimulateCustomPolicy: scpResourcePolicy :: Lens' SimulateCustomPolicy (Maybe Text)
- Network.AWS.IAM.SimulateCustomPolicy: simulateCustomPolicy :: SimulateCustomPolicy
- Network.AWS.IAM.SimulateCustomPolicy: simulatePolicyResponse :: SimulatePolicyResponse
- Network.AWS.IAM.SimulateCustomPolicy: spEvaluationResults :: Lens' SimulatePolicyResponse [EvaluationResult]
- Network.AWS.IAM.SimulateCustomPolicy: spIsTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
- Network.AWS.IAM.SimulateCustomPolicy: spMarker :: Lens' SimulatePolicyResponse (Maybe Text)
- Network.AWS.IAM.SimulatePrincipalPolicy: data SimulatePolicyResponse
- Network.AWS.IAM.SimulatePrincipalPolicy: data SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance Data.Data.Data Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance GHC.Classes.Eq Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance GHC.Generics.Generic Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance GHC.Read.Read Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance GHC.Show.Show Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: simulatePolicyResponse :: SimulatePolicyResponse
- Network.AWS.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy :: Text -> SimulatePrincipalPolicy
- Network.AWS.IAM.SimulatePrincipalPolicy: spEvaluationResults :: Lens' SimulatePolicyResponse [EvaluationResult]
- Network.AWS.IAM.SimulatePrincipalPolicy: spIsTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
- Network.AWS.IAM.SimulatePrincipalPolicy: spMarker :: Lens' SimulatePolicyResponse (Maybe Text)
- Network.AWS.IAM.SimulatePrincipalPolicy: sppActionNames :: Lens' SimulatePrincipalPolicy [Text]
- Network.AWS.IAM.SimulatePrincipalPolicy: sppCallerARN :: Lens' SimulatePrincipalPolicy (Maybe Text)
- Network.AWS.IAM.SimulatePrincipalPolicy: sppContextEntries :: Lens' SimulatePrincipalPolicy [ContextEntry]
- Network.AWS.IAM.SimulatePrincipalPolicy: sppMarker :: Lens' SimulatePrincipalPolicy (Maybe Text)
- Network.AWS.IAM.SimulatePrincipalPolicy: sppMaxItems :: Lens' SimulatePrincipalPolicy (Maybe Natural)
- Network.AWS.IAM.SimulatePrincipalPolicy: sppPolicyInputList :: Lens' SimulatePrincipalPolicy [Text]
- Network.AWS.IAM.SimulatePrincipalPolicy: sppPolicySourceARN :: Lens' SimulatePrincipalPolicy Text
- Network.AWS.IAM.SimulatePrincipalPolicy: sppResourceARNs :: Lens' SimulatePrincipalPolicy [Text]
- Network.AWS.IAM.SimulatePrincipalPolicy: sppResourceHandlingOption :: Lens' SimulatePrincipalPolicy (Maybe Text)
- Network.AWS.IAM.SimulatePrincipalPolicy: sppResourceOwner :: Lens' SimulatePrincipalPolicy (Maybe Text)
- Network.AWS.IAM.SimulatePrincipalPolicy: sppResourcePolicy :: Lens' SimulatePrincipalPolicy (Maybe Text)
- Network.AWS.IAM.Types: AWS :: PolicyScopeType
- Network.AWS.IAM.Types: AWSManaged :: PolicySourceType
- Network.AWS.IAM.Types: AccessKeysPerUserQuota :: SummaryKeyType
- Network.AWS.IAM.Types: AccountAccessKeysPresent :: SummaryKeyType
- Network.AWS.IAM.Types: AccountMFAEnabled :: SummaryKeyType
- Network.AWS.IAM.Types: AccountSigningCertificatesPresent :: SummaryKeyType
- Network.AWS.IAM.Types: Active :: StatusType
- Network.AWS.IAM.Types: All :: PolicyScopeType
- Network.AWS.IAM.Types: Allowed :: PolicyEvaluationDecisionType
- Network.AWS.IAM.Types: Any :: AssignmentStatusType
- Network.AWS.IAM.Types: Assigned :: AssignmentStatusType
- Network.AWS.IAM.Types: AttachedPoliciesPerGroupQuota :: SummaryKeyType
- Network.AWS.IAM.Types: AttachedPoliciesPerRoleQuota :: SummaryKeyType
- Network.AWS.IAM.Types: AttachedPoliciesPerUserQuota :: SummaryKeyType
- Network.AWS.IAM.Types: Binary :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: BinaryList :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: Boolean :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: BooleanList :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: Date :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: DateList :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: ETAWSManagedPolicy :: EntityType
- Network.AWS.IAM.Types: ETGroup :: EntityType
- Network.AWS.IAM.Types: ETLocalManagedPolicy :: EntityType
- Network.AWS.IAM.Types: ETRole :: EntityType
- Network.AWS.IAM.Types: ETUser :: EntityType
- Network.AWS.IAM.Types: ExplicitDeny :: PolicyEvaluationDecisionType
- Network.AWS.IAM.Types: Failed :: DeletionTaskStatusType
- Network.AWS.IAM.Types: Group :: PolicySourceType
- Network.AWS.IAM.Types: GroupPolicySizeQuota :: SummaryKeyType
- Network.AWS.IAM.Types: Groups :: SummaryKeyType
- Network.AWS.IAM.Types: GroupsPerUserQuota :: SummaryKeyType
- Network.AWS.IAM.Types: GroupsQuota :: SummaryKeyType
- Network.AWS.IAM.Types: IP :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: IPList :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: ImplicitDeny :: PolicyEvaluationDecisionType
- Network.AWS.IAM.Types: InProgress :: DeletionTaskStatusType
- Network.AWS.IAM.Types: Inactive :: StatusType
- Network.AWS.IAM.Types: Local :: PolicyScopeType
- Network.AWS.IAM.Types: MFADevices :: SummaryKeyType
- Network.AWS.IAM.Types: MFADevicesInUse :: SummaryKeyType
- Network.AWS.IAM.Types: None :: PolicySourceType
- Network.AWS.IAM.Types: NotStarted :: DeletionTaskStatusType
- Network.AWS.IAM.Types: Numeric :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: NumericList :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: Pem :: EncodingType
- Network.AWS.IAM.Types: Policies :: SummaryKeyType
- Network.AWS.IAM.Types: PoliciesQuota :: SummaryKeyType
- Network.AWS.IAM.Types: PolicySizeQuota :: SummaryKeyType
- Network.AWS.IAM.Types: PolicyVersionsInUse :: SummaryKeyType
- Network.AWS.IAM.Types: PolicyVersionsInUseQuota :: SummaryKeyType
- Network.AWS.IAM.Types: RSTComplete :: ReportStateType
- Network.AWS.IAM.Types: RSTInprogress :: ReportStateType
- Network.AWS.IAM.Types: RSTStarted :: ReportStateType
- Network.AWS.IAM.Types: Resource :: PolicySourceType
- Network.AWS.IAM.Types: Role :: PolicySourceType
- Network.AWS.IAM.Types: SSH :: EncodingType
- Network.AWS.IAM.Types: ServerCertificates :: SummaryKeyType
- Network.AWS.IAM.Types: ServerCertificatesQuota :: SummaryKeyType
- Network.AWS.IAM.Types: SigningCertificatesPerUserQuota :: SummaryKeyType
- Network.AWS.IAM.Types: String :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: StringList :: ContextKeyTypeEnum
- Network.AWS.IAM.Types: Succeeded :: DeletionTaskStatusType
- Network.AWS.IAM.Types: TextCSV :: ReportFormatType
- Network.AWS.IAM.Types: Unassigned :: AssignmentStatusType
- Network.AWS.IAM.Types: User :: PolicySourceType
- Network.AWS.IAM.Types: UserManaged :: PolicySourceType
- Network.AWS.IAM.Types: UserPolicySizeQuota :: SummaryKeyType
- Network.AWS.IAM.Types: Users :: SummaryKeyType
- Network.AWS.IAM.Types: UsersQuota :: SummaryKeyType
- Network.AWS.IAM.Types: VersionsPerPolicyQuota :: SummaryKeyType
- Network.AWS.IAM.Types: _CredentialReportExpiredException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _CredentialReportNotPresentException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _CredentialReportNotReadyException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _DeleteConflictException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _DuplicateCertificateException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _DuplicateSSHPublicKeyException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _EntityAlreadyExistsException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _EntityTemporarilyUnmodifiableException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _InvalidAuthenticationCodeException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _InvalidCertificateException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _InvalidInputException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _InvalidPublicKeyException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _InvalidUserTypeException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _KeyPairMismatchException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _MalformedCertificateException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _MalformedPolicyDocumentException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _NoSuchEntityException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _PasswordPolicyViolationException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _PolicyEvaluationException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _PolicyNotAttachableException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _ServiceFailureException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _ServiceNotSupportedException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _UnmodifiableEntityException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: _UnrecognizedPublicKeyEncodingException :: AsError a => Getting (First ServiceError) a ServiceError
- Network.AWS.IAM.Types: accessKeyInfo :: Text -> AccessKey -> StatusType -> Text -> AccessKeyInfo
- Network.AWS.IAM.Types: accessKeyLastUsed :: UTCTime -> Text -> Text -> AccessKeyLastUsed
- Network.AWS.IAM.Types: accessKeyMetadata :: AccessKeyMetadata
- Network.AWS.IAM.Types: akiAccessKeyId :: Lens' AccessKeyInfo AccessKey
- Network.AWS.IAM.Types: akiCreateDate :: Lens' AccessKeyInfo (Maybe UTCTime)
- Network.AWS.IAM.Types: akiSecretAccessKey :: Lens' AccessKeyInfo Text
- Network.AWS.IAM.Types: akiStatus :: Lens' AccessKeyInfo StatusType
- Network.AWS.IAM.Types: akiUserName :: Lens' AccessKeyInfo Text
- Network.AWS.IAM.Types: akluLastUsedDate :: Lens' AccessKeyLastUsed UTCTime
- Network.AWS.IAM.Types: akluRegion :: Lens' AccessKeyLastUsed Text
- Network.AWS.IAM.Types: akluServiceName :: Lens' AccessKeyLastUsed Text
- Network.AWS.IAM.Types: akmAccessKeyId :: Lens' AccessKeyMetadata (Maybe AccessKey)
- Network.AWS.IAM.Types: akmCreateDate :: Lens' AccessKeyMetadata (Maybe UTCTime)
- Network.AWS.IAM.Types: akmStatus :: Lens' AccessKeyMetadata (Maybe StatusType)
- Network.AWS.IAM.Types: akmUserName :: Lens' AccessKeyMetadata (Maybe Text)
- Network.AWS.IAM.Types: apPolicyARN :: Lens' AttachedPolicy (Maybe Text)
- Network.AWS.IAM.Types: apPolicyName :: Lens' AttachedPolicy (Maybe Text)
- Network.AWS.IAM.Types: attachedPolicy :: AttachedPolicy
- Network.AWS.IAM.Types: ceContextKeyName :: Lens' ContextEntry (Maybe Text)
- Network.AWS.IAM.Types: ceContextKeyType :: Lens' ContextEntry (Maybe ContextKeyTypeEnum)
- Network.AWS.IAM.Types: ceContextKeyValues :: Lens' ContextEntry [Text]
- Network.AWS.IAM.Types: contextEntry :: ContextEntry
- Network.AWS.IAM.Types: data AccessKeyInfo
- Network.AWS.IAM.Types: data AccessKeyLastUsed
- Network.AWS.IAM.Types: data AccessKeyMetadata
- Network.AWS.IAM.Types: data AssignmentStatusType
- Network.AWS.IAM.Types: data AttachedPolicy
- Network.AWS.IAM.Types: data ContextEntry
- Network.AWS.IAM.Types: data ContextKeyTypeEnum
- Network.AWS.IAM.Types: data DeletionTaskFailureReasonType
- Network.AWS.IAM.Types: data DeletionTaskStatusType
- Network.AWS.IAM.Types: data EncodingType
- Network.AWS.IAM.Types: data EntityType
- Network.AWS.IAM.Types: data EvaluationResult
- Network.AWS.IAM.Types: data GetContextKeysForPolicyResponse
- Network.AWS.IAM.Types: data Group
- Network.AWS.IAM.Types: data GroupDetail
- Network.AWS.IAM.Types: data InstanceProfile
- Network.AWS.IAM.Types: data LoginProfile
- Network.AWS.IAM.Types: data MFADevice
- Network.AWS.IAM.Types: data ManagedPolicyDetail
- Network.AWS.IAM.Types: data OpenIdConnectProviderListEntry
- Network.AWS.IAM.Types: data OrganizationsDecisionDetail
- Network.AWS.IAM.Types: data PasswordPolicy
- Network.AWS.IAM.Types: data Policy
- Network.AWS.IAM.Types: data PolicyDetail
- Network.AWS.IAM.Types: data PolicyEvaluationDecisionType
- Network.AWS.IAM.Types: data PolicyGroup
- Network.AWS.IAM.Types: data PolicyRole
- Network.AWS.IAM.Types: data PolicyScopeType
- Network.AWS.IAM.Types: data PolicySourceType
- Network.AWS.IAM.Types: data PolicyUser
- Network.AWS.IAM.Types: data PolicyVersion
- Network.AWS.IAM.Types: data Position
- Network.AWS.IAM.Types: data ReportFormatType
- Network.AWS.IAM.Types: data ReportStateType
- Network.AWS.IAM.Types: data ResourceSpecificResult
- Network.AWS.IAM.Types: data Role
- Network.AWS.IAM.Types: data RoleDetail
- Network.AWS.IAM.Types: data RoleUsageType
- Network.AWS.IAM.Types: data SAMLProviderListEntry
- Network.AWS.IAM.Types: data SSHPublicKey
- Network.AWS.IAM.Types: data SSHPublicKeyMetadata
- Network.AWS.IAM.Types: data ServerCertificate
- Network.AWS.IAM.Types: data ServerCertificateMetadata
- Network.AWS.IAM.Types: data ServiceSpecificCredential
- Network.AWS.IAM.Types: data ServiceSpecificCredentialMetadata
- Network.AWS.IAM.Types: data SigningCertificate
- Network.AWS.IAM.Types: data SimulatePolicyResponse
- Network.AWS.IAM.Types: data Statement
- Network.AWS.IAM.Types: data StatusType
- Network.AWS.IAM.Types: data SummaryKeyType
- Network.AWS.IAM.Types: data User
- Network.AWS.IAM.Types: data UserDetail
- Network.AWS.IAM.Types: data VirtualMFADevice
- Network.AWS.IAM.Types: deletionTaskFailureReasonType :: DeletionTaskFailureReasonType
- Network.AWS.IAM.Types: dtfrtReason :: Lens' DeletionTaskFailureReasonType (Maybe Text)
- Network.AWS.IAM.Types: dtfrtRoleUsageList :: Lens' DeletionTaskFailureReasonType [RoleUsageType]
- Network.AWS.IAM.Types: erEvalActionName :: Lens' EvaluationResult Text
- Network.AWS.IAM.Types: erEvalDecision :: Lens' EvaluationResult PolicyEvaluationDecisionType
- Network.AWS.IAM.Types: erEvalDecisionDetails :: Lens' EvaluationResult (HashMap Text PolicyEvaluationDecisionType)
- Network.AWS.IAM.Types: erEvalResourceName :: Lens' EvaluationResult (Maybe Text)
- Network.AWS.IAM.Types: erMatchedStatements :: Lens' EvaluationResult [Statement]
- Network.AWS.IAM.Types: erMissingContextValues :: Lens' EvaluationResult [Text]
- Network.AWS.IAM.Types: erOrganizationsDecisionDetail :: Lens' EvaluationResult (Maybe OrganizationsDecisionDetail)
- Network.AWS.IAM.Types: erResourceSpecificResults :: Lens' EvaluationResult [ResourceSpecificResult]
- Network.AWS.IAM.Types: evaluationResult :: Text -> PolicyEvaluationDecisionType -> EvaluationResult
- Network.AWS.IAM.Types: gARN :: Lens' Group Text
- Network.AWS.IAM.Types: gCreateDate :: Lens' Group UTCTime
- Network.AWS.IAM.Types: gGroupId :: Lens' Group Text
- Network.AWS.IAM.Types: gGroupName :: Lens' Group Text
- Network.AWS.IAM.Types: gPath :: Lens' Group Text
- Network.AWS.IAM.Types: gckfpContextKeyNames :: Lens' GetContextKeysForPolicyResponse [Text]
- Network.AWS.IAM.Types: gdARN :: Lens' GroupDetail (Maybe Text)
- Network.AWS.IAM.Types: gdAttachedManagedPolicies :: Lens' GroupDetail [AttachedPolicy]
- Network.AWS.IAM.Types: gdCreateDate :: Lens' GroupDetail (Maybe UTCTime)
- Network.AWS.IAM.Types: gdGroupId :: Lens' GroupDetail (Maybe Text)
- Network.AWS.IAM.Types: gdGroupName :: Lens' GroupDetail (Maybe Text)
- Network.AWS.IAM.Types: gdGroupPolicyList :: Lens' GroupDetail [PolicyDetail]
- Network.AWS.IAM.Types: gdPath :: Lens' GroupDetail (Maybe Text)
- Network.AWS.IAM.Types: getContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
- Network.AWS.IAM.Types: group' :: Text -> Text -> Text -> Text -> UTCTime -> Group
- Network.AWS.IAM.Types: groupDetail :: GroupDetail
- Network.AWS.IAM.Types: iam :: Service
- Network.AWS.IAM.Types: instanceProfile :: Text -> Text -> Text -> Text -> UTCTime -> InstanceProfile
- Network.AWS.IAM.Types: ipARN :: Lens' InstanceProfile Text
- Network.AWS.IAM.Types: ipCreateDate :: Lens' InstanceProfile UTCTime
- Network.AWS.IAM.Types: ipInstanceProfileId :: Lens' InstanceProfile Text
- Network.AWS.IAM.Types: ipInstanceProfileName :: Lens' InstanceProfile Text
- Network.AWS.IAM.Types: ipPath :: Lens' InstanceProfile Text
- Network.AWS.IAM.Types: ipRoles :: Lens' InstanceProfile [Role]
- Network.AWS.IAM.Types: loginProfile :: Text -> UTCTime -> LoginProfile
- Network.AWS.IAM.Types: lpCreateDate :: Lens' LoginProfile UTCTime
- Network.AWS.IAM.Types: lpPasswordResetRequired :: Lens' LoginProfile (Maybe Bool)
- Network.AWS.IAM.Types: lpUserName :: Lens' LoginProfile Text
- Network.AWS.IAM.Types: managedPolicyDetail :: ManagedPolicyDetail
- Network.AWS.IAM.Types: mdEnableDate :: Lens' MFADevice UTCTime
- Network.AWS.IAM.Types: mdSerialNumber :: Lens' MFADevice Text
- Network.AWS.IAM.Types: mdUserName :: Lens' MFADevice Text
- Network.AWS.IAM.Types: mfaDevice :: Text -> Text -> UTCTime -> MFADevice
- Network.AWS.IAM.Types: mpdARN :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM.Types: mpdAttachmentCount :: Lens' ManagedPolicyDetail (Maybe Int)
- Network.AWS.IAM.Types: mpdCreateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
- Network.AWS.IAM.Types: mpdDefaultVersionId :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM.Types: mpdDescription :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM.Types: mpdIsAttachable :: Lens' ManagedPolicyDetail (Maybe Bool)
- Network.AWS.IAM.Types: mpdPath :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM.Types: mpdPolicyId :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM.Types: mpdPolicyName :: Lens' ManagedPolicyDetail (Maybe Text)
- Network.AWS.IAM.Types: mpdPolicyVersionList :: Lens' ManagedPolicyDetail [PolicyVersion]
- Network.AWS.IAM.Types: mpdUpdateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
- Network.AWS.IAM.Types: oddAllowedByOrganizations :: Lens' OrganizationsDecisionDetail (Maybe Bool)
- Network.AWS.IAM.Types: oicpleARN :: Lens' OpenIdConnectProviderListEntry (Maybe Text)
- Network.AWS.IAM.Types: openIdConnectProviderListEntry :: OpenIdConnectProviderListEntry
- Network.AWS.IAM.Types: organizationsDecisionDetail :: OrganizationsDecisionDetail
- Network.AWS.IAM.Types: pARN :: Lens' Policy (Maybe Text)
- Network.AWS.IAM.Types: pAttachmentCount :: Lens' Policy (Maybe Int)
- Network.AWS.IAM.Types: pColumn :: Lens' Position (Maybe Int)
- Network.AWS.IAM.Types: pCreateDate :: Lens' Policy (Maybe UTCTime)
- Network.AWS.IAM.Types: pDefaultVersionId :: Lens' Policy (Maybe Text)
- Network.AWS.IAM.Types: pDescription :: Lens' Policy (Maybe Text)
- Network.AWS.IAM.Types: pIsAttachable :: Lens' Policy (Maybe Bool)
- Network.AWS.IAM.Types: pLine :: Lens' Position (Maybe Int)
- Network.AWS.IAM.Types: pPath :: Lens' Policy (Maybe Text)
- Network.AWS.IAM.Types: pPolicyId :: Lens' Policy (Maybe Text)
- Network.AWS.IAM.Types: pPolicyName :: Lens' Policy (Maybe Text)
- Network.AWS.IAM.Types: pUpdateDate :: Lens' Policy (Maybe UTCTime)
- Network.AWS.IAM.Types: passwordPolicy :: PasswordPolicy
- Network.AWS.IAM.Types: pdPolicyDocument :: Lens' PolicyDetail (Maybe Text)
- Network.AWS.IAM.Types: pdPolicyName :: Lens' PolicyDetail (Maybe Text)
- Network.AWS.IAM.Types: pgGroupId :: Lens' PolicyGroup (Maybe Text)
- Network.AWS.IAM.Types: pgGroupName :: Lens' PolicyGroup (Maybe Text)
- Network.AWS.IAM.Types: policy :: Policy
- Network.AWS.IAM.Types: policyDetail :: PolicyDetail
- Network.AWS.IAM.Types: policyGroup :: PolicyGroup
- Network.AWS.IAM.Types: policyRole :: PolicyRole
- Network.AWS.IAM.Types: policyUser :: PolicyUser
- Network.AWS.IAM.Types: policyVersion :: PolicyVersion
- Network.AWS.IAM.Types: position :: Position
- Network.AWS.IAM.Types: ppAllowUsersToChangePassword :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM.Types: ppExpirePasswords :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM.Types: ppHardExpiry :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM.Types: ppMaxPasswordAge :: Lens' PasswordPolicy (Maybe Natural)
- Network.AWS.IAM.Types: ppMinimumPasswordLength :: Lens' PasswordPolicy (Maybe Natural)
- Network.AWS.IAM.Types: ppPasswordReusePrevention :: Lens' PasswordPolicy (Maybe Natural)
- Network.AWS.IAM.Types: ppRequireLowercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM.Types: ppRequireNumbers :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM.Types: ppRequireSymbols :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM.Types: ppRequireUppercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
- Network.AWS.IAM.Types: prRoleId :: Lens' PolicyRole (Maybe Text)
- Network.AWS.IAM.Types: prRoleName :: Lens' PolicyRole (Maybe Text)
- Network.AWS.IAM.Types: puUserId :: Lens' PolicyUser (Maybe Text)
- Network.AWS.IAM.Types: puUserName :: Lens' PolicyUser (Maybe Text)
- Network.AWS.IAM.Types: pvCreateDate :: Lens' PolicyVersion (Maybe UTCTime)
- Network.AWS.IAM.Types: pvDocument :: Lens' PolicyVersion (Maybe Text)
- Network.AWS.IAM.Types: pvIsDefaultVersion :: Lens' PolicyVersion (Maybe Bool)
- Network.AWS.IAM.Types: pvVersionId :: Lens' PolicyVersion (Maybe Text)
- Network.AWS.IAM.Types: rARN :: Lens' Role Text
- Network.AWS.IAM.Types: rAssumeRolePolicyDocument :: Lens' Role (Maybe Text)
- Network.AWS.IAM.Types: rCreateDate :: Lens' Role UTCTime
- Network.AWS.IAM.Types: rDescription :: Lens' Role (Maybe Text)
- Network.AWS.IAM.Types: rMaxSessionDuration :: Lens' Role (Maybe Natural)
- Network.AWS.IAM.Types: rPath :: Lens' Role Text
- Network.AWS.IAM.Types: rRoleId :: Lens' Role Text
- Network.AWS.IAM.Types: rRoleName :: Lens' Role Text
- Network.AWS.IAM.Types: rdARN :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM.Types: rdAssumeRolePolicyDocument :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM.Types: rdAttachedManagedPolicies :: Lens' RoleDetail [AttachedPolicy]
- Network.AWS.IAM.Types: rdCreateDate :: Lens' RoleDetail (Maybe UTCTime)
- Network.AWS.IAM.Types: rdInstanceProfileList :: Lens' RoleDetail [InstanceProfile]
- Network.AWS.IAM.Types: rdPath :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM.Types: rdRoleId :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM.Types: rdRoleName :: Lens' RoleDetail (Maybe Text)
- Network.AWS.IAM.Types: rdRolePolicyList :: Lens' RoleDetail [PolicyDetail]
- Network.AWS.IAM.Types: resourceSpecificResult :: Text -> PolicyEvaluationDecisionType -> ResourceSpecificResult
- Network.AWS.IAM.Types: role' :: Text -> Text -> Text -> Text -> UTCTime -> Role
- Network.AWS.IAM.Types: roleDetail :: RoleDetail
- Network.AWS.IAM.Types: roleUsageType :: RoleUsageType
- Network.AWS.IAM.Types: rsrEvalDecisionDetails :: Lens' ResourceSpecificResult (HashMap Text PolicyEvaluationDecisionType)
- Network.AWS.IAM.Types: rsrEvalResourceDecision :: Lens' ResourceSpecificResult PolicyEvaluationDecisionType
- Network.AWS.IAM.Types: rsrEvalResourceName :: Lens' ResourceSpecificResult Text
- Network.AWS.IAM.Types: rsrMatchedStatements :: Lens' ResourceSpecificResult [Statement]
- Network.AWS.IAM.Types: rsrMissingContextValues :: Lens' ResourceSpecificResult [Text]
- Network.AWS.IAM.Types: rutRegion :: Lens' RoleUsageType (Maybe Text)
- Network.AWS.IAM.Types: rutResources :: Lens' RoleUsageType [Text]
- Network.AWS.IAM.Types: sAMLProviderListEntry :: SAMLProviderListEntry
- Network.AWS.IAM.Types: sCertificateBody :: Lens' ServerCertificate Text
- Network.AWS.IAM.Types: sCertificateChain :: Lens' ServerCertificate (Maybe Text)
- Network.AWS.IAM.Types: sEndPosition :: Lens' Statement (Maybe Position)
- Network.AWS.IAM.Types: sServerCertificateMetadata :: Lens' ServerCertificate ServerCertificateMetadata
- Network.AWS.IAM.Types: sSourcePolicyId :: Lens' Statement (Maybe Text)
- Network.AWS.IAM.Types: sSourcePolicyType :: Lens' Statement (Maybe PolicySourceType)
- Network.AWS.IAM.Types: sStartPosition :: Lens' Statement (Maybe Position)
- Network.AWS.IAM.Types: samlpleARN :: Lens' SAMLProviderListEntry (Maybe Text)
- Network.AWS.IAM.Types: samlpleCreateDate :: Lens' SAMLProviderListEntry (Maybe UTCTime)
- Network.AWS.IAM.Types: samlpleValidUntil :: Lens' SAMLProviderListEntry (Maybe UTCTime)
- Network.AWS.IAM.Types: scCertificateBody :: Lens' SigningCertificate Text
- Network.AWS.IAM.Types: scCertificateId :: Lens' SigningCertificate Text
- Network.AWS.IAM.Types: scStatus :: Lens' SigningCertificate StatusType
- Network.AWS.IAM.Types: scUploadDate :: Lens' SigningCertificate (Maybe UTCTime)
- Network.AWS.IAM.Types: scUserName :: Lens' SigningCertificate Text
- Network.AWS.IAM.Types: scmARN :: Lens' ServerCertificateMetadata Text
- Network.AWS.IAM.Types: scmExpiration :: Lens' ServerCertificateMetadata (Maybe UTCTime)
- Network.AWS.IAM.Types: scmPath :: Lens' ServerCertificateMetadata Text
- Network.AWS.IAM.Types: scmServerCertificateId :: Lens' ServerCertificateMetadata Text
- Network.AWS.IAM.Types: scmServerCertificateName :: Lens' ServerCertificateMetadata Text
- Network.AWS.IAM.Types: scmUploadDate :: Lens' ServerCertificateMetadata (Maybe UTCTime)
- Network.AWS.IAM.Types: serverCertificate :: ServerCertificateMetadata -> Text -> ServerCertificate
- Network.AWS.IAM.Types: serverCertificateMetadata :: Text -> Text -> Text -> Text -> ServerCertificateMetadata
- Network.AWS.IAM.Types: serviceSpecificCredential :: UTCTime -> Text -> Text -> Text -> Text -> Text -> StatusType -> ServiceSpecificCredential
- Network.AWS.IAM.Types: serviceSpecificCredentialMetadata :: Text -> StatusType -> Text -> UTCTime -> Text -> Text -> ServiceSpecificCredentialMetadata
- Network.AWS.IAM.Types: signingCertificate :: Text -> Text -> Text -> StatusType -> SigningCertificate
- Network.AWS.IAM.Types: simulatePolicyResponse :: SimulatePolicyResponse
- Network.AWS.IAM.Types: spEvaluationResults :: Lens' SimulatePolicyResponse [EvaluationResult]
- Network.AWS.IAM.Types: spIsTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
- Network.AWS.IAM.Types: spMarker :: Lens' SimulatePolicyResponse (Maybe Text)
- Network.AWS.IAM.Types: spkFingerprint :: Lens' SSHPublicKey Text
- Network.AWS.IAM.Types: spkSSHPublicKeyBody :: Lens' SSHPublicKey Text
- Network.AWS.IAM.Types: spkSSHPublicKeyId :: Lens' SSHPublicKey Text
- Network.AWS.IAM.Types: spkStatus :: Lens' SSHPublicKey StatusType
- Network.AWS.IAM.Types: spkUploadDate :: Lens' SSHPublicKey (Maybe UTCTime)
- Network.AWS.IAM.Types: spkUserName :: Lens' SSHPublicKey Text
- Network.AWS.IAM.Types: spkmSSHPublicKeyId :: Lens' SSHPublicKeyMetadata Text
- Network.AWS.IAM.Types: spkmStatus :: Lens' SSHPublicKeyMetadata StatusType
- Network.AWS.IAM.Types: spkmUploadDate :: Lens' SSHPublicKeyMetadata UTCTime
- Network.AWS.IAM.Types: spkmUserName :: Lens' SSHPublicKeyMetadata Text
- Network.AWS.IAM.Types: sscCreateDate :: Lens' ServiceSpecificCredential UTCTime
- Network.AWS.IAM.Types: sscServiceName :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM.Types: sscServicePassword :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM.Types: sscServiceSpecificCredentialId :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM.Types: sscServiceUserName :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM.Types: sscStatus :: Lens' ServiceSpecificCredential StatusType
- Network.AWS.IAM.Types: sscUserName :: Lens' ServiceSpecificCredential Text
- Network.AWS.IAM.Types: sscmCreateDate :: Lens' ServiceSpecificCredentialMetadata UTCTime
- Network.AWS.IAM.Types: sscmServiceName :: Lens' ServiceSpecificCredentialMetadata Text
- Network.AWS.IAM.Types: sscmServiceSpecificCredentialId :: Lens' ServiceSpecificCredentialMetadata Text
- Network.AWS.IAM.Types: sscmServiceUserName :: Lens' ServiceSpecificCredentialMetadata Text
- Network.AWS.IAM.Types: sscmStatus :: Lens' ServiceSpecificCredentialMetadata StatusType
- Network.AWS.IAM.Types: sscmUserName :: Lens' ServiceSpecificCredentialMetadata Text
- Network.AWS.IAM.Types: sshPublicKey :: Text -> Text -> Text -> Text -> StatusType -> SSHPublicKey
- Network.AWS.IAM.Types: sshPublicKeyMetadata :: Text -> Text -> StatusType -> UTCTime -> SSHPublicKeyMetadata
- Network.AWS.IAM.Types: statement :: Statement
- Network.AWS.IAM.Types: uARN :: Lens' User Text
- Network.AWS.IAM.Types: uCreateDate :: Lens' User UTCTime
- Network.AWS.IAM.Types: uPasswordLastUsed :: Lens' User (Maybe UTCTime)
- Network.AWS.IAM.Types: uPath :: Lens' User Text
- Network.AWS.IAM.Types: uUserId :: Lens' User Text
- Network.AWS.IAM.Types: uUserName :: Lens' User Text
- Network.AWS.IAM.Types: udARN :: Lens' UserDetail (Maybe Text)
- Network.AWS.IAM.Types: udAttachedManagedPolicies :: Lens' UserDetail [AttachedPolicy]
- Network.AWS.IAM.Types: udCreateDate :: Lens' UserDetail (Maybe UTCTime)
- Network.AWS.IAM.Types: udGroupList :: Lens' UserDetail [Text]
- Network.AWS.IAM.Types: udPath :: Lens' UserDetail (Maybe Text)
- Network.AWS.IAM.Types: udUserId :: Lens' UserDetail (Maybe Text)
- Network.AWS.IAM.Types: udUserName :: Lens' UserDetail (Maybe Text)
- Network.AWS.IAM.Types: udUserPolicyList :: Lens' UserDetail [PolicyDetail]
- Network.AWS.IAM.Types: user :: Text -> Text -> Text -> Text -> UTCTime -> User
- Network.AWS.IAM.Types: userDetail :: UserDetail
- Network.AWS.IAM.Types: virtualMFADevice :: Text -> VirtualMFADevice
- Network.AWS.IAM.Types: vmdBase32StringSeed :: Lens' VirtualMFADevice (Maybe ByteString)
- Network.AWS.IAM.Types: vmdEnableDate :: Lens' VirtualMFADevice (Maybe UTCTime)
- Network.AWS.IAM.Types: vmdQRCodePNG :: Lens' VirtualMFADevice (Maybe ByteString)
- Network.AWS.IAM.Types: vmdSerialNumber :: Lens' VirtualMFADevice Text
- Network.AWS.IAM.Types: vmdUser :: Lens' VirtualMFADevice (Maybe User)
- Network.AWS.IAM.UpdateAccessKey: data UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: data UpdateAccessKeyResponse
- Network.AWS.IAM.UpdateAccessKey: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateAccessKey.UpdateAccessKeyResponse
- Network.AWS.IAM.UpdateAccessKey: instance Data.Data.Data Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance Data.Data.Data Network.AWS.IAM.UpdateAccessKey.UpdateAccessKeyResponse
- Network.AWS.IAM.UpdateAccessKey: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance GHC.Classes.Eq Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance GHC.Classes.Eq Network.AWS.IAM.UpdateAccessKey.UpdateAccessKeyResponse
- Network.AWS.IAM.UpdateAccessKey: instance GHC.Generics.Generic Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance GHC.Generics.Generic Network.AWS.IAM.UpdateAccessKey.UpdateAccessKeyResponse
- Network.AWS.IAM.UpdateAccessKey: instance GHC.Read.Read Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance GHC.Read.Read Network.AWS.IAM.UpdateAccessKey.UpdateAccessKeyResponse
- Network.AWS.IAM.UpdateAccessKey: instance GHC.Show.Show Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance GHC.Show.Show Network.AWS.IAM.UpdateAccessKey.UpdateAccessKeyResponse
- Network.AWS.IAM.UpdateAccessKey: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateAccessKey.UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: uakAccessKeyId :: Lens' UpdateAccessKey AccessKey
- Network.AWS.IAM.UpdateAccessKey: uakStatus :: Lens' UpdateAccessKey StatusType
- Network.AWS.IAM.UpdateAccessKey: uakUserName :: Lens' UpdateAccessKey (Maybe Text)
- Network.AWS.IAM.UpdateAccessKey: updateAccessKey :: AccessKey -> StatusType -> UpdateAccessKey
- Network.AWS.IAM.UpdateAccessKey: updateAccessKeyResponse :: UpdateAccessKeyResponse
- Network.AWS.IAM.UpdateAccountPasswordPolicy: data UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: data UpdateAccountPasswordPolicyResponse
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Data.Data.Data Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Data.Data.Data Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance GHC.Classes.Eq Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance GHC.Classes.Eq Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance GHC.Generics.Generic Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance GHC.Generics.Generic Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance GHC.Read.Read Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance GHC.Read.Read Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance GHC.Show.Show Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance GHC.Show.Show Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappAllowUsersToChangePassword :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappHardExpiry :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappMaxPasswordAge :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappMinimumPasswordLength :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappPasswordReusePrevention :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappRequireLowercaseCharacters :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappRequireNumbers :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappRequireSymbols :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: uappRequireUppercaseCharacters :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
- Network.AWS.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy :: UpdateAccountPasswordPolicy
- Network.AWS.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicyResponse :: UpdateAccountPasswordPolicyResponse
- Network.AWS.IAM.UpdateAssumeRolePolicy: data UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: data UpdateAssumeRolePolicyResponse
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Data.Data.Data Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Data.Data.Data Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance GHC.Classes.Eq Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance GHC.Generics.Generic Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance GHC.Read.Read Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance GHC.Read.Read Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance GHC.Show.Show Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance GHC.Show.Show Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: uarpPolicyDocument :: Lens' UpdateAssumeRolePolicy Text
- Network.AWS.IAM.UpdateAssumeRolePolicy: uarpRoleName :: Lens' UpdateAssumeRolePolicy Text
- Network.AWS.IAM.UpdateAssumeRolePolicy: updateAssumeRolePolicy :: Text -> Text -> UpdateAssumeRolePolicy
- Network.AWS.IAM.UpdateAssumeRolePolicy: updateAssumeRolePolicyResponse :: UpdateAssumeRolePolicyResponse
- Network.AWS.IAM.UpdateGroup: data UpdateGroup
- Network.AWS.IAM.UpdateGroup: data UpdateGroupResponse
- Network.AWS.IAM.UpdateGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateGroup.UpdateGroupResponse
- Network.AWS.IAM.UpdateGroup: instance Data.Data.Data Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance Data.Data.Data Network.AWS.IAM.UpdateGroup.UpdateGroupResponse
- Network.AWS.IAM.UpdateGroup: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance GHC.Classes.Eq Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance GHC.Classes.Eq Network.AWS.IAM.UpdateGroup.UpdateGroupResponse
- Network.AWS.IAM.UpdateGroup: instance GHC.Generics.Generic Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance GHC.Generics.Generic Network.AWS.IAM.UpdateGroup.UpdateGroupResponse
- Network.AWS.IAM.UpdateGroup: instance GHC.Read.Read Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance GHC.Read.Read Network.AWS.IAM.UpdateGroup.UpdateGroupResponse
- Network.AWS.IAM.UpdateGroup: instance GHC.Show.Show Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance GHC.Show.Show Network.AWS.IAM.UpdateGroup.UpdateGroupResponse
- Network.AWS.IAM.UpdateGroup: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateGroup.UpdateGroup
- Network.AWS.IAM.UpdateGroup: ugGroupName :: Lens' UpdateGroup Text
- Network.AWS.IAM.UpdateGroup: ugNewGroupName :: Lens' UpdateGroup (Maybe Text)
- Network.AWS.IAM.UpdateGroup: ugNewPath :: Lens' UpdateGroup (Maybe Text)
- Network.AWS.IAM.UpdateGroup: updateGroup :: Text -> UpdateGroup
- Network.AWS.IAM.UpdateGroup: updateGroupResponse :: UpdateGroupResponse
- Network.AWS.IAM.UpdateLoginProfile: data UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: data UpdateLoginProfileResponse
- Network.AWS.IAM.UpdateLoginProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
- Network.AWS.IAM.UpdateLoginProfile: instance Data.Data.Data Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance Data.Data.Data Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
- Network.AWS.IAM.UpdateLoginProfile: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance GHC.Classes.Eq Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance GHC.Classes.Eq Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
- Network.AWS.IAM.UpdateLoginProfile: instance GHC.Generics.Generic Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance GHC.Generics.Generic Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
- Network.AWS.IAM.UpdateLoginProfile: instance GHC.Read.Read Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
- Network.AWS.IAM.UpdateLoginProfile: instance GHC.Show.Show Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance GHC.Show.Show Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
- Network.AWS.IAM.UpdateLoginProfile: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateLoginProfile.UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: ulpPassword :: Lens' UpdateLoginProfile (Maybe Text)
- Network.AWS.IAM.UpdateLoginProfile: ulpPasswordResetRequired :: Lens' UpdateLoginProfile (Maybe Bool)
- Network.AWS.IAM.UpdateLoginProfile: ulpUserName :: Lens' UpdateLoginProfile Text
- Network.AWS.IAM.UpdateLoginProfile: updateLoginProfile :: Text -> UpdateLoginProfile
- Network.AWS.IAM.UpdateLoginProfile: updateLoginProfileResponse :: UpdateLoginProfileResponse
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: data UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: data UpdateOpenIdConnectProviderThumbprintResponse
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprintResponse
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Data.Data.Data Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Data.Data.Data Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprintResponse
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance GHC.Classes.Eq Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance GHC.Classes.Eq Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprintResponse
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance GHC.Generics.Generic Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance GHC.Generics.Generic Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprintResponse
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance GHC.Read.Read Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance GHC.Read.Read Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprintResponse
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance GHC.Show.Show Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance GHC.Show.Show Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprintResponse
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint.UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: uoicptOpenIdConnectProviderARN :: Lens' UpdateOpenIdConnectProviderThumbprint Text
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: uoicptThumbprintList :: Lens' UpdateOpenIdConnectProviderThumbprint [Text]
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: updateOpenIdConnectProviderThumbprint :: Text -> UpdateOpenIdConnectProviderThumbprint
- Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint: updateOpenIdConnectProviderThumbprintResponse :: UpdateOpenIdConnectProviderThumbprintResponse
- Network.AWS.IAM.UpdateRole: data UpdateRole
- Network.AWS.IAM.UpdateRole: data UpdateRoleResponse
- Network.AWS.IAM.UpdateRole: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateRole.UpdateRoleResponse
- Network.AWS.IAM.UpdateRole: instance Data.Data.Data Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance Data.Data.Data Network.AWS.IAM.UpdateRole.UpdateRoleResponse
- Network.AWS.IAM.UpdateRole: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance GHC.Classes.Eq Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance GHC.Classes.Eq Network.AWS.IAM.UpdateRole.UpdateRoleResponse
- Network.AWS.IAM.UpdateRole: instance GHC.Generics.Generic Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance GHC.Generics.Generic Network.AWS.IAM.UpdateRole.UpdateRoleResponse
- Network.AWS.IAM.UpdateRole: instance GHC.Read.Read Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance GHC.Read.Read Network.AWS.IAM.UpdateRole.UpdateRoleResponse
- Network.AWS.IAM.UpdateRole: instance GHC.Show.Show Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance GHC.Show.Show Network.AWS.IAM.UpdateRole.UpdateRoleResponse
- Network.AWS.IAM.UpdateRole: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateRole.UpdateRole
- Network.AWS.IAM.UpdateRole: updateRole :: Text -> UpdateRole
- Network.AWS.IAM.UpdateRole: updateRoleResponse :: Int -> UpdateRoleResponse
- Network.AWS.IAM.UpdateRole: urDescription :: Lens' UpdateRole (Maybe Text)
- Network.AWS.IAM.UpdateRole: urMaxSessionDuration :: Lens' UpdateRole (Maybe Natural)
- Network.AWS.IAM.UpdateRole: urRoleName :: Lens' UpdateRole Text
- Network.AWS.IAM.UpdateRole: urrsResponseStatus :: Lens' UpdateRoleResponse Int
- Network.AWS.IAM.UpdateRoleDescription: data UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: data UpdateRoleDescriptionResponse
- Network.AWS.IAM.UpdateRoleDescription: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
- Network.AWS.IAM.UpdateRoleDescription: instance Data.Data.Data Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance Data.Data.Data Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
- Network.AWS.IAM.UpdateRoleDescription: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance GHC.Classes.Eq Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance GHC.Classes.Eq Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
- Network.AWS.IAM.UpdateRoleDescription: instance GHC.Generics.Generic Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance GHC.Generics.Generic Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
- Network.AWS.IAM.UpdateRoleDescription: instance GHC.Read.Read Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance GHC.Read.Read Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
- Network.AWS.IAM.UpdateRoleDescription: instance GHC.Show.Show Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance GHC.Show.Show Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
- Network.AWS.IAM.UpdateRoleDescription: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateRoleDescription.UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: updateRoleDescription :: Text -> Text -> UpdateRoleDescription
- Network.AWS.IAM.UpdateRoleDescription: updateRoleDescriptionResponse :: Int -> UpdateRoleDescriptionResponse
- Network.AWS.IAM.UpdateRoleDescription: urdDescription :: Lens' UpdateRoleDescription Text
- Network.AWS.IAM.UpdateRoleDescription: urdRoleName :: Lens' UpdateRoleDescription Text
- Network.AWS.IAM.UpdateRoleDescription: urdrsResponseStatus :: Lens' UpdateRoleDescriptionResponse Int
- Network.AWS.IAM.UpdateRoleDescription: urdrsRole :: Lens' UpdateRoleDescriptionResponse (Maybe Role)
- Network.AWS.IAM.UpdateSAMLProvider: data UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: data UpdateSAMLProviderResponse
- Network.AWS.IAM.UpdateSAMLProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
- Network.AWS.IAM.UpdateSAMLProvider: instance Data.Data.Data Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance Data.Data.Data Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
- Network.AWS.IAM.UpdateSAMLProvider: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance GHC.Classes.Eq Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance GHC.Classes.Eq Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
- Network.AWS.IAM.UpdateSAMLProvider: instance GHC.Generics.Generic Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance GHC.Generics.Generic Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
- Network.AWS.IAM.UpdateSAMLProvider: instance GHC.Read.Read Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance GHC.Read.Read Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
- Network.AWS.IAM.UpdateSAMLProvider: instance GHC.Show.Show Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance GHC.Show.Show Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
- Network.AWS.IAM.UpdateSAMLProvider: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateSAMLProvider.UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: updateSAMLProvider :: Text -> Text -> UpdateSAMLProvider
- Network.AWS.IAM.UpdateSAMLProvider: updateSAMLProviderResponse :: Int -> UpdateSAMLProviderResponse
- Network.AWS.IAM.UpdateSAMLProvider: usamlpSAMLMetadataDocument :: Lens' UpdateSAMLProvider Text
- Network.AWS.IAM.UpdateSAMLProvider: usamlpSAMLProviderARN :: Lens' UpdateSAMLProvider Text
- Network.AWS.IAM.UpdateSAMLProvider: usamlprsResponseStatus :: Lens' UpdateSAMLProviderResponse Int
- Network.AWS.IAM.UpdateSAMLProvider: usamlprsSAMLProviderARN :: Lens' UpdateSAMLProviderResponse (Maybe Text)
- Network.AWS.IAM.UpdateSSHPublicKey: data UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: data UpdateSSHPublicKeyResponse
- Network.AWS.IAM.UpdateSSHPublicKey: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
- Network.AWS.IAM.UpdateSSHPublicKey: instance Data.Data.Data Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance Data.Data.Data Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
- Network.AWS.IAM.UpdateSSHPublicKey: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance GHC.Classes.Eq Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance GHC.Classes.Eq Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
- Network.AWS.IAM.UpdateSSHPublicKey: instance GHC.Generics.Generic Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance GHC.Generics.Generic Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
- Network.AWS.IAM.UpdateSSHPublicKey: instance GHC.Read.Read Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance GHC.Read.Read Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
- Network.AWS.IAM.UpdateSSHPublicKey: instance GHC.Show.Show Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance GHC.Show.Show Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
- Network.AWS.IAM.UpdateSSHPublicKey: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: updateSSHPublicKey :: Text -> Text -> StatusType -> UpdateSSHPublicKey
- Network.AWS.IAM.UpdateSSHPublicKey: updateSSHPublicKeyResponse :: UpdateSSHPublicKeyResponse
- Network.AWS.IAM.UpdateSSHPublicKey: uspkSSHPublicKeyId :: Lens' UpdateSSHPublicKey Text
- Network.AWS.IAM.UpdateSSHPublicKey: uspkStatus :: Lens' UpdateSSHPublicKey StatusType
- Network.AWS.IAM.UpdateSSHPublicKey: uspkUserName :: Lens' UpdateSSHPublicKey Text
- Network.AWS.IAM.UpdateServerCertificate: data UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: data UpdateServerCertificateResponse
- Network.AWS.IAM.UpdateServerCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
- Network.AWS.IAM.UpdateServerCertificate: instance Data.Data.Data Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance Data.Data.Data Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
- Network.AWS.IAM.UpdateServerCertificate: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance GHC.Classes.Eq Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance GHC.Classes.Eq Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
- Network.AWS.IAM.UpdateServerCertificate: instance GHC.Generics.Generic Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance GHC.Generics.Generic Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
- Network.AWS.IAM.UpdateServerCertificate: instance GHC.Read.Read Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance GHC.Read.Read Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
- Network.AWS.IAM.UpdateServerCertificate: instance GHC.Show.Show Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance GHC.Show.Show Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
- Network.AWS.IAM.UpdateServerCertificate: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateServerCertificate.UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: uNewPath :: Lens' UpdateServerCertificate (Maybe Text)
- Network.AWS.IAM.UpdateServerCertificate: uNewServerCertificateName :: Lens' UpdateServerCertificate (Maybe Text)
- Network.AWS.IAM.UpdateServerCertificate: uServerCertificateName :: Lens' UpdateServerCertificate Text
- Network.AWS.IAM.UpdateServerCertificate: updateServerCertificate :: Text -> UpdateServerCertificate
- Network.AWS.IAM.UpdateServerCertificate: updateServerCertificateResponse :: UpdateServerCertificateResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: data UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: data UpdateServiceSpecificCredentialResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Data.Data.Data Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Data.Data.Data Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance GHC.Classes.Eq Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance GHC.Classes.Eq Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance GHC.Generics.Generic Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance GHC.Generics.Generic Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance GHC.Read.Read Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance GHC.Read.Read Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance GHC.Show.Show Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance GHC.Show.Show Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: updateServiceSpecificCredential :: Text -> StatusType -> UpdateServiceSpecificCredential
- Network.AWS.IAM.UpdateServiceSpecificCredential: updateServiceSpecificCredentialResponse :: UpdateServiceSpecificCredentialResponse
- Network.AWS.IAM.UpdateServiceSpecificCredential: usscServiceSpecificCredentialId :: Lens' UpdateServiceSpecificCredential Text
- Network.AWS.IAM.UpdateServiceSpecificCredential: usscStatus :: Lens' UpdateServiceSpecificCredential StatusType
- Network.AWS.IAM.UpdateServiceSpecificCredential: usscUserName :: Lens' UpdateServiceSpecificCredential (Maybe Text)
- Network.AWS.IAM.UpdateSigningCertificate: data UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: data UpdateSigningCertificateResponse
- Network.AWS.IAM.UpdateSigningCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
- Network.AWS.IAM.UpdateSigningCertificate: instance Data.Data.Data Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance Data.Data.Data Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
- Network.AWS.IAM.UpdateSigningCertificate: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance GHC.Classes.Eq Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance GHC.Classes.Eq Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
- Network.AWS.IAM.UpdateSigningCertificate: instance GHC.Generics.Generic Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance GHC.Generics.Generic Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
- Network.AWS.IAM.UpdateSigningCertificate: instance GHC.Read.Read Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance GHC.Read.Read Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
- Network.AWS.IAM.UpdateSigningCertificate: instance GHC.Show.Show Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance GHC.Show.Show Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
- Network.AWS.IAM.UpdateSigningCertificate: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateSigningCertificate.UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: updateSigningCertificate :: Text -> StatusType -> UpdateSigningCertificate
- Network.AWS.IAM.UpdateSigningCertificate: updateSigningCertificateResponse :: UpdateSigningCertificateResponse
- Network.AWS.IAM.UpdateSigningCertificate: uscCertificateId :: Lens' UpdateSigningCertificate Text
- Network.AWS.IAM.UpdateSigningCertificate: uscStatus :: Lens' UpdateSigningCertificate StatusType
- Network.AWS.IAM.UpdateSigningCertificate: uscUserName :: Lens' UpdateSigningCertificate (Maybe Text)
- Network.AWS.IAM.UpdateUser: data UpdateUser
- Network.AWS.IAM.UpdateUser: data UpdateUserResponse
- Network.AWS.IAM.UpdateUser: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance Control.DeepSeq.NFData Network.AWS.IAM.UpdateUser.UpdateUserResponse
- Network.AWS.IAM.UpdateUser: instance Data.Data.Data Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance Data.Data.Data Network.AWS.IAM.UpdateUser.UpdateUserResponse
- Network.AWS.IAM.UpdateUser: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance GHC.Classes.Eq Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance GHC.Classes.Eq Network.AWS.IAM.UpdateUser.UpdateUserResponse
- Network.AWS.IAM.UpdateUser: instance GHC.Generics.Generic Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance GHC.Generics.Generic Network.AWS.IAM.UpdateUser.UpdateUserResponse
- Network.AWS.IAM.UpdateUser: instance GHC.Read.Read Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance GHC.Read.Read Network.AWS.IAM.UpdateUser.UpdateUserResponse
- Network.AWS.IAM.UpdateUser: instance GHC.Show.Show Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance GHC.Show.Show Network.AWS.IAM.UpdateUser.UpdateUserResponse
- Network.AWS.IAM.UpdateUser: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UpdateUser.UpdateUser
- Network.AWS.IAM.UpdateUser: updateUser :: Text -> UpdateUser
- Network.AWS.IAM.UpdateUser: updateUserResponse :: UpdateUserResponse
- Network.AWS.IAM.UpdateUser: uuNewPath :: Lens' UpdateUser (Maybe Text)
- Network.AWS.IAM.UpdateUser: uuNewUserName :: Lens' UpdateUser (Maybe Text)
- Network.AWS.IAM.UpdateUser: uuUserName :: Lens' UpdateUser Text
- Network.AWS.IAM.UploadSSHPublicKey: data UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: data UploadSSHPublicKeyResponse
- Network.AWS.IAM.UploadSSHPublicKey: instance Control.DeepSeq.NFData Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance Control.DeepSeq.NFData Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
- Network.AWS.IAM.UploadSSHPublicKey: instance Data.Data.Data Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance Data.Data.Data Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
- Network.AWS.IAM.UploadSSHPublicKey: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance GHC.Classes.Eq Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance GHC.Classes.Eq Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
- Network.AWS.IAM.UploadSSHPublicKey: instance GHC.Generics.Generic Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance GHC.Generics.Generic Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
- Network.AWS.IAM.UploadSSHPublicKey: instance GHC.Read.Read Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance GHC.Read.Read Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
- Network.AWS.IAM.UploadSSHPublicKey: instance GHC.Show.Show Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance GHC.Show.Show Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
- Network.AWS.IAM.UploadSSHPublicKey: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UploadSSHPublicKey.UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: uploadSSHPublicKey :: Text -> Text -> UploadSSHPublicKey
- Network.AWS.IAM.UploadSSHPublicKey: uploadSSHPublicKeyResponse :: Int -> UploadSSHPublicKeyResponse
- Network.AWS.IAM.UploadSSHPublicKey: uspkrsResponseStatus :: Lens' UploadSSHPublicKeyResponse Int
- Network.AWS.IAM.UploadSSHPublicKey: uspkrsSSHPublicKey :: Lens' UploadSSHPublicKeyResponse (Maybe SSHPublicKey)
- Network.AWS.IAM.UploadSSHPublicKey: usshpkSSHPublicKeyBody :: Lens' UploadSSHPublicKey Text
- Network.AWS.IAM.UploadSSHPublicKey: usshpkUserName :: Lens' UploadSSHPublicKey Text
- Network.AWS.IAM.UploadServerCertificate: data UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: data UploadServerCertificateResponse
- Network.AWS.IAM.UploadServerCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.UploadServerCertificate.UploadServerCertificateResponse
- Network.AWS.IAM.UploadServerCertificate: instance Data.Data.Data Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance Data.Data.Data Network.AWS.IAM.UploadServerCertificate.UploadServerCertificateResponse
- Network.AWS.IAM.UploadServerCertificate: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance GHC.Classes.Eq Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance GHC.Classes.Eq Network.AWS.IAM.UploadServerCertificate.UploadServerCertificateResponse
- Network.AWS.IAM.UploadServerCertificate: instance GHC.Generics.Generic Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance GHC.Generics.Generic Network.AWS.IAM.UploadServerCertificate.UploadServerCertificateResponse
- Network.AWS.IAM.UploadServerCertificate: instance GHC.Read.Read Network.AWS.IAM.UploadServerCertificate.UploadServerCertificateResponse
- Network.AWS.IAM.UploadServerCertificate: instance GHC.Show.Show Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance GHC.Show.Show Network.AWS.IAM.UploadServerCertificate.UploadServerCertificateResponse
- Network.AWS.IAM.UploadServerCertificate: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UploadServerCertificate.UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: uploadServerCertificate :: Text -> Text -> Text -> UploadServerCertificate
- Network.AWS.IAM.UploadServerCertificate: uploadServerCertificateResponse :: Int -> UploadServerCertificateResponse
- Network.AWS.IAM.UploadServerCertificate: ursResponseStatus :: Lens' UploadServerCertificateResponse Int
- Network.AWS.IAM.UploadServerCertificate: ursServerCertificateMetadata :: Lens' UploadServerCertificateResponse (Maybe ServerCertificateMetadata)
- Network.AWS.IAM.UploadServerCertificate: uscCertificateBody :: Lens' UploadServerCertificate Text
- Network.AWS.IAM.UploadServerCertificate: uscCertificateChain :: Lens' UploadServerCertificate (Maybe Text)
- Network.AWS.IAM.UploadServerCertificate: uscPath :: Lens' UploadServerCertificate (Maybe Text)
- Network.AWS.IAM.UploadServerCertificate: uscPrivateKey :: Lens' UploadServerCertificate Text
- Network.AWS.IAM.UploadServerCertificate: uscServerCertificateName :: Lens' UploadServerCertificate Text
- Network.AWS.IAM.UploadSigningCertificate: data UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: data UploadSigningCertificateResponse
- Network.AWS.IAM.UploadSigningCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance Control.DeepSeq.NFData Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
- Network.AWS.IAM.UploadSigningCertificate: instance Data.Data.Data Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance Data.Data.Data Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
- Network.AWS.IAM.UploadSigningCertificate: instance Data.Hashable.Class.Hashable Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance GHC.Classes.Eq Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance GHC.Classes.Eq Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
- Network.AWS.IAM.UploadSigningCertificate: instance GHC.Generics.Generic Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance GHC.Generics.Generic Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
- Network.AWS.IAM.UploadSigningCertificate: instance GHC.Read.Read Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance GHC.Read.Read Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
- Network.AWS.IAM.UploadSigningCertificate: instance GHC.Show.Show Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance GHC.Show.Show Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
- Network.AWS.IAM.UploadSigningCertificate: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance Network.AWS.Data.Path.ToPath Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance Network.AWS.Data.Query.ToQuery Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: instance Network.AWS.Types.AWSRequest Network.AWS.IAM.UploadSigningCertificate.UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: uplCertificateBody :: Lens' UploadSigningCertificate Text
- Network.AWS.IAM.UploadSigningCertificate: uplUserName :: Lens' UploadSigningCertificate (Maybe Text)
- Network.AWS.IAM.UploadSigningCertificate: uploadSigningCertificate :: Text -> UploadSigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: uploadSigningCertificateResponse :: Int -> SigningCertificate -> UploadSigningCertificateResponse
- Network.AWS.IAM.UploadSigningCertificate: uscrsCertificate :: Lens' UploadSigningCertificateResponse SigningCertificate
- Network.AWS.IAM.UploadSigningCertificate: uscrsResponseStatus :: Lens' UploadSigningCertificateResponse Int
- Network.AWS.IAM.Waiters: instanceProfileExists :: Wait GetInstanceProfile
- Network.AWS.IAM.Waiters: userExists :: Wait GetUser
+ Amazonka.IAM: AccessAdvisorUsageGranularityType' :: Text -> AccessAdvisorUsageGranularityType
+ Amazonka.IAM: AccessDetail' :: Maybe Text -> Maybe ISO8601 -> Maybe Text -> Maybe Int -> Text -> Text -> AccessDetail
+ Amazonka.IAM: AccessKeyInfo' :: Maybe ISO8601 -> Text -> AccessKey -> StatusType -> Sensitive Text -> AccessKeyInfo
+ Amazonka.IAM: AccessKeyLastUsed' :: ISO8601 -> Text -> Text -> AccessKeyLastUsed
+ Amazonka.IAM: AccessKeyMetadata' :: Maybe AccessKey -> Maybe ISO8601 -> Maybe StatusType -> Maybe Text -> AccessKeyMetadata
+ Amazonka.IAM: AddClientIDToOpenIDConnectProvider' :: Text -> Text -> AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM: AddClientIDToOpenIDConnectProviderResponse' :: AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM: AddRoleToInstanceProfile' :: Text -> Text -> AddRoleToInstanceProfile
+ Amazonka.IAM: AddRoleToInstanceProfileResponse' :: AddRoleToInstanceProfileResponse
+ Amazonka.IAM: AddUserToGroup' :: Text -> Text -> AddUserToGroup
+ Amazonka.IAM: AddUserToGroupResponse' :: AddUserToGroupResponse
+ Amazonka.IAM: AssignmentStatusType' :: Text -> AssignmentStatusType
+ Amazonka.IAM: AttachGroupPolicy' :: Text -> Text -> AttachGroupPolicy
+ Amazonka.IAM: AttachGroupPolicyResponse' :: AttachGroupPolicyResponse
+ Amazonka.IAM: AttachRolePolicy' :: Text -> Text -> AttachRolePolicy
+ Amazonka.IAM: AttachRolePolicyResponse' :: AttachRolePolicyResponse
+ Amazonka.IAM: AttachUserPolicy' :: Text -> Text -> AttachUserPolicy
+ Amazonka.IAM: AttachUserPolicyResponse' :: AttachUserPolicyResponse
+ Amazonka.IAM: AttachedPermissionsBoundary' :: Maybe Text -> Maybe PermissionsBoundaryAttachmentType -> AttachedPermissionsBoundary
+ Amazonka.IAM: AttachedPolicy' :: Maybe Text -> Maybe Text -> AttachedPolicy
+ Amazonka.IAM: ChangePassword' :: Sensitive Text -> Sensitive Text -> ChangePassword
+ Amazonka.IAM: ChangePasswordResponse' :: ChangePasswordResponse
+ Amazonka.IAM: ContextEntry' :: Maybe Text -> Maybe ContextKeyTypeEnum -> Maybe [Text] -> ContextEntry
+ Amazonka.IAM: ContextKeyTypeEnum' :: Text -> ContextKeyTypeEnum
+ Amazonka.IAM: CreateAccessKey' :: Maybe Text -> CreateAccessKey
+ Amazonka.IAM: CreateAccessKeyResponse' :: Int -> AccessKeyInfo -> CreateAccessKeyResponse
+ Amazonka.IAM: CreateAccountAlias' :: Text -> CreateAccountAlias
+ Amazonka.IAM: CreateAccountAliasResponse' :: CreateAccountAliasResponse
+ Amazonka.IAM: CreateGroup' :: Maybe Text -> Text -> CreateGroup
+ Amazonka.IAM: CreateGroupResponse' :: Int -> Group -> CreateGroupResponse
+ Amazonka.IAM: CreateInstanceProfile' :: Maybe Text -> Maybe [Tag] -> Text -> CreateInstanceProfile
+ Amazonka.IAM: CreateInstanceProfileResponse' :: Int -> InstanceProfile -> CreateInstanceProfileResponse
+ Amazonka.IAM: CreateLoginProfile' :: Maybe Bool -> Text -> Sensitive Text -> CreateLoginProfile
+ Amazonka.IAM: CreateLoginProfileResponse' :: Int -> LoginProfile -> CreateLoginProfileResponse
+ Amazonka.IAM: CreateOpenIDConnectProvider' :: Maybe [Text] -> Maybe [Tag] -> Text -> [Text] -> CreateOpenIDConnectProvider
+ Amazonka.IAM: CreateOpenIDConnectProviderResponse' :: Maybe Text -> Maybe [Tag] -> Int -> CreateOpenIDConnectProviderResponse
+ Amazonka.IAM: CreatePolicy' :: Maybe Text -> Maybe Text -> Maybe [Tag] -> Text -> Text -> CreatePolicy
+ Amazonka.IAM: CreatePolicyResponse' :: Maybe Policy -> Int -> CreatePolicyResponse
+ Amazonka.IAM: CreatePolicyVersion' :: Maybe Bool -> Text -> Text -> CreatePolicyVersion
+ Amazonka.IAM: CreatePolicyVersionResponse' :: Maybe PolicyVersion -> Int -> CreatePolicyVersionResponse
+ Amazonka.IAM: CreateRole' :: Maybe Text -> Maybe Natural -> Maybe Text -> Maybe Text -> Maybe [Tag] -> Text -> Text -> CreateRole
+ Amazonka.IAM: CreateRoleResponse' :: Int -> Role -> CreateRoleResponse
+ Amazonka.IAM: CreateSAMLProvider' :: Maybe [Tag] -> Text -> Text -> CreateSAMLProvider
+ Amazonka.IAM: CreateSAMLProviderResponse' :: Maybe Text -> Maybe [Tag] -> Int -> CreateSAMLProviderResponse
+ Amazonka.IAM: CreateServiceLinkedRole' :: Maybe Text -> Maybe Text -> Text -> CreateServiceLinkedRole
+ Amazonka.IAM: CreateServiceLinkedRoleResponse' :: Maybe Role -> Int -> CreateServiceLinkedRoleResponse
+ Amazonka.IAM: CreateServiceSpecificCredential' :: Text -> Text -> CreateServiceSpecificCredential
+ Amazonka.IAM: CreateServiceSpecificCredentialResponse' :: Maybe ServiceSpecificCredential -> Int -> CreateServiceSpecificCredentialResponse
+ Amazonka.IAM: CreateUser' :: Maybe Text -> Maybe Text -> Maybe [Tag] -> Text -> CreateUser
+ Amazonka.IAM: CreateUserResponse' :: Maybe User -> Int -> CreateUserResponse
+ Amazonka.IAM: CreateVirtualMFADevice' :: Maybe Text -> Maybe [Tag] -> Text -> CreateVirtualMFADevice
+ Amazonka.IAM: CreateVirtualMFADeviceResponse' :: Int -> VirtualMFADevice -> CreateVirtualMFADeviceResponse
+ Amazonka.IAM: DeactivateMFADevice' :: Text -> Text -> DeactivateMFADevice
+ Amazonka.IAM: DeactivateMFADeviceResponse' :: DeactivateMFADeviceResponse
+ Amazonka.IAM: DeleteAccessKey' :: Maybe Text -> AccessKey -> DeleteAccessKey
+ Amazonka.IAM: DeleteAccessKeyResponse' :: DeleteAccessKeyResponse
+ Amazonka.IAM: DeleteAccountAlias' :: Text -> DeleteAccountAlias
+ Amazonka.IAM: DeleteAccountAliasResponse' :: DeleteAccountAliasResponse
+ Amazonka.IAM: DeleteAccountPasswordPolicy' :: DeleteAccountPasswordPolicy
+ Amazonka.IAM: DeleteAccountPasswordPolicyResponse' :: DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM: DeleteGroup' :: Text -> DeleteGroup
+ Amazonka.IAM: DeleteGroupPolicy' :: Text -> Text -> DeleteGroupPolicy
+ Amazonka.IAM: DeleteGroupPolicyResponse' :: DeleteGroupPolicyResponse
+ Amazonka.IAM: DeleteGroupResponse' :: DeleteGroupResponse
+ Amazonka.IAM: DeleteInstanceProfile' :: Text -> DeleteInstanceProfile
+ Amazonka.IAM: DeleteInstanceProfileResponse' :: DeleteInstanceProfileResponse
+ Amazonka.IAM: DeleteLoginProfile' :: Text -> DeleteLoginProfile
+ Amazonka.IAM: DeleteLoginProfileResponse' :: DeleteLoginProfileResponse
+ Amazonka.IAM: DeleteOpenIDConnectProvider' :: Text -> DeleteOpenIDConnectProvider
+ Amazonka.IAM: DeleteOpenIDConnectProviderResponse' :: DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM: DeletePolicy' :: Text -> DeletePolicy
+ Amazonka.IAM: DeletePolicyResponse' :: DeletePolicyResponse
+ Amazonka.IAM: DeletePolicyVersion' :: Text -> Text -> DeletePolicyVersion
+ Amazonka.IAM: DeletePolicyVersionResponse' :: DeletePolicyVersionResponse
+ Amazonka.IAM: DeleteRole' :: Text -> DeleteRole
+ Amazonka.IAM: DeleteRolePermissionsBoundary' :: Text -> DeleteRolePermissionsBoundary
+ Amazonka.IAM: DeleteRolePermissionsBoundaryResponse' :: DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM: DeleteRolePolicy' :: Text -> Text -> DeleteRolePolicy
+ Amazonka.IAM: DeleteRolePolicyResponse' :: DeleteRolePolicyResponse
+ Amazonka.IAM: DeleteRoleResponse' :: DeleteRoleResponse
+ Amazonka.IAM: DeleteSAMLProvider' :: Text -> DeleteSAMLProvider
+ Amazonka.IAM: DeleteSAMLProviderResponse' :: DeleteSAMLProviderResponse
+ Amazonka.IAM: DeleteSSHPublicKey' :: Text -> Text -> DeleteSSHPublicKey
+ Amazonka.IAM: DeleteSSHPublicKeyResponse' :: DeleteSSHPublicKeyResponse
+ Amazonka.IAM: DeleteServerCertificate' :: Text -> DeleteServerCertificate
+ Amazonka.IAM: DeleteServerCertificateResponse' :: DeleteServerCertificateResponse
+ Amazonka.IAM: DeleteServiceLinkedRole' :: Text -> DeleteServiceLinkedRole
+ Amazonka.IAM: DeleteServiceLinkedRoleResponse' :: Int -> Text -> DeleteServiceLinkedRoleResponse
+ Amazonka.IAM: DeleteServiceSpecificCredential' :: Maybe Text -> Text -> DeleteServiceSpecificCredential
+ Amazonka.IAM: DeleteServiceSpecificCredentialResponse' :: DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM: DeleteSigningCertificate' :: Maybe Text -> Text -> DeleteSigningCertificate
+ Amazonka.IAM: DeleteSigningCertificateResponse' :: DeleteSigningCertificateResponse
+ Amazonka.IAM: DeleteUser' :: Text -> DeleteUser
+ Amazonka.IAM: DeleteUserPermissionsBoundary' :: Text -> DeleteUserPermissionsBoundary
+ Amazonka.IAM: DeleteUserPermissionsBoundaryResponse' :: DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM: DeleteUserPolicy' :: Text -> Text -> DeleteUserPolicy
+ Amazonka.IAM: DeleteUserPolicyResponse' :: DeleteUserPolicyResponse
+ Amazonka.IAM: DeleteUserResponse' :: DeleteUserResponse
+ Amazonka.IAM: DeleteVirtualMFADevice' :: Text -> DeleteVirtualMFADevice
+ Amazonka.IAM: DeleteVirtualMFADeviceResponse' :: DeleteVirtualMFADeviceResponse
+ Amazonka.IAM: DeletionTaskFailureReasonType' :: Maybe Text -> Maybe [RoleUsageType] -> DeletionTaskFailureReasonType
+ Amazonka.IAM: DeletionTaskStatusType' :: Text -> DeletionTaskStatusType
+ Amazonka.IAM: DetachGroupPolicy' :: Text -> Text -> DetachGroupPolicy
+ Amazonka.IAM: DetachGroupPolicyResponse' :: DetachGroupPolicyResponse
+ Amazonka.IAM: DetachRolePolicy' :: Text -> Text -> DetachRolePolicy
+ Amazonka.IAM: DetachRolePolicyResponse' :: DetachRolePolicyResponse
+ Amazonka.IAM: DetachUserPolicy' :: Text -> Text -> DetachUserPolicy
+ Amazonka.IAM: DetachUserPolicyResponse' :: DetachUserPolicyResponse
+ Amazonka.IAM: EnableMFADevice' :: Text -> Text -> Text -> Text -> EnableMFADevice
+ Amazonka.IAM: EnableMFADeviceResponse' :: EnableMFADeviceResponse
+ Amazonka.IAM: EncodingType' :: Text -> EncodingType
+ Amazonka.IAM: EntityDetails' :: Maybe ISO8601 -> EntityInfo -> EntityDetails
+ Amazonka.IAM: EntityInfo' :: Maybe Text -> Text -> Text -> PolicyOwnerEntityType -> Text -> EntityInfo
+ Amazonka.IAM: EntityType' :: Text -> EntityType
+ Amazonka.IAM: ErrorDetails' :: Text -> Text -> ErrorDetails
+ Amazonka.IAM: EvaluationResult' :: Maybe (HashMap Text PolicyEvaluationDecisionType) -> Maybe Text -> Maybe [Statement] -> Maybe [Text] -> Maybe OrganizationsDecisionDetail -> Maybe PermissionsBoundaryDecisionDetail -> Maybe [ResourceSpecificResult] -> Text -> PolicyEvaluationDecisionType -> EvaluationResult
+ Amazonka.IAM: GenerateCredentialReport' :: GenerateCredentialReport
+ Amazonka.IAM: GenerateCredentialReportResponse' :: Maybe Text -> Maybe ReportStateType -> Int -> GenerateCredentialReportResponse
+ Amazonka.IAM: GenerateOrganizationsAccessReport' :: Maybe Text -> Text -> GenerateOrganizationsAccessReport
+ Amazonka.IAM: GenerateOrganizationsAccessReportResponse' :: Maybe Text -> Int -> GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM: GenerateServiceLastAccessedDetails' :: Maybe AccessAdvisorUsageGranularityType -> Text -> GenerateServiceLastAccessedDetails
+ Amazonka.IAM: GenerateServiceLastAccessedDetailsResponse' :: Maybe Text -> Int -> GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM: GetAccessKeyLastUsed' :: AccessKey -> GetAccessKeyLastUsed
+ Amazonka.IAM: GetAccessKeyLastUsedResponse' :: Maybe AccessKeyLastUsed -> Maybe Text -> Int -> GetAccessKeyLastUsedResponse
+ Amazonka.IAM: GetAccountAuthorizationDetails' :: Maybe [EntityType] -> Maybe Text -> Maybe Natural -> GetAccountAuthorizationDetails
+ Amazonka.IAM: GetAccountAuthorizationDetailsResponse' :: Maybe [GroupDetail] -> Maybe Bool -> Maybe Text -> Maybe [ManagedPolicyDetail] -> Maybe [RoleDetail] -> Maybe [UserDetail] -> Int -> GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM: GetAccountPasswordPolicy' :: GetAccountPasswordPolicy
+ Amazonka.IAM: GetAccountPasswordPolicyResponse' :: Int -> PasswordPolicy -> GetAccountPasswordPolicyResponse
+ Amazonka.IAM: GetAccountSummary' :: GetAccountSummary
+ Amazonka.IAM: GetAccountSummaryResponse' :: Maybe (HashMap SummaryKeyType Int) -> Int -> GetAccountSummaryResponse
+ Amazonka.IAM: GetContextKeysForCustomPolicy' :: [Text] -> GetContextKeysForCustomPolicy
+ Amazonka.IAM: GetContextKeysForPolicyResponse' :: Maybe [Text] -> GetContextKeysForPolicyResponse
+ Amazonka.IAM: GetContextKeysForPrincipalPolicy' :: Maybe [Text] -> Text -> GetContextKeysForPrincipalPolicy
+ Amazonka.IAM: GetCredentialReport' :: GetCredentialReport
+ Amazonka.IAM: GetCredentialReportResponse' :: Maybe Base64 -> Maybe ISO8601 -> Maybe ReportFormatType -> Int -> GetCredentialReportResponse
+ Amazonka.IAM: GetGroup' :: Maybe Text -> Maybe Natural -> Text -> GetGroup
+ Amazonka.IAM: GetGroupPolicy' :: Text -> Text -> GetGroupPolicy
+ Amazonka.IAM: GetGroupPolicyResponse' :: Int -> Text -> Text -> Text -> GetGroupPolicyResponse
+ Amazonka.IAM: GetGroupResponse' :: Maybe Bool -> Maybe Text -> Int -> Group -> [User] -> GetGroupResponse
+ Amazonka.IAM: GetInstanceProfile' :: Text -> GetInstanceProfile
+ Amazonka.IAM: GetInstanceProfileResponse' :: Int -> InstanceProfile -> GetInstanceProfileResponse
+ Amazonka.IAM: GetLoginProfile' :: Text -> GetLoginProfile
+ Amazonka.IAM: GetLoginProfileResponse' :: Int -> LoginProfile -> GetLoginProfileResponse
+ Amazonka.IAM: GetOpenIDConnectProvider' :: Text -> GetOpenIDConnectProvider
+ Amazonka.IAM: GetOpenIDConnectProviderResponse' :: Maybe [Text] -> Maybe ISO8601 -> Maybe [Tag] -> Maybe [Text] -> Maybe Text -> Int -> GetOpenIDConnectProviderResponse
+ Amazonka.IAM: GetOrganizationsAccessReport' :: Maybe Text -> Maybe Natural -> Maybe SortKeyType -> Text -> GetOrganizationsAccessReport
+ Amazonka.IAM: GetOrganizationsAccessReportResponse' :: Maybe [AccessDetail] -> Maybe ErrorDetails -> Maybe Bool -> Maybe ISO8601 -> Maybe Text -> Maybe Int -> Maybe Int -> Int -> JobStatusType -> ISO8601 -> GetOrganizationsAccessReportResponse
+ Amazonka.IAM: GetPolicy' :: Text -> GetPolicy
+ Amazonka.IAM: GetPolicyResponse' :: Maybe Policy -> Int -> GetPolicyResponse
+ Amazonka.IAM: GetPolicyVersion' :: Text -> Text -> GetPolicyVersion
+ Amazonka.IAM: GetPolicyVersionResponse' :: Maybe PolicyVersion -> Int -> GetPolicyVersionResponse
+ Amazonka.IAM: GetRole' :: Text -> GetRole
+ Amazonka.IAM: GetRolePolicy' :: Text -> Text -> GetRolePolicy
+ Amazonka.IAM: GetRolePolicyResponse' :: Int -> Text -> Text -> Text -> GetRolePolicyResponse
+ Amazonka.IAM: GetRoleResponse' :: Int -> Role -> GetRoleResponse
+ Amazonka.IAM: GetSAMLProvider' :: Text -> GetSAMLProvider
+ Amazonka.IAM: GetSAMLProviderResponse' :: Maybe ISO8601 -> Maybe Text -> Maybe [Tag] -> Maybe ISO8601 -> Int -> GetSAMLProviderResponse
+ Amazonka.IAM: GetSSHPublicKey' :: Text -> Text -> EncodingType -> GetSSHPublicKey
+ Amazonka.IAM: GetSSHPublicKeyResponse' :: Maybe SSHPublicKey -> Int -> GetSSHPublicKeyResponse
+ Amazonka.IAM: GetServerCertificate' :: Text -> GetServerCertificate
+ Amazonka.IAM: GetServerCertificateResponse' :: Int -> ServerCertificate -> GetServerCertificateResponse
+ Amazonka.IAM: GetServiceLastAccessedDetails' :: Maybe Text -> Maybe Natural -> Text -> GetServiceLastAccessedDetails
+ Amazonka.IAM: GetServiceLastAccessedDetailsResponse' :: Maybe ErrorDetails -> Maybe Bool -> Maybe AccessAdvisorUsageGranularityType -> Maybe Text -> Int -> JobStatusType -> ISO8601 -> [ServiceLastAccessed] -> ISO8601 -> GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM: GetServiceLastAccessedDetailsWithEntities' :: Maybe Text -> Maybe Natural -> Text -> Text -> GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM: GetServiceLastAccessedDetailsWithEntitiesResponse' :: Maybe ErrorDetails -> Maybe Bool -> Maybe Text -> Int -> JobStatusType -> ISO8601 -> ISO8601 -> [EntityDetails] -> GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM: GetServiceLinkedRoleDeletionStatus' :: Text -> GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM: GetServiceLinkedRoleDeletionStatusResponse' :: Maybe DeletionTaskFailureReasonType -> Int -> DeletionTaskStatusType -> GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM: GetUser' :: Maybe Text -> GetUser
+ Amazonka.IAM: GetUserPolicy' :: Text -> Text -> GetUserPolicy
+ Amazonka.IAM: GetUserPolicyResponse' :: Int -> Text -> Text -> Text -> GetUserPolicyResponse
+ Amazonka.IAM: GetUserResponse' :: Int -> User -> GetUserResponse
+ Amazonka.IAM: GlobalEndpointTokenVersion' :: Text -> GlobalEndpointTokenVersion
+ Amazonka.IAM: Group' :: Text -> Text -> Text -> Text -> ISO8601 -> Group
+ Amazonka.IAM: GroupDetail' :: Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe [PolicyDetail] -> Maybe Text -> GroupDetail
+ Amazonka.IAM: InstanceProfile' :: Maybe [Tag] -> Text -> Text -> Text -> Text -> ISO8601 -> [Role] -> InstanceProfile
+ Amazonka.IAM: JobStatusType' :: Text -> JobStatusType
+ Amazonka.IAM: ListAccessKeys' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListAccessKeys
+ Amazonka.IAM: ListAccessKeysResponse' :: Maybe Bool -> Maybe Text -> Int -> [AccessKeyMetadata] -> ListAccessKeysResponse
+ Amazonka.IAM: ListAccountAliases' :: Maybe Text -> Maybe Natural -> ListAccountAliases
+ Amazonka.IAM: ListAccountAliasesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Text] -> ListAccountAliasesResponse
+ Amazonka.IAM: ListAttachedGroupPolicies' :: Maybe Text -> Maybe Natural -> Maybe Text -> Text -> ListAttachedGroupPolicies
+ Amazonka.IAM: ListAttachedGroupPoliciesResponse' :: Maybe [AttachedPolicy] -> Maybe Bool -> Maybe Text -> Int -> ListAttachedGroupPoliciesResponse
+ Amazonka.IAM: ListAttachedRolePolicies' :: Maybe Text -> Maybe Natural -> Maybe Text -> Text -> ListAttachedRolePolicies
+ Amazonka.IAM: ListAttachedRolePoliciesResponse' :: Maybe [AttachedPolicy] -> Maybe Bool -> Maybe Text -> Int -> ListAttachedRolePoliciesResponse
+ Amazonka.IAM: ListAttachedUserPolicies' :: Maybe Text -> Maybe Natural -> Maybe Text -> Text -> ListAttachedUserPolicies
+ Amazonka.IAM: ListAttachedUserPoliciesResponse' :: Maybe [AttachedPolicy] -> Maybe Bool -> Maybe Text -> Int -> ListAttachedUserPoliciesResponse
+ Amazonka.IAM: ListEntitiesForPolicy' :: Maybe EntityType -> Maybe Text -> Maybe Natural -> Maybe Text -> Maybe PolicyUsageType -> Text -> ListEntitiesForPolicy
+ Amazonka.IAM: ListEntitiesForPolicyResponse' :: Maybe Bool -> Maybe Text -> Maybe [PolicyGroup] -> Maybe [PolicyRole] -> Maybe [PolicyUser] -> Int -> ListEntitiesForPolicyResponse
+ Amazonka.IAM: ListGroupPolicies' :: Maybe Text -> Maybe Natural -> Text -> ListGroupPolicies
+ Amazonka.IAM: ListGroupPoliciesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Text] -> ListGroupPoliciesResponse
+ Amazonka.IAM: ListGroups' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListGroups
+ Amazonka.IAM: ListGroupsForUser' :: Maybe Text -> Maybe Natural -> Text -> ListGroupsForUser
+ Amazonka.IAM: ListGroupsForUserResponse' :: Maybe Bool -> Maybe Text -> Int -> [Group] -> ListGroupsForUserResponse
+ Amazonka.IAM: ListGroupsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Group] -> ListGroupsResponse
+ Amazonka.IAM: ListInstanceProfileTags' :: Maybe Text -> Maybe Natural -> Text -> ListInstanceProfileTags
+ Amazonka.IAM: ListInstanceProfileTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListInstanceProfileTagsResponse
+ Amazonka.IAM: ListInstanceProfiles' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListInstanceProfiles
+ Amazonka.IAM: ListInstanceProfilesForRole' :: Maybe Text -> Maybe Natural -> Text -> ListInstanceProfilesForRole
+ Amazonka.IAM: ListInstanceProfilesForRoleResponse' :: Maybe Bool -> Maybe Text -> Int -> [InstanceProfile] -> ListInstanceProfilesForRoleResponse
+ Amazonka.IAM: ListInstanceProfilesResponse' :: Maybe Bool -> Maybe Text -> Int -> [InstanceProfile] -> ListInstanceProfilesResponse
+ Amazonka.IAM: ListMFADeviceTags' :: Maybe Text -> Maybe Natural -> Text -> ListMFADeviceTags
+ Amazonka.IAM: ListMFADeviceTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListMFADeviceTagsResponse
+ Amazonka.IAM: ListMFADevices' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListMFADevices
+ Amazonka.IAM: ListMFADevicesResponse' :: Maybe Bool -> Maybe Text -> Int -> [MFADevice] -> ListMFADevicesResponse
+ Amazonka.IAM: ListOpenIDConnectProviderTags' :: Maybe Text -> Maybe Natural -> Text -> ListOpenIDConnectProviderTags
+ Amazonka.IAM: ListOpenIDConnectProviderTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM: ListOpenIDConnectProviders' :: ListOpenIDConnectProviders
+ Amazonka.IAM: ListOpenIDConnectProvidersResponse' :: Maybe [OpenIDConnectProviderListEntry] -> Int -> ListOpenIDConnectProvidersResponse
+ Amazonka.IAM: ListPolicies' :: Maybe Text -> Maybe Natural -> Maybe Bool -> Maybe Text -> Maybe PolicyUsageType -> Maybe PolicyScopeType -> ListPolicies
+ Amazonka.IAM: ListPoliciesGrantingServiceAccess' :: Maybe Text -> Text -> NonEmpty Text -> ListPoliciesGrantingServiceAccess
+ Amazonka.IAM: ListPoliciesGrantingServiceAccessEntry' :: Maybe [PolicyGrantingServiceAccess] -> Maybe Text -> ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM: ListPoliciesGrantingServiceAccessResponse' :: Maybe Bool -> Maybe Text -> Int -> [ListPoliciesGrantingServiceAccessEntry] -> ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM: ListPoliciesResponse' :: Maybe Bool -> Maybe Text -> Maybe [Policy] -> Int -> ListPoliciesResponse
+ Amazonka.IAM: ListPolicyTags' :: Maybe Text -> Maybe Natural -> Text -> ListPolicyTags
+ Amazonka.IAM: ListPolicyTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListPolicyTagsResponse
+ Amazonka.IAM: ListPolicyVersions' :: Maybe Text -> Maybe Natural -> Text -> ListPolicyVersions
+ Amazonka.IAM: ListPolicyVersionsResponse' :: Maybe Bool -> Maybe Text -> Maybe [PolicyVersion] -> Int -> ListPolicyVersionsResponse
+ Amazonka.IAM: ListRolePolicies' :: Maybe Text -> Maybe Natural -> Text -> ListRolePolicies
+ Amazonka.IAM: ListRolePoliciesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Text] -> ListRolePoliciesResponse
+ Amazonka.IAM: ListRoleTags' :: Maybe Text -> Maybe Natural -> Text -> ListRoleTags
+ Amazonka.IAM: ListRoleTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListRoleTagsResponse
+ Amazonka.IAM: ListRoles' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListRoles
+ Amazonka.IAM: ListRolesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Role] -> ListRolesResponse
+ Amazonka.IAM: ListSAMLProviderTags' :: Maybe Text -> Maybe Natural -> Text -> ListSAMLProviderTags
+ Amazonka.IAM: ListSAMLProviderTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListSAMLProviderTagsResponse
+ Amazonka.IAM: ListSAMLProviders' :: ListSAMLProviders
+ Amazonka.IAM: ListSAMLProvidersResponse' :: Maybe [SAMLProviderListEntry] -> Int -> ListSAMLProvidersResponse
+ Amazonka.IAM: ListSSHPublicKeys' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListSSHPublicKeys
+ Amazonka.IAM: ListSSHPublicKeysResponse' :: Maybe Bool -> Maybe Text -> Maybe [SSHPublicKeyMetadata] -> Int -> ListSSHPublicKeysResponse
+ Amazonka.IAM: ListServerCertificateTags' :: Maybe Text -> Maybe Natural -> Text -> ListServerCertificateTags
+ Amazonka.IAM: ListServerCertificateTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListServerCertificateTagsResponse
+ Amazonka.IAM: ListServerCertificates' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListServerCertificates
+ Amazonka.IAM: ListServerCertificatesResponse' :: Maybe Bool -> Maybe Text -> Int -> [ServerCertificateMetadata] -> ListServerCertificatesResponse
+ Amazonka.IAM: ListServiceSpecificCredentials' :: Maybe Text -> Maybe Text -> ListServiceSpecificCredentials
+ Amazonka.IAM: ListServiceSpecificCredentialsResponse' :: Maybe [ServiceSpecificCredentialMetadata] -> Int -> ListServiceSpecificCredentialsResponse
+ Amazonka.IAM: ListSigningCertificates' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListSigningCertificates
+ Amazonka.IAM: ListSigningCertificatesResponse' :: Maybe Bool -> Maybe Text -> Int -> [SigningCertificate] -> ListSigningCertificatesResponse
+ Amazonka.IAM: ListUserPolicies' :: Maybe Text -> Maybe Natural -> Text -> ListUserPolicies
+ Amazonka.IAM: ListUserPoliciesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Text] -> ListUserPoliciesResponse
+ Amazonka.IAM: ListUserTags' :: Maybe Text -> Maybe Natural -> Text -> ListUserTags
+ Amazonka.IAM: ListUserTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListUserTagsResponse
+ Amazonka.IAM: ListUsers' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListUsers
+ Amazonka.IAM: ListUsersResponse' :: Maybe Bool -> Maybe Text -> Int -> [User] -> ListUsersResponse
+ Amazonka.IAM: ListVirtualMFADevices' :: Maybe AssignmentStatusType -> Maybe Text -> Maybe Natural -> ListVirtualMFADevices
+ Amazonka.IAM: ListVirtualMFADevicesResponse' :: Maybe Bool -> Maybe Text -> Int -> [VirtualMFADevice] -> ListVirtualMFADevicesResponse
+ Amazonka.IAM: LoginProfile' :: Maybe Bool -> Text -> ISO8601 -> LoginProfile
+ Amazonka.IAM: MFADevice' :: Text -> Text -> ISO8601 -> MFADevice
+ Amazonka.IAM: ManagedPolicyDetail' :: Maybe Text -> Maybe Int -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Bool -> Maybe Text -> Maybe Int -> Maybe Text -> Maybe Text -> Maybe [PolicyVersion] -> Maybe ISO8601 -> ManagedPolicyDetail
+ Amazonka.IAM: OpenIDConnectProviderListEntry' :: Maybe Text -> OpenIDConnectProviderListEntry
+ Amazonka.IAM: OrganizationsDecisionDetail' :: Maybe Bool -> OrganizationsDecisionDetail
+ Amazonka.IAM: PasswordPolicy' :: Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Natural -> Maybe Natural -> Maybe Natural -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> PasswordPolicy
+ Amazonka.IAM: PermissionsBoundaryAttachmentType' :: Text -> PermissionsBoundaryAttachmentType
+ Amazonka.IAM: PermissionsBoundaryDecisionDetail' :: Maybe Bool -> PermissionsBoundaryDecisionDetail
+ Amazonka.IAM: Policy' :: Maybe Text -> Maybe Int -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Bool -> Maybe Text -> Maybe Int -> Maybe Text -> Maybe Text -> Maybe [Tag] -> Maybe ISO8601 -> Policy
+ Amazonka.IAM: PolicyDetail' :: Maybe Text -> Maybe Text -> PolicyDetail
+ Amazonka.IAM: PolicyEvaluationDecisionType' :: Text -> PolicyEvaluationDecisionType
+ Amazonka.IAM: PolicyGrantingServiceAccess' :: Maybe Text -> Maybe PolicyOwnerEntityType -> Maybe Text -> Text -> PolicyType -> PolicyGrantingServiceAccess
+ Amazonka.IAM: PolicyGroup' :: Maybe Text -> Maybe Text -> PolicyGroup
+ Amazonka.IAM: PolicyOwnerEntityType' :: Text -> PolicyOwnerEntityType
+ Amazonka.IAM: PolicyRole' :: Maybe Text -> Maybe Text -> PolicyRole
+ Amazonka.IAM: PolicyScopeType' :: Text -> PolicyScopeType
+ Amazonka.IAM: PolicySourceType' :: Text -> PolicySourceType
+ Amazonka.IAM: PolicyType' :: Text -> PolicyType
+ Amazonka.IAM: PolicyUsageType' :: Text -> PolicyUsageType
+ Amazonka.IAM: PolicyUser' :: Maybe Text -> Maybe Text -> PolicyUser
+ Amazonka.IAM: PolicyVersion' :: Maybe ISO8601 -> Maybe Text -> Maybe Bool -> Maybe Text -> PolicyVersion
+ Amazonka.IAM: Position' :: Maybe Int -> Maybe Int -> Position
+ Amazonka.IAM: PutGroupPolicy' :: Text -> Text -> Text -> PutGroupPolicy
+ Amazonka.IAM: PutGroupPolicyResponse' :: PutGroupPolicyResponse
+ Amazonka.IAM: PutRolePermissionsBoundary' :: Text -> Text -> PutRolePermissionsBoundary
+ Amazonka.IAM: PutRolePermissionsBoundaryResponse' :: PutRolePermissionsBoundaryResponse
+ Amazonka.IAM: PutRolePolicy' :: Text -> Text -> Text -> PutRolePolicy
+ Amazonka.IAM: PutRolePolicyResponse' :: PutRolePolicyResponse
+ Amazonka.IAM: PutUserPermissionsBoundary' :: Text -> Text -> PutUserPermissionsBoundary
+ Amazonka.IAM: PutUserPermissionsBoundaryResponse' :: PutUserPermissionsBoundaryResponse
+ Amazonka.IAM: PutUserPolicy' :: Text -> Text -> Text -> PutUserPolicy
+ Amazonka.IAM: PutUserPolicyResponse' :: PutUserPolicyResponse
+ Amazonka.IAM: RemoveClientIDFromOpenIDConnectProvider' :: Text -> Text -> RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM: RemoveClientIDFromOpenIDConnectProviderResponse' :: RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM: RemoveRoleFromInstanceProfile' :: Text -> Text -> RemoveRoleFromInstanceProfile
+ Amazonka.IAM: RemoveRoleFromInstanceProfileResponse' :: RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM: RemoveUserFromGroup' :: Text -> Text -> RemoveUserFromGroup
+ Amazonka.IAM: RemoveUserFromGroupResponse' :: RemoveUserFromGroupResponse
+ Amazonka.IAM: ReportFormatType' :: Text -> ReportFormatType
+ Amazonka.IAM: ReportStateType' :: Text -> ReportStateType
+ Amazonka.IAM: ResetServiceSpecificCredential' :: Maybe Text -> Text -> ResetServiceSpecificCredential
+ Amazonka.IAM: ResetServiceSpecificCredentialResponse' :: Maybe ServiceSpecificCredential -> Int -> ResetServiceSpecificCredentialResponse
+ Amazonka.IAM: ResourceSpecificResult' :: Maybe (HashMap Text PolicyEvaluationDecisionType) -> Maybe [Statement] -> Maybe [Text] -> Maybe PermissionsBoundaryDecisionDetail -> Text -> PolicyEvaluationDecisionType -> ResourceSpecificResult
+ Amazonka.IAM: ResyncMFADevice' :: Text -> Text -> Text -> Text -> ResyncMFADevice
+ Amazonka.IAM: ResyncMFADeviceResponse' :: ResyncMFADeviceResponse
+ Amazonka.IAM: Role' :: Maybe Text -> Maybe Text -> Maybe Natural -> Maybe AttachedPermissionsBoundary -> Maybe RoleLastUsed -> Maybe [Tag] -> Text -> Text -> Text -> Text -> ISO8601 -> Role
+ Amazonka.IAM: RoleDetail' :: Maybe Text -> Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe [InstanceProfile] -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe Text -> Maybe RoleLastUsed -> Maybe Text -> Maybe [PolicyDetail] -> Maybe [Tag] -> RoleDetail
+ Amazonka.IAM: RoleLastUsed' :: Maybe ISO8601 -> Maybe Text -> RoleLastUsed
+ Amazonka.IAM: RoleUsageType' :: Maybe Text -> Maybe [Text] -> RoleUsageType
+ Amazonka.IAM: SAMLProviderListEntry' :: Maybe Text -> Maybe ISO8601 -> Maybe ISO8601 -> SAMLProviderListEntry
+ Amazonka.IAM: SSHPublicKey' :: Maybe ISO8601 -> Text -> Text -> Text -> Text -> StatusType -> SSHPublicKey
+ Amazonka.IAM: SSHPublicKeyMetadata' :: Text -> Text -> StatusType -> ISO8601 -> SSHPublicKeyMetadata
+ Amazonka.IAM: ServerCertificate' :: Maybe Text -> Maybe [Tag] -> ServerCertificateMetadata -> Text -> ServerCertificate
+ Amazonka.IAM: ServerCertificateMetadata' :: Maybe ISO8601 -> Maybe ISO8601 -> Text -> Text -> Text -> Text -> ServerCertificateMetadata
+ Amazonka.IAM: ServiceLastAccessed' :: Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Int -> Maybe [TrackedActionLastAccessed] -> Text -> Text -> ServiceLastAccessed
+ Amazonka.IAM: ServiceSpecificCredential' :: ISO8601 -> Text -> Text -> Sensitive Text -> Text -> Text -> StatusType -> ServiceSpecificCredential
+ Amazonka.IAM: ServiceSpecificCredentialMetadata' :: Text -> StatusType -> Text -> ISO8601 -> Text -> Text -> ServiceSpecificCredentialMetadata
+ Amazonka.IAM: SetDefaultPolicyVersion' :: Text -> Text -> SetDefaultPolicyVersion
+ Amazonka.IAM: SetDefaultPolicyVersionResponse' :: SetDefaultPolicyVersionResponse
+ Amazonka.IAM: SetSecurityTokenServicePreferences' :: GlobalEndpointTokenVersion -> SetSecurityTokenServicePreferences
+ Amazonka.IAM: SetSecurityTokenServicePreferencesResponse' :: SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM: SigningCertificate' :: Maybe ISO8601 -> Text -> Text -> Text -> StatusType -> SigningCertificate
+ Amazonka.IAM: SimulateCustomPolicy' :: Maybe Text -> Maybe [ContextEntry] -> Maybe Text -> Maybe Natural -> Maybe [Text] -> Maybe [Text] -> Maybe Text -> Maybe Text -> Maybe Text -> [Text] -> [Text] -> SimulateCustomPolicy
+ Amazonka.IAM: SimulatePolicyResponse' :: Maybe [EvaluationResult] -> Maybe Bool -> Maybe Text -> SimulatePolicyResponse
+ Amazonka.IAM: SimulatePrincipalPolicy' :: Maybe Text -> Maybe [ContextEntry] -> Maybe Text -> Maybe Natural -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Maybe Text -> Maybe Text -> Maybe Text -> Text -> [Text] -> SimulatePrincipalPolicy
+ Amazonka.IAM: SortKeyType' :: Text -> SortKeyType
+ Amazonka.IAM: Statement' :: Maybe Position -> Maybe Text -> Maybe PolicySourceType -> Maybe Position -> Statement
+ Amazonka.IAM: StatusType' :: Text -> StatusType
+ Amazonka.IAM: SummaryKeyType' :: Text -> SummaryKeyType
+ Amazonka.IAM: Tag' :: Text -> Text -> Tag
+ Amazonka.IAM: TagInstanceProfile' :: Text -> [Tag] -> TagInstanceProfile
+ Amazonka.IAM: TagInstanceProfileResponse' :: TagInstanceProfileResponse
+ Amazonka.IAM: TagMFADevice' :: Text -> [Tag] -> TagMFADevice
+ Amazonka.IAM: TagMFADeviceResponse' :: TagMFADeviceResponse
+ Amazonka.IAM: TagOpenIDConnectProvider' :: Text -> [Tag] -> TagOpenIDConnectProvider
+ Amazonka.IAM: TagOpenIDConnectProviderResponse' :: TagOpenIDConnectProviderResponse
+ Amazonka.IAM: TagPolicy' :: Text -> [Tag] -> TagPolicy
+ Amazonka.IAM: TagPolicyResponse' :: TagPolicyResponse
+ Amazonka.IAM: TagRole' :: Text -> [Tag] -> TagRole
+ Amazonka.IAM: TagRoleResponse' :: TagRoleResponse
+ Amazonka.IAM: TagSAMLProvider' :: Text -> [Tag] -> TagSAMLProvider
+ Amazonka.IAM: TagSAMLProviderResponse' :: TagSAMLProviderResponse
+ Amazonka.IAM: TagServerCertificate' :: Text -> [Tag] -> TagServerCertificate
+ Amazonka.IAM: TagServerCertificateResponse' :: TagServerCertificateResponse
+ Amazonka.IAM: TagUser' :: Text -> [Tag] -> TagUser
+ Amazonka.IAM: TagUserResponse' :: TagUserResponse
+ Amazonka.IAM: TrackedActionLastAccessed' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe ISO8601 -> TrackedActionLastAccessed
+ Amazonka.IAM: UntagInstanceProfile' :: Text -> [Text] -> UntagInstanceProfile
+ Amazonka.IAM: UntagInstanceProfileResponse' :: UntagInstanceProfileResponse
+ Amazonka.IAM: UntagMFADevice' :: Text -> [Text] -> UntagMFADevice
+ Amazonka.IAM: UntagMFADeviceResponse' :: UntagMFADeviceResponse
+ Amazonka.IAM: UntagOpenIDConnectProvider' :: Text -> [Text] -> UntagOpenIDConnectProvider
+ Amazonka.IAM: UntagOpenIDConnectProviderResponse' :: UntagOpenIDConnectProviderResponse
+ Amazonka.IAM: UntagPolicy' :: Text -> [Text] -> UntagPolicy
+ Amazonka.IAM: UntagPolicyResponse' :: UntagPolicyResponse
+ Amazonka.IAM: UntagRole' :: Text -> [Text] -> UntagRole
+ Amazonka.IAM: UntagRoleResponse' :: UntagRoleResponse
+ Amazonka.IAM: UntagSAMLProvider' :: Text -> [Text] -> UntagSAMLProvider
+ Amazonka.IAM: UntagSAMLProviderResponse' :: UntagSAMLProviderResponse
+ Amazonka.IAM: UntagServerCertificate' :: Text -> [Text] -> UntagServerCertificate
+ Amazonka.IAM: UntagServerCertificateResponse' :: UntagServerCertificateResponse
+ Amazonka.IAM: UntagUser' :: Text -> [Text] -> UntagUser
+ Amazonka.IAM: UntagUserResponse' :: UntagUserResponse
+ Amazonka.IAM: UpdateAccessKey' :: Maybe Text -> AccessKey -> StatusType -> UpdateAccessKey
+ Amazonka.IAM: UpdateAccessKeyResponse' :: UpdateAccessKeyResponse
+ Amazonka.IAM: UpdateAccountPasswordPolicy' :: Maybe Bool -> Maybe Bool -> Maybe Natural -> Maybe Natural -> Maybe Natural -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> UpdateAccountPasswordPolicy
+ Amazonka.IAM: UpdateAccountPasswordPolicyResponse' :: UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM: UpdateAssumeRolePolicy' :: Text -> Text -> UpdateAssumeRolePolicy
+ Amazonka.IAM: UpdateAssumeRolePolicyResponse' :: UpdateAssumeRolePolicyResponse
+ Amazonka.IAM: UpdateGroup' :: Maybe Text -> Maybe Text -> Text -> UpdateGroup
+ Amazonka.IAM: UpdateGroupResponse' :: UpdateGroupResponse
+ Amazonka.IAM: UpdateLoginProfile' :: Maybe (Sensitive Text) -> Maybe Bool -> Text -> UpdateLoginProfile
+ Amazonka.IAM: UpdateLoginProfileResponse' :: UpdateLoginProfileResponse
+ Amazonka.IAM: UpdateOpenIDConnectProviderThumbprint' :: Text -> [Text] -> UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM: UpdateOpenIDConnectProviderThumbprintResponse' :: UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM: UpdateRole' :: Maybe Text -> Maybe Natural -> Text -> UpdateRole
+ Amazonka.IAM: UpdateRoleDescription' :: Text -> Text -> UpdateRoleDescription
+ Amazonka.IAM: UpdateRoleDescriptionResponse' :: Maybe Role -> Int -> UpdateRoleDescriptionResponse
+ Amazonka.IAM: UpdateRoleResponse' :: Int -> UpdateRoleResponse
+ Amazonka.IAM: UpdateSAMLProvider' :: Text -> Text -> UpdateSAMLProvider
+ Amazonka.IAM: UpdateSAMLProviderResponse' :: Maybe Text -> Int -> UpdateSAMLProviderResponse
+ Amazonka.IAM: UpdateSSHPublicKey' :: Text -> Text -> StatusType -> UpdateSSHPublicKey
+ Amazonka.IAM: UpdateSSHPublicKeyResponse' :: UpdateSSHPublicKeyResponse
+ Amazonka.IAM: UpdateServerCertificate' :: Maybe Text -> Maybe Text -> Text -> UpdateServerCertificate
+ Amazonka.IAM: UpdateServerCertificateResponse' :: UpdateServerCertificateResponse
+ Amazonka.IAM: UpdateServiceSpecificCredential' :: Maybe Text -> Text -> StatusType -> UpdateServiceSpecificCredential
+ Amazonka.IAM: UpdateServiceSpecificCredentialResponse' :: UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM: UpdateSigningCertificate' :: Maybe Text -> Text -> StatusType -> UpdateSigningCertificate
+ Amazonka.IAM: UpdateSigningCertificateResponse' :: UpdateSigningCertificateResponse
+ Amazonka.IAM: UpdateUser' :: Maybe Text -> Maybe Text -> Text -> UpdateUser
+ Amazonka.IAM: UpdateUserResponse' :: UpdateUserResponse
+ Amazonka.IAM: UploadSSHPublicKey' :: Text -> Text -> UploadSSHPublicKey
+ Amazonka.IAM: UploadSSHPublicKeyResponse' :: Maybe SSHPublicKey -> Int -> UploadSSHPublicKeyResponse
+ Amazonka.IAM: UploadServerCertificate' :: Maybe Text -> Maybe Text -> Maybe [Tag] -> Text -> Text -> Sensitive Text -> UploadServerCertificate
+ Amazonka.IAM: UploadServerCertificateResponse' :: Maybe ServerCertificateMetadata -> Maybe [Tag] -> Int -> UploadServerCertificateResponse
+ Amazonka.IAM: UploadSigningCertificate' :: Maybe Text -> Text -> UploadSigningCertificate
+ Amazonka.IAM: UploadSigningCertificateResponse' :: Int -> SigningCertificate -> UploadSigningCertificateResponse
+ Amazonka.IAM: User' :: Maybe ISO8601 -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe [Tag] -> Text -> Text -> Text -> ISO8601 -> User
+ Amazonka.IAM: UserDetail' :: Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe [Text] -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe [Tag] -> Maybe Text -> Maybe Text -> Maybe [PolicyDetail] -> UserDetail
+ Amazonka.IAM: VirtualMFADevice' :: Maybe (Sensitive Base64) -> Maybe ISO8601 -> Maybe (Sensitive Base64) -> Maybe [Tag] -> Maybe User -> Text -> VirtualMFADevice
+ Amazonka.IAM: [fromAccessAdvisorUsageGranularityType] :: AccessAdvisorUsageGranularityType -> Text
+ Amazonka.IAM: [fromAssignmentStatusType] :: AssignmentStatusType -> Text
+ Amazonka.IAM: [fromContextKeyTypeEnum] :: ContextKeyTypeEnum -> Text
+ Amazonka.IAM: [fromDeletionTaskStatusType] :: DeletionTaskStatusType -> Text
+ Amazonka.IAM: [fromEncodingType] :: EncodingType -> Text
+ Amazonka.IAM: [fromEntityType] :: EntityType -> Text
+ Amazonka.IAM: [fromGlobalEndpointTokenVersion] :: GlobalEndpointTokenVersion -> Text
+ Amazonka.IAM: [fromJobStatusType] :: JobStatusType -> Text
+ Amazonka.IAM: [fromPermissionsBoundaryAttachmentType] :: PermissionsBoundaryAttachmentType -> Text
+ Amazonka.IAM: [fromPolicyEvaluationDecisionType] :: PolicyEvaluationDecisionType -> Text
+ Amazonka.IAM: [fromPolicyOwnerEntityType] :: PolicyOwnerEntityType -> Text
+ Amazonka.IAM: [fromPolicyScopeType] :: PolicyScopeType -> Text
+ Amazonka.IAM: [fromPolicySourceType] :: PolicySourceType -> Text
+ Amazonka.IAM: [fromPolicyType] :: PolicyType -> Text
+ Amazonka.IAM: [fromPolicyUsageType] :: PolicyUsageType -> Text
+ Amazonka.IAM: [fromReportFormatType] :: ReportFormatType -> Text
+ Amazonka.IAM: [fromReportStateType] :: ReportStateType -> Text
+ Amazonka.IAM: [fromSortKeyType] :: SortKeyType -> Text
+ Amazonka.IAM: [fromStatusType] :: StatusType -> Text
+ Amazonka.IAM: [fromSummaryKeyType] :: SummaryKeyType -> Text
+ Amazonka.IAM: _ConcurrentModificationException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _CredentialReportExpiredException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _CredentialReportNotPresentException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _CredentialReportNotReadyException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _DeleteConflictException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _DuplicateCertificateException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _DuplicateSSHPublicKeyException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _EntityAlreadyExistsException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _EntityTemporarilyUnmodifiableException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _InvalidAuthenticationCodeException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _InvalidCertificateException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _InvalidInputException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _InvalidPublicKeyException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _InvalidUserTypeException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _KeyPairMismatchException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _LimitExceededException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _MalformedCertificateException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _MalformedPolicyDocumentException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _NoSuchEntityException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _PasswordPolicyViolationException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _PolicyEvaluationException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _PolicyNotAttachableException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _ReportGenerationLimitExceededException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _ServiceFailureException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _ServiceNotSupportedException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _UnmodifiableEntityException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: _UnrecognizedPublicKeyEncodingException :: AsError a => Fold a ServiceError
+ Amazonka.IAM: data AccessDetail
+ Amazonka.IAM: data AccessKeyInfo
+ Amazonka.IAM: data AccessKeyLastUsed
+ Amazonka.IAM: data AccessKeyMetadata
+ Amazonka.IAM: data AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM: data AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM: data AddRoleToInstanceProfile
+ Amazonka.IAM: data AddRoleToInstanceProfileResponse
+ Amazonka.IAM: data AddUserToGroup
+ Amazonka.IAM: data AddUserToGroupResponse
+ Amazonka.IAM: data AttachGroupPolicy
+ Amazonka.IAM: data AttachGroupPolicyResponse
+ Amazonka.IAM: data AttachRolePolicy
+ Amazonka.IAM: data AttachRolePolicyResponse
+ Amazonka.IAM: data AttachUserPolicy
+ Amazonka.IAM: data AttachUserPolicyResponse
+ Amazonka.IAM: data AttachedPermissionsBoundary
+ Amazonka.IAM: data AttachedPolicy
+ Amazonka.IAM: data ChangePassword
+ Amazonka.IAM: data ChangePasswordResponse
+ Amazonka.IAM: data ContextEntry
+ Amazonka.IAM: data CreateAccessKey
+ Amazonka.IAM: data CreateAccessKeyResponse
+ Amazonka.IAM: data CreateAccountAlias
+ Amazonka.IAM: data CreateAccountAliasResponse
+ Amazonka.IAM: data CreateGroup
+ Amazonka.IAM: data CreateGroupResponse
+ Amazonka.IAM: data CreateInstanceProfile
+ Amazonka.IAM: data CreateInstanceProfileResponse
+ Amazonka.IAM: data CreateLoginProfile
+ Amazonka.IAM: data CreateLoginProfileResponse
+ Amazonka.IAM: data CreateOpenIDConnectProvider
+ Amazonka.IAM: data CreateOpenIDConnectProviderResponse
+ Amazonka.IAM: data CreatePolicy
+ Amazonka.IAM: data CreatePolicyResponse
+ Amazonka.IAM: data CreatePolicyVersion
+ Amazonka.IAM: data CreatePolicyVersionResponse
+ Amazonka.IAM: data CreateRole
+ Amazonka.IAM: data CreateRoleResponse
+ Amazonka.IAM: data CreateSAMLProvider
+ Amazonka.IAM: data CreateSAMLProviderResponse
+ Amazonka.IAM: data CreateServiceLinkedRole
+ Amazonka.IAM: data CreateServiceLinkedRoleResponse
+ Amazonka.IAM: data CreateServiceSpecificCredential
+ Amazonka.IAM: data CreateServiceSpecificCredentialResponse
+ Amazonka.IAM: data CreateUser
+ Amazonka.IAM: data CreateUserResponse
+ Amazonka.IAM: data CreateVirtualMFADevice
+ Amazonka.IAM: data CreateVirtualMFADeviceResponse
+ Amazonka.IAM: data DeactivateMFADevice
+ Amazonka.IAM: data DeactivateMFADeviceResponse
+ Amazonka.IAM: data DeleteAccessKey
+ Amazonka.IAM: data DeleteAccessKeyResponse
+ Amazonka.IAM: data DeleteAccountAlias
+ Amazonka.IAM: data DeleteAccountAliasResponse
+ Amazonka.IAM: data DeleteAccountPasswordPolicy
+ Amazonka.IAM: data DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM: data DeleteGroup
+ Amazonka.IAM: data DeleteGroupPolicy
+ Amazonka.IAM: data DeleteGroupPolicyResponse
+ Amazonka.IAM: data DeleteGroupResponse
+ Amazonka.IAM: data DeleteInstanceProfile
+ Amazonka.IAM: data DeleteInstanceProfileResponse
+ Amazonka.IAM: data DeleteLoginProfile
+ Amazonka.IAM: data DeleteLoginProfileResponse
+ Amazonka.IAM: data DeleteOpenIDConnectProvider
+ Amazonka.IAM: data DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM: data DeletePolicy
+ Amazonka.IAM: data DeletePolicyResponse
+ Amazonka.IAM: data DeletePolicyVersion
+ Amazonka.IAM: data DeletePolicyVersionResponse
+ Amazonka.IAM: data DeleteRole
+ Amazonka.IAM: data DeleteRolePermissionsBoundary
+ Amazonka.IAM: data DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM: data DeleteRolePolicy
+ Amazonka.IAM: data DeleteRolePolicyResponse
+ Amazonka.IAM: data DeleteRoleResponse
+ Amazonka.IAM: data DeleteSAMLProvider
+ Amazonka.IAM: data DeleteSAMLProviderResponse
+ Amazonka.IAM: data DeleteSSHPublicKey
+ Amazonka.IAM: data DeleteSSHPublicKeyResponse
+ Amazonka.IAM: data DeleteServerCertificate
+ Amazonka.IAM: data DeleteServerCertificateResponse
+ Amazonka.IAM: data DeleteServiceLinkedRole
+ Amazonka.IAM: data DeleteServiceLinkedRoleResponse
+ Amazonka.IAM: data DeleteServiceSpecificCredential
+ Amazonka.IAM: data DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM: data DeleteSigningCertificate
+ Amazonka.IAM: data DeleteSigningCertificateResponse
+ Amazonka.IAM: data DeleteUser
+ Amazonka.IAM: data DeleteUserPermissionsBoundary
+ Amazonka.IAM: data DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM: data DeleteUserPolicy
+ Amazonka.IAM: data DeleteUserPolicyResponse
+ Amazonka.IAM: data DeleteUserResponse
+ Amazonka.IAM: data DeleteVirtualMFADevice
+ Amazonka.IAM: data DeleteVirtualMFADeviceResponse
+ Amazonka.IAM: data DeletionTaskFailureReasonType
+ Amazonka.IAM: data DetachGroupPolicy
+ Amazonka.IAM: data DetachGroupPolicyResponse
+ Amazonka.IAM: data DetachRolePolicy
+ Amazonka.IAM: data DetachRolePolicyResponse
+ Amazonka.IAM: data DetachUserPolicy
+ Amazonka.IAM: data DetachUserPolicyResponse
+ Amazonka.IAM: data EnableMFADevice
+ Amazonka.IAM: data EnableMFADeviceResponse
+ Amazonka.IAM: data EntityDetails
+ Amazonka.IAM: data EntityInfo
+ Amazonka.IAM: data ErrorDetails
+ Amazonka.IAM: data EvaluationResult
+ Amazonka.IAM: data GenerateCredentialReport
+ Amazonka.IAM: data GenerateCredentialReportResponse
+ Amazonka.IAM: data GenerateOrganizationsAccessReport
+ Amazonka.IAM: data GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM: data GenerateServiceLastAccessedDetails
+ Amazonka.IAM: data GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM: data GetAccessKeyLastUsed
+ Amazonka.IAM: data GetAccessKeyLastUsedResponse
+ Amazonka.IAM: data GetAccountAuthorizationDetails
+ Amazonka.IAM: data GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM: data GetAccountPasswordPolicy
+ Amazonka.IAM: data GetAccountPasswordPolicyResponse
+ Amazonka.IAM: data GetAccountSummary
+ Amazonka.IAM: data GetAccountSummaryResponse
+ Amazonka.IAM: data GetContextKeysForCustomPolicy
+ Amazonka.IAM: data GetContextKeysForPolicyResponse
+ Amazonka.IAM: data GetContextKeysForPrincipalPolicy
+ Amazonka.IAM: data GetCredentialReport
+ Amazonka.IAM: data GetCredentialReportResponse
+ Amazonka.IAM: data GetGroup
+ Amazonka.IAM: data GetGroupPolicy
+ Amazonka.IAM: data GetGroupPolicyResponse
+ Amazonka.IAM: data GetGroupResponse
+ Amazonka.IAM: data GetInstanceProfile
+ Amazonka.IAM: data GetInstanceProfileResponse
+ Amazonka.IAM: data GetLoginProfile
+ Amazonka.IAM: data GetLoginProfileResponse
+ Amazonka.IAM: data GetOpenIDConnectProvider
+ Amazonka.IAM: data GetOpenIDConnectProviderResponse
+ Amazonka.IAM: data GetOrganizationsAccessReport
+ Amazonka.IAM: data GetOrganizationsAccessReportResponse
+ Amazonka.IAM: data GetPolicy
+ Amazonka.IAM: data GetPolicyResponse
+ Amazonka.IAM: data GetPolicyVersion
+ Amazonka.IAM: data GetPolicyVersionResponse
+ Amazonka.IAM: data GetRole
+ Amazonka.IAM: data GetRolePolicy
+ Amazonka.IAM: data GetRolePolicyResponse
+ Amazonka.IAM: data GetRoleResponse
+ Amazonka.IAM: data GetSAMLProvider
+ Amazonka.IAM: data GetSAMLProviderResponse
+ Amazonka.IAM: data GetSSHPublicKey
+ Amazonka.IAM: data GetSSHPublicKeyResponse
+ Amazonka.IAM: data GetServerCertificate
+ Amazonka.IAM: data GetServerCertificateResponse
+ Amazonka.IAM: data GetServiceLastAccessedDetails
+ Amazonka.IAM: data GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM: data GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM: data GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM: data GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM: data GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM: data GetUser
+ Amazonka.IAM: data GetUserPolicy
+ Amazonka.IAM: data GetUserPolicyResponse
+ Amazonka.IAM: data GetUserResponse
+ Amazonka.IAM: data Group
+ Amazonka.IAM: data GroupDetail
+ Amazonka.IAM: data InstanceProfile
+ Amazonka.IAM: data ListAccessKeys
+ Amazonka.IAM: data ListAccessKeysResponse
+ Amazonka.IAM: data ListAccountAliases
+ Amazonka.IAM: data ListAccountAliasesResponse
+ Amazonka.IAM: data ListAttachedGroupPolicies
+ Amazonka.IAM: data ListAttachedGroupPoliciesResponse
+ Amazonka.IAM: data ListAttachedRolePolicies
+ Amazonka.IAM: data ListAttachedRolePoliciesResponse
+ Amazonka.IAM: data ListAttachedUserPolicies
+ Amazonka.IAM: data ListAttachedUserPoliciesResponse
+ Amazonka.IAM: data ListEntitiesForPolicy
+ Amazonka.IAM: data ListEntitiesForPolicyResponse
+ Amazonka.IAM: data ListGroupPolicies
+ Amazonka.IAM: data ListGroupPoliciesResponse
+ Amazonka.IAM: data ListGroups
+ Amazonka.IAM: data ListGroupsForUser
+ Amazonka.IAM: data ListGroupsForUserResponse
+ Amazonka.IAM: data ListGroupsResponse
+ Amazonka.IAM: data ListInstanceProfileTags
+ Amazonka.IAM: data ListInstanceProfileTagsResponse
+ Amazonka.IAM: data ListInstanceProfiles
+ Amazonka.IAM: data ListInstanceProfilesForRole
+ Amazonka.IAM: data ListInstanceProfilesForRoleResponse
+ Amazonka.IAM: data ListInstanceProfilesResponse
+ Amazonka.IAM: data ListMFADeviceTags
+ Amazonka.IAM: data ListMFADeviceTagsResponse
+ Amazonka.IAM: data ListMFADevices
+ Amazonka.IAM: data ListMFADevicesResponse
+ Amazonka.IAM: data ListOpenIDConnectProviderTags
+ Amazonka.IAM: data ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM: data ListOpenIDConnectProviders
+ Amazonka.IAM: data ListOpenIDConnectProvidersResponse
+ Amazonka.IAM: data ListPolicies
+ Amazonka.IAM: data ListPoliciesGrantingServiceAccess
+ Amazonka.IAM: data ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM: data ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM: data ListPoliciesResponse
+ Amazonka.IAM: data ListPolicyTags
+ Amazonka.IAM: data ListPolicyTagsResponse
+ Amazonka.IAM: data ListPolicyVersions
+ Amazonka.IAM: data ListPolicyVersionsResponse
+ Amazonka.IAM: data ListRolePolicies
+ Amazonka.IAM: data ListRolePoliciesResponse
+ Amazonka.IAM: data ListRoleTags
+ Amazonka.IAM: data ListRoleTagsResponse
+ Amazonka.IAM: data ListRoles
+ Amazonka.IAM: data ListRolesResponse
+ Amazonka.IAM: data ListSAMLProviderTags
+ Amazonka.IAM: data ListSAMLProviderTagsResponse
+ Amazonka.IAM: data ListSAMLProviders
+ Amazonka.IAM: data ListSAMLProvidersResponse
+ Amazonka.IAM: data ListSSHPublicKeys
+ Amazonka.IAM: data ListSSHPublicKeysResponse
+ Amazonka.IAM: data ListServerCertificateTags
+ Amazonka.IAM: data ListServerCertificateTagsResponse
+ Amazonka.IAM: data ListServerCertificates
+ Amazonka.IAM: data ListServerCertificatesResponse
+ Amazonka.IAM: data ListServiceSpecificCredentials
+ Amazonka.IAM: data ListServiceSpecificCredentialsResponse
+ Amazonka.IAM: data ListSigningCertificates
+ Amazonka.IAM: data ListSigningCertificatesResponse
+ Amazonka.IAM: data ListUserPolicies
+ Amazonka.IAM: data ListUserPoliciesResponse
+ Amazonka.IAM: data ListUserTags
+ Amazonka.IAM: data ListUserTagsResponse
+ Amazonka.IAM: data ListUsers
+ Amazonka.IAM: data ListUsersResponse
+ Amazonka.IAM: data ListVirtualMFADevices
+ Amazonka.IAM: data ListVirtualMFADevicesResponse
+ Amazonka.IAM: data LoginProfile
+ Amazonka.IAM: data MFADevice
+ Amazonka.IAM: data ManagedPolicyDetail
+ Amazonka.IAM: data OpenIDConnectProviderListEntry
+ Amazonka.IAM: data OrganizationsDecisionDetail
+ Amazonka.IAM: data PasswordPolicy
+ Amazonka.IAM: data PermissionsBoundaryDecisionDetail
+ Amazonka.IAM: data Policy
+ Amazonka.IAM: data PolicyDetail
+ Amazonka.IAM: data PolicyGrantingServiceAccess
+ Amazonka.IAM: data PolicyGroup
+ Amazonka.IAM: data PolicyRole
+ Amazonka.IAM: data PolicyUser
+ Amazonka.IAM: data PolicyVersion
+ Amazonka.IAM: data Position
+ Amazonka.IAM: data PutGroupPolicy
+ Amazonka.IAM: data PutGroupPolicyResponse
+ Amazonka.IAM: data PutRolePermissionsBoundary
+ Amazonka.IAM: data PutRolePermissionsBoundaryResponse
+ Amazonka.IAM: data PutRolePolicy
+ Amazonka.IAM: data PutRolePolicyResponse
+ Amazonka.IAM: data PutUserPermissionsBoundary
+ Amazonka.IAM: data PutUserPermissionsBoundaryResponse
+ Amazonka.IAM: data PutUserPolicy
+ Amazonka.IAM: data PutUserPolicyResponse
+ Amazonka.IAM: data RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM: data RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM: data RemoveRoleFromInstanceProfile
+ Amazonka.IAM: data RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM: data RemoveUserFromGroup
+ Amazonka.IAM: data RemoveUserFromGroupResponse
+ Amazonka.IAM: data ResetServiceSpecificCredential
+ Amazonka.IAM: data ResetServiceSpecificCredentialResponse
+ Amazonka.IAM: data ResourceSpecificResult
+ Amazonka.IAM: data ResyncMFADevice
+ Amazonka.IAM: data ResyncMFADeviceResponse
+ Amazonka.IAM: data Role
+ Amazonka.IAM: data RoleDetail
+ Amazonka.IAM: data RoleLastUsed
+ Amazonka.IAM: data RoleUsageType
+ Amazonka.IAM: data SAMLProviderListEntry
+ Amazonka.IAM: data SSHPublicKey
+ Amazonka.IAM: data SSHPublicKeyMetadata
+ Amazonka.IAM: data ServerCertificate
+ Amazonka.IAM: data ServerCertificateMetadata
+ Amazonka.IAM: data ServiceLastAccessed
+ Amazonka.IAM: data ServiceSpecificCredential
+ Amazonka.IAM: data ServiceSpecificCredentialMetadata
+ Amazonka.IAM: data SetDefaultPolicyVersion
+ Amazonka.IAM: data SetDefaultPolicyVersionResponse
+ Amazonka.IAM: data SetSecurityTokenServicePreferences
+ Amazonka.IAM: data SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM: data SigningCertificate
+ Amazonka.IAM: data SimulateCustomPolicy
+ Amazonka.IAM: data SimulatePolicyResponse
+ Amazonka.IAM: data SimulatePrincipalPolicy
+ Amazonka.IAM: data Statement
+ Amazonka.IAM: data Tag
+ Amazonka.IAM: data TagInstanceProfile
+ Amazonka.IAM: data TagInstanceProfileResponse
+ Amazonka.IAM: data TagMFADevice
+ Amazonka.IAM: data TagMFADeviceResponse
+ Amazonka.IAM: data TagOpenIDConnectProvider
+ Amazonka.IAM: data TagOpenIDConnectProviderResponse
+ Amazonka.IAM: data TagPolicy
+ Amazonka.IAM: data TagPolicyResponse
+ Amazonka.IAM: data TagRole
+ Amazonka.IAM: data TagRoleResponse
+ Amazonka.IAM: data TagSAMLProvider
+ Amazonka.IAM: data TagSAMLProviderResponse
+ Amazonka.IAM: data TagServerCertificate
+ Amazonka.IAM: data TagServerCertificateResponse
+ Amazonka.IAM: data TagUser
+ Amazonka.IAM: data TagUserResponse
+ Amazonka.IAM: data TrackedActionLastAccessed
+ Amazonka.IAM: data UntagInstanceProfile
+ Amazonka.IAM: data UntagInstanceProfileResponse
+ Amazonka.IAM: data UntagMFADevice
+ Amazonka.IAM: data UntagMFADeviceResponse
+ Amazonka.IAM: data UntagOpenIDConnectProvider
+ Amazonka.IAM: data UntagOpenIDConnectProviderResponse
+ Amazonka.IAM: data UntagPolicy
+ Amazonka.IAM: data UntagPolicyResponse
+ Amazonka.IAM: data UntagRole
+ Amazonka.IAM: data UntagRoleResponse
+ Amazonka.IAM: data UntagSAMLProvider
+ Amazonka.IAM: data UntagSAMLProviderResponse
+ Amazonka.IAM: data UntagServerCertificate
+ Amazonka.IAM: data UntagServerCertificateResponse
+ Amazonka.IAM: data UntagUser
+ Amazonka.IAM: data UntagUserResponse
+ Amazonka.IAM: data UpdateAccessKey
+ Amazonka.IAM: data UpdateAccessKeyResponse
+ Amazonka.IAM: data UpdateAccountPasswordPolicy
+ Amazonka.IAM: data UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM: data UpdateAssumeRolePolicy
+ Amazonka.IAM: data UpdateAssumeRolePolicyResponse
+ Amazonka.IAM: data UpdateGroup
+ Amazonka.IAM: data UpdateGroupResponse
+ Amazonka.IAM: data UpdateLoginProfile
+ Amazonka.IAM: data UpdateLoginProfileResponse
+ Amazonka.IAM: data UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM: data UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM: data UpdateRole
+ Amazonka.IAM: data UpdateRoleDescription
+ Amazonka.IAM: data UpdateRoleDescriptionResponse
+ Amazonka.IAM: data UpdateRoleResponse
+ Amazonka.IAM: data UpdateSAMLProvider
+ Amazonka.IAM: data UpdateSAMLProviderResponse
+ Amazonka.IAM: data UpdateSSHPublicKey
+ Amazonka.IAM: data UpdateSSHPublicKeyResponse
+ Amazonka.IAM: data UpdateServerCertificate
+ Amazonka.IAM: data UpdateServerCertificateResponse
+ Amazonka.IAM: data UpdateServiceSpecificCredential
+ Amazonka.IAM: data UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM: data UpdateSigningCertificate
+ Amazonka.IAM: data UpdateSigningCertificateResponse
+ Amazonka.IAM: data UpdateUser
+ Amazonka.IAM: data UpdateUserResponse
+ Amazonka.IAM: data UploadSSHPublicKey
+ Amazonka.IAM: data UploadSSHPublicKeyResponse
+ Amazonka.IAM: data UploadServerCertificate
+ Amazonka.IAM: data UploadServerCertificateResponse
+ Amazonka.IAM: data UploadSigningCertificate
+ Amazonka.IAM: data UploadSigningCertificateResponse
+ Amazonka.IAM: data User
+ Amazonka.IAM: data UserDetail
+ Amazonka.IAM: data VirtualMFADevice
+ Amazonka.IAM: defaultService :: Service
+ Amazonka.IAM: newAccessDetail :: Text -> Text -> AccessDetail
+ Amazonka.IAM: newAccessKeyInfo :: Text -> AccessKey -> StatusType -> Text -> AccessKeyInfo
+ Amazonka.IAM: newAccessKeyLastUsed :: UTCTime -> Text -> Text -> AccessKeyLastUsed
+ Amazonka.IAM: newAccessKeyMetadata :: AccessKeyMetadata
+ Amazonka.IAM: newAddClientIDToOpenIDConnectProvider :: Text -> Text -> AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM: newAddClientIDToOpenIDConnectProviderResponse :: AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM: newAddRoleToInstanceProfile :: Text -> Text -> AddRoleToInstanceProfile
+ Amazonka.IAM: newAddRoleToInstanceProfileResponse :: AddRoleToInstanceProfileResponse
+ Amazonka.IAM: newAddUserToGroup :: Text -> Text -> AddUserToGroup
+ Amazonka.IAM: newAddUserToGroupResponse :: AddUserToGroupResponse
+ Amazonka.IAM: newAttachGroupPolicy :: Text -> Text -> AttachGroupPolicy
+ Amazonka.IAM: newAttachGroupPolicyResponse :: AttachGroupPolicyResponse
+ Amazonka.IAM: newAttachRolePolicy :: Text -> Text -> AttachRolePolicy
+ Amazonka.IAM: newAttachRolePolicyResponse :: AttachRolePolicyResponse
+ Amazonka.IAM: newAttachUserPolicy :: Text -> Text -> AttachUserPolicy
+ Amazonka.IAM: newAttachUserPolicyResponse :: AttachUserPolicyResponse
+ Amazonka.IAM: newAttachedPermissionsBoundary :: AttachedPermissionsBoundary
+ Amazonka.IAM: newAttachedPolicy :: AttachedPolicy
+ Amazonka.IAM: newChangePassword :: Text -> Text -> ChangePassword
+ Amazonka.IAM: newChangePasswordResponse :: ChangePasswordResponse
+ Amazonka.IAM: newContextEntry :: ContextEntry
+ Amazonka.IAM: newCreateAccessKey :: CreateAccessKey
+ Amazonka.IAM: newCreateAccessKeyResponse :: Int -> AccessKeyInfo -> CreateAccessKeyResponse
+ Amazonka.IAM: newCreateAccountAlias :: Text -> CreateAccountAlias
+ Amazonka.IAM: newCreateAccountAliasResponse :: CreateAccountAliasResponse
+ Amazonka.IAM: newCreateGroup :: Text -> CreateGroup
+ Amazonka.IAM: newCreateGroupResponse :: Int -> Group -> CreateGroupResponse
+ Amazonka.IAM: newCreateInstanceProfile :: Text -> CreateInstanceProfile
+ Amazonka.IAM: newCreateInstanceProfileResponse :: Int -> InstanceProfile -> CreateInstanceProfileResponse
+ Amazonka.IAM: newCreateLoginProfile :: Text -> Text -> CreateLoginProfile
+ Amazonka.IAM: newCreateLoginProfileResponse :: Int -> LoginProfile -> CreateLoginProfileResponse
+ Amazonka.IAM: newCreateOpenIDConnectProvider :: Text -> CreateOpenIDConnectProvider
+ Amazonka.IAM: newCreateOpenIDConnectProviderResponse :: Int -> CreateOpenIDConnectProviderResponse
+ Amazonka.IAM: newCreatePolicy :: Text -> Text -> CreatePolicy
+ Amazonka.IAM: newCreatePolicyResponse :: Int -> CreatePolicyResponse
+ Amazonka.IAM: newCreatePolicyVersion :: Text -> Text -> CreatePolicyVersion
+ Amazonka.IAM: newCreatePolicyVersionResponse :: Int -> CreatePolicyVersionResponse
+ Amazonka.IAM: newCreateRole :: Text -> Text -> CreateRole
+ Amazonka.IAM: newCreateRoleResponse :: Int -> Role -> CreateRoleResponse
+ Amazonka.IAM: newCreateSAMLProvider :: Text -> Text -> CreateSAMLProvider
+ Amazonka.IAM: newCreateSAMLProviderResponse :: Int -> CreateSAMLProviderResponse
+ Amazonka.IAM: newCreateServiceLinkedRole :: Text -> CreateServiceLinkedRole
+ Amazonka.IAM: newCreateServiceLinkedRoleResponse :: Int -> CreateServiceLinkedRoleResponse
+ Amazonka.IAM: newCreateServiceSpecificCredential :: Text -> Text -> CreateServiceSpecificCredential
+ Amazonka.IAM: newCreateServiceSpecificCredentialResponse :: Int -> CreateServiceSpecificCredentialResponse
+ Amazonka.IAM: newCreateUser :: Text -> CreateUser
+ Amazonka.IAM: newCreateUserResponse :: Int -> CreateUserResponse
+ Amazonka.IAM: newCreateVirtualMFADevice :: Text -> CreateVirtualMFADevice
+ Amazonka.IAM: newCreateVirtualMFADeviceResponse :: Int -> VirtualMFADevice -> CreateVirtualMFADeviceResponse
+ Amazonka.IAM: newDeactivateMFADevice :: Text -> Text -> DeactivateMFADevice
+ Amazonka.IAM: newDeactivateMFADeviceResponse :: DeactivateMFADeviceResponse
+ Amazonka.IAM: newDeleteAccessKey :: AccessKey -> DeleteAccessKey
+ Amazonka.IAM: newDeleteAccessKeyResponse :: DeleteAccessKeyResponse
+ Amazonka.IAM: newDeleteAccountAlias :: Text -> DeleteAccountAlias
+ Amazonka.IAM: newDeleteAccountAliasResponse :: DeleteAccountAliasResponse
+ Amazonka.IAM: newDeleteAccountPasswordPolicy :: DeleteAccountPasswordPolicy
+ Amazonka.IAM: newDeleteAccountPasswordPolicyResponse :: DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM: newDeleteGroup :: Text -> DeleteGroup
+ Amazonka.IAM: newDeleteGroupPolicy :: Text -> Text -> DeleteGroupPolicy
+ Amazonka.IAM: newDeleteGroupPolicyResponse :: DeleteGroupPolicyResponse
+ Amazonka.IAM: newDeleteGroupResponse :: DeleteGroupResponse
+ Amazonka.IAM: newDeleteInstanceProfile :: Text -> DeleteInstanceProfile
+ Amazonka.IAM: newDeleteInstanceProfileResponse :: DeleteInstanceProfileResponse
+ Amazonka.IAM: newDeleteLoginProfile :: Text -> DeleteLoginProfile
+ Amazonka.IAM: newDeleteLoginProfileResponse :: DeleteLoginProfileResponse
+ Amazonka.IAM: newDeleteOpenIDConnectProvider :: Text -> DeleteOpenIDConnectProvider
+ Amazonka.IAM: newDeleteOpenIDConnectProviderResponse :: DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM: newDeletePolicy :: Text -> DeletePolicy
+ Amazonka.IAM: newDeletePolicyResponse :: DeletePolicyResponse
+ Amazonka.IAM: newDeletePolicyVersion :: Text -> Text -> DeletePolicyVersion
+ Amazonka.IAM: newDeletePolicyVersionResponse :: DeletePolicyVersionResponse
+ Amazonka.IAM: newDeleteRole :: Text -> DeleteRole
+ Amazonka.IAM: newDeleteRolePermissionsBoundary :: Text -> DeleteRolePermissionsBoundary
+ Amazonka.IAM: newDeleteRolePermissionsBoundaryResponse :: DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM: newDeleteRolePolicy :: Text -> Text -> DeleteRolePolicy
+ Amazonka.IAM: newDeleteRolePolicyResponse :: DeleteRolePolicyResponse
+ Amazonka.IAM: newDeleteRoleResponse :: DeleteRoleResponse
+ Amazonka.IAM: newDeleteSAMLProvider :: Text -> DeleteSAMLProvider
+ Amazonka.IAM: newDeleteSAMLProviderResponse :: DeleteSAMLProviderResponse
+ Amazonka.IAM: newDeleteSSHPublicKey :: Text -> Text -> DeleteSSHPublicKey
+ Amazonka.IAM: newDeleteSSHPublicKeyResponse :: DeleteSSHPublicKeyResponse
+ Amazonka.IAM: newDeleteServerCertificate :: Text -> DeleteServerCertificate
+ Amazonka.IAM: newDeleteServerCertificateResponse :: DeleteServerCertificateResponse
+ Amazonka.IAM: newDeleteServiceLinkedRole :: Text -> DeleteServiceLinkedRole
+ Amazonka.IAM: newDeleteServiceLinkedRoleResponse :: Int -> Text -> DeleteServiceLinkedRoleResponse
+ Amazonka.IAM: newDeleteServiceSpecificCredential :: Text -> DeleteServiceSpecificCredential
+ Amazonka.IAM: newDeleteServiceSpecificCredentialResponse :: DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM: newDeleteSigningCertificate :: Text -> DeleteSigningCertificate
+ Amazonka.IAM: newDeleteSigningCertificateResponse :: DeleteSigningCertificateResponse
+ Amazonka.IAM: newDeleteUser :: Text -> DeleteUser
+ Amazonka.IAM: newDeleteUserPermissionsBoundary :: Text -> DeleteUserPermissionsBoundary
+ Amazonka.IAM: newDeleteUserPermissionsBoundaryResponse :: DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM: newDeleteUserPolicy :: Text -> Text -> DeleteUserPolicy
+ Amazonka.IAM: newDeleteUserPolicyResponse :: DeleteUserPolicyResponse
+ Amazonka.IAM: newDeleteUserResponse :: DeleteUserResponse
+ Amazonka.IAM: newDeleteVirtualMFADevice :: Text -> DeleteVirtualMFADevice
+ Amazonka.IAM: newDeleteVirtualMFADeviceResponse :: DeleteVirtualMFADeviceResponse
+ Amazonka.IAM: newDeletionTaskFailureReasonType :: DeletionTaskFailureReasonType
+ Amazonka.IAM: newDetachGroupPolicy :: Text -> Text -> DetachGroupPolicy
+ Amazonka.IAM: newDetachGroupPolicyResponse :: DetachGroupPolicyResponse
+ Amazonka.IAM: newDetachRolePolicy :: Text -> Text -> DetachRolePolicy
+ Amazonka.IAM: newDetachRolePolicyResponse :: DetachRolePolicyResponse
+ Amazonka.IAM: newDetachUserPolicy :: Text -> Text -> DetachUserPolicy
+ Amazonka.IAM: newDetachUserPolicyResponse :: DetachUserPolicyResponse
+ Amazonka.IAM: newEnableMFADevice :: Text -> Text -> Text -> Text -> EnableMFADevice
+ Amazonka.IAM: newEnableMFADeviceResponse :: EnableMFADeviceResponse
+ Amazonka.IAM: newEntityDetails :: EntityInfo -> EntityDetails
+ Amazonka.IAM: newEntityInfo :: Text -> Text -> PolicyOwnerEntityType -> Text -> EntityInfo
+ Amazonka.IAM: newErrorDetails :: Text -> Text -> ErrorDetails
+ Amazonka.IAM: newEvaluationResult :: Text -> PolicyEvaluationDecisionType -> EvaluationResult
+ Amazonka.IAM: newGenerateCredentialReport :: GenerateCredentialReport
+ Amazonka.IAM: newGenerateCredentialReportResponse :: Int -> GenerateCredentialReportResponse
+ Amazonka.IAM: newGenerateOrganizationsAccessReport :: Text -> GenerateOrganizationsAccessReport
+ Amazonka.IAM: newGenerateOrganizationsAccessReportResponse :: Int -> GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM: newGenerateServiceLastAccessedDetails :: Text -> GenerateServiceLastAccessedDetails
+ Amazonka.IAM: newGenerateServiceLastAccessedDetailsResponse :: Int -> GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM: newGetAccessKeyLastUsed :: AccessKey -> GetAccessKeyLastUsed
+ Amazonka.IAM: newGetAccessKeyLastUsedResponse :: Int -> GetAccessKeyLastUsedResponse
+ Amazonka.IAM: newGetAccountAuthorizationDetails :: GetAccountAuthorizationDetails
+ Amazonka.IAM: newGetAccountAuthorizationDetailsResponse :: Int -> GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM: newGetAccountPasswordPolicy :: GetAccountPasswordPolicy
+ Amazonka.IAM: newGetAccountPasswordPolicyResponse :: Int -> PasswordPolicy -> GetAccountPasswordPolicyResponse
+ Amazonka.IAM: newGetAccountSummary :: GetAccountSummary
+ Amazonka.IAM: newGetAccountSummaryResponse :: Int -> GetAccountSummaryResponse
+ Amazonka.IAM: newGetContextKeysForCustomPolicy :: GetContextKeysForCustomPolicy
+ Amazonka.IAM: newGetContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
+ Amazonka.IAM: newGetContextKeysForPrincipalPolicy :: Text -> GetContextKeysForPrincipalPolicy
+ Amazonka.IAM: newGetCredentialReport :: GetCredentialReport
+ Amazonka.IAM: newGetCredentialReportResponse :: Int -> GetCredentialReportResponse
+ Amazonka.IAM: newGetGroup :: Text -> GetGroup
+ Amazonka.IAM: newGetGroupPolicy :: Text -> Text -> GetGroupPolicy
+ Amazonka.IAM: newGetGroupPolicyResponse :: Int -> Text -> Text -> Text -> GetGroupPolicyResponse
+ Amazonka.IAM: newGetGroupResponse :: Int -> Group -> GetGroupResponse
+ Amazonka.IAM: newGetInstanceProfile :: Text -> GetInstanceProfile
+ Amazonka.IAM: newGetInstanceProfileResponse :: Int -> InstanceProfile -> GetInstanceProfileResponse
+ Amazonka.IAM: newGetLoginProfile :: Text -> GetLoginProfile
+ Amazonka.IAM: newGetLoginProfileResponse :: Int -> LoginProfile -> GetLoginProfileResponse
+ Amazonka.IAM: newGetOpenIDConnectProvider :: Text -> GetOpenIDConnectProvider
+ Amazonka.IAM: newGetOpenIDConnectProviderResponse :: Int -> GetOpenIDConnectProviderResponse
+ Amazonka.IAM: newGetOrganizationsAccessReport :: Text -> GetOrganizationsAccessReport
+ Amazonka.IAM: newGetOrganizationsAccessReportResponse :: Int -> JobStatusType -> UTCTime -> GetOrganizationsAccessReportResponse
+ Amazonka.IAM: newGetPolicy :: Text -> GetPolicy
+ Amazonka.IAM: newGetPolicyResponse :: Int -> GetPolicyResponse
+ Amazonka.IAM: newGetPolicyVersion :: Text -> Text -> GetPolicyVersion
+ Amazonka.IAM: newGetPolicyVersionResponse :: Int -> GetPolicyVersionResponse
+ Amazonka.IAM: newGetRole :: Text -> GetRole
+ Amazonka.IAM: newGetRolePolicy :: Text -> Text -> GetRolePolicy
+ Amazonka.IAM: newGetRolePolicyResponse :: Int -> Text -> Text -> Text -> GetRolePolicyResponse
+ Amazonka.IAM: newGetRoleResponse :: Int -> Role -> GetRoleResponse
+ Amazonka.IAM: newGetSAMLProvider :: Text -> GetSAMLProvider
+ Amazonka.IAM: newGetSAMLProviderResponse :: Int -> GetSAMLProviderResponse
+ Amazonka.IAM: newGetSSHPublicKey :: Text -> Text -> EncodingType -> GetSSHPublicKey
+ Amazonka.IAM: newGetSSHPublicKeyResponse :: Int -> GetSSHPublicKeyResponse
+ Amazonka.IAM: newGetServerCertificate :: Text -> GetServerCertificate
+ Amazonka.IAM: newGetServerCertificateResponse :: Int -> ServerCertificate -> GetServerCertificateResponse
+ Amazonka.IAM: newGetServiceLastAccessedDetails :: Text -> GetServiceLastAccessedDetails
+ Amazonka.IAM: newGetServiceLastAccessedDetailsResponse :: Int -> JobStatusType -> UTCTime -> UTCTime -> GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM: newGetServiceLastAccessedDetailsWithEntities :: Text -> Text -> GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM: newGetServiceLastAccessedDetailsWithEntitiesResponse :: Int -> JobStatusType -> UTCTime -> UTCTime -> GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM: newGetServiceLinkedRoleDeletionStatus :: Text -> GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM: newGetServiceLinkedRoleDeletionStatusResponse :: Int -> DeletionTaskStatusType -> GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM: newGetUser :: GetUser
+ Amazonka.IAM: newGetUserPolicy :: Text -> Text -> GetUserPolicy
+ Amazonka.IAM: newGetUserPolicyResponse :: Int -> Text -> Text -> Text -> GetUserPolicyResponse
+ Amazonka.IAM: newGetUserResponse :: Int -> User -> GetUserResponse
+ Amazonka.IAM: newGroup :: Text -> Text -> Text -> Text -> UTCTime -> Group
+ Amazonka.IAM: newGroupDetail :: GroupDetail
+ Amazonka.IAM: newInstanceProfile :: Text -> Text -> Text -> Text -> UTCTime -> InstanceProfile
+ Amazonka.IAM: newInstanceProfileExists :: Wait GetInstanceProfile
+ Amazonka.IAM: newListAccessKeys :: ListAccessKeys
+ Amazonka.IAM: newListAccessKeysResponse :: Int -> ListAccessKeysResponse
+ Amazonka.IAM: newListAccountAliases :: ListAccountAliases
+ Amazonka.IAM: newListAccountAliasesResponse :: Int -> ListAccountAliasesResponse
+ Amazonka.IAM: newListAttachedGroupPolicies :: Text -> ListAttachedGroupPolicies
+ Amazonka.IAM: newListAttachedGroupPoliciesResponse :: Int -> ListAttachedGroupPoliciesResponse
+ Amazonka.IAM: newListAttachedRolePolicies :: Text -> ListAttachedRolePolicies
+ Amazonka.IAM: newListAttachedRolePoliciesResponse :: Int -> ListAttachedRolePoliciesResponse
+ Amazonka.IAM: newListAttachedUserPolicies :: Text -> ListAttachedUserPolicies
+ Amazonka.IAM: newListAttachedUserPoliciesResponse :: Int -> ListAttachedUserPoliciesResponse
+ Amazonka.IAM: newListEntitiesForPolicy :: Text -> ListEntitiesForPolicy
+ Amazonka.IAM: newListEntitiesForPolicyResponse :: Int -> ListEntitiesForPolicyResponse
+ Amazonka.IAM: newListGroupPolicies :: Text -> ListGroupPolicies
+ Amazonka.IAM: newListGroupPoliciesResponse :: Int -> ListGroupPoliciesResponse
+ Amazonka.IAM: newListGroups :: ListGroups
+ Amazonka.IAM: newListGroupsForUser :: Text -> ListGroupsForUser
+ Amazonka.IAM: newListGroupsForUserResponse :: Int -> ListGroupsForUserResponse
+ Amazonka.IAM: newListGroupsResponse :: Int -> ListGroupsResponse
+ Amazonka.IAM: newListInstanceProfileTags :: Text -> ListInstanceProfileTags
+ Amazonka.IAM: newListInstanceProfileTagsResponse :: Int -> ListInstanceProfileTagsResponse
+ Amazonka.IAM: newListInstanceProfiles :: ListInstanceProfiles
+ Amazonka.IAM: newListInstanceProfilesForRole :: Text -> ListInstanceProfilesForRole
+ Amazonka.IAM: newListInstanceProfilesForRoleResponse :: Int -> ListInstanceProfilesForRoleResponse
+ Amazonka.IAM: newListInstanceProfilesResponse :: Int -> ListInstanceProfilesResponse
+ Amazonka.IAM: newListMFADeviceTags :: Text -> ListMFADeviceTags
+ Amazonka.IAM: newListMFADeviceTagsResponse :: Int -> ListMFADeviceTagsResponse
+ Amazonka.IAM: newListMFADevices :: ListMFADevices
+ Amazonka.IAM: newListMFADevicesResponse :: Int -> ListMFADevicesResponse
+ Amazonka.IAM: newListOpenIDConnectProviderTags :: Text -> ListOpenIDConnectProviderTags
+ Amazonka.IAM: newListOpenIDConnectProviderTagsResponse :: Int -> ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM: newListOpenIDConnectProviders :: ListOpenIDConnectProviders
+ Amazonka.IAM: newListOpenIDConnectProvidersResponse :: Int -> ListOpenIDConnectProvidersResponse
+ Amazonka.IAM: newListPolicies :: ListPolicies
+ Amazonka.IAM: newListPoliciesGrantingServiceAccess :: Text -> NonEmpty Text -> ListPoliciesGrantingServiceAccess
+ Amazonka.IAM: newListPoliciesGrantingServiceAccessEntry :: ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM: newListPoliciesGrantingServiceAccessResponse :: Int -> ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM: newListPoliciesResponse :: Int -> ListPoliciesResponse
+ Amazonka.IAM: newListPolicyTags :: Text -> ListPolicyTags
+ Amazonka.IAM: newListPolicyTagsResponse :: Int -> ListPolicyTagsResponse
+ Amazonka.IAM: newListPolicyVersions :: Text -> ListPolicyVersions
+ Amazonka.IAM: newListPolicyVersionsResponse :: Int -> ListPolicyVersionsResponse
+ Amazonka.IAM: newListRolePolicies :: Text -> ListRolePolicies
+ Amazonka.IAM: newListRolePoliciesResponse :: Int -> ListRolePoliciesResponse
+ Amazonka.IAM: newListRoleTags :: Text -> ListRoleTags
+ Amazonka.IAM: newListRoleTagsResponse :: Int -> ListRoleTagsResponse
+ Amazonka.IAM: newListRoles :: ListRoles
+ Amazonka.IAM: newListRolesResponse :: Int -> ListRolesResponse
+ Amazonka.IAM: newListSAMLProviderTags :: Text -> ListSAMLProviderTags
+ Amazonka.IAM: newListSAMLProviderTagsResponse :: Int -> ListSAMLProviderTagsResponse
+ Amazonka.IAM: newListSAMLProviders :: ListSAMLProviders
+ Amazonka.IAM: newListSAMLProvidersResponse :: Int -> ListSAMLProvidersResponse
+ Amazonka.IAM: newListSSHPublicKeys :: ListSSHPublicKeys
+ Amazonka.IAM: newListSSHPublicKeysResponse :: Int -> ListSSHPublicKeysResponse
+ Amazonka.IAM: newListServerCertificateTags :: Text -> ListServerCertificateTags
+ Amazonka.IAM: newListServerCertificateTagsResponse :: Int -> ListServerCertificateTagsResponse
+ Amazonka.IAM: newListServerCertificates :: ListServerCertificates
+ Amazonka.IAM: newListServerCertificatesResponse :: Int -> ListServerCertificatesResponse
+ Amazonka.IAM: newListServiceSpecificCredentials :: ListServiceSpecificCredentials
+ Amazonka.IAM: newListServiceSpecificCredentialsResponse :: Int -> ListServiceSpecificCredentialsResponse
+ Amazonka.IAM: newListSigningCertificates :: ListSigningCertificates
+ Amazonka.IAM: newListSigningCertificatesResponse :: Int -> ListSigningCertificatesResponse
+ Amazonka.IAM: newListUserPolicies :: Text -> ListUserPolicies
+ Amazonka.IAM: newListUserPoliciesResponse :: Int -> ListUserPoliciesResponse
+ Amazonka.IAM: newListUserTags :: Text -> ListUserTags
+ Amazonka.IAM: newListUserTagsResponse :: Int -> ListUserTagsResponse
+ Amazonka.IAM: newListUsers :: ListUsers
+ Amazonka.IAM: newListUsersResponse :: Int -> ListUsersResponse
+ Amazonka.IAM: newListVirtualMFADevices :: ListVirtualMFADevices
+ Amazonka.IAM: newListVirtualMFADevicesResponse :: Int -> ListVirtualMFADevicesResponse
+ Amazonka.IAM: newLoginProfile :: Text -> UTCTime -> LoginProfile
+ Amazonka.IAM: newMFADevice :: Text -> Text -> UTCTime -> MFADevice
+ Amazonka.IAM: newManagedPolicyDetail :: ManagedPolicyDetail
+ Amazonka.IAM: newOpenIDConnectProviderListEntry :: OpenIDConnectProviderListEntry
+ Amazonka.IAM: newOrganizationsDecisionDetail :: OrganizationsDecisionDetail
+ Amazonka.IAM: newPasswordPolicy :: PasswordPolicy
+ Amazonka.IAM: newPermissionsBoundaryDecisionDetail :: PermissionsBoundaryDecisionDetail
+ Amazonka.IAM: newPolicy :: Policy
+ Amazonka.IAM: newPolicyDetail :: PolicyDetail
+ Amazonka.IAM: newPolicyExists :: Wait GetPolicy
+ Amazonka.IAM: newPolicyGrantingServiceAccess :: Text -> PolicyType -> PolicyGrantingServiceAccess
+ Amazonka.IAM: newPolicyGroup :: PolicyGroup
+ Amazonka.IAM: newPolicyRole :: PolicyRole
+ Amazonka.IAM: newPolicyUser :: PolicyUser
+ Amazonka.IAM: newPolicyVersion :: PolicyVersion
+ Amazonka.IAM: newPosition :: Position
+ Amazonka.IAM: newPutGroupPolicy :: Text -> Text -> Text -> PutGroupPolicy
+ Amazonka.IAM: newPutGroupPolicyResponse :: PutGroupPolicyResponse
+ Amazonka.IAM: newPutRolePermissionsBoundary :: Text -> Text -> PutRolePermissionsBoundary
+ Amazonka.IAM: newPutRolePermissionsBoundaryResponse :: PutRolePermissionsBoundaryResponse
+ Amazonka.IAM: newPutRolePolicy :: Text -> Text -> Text -> PutRolePolicy
+ Amazonka.IAM: newPutRolePolicyResponse :: PutRolePolicyResponse
+ Amazonka.IAM: newPutUserPermissionsBoundary :: Text -> Text -> PutUserPermissionsBoundary
+ Amazonka.IAM: newPutUserPermissionsBoundaryResponse :: PutUserPermissionsBoundaryResponse
+ Amazonka.IAM: newPutUserPolicy :: Text -> Text -> Text -> PutUserPolicy
+ Amazonka.IAM: newPutUserPolicyResponse :: PutUserPolicyResponse
+ Amazonka.IAM: newRemoveClientIDFromOpenIDConnectProvider :: Text -> Text -> RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM: newRemoveClientIDFromOpenIDConnectProviderResponse :: RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM: newRemoveRoleFromInstanceProfile :: Text -> Text -> RemoveRoleFromInstanceProfile
+ Amazonka.IAM: newRemoveRoleFromInstanceProfileResponse :: RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM: newRemoveUserFromGroup :: Text -> Text -> RemoveUserFromGroup
+ Amazonka.IAM: newRemoveUserFromGroupResponse :: RemoveUserFromGroupResponse
+ Amazonka.IAM: newResetServiceSpecificCredential :: Text -> ResetServiceSpecificCredential
+ Amazonka.IAM: newResetServiceSpecificCredentialResponse :: Int -> ResetServiceSpecificCredentialResponse
+ Amazonka.IAM: newResourceSpecificResult :: Text -> PolicyEvaluationDecisionType -> ResourceSpecificResult
+ Amazonka.IAM: newResyncMFADevice :: Text -> Text -> Text -> Text -> ResyncMFADevice
+ Amazonka.IAM: newResyncMFADeviceResponse :: ResyncMFADeviceResponse
+ Amazonka.IAM: newRole :: Text -> Text -> Text -> Text -> UTCTime -> Role
+ Amazonka.IAM: newRoleDetail :: RoleDetail
+ Amazonka.IAM: newRoleExists :: Wait GetRole
+ Amazonka.IAM: newRoleLastUsed :: RoleLastUsed
+ Amazonka.IAM: newRoleUsageType :: RoleUsageType
+ Amazonka.IAM: newSAMLProviderListEntry :: SAMLProviderListEntry
+ Amazonka.IAM: newSSHPublicKey :: Text -> Text -> Text -> Text -> StatusType -> SSHPublicKey
+ Amazonka.IAM: newSSHPublicKeyMetadata :: Text -> Text -> StatusType -> UTCTime -> SSHPublicKeyMetadata
+ Amazonka.IAM: newServerCertificate :: ServerCertificateMetadata -> Text -> ServerCertificate
+ Amazonka.IAM: newServerCertificateMetadata :: Text -> Text -> Text -> Text -> ServerCertificateMetadata
+ Amazonka.IAM: newServiceLastAccessed :: Text -> Text -> ServiceLastAccessed
+ Amazonka.IAM: newServiceSpecificCredential :: UTCTime -> Text -> Text -> Text -> Text -> Text -> StatusType -> ServiceSpecificCredential
+ Amazonka.IAM: newServiceSpecificCredentialMetadata :: Text -> StatusType -> Text -> UTCTime -> Text -> Text -> ServiceSpecificCredentialMetadata
+ Amazonka.IAM: newSetDefaultPolicyVersion :: Text -> Text -> SetDefaultPolicyVersion
+ Amazonka.IAM: newSetDefaultPolicyVersionResponse :: SetDefaultPolicyVersionResponse
+ Amazonka.IAM: newSetSecurityTokenServicePreferences :: GlobalEndpointTokenVersion -> SetSecurityTokenServicePreferences
+ Amazonka.IAM: newSetSecurityTokenServicePreferencesResponse :: SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM: newSigningCertificate :: Text -> Text -> Text -> StatusType -> SigningCertificate
+ Amazonka.IAM: newSimulateCustomPolicy :: SimulateCustomPolicy
+ Amazonka.IAM: newSimulatePolicyResponse :: SimulatePolicyResponse
+ Amazonka.IAM: newSimulatePrincipalPolicy :: Text -> SimulatePrincipalPolicy
+ Amazonka.IAM: newStatement :: Statement
+ Amazonka.IAM: newTag :: Text -> Text -> Tag
+ Amazonka.IAM: newTagInstanceProfile :: Text -> TagInstanceProfile
+ Amazonka.IAM: newTagInstanceProfileResponse :: TagInstanceProfileResponse
+ Amazonka.IAM: newTagMFADevice :: Text -> TagMFADevice
+ Amazonka.IAM: newTagMFADeviceResponse :: TagMFADeviceResponse
+ Amazonka.IAM: newTagOpenIDConnectProvider :: Text -> TagOpenIDConnectProvider
+ Amazonka.IAM: newTagOpenIDConnectProviderResponse :: TagOpenIDConnectProviderResponse
+ Amazonka.IAM: newTagPolicy :: Text -> TagPolicy
+ Amazonka.IAM: newTagPolicyResponse :: TagPolicyResponse
+ Amazonka.IAM: newTagRole :: Text -> TagRole
+ Amazonka.IAM: newTagRoleResponse :: TagRoleResponse
+ Amazonka.IAM: newTagSAMLProvider :: Text -> TagSAMLProvider
+ Amazonka.IAM: newTagSAMLProviderResponse :: TagSAMLProviderResponse
+ Amazonka.IAM: newTagServerCertificate :: Text -> TagServerCertificate
+ Amazonka.IAM: newTagServerCertificateResponse :: TagServerCertificateResponse
+ Amazonka.IAM: newTagUser :: Text -> TagUser
+ Amazonka.IAM: newTagUserResponse :: TagUserResponse
+ Amazonka.IAM: newTrackedActionLastAccessed :: TrackedActionLastAccessed
+ Amazonka.IAM: newUntagInstanceProfile :: Text -> UntagInstanceProfile
+ Amazonka.IAM: newUntagInstanceProfileResponse :: UntagInstanceProfileResponse
+ Amazonka.IAM: newUntagMFADevice :: Text -> UntagMFADevice
+ Amazonka.IAM: newUntagMFADeviceResponse :: UntagMFADeviceResponse
+ Amazonka.IAM: newUntagOpenIDConnectProvider :: Text -> UntagOpenIDConnectProvider
+ Amazonka.IAM: newUntagOpenIDConnectProviderResponse :: UntagOpenIDConnectProviderResponse
+ Amazonka.IAM: newUntagPolicy :: Text -> UntagPolicy
+ Amazonka.IAM: newUntagPolicyResponse :: UntagPolicyResponse
+ Amazonka.IAM: newUntagRole :: Text -> UntagRole
+ Amazonka.IAM: newUntagRoleResponse :: UntagRoleResponse
+ Amazonka.IAM: newUntagSAMLProvider :: Text -> UntagSAMLProvider
+ Amazonka.IAM: newUntagSAMLProviderResponse :: UntagSAMLProviderResponse
+ Amazonka.IAM: newUntagServerCertificate :: Text -> UntagServerCertificate
+ Amazonka.IAM: newUntagServerCertificateResponse :: UntagServerCertificateResponse
+ Amazonka.IAM: newUntagUser :: Text -> UntagUser
+ Amazonka.IAM: newUntagUserResponse :: UntagUserResponse
+ Amazonka.IAM: newUpdateAccessKey :: AccessKey -> StatusType -> UpdateAccessKey
+ Amazonka.IAM: newUpdateAccessKeyResponse :: UpdateAccessKeyResponse
+ Amazonka.IAM: newUpdateAccountPasswordPolicy :: UpdateAccountPasswordPolicy
+ Amazonka.IAM: newUpdateAccountPasswordPolicyResponse :: UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM: newUpdateAssumeRolePolicy :: Text -> Text -> UpdateAssumeRolePolicy
+ Amazonka.IAM: newUpdateAssumeRolePolicyResponse :: UpdateAssumeRolePolicyResponse
+ Amazonka.IAM: newUpdateGroup :: Text -> UpdateGroup
+ Amazonka.IAM: newUpdateGroupResponse :: UpdateGroupResponse
+ Amazonka.IAM: newUpdateLoginProfile :: Text -> UpdateLoginProfile
+ Amazonka.IAM: newUpdateLoginProfileResponse :: UpdateLoginProfileResponse
+ Amazonka.IAM: newUpdateOpenIDConnectProviderThumbprint :: Text -> UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM: newUpdateOpenIDConnectProviderThumbprintResponse :: UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM: newUpdateRole :: Text -> UpdateRole
+ Amazonka.IAM: newUpdateRoleDescription :: Text -> Text -> UpdateRoleDescription
+ Amazonka.IAM: newUpdateRoleDescriptionResponse :: Int -> UpdateRoleDescriptionResponse
+ Amazonka.IAM: newUpdateRoleResponse :: Int -> UpdateRoleResponse
+ Amazonka.IAM: newUpdateSAMLProvider :: Text -> Text -> UpdateSAMLProvider
+ Amazonka.IAM: newUpdateSAMLProviderResponse :: Int -> UpdateSAMLProviderResponse
+ Amazonka.IAM: newUpdateSSHPublicKey :: Text -> Text -> StatusType -> UpdateSSHPublicKey
+ Amazonka.IAM: newUpdateSSHPublicKeyResponse :: UpdateSSHPublicKeyResponse
+ Amazonka.IAM: newUpdateServerCertificate :: Text -> UpdateServerCertificate
+ Amazonka.IAM: newUpdateServerCertificateResponse :: UpdateServerCertificateResponse
+ Amazonka.IAM: newUpdateServiceSpecificCredential :: Text -> StatusType -> UpdateServiceSpecificCredential
+ Amazonka.IAM: newUpdateServiceSpecificCredentialResponse :: UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM: newUpdateSigningCertificate :: Text -> StatusType -> UpdateSigningCertificate
+ Amazonka.IAM: newUpdateSigningCertificateResponse :: UpdateSigningCertificateResponse
+ Amazonka.IAM: newUpdateUser :: Text -> UpdateUser
+ Amazonka.IAM: newUpdateUserResponse :: UpdateUserResponse
+ Amazonka.IAM: newUploadSSHPublicKey :: Text -> Text -> UploadSSHPublicKey
+ Amazonka.IAM: newUploadSSHPublicKeyResponse :: Int -> UploadSSHPublicKeyResponse
+ Amazonka.IAM: newUploadServerCertificate :: Text -> Text -> Text -> UploadServerCertificate
+ Amazonka.IAM: newUploadServerCertificateResponse :: Int -> UploadServerCertificateResponse
+ Amazonka.IAM: newUploadSigningCertificate :: Text -> UploadSigningCertificate
+ Amazonka.IAM: newUploadSigningCertificateResponse :: Int -> SigningCertificate -> UploadSigningCertificateResponse
+ Amazonka.IAM: newUser :: Text -> Text -> Text -> UTCTime -> User
+ Amazonka.IAM: newUserDetail :: UserDetail
+ Amazonka.IAM: newUserExists :: Wait GetUser
+ Amazonka.IAM: newVirtualMFADevice :: Text -> VirtualMFADevice
+ Amazonka.IAM: newtype AccessAdvisorUsageGranularityType
+ Amazonka.IAM: newtype AssignmentStatusType
+ Amazonka.IAM: newtype ContextKeyTypeEnum
+ Amazonka.IAM: newtype DeletionTaskStatusType
+ Amazonka.IAM: newtype EncodingType
+ Amazonka.IAM: newtype EntityType
+ Amazonka.IAM: newtype GlobalEndpointTokenVersion
+ Amazonka.IAM: newtype JobStatusType
+ Amazonka.IAM: newtype PermissionsBoundaryAttachmentType
+ Amazonka.IAM: newtype PolicyEvaluationDecisionType
+ Amazonka.IAM: newtype PolicyOwnerEntityType
+ Amazonka.IAM: newtype PolicyScopeType
+ Amazonka.IAM: newtype PolicySourceType
+ Amazonka.IAM: newtype PolicyType
+ Amazonka.IAM: newtype PolicyUsageType
+ Amazonka.IAM: newtype ReportFormatType
+ Amazonka.IAM: newtype ReportStateType
+ Amazonka.IAM: newtype SortKeyType
+ Amazonka.IAM: newtype StatusType
+ Amazonka.IAM: newtype SummaryKeyType
+ Amazonka.IAM: pattern AccessAdvisorUsageGranularityType_ACTION_LEVEL :: AccessAdvisorUsageGranularityType
+ Amazonka.IAM: pattern AccessAdvisorUsageGranularityType_SERVICE_LEVEL :: AccessAdvisorUsageGranularityType
+ Amazonka.IAM: pattern AssignmentStatusType_Any :: AssignmentStatusType
+ Amazonka.IAM: pattern AssignmentStatusType_Assigned :: AssignmentStatusType
+ Amazonka.IAM: pattern AssignmentStatusType_Unassigned :: AssignmentStatusType
+ Amazonka.IAM: pattern ContextKeyTypeEnum_Binary :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_BinaryList :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_Boolean :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_BooleanList :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_Date :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_DateList :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_Ip :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_IpList :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_Numeric :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_NumericList :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_String :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern ContextKeyTypeEnum_StringList :: ContextKeyTypeEnum
+ Amazonka.IAM: pattern DeletionTaskStatusType_FAILED :: DeletionTaskStatusType
+ Amazonka.IAM: pattern DeletionTaskStatusType_IN_PROGRESS :: DeletionTaskStatusType
+ Amazonka.IAM: pattern DeletionTaskStatusType_NOT_STARTED :: DeletionTaskStatusType
+ Amazonka.IAM: pattern DeletionTaskStatusType_SUCCEEDED :: DeletionTaskStatusType
+ Amazonka.IAM: pattern EncodingType_PEM :: EncodingType
+ Amazonka.IAM: pattern EncodingType_SSH :: EncodingType
+ Amazonka.IAM: pattern EntityType_AWSManagedPolicy :: EntityType
+ Amazonka.IAM: pattern EntityType_Group :: EntityType
+ Amazonka.IAM: pattern EntityType_LocalManagedPolicy :: EntityType
+ Amazonka.IAM: pattern EntityType_Role :: EntityType
+ Amazonka.IAM: pattern EntityType_User :: EntityType
+ Amazonka.IAM: pattern GlobalEndpointTokenVersion_V1Token :: GlobalEndpointTokenVersion
+ Amazonka.IAM: pattern GlobalEndpointTokenVersion_V2Token :: GlobalEndpointTokenVersion
+ Amazonka.IAM: pattern JobStatusType_COMPLETED :: JobStatusType
+ Amazonka.IAM: pattern JobStatusType_FAILED :: JobStatusType
+ Amazonka.IAM: pattern JobStatusType_IN_PROGRESS :: JobStatusType
+ Amazonka.IAM: pattern PermissionsBoundaryAttachmentType_PermissionsBoundaryPolicy :: PermissionsBoundaryAttachmentType
+ Amazonka.IAM: pattern PolicyEvaluationDecisionType_Allowed :: PolicyEvaluationDecisionType
+ Amazonka.IAM: pattern PolicyEvaluationDecisionType_ExplicitDeny :: PolicyEvaluationDecisionType
+ Amazonka.IAM: pattern PolicyEvaluationDecisionType_ImplicitDeny :: PolicyEvaluationDecisionType
+ Amazonka.IAM: pattern PolicyOwnerEntityType_GROUP :: PolicyOwnerEntityType
+ Amazonka.IAM: pattern PolicyOwnerEntityType_ROLE :: PolicyOwnerEntityType
+ Amazonka.IAM: pattern PolicyOwnerEntityType_USER :: PolicyOwnerEntityType
+ Amazonka.IAM: pattern PolicyScopeType_AWS :: PolicyScopeType
+ Amazonka.IAM: pattern PolicyScopeType_All :: PolicyScopeType
+ Amazonka.IAM: pattern PolicyScopeType_Local :: PolicyScopeType
+ Amazonka.IAM: pattern PolicySourceType_Aws_managed :: PolicySourceType
+ Amazonka.IAM: pattern PolicySourceType_Group :: PolicySourceType
+ Amazonka.IAM: pattern PolicySourceType_None :: PolicySourceType
+ Amazonka.IAM: pattern PolicySourceType_Resource :: PolicySourceType
+ Amazonka.IAM: pattern PolicySourceType_Role :: PolicySourceType
+ Amazonka.IAM: pattern PolicySourceType_User :: PolicySourceType
+ Amazonka.IAM: pattern PolicySourceType_User_managed :: PolicySourceType
+ Amazonka.IAM: pattern PolicyType_INLINE :: PolicyType
+ Amazonka.IAM: pattern PolicyType_MANAGED :: PolicyType
+ Amazonka.IAM: pattern PolicyUsageType_PermissionsBoundary :: PolicyUsageType
+ Amazonka.IAM: pattern PolicyUsageType_PermissionsPolicy :: PolicyUsageType
+ Amazonka.IAM: pattern ReportFormatType_Text_csv :: ReportFormatType
+ Amazonka.IAM: pattern ReportStateType_COMPLETE :: ReportStateType
+ Amazonka.IAM: pattern ReportStateType_INPROGRESS :: ReportStateType
+ Amazonka.IAM: pattern ReportStateType_STARTED :: ReportStateType
+ Amazonka.IAM: pattern SortKeyType_LAST_AUTHENTICATED_TIME_ASCENDING :: SortKeyType
+ Amazonka.IAM: pattern SortKeyType_LAST_AUTHENTICATED_TIME_DESCENDING :: SortKeyType
+ Amazonka.IAM: pattern SortKeyType_SERVICE_NAMESPACE_ASCENDING :: SortKeyType
+ Amazonka.IAM: pattern SortKeyType_SERVICE_NAMESPACE_DESCENDING :: SortKeyType
+ Amazonka.IAM: pattern StatusType_Active :: StatusType
+ Amazonka.IAM: pattern StatusType_Inactive :: StatusType
+ Amazonka.IAM: pattern SummaryKeyType_AccessKeysPerUserQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_AccountAccessKeysPresent :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_AccountMFAEnabled :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_AccountSigningCertificatesPresent :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_AttachedPoliciesPerGroupQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_AttachedPoliciesPerRoleQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_AttachedPoliciesPerUserQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_GlobalEndpointTokenVersion :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_GroupPolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_Groups :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_GroupsPerUserQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_GroupsQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_MFADevices :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_MFADevicesInUse :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_Policies :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_PoliciesQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_PolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_PolicyVersionsInUse :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_PolicyVersionsInUseQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_ServerCertificates :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_ServerCertificatesQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_SigningCertificatesPerUserQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_UserPolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_Users :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_UsersQuota :: SummaryKeyType
+ Amazonka.IAM: pattern SummaryKeyType_VersionsPerPolicyQuota :: SummaryKeyType
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: AddClientIDToOpenIDConnectProvider' :: Text -> Text -> AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: AddClientIDToOpenIDConnectProviderResponse' :: AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: [$sel:clientID:AddClientIDToOpenIDConnectProvider'] :: AddClientIDToOpenIDConnectProvider -> Text
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: [$sel:openIDConnectProviderArn:AddClientIDToOpenIDConnectProvider'] :: AddClientIDToOpenIDConnectProvider -> Text
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: addClientIDToOpenIDConnectProvider_clientID :: Lens' AddClientIDToOpenIDConnectProvider Text
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: addClientIDToOpenIDConnectProvider_openIDConnectProviderArn :: Lens' AddClientIDToOpenIDConnectProvider Text
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: data AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: data AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.AddClientIDToOpenIDConnectProvider.AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: newAddClientIDToOpenIDConnectProvider :: Text -> Text -> AddClientIDToOpenIDConnectProvider
+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider: newAddClientIDToOpenIDConnectProviderResponse :: AddClientIDToOpenIDConnectProviderResponse
+ Amazonka.IAM.AddRoleToInstanceProfile: AddRoleToInstanceProfile' :: Text -> Text -> AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: AddRoleToInstanceProfileResponse' :: AddRoleToInstanceProfileResponse
+ Amazonka.IAM.AddRoleToInstanceProfile: [$sel:instanceProfileName:AddRoleToInstanceProfile'] :: AddRoleToInstanceProfile -> Text
+ Amazonka.IAM.AddRoleToInstanceProfile: [$sel:roleName:AddRoleToInstanceProfile'] :: AddRoleToInstanceProfile -> Text
+ Amazonka.IAM.AddRoleToInstanceProfile: addRoleToInstanceProfile_instanceProfileName :: Lens' AddRoleToInstanceProfile Text
+ Amazonka.IAM.AddRoleToInstanceProfile: addRoleToInstanceProfile_roleName :: Lens' AddRoleToInstanceProfile Text
+ Amazonka.IAM.AddRoleToInstanceProfile: data AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: data AddRoleToInstanceProfileResponse
+ Amazonka.IAM.AddRoleToInstanceProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
+ Amazonka.IAM.AddRoleToInstanceProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
+ Amazonka.IAM.AddRoleToInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
+ Amazonka.IAM.AddRoleToInstanceProfile: instance GHC.Read.Read Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance GHC.Read.Read Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
+ Amazonka.IAM.AddRoleToInstanceProfile: instance GHC.Show.Show Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: instance GHC.Show.Show Amazonka.IAM.AddRoleToInstanceProfile.AddRoleToInstanceProfileResponse
+ Amazonka.IAM.AddRoleToInstanceProfile: newAddRoleToInstanceProfile :: Text -> Text -> AddRoleToInstanceProfile
+ Amazonka.IAM.AddRoleToInstanceProfile: newAddRoleToInstanceProfileResponse :: AddRoleToInstanceProfileResponse
+ Amazonka.IAM.AddUserToGroup: AddUserToGroup' :: Text -> Text -> AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: AddUserToGroupResponse' :: AddUserToGroupResponse
+ Amazonka.IAM.AddUserToGroup: [$sel:groupName:AddUserToGroup'] :: AddUserToGroup -> Text
+ Amazonka.IAM.AddUserToGroup: [$sel:userName:AddUserToGroup'] :: AddUserToGroup -> Text
+ Amazonka.IAM.AddUserToGroup: addUserToGroup_groupName :: Lens' AddUserToGroup Text
+ Amazonka.IAM.AddUserToGroup: addUserToGroup_userName :: Lens' AddUserToGroup Text
+ Amazonka.IAM.AddUserToGroup: data AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: data AddUserToGroupResponse
+ Amazonka.IAM.AddUserToGroup: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance Amazonka.Data.Path.ToPath Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance Amazonka.Types.AWSRequest Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance Control.DeepSeq.NFData Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance Control.DeepSeq.NFData Amazonka.IAM.AddUserToGroup.AddUserToGroupResponse
+ Amazonka.IAM.AddUserToGroup: instance Data.Hashable.Class.Hashable Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance GHC.Classes.Eq Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance GHC.Classes.Eq Amazonka.IAM.AddUserToGroup.AddUserToGroupResponse
+ Amazonka.IAM.AddUserToGroup: instance GHC.Generics.Generic Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance GHC.Generics.Generic Amazonka.IAM.AddUserToGroup.AddUserToGroupResponse
+ Amazonka.IAM.AddUserToGroup: instance GHC.Read.Read Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance GHC.Read.Read Amazonka.IAM.AddUserToGroup.AddUserToGroupResponse
+ Amazonka.IAM.AddUserToGroup: instance GHC.Show.Show Amazonka.IAM.AddUserToGroup.AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: instance GHC.Show.Show Amazonka.IAM.AddUserToGroup.AddUserToGroupResponse
+ Amazonka.IAM.AddUserToGroup: newAddUserToGroup :: Text -> Text -> AddUserToGroup
+ Amazonka.IAM.AddUserToGroup: newAddUserToGroupResponse :: AddUserToGroupResponse
+ Amazonka.IAM.AttachGroupPolicy: AttachGroupPolicy' :: Text -> Text -> AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: AttachGroupPolicyResponse' :: AttachGroupPolicyResponse
+ Amazonka.IAM.AttachGroupPolicy: [$sel:groupName:AttachGroupPolicy'] :: AttachGroupPolicy -> Text
+ Amazonka.IAM.AttachGroupPolicy: [$sel:policyArn:AttachGroupPolicy'] :: AttachGroupPolicy -> Text
+ Amazonka.IAM.AttachGroupPolicy: attachGroupPolicy_groupName :: Lens' AttachGroupPolicy Text
+ Amazonka.IAM.AttachGroupPolicy: attachGroupPolicy_policyArn :: Lens' AttachGroupPolicy Text
+ Amazonka.IAM.AttachGroupPolicy: data AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: data AttachGroupPolicyResponse
+ Amazonka.IAM.AttachGroupPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
+ Amazonka.IAM.AttachGroupPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
+ Amazonka.IAM.AttachGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
+ Amazonka.IAM.AttachGroupPolicy: instance GHC.Read.Read Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance GHC.Read.Read Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
+ Amazonka.IAM.AttachGroupPolicy: instance GHC.Show.Show Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: instance GHC.Show.Show Amazonka.IAM.AttachGroupPolicy.AttachGroupPolicyResponse
+ Amazonka.IAM.AttachGroupPolicy: newAttachGroupPolicy :: Text -> Text -> AttachGroupPolicy
+ Amazonka.IAM.AttachGroupPolicy: newAttachGroupPolicyResponse :: AttachGroupPolicyResponse
+ Amazonka.IAM.AttachRolePolicy: AttachRolePolicy' :: Text -> Text -> AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: AttachRolePolicyResponse' :: AttachRolePolicyResponse
+ Amazonka.IAM.AttachRolePolicy: [$sel:policyArn:AttachRolePolicy'] :: AttachRolePolicy -> Text
+ Amazonka.IAM.AttachRolePolicy: [$sel:roleName:AttachRolePolicy'] :: AttachRolePolicy -> Text
+ Amazonka.IAM.AttachRolePolicy: attachRolePolicy_policyArn :: Lens' AttachRolePolicy Text
+ Amazonka.IAM.AttachRolePolicy: attachRolePolicy_roleName :: Lens' AttachRolePolicy Text
+ Amazonka.IAM.AttachRolePolicy: data AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: data AttachRolePolicyResponse
+ Amazonka.IAM.AttachRolePolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.AttachRolePolicy.AttachRolePolicyResponse
+ Amazonka.IAM.AttachRolePolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.AttachRolePolicy.AttachRolePolicyResponse
+ Amazonka.IAM.AttachRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.AttachRolePolicy.AttachRolePolicyResponse
+ Amazonka.IAM.AttachRolePolicy: instance GHC.Read.Read Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance GHC.Read.Read Amazonka.IAM.AttachRolePolicy.AttachRolePolicyResponse
+ Amazonka.IAM.AttachRolePolicy: instance GHC.Show.Show Amazonka.IAM.AttachRolePolicy.AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: instance GHC.Show.Show Amazonka.IAM.AttachRolePolicy.AttachRolePolicyResponse
+ Amazonka.IAM.AttachRolePolicy: newAttachRolePolicy :: Text -> Text -> AttachRolePolicy
+ Amazonka.IAM.AttachRolePolicy: newAttachRolePolicyResponse :: AttachRolePolicyResponse
+ Amazonka.IAM.AttachUserPolicy: AttachUserPolicy' :: Text -> Text -> AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: AttachUserPolicyResponse' :: AttachUserPolicyResponse
+ Amazonka.IAM.AttachUserPolicy: [$sel:policyArn:AttachUserPolicy'] :: AttachUserPolicy -> Text
+ Amazonka.IAM.AttachUserPolicy: [$sel:userName:AttachUserPolicy'] :: AttachUserPolicy -> Text
+ Amazonka.IAM.AttachUserPolicy: attachUserPolicy_policyArn :: Lens' AttachUserPolicy Text
+ Amazonka.IAM.AttachUserPolicy: attachUserPolicy_userName :: Lens' AttachUserPolicy Text
+ Amazonka.IAM.AttachUserPolicy: data AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: data AttachUserPolicyResponse
+ Amazonka.IAM.AttachUserPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.AttachUserPolicy.AttachUserPolicyResponse
+ Amazonka.IAM.AttachUserPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.AttachUserPolicy.AttachUserPolicyResponse
+ Amazonka.IAM.AttachUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.AttachUserPolicy.AttachUserPolicyResponse
+ Amazonka.IAM.AttachUserPolicy: instance GHC.Read.Read Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance GHC.Read.Read Amazonka.IAM.AttachUserPolicy.AttachUserPolicyResponse
+ Amazonka.IAM.AttachUserPolicy: instance GHC.Show.Show Amazonka.IAM.AttachUserPolicy.AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: instance GHC.Show.Show Amazonka.IAM.AttachUserPolicy.AttachUserPolicyResponse
+ Amazonka.IAM.AttachUserPolicy: newAttachUserPolicy :: Text -> Text -> AttachUserPolicy
+ Amazonka.IAM.AttachUserPolicy: newAttachUserPolicyResponse :: AttachUserPolicyResponse
+ Amazonka.IAM.ChangePassword: ChangePassword' :: Sensitive Text -> Sensitive Text -> ChangePassword
+ Amazonka.IAM.ChangePassword: ChangePasswordResponse' :: ChangePasswordResponse
+ Amazonka.IAM.ChangePassword: [$sel:newPassword':ChangePassword'] :: ChangePassword -> Sensitive Text
+ Amazonka.IAM.ChangePassword: [$sel:oldPassword:ChangePassword'] :: ChangePassword -> Sensitive Text
+ Amazonka.IAM.ChangePassword: changePassword_newPassword :: Lens' ChangePassword Text
+ Amazonka.IAM.ChangePassword: changePassword_oldPassword :: Lens' ChangePassword Text
+ Amazonka.IAM.ChangePassword: data ChangePassword
+ Amazonka.IAM.ChangePassword: data ChangePasswordResponse
+ Amazonka.IAM.ChangePassword: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance Amazonka.Types.AWSRequest Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance Control.DeepSeq.NFData Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance Control.DeepSeq.NFData Amazonka.IAM.ChangePassword.ChangePasswordResponse
+ Amazonka.IAM.ChangePassword: instance Data.Hashable.Class.Hashable Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance GHC.Classes.Eq Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance GHC.Classes.Eq Amazonka.IAM.ChangePassword.ChangePasswordResponse
+ Amazonka.IAM.ChangePassword: instance GHC.Generics.Generic Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance GHC.Generics.Generic Amazonka.IAM.ChangePassword.ChangePasswordResponse
+ Amazonka.IAM.ChangePassword: instance GHC.Read.Read Amazonka.IAM.ChangePassword.ChangePasswordResponse
+ Amazonka.IAM.ChangePassword: instance GHC.Show.Show Amazonka.IAM.ChangePassword.ChangePassword
+ Amazonka.IAM.ChangePassword: instance GHC.Show.Show Amazonka.IAM.ChangePassword.ChangePasswordResponse
+ Amazonka.IAM.ChangePassword: newChangePassword :: Text -> Text -> ChangePassword
+ Amazonka.IAM.ChangePassword: newChangePasswordResponse :: ChangePasswordResponse
+ Amazonka.IAM.CreateAccessKey: CreateAccessKey' :: Maybe Text -> CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: CreateAccessKeyResponse' :: Int -> AccessKeyInfo -> CreateAccessKeyResponse
+ Amazonka.IAM.CreateAccessKey: [$sel:accessKey:CreateAccessKeyResponse'] :: CreateAccessKeyResponse -> AccessKeyInfo
+ Amazonka.IAM.CreateAccessKey: [$sel:httpStatus:CreateAccessKeyResponse'] :: CreateAccessKeyResponse -> Int
+ Amazonka.IAM.CreateAccessKey: [$sel:userName:CreateAccessKey'] :: CreateAccessKey -> Maybe Text
+ Amazonka.IAM.CreateAccessKey: createAccessKeyResponse_accessKey :: Lens' CreateAccessKeyResponse AccessKeyInfo
+ Amazonka.IAM.CreateAccessKey: createAccessKeyResponse_httpStatus :: Lens' CreateAccessKeyResponse Int
+ Amazonka.IAM.CreateAccessKey: createAccessKey_userName :: Lens' CreateAccessKey (Maybe Text)
+ Amazonka.IAM.CreateAccessKey: data CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: data CreateAccessKeyResponse
+ Amazonka.IAM.CreateAccessKey: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance Control.DeepSeq.NFData Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance Control.DeepSeq.NFData Amazonka.IAM.CreateAccessKey.CreateAccessKeyResponse
+ Amazonka.IAM.CreateAccessKey: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance GHC.Classes.Eq Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance GHC.Classes.Eq Amazonka.IAM.CreateAccessKey.CreateAccessKeyResponse
+ Amazonka.IAM.CreateAccessKey: instance GHC.Generics.Generic Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance GHC.Generics.Generic Amazonka.IAM.CreateAccessKey.CreateAccessKeyResponse
+ Amazonka.IAM.CreateAccessKey: instance GHC.Read.Read Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance GHC.Show.Show Amazonka.IAM.CreateAccessKey.CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: instance GHC.Show.Show Amazonka.IAM.CreateAccessKey.CreateAccessKeyResponse
+ Amazonka.IAM.CreateAccessKey: newCreateAccessKey :: CreateAccessKey
+ Amazonka.IAM.CreateAccessKey: newCreateAccessKeyResponse :: Int -> AccessKeyInfo -> CreateAccessKeyResponse
+ Amazonka.IAM.CreateAccountAlias: CreateAccountAlias' :: Text -> CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: CreateAccountAliasResponse' :: CreateAccountAliasResponse
+ Amazonka.IAM.CreateAccountAlias: [$sel:accountAlias:CreateAccountAlias'] :: CreateAccountAlias -> Text
+ Amazonka.IAM.CreateAccountAlias: createAccountAlias_accountAlias :: Lens' CreateAccountAlias Text
+ Amazonka.IAM.CreateAccountAlias: data CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: data CreateAccountAliasResponse
+ Amazonka.IAM.CreateAccountAlias: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance Control.DeepSeq.NFData Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance Control.DeepSeq.NFData Amazonka.IAM.CreateAccountAlias.CreateAccountAliasResponse
+ Amazonka.IAM.CreateAccountAlias: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance GHC.Classes.Eq Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance GHC.Classes.Eq Amazonka.IAM.CreateAccountAlias.CreateAccountAliasResponse
+ Amazonka.IAM.CreateAccountAlias: instance GHC.Generics.Generic Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance GHC.Generics.Generic Amazonka.IAM.CreateAccountAlias.CreateAccountAliasResponse
+ Amazonka.IAM.CreateAccountAlias: instance GHC.Read.Read Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance GHC.Read.Read Amazonka.IAM.CreateAccountAlias.CreateAccountAliasResponse
+ Amazonka.IAM.CreateAccountAlias: instance GHC.Show.Show Amazonka.IAM.CreateAccountAlias.CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: instance GHC.Show.Show Amazonka.IAM.CreateAccountAlias.CreateAccountAliasResponse
+ Amazonka.IAM.CreateAccountAlias: newCreateAccountAlias :: Text -> CreateAccountAlias
+ Amazonka.IAM.CreateAccountAlias: newCreateAccountAliasResponse :: CreateAccountAliasResponse
+ Amazonka.IAM.CreateGroup: CreateGroup' :: Maybe Text -> Text -> CreateGroup
+ Amazonka.IAM.CreateGroup: CreateGroupResponse' :: Int -> Group -> CreateGroupResponse
+ Amazonka.IAM.CreateGroup: [$sel:group':CreateGroupResponse'] :: CreateGroupResponse -> Group
+ Amazonka.IAM.CreateGroup: [$sel:groupName:CreateGroup'] :: CreateGroup -> Text
+ Amazonka.IAM.CreateGroup: [$sel:httpStatus:CreateGroupResponse'] :: CreateGroupResponse -> Int
+ Amazonka.IAM.CreateGroup: [$sel:path:CreateGroup'] :: CreateGroup -> Maybe Text
+ Amazonka.IAM.CreateGroup: createGroupResponse_group :: Lens' CreateGroupResponse Group
+ Amazonka.IAM.CreateGroup: createGroupResponse_httpStatus :: Lens' CreateGroupResponse Int
+ Amazonka.IAM.CreateGroup: createGroup_groupName :: Lens' CreateGroup Text
+ Amazonka.IAM.CreateGroup: createGroup_path :: Lens' CreateGroup (Maybe Text)
+ Amazonka.IAM.CreateGroup: data CreateGroup
+ Amazonka.IAM.CreateGroup: data CreateGroupResponse
+ Amazonka.IAM.CreateGroup: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance Control.DeepSeq.NFData Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance Control.DeepSeq.NFData Amazonka.IAM.CreateGroup.CreateGroupResponse
+ Amazonka.IAM.CreateGroup: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance GHC.Classes.Eq Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance GHC.Classes.Eq Amazonka.IAM.CreateGroup.CreateGroupResponse
+ Amazonka.IAM.CreateGroup: instance GHC.Generics.Generic Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance GHC.Generics.Generic Amazonka.IAM.CreateGroup.CreateGroupResponse
+ Amazonka.IAM.CreateGroup: instance GHC.Read.Read Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance GHC.Read.Read Amazonka.IAM.CreateGroup.CreateGroupResponse
+ Amazonka.IAM.CreateGroup: instance GHC.Show.Show Amazonka.IAM.CreateGroup.CreateGroup
+ Amazonka.IAM.CreateGroup: instance GHC.Show.Show Amazonka.IAM.CreateGroup.CreateGroupResponse
+ Amazonka.IAM.CreateGroup: newCreateGroup :: Text -> CreateGroup
+ Amazonka.IAM.CreateGroup: newCreateGroupResponse :: Int -> Group -> CreateGroupResponse
+ Amazonka.IAM.CreateInstanceProfile: CreateInstanceProfile' :: Maybe Text -> Maybe [Tag] -> Text -> CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: CreateInstanceProfileResponse' :: Int -> InstanceProfile -> CreateInstanceProfileResponse
+ Amazonka.IAM.CreateInstanceProfile: [$sel:httpStatus:CreateInstanceProfileResponse'] :: CreateInstanceProfileResponse -> Int
+ Amazonka.IAM.CreateInstanceProfile: [$sel:instanceProfile:CreateInstanceProfileResponse'] :: CreateInstanceProfileResponse -> InstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: [$sel:instanceProfileName:CreateInstanceProfile'] :: CreateInstanceProfile -> Text
+ Amazonka.IAM.CreateInstanceProfile: [$sel:path:CreateInstanceProfile'] :: CreateInstanceProfile -> Maybe Text
+ Amazonka.IAM.CreateInstanceProfile: [$sel:tags:CreateInstanceProfile'] :: CreateInstanceProfile -> Maybe [Tag]
+ Amazonka.IAM.CreateInstanceProfile: createInstanceProfileResponse_httpStatus :: Lens' CreateInstanceProfileResponse Int
+ Amazonka.IAM.CreateInstanceProfile: createInstanceProfileResponse_instanceProfile :: Lens' CreateInstanceProfileResponse InstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: createInstanceProfile_instanceProfileName :: Lens' CreateInstanceProfile Text
+ Amazonka.IAM.CreateInstanceProfile: createInstanceProfile_path :: Lens' CreateInstanceProfile (Maybe Text)
+ Amazonka.IAM.CreateInstanceProfile: createInstanceProfile_tags :: Lens' CreateInstanceProfile (Maybe [Tag])
+ Amazonka.IAM.CreateInstanceProfile: data CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: data CreateInstanceProfileResponse
+ Amazonka.IAM.CreateInstanceProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
+ Amazonka.IAM.CreateInstanceProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
+ Amazonka.IAM.CreateInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
+ Amazonka.IAM.CreateInstanceProfile: instance GHC.Read.Read Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance GHC.Read.Read Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
+ Amazonka.IAM.CreateInstanceProfile: instance GHC.Show.Show Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: instance GHC.Show.Show Amazonka.IAM.CreateInstanceProfile.CreateInstanceProfileResponse
+ Amazonka.IAM.CreateInstanceProfile: newCreateInstanceProfile :: Text -> CreateInstanceProfile
+ Amazonka.IAM.CreateInstanceProfile: newCreateInstanceProfileResponse :: Int -> InstanceProfile -> CreateInstanceProfileResponse
+ Amazonka.IAM.CreateLoginProfile: CreateLoginProfile' :: Maybe Bool -> Text -> Sensitive Text -> CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: CreateLoginProfileResponse' :: Int -> LoginProfile -> CreateLoginProfileResponse
+ Amazonka.IAM.CreateLoginProfile: [$sel:httpStatus:CreateLoginProfileResponse'] :: CreateLoginProfileResponse -> Int
+ Amazonka.IAM.CreateLoginProfile: [$sel:loginProfile:CreateLoginProfileResponse'] :: CreateLoginProfileResponse -> LoginProfile
+ Amazonka.IAM.CreateLoginProfile: [$sel:password:CreateLoginProfile'] :: CreateLoginProfile -> Sensitive Text
+ Amazonka.IAM.CreateLoginProfile: [$sel:passwordResetRequired:CreateLoginProfile'] :: CreateLoginProfile -> Maybe Bool
+ Amazonka.IAM.CreateLoginProfile: [$sel:userName:CreateLoginProfile'] :: CreateLoginProfile -> Text
+ Amazonka.IAM.CreateLoginProfile: createLoginProfileResponse_httpStatus :: Lens' CreateLoginProfileResponse Int
+ Amazonka.IAM.CreateLoginProfile: createLoginProfileResponse_loginProfile :: Lens' CreateLoginProfileResponse LoginProfile
+ Amazonka.IAM.CreateLoginProfile: createLoginProfile_password :: Lens' CreateLoginProfile Text
+ Amazonka.IAM.CreateLoginProfile: createLoginProfile_passwordResetRequired :: Lens' CreateLoginProfile (Maybe Bool)
+ Amazonka.IAM.CreateLoginProfile: createLoginProfile_userName :: Lens' CreateLoginProfile Text
+ Amazonka.IAM.CreateLoginProfile: data CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: data CreateLoginProfileResponse
+ Amazonka.IAM.CreateLoginProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.CreateLoginProfile.CreateLoginProfileResponse
+ Amazonka.IAM.CreateLoginProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance GHC.Classes.Eq Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance GHC.Classes.Eq Amazonka.IAM.CreateLoginProfile.CreateLoginProfileResponse
+ Amazonka.IAM.CreateLoginProfile: instance GHC.Generics.Generic Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance GHC.Generics.Generic Amazonka.IAM.CreateLoginProfile.CreateLoginProfileResponse
+ Amazonka.IAM.CreateLoginProfile: instance GHC.Read.Read Amazonka.IAM.CreateLoginProfile.CreateLoginProfileResponse
+ Amazonka.IAM.CreateLoginProfile: instance GHC.Show.Show Amazonka.IAM.CreateLoginProfile.CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: instance GHC.Show.Show Amazonka.IAM.CreateLoginProfile.CreateLoginProfileResponse
+ Amazonka.IAM.CreateLoginProfile: newCreateLoginProfile :: Text -> Text -> CreateLoginProfile
+ Amazonka.IAM.CreateLoginProfile: newCreateLoginProfileResponse :: Int -> LoginProfile -> CreateLoginProfileResponse
+ Amazonka.IAM.CreateOpenIDConnectProvider: CreateOpenIDConnectProvider' :: Maybe [Text] -> Maybe [Tag] -> Text -> [Text] -> CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: CreateOpenIDConnectProviderResponse' :: Maybe Text -> Maybe [Tag] -> Int -> CreateOpenIDConnectProviderResponse
+ Amazonka.IAM.CreateOpenIDConnectProvider: [$sel:clientIDList:CreateOpenIDConnectProvider'] :: CreateOpenIDConnectProvider -> Maybe [Text]
+ Amazonka.IAM.CreateOpenIDConnectProvider: [$sel:httpStatus:CreateOpenIDConnectProviderResponse'] :: CreateOpenIDConnectProviderResponse -> Int
+ Amazonka.IAM.CreateOpenIDConnectProvider: [$sel:openIDConnectProviderArn:CreateOpenIDConnectProviderResponse'] :: CreateOpenIDConnectProviderResponse -> Maybe Text
+ Amazonka.IAM.CreateOpenIDConnectProvider: [$sel:tags:CreateOpenIDConnectProvider'] :: CreateOpenIDConnectProvider -> Maybe [Tag]
+ Amazonka.IAM.CreateOpenIDConnectProvider: [$sel:tags:CreateOpenIDConnectProviderResponse'] :: CreateOpenIDConnectProviderResponse -> Maybe [Tag]
+ Amazonka.IAM.CreateOpenIDConnectProvider: [$sel:thumbprintList:CreateOpenIDConnectProvider'] :: CreateOpenIDConnectProvider -> [Text]
+ Amazonka.IAM.CreateOpenIDConnectProvider: [$sel:url:CreateOpenIDConnectProvider'] :: CreateOpenIDConnectProvider -> Text
+ Amazonka.IAM.CreateOpenIDConnectProvider: createOpenIDConnectProviderResponse_httpStatus :: Lens' CreateOpenIDConnectProviderResponse Int
+ Amazonka.IAM.CreateOpenIDConnectProvider: createOpenIDConnectProviderResponse_openIDConnectProviderArn :: Lens' CreateOpenIDConnectProviderResponse (Maybe Text)
+ Amazonka.IAM.CreateOpenIDConnectProvider: createOpenIDConnectProviderResponse_tags :: Lens' CreateOpenIDConnectProviderResponse (Maybe [Tag])
+ Amazonka.IAM.CreateOpenIDConnectProvider: createOpenIDConnectProvider_clientIDList :: Lens' CreateOpenIDConnectProvider (Maybe [Text])
+ Amazonka.IAM.CreateOpenIDConnectProvider: createOpenIDConnectProvider_tags :: Lens' CreateOpenIDConnectProvider (Maybe [Tag])
+ Amazonka.IAM.CreateOpenIDConnectProvider: createOpenIDConnectProvider_thumbprintList :: Lens' CreateOpenIDConnectProvider [Text]
+ Amazonka.IAM.CreateOpenIDConnectProvider: createOpenIDConnectProvider_url :: Lens' CreateOpenIDConnectProvider Text
+ Amazonka.IAM.CreateOpenIDConnectProvider: data CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: data CreateOpenIDConnectProviderResponse
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProviderResponse
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProviderResponse
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProviderResponse
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProviderResponse
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.CreateOpenIDConnectProvider.CreateOpenIDConnectProviderResponse
+ Amazonka.IAM.CreateOpenIDConnectProvider: newCreateOpenIDConnectProvider :: Text -> CreateOpenIDConnectProvider
+ Amazonka.IAM.CreateOpenIDConnectProvider: newCreateOpenIDConnectProviderResponse :: Int -> CreateOpenIDConnectProviderResponse
+ Amazonka.IAM.CreatePolicy: CreatePolicy' :: Maybe Text -> Maybe Text -> Maybe [Tag] -> Text -> Text -> CreatePolicy
+ Amazonka.IAM.CreatePolicy: CreatePolicyResponse' :: Maybe Policy -> Int -> CreatePolicyResponse
+ Amazonka.IAM.CreatePolicy: [$sel:description:CreatePolicy'] :: CreatePolicy -> Maybe Text
+ Amazonka.IAM.CreatePolicy: [$sel:httpStatus:CreatePolicyResponse'] :: CreatePolicyResponse -> Int
+ Amazonka.IAM.CreatePolicy: [$sel:path:CreatePolicy'] :: CreatePolicy -> Maybe Text
+ Amazonka.IAM.CreatePolicy: [$sel:policy:CreatePolicyResponse'] :: CreatePolicyResponse -> Maybe Policy
+ Amazonka.IAM.CreatePolicy: [$sel:policyDocument:CreatePolicy'] :: CreatePolicy -> Text
+ Amazonka.IAM.CreatePolicy: [$sel:policyName:CreatePolicy'] :: CreatePolicy -> Text
+ Amazonka.IAM.CreatePolicy: [$sel:tags:CreatePolicy'] :: CreatePolicy -> Maybe [Tag]
+ Amazonka.IAM.CreatePolicy: createPolicyResponse_httpStatus :: Lens' CreatePolicyResponse Int
+ Amazonka.IAM.CreatePolicy: createPolicyResponse_policy :: Lens' CreatePolicyResponse (Maybe Policy)
+ Amazonka.IAM.CreatePolicy: createPolicy_description :: Lens' CreatePolicy (Maybe Text)
+ Amazonka.IAM.CreatePolicy: createPolicy_path :: Lens' CreatePolicy (Maybe Text)
+ Amazonka.IAM.CreatePolicy: createPolicy_policyDocument :: Lens' CreatePolicy Text
+ Amazonka.IAM.CreatePolicy: createPolicy_policyName :: Lens' CreatePolicy Text
+ Amazonka.IAM.CreatePolicy: createPolicy_tags :: Lens' CreatePolicy (Maybe [Tag])
+ Amazonka.IAM.CreatePolicy: data CreatePolicy
+ Amazonka.IAM.CreatePolicy: data CreatePolicyResponse
+ Amazonka.IAM.CreatePolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.CreatePolicy.CreatePolicyResponse
+ Amazonka.IAM.CreatePolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance GHC.Classes.Eq Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance GHC.Classes.Eq Amazonka.IAM.CreatePolicy.CreatePolicyResponse
+ Amazonka.IAM.CreatePolicy: instance GHC.Generics.Generic Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance GHC.Generics.Generic Amazonka.IAM.CreatePolicy.CreatePolicyResponse
+ Amazonka.IAM.CreatePolicy: instance GHC.Read.Read Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance GHC.Read.Read Amazonka.IAM.CreatePolicy.CreatePolicyResponse
+ Amazonka.IAM.CreatePolicy: instance GHC.Show.Show Amazonka.IAM.CreatePolicy.CreatePolicy
+ Amazonka.IAM.CreatePolicy: instance GHC.Show.Show Amazonka.IAM.CreatePolicy.CreatePolicyResponse
+ Amazonka.IAM.CreatePolicy: newCreatePolicy :: Text -> Text -> CreatePolicy
+ Amazonka.IAM.CreatePolicy: newCreatePolicyResponse :: Int -> CreatePolicyResponse
+ Amazonka.IAM.CreatePolicyVersion: CreatePolicyVersion' :: Maybe Bool -> Text -> Text -> CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: CreatePolicyVersionResponse' :: Maybe PolicyVersion -> Int -> CreatePolicyVersionResponse
+ Amazonka.IAM.CreatePolicyVersion: [$sel:httpStatus:CreatePolicyVersionResponse'] :: CreatePolicyVersionResponse -> Int
+ Amazonka.IAM.CreatePolicyVersion: [$sel:policyArn:CreatePolicyVersion'] :: CreatePolicyVersion -> Text
+ Amazonka.IAM.CreatePolicyVersion: [$sel:policyDocument:CreatePolicyVersion'] :: CreatePolicyVersion -> Text
+ Amazonka.IAM.CreatePolicyVersion: [$sel:policyVersion:CreatePolicyVersionResponse'] :: CreatePolicyVersionResponse -> Maybe PolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: [$sel:setAsDefault:CreatePolicyVersion'] :: CreatePolicyVersion -> Maybe Bool
+ Amazonka.IAM.CreatePolicyVersion: createPolicyVersionResponse_httpStatus :: Lens' CreatePolicyVersionResponse Int
+ Amazonka.IAM.CreatePolicyVersion: createPolicyVersionResponse_policyVersion :: Lens' CreatePolicyVersionResponse (Maybe PolicyVersion)
+ Amazonka.IAM.CreatePolicyVersion: createPolicyVersion_policyArn :: Lens' CreatePolicyVersion Text
+ Amazonka.IAM.CreatePolicyVersion: createPolicyVersion_policyDocument :: Lens' CreatePolicyVersion Text
+ Amazonka.IAM.CreatePolicyVersion: createPolicyVersion_setAsDefault :: Lens' CreatePolicyVersion (Maybe Bool)
+ Amazonka.IAM.CreatePolicyVersion: data CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: data CreatePolicyVersionResponse
+ Amazonka.IAM.CreatePolicyVersion: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
+ Amazonka.IAM.CreatePolicyVersion: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
+ Amazonka.IAM.CreatePolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
+ Amazonka.IAM.CreatePolicyVersion: instance GHC.Read.Read Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance GHC.Read.Read Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
+ Amazonka.IAM.CreatePolicyVersion: instance GHC.Show.Show Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: instance GHC.Show.Show Amazonka.IAM.CreatePolicyVersion.CreatePolicyVersionResponse
+ Amazonka.IAM.CreatePolicyVersion: newCreatePolicyVersion :: Text -> Text -> CreatePolicyVersion
+ Amazonka.IAM.CreatePolicyVersion: newCreatePolicyVersionResponse :: Int -> CreatePolicyVersionResponse
+ Amazonka.IAM.CreateRole: CreateRole' :: Maybe Text -> Maybe Natural -> Maybe Text -> Maybe Text -> Maybe [Tag] -> Text -> Text -> CreateRole
+ Amazonka.IAM.CreateRole: CreateRoleResponse' :: Int -> Role -> CreateRoleResponse
+ Amazonka.IAM.CreateRole: [$sel:assumeRolePolicyDocument:CreateRole'] :: CreateRole -> Text
+ Amazonka.IAM.CreateRole: [$sel:description:CreateRole'] :: CreateRole -> Maybe Text
+ Amazonka.IAM.CreateRole: [$sel:httpStatus:CreateRoleResponse'] :: CreateRoleResponse -> Int
+ Amazonka.IAM.CreateRole: [$sel:maxSessionDuration:CreateRole'] :: CreateRole -> Maybe Natural
+ Amazonka.IAM.CreateRole: [$sel:path:CreateRole'] :: CreateRole -> Maybe Text
+ Amazonka.IAM.CreateRole: [$sel:permissionsBoundary:CreateRole'] :: CreateRole -> Maybe Text
+ Amazonka.IAM.CreateRole: [$sel:role':CreateRoleResponse'] :: CreateRoleResponse -> Role
+ Amazonka.IAM.CreateRole: [$sel:roleName:CreateRole'] :: CreateRole -> Text
+ Amazonka.IAM.CreateRole: [$sel:tags:CreateRole'] :: CreateRole -> Maybe [Tag]
+ Amazonka.IAM.CreateRole: createRoleResponse_httpStatus :: Lens' CreateRoleResponse Int
+ Amazonka.IAM.CreateRole: createRoleResponse_role :: Lens' CreateRoleResponse Role
+ Amazonka.IAM.CreateRole: createRole_assumeRolePolicyDocument :: Lens' CreateRole Text
+ Amazonka.IAM.CreateRole: createRole_description :: Lens' CreateRole (Maybe Text)
+ Amazonka.IAM.CreateRole: createRole_maxSessionDuration :: Lens' CreateRole (Maybe Natural)
+ Amazonka.IAM.CreateRole: createRole_path :: Lens' CreateRole (Maybe Text)
+ Amazonka.IAM.CreateRole: createRole_permissionsBoundary :: Lens' CreateRole (Maybe Text)
+ Amazonka.IAM.CreateRole: createRole_roleName :: Lens' CreateRole Text
+ Amazonka.IAM.CreateRole: createRole_tags :: Lens' CreateRole (Maybe [Tag])
+ Amazonka.IAM.CreateRole: data CreateRole
+ Amazonka.IAM.CreateRole: data CreateRoleResponse
+ Amazonka.IAM.CreateRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance Control.DeepSeq.NFData Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance Control.DeepSeq.NFData Amazonka.IAM.CreateRole.CreateRoleResponse
+ Amazonka.IAM.CreateRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance GHC.Classes.Eq Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance GHC.Classes.Eq Amazonka.IAM.CreateRole.CreateRoleResponse
+ Amazonka.IAM.CreateRole: instance GHC.Generics.Generic Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance GHC.Generics.Generic Amazonka.IAM.CreateRole.CreateRoleResponse
+ Amazonka.IAM.CreateRole: instance GHC.Read.Read Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance GHC.Read.Read Amazonka.IAM.CreateRole.CreateRoleResponse
+ Amazonka.IAM.CreateRole: instance GHC.Show.Show Amazonka.IAM.CreateRole.CreateRole
+ Amazonka.IAM.CreateRole: instance GHC.Show.Show Amazonka.IAM.CreateRole.CreateRoleResponse
+ Amazonka.IAM.CreateRole: newCreateRole :: Text -> Text -> CreateRole
+ Amazonka.IAM.CreateRole: newCreateRoleResponse :: Int -> Role -> CreateRoleResponse
+ Amazonka.IAM.CreateSAMLProvider: CreateSAMLProvider' :: Maybe [Tag] -> Text -> Text -> CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: CreateSAMLProviderResponse' :: Maybe Text -> Maybe [Tag] -> Int -> CreateSAMLProviderResponse
+ Amazonka.IAM.CreateSAMLProvider: [$sel:httpStatus:CreateSAMLProviderResponse'] :: CreateSAMLProviderResponse -> Int
+ Amazonka.IAM.CreateSAMLProvider: [$sel:name:CreateSAMLProvider'] :: CreateSAMLProvider -> Text
+ Amazonka.IAM.CreateSAMLProvider: [$sel:sAMLMetadataDocument:CreateSAMLProvider'] :: CreateSAMLProvider -> Text
+ Amazonka.IAM.CreateSAMLProvider: [$sel:sAMLProviderArn:CreateSAMLProviderResponse'] :: CreateSAMLProviderResponse -> Maybe Text
+ Amazonka.IAM.CreateSAMLProvider: [$sel:tags:CreateSAMLProvider'] :: CreateSAMLProvider -> Maybe [Tag]
+ Amazonka.IAM.CreateSAMLProvider: [$sel:tags:CreateSAMLProviderResponse'] :: CreateSAMLProviderResponse -> Maybe [Tag]
+ Amazonka.IAM.CreateSAMLProvider: createSAMLProviderResponse_httpStatus :: Lens' CreateSAMLProviderResponse Int
+ Amazonka.IAM.CreateSAMLProvider: createSAMLProviderResponse_sAMLProviderArn :: Lens' CreateSAMLProviderResponse (Maybe Text)
+ Amazonka.IAM.CreateSAMLProvider: createSAMLProviderResponse_tags :: Lens' CreateSAMLProviderResponse (Maybe [Tag])
+ Amazonka.IAM.CreateSAMLProvider: createSAMLProvider_name :: Lens' CreateSAMLProvider Text
+ Amazonka.IAM.CreateSAMLProvider: createSAMLProvider_sAMLMetadataDocument :: Lens' CreateSAMLProvider Text
+ Amazonka.IAM.CreateSAMLProvider: createSAMLProvider_tags :: Lens' CreateSAMLProvider (Maybe [Tag])
+ Amazonka.IAM.CreateSAMLProvider: data CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: data CreateSAMLProviderResponse
+ Amazonka.IAM.CreateSAMLProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
+ Amazonka.IAM.CreateSAMLProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
+ Amazonka.IAM.CreateSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
+ Amazonka.IAM.CreateSAMLProvider: instance GHC.Read.Read Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance GHC.Read.Read Amazonka.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
+ Amazonka.IAM.CreateSAMLProvider: instance GHC.Show.Show Amazonka.IAM.CreateSAMLProvider.CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: instance GHC.Show.Show Amazonka.IAM.CreateSAMLProvider.CreateSAMLProviderResponse
+ Amazonka.IAM.CreateSAMLProvider: newCreateSAMLProvider :: Text -> Text -> CreateSAMLProvider
+ Amazonka.IAM.CreateSAMLProvider: newCreateSAMLProviderResponse :: Int -> CreateSAMLProviderResponse
+ Amazonka.IAM.CreateServiceLinkedRole: CreateServiceLinkedRole' :: Maybe Text -> Maybe Text -> Text -> CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: CreateServiceLinkedRoleResponse' :: Maybe Role -> Int -> CreateServiceLinkedRoleResponse
+ Amazonka.IAM.CreateServiceLinkedRole: [$sel:aWSServiceName:CreateServiceLinkedRole'] :: CreateServiceLinkedRole -> Text
+ Amazonka.IAM.CreateServiceLinkedRole: [$sel:customSuffix:CreateServiceLinkedRole'] :: CreateServiceLinkedRole -> Maybe Text
+ Amazonka.IAM.CreateServiceLinkedRole: [$sel:description:CreateServiceLinkedRole'] :: CreateServiceLinkedRole -> Maybe Text
+ Amazonka.IAM.CreateServiceLinkedRole: [$sel:httpStatus:CreateServiceLinkedRoleResponse'] :: CreateServiceLinkedRoleResponse -> Int
+ Amazonka.IAM.CreateServiceLinkedRole: [$sel:role':CreateServiceLinkedRoleResponse'] :: CreateServiceLinkedRoleResponse -> Maybe Role
+ Amazonka.IAM.CreateServiceLinkedRole: createServiceLinkedRoleResponse_httpStatus :: Lens' CreateServiceLinkedRoleResponse Int
+ Amazonka.IAM.CreateServiceLinkedRole: createServiceLinkedRoleResponse_role :: Lens' CreateServiceLinkedRoleResponse (Maybe Role)
+ Amazonka.IAM.CreateServiceLinkedRole: createServiceLinkedRole_aWSServiceName :: Lens' CreateServiceLinkedRole Text
+ Amazonka.IAM.CreateServiceLinkedRole: createServiceLinkedRole_customSuffix :: Lens' CreateServiceLinkedRole (Maybe Text)
+ Amazonka.IAM.CreateServiceLinkedRole: createServiceLinkedRole_description :: Lens' CreateServiceLinkedRole (Maybe Text)
+ Amazonka.IAM.CreateServiceLinkedRole: data CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: data CreateServiceLinkedRoleResponse
+ Amazonka.IAM.CreateServiceLinkedRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance Control.DeepSeq.NFData Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance Control.DeepSeq.NFData Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
+ Amazonka.IAM.CreateServiceLinkedRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance GHC.Classes.Eq Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance GHC.Classes.Eq Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
+ Amazonka.IAM.CreateServiceLinkedRole: instance GHC.Generics.Generic Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance GHC.Generics.Generic Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
+ Amazonka.IAM.CreateServiceLinkedRole: instance GHC.Read.Read Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance GHC.Read.Read Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
+ Amazonka.IAM.CreateServiceLinkedRole: instance GHC.Show.Show Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: instance GHC.Show.Show Amazonka.IAM.CreateServiceLinkedRole.CreateServiceLinkedRoleResponse
+ Amazonka.IAM.CreateServiceLinkedRole: newCreateServiceLinkedRole :: Text -> CreateServiceLinkedRole
+ Amazonka.IAM.CreateServiceLinkedRole: newCreateServiceLinkedRoleResponse :: Int -> CreateServiceLinkedRoleResponse
+ Amazonka.IAM.CreateServiceSpecificCredential: CreateServiceSpecificCredential' :: Text -> Text -> CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: CreateServiceSpecificCredentialResponse' :: Maybe ServiceSpecificCredential -> Int -> CreateServiceSpecificCredentialResponse
+ Amazonka.IAM.CreateServiceSpecificCredential: [$sel:httpStatus:CreateServiceSpecificCredentialResponse'] :: CreateServiceSpecificCredentialResponse -> Int
+ Amazonka.IAM.CreateServiceSpecificCredential: [$sel:serviceName:CreateServiceSpecificCredential'] :: CreateServiceSpecificCredential -> Text
+ Amazonka.IAM.CreateServiceSpecificCredential: [$sel:serviceSpecificCredential:CreateServiceSpecificCredentialResponse'] :: CreateServiceSpecificCredentialResponse -> Maybe ServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: [$sel:userName:CreateServiceSpecificCredential'] :: CreateServiceSpecificCredential -> Text
+ Amazonka.IAM.CreateServiceSpecificCredential: createServiceSpecificCredentialResponse_httpStatus :: Lens' CreateServiceSpecificCredentialResponse Int
+ Amazonka.IAM.CreateServiceSpecificCredential: createServiceSpecificCredentialResponse_serviceSpecificCredential :: Lens' CreateServiceSpecificCredentialResponse (Maybe ServiceSpecificCredential)
+ Amazonka.IAM.CreateServiceSpecificCredential: createServiceSpecificCredential_serviceName :: Lens' CreateServiceSpecificCredential Text
+ Amazonka.IAM.CreateServiceSpecificCredential: createServiceSpecificCredential_userName :: Lens' CreateServiceSpecificCredential Text
+ Amazonka.IAM.CreateServiceSpecificCredential: data CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: data CreateServiceSpecificCredentialResponse
+ Amazonka.IAM.CreateServiceSpecificCredential: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
+ Amazonka.IAM.CreateServiceSpecificCredential: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
+ Amazonka.IAM.CreateServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
+ Amazonka.IAM.CreateServiceSpecificCredential: instance GHC.Read.Read Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.CreateServiceSpecificCredential.CreateServiceSpecificCredentialResponse
+ Amazonka.IAM.CreateServiceSpecificCredential: newCreateServiceSpecificCredential :: Text -> Text -> CreateServiceSpecificCredential
+ Amazonka.IAM.CreateServiceSpecificCredential: newCreateServiceSpecificCredentialResponse :: Int -> CreateServiceSpecificCredentialResponse
+ Amazonka.IAM.CreateUser: CreateUser' :: Maybe Text -> Maybe Text -> Maybe [Tag] -> Text -> CreateUser
+ Amazonka.IAM.CreateUser: CreateUserResponse' :: Maybe User -> Int -> CreateUserResponse
+ Amazonka.IAM.CreateUser: [$sel:httpStatus:CreateUserResponse'] :: CreateUserResponse -> Int
+ Amazonka.IAM.CreateUser: [$sel:path:CreateUser'] :: CreateUser -> Maybe Text
+ Amazonka.IAM.CreateUser: [$sel:permissionsBoundary:CreateUser'] :: CreateUser -> Maybe Text
+ Amazonka.IAM.CreateUser: [$sel:tags:CreateUser'] :: CreateUser -> Maybe [Tag]
+ Amazonka.IAM.CreateUser: [$sel:user:CreateUserResponse'] :: CreateUserResponse -> Maybe User
+ Amazonka.IAM.CreateUser: [$sel:userName:CreateUser'] :: CreateUser -> Text
+ Amazonka.IAM.CreateUser: createUserResponse_httpStatus :: Lens' CreateUserResponse Int
+ Amazonka.IAM.CreateUser: createUserResponse_user :: Lens' CreateUserResponse (Maybe User)
+ Amazonka.IAM.CreateUser: createUser_path :: Lens' CreateUser (Maybe Text)
+ Amazonka.IAM.CreateUser: createUser_permissionsBoundary :: Lens' CreateUser (Maybe Text)
+ Amazonka.IAM.CreateUser: createUser_tags :: Lens' CreateUser (Maybe [Tag])
+ Amazonka.IAM.CreateUser: createUser_userName :: Lens' CreateUser Text
+ Amazonka.IAM.CreateUser: data CreateUser
+ Amazonka.IAM.CreateUser: data CreateUserResponse
+ Amazonka.IAM.CreateUser: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance Control.DeepSeq.NFData Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance Control.DeepSeq.NFData Amazonka.IAM.CreateUser.CreateUserResponse
+ Amazonka.IAM.CreateUser: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance GHC.Classes.Eq Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance GHC.Classes.Eq Amazonka.IAM.CreateUser.CreateUserResponse
+ Amazonka.IAM.CreateUser: instance GHC.Generics.Generic Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance GHC.Generics.Generic Amazonka.IAM.CreateUser.CreateUserResponse
+ Amazonka.IAM.CreateUser: instance GHC.Read.Read Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance GHC.Read.Read Amazonka.IAM.CreateUser.CreateUserResponse
+ Amazonka.IAM.CreateUser: instance GHC.Show.Show Amazonka.IAM.CreateUser.CreateUser
+ Amazonka.IAM.CreateUser: instance GHC.Show.Show Amazonka.IAM.CreateUser.CreateUserResponse
+ Amazonka.IAM.CreateUser: newCreateUser :: Text -> CreateUser
+ Amazonka.IAM.CreateUser: newCreateUserResponse :: Int -> CreateUserResponse
+ Amazonka.IAM.CreateVirtualMFADevice: CreateVirtualMFADevice' :: Maybe Text -> Maybe [Tag] -> Text -> CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: CreateVirtualMFADeviceResponse' :: Int -> VirtualMFADevice -> CreateVirtualMFADeviceResponse
+ Amazonka.IAM.CreateVirtualMFADevice: [$sel:httpStatus:CreateVirtualMFADeviceResponse'] :: CreateVirtualMFADeviceResponse -> Int
+ Amazonka.IAM.CreateVirtualMFADevice: [$sel:path:CreateVirtualMFADevice'] :: CreateVirtualMFADevice -> Maybe Text
+ Amazonka.IAM.CreateVirtualMFADevice: [$sel:tags:CreateVirtualMFADevice'] :: CreateVirtualMFADevice -> Maybe [Tag]
+ Amazonka.IAM.CreateVirtualMFADevice: [$sel:virtualMFADevice:CreateVirtualMFADeviceResponse'] :: CreateVirtualMFADeviceResponse -> VirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: [$sel:virtualMFADeviceName:CreateVirtualMFADevice'] :: CreateVirtualMFADevice -> Text
+ Amazonka.IAM.CreateVirtualMFADevice: createVirtualMFADeviceResponse_httpStatus :: Lens' CreateVirtualMFADeviceResponse Int
+ Amazonka.IAM.CreateVirtualMFADevice: createVirtualMFADeviceResponse_virtualMFADevice :: Lens' CreateVirtualMFADeviceResponse VirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: createVirtualMFADevice_path :: Lens' CreateVirtualMFADevice (Maybe Text)
+ Amazonka.IAM.CreateVirtualMFADevice: createVirtualMFADevice_tags :: Lens' CreateVirtualMFADevice (Maybe [Tag])
+ Amazonka.IAM.CreateVirtualMFADevice: createVirtualMFADevice_virtualMFADeviceName :: Lens' CreateVirtualMFADevice Text
+ Amazonka.IAM.CreateVirtualMFADevice: data CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: data CreateVirtualMFADeviceResponse
+ Amazonka.IAM.CreateVirtualMFADevice: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance Amazonka.Data.Path.ToPath Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance Amazonka.Types.AWSRequest Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
+ Amazonka.IAM.CreateVirtualMFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance GHC.Classes.Eq Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance GHC.Classes.Eq Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
+ Amazonka.IAM.CreateVirtualMFADevice: instance GHC.Generics.Generic Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance GHC.Generics.Generic Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
+ Amazonka.IAM.CreateVirtualMFADevice: instance GHC.Read.Read Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance GHC.Show.Show Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: instance GHC.Show.Show Amazonka.IAM.CreateVirtualMFADevice.CreateVirtualMFADeviceResponse
+ Amazonka.IAM.CreateVirtualMFADevice: newCreateVirtualMFADevice :: Text -> CreateVirtualMFADevice
+ Amazonka.IAM.CreateVirtualMFADevice: newCreateVirtualMFADeviceResponse :: Int -> VirtualMFADevice -> CreateVirtualMFADeviceResponse
+ Amazonka.IAM.DeactivateMFADevice: DeactivateMFADevice' :: Text -> Text -> DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: DeactivateMFADeviceResponse' :: DeactivateMFADeviceResponse
+ Amazonka.IAM.DeactivateMFADevice: [$sel:serialNumber:DeactivateMFADevice'] :: DeactivateMFADevice -> Text
+ Amazonka.IAM.DeactivateMFADevice: [$sel:userName:DeactivateMFADevice'] :: DeactivateMFADevice -> Text
+ Amazonka.IAM.DeactivateMFADevice: data DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: data DeactivateMFADeviceResponse
+ Amazonka.IAM.DeactivateMFADevice: deactivateMFADevice_serialNumber :: Lens' DeactivateMFADevice Text
+ Amazonka.IAM.DeactivateMFADevice: deactivateMFADevice_userName :: Lens' DeactivateMFADevice Text
+ Amazonka.IAM.DeactivateMFADevice: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
+ Amazonka.IAM.DeactivateMFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance GHC.Classes.Eq Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance GHC.Classes.Eq Amazonka.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
+ Amazonka.IAM.DeactivateMFADevice: instance GHC.Generics.Generic Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance GHC.Generics.Generic Amazonka.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
+ Amazonka.IAM.DeactivateMFADevice: instance GHC.Read.Read Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance GHC.Read.Read Amazonka.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
+ Amazonka.IAM.DeactivateMFADevice: instance GHC.Show.Show Amazonka.IAM.DeactivateMFADevice.DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: instance GHC.Show.Show Amazonka.IAM.DeactivateMFADevice.DeactivateMFADeviceResponse
+ Amazonka.IAM.DeactivateMFADevice: newDeactivateMFADevice :: Text -> Text -> DeactivateMFADevice
+ Amazonka.IAM.DeactivateMFADevice: newDeactivateMFADeviceResponse :: DeactivateMFADeviceResponse
+ Amazonka.IAM.DeleteAccessKey: DeleteAccessKey' :: Maybe Text -> AccessKey -> DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: DeleteAccessKeyResponse' :: DeleteAccessKeyResponse
+ Amazonka.IAM.DeleteAccessKey: [$sel:accessKeyId:DeleteAccessKey'] :: DeleteAccessKey -> AccessKey
+ Amazonka.IAM.DeleteAccessKey: [$sel:userName:DeleteAccessKey'] :: DeleteAccessKey -> Maybe Text
+ Amazonka.IAM.DeleteAccessKey: data DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: data DeleteAccessKeyResponse
+ Amazonka.IAM.DeleteAccessKey: deleteAccessKey_accessKeyId :: Lens' DeleteAccessKey AccessKey
+ Amazonka.IAM.DeleteAccessKey: deleteAccessKey_userName :: Lens' DeleteAccessKey (Maybe Text)
+ Amazonka.IAM.DeleteAccessKey: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteAccessKey.DeleteAccessKeyResponse
+ Amazonka.IAM.DeleteAccessKey: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance GHC.Classes.Eq Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance GHC.Classes.Eq Amazonka.IAM.DeleteAccessKey.DeleteAccessKeyResponse
+ Amazonka.IAM.DeleteAccessKey: instance GHC.Generics.Generic Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance GHC.Generics.Generic Amazonka.IAM.DeleteAccessKey.DeleteAccessKeyResponse
+ Amazonka.IAM.DeleteAccessKey: instance GHC.Read.Read Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance GHC.Read.Read Amazonka.IAM.DeleteAccessKey.DeleteAccessKeyResponse
+ Amazonka.IAM.DeleteAccessKey: instance GHC.Show.Show Amazonka.IAM.DeleteAccessKey.DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: instance GHC.Show.Show Amazonka.IAM.DeleteAccessKey.DeleteAccessKeyResponse
+ Amazonka.IAM.DeleteAccessKey: newDeleteAccessKey :: AccessKey -> DeleteAccessKey
+ Amazonka.IAM.DeleteAccessKey: newDeleteAccessKeyResponse :: DeleteAccessKeyResponse
+ Amazonka.IAM.DeleteAccountAlias: DeleteAccountAlias' :: Text -> DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: DeleteAccountAliasResponse' :: DeleteAccountAliasResponse
+ Amazonka.IAM.DeleteAccountAlias: [$sel:accountAlias:DeleteAccountAlias'] :: DeleteAccountAlias -> Text
+ Amazonka.IAM.DeleteAccountAlias: data DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: data DeleteAccountAliasResponse
+ Amazonka.IAM.DeleteAccountAlias: deleteAccountAlias_accountAlias :: Lens' DeleteAccountAlias Text
+ Amazonka.IAM.DeleteAccountAlias: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
+ Amazonka.IAM.DeleteAccountAlias: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance GHC.Classes.Eq Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance GHC.Classes.Eq Amazonka.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
+ Amazonka.IAM.DeleteAccountAlias: instance GHC.Generics.Generic Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance GHC.Generics.Generic Amazonka.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
+ Amazonka.IAM.DeleteAccountAlias: instance GHC.Read.Read Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance GHC.Read.Read Amazonka.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
+ Amazonka.IAM.DeleteAccountAlias: instance GHC.Show.Show Amazonka.IAM.DeleteAccountAlias.DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: instance GHC.Show.Show Amazonka.IAM.DeleteAccountAlias.DeleteAccountAliasResponse
+ Amazonka.IAM.DeleteAccountAlias: newDeleteAccountAlias :: Text -> DeleteAccountAlias
+ Amazonka.IAM.DeleteAccountAlias: newDeleteAccountAliasResponse :: DeleteAccountAliasResponse
+ Amazonka.IAM.DeleteAccountPasswordPolicy: DeleteAccountPasswordPolicy' :: DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: DeleteAccountPasswordPolicyResponse' :: DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM.DeleteAccountPasswordPolicy: data DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: data DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance GHC.Classes.Eq Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance GHC.Classes.Eq Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance GHC.Generics.Generic Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance GHC.Generics.Generic Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance GHC.Read.Read Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance GHC.Read.Read Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance GHC.Show.Show Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: instance GHC.Show.Show Amazonka.IAM.DeleteAccountPasswordPolicy.DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM.DeleteAccountPasswordPolicy: newDeleteAccountPasswordPolicy :: DeleteAccountPasswordPolicy
+ Amazonka.IAM.DeleteAccountPasswordPolicy: newDeleteAccountPasswordPolicyResponse :: DeleteAccountPasswordPolicyResponse
+ Amazonka.IAM.DeleteGroup: DeleteGroup' :: Text -> DeleteGroup
+ Amazonka.IAM.DeleteGroup: DeleteGroupResponse' :: DeleteGroupResponse
+ Amazonka.IAM.DeleteGroup: [$sel:groupName:DeleteGroup'] :: DeleteGroup -> Text
+ Amazonka.IAM.DeleteGroup: data DeleteGroup
+ Amazonka.IAM.DeleteGroup: data DeleteGroupResponse
+ Amazonka.IAM.DeleteGroup: deleteGroup_groupName :: Lens' DeleteGroup Text
+ Amazonka.IAM.DeleteGroup: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteGroup.DeleteGroupResponse
+ Amazonka.IAM.DeleteGroup: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance GHC.Classes.Eq Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance GHC.Classes.Eq Amazonka.IAM.DeleteGroup.DeleteGroupResponse
+ Amazonka.IAM.DeleteGroup: instance GHC.Generics.Generic Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance GHC.Generics.Generic Amazonka.IAM.DeleteGroup.DeleteGroupResponse
+ Amazonka.IAM.DeleteGroup: instance GHC.Read.Read Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance GHC.Read.Read Amazonka.IAM.DeleteGroup.DeleteGroupResponse
+ Amazonka.IAM.DeleteGroup: instance GHC.Show.Show Amazonka.IAM.DeleteGroup.DeleteGroup
+ Amazonka.IAM.DeleteGroup: instance GHC.Show.Show Amazonka.IAM.DeleteGroup.DeleteGroupResponse
+ Amazonka.IAM.DeleteGroup: newDeleteGroup :: Text -> DeleteGroup
+ Amazonka.IAM.DeleteGroup: newDeleteGroupResponse :: DeleteGroupResponse
+ Amazonka.IAM.DeleteGroupPolicy: DeleteGroupPolicy' :: Text -> Text -> DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: DeleteGroupPolicyResponse' :: DeleteGroupPolicyResponse
+ Amazonka.IAM.DeleteGroupPolicy: [$sel:groupName:DeleteGroupPolicy'] :: DeleteGroupPolicy -> Text
+ Amazonka.IAM.DeleteGroupPolicy: [$sel:policyName:DeleteGroupPolicy'] :: DeleteGroupPolicy -> Text
+ Amazonka.IAM.DeleteGroupPolicy: data DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: data DeleteGroupPolicyResponse
+ Amazonka.IAM.DeleteGroupPolicy: deleteGroupPolicy_groupName :: Lens' DeleteGroupPolicy Text
+ Amazonka.IAM.DeleteGroupPolicy: deleteGroupPolicy_policyName :: Lens' DeleteGroupPolicy Text
+ Amazonka.IAM.DeleteGroupPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
+ Amazonka.IAM.DeleteGroupPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
+ Amazonka.IAM.DeleteGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
+ Amazonka.IAM.DeleteGroupPolicy: instance GHC.Read.Read Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance GHC.Read.Read Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
+ Amazonka.IAM.DeleteGroupPolicy: instance GHC.Show.Show Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: instance GHC.Show.Show Amazonka.IAM.DeleteGroupPolicy.DeleteGroupPolicyResponse
+ Amazonka.IAM.DeleteGroupPolicy: newDeleteGroupPolicy :: Text -> Text -> DeleteGroupPolicy
+ Amazonka.IAM.DeleteGroupPolicy: newDeleteGroupPolicyResponse :: DeleteGroupPolicyResponse
+ Amazonka.IAM.DeleteInstanceProfile: DeleteInstanceProfile' :: Text -> DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: DeleteInstanceProfileResponse' :: DeleteInstanceProfileResponse
+ Amazonka.IAM.DeleteInstanceProfile: [$sel:instanceProfileName:DeleteInstanceProfile'] :: DeleteInstanceProfile -> Text
+ Amazonka.IAM.DeleteInstanceProfile: data DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: data DeleteInstanceProfileResponse
+ Amazonka.IAM.DeleteInstanceProfile: deleteInstanceProfile_instanceProfileName :: Lens' DeleteInstanceProfile Text
+ Amazonka.IAM.DeleteInstanceProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
+ Amazonka.IAM.DeleteInstanceProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
+ Amazonka.IAM.DeleteInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
+ Amazonka.IAM.DeleteInstanceProfile: instance GHC.Read.Read Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance GHC.Read.Read Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
+ Amazonka.IAM.DeleteInstanceProfile: instance GHC.Show.Show Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: instance GHC.Show.Show Amazonka.IAM.DeleteInstanceProfile.DeleteInstanceProfileResponse
+ Amazonka.IAM.DeleteInstanceProfile: newDeleteInstanceProfile :: Text -> DeleteInstanceProfile
+ Amazonka.IAM.DeleteInstanceProfile: newDeleteInstanceProfileResponse :: DeleteInstanceProfileResponse
+ Amazonka.IAM.DeleteLoginProfile: DeleteLoginProfile' :: Text -> DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: DeleteLoginProfileResponse' :: DeleteLoginProfileResponse
+ Amazonka.IAM.DeleteLoginProfile: [$sel:userName:DeleteLoginProfile'] :: DeleteLoginProfile -> Text
+ Amazonka.IAM.DeleteLoginProfile: data DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: data DeleteLoginProfileResponse
+ Amazonka.IAM.DeleteLoginProfile: deleteLoginProfile_userName :: Lens' DeleteLoginProfile Text
+ Amazonka.IAM.DeleteLoginProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
+ Amazonka.IAM.DeleteLoginProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance GHC.Classes.Eq Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance GHC.Classes.Eq Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
+ Amazonka.IAM.DeleteLoginProfile: instance GHC.Generics.Generic Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance GHC.Generics.Generic Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
+ Amazonka.IAM.DeleteLoginProfile: instance GHC.Read.Read Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance GHC.Read.Read Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
+ Amazonka.IAM.DeleteLoginProfile: instance GHC.Show.Show Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: instance GHC.Show.Show Amazonka.IAM.DeleteLoginProfile.DeleteLoginProfileResponse
+ Amazonka.IAM.DeleteLoginProfile: newDeleteLoginProfile :: Text -> DeleteLoginProfile
+ Amazonka.IAM.DeleteLoginProfile: newDeleteLoginProfileResponse :: DeleteLoginProfileResponse
+ Amazonka.IAM.DeleteOpenIDConnectProvider: DeleteOpenIDConnectProvider' :: Text -> DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: DeleteOpenIDConnectProviderResponse' :: DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM.DeleteOpenIDConnectProvider: [$sel:openIDConnectProviderArn:DeleteOpenIDConnectProvider'] :: DeleteOpenIDConnectProvider -> Text
+ Amazonka.IAM.DeleteOpenIDConnectProvider: data DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: data DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM.DeleteOpenIDConnectProvider: deleteOpenIDConnectProvider_openIDConnectProviderArn :: Lens' DeleteOpenIDConnectProvider Text
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.DeleteOpenIDConnectProvider.DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM.DeleteOpenIDConnectProvider: newDeleteOpenIDConnectProvider :: Text -> DeleteOpenIDConnectProvider
+ Amazonka.IAM.DeleteOpenIDConnectProvider: newDeleteOpenIDConnectProviderResponse :: DeleteOpenIDConnectProviderResponse
+ Amazonka.IAM.DeletePolicy: DeletePolicy' :: Text -> DeletePolicy
+ Amazonka.IAM.DeletePolicy: DeletePolicyResponse' :: DeletePolicyResponse
+ Amazonka.IAM.DeletePolicy: [$sel:policyArn:DeletePolicy'] :: DeletePolicy -> Text
+ Amazonka.IAM.DeletePolicy: data DeletePolicy
+ Amazonka.IAM.DeletePolicy: data DeletePolicyResponse
+ Amazonka.IAM.DeletePolicy: deletePolicy_policyArn :: Lens' DeletePolicy Text
+ Amazonka.IAM.DeletePolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeletePolicy.DeletePolicyResponse
+ Amazonka.IAM.DeletePolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance GHC.Classes.Eq Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance GHC.Classes.Eq Amazonka.IAM.DeletePolicy.DeletePolicyResponse
+ Amazonka.IAM.DeletePolicy: instance GHC.Generics.Generic Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance GHC.Generics.Generic Amazonka.IAM.DeletePolicy.DeletePolicyResponse
+ Amazonka.IAM.DeletePolicy: instance GHC.Read.Read Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance GHC.Read.Read Amazonka.IAM.DeletePolicy.DeletePolicyResponse
+ Amazonka.IAM.DeletePolicy: instance GHC.Show.Show Amazonka.IAM.DeletePolicy.DeletePolicy
+ Amazonka.IAM.DeletePolicy: instance GHC.Show.Show Amazonka.IAM.DeletePolicy.DeletePolicyResponse
+ Amazonka.IAM.DeletePolicy: newDeletePolicy :: Text -> DeletePolicy
+ Amazonka.IAM.DeletePolicy: newDeletePolicyResponse :: DeletePolicyResponse
+ Amazonka.IAM.DeletePolicyVersion: DeletePolicyVersion' :: Text -> Text -> DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: DeletePolicyVersionResponse' :: DeletePolicyVersionResponse
+ Amazonka.IAM.DeletePolicyVersion: [$sel:policyArn:DeletePolicyVersion'] :: DeletePolicyVersion -> Text
+ Amazonka.IAM.DeletePolicyVersion: [$sel:versionId:DeletePolicyVersion'] :: DeletePolicyVersion -> Text
+ Amazonka.IAM.DeletePolicyVersion: data DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: data DeletePolicyVersionResponse
+ Amazonka.IAM.DeletePolicyVersion: deletePolicyVersion_policyArn :: Lens' DeletePolicyVersion Text
+ Amazonka.IAM.DeletePolicyVersion: deletePolicyVersion_versionId :: Lens' DeletePolicyVersion Text
+ Amazonka.IAM.DeletePolicyVersion: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
+ Amazonka.IAM.DeletePolicyVersion: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
+ Amazonka.IAM.DeletePolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
+ Amazonka.IAM.DeletePolicyVersion: instance GHC.Read.Read Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance GHC.Read.Read Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
+ Amazonka.IAM.DeletePolicyVersion: instance GHC.Show.Show Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: instance GHC.Show.Show Amazonka.IAM.DeletePolicyVersion.DeletePolicyVersionResponse
+ Amazonka.IAM.DeletePolicyVersion: newDeletePolicyVersion :: Text -> Text -> DeletePolicyVersion
+ Amazonka.IAM.DeletePolicyVersion: newDeletePolicyVersionResponse :: DeletePolicyVersionResponse
+ Amazonka.IAM.DeleteRole: DeleteRole' :: Text -> DeleteRole
+ Amazonka.IAM.DeleteRole: DeleteRoleResponse' :: DeleteRoleResponse
+ Amazonka.IAM.DeleteRole: [$sel:roleName:DeleteRole'] :: DeleteRole -> Text
+ Amazonka.IAM.DeleteRole: data DeleteRole
+ Amazonka.IAM.DeleteRole: data DeleteRoleResponse
+ Amazonka.IAM.DeleteRole: deleteRole_roleName :: Lens' DeleteRole Text
+ Amazonka.IAM.DeleteRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteRole.DeleteRoleResponse
+ Amazonka.IAM.DeleteRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance GHC.Classes.Eq Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance GHC.Classes.Eq Amazonka.IAM.DeleteRole.DeleteRoleResponse
+ Amazonka.IAM.DeleteRole: instance GHC.Generics.Generic Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance GHC.Generics.Generic Amazonka.IAM.DeleteRole.DeleteRoleResponse
+ Amazonka.IAM.DeleteRole: instance GHC.Read.Read Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance GHC.Read.Read Amazonka.IAM.DeleteRole.DeleteRoleResponse
+ Amazonka.IAM.DeleteRole: instance GHC.Show.Show Amazonka.IAM.DeleteRole.DeleteRole
+ Amazonka.IAM.DeleteRole: instance GHC.Show.Show Amazonka.IAM.DeleteRole.DeleteRoleResponse
+ Amazonka.IAM.DeleteRole: newDeleteRole :: Text -> DeleteRole
+ Amazonka.IAM.DeleteRole: newDeleteRoleResponse :: DeleteRoleResponse
+ Amazonka.IAM.DeleteRolePermissionsBoundary: DeleteRolePermissionsBoundary' :: Text -> DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: DeleteRolePermissionsBoundaryResponse' :: DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM.DeleteRolePermissionsBoundary: [$sel:roleName:DeleteRolePermissionsBoundary'] :: DeleteRolePermissionsBoundary -> Text
+ Amazonka.IAM.DeleteRolePermissionsBoundary: data DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: data DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM.DeleteRolePermissionsBoundary: deleteRolePermissionsBoundary_roleName :: Lens' DeleteRolePermissionsBoundary Text
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.DeleteRolePermissionsBoundary.DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM.DeleteRolePermissionsBoundary: newDeleteRolePermissionsBoundary :: Text -> DeleteRolePermissionsBoundary
+ Amazonka.IAM.DeleteRolePermissionsBoundary: newDeleteRolePermissionsBoundaryResponse :: DeleteRolePermissionsBoundaryResponse
+ Amazonka.IAM.DeleteRolePolicy: DeleteRolePolicy' :: Text -> Text -> DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: DeleteRolePolicyResponse' :: DeleteRolePolicyResponse
+ Amazonka.IAM.DeleteRolePolicy: [$sel:policyName:DeleteRolePolicy'] :: DeleteRolePolicy -> Text
+ Amazonka.IAM.DeleteRolePolicy: [$sel:roleName:DeleteRolePolicy'] :: DeleteRolePolicy -> Text
+ Amazonka.IAM.DeleteRolePolicy: data DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: data DeleteRolePolicyResponse
+ Amazonka.IAM.DeleteRolePolicy: deleteRolePolicy_policyName :: Lens' DeleteRolePolicy Text
+ Amazonka.IAM.DeleteRolePolicy: deleteRolePolicy_roleName :: Lens' DeleteRolePolicy Text
+ Amazonka.IAM.DeleteRolePolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
+ Amazonka.IAM.DeleteRolePolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
+ Amazonka.IAM.DeleteRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
+ Amazonka.IAM.DeleteRolePolicy: instance GHC.Read.Read Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance GHC.Read.Read Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
+ Amazonka.IAM.DeleteRolePolicy: instance GHC.Show.Show Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: instance GHC.Show.Show Amazonka.IAM.DeleteRolePolicy.DeleteRolePolicyResponse
+ Amazonka.IAM.DeleteRolePolicy: newDeleteRolePolicy :: Text -> Text -> DeleteRolePolicy
+ Amazonka.IAM.DeleteRolePolicy: newDeleteRolePolicyResponse :: DeleteRolePolicyResponse
+ Amazonka.IAM.DeleteSAMLProvider: DeleteSAMLProvider' :: Text -> DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: DeleteSAMLProviderResponse' :: DeleteSAMLProviderResponse
+ Amazonka.IAM.DeleteSAMLProvider: [$sel:sAMLProviderArn:DeleteSAMLProvider'] :: DeleteSAMLProvider -> Text
+ Amazonka.IAM.DeleteSAMLProvider: data DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: data DeleteSAMLProviderResponse
+ Amazonka.IAM.DeleteSAMLProvider: deleteSAMLProvider_sAMLProviderArn :: Lens' DeleteSAMLProvider Text
+ Amazonka.IAM.DeleteSAMLProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
+ Amazonka.IAM.DeleteSAMLProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
+ Amazonka.IAM.DeleteSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
+ Amazonka.IAM.DeleteSAMLProvider: instance GHC.Read.Read Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance GHC.Read.Read Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
+ Amazonka.IAM.DeleteSAMLProvider: instance GHC.Show.Show Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: instance GHC.Show.Show Amazonka.IAM.DeleteSAMLProvider.DeleteSAMLProviderResponse
+ Amazonka.IAM.DeleteSAMLProvider: newDeleteSAMLProvider :: Text -> DeleteSAMLProvider
+ Amazonka.IAM.DeleteSAMLProvider: newDeleteSAMLProviderResponse :: DeleteSAMLProviderResponse
+ Amazonka.IAM.DeleteSSHPublicKey: DeleteSSHPublicKey' :: Text -> Text -> DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: DeleteSSHPublicKeyResponse' :: DeleteSSHPublicKeyResponse
+ Amazonka.IAM.DeleteSSHPublicKey: [$sel:sSHPublicKeyId:DeleteSSHPublicKey'] :: DeleteSSHPublicKey -> Text
+ Amazonka.IAM.DeleteSSHPublicKey: [$sel:userName:DeleteSSHPublicKey'] :: DeleteSSHPublicKey -> Text
+ Amazonka.IAM.DeleteSSHPublicKey: data DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: data DeleteSSHPublicKeyResponse
+ Amazonka.IAM.DeleteSSHPublicKey: deleteSSHPublicKey_sSHPublicKeyId :: Lens' DeleteSSHPublicKey Text
+ Amazonka.IAM.DeleteSSHPublicKey: deleteSSHPublicKey_userName :: Lens' DeleteSSHPublicKey Text
+ Amazonka.IAM.DeleteSSHPublicKey: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
+ Amazonka.IAM.DeleteSSHPublicKey: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
+ Amazonka.IAM.DeleteSSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
+ Amazonka.IAM.DeleteSSHPublicKey: instance GHC.Read.Read Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance GHC.Read.Read Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
+ Amazonka.IAM.DeleteSSHPublicKey: instance GHC.Show.Show Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: instance GHC.Show.Show Amazonka.IAM.DeleteSSHPublicKey.DeleteSSHPublicKeyResponse
+ Amazonka.IAM.DeleteSSHPublicKey: newDeleteSSHPublicKey :: Text -> Text -> DeleteSSHPublicKey
+ Amazonka.IAM.DeleteSSHPublicKey: newDeleteSSHPublicKeyResponse :: DeleteSSHPublicKeyResponse
+ Amazonka.IAM.DeleteServerCertificate: DeleteServerCertificate' :: Text -> DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: DeleteServerCertificateResponse' :: DeleteServerCertificateResponse
+ Amazonka.IAM.DeleteServerCertificate: [$sel:serverCertificateName:DeleteServerCertificate'] :: DeleteServerCertificate -> Text
+ Amazonka.IAM.DeleteServerCertificate: data DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: data DeleteServerCertificateResponse
+ Amazonka.IAM.DeleteServerCertificate: deleteServerCertificate_serverCertificateName :: Lens' DeleteServerCertificate Text
+ Amazonka.IAM.DeleteServerCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
+ Amazonka.IAM.DeleteServerCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
+ Amazonka.IAM.DeleteServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
+ Amazonka.IAM.DeleteServerCertificate: instance GHC.Read.Read Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance GHC.Read.Read Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
+ Amazonka.IAM.DeleteServerCertificate: instance GHC.Show.Show Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: instance GHC.Show.Show Amazonka.IAM.DeleteServerCertificate.DeleteServerCertificateResponse
+ Amazonka.IAM.DeleteServerCertificate: newDeleteServerCertificate :: Text -> DeleteServerCertificate
+ Amazonka.IAM.DeleteServerCertificate: newDeleteServerCertificateResponse :: DeleteServerCertificateResponse
+ Amazonka.IAM.DeleteServiceLinkedRole: DeleteServiceLinkedRole' :: Text -> DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: DeleteServiceLinkedRoleResponse' :: Int -> Text -> DeleteServiceLinkedRoleResponse
+ Amazonka.IAM.DeleteServiceLinkedRole: [$sel:deletionTaskId:DeleteServiceLinkedRoleResponse'] :: DeleteServiceLinkedRoleResponse -> Text
+ Amazonka.IAM.DeleteServiceLinkedRole: [$sel:httpStatus:DeleteServiceLinkedRoleResponse'] :: DeleteServiceLinkedRoleResponse -> Int
+ Amazonka.IAM.DeleteServiceLinkedRole: [$sel:roleName:DeleteServiceLinkedRole'] :: DeleteServiceLinkedRole -> Text
+ Amazonka.IAM.DeleteServiceLinkedRole: data DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: data DeleteServiceLinkedRoleResponse
+ Amazonka.IAM.DeleteServiceLinkedRole: deleteServiceLinkedRoleResponse_deletionTaskId :: Lens' DeleteServiceLinkedRoleResponse Text
+ Amazonka.IAM.DeleteServiceLinkedRole: deleteServiceLinkedRoleResponse_httpStatus :: Lens' DeleteServiceLinkedRoleResponse Int
+ Amazonka.IAM.DeleteServiceLinkedRole: deleteServiceLinkedRole_roleName :: Lens' DeleteServiceLinkedRole Text
+ Amazonka.IAM.DeleteServiceLinkedRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
+ Amazonka.IAM.DeleteServiceLinkedRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance GHC.Classes.Eq Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance GHC.Classes.Eq Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
+ Amazonka.IAM.DeleteServiceLinkedRole: instance GHC.Generics.Generic Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance GHC.Generics.Generic Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
+ Amazonka.IAM.DeleteServiceLinkedRole: instance GHC.Read.Read Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance GHC.Read.Read Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
+ Amazonka.IAM.DeleteServiceLinkedRole: instance GHC.Show.Show Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: instance GHC.Show.Show Amazonka.IAM.DeleteServiceLinkedRole.DeleteServiceLinkedRoleResponse
+ Amazonka.IAM.DeleteServiceLinkedRole: newDeleteServiceLinkedRole :: Text -> DeleteServiceLinkedRole
+ Amazonka.IAM.DeleteServiceLinkedRole: newDeleteServiceLinkedRoleResponse :: Int -> Text -> DeleteServiceLinkedRoleResponse
+ Amazonka.IAM.DeleteServiceSpecificCredential: DeleteServiceSpecificCredential' :: Maybe Text -> Text -> DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: DeleteServiceSpecificCredentialResponse' :: DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM.DeleteServiceSpecificCredential: [$sel:serviceSpecificCredentialId:DeleteServiceSpecificCredential'] :: DeleteServiceSpecificCredential -> Text
+ Amazonka.IAM.DeleteServiceSpecificCredential: [$sel:userName:DeleteServiceSpecificCredential'] :: DeleteServiceSpecificCredential -> Maybe Text
+ Amazonka.IAM.DeleteServiceSpecificCredential: data DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: data DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM.DeleteServiceSpecificCredential: deleteServiceSpecificCredential_serviceSpecificCredentialId :: Lens' DeleteServiceSpecificCredential Text
+ Amazonka.IAM.DeleteServiceSpecificCredential: deleteServiceSpecificCredential_userName :: Lens' DeleteServiceSpecificCredential (Maybe Text)
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance GHC.Read.Read Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance GHC.Read.Read Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.DeleteServiceSpecificCredential.DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM.DeleteServiceSpecificCredential: newDeleteServiceSpecificCredential :: Text -> DeleteServiceSpecificCredential
+ Amazonka.IAM.DeleteServiceSpecificCredential: newDeleteServiceSpecificCredentialResponse :: DeleteServiceSpecificCredentialResponse
+ Amazonka.IAM.DeleteSigningCertificate: DeleteSigningCertificate' :: Maybe Text -> Text -> DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: DeleteSigningCertificateResponse' :: DeleteSigningCertificateResponse
+ Amazonka.IAM.DeleteSigningCertificate: [$sel:certificateId:DeleteSigningCertificate'] :: DeleteSigningCertificate -> Text
+ Amazonka.IAM.DeleteSigningCertificate: [$sel:userName:DeleteSigningCertificate'] :: DeleteSigningCertificate -> Maybe Text
+ Amazonka.IAM.DeleteSigningCertificate: data DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: data DeleteSigningCertificateResponse
+ Amazonka.IAM.DeleteSigningCertificate: deleteSigningCertificate_certificateId :: Lens' DeleteSigningCertificate Text
+ Amazonka.IAM.DeleteSigningCertificate: deleteSigningCertificate_userName :: Lens' DeleteSigningCertificate (Maybe Text)
+ Amazonka.IAM.DeleteSigningCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
+ Amazonka.IAM.DeleteSigningCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance GHC.Classes.Eq Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance GHC.Classes.Eq Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
+ Amazonka.IAM.DeleteSigningCertificate: instance GHC.Generics.Generic Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance GHC.Generics.Generic Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
+ Amazonka.IAM.DeleteSigningCertificate: instance GHC.Read.Read Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance GHC.Read.Read Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
+ Amazonka.IAM.DeleteSigningCertificate: instance GHC.Show.Show Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: instance GHC.Show.Show Amazonka.IAM.DeleteSigningCertificate.DeleteSigningCertificateResponse
+ Amazonka.IAM.DeleteSigningCertificate: newDeleteSigningCertificate :: Text -> DeleteSigningCertificate
+ Amazonka.IAM.DeleteSigningCertificate: newDeleteSigningCertificateResponse :: DeleteSigningCertificateResponse
+ Amazonka.IAM.DeleteUser: DeleteUser' :: Text -> DeleteUser
+ Amazonka.IAM.DeleteUser: DeleteUserResponse' :: DeleteUserResponse
+ Amazonka.IAM.DeleteUser: [$sel:userName:DeleteUser'] :: DeleteUser -> Text
+ Amazonka.IAM.DeleteUser: data DeleteUser
+ Amazonka.IAM.DeleteUser: data DeleteUserResponse
+ Amazonka.IAM.DeleteUser: deleteUser_userName :: Lens' DeleteUser Text
+ Amazonka.IAM.DeleteUser: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteUser.DeleteUserResponse
+ Amazonka.IAM.DeleteUser: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance GHC.Classes.Eq Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance GHC.Classes.Eq Amazonka.IAM.DeleteUser.DeleteUserResponse
+ Amazonka.IAM.DeleteUser: instance GHC.Generics.Generic Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance GHC.Generics.Generic Amazonka.IAM.DeleteUser.DeleteUserResponse
+ Amazonka.IAM.DeleteUser: instance GHC.Read.Read Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance GHC.Read.Read Amazonka.IAM.DeleteUser.DeleteUserResponse
+ Amazonka.IAM.DeleteUser: instance GHC.Show.Show Amazonka.IAM.DeleteUser.DeleteUser
+ Amazonka.IAM.DeleteUser: instance GHC.Show.Show Amazonka.IAM.DeleteUser.DeleteUserResponse
+ Amazonka.IAM.DeleteUser: newDeleteUser :: Text -> DeleteUser
+ Amazonka.IAM.DeleteUser: newDeleteUserResponse :: DeleteUserResponse
+ Amazonka.IAM.DeleteUserPermissionsBoundary: DeleteUserPermissionsBoundary' :: Text -> DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: DeleteUserPermissionsBoundaryResponse' :: DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM.DeleteUserPermissionsBoundary: [$sel:userName:DeleteUserPermissionsBoundary'] :: DeleteUserPermissionsBoundary -> Text
+ Amazonka.IAM.DeleteUserPermissionsBoundary: data DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: data DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM.DeleteUserPermissionsBoundary: deleteUserPermissionsBoundary_userName :: Lens' DeleteUserPermissionsBoundary Text
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.DeleteUserPermissionsBoundary.DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM.DeleteUserPermissionsBoundary: newDeleteUserPermissionsBoundary :: Text -> DeleteUserPermissionsBoundary
+ Amazonka.IAM.DeleteUserPermissionsBoundary: newDeleteUserPermissionsBoundaryResponse :: DeleteUserPermissionsBoundaryResponse
+ Amazonka.IAM.DeleteUserPolicy: DeleteUserPolicy' :: Text -> Text -> DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: DeleteUserPolicyResponse' :: DeleteUserPolicyResponse
+ Amazonka.IAM.DeleteUserPolicy: [$sel:policyName:DeleteUserPolicy'] :: DeleteUserPolicy -> Text
+ Amazonka.IAM.DeleteUserPolicy: [$sel:userName:DeleteUserPolicy'] :: DeleteUserPolicy -> Text
+ Amazonka.IAM.DeleteUserPolicy: data DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: data DeleteUserPolicyResponse
+ Amazonka.IAM.DeleteUserPolicy: deleteUserPolicy_policyName :: Lens' DeleteUserPolicy Text
+ Amazonka.IAM.DeleteUserPolicy: deleteUserPolicy_userName :: Lens' DeleteUserPolicy Text
+ Amazonka.IAM.DeleteUserPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
+ Amazonka.IAM.DeleteUserPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
+ Amazonka.IAM.DeleteUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
+ Amazonka.IAM.DeleteUserPolicy: instance GHC.Read.Read Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance GHC.Read.Read Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
+ Amazonka.IAM.DeleteUserPolicy: instance GHC.Show.Show Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: instance GHC.Show.Show Amazonka.IAM.DeleteUserPolicy.DeleteUserPolicyResponse
+ Amazonka.IAM.DeleteUserPolicy: newDeleteUserPolicy :: Text -> Text -> DeleteUserPolicy
+ Amazonka.IAM.DeleteUserPolicy: newDeleteUserPolicyResponse :: DeleteUserPolicyResponse
+ Amazonka.IAM.DeleteVirtualMFADevice: DeleteVirtualMFADevice' :: Text -> DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: DeleteVirtualMFADeviceResponse' :: DeleteVirtualMFADeviceResponse
+ Amazonka.IAM.DeleteVirtualMFADevice: [$sel:serialNumber:DeleteVirtualMFADevice'] :: DeleteVirtualMFADevice -> Text
+ Amazonka.IAM.DeleteVirtualMFADevice: data DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: data DeleteVirtualMFADeviceResponse
+ Amazonka.IAM.DeleteVirtualMFADevice: deleteVirtualMFADevice_serialNumber :: Lens' DeleteVirtualMFADevice Text
+ Amazonka.IAM.DeleteVirtualMFADevice: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance Amazonka.Types.AWSRequest Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
+ Amazonka.IAM.DeleteVirtualMFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance GHC.Classes.Eq Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance GHC.Classes.Eq Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
+ Amazonka.IAM.DeleteVirtualMFADevice: instance GHC.Generics.Generic Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance GHC.Generics.Generic Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
+ Amazonka.IAM.DeleteVirtualMFADevice: instance GHC.Read.Read Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance GHC.Read.Read Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
+ Amazonka.IAM.DeleteVirtualMFADevice: instance GHC.Show.Show Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: instance GHC.Show.Show Amazonka.IAM.DeleteVirtualMFADevice.DeleteVirtualMFADeviceResponse
+ Amazonka.IAM.DeleteVirtualMFADevice: newDeleteVirtualMFADevice :: Text -> DeleteVirtualMFADevice
+ Amazonka.IAM.DeleteVirtualMFADevice: newDeleteVirtualMFADeviceResponse :: DeleteVirtualMFADeviceResponse
+ Amazonka.IAM.DetachGroupPolicy: DetachGroupPolicy' :: Text -> Text -> DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: DetachGroupPolicyResponse' :: DetachGroupPolicyResponse
+ Amazonka.IAM.DetachGroupPolicy: [$sel:groupName:DetachGroupPolicy'] :: DetachGroupPolicy -> Text
+ Amazonka.IAM.DetachGroupPolicy: [$sel:policyArn:DetachGroupPolicy'] :: DetachGroupPolicy -> Text
+ Amazonka.IAM.DetachGroupPolicy: data DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: data DetachGroupPolicyResponse
+ Amazonka.IAM.DetachGroupPolicy: detachGroupPolicy_groupName :: Lens' DetachGroupPolicy Text
+ Amazonka.IAM.DetachGroupPolicy: detachGroupPolicy_policyArn :: Lens' DetachGroupPolicy Text
+ Amazonka.IAM.DetachGroupPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
+ Amazonka.IAM.DetachGroupPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
+ Amazonka.IAM.DetachGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
+ Amazonka.IAM.DetachGroupPolicy: instance GHC.Read.Read Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance GHC.Read.Read Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
+ Amazonka.IAM.DetachGroupPolicy: instance GHC.Show.Show Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: instance GHC.Show.Show Amazonka.IAM.DetachGroupPolicy.DetachGroupPolicyResponse
+ Amazonka.IAM.DetachGroupPolicy: newDetachGroupPolicy :: Text -> Text -> DetachGroupPolicy
+ Amazonka.IAM.DetachGroupPolicy: newDetachGroupPolicyResponse :: DetachGroupPolicyResponse
+ Amazonka.IAM.DetachRolePolicy: DetachRolePolicy' :: Text -> Text -> DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: DetachRolePolicyResponse' :: DetachRolePolicyResponse
+ Amazonka.IAM.DetachRolePolicy: [$sel:policyArn:DetachRolePolicy'] :: DetachRolePolicy -> Text
+ Amazonka.IAM.DetachRolePolicy: [$sel:roleName:DetachRolePolicy'] :: DetachRolePolicy -> Text
+ Amazonka.IAM.DetachRolePolicy: data DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: data DetachRolePolicyResponse
+ Amazonka.IAM.DetachRolePolicy: detachRolePolicy_policyArn :: Lens' DetachRolePolicy Text
+ Amazonka.IAM.DetachRolePolicy: detachRolePolicy_roleName :: Lens' DetachRolePolicy Text
+ Amazonka.IAM.DetachRolePolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DetachRolePolicy.DetachRolePolicyResponse
+ Amazonka.IAM.DetachRolePolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.DetachRolePolicy.DetachRolePolicyResponse
+ Amazonka.IAM.DetachRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.DetachRolePolicy.DetachRolePolicyResponse
+ Amazonka.IAM.DetachRolePolicy: instance GHC.Read.Read Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance GHC.Read.Read Amazonka.IAM.DetachRolePolicy.DetachRolePolicyResponse
+ Amazonka.IAM.DetachRolePolicy: instance GHC.Show.Show Amazonka.IAM.DetachRolePolicy.DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: instance GHC.Show.Show Amazonka.IAM.DetachRolePolicy.DetachRolePolicyResponse
+ Amazonka.IAM.DetachRolePolicy: newDetachRolePolicy :: Text -> Text -> DetachRolePolicy
+ Amazonka.IAM.DetachRolePolicy: newDetachRolePolicyResponse :: DetachRolePolicyResponse
+ Amazonka.IAM.DetachUserPolicy: DetachUserPolicy' :: Text -> Text -> DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: DetachUserPolicyResponse' :: DetachUserPolicyResponse
+ Amazonka.IAM.DetachUserPolicy: [$sel:policyArn:DetachUserPolicy'] :: DetachUserPolicy -> Text
+ Amazonka.IAM.DetachUserPolicy: [$sel:userName:DetachUserPolicy'] :: DetachUserPolicy -> Text
+ Amazonka.IAM.DetachUserPolicy: data DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: data DetachUserPolicyResponse
+ Amazonka.IAM.DetachUserPolicy: detachUserPolicy_policyArn :: Lens' DetachUserPolicy Text
+ Amazonka.IAM.DetachUserPolicy: detachUserPolicy_userName :: Lens' DetachUserPolicy Text
+ Amazonka.IAM.DetachUserPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.DetachUserPolicy.DetachUserPolicyResponse
+ Amazonka.IAM.DetachUserPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.DetachUserPolicy.DetachUserPolicyResponse
+ Amazonka.IAM.DetachUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.DetachUserPolicy.DetachUserPolicyResponse
+ Amazonka.IAM.DetachUserPolicy: instance GHC.Read.Read Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance GHC.Read.Read Amazonka.IAM.DetachUserPolicy.DetachUserPolicyResponse
+ Amazonka.IAM.DetachUserPolicy: instance GHC.Show.Show Amazonka.IAM.DetachUserPolicy.DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: instance GHC.Show.Show Amazonka.IAM.DetachUserPolicy.DetachUserPolicyResponse
+ Amazonka.IAM.DetachUserPolicy: newDetachUserPolicy :: Text -> Text -> DetachUserPolicy
+ Amazonka.IAM.DetachUserPolicy: newDetachUserPolicyResponse :: DetachUserPolicyResponse
+ Amazonka.IAM.EnableMFADevice: EnableMFADevice' :: Text -> Text -> Text -> Text -> EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: EnableMFADeviceResponse' :: EnableMFADeviceResponse
+ Amazonka.IAM.EnableMFADevice: [$sel:authenticationCode1:EnableMFADevice'] :: EnableMFADevice -> Text
+ Amazonka.IAM.EnableMFADevice: [$sel:authenticationCode2:EnableMFADevice'] :: EnableMFADevice -> Text
+ Amazonka.IAM.EnableMFADevice: [$sel:serialNumber:EnableMFADevice'] :: EnableMFADevice -> Text
+ Amazonka.IAM.EnableMFADevice: [$sel:userName:EnableMFADevice'] :: EnableMFADevice -> Text
+ Amazonka.IAM.EnableMFADevice: data EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: data EnableMFADeviceResponse
+ Amazonka.IAM.EnableMFADevice: enableMFADevice_authenticationCode1 :: Lens' EnableMFADevice Text
+ Amazonka.IAM.EnableMFADevice: enableMFADevice_authenticationCode2 :: Lens' EnableMFADevice Text
+ Amazonka.IAM.EnableMFADevice: enableMFADevice_serialNumber :: Lens' EnableMFADevice Text
+ Amazonka.IAM.EnableMFADevice: enableMFADevice_userName :: Lens' EnableMFADevice Text
+ Amazonka.IAM.EnableMFADevice: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance Amazonka.Data.Path.ToPath Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance Amazonka.Types.AWSRequest Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.EnableMFADevice.EnableMFADeviceResponse
+ Amazonka.IAM.EnableMFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance GHC.Classes.Eq Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance GHC.Classes.Eq Amazonka.IAM.EnableMFADevice.EnableMFADeviceResponse
+ Amazonka.IAM.EnableMFADevice: instance GHC.Generics.Generic Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance GHC.Generics.Generic Amazonka.IAM.EnableMFADevice.EnableMFADeviceResponse
+ Amazonka.IAM.EnableMFADevice: instance GHC.Read.Read Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance GHC.Read.Read Amazonka.IAM.EnableMFADevice.EnableMFADeviceResponse
+ Amazonka.IAM.EnableMFADevice: instance GHC.Show.Show Amazonka.IAM.EnableMFADevice.EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: instance GHC.Show.Show Amazonka.IAM.EnableMFADevice.EnableMFADeviceResponse
+ Amazonka.IAM.EnableMFADevice: newEnableMFADevice :: Text -> Text -> Text -> Text -> EnableMFADevice
+ Amazonka.IAM.EnableMFADevice: newEnableMFADeviceResponse :: EnableMFADeviceResponse
+ Amazonka.IAM.GenerateCredentialReport: GenerateCredentialReport' :: GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: GenerateCredentialReportResponse' :: Maybe Text -> Maybe ReportStateType -> Int -> GenerateCredentialReportResponse
+ Amazonka.IAM.GenerateCredentialReport: [$sel:description:GenerateCredentialReportResponse'] :: GenerateCredentialReportResponse -> Maybe Text
+ Amazonka.IAM.GenerateCredentialReport: [$sel:httpStatus:GenerateCredentialReportResponse'] :: GenerateCredentialReportResponse -> Int
+ Amazonka.IAM.GenerateCredentialReport: [$sel:state:GenerateCredentialReportResponse'] :: GenerateCredentialReportResponse -> Maybe ReportStateType
+ Amazonka.IAM.GenerateCredentialReport: data GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: data GenerateCredentialReportResponse
+ Amazonka.IAM.GenerateCredentialReport: generateCredentialReportResponse_description :: Lens' GenerateCredentialReportResponse (Maybe Text)
+ Amazonka.IAM.GenerateCredentialReport: generateCredentialReportResponse_httpStatus :: Lens' GenerateCredentialReportResponse Int
+ Amazonka.IAM.GenerateCredentialReport: generateCredentialReportResponse_state :: Lens' GenerateCredentialReportResponse (Maybe ReportStateType)
+ Amazonka.IAM.GenerateCredentialReport: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance Amazonka.Types.AWSRequest Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance Control.DeepSeq.NFData Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance Control.DeepSeq.NFData Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
+ Amazonka.IAM.GenerateCredentialReport: instance Data.Hashable.Class.Hashable Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance GHC.Classes.Eq Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance GHC.Classes.Eq Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
+ Amazonka.IAM.GenerateCredentialReport: instance GHC.Generics.Generic Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance GHC.Generics.Generic Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
+ Amazonka.IAM.GenerateCredentialReport: instance GHC.Read.Read Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance GHC.Read.Read Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
+ Amazonka.IAM.GenerateCredentialReport: instance GHC.Show.Show Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: instance GHC.Show.Show Amazonka.IAM.GenerateCredentialReport.GenerateCredentialReportResponse
+ Amazonka.IAM.GenerateCredentialReport: newGenerateCredentialReport :: GenerateCredentialReport
+ Amazonka.IAM.GenerateCredentialReport: newGenerateCredentialReportResponse :: Int -> GenerateCredentialReportResponse
+ Amazonka.IAM.GenerateOrganizationsAccessReport: GenerateOrganizationsAccessReport' :: Maybe Text -> Text -> GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: GenerateOrganizationsAccessReportResponse' :: Maybe Text -> Int -> GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM.GenerateOrganizationsAccessReport: [$sel:entityPath:GenerateOrganizationsAccessReport'] :: GenerateOrganizationsAccessReport -> Text
+ Amazonka.IAM.GenerateOrganizationsAccessReport: [$sel:httpStatus:GenerateOrganizationsAccessReportResponse'] :: GenerateOrganizationsAccessReportResponse -> Int
+ Amazonka.IAM.GenerateOrganizationsAccessReport: [$sel:jobId:GenerateOrganizationsAccessReportResponse'] :: GenerateOrganizationsAccessReportResponse -> Maybe Text
+ Amazonka.IAM.GenerateOrganizationsAccessReport: [$sel:organizationsPolicyId:GenerateOrganizationsAccessReport'] :: GenerateOrganizationsAccessReport -> Maybe Text
+ Amazonka.IAM.GenerateOrganizationsAccessReport: data GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: data GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM.GenerateOrganizationsAccessReport: generateOrganizationsAccessReportResponse_httpStatus :: Lens' GenerateOrganizationsAccessReportResponse Int
+ Amazonka.IAM.GenerateOrganizationsAccessReport: generateOrganizationsAccessReportResponse_jobId :: Lens' GenerateOrganizationsAccessReportResponse (Maybe Text)
+ Amazonka.IAM.GenerateOrganizationsAccessReport: generateOrganizationsAccessReport_entityPath :: Lens' GenerateOrganizationsAccessReport Text
+ Amazonka.IAM.GenerateOrganizationsAccessReport: generateOrganizationsAccessReport_organizationsPolicyId :: Lens' GenerateOrganizationsAccessReport (Maybe Text)
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance Amazonka.Types.AWSRequest Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance Control.DeepSeq.NFData Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance Control.DeepSeq.NFData Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance Data.Hashable.Class.Hashable Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance GHC.Classes.Eq Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance GHC.Classes.Eq Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance GHC.Generics.Generic Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance GHC.Generics.Generic Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance GHC.Read.Read Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance GHC.Read.Read Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance GHC.Show.Show Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: instance GHC.Show.Show Amazonka.IAM.GenerateOrganizationsAccessReport.GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM.GenerateOrganizationsAccessReport: newGenerateOrganizationsAccessReport :: Text -> GenerateOrganizationsAccessReport
+ Amazonka.IAM.GenerateOrganizationsAccessReport: newGenerateOrganizationsAccessReportResponse :: Int -> GenerateOrganizationsAccessReportResponse
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: GenerateServiceLastAccessedDetails' :: Maybe AccessAdvisorUsageGranularityType -> Text -> GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: GenerateServiceLastAccessedDetailsResponse' :: Maybe Text -> Int -> GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: [$sel:arn:GenerateServiceLastAccessedDetails'] :: GenerateServiceLastAccessedDetails -> Text
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: [$sel:granularity:GenerateServiceLastAccessedDetails'] :: GenerateServiceLastAccessedDetails -> Maybe AccessAdvisorUsageGranularityType
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: [$sel:httpStatus:GenerateServiceLastAccessedDetailsResponse'] :: GenerateServiceLastAccessedDetailsResponse -> Int
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: [$sel:jobId:GenerateServiceLastAccessedDetailsResponse'] :: GenerateServiceLastAccessedDetailsResponse -> Maybe Text
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: data GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: data GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: generateServiceLastAccessedDetailsResponse_httpStatus :: Lens' GenerateServiceLastAccessedDetailsResponse Int
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: generateServiceLastAccessedDetailsResponse_jobId :: Lens' GenerateServiceLastAccessedDetailsResponse (Maybe Text)
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: generateServiceLastAccessedDetails_arn :: Lens' GenerateServiceLastAccessedDetails Text
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: generateServiceLastAccessedDetails_granularity :: Lens' GenerateServiceLastAccessedDetails (Maybe AccessAdvisorUsageGranularityType)
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance Amazonka.Types.AWSRequest Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance Control.DeepSeq.NFData Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance Control.DeepSeq.NFData Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance Data.Hashable.Class.Hashable Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance GHC.Classes.Eq Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance GHC.Classes.Eq Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance GHC.Generics.Generic Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance GHC.Generics.Generic Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance GHC.Read.Read Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance GHC.Read.Read Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance GHC.Show.Show Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: instance GHC.Show.Show Amazonka.IAM.GenerateServiceLastAccessedDetails.GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: newGenerateServiceLastAccessedDetails :: Text -> GenerateServiceLastAccessedDetails
+ Amazonka.IAM.GenerateServiceLastAccessedDetails: newGenerateServiceLastAccessedDetailsResponse :: Int -> GenerateServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetAccessKeyLastUsed: GetAccessKeyLastUsed' :: AccessKey -> GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: GetAccessKeyLastUsedResponse' :: Maybe AccessKeyLastUsed -> Maybe Text -> Int -> GetAccessKeyLastUsedResponse
+ Amazonka.IAM.GetAccessKeyLastUsed: [$sel:accessKeyId:GetAccessKeyLastUsed'] :: GetAccessKeyLastUsed -> AccessKey
+ Amazonka.IAM.GetAccessKeyLastUsed: [$sel:accessKeyLastUsed:GetAccessKeyLastUsedResponse'] :: GetAccessKeyLastUsedResponse -> Maybe AccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: [$sel:httpStatus:GetAccessKeyLastUsedResponse'] :: GetAccessKeyLastUsedResponse -> Int
+ Amazonka.IAM.GetAccessKeyLastUsed: [$sel:userName:GetAccessKeyLastUsedResponse'] :: GetAccessKeyLastUsedResponse -> Maybe Text
+ Amazonka.IAM.GetAccessKeyLastUsed: data GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: data GetAccessKeyLastUsedResponse
+ Amazonka.IAM.GetAccessKeyLastUsed: getAccessKeyLastUsedResponse_accessKeyLastUsed :: Lens' GetAccessKeyLastUsedResponse (Maybe AccessKeyLastUsed)
+ Amazonka.IAM.GetAccessKeyLastUsed: getAccessKeyLastUsedResponse_httpStatus :: Lens' GetAccessKeyLastUsedResponse Int
+ Amazonka.IAM.GetAccessKeyLastUsed: getAccessKeyLastUsedResponse_userName :: Lens' GetAccessKeyLastUsedResponse (Maybe Text)
+ Amazonka.IAM.GetAccessKeyLastUsed: getAccessKeyLastUsed_accessKeyId :: Lens' GetAccessKeyLastUsed AccessKey
+ Amazonka.IAM.GetAccessKeyLastUsed: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance Control.DeepSeq.NFData Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance Control.DeepSeq.NFData Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
+ Amazonka.IAM.GetAccessKeyLastUsed: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance GHC.Classes.Eq Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance GHC.Classes.Eq Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
+ Amazonka.IAM.GetAccessKeyLastUsed: instance GHC.Generics.Generic Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance GHC.Generics.Generic Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
+ Amazonka.IAM.GetAccessKeyLastUsed: instance GHC.Read.Read Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance GHC.Read.Read Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
+ Amazonka.IAM.GetAccessKeyLastUsed: instance GHC.Show.Show Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: instance GHC.Show.Show Amazonka.IAM.GetAccessKeyLastUsed.GetAccessKeyLastUsedResponse
+ Amazonka.IAM.GetAccessKeyLastUsed: newGetAccessKeyLastUsed :: AccessKey -> GetAccessKeyLastUsed
+ Amazonka.IAM.GetAccessKeyLastUsed: newGetAccessKeyLastUsedResponse :: Int -> GetAccessKeyLastUsedResponse
+ Amazonka.IAM.GetAccountAuthorizationDetails: GetAccountAuthorizationDetails' :: Maybe [EntityType] -> Maybe Text -> Maybe Natural -> GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: GetAccountAuthorizationDetailsResponse' :: Maybe [GroupDetail] -> Maybe Bool -> Maybe Text -> Maybe [ManagedPolicyDetail] -> Maybe [RoleDetail] -> Maybe [UserDetail] -> Int -> GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:filter':GetAccountAuthorizationDetails'] :: GetAccountAuthorizationDetails -> Maybe [EntityType]
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:groupDetailList:GetAccountAuthorizationDetailsResponse'] :: GetAccountAuthorizationDetailsResponse -> Maybe [GroupDetail]
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:httpStatus:GetAccountAuthorizationDetailsResponse'] :: GetAccountAuthorizationDetailsResponse -> Int
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:isTruncated:GetAccountAuthorizationDetailsResponse'] :: GetAccountAuthorizationDetailsResponse -> Maybe Bool
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:marker:GetAccountAuthorizationDetails'] :: GetAccountAuthorizationDetails -> Maybe Text
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:marker:GetAccountAuthorizationDetailsResponse'] :: GetAccountAuthorizationDetailsResponse -> Maybe Text
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:maxItems:GetAccountAuthorizationDetails'] :: GetAccountAuthorizationDetails -> Maybe Natural
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:policies:GetAccountAuthorizationDetailsResponse'] :: GetAccountAuthorizationDetailsResponse -> Maybe [ManagedPolicyDetail]
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:roleDetailList:GetAccountAuthorizationDetailsResponse'] :: GetAccountAuthorizationDetailsResponse -> Maybe [RoleDetail]
+ Amazonka.IAM.GetAccountAuthorizationDetails: [$sel:userDetailList:GetAccountAuthorizationDetailsResponse'] :: GetAccountAuthorizationDetailsResponse -> Maybe [UserDetail]
+ Amazonka.IAM.GetAccountAuthorizationDetails: data GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: data GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetailsResponse_groupDetailList :: Lens' GetAccountAuthorizationDetailsResponse (Maybe [GroupDetail])
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetailsResponse_httpStatus :: Lens' GetAccountAuthorizationDetailsResponse Int
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetailsResponse_isTruncated :: Lens' GetAccountAuthorizationDetailsResponse (Maybe Bool)
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetailsResponse_marker :: Lens' GetAccountAuthorizationDetailsResponse (Maybe Text)
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetailsResponse_policies :: Lens' GetAccountAuthorizationDetailsResponse (Maybe [ManagedPolicyDetail])
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetailsResponse_roleDetailList :: Lens' GetAccountAuthorizationDetailsResponse (Maybe [RoleDetail])
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetailsResponse_userDetailList :: Lens' GetAccountAuthorizationDetailsResponse (Maybe [UserDetail])
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetails_filter :: Lens' GetAccountAuthorizationDetails (Maybe [EntityType])
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetails_marker :: Lens' GetAccountAuthorizationDetails (Maybe Text)
+ Amazonka.IAM.GetAccountAuthorizationDetails: getAccountAuthorizationDetails_maxItems :: Lens' GetAccountAuthorizationDetails (Maybe Natural)
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance Amazonka.Pager.AWSPager Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance Control.DeepSeq.NFData Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance Control.DeepSeq.NFData Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance GHC.Classes.Eq Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance GHC.Classes.Eq Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance GHC.Generics.Generic Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance GHC.Generics.Generic Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance GHC.Read.Read Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance GHC.Read.Read Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance GHC.Show.Show Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: instance GHC.Show.Show Amazonka.IAM.GetAccountAuthorizationDetails.GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM.GetAccountAuthorizationDetails: newGetAccountAuthorizationDetails :: GetAccountAuthorizationDetails
+ Amazonka.IAM.GetAccountAuthorizationDetails: newGetAccountAuthorizationDetailsResponse :: Int -> GetAccountAuthorizationDetailsResponse
+ Amazonka.IAM.GetAccountPasswordPolicy: GetAccountPasswordPolicy' :: GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: GetAccountPasswordPolicyResponse' :: Int -> PasswordPolicy -> GetAccountPasswordPolicyResponse
+ Amazonka.IAM.GetAccountPasswordPolicy: [$sel:httpStatus:GetAccountPasswordPolicyResponse'] :: GetAccountPasswordPolicyResponse -> Int
+ Amazonka.IAM.GetAccountPasswordPolicy: [$sel:passwordPolicy:GetAccountPasswordPolicyResponse'] :: GetAccountPasswordPolicyResponse -> PasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: data GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: data GetAccountPasswordPolicyResponse
+ Amazonka.IAM.GetAccountPasswordPolicy: getAccountPasswordPolicyResponse_httpStatus :: Lens' GetAccountPasswordPolicyResponse Int
+ Amazonka.IAM.GetAccountPasswordPolicy: getAccountPasswordPolicyResponse_passwordPolicy :: Lens' GetAccountPasswordPolicyResponse PasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
+ Amazonka.IAM.GetAccountPasswordPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
+ Amazonka.IAM.GetAccountPasswordPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
+ Amazonka.IAM.GetAccountPasswordPolicy: instance GHC.Read.Read Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance GHC.Read.Read Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
+ Amazonka.IAM.GetAccountPasswordPolicy: instance GHC.Show.Show Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: instance GHC.Show.Show Amazonka.IAM.GetAccountPasswordPolicy.GetAccountPasswordPolicyResponse
+ Amazonka.IAM.GetAccountPasswordPolicy: newGetAccountPasswordPolicy :: GetAccountPasswordPolicy
+ Amazonka.IAM.GetAccountPasswordPolicy: newGetAccountPasswordPolicyResponse :: Int -> PasswordPolicy -> GetAccountPasswordPolicyResponse
+ Amazonka.IAM.GetAccountSummary: GetAccountSummary' :: GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: GetAccountSummaryResponse' :: Maybe (HashMap SummaryKeyType Int) -> Int -> GetAccountSummaryResponse
+ Amazonka.IAM.GetAccountSummary: [$sel:httpStatus:GetAccountSummaryResponse'] :: GetAccountSummaryResponse -> Int
+ Amazonka.IAM.GetAccountSummary: [$sel:summaryMap:GetAccountSummaryResponse'] :: GetAccountSummaryResponse -> Maybe (HashMap SummaryKeyType Int)
+ Amazonka.IAM.GetAccountSummary: data GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: data GetAccountSummaryResponse
+ Amazonka.IAM.GetAccountSummary: getAccountSummaryResponse_httpStatus :: Lens' GetAccountSummaryResponse Int
+ Amazonka.IAM.GetAccountSummary: getAccountSummaryResponse_summaryMap :: Lens' GetAccountSummaryResponse (Maybe (HashMap SummaryKeyType Int))
+ Amazonka.IAM.GetAccountSummary: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance Control.DeepSeq.NFData Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance Control.DeepSeq.NFData Amazonka.IAM.GetAccountSummary.GetAccountSummaryResponse
+ Amazonka.IAM.GetAccountSummary: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance GHC.Classes.Eq Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance GHC.Classes.Eq Amazonka.IAM.GetAccountSummary.GetAccountSummaryResponse
+ Amazonka.IAM.GetAccountSummary: instance GHC.Generics.Generic Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance GHC.Generics.Generic Amazonka.IAM.GetAccountSummary.GetAccountSummaryResponse
+ Amazonka.IAM.GetAccountSummary: instance GHC.Read.Read Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance GHC.Read.Read Amazonka.IAM.GetAccountSummary.GetAccountSummaryResponse
+ Amazonka.IAM.GetAccountSummary: instance GHC.Show.Show Amazonka.IAM.GetAccountSummary.GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: instance GHC.Show.Show Amazonka.IAM.GetAccountSummary.GetAccountSummaryResponse
+ Amazonka.IAM.GetAccountSummary: newGetAccountSummary :: GetAccountSummary
+ Amazonka.IAM.GetAccountSummary: newGetAccountSummaryResponse :: Int -> GetAccountSummaryResponse
+ Amazonka.IAM.GetContextKeysForCustomPolicy: GetContextKeysForCustomPolicy' :: [Text] -> GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: GetContextKeysForPolicyResponse' :: Maybe [Text] -> GetContextKeysForPolicyResponse
+ Amazonka.IAM.GetContextKeysForCustomPolicy: [$sel:contextKeyNames:GetContextKeysForPolicyResponse'] :: GetContextKeysForPolicyResponse -> Maybe [Text]
+ Amazonka.IAM.GetContextKeysForCustomPolicy: [$sel:policyInputList:GetContextKeysForCustomPolicy'] :: GetContextKeysForCustomPolicy -> [Text]
+ Amazonka.IAM.GetContextKeysForCustomPolicy: data GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: data GetContextKeysForPolicyResponse
+ Amazonka.IAM.GetContextKeysForCustomPolicy: getContextKeysForCustomPolicy_policyInputList :: Lens' GetContextKeysForCustomPolicy [Text]
+ Amazonka.IAM.GetContextKeysForCustomPolicy: getContextKeysForPolicyResponse_contextKeyNames :: Lens' GetContextKeysForPolicyResponse (Maybe [Text])
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance GHC.Read.Read Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: instance GHC.Show.Show Amazonka.IAM.GetContextKeysForCustomPolicy.GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: newGetContextKeysForCustomPolicy :: GetContextKeysForCustomPolicy
+ Amazonka.IAM.GetContextKeysForCustomPolicy: newGetContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: GetContextKeysForPolicyResponse' :: Maybe [Text] -> GetContextKeysForPolicyResponse
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: GetContextKeysForPrincipalPolicy' :: Maybe [Text] -> Text -> GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: [$sel:contextKeyNames:GetContextKeysForPolicyResponse'] :: GetContextKeysForPolicyResponse -> Maybe [Text]
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: [$sel:policyInputList:GetContextKeysForPrincipalPolicy'] :: GetContextKeysForPrincipalPolicy -> Maybe [Text]
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: [$sel:policySourceArn:GetContextKeysForPrincipalPolicy'] :: GetContextKeysForPrincipalPolicy -> Text
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: data GetContextKeysForPolicyResponse
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: data GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: getContextKeysForPolicyResponse_contextKeyNames :: Lens' GetContextKeysForPolicyResponse (Maybe [Text])
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: getContextKeysForPrincipalPolicy_policyInputList :: Lens' GetContextKeysForPrincipalPolicy (Maybe [Text])
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: getContextKeysForPrincipalPolicy_policySourceArn :: Lens' GetContextKeysForPrincipalPolicy Text
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance GHC.Read.Read Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: instance GHC.Show.Show Amazonka.IAM.GetContextKeysForPrincipalPolicy.GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: newGetContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
+ Amazonka.IAM.GetContextKeysForPrincipalPolicy: newGetContextKeysForPrincipalPolicy :: Text -> GetContextKeysForPrincipalPolicy
+ Amazonka.IAM.GetCredentialReport: GetCredentialReport' :: GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: GetCredentialReportResponse' :: Maybe Base64 -> Maybe ISO8601 -> Maybe ReportFormatType -> Int -> GetCredentialReportResponse
+ Amazonka.IAM.GetCredentialReport: [$sel:content:GetCredentialReportResponse'] :: GetCredentialReportResponse -> Maybe Base64
+ Amazonka.IAM.GetCredentialReport: [$sel:generatedTime:GetCredentialReportResponse'] :: GetCredentialReportResponse -> Maybe ISO8601
+ Amazonka.IAM.GetCredentialReport: [$sel:httpStatus:GetCredentialReportResponse'] :: GetCredentialReportResponse -> Int
+ Amazonka.IAM.GetCredentialReport: [$sel:reportFormat:GetCredentialReportResponse'] :: GetCredentialReportResponse -> Maybe ReportFormatType
+ Amazonka.IAM.GetCredentialReport: data GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: data GetCredentialReportResponse
+ Amazonka.IAM.GetCredentialReport: getCredentialReportResponse_content :: Lens' GetCredentialReportResponse (Maybe ByteString)
+ Amazonka.IAM.GetCredentialReport: getCredentialReportResponse_generatedTime :: Lens' GetCredentialReportResponse (Maybe UTCTime)
+ Amazonka.IAM.GetCredentialReport: getCredentialReportResponse_httpStatus :: Lens' GetCredentialReportResponse Int
+ Amazonka.IAM.GetCredentialReport: getCredentialReportResponse_reportFormat :: Lens' GetCredentialReportResponse (Maybe ReportFormatType)
+ Amazonka.IAM.GetCredentialReport: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance Control.DeepSeq.NFData Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance Control.DeepSeq.NFData Amazonka.IAM.GetCredentialReport.GetCredentialReportResponse
+ Amazonka.IAM.GetCredentialReport: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance GHC.Classes.Eq Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance GHC.Classes.Eq Amazonka.IAM.GetCredentialReport.GetCredentialReportResponse
+ Amazonka.IAM.GetCredentialReport: instance GHC.Generics.Generic Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance GHC.Generics.Generic Amazonka.IAM.GetCredentialReport.GetCredentialReportResponse
+ Amazonka.IAM.GetCredentialReport: instance GHC.Read.Read Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance GHC.Read.Read Amazonka.IAM.GetCredentialReport.GetCredentialReportResponse
+ Amazonka.IAM.GetCredentialReport: instance GHC.Show.Show Amazonka.IAM.GetCredentialReport.GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: instance GHC.Show.Show Amazonka.IAM.GetCredentialReport.GetCredentialReportResponse
+ Amazonka.IAM.GetCredentialReport: newGetCredentialReport :: GetCredentialReport
+ Amazonka.IAM.GetCredentialReport: newGetCredentialReportResponse :: Int -> GetCredentialReportResponse
+ Amazonka.IAM.GetGroup: GetGroup' :: Maybe Text -> Maybe Natural -> Text -> GetGroup
+ Amazonka.IAM.GetGroup: GetGroupResponse' :: Maybe Bool -> Maybe Text -> Int -> Group -> [User] -> GetGroupResponse
+ Amazonka.IAM.GetGroup: [$sel:group':GetGroupResponse'] :: GetGroupResponse -> Group
+ Amazonka.IAM.GetGroup: [$sel:groupName:GetGroup'] :: GetGroup -> Text
+ Amazonka.IAM.GetGroup: [$sel:httpStatus:GetGroupResponse'] :: GetGroupResponse -> Int
+ Amazonka.IAM.GetGroup: [$sel:isTruncated:GetGroupResponse'] :: GetGroupResponse -> Maybe Bool
+ Amazonka.IAM.GetGroup: [$sel:marker:GetGroup'] :: GetGroup -> Maybe Text
+ Amazonka.IAM.GetGroup: [$sel:marker:GetGroupResponse'] :: GetGroupResponse -> Maybe Text
+ Amazonka.IAM.GetGroup: [$sel:maxItems:GetGroup'] :: GetGroup -> Maybe Natural
+ Amazonka.IAM.GetGroup: [$sel:users:GetGroupResponse'] :: GetGroupResponse -> [User]
+ Amazonka.IAM.GetGroup: data GetGroup
+ Amazonka.IAM.GetGroup: data GetGroupResponse
+ Amazonka.IAM.GetGroup: getGroupResponse_group :: Lens' GetGroupResponse Group
+ Amazonka.IAM.GetGroup: getGroupResponse_httpStatus :: Lens' GetGroupResponse Int
+ Amazonka.IAM.GetGroup: getGroupResponse_isTruncated :: Lens' GetGroupResponse (Maybe Bool)
+ Amazonka.IAM.GetGroup: getGroupResponse_marker :: Lens' GetGroupResponse (Maybe Text)
+ Amazonka.IAM.GetGroup: getGroupResponse_users :: Lens' GetGroupResponse [User]
+ Amazonka.IAM.GetGroup: getGroup_groupName :: Lens' GetGroup Text
+ Amazonka.IAM.GetGroup: getGroup_marker :: Lens' GetGroup (Maybe Text)
+ Amazonka.IAM.GetGroup: getGroup_maxItems :: Lens' GetGroup (Maybe Natural)
+ Amazonka.IAM.GetGroup: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance Amazonka.Pager.AWSPager Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance Control.DeepSeq.NFData Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance Control.DeepSeq.NFData Amazonka.IAM.GetGroup.GetGroupResponse
+ Amazonka.IAM.GetGroup: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance GHC.Classes.Eq Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance GHC.Classes.Eq Amazonka.IAM.GetGroup.GetGroupResponse
+ Amazonka.IAM.GetGroup: instance GHC.Generics.Generic Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance GHC.Generics.Generic Amazonka.IAM.GetGroup.GetGroupResponse
+ Amazonka.IAM.GetGroup: instance GHC.Read.Read Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance GHC.Read.Read Amazonka.IAM.GetGroup.GetGroupResponse
+ Amazonka.IAM.GetGroup: instance GHC.Show.Show Amazonka.IAM.GetGroup.GetGroup
+ Amazonka.IAM.GetGroup: instance GHC.Show.Show Amazonka.IAM.GetGroup.GetGroupResponse
+ Amazonka.IAM.GetGroup: newGetGroup :: Text -> GetGroup
+ Amazonka.IAM.GetGroup: newGetGroupResponse :: Int -> Group -> GetGroupResponse
+ Amazonka.IAM.GetGroupPolicy: GetGroupPolicy' :: Text -> Text -> GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: GetGroupPolicyResponse' :: Int -> Text -> Text -> Text -> GetGroupPolicyResponse
+ Amazonka.IAM.GetGroupPolicy: [$sel:groupName:GetGroupPolicy'] :: GetGroupPolicy -> Text
+ Amazonka.IAM.GetGroupPolicy: [$sel:groupName:GetGroupPolicyResponse'] :: GetGroupPolicyResponse -> Text
+ Amazonka.IAM.GetGroupPolicy: [$sel:httpStatus:GetGroupPolicyResponse'] :: GetGroupPolicyResponse -> Int
+ Amazonka.IAM.GetGroupPolicy: [$sel:policyDocument:GetGroupPolicyResponse'] :: GetGroupPolicyResponse -> Text
+ Amazonka.IAM.GetGroupPolicy: [$sel:policyName:GetGroupPolicy'] :: GetGroupPolicy -> Text
+ Amazonka.IAM.GetGroupPolicy: [$sel:policyName:GetGroupPolicyResponse'] :: GetGroupPolicyResponse -> Text
+ Amazonka.IAM.GetGroupPolicy: data GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: data GetGroupPolicyResponse
+ Amazonka.IAM.GetGroupPolicy: getGroupPolicyResponse_groupName :: Lens' GetGroupPolicyResponse Text
+ Amazonka.IAM.GetGroupPolicy: getGroupPolicyResponse_httpStatus :: Lens' GetGroupPolicyResponse Int
+ Amazonka.IAM.GetGroupPolicy: getGroupPolicyResponse_policyDocument :: Lens' GetGroupPolicyResponse Text
+ Amazonka.IAM.GetGroupPolicy: getGroupPolicyResponse_policyName :: Lens' GetGroupPolicyResponse Text
+ Amazonka.IAM.GetGroupPolicy: getGroupPolicy_groupName :: Lens' GetGroupPolicy Text
+ Amazonka.IAM.GetGroupPolicy: getGroupPolicy_policyName :: Lens' GetGroupPolicy Text
+ Amazonka.IAM.GetGroupPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetGroupPolicy.GetGroupPolicyResponse
+ Amazonka.IAM.GetGroupPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetGroupPolicy.GetGroupPolicyResponse
+ Amazonka.IAM.GetGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetGroupPolicy.GetGroupPolicyResponse
+ Amazonka.IAM.GetGroupPolicy: instance GHC.Read.Read Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance GHC.Read.Read Amazonka.IAM.GetGroupPolicy.GetGroupPolicyResponse
+ Amazonka.IAM.GetGroupPolicy: instance GHC.Show.Show Amazonka.IAM.GetGroupPolicy.GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: instance GHC.Show.Show Amazonka.IAM.GetGroupPolicy.GetGroupPolicyResponse
+ Amazonka.IAM.GetGroupPolicy: newGetGroupPolicy :: Text -> Text -> GetGroupPolicy
+ Amazonka.IAM.GetGroupPolicy: newGetGroupPolicyResponse :: Int -> Text -> Text -> Text -> GetGroupPolicyResponse
+ Amazonka.IAM.GetInstanceProfile: GetInstanceProfile' :: Text -> GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: GetInstanceProfileResponse' :: Int -> InstanceProfile -> GetInstanceProfileResponse
+ Amazonka.IAM.GetInstanceProfile: [$sel:httpStatus:GetInstanceProfileResponse'] :: GetInstanceProfileResponse -> Int
+ Amazonka.IAM.GetInstanceProfile: [$sel:instanceProfile:GetInstanceProfileResponse'] :: GetInstanceProfileResponse -> InstanceProfile
+ Amazonka.IAM.GetInstanceProfile: [$sel:instanceProfileName:GetInstanceProfile'] :: GetInstanceProfile -> Text
+ Amazonka.IAM.GetInstanceProfile: data GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: data GetInstanceProfileResponse
+ Amazonka.IAM.GetInstanceProfile: getInstanceProfileResponse_httpStatus :: Lens' GetInstanceProfileResponse Int
+ Amazonka.IAM.GetInstanceProfile: getInstanceProfileResponse_instanceProfile :: Lens' GetInstanceProfileResponse InstanceProfile
+ Amazonka.IAM.GetInstanceProfile: getInstanceProfile_instanceProfileName :: Lens' GetInstanceProfile Text
+ Amazonka.IAM.GetInstanceProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.GetInstanceProfile.GetInstanceProfileResponse
+ Amazonka.IAM.GetInstanceProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.GetInstanceProfile.GetInstanceProfileResponse
+ Amazonka.IAM.GetInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.GetInstanceProfile.GetInstanceProfileResponse
+ Amazonka.IAM.GetInstanceProfile: instance GHC.Read.Read Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance GHC.Read.Read Amazonka.IAM.GetInstanceProfile.GetInstanceProfileResponse
+ Amazonka.IAM.GetInstanceProfile: instance GHC.Show.Show Amazonka.IAM.GetInstanceProfile.GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: instance GHC.Show.Show Amazonka.IAM.GetInstanceProfile.GetInstanceProfileResponse
+ Amazonka.IAM.GetInstanceProfile: newGetInstanceProfile :: Text -> GetInstanceProfile
+ Amazonka.IAM.GetInstanceProfile: newGetInstanceProfileResponse :: Int -> InstanceProfile -> GetInstanceProfileResponse
+ Amazonka.IAM.GetLoginProfile: GetLoginProfile' :: Text -> GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: GetLoginProfileResponse' :: Int -> LoginProfile -> GetLoginProfileResponse
+ Amazonka.IAM.GetLoginProfile: [$sel:httpStatus:GetLoginProfileResponse'] :: GetLoginProfileResponse -> Int
+ Amazonka.IAM.GetLoginProfile: [$sel:loginProfile:GetLoginProfileResponse'] :: GetLoginProfileResponse -> LoginProfile
+ Amazonka.IAM.GetLoginProfile: [$sel:userName:GetLoginProfile'] :: GetLoginProfile -> Text
+ Amazonka.IAM.GetLoginProfile: data GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: data GetLoginProfileResponse
+ Amazonka.IAM.GetLoginProfile: getLoginProfileResponse_httpStatus :: Lens' GetLoginProfileResponse Int
+ Amazonka.IAM.GetLoginProfile: getLoginProfileResponse_loginProfile :: Lens' GetLoginProfileResponse LoginProfile
+ Amazonka.IAM.GetLoginProfile: getLoginProfile_userName :: Lens' GetLoginProfile Text
+ Amazonka.IAM.GetLoginProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.GetLoginProfile.GetLoginProfileResponse
+ Amazonka.IAM.GetLoginProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance GHC.Classes.Eq Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance GHC.Classes.Eq Amazonka.IAM.GetLoginProfile.GetLoginProfileResponse
+ Amazonka.IAM.GetLoginProfile: instance GHC.Generics.Generic Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance GHC.Generics.Generic Amazonka.IAM.GetLoginProfile.GetLoginProfileResponse
+ Amazonka.IAM.GetLoginProfile: instance GHC.Read.Read Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance GHC.Read.Read Amazonka.IAM.GetLoginProfile.GetLoginProfileResponse
+ Amazonka.IAM.GetLoginProfile: instance GHC.Show.Show Amazonka.IAM.GetLoginProfile.GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: instance GHC.Show.Show Amazonka.IAM.GetLoginProfile.GetLoginProfileResponse
+ Amazonka.IAM.GetLoginProfile: newGetLoginProfile :: Text -> GetLoginProfile
+ Amazonka.IAM.GetLoginProfile: newGetLoginProfileResponse :: Int -> LoginProfile -> GetLoginProfileResponse
+ Amazonka.IAM.GetOpenIDConnectProvider: GetOpenIDConnectProvider' :: Text -> GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: GetOpenIDConnectProviderResponse' :: Maybe [Text] -> Maybe ISO8601 -> Maybe [Tag] -> Maybe [Text] -> Maybe Text -> Int -> GetOpenIDConnectProviderResponse
+ Amazonka.IAM.GetOpenIDConnectProvider: [$sel:clientIDList:GetOpenIDConnectProviderResponse'] :: GetOpenIDConnectProviderResponse -> Maybe [Text]
+ Amazonka.IAM.GetOpenIDConnectProvider: [$sel:createDate:GetOpenIDConnectProviderResponse'] :: GetOpenIDConnectProviderResponse -> Maybe ISO8601
+ Amazonka.IAM.GetOpenIDConnectProvider: [$sel:httpStatus:GetOpenIDConnectProviderResponse'] :: GetOpenIDConnectProviderResponse -> Int
+ Amazonka.IAM.GetOpenIDConnectProvider: [$sel:openIDConnectProviderArn:GetOpenIDConnectProvider'] :: GetOpenIDConnectProvider -> Text
+ Amazonka.IAM.GetOpenIDConnectProvider: [$sel:tags:GetOpenIDConnectProviderResponse'] :: GetOpenIDConnectProviderResponse -> Maybe [Tag]
+ Amazonka.IAM.GetOpenIDConnectProvider: [$sel:thumbprintList:GetOpenIDConnectProviderResponse'] :: GetOpenIDConnectProviderResponse -> Maybe [Text]
+ Amazonka.IAM.GetOpenIDConnectProvider: [$sel:url:GetOpenIDConnectProviderResponse'] :: GetOpenIDConnectProviderResponse -> Maybe Text
+ Amazonka.IAM.GetOpenIDConnectProvider: data GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: data GetOpenIDConnectProviderResponse
+ Amazonka.IAM.GetOpenIDConnectProvider: getOpenIDConnectProviderResponse_clientIDList :: Lens' GetOpenIDConnectProviderResponse (Maybe [Text])
+ Amazonka.IAM.GetOpenIDConnectProvider: getOpenIDConnectProviderResponse_createDate :: Lens' GetOpenIDConnectProviderResponse (Maybe UTCTime)
+ Amazonka.IAM.GetOpenIDConnectProvider: getOpenIDConnectProviderResponse_httpStatus :: Lens' GetOpenIDConnectProviderResponse Int
+ Amazonka.IAM.GetOpenIDConnectProvider: getOpenIDConnectProviderResponse_tags :: Lens' GetOpenIDConnectProviderResponse (Maybe [Tag])
+ Amazonka.IAM.GetOpenIDConnectProvider: getOpenIDConnectProviderResponse_thumbprintList :: Lens' GetOpenIDConnectProviderResponse (Maybe [Text])
+ Amazonka.IAM.GetOpenIDConnectProvider: getOpenIDConnectProviderResponse_url :: Lens' GetOpenIDConnectProviderResponse (Maybe Text)
+ Amazonka.IAM.GetOpenIDConnectProvider: getOpenIDConnectProvider_openIDConnectProviderArn :: Lens' GetOpenIDConnectProvider Text
+ Amazonka.IAM.GetOpenIDConnectProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProviderResponse
+ Amazonka.IAM.GetOpenIDConnectProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProviderResponse
+ Amazonka.IAM.GetOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProviderResponse
+ Amazonka.IAM.GetOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProviderResponse
+ Amazonka.IAM.GetOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.GetOpenIDConnectProvider.GetOpenIDConnectProviderResponse
+ Amazonka.IAM.GetOpenIDConnectProvider: newGetOpenIDConnectProvider :: Text -> GetOpenIDConnectProvider
+ Amazonka.IAM.GetOpenIDConnectProvider: newGetOpenIDConnectProviderResponse :: Int -> GetOpenIDConnectProviderResponse
+ Amazonka.IAM.GetOrganizationsAccessReport: GetOrganizationsAccessReport' :: Maybe Text -> Maybe Natural -> Maybe SortKeyType -> Text -> GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: GetOrganizationsAccessReportResponse' :: Maybe [AccessDetail] -> Maybe ErrorDetails -> Maybe Bool -> Maybe ISO8601 -> Maybe Text -> Maybe Int -> Maybe Int -> Int -> JobStatusType -> ISO8601 -> GetOrganizationsAccessReportResponse
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:accessDetails:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> Maybe [AccessDetail]
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:errorDetails:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> Maybe ErrorDetails
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:httpStatus:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> Int
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:isTruncated:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> Maybe Bool
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:jobCompletionDate:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> Maybe ISO8601
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:jobCreationDate:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> ISO8601
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:jobId:GetOrganizationsAccessReport'] :: GetOrganizationsAccessReport -> Text
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:jobStatus:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> JobStatusType
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:marker:GetOrganizationsAccessReport'] :: GetOrganizationsAccessReport -> Maybe Text
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:marker:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> Maybe Text
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:maxItems:GetOrganizationsAccessReport'] :: GetOrganizationsAccessReport -> Maybe Natural
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:numberOfServicesAccessible:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> Maybe Int
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:numberOfServicesNotAccessed:GetOrganizationsAccessReportResponse'] :: GetOrganizationsAccessReportResponse -> Maybe Int
+ Amazonka.IAM.GetOrganizationsAccessReport: [$sel:sortKey:GetOrganizationsAccessReport'] :: GetOrganizationsAccessReport -> Maybe SortKeyType
+ Amazonka.IAM.GetOrganizationsAccessReport: data GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: data GetOrganizationsAccessReportResponse
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_accessDetails :: Lens' GetOrganizationsAccessReportResponse (Maybe [AccessDetail])
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_errorDetails :: Lens' GetOrganizationsAccessReportResponse (Maybe ErrorDetails)
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_httpStatus :: Lens' GetOrganizationsAccessReportResponse Int
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_isTruncated :: Lens' GetOrganizationsAccessReportResponse (Maybe Bool)
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_jobCompletionDate :: Lens' GetOrganizationsAccessReportResponse (Maybe UTCTime)
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_jobCreationDate :: Lens' GetOrganizationsAccessReportResponse UTCTime
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_jobStatus :: Lens' GetOrganizationsAccessReportResponse JobStatusType
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_marker :: Lens' GetOrganizationsAccessReportResponse (Maybe Text)
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_numberOfServicesAccessible :: Lens' GetOrganizationsAccessReportResponse (Maybe Int)
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReportResponse_numberOfServicesNotAccessed :: Lens' GetOrganizationsAccessReportResponse (Maybe Int)
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReport_jobId :: Lens' GetOrganizationsAccessReport Text
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReport_marker :: Lens' GetOrganizationsAccessReport (Maybe Text)
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReport_maxItems :: Lens' GetOrganizationsAccessReport (Maybe Natural)
+ Amazonka.IAM.GetOrganizationsAccessReport: getOrganizationsAccessReport_sortKey :: Lens' GetOrganizationsAccessReport (Maybe SortKeyType)
+ Amazonka.IAM.GetOrganizationsAccessReport: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance Control.DeepSeq.NFData Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance Control.DeepSeq.NFData Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReportResponse
+ Amazonka.IAM.GetOrganizationsAccessReport: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance GHC.Classes.Eq Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance GHC.Classes.Eq Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReportResponse
+ Amazonka.IAM.GetOrganizationsAccessReport: instance GHC.Generics.Generic Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance GHC.Generics.Generic Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReportResponse
+ Amazonka.IAM.GetOrganizationsAccessReport: instance GHC.Read.Read Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance GHC.Read.Read Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReportResponse
+ Amazonka.IAM.GetOrganizationsAccessReport: instance GHC.Show.Show Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: instance GHC.Show.Show Amazonka.IAM.GetOrganizationsAccessReport.GetOrganizationsAccessReportResponse
+ Amazonka.IAM.GetOrganizationsAccessReport: newGetOrganizationsAccessReport :: Text -> GetOrganizationsAccessReport
+ Amazonka.IAM.GetOrganizationsAccessReport: newGetOrganizationsAccessReportResponse :: Int -> JobStatusType -> UTCTime -> GetOrganizationsAccessReportResponse
+ Amazonka.IAM.GetPolicy: GetPolicy' :: Text -> GetPolicy
+ Amazonka.IAM.GetPolicy: GetPolicyResponse' :: Maybe Policy -> Int -> GetPolicyResponse
+ Amazonka.IAM.GetPolicy: [$sel:httpStatus:GetPolicyResponse'] :: GetPolicyResponse -> Int
+ Amazonka.IAM.GetPolicy: [$sel:policy:GetPolicyResponse'] :: GetPolicyResponse -> Maybe Policy
+ Amazonka.IAM.GetPolicy: [$sel:policyArn:GetPolicy'] :: GetPolicy -> Text
+ Amazonka.IAM.GetPolicy: data GetPolicy
+ Amazonka.IAM.GetPolicy: data GetPolicyResponse
+ Amazonka.IAM.GetPolicy: getPolicyResponse_httpStatus :: Lens' GetPolicyResponse Int
+ Amazonka.IAM.GetPolicy: getPolicyResponse_policy :: Lens' GetPolicyResponse (Maybe Policy)
+ Amazonka.IAM.GetPolicy: getPolicy_policyArn :: Lens' GetPolicy Text
+ Amazonka.IAM.GetPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetPolicy.GetPolicyResponse
+ Amazonka.IAM.GetPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetPolicy.GetPolicyResponse
+ Amazonka.IAM.GetPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetPolicy.GetPolicyResponse
+ Amazonka.IAM.GetPolicy: instance GHC.Read.Read Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance GHC.Read.Read Amazonka.IAM.GetPolicy.GetPolicyResponse
+ Amazonka.IAM.GetPolicy: instance GHC.Show.Show Amazonka.IAM.GetPolicy.GetPolicy
+ Amazonka.IAM.GetPolicy: instance GHC.Show.Show Amazonka.IAM.GetPolicy.GetPolicyResponse
+ Amazonka.IAM.GetPolicy: newGetPolicy :: Text -> GetPolicy
+ Amazonka.IAM.GetPolicy: newGetPolicyResponse :: Int -> GetPolicyResponse
+ Amazonka.IAM.GetPolicyVersion: GetPolicyVersion' :: Text -> Text -> GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: GetPolicyVersionResponse' :: Maybe PolicyVersion -> Int -> GetPolicyVersionResponse
+ Amazonka.IAM.GetPolicyVersion: [$sel:httpStatus:GetPolicyVersionResponse'] :: GetPolicyVersionResponse -> Int
+ Amazonka.IAM.GetPolicyVersion: [$sel:policyArn:GetPolicyVersion'] :: GetPolicyVersion -> Text
+ Amazonka.IAM.GetPolicyVersion: [$sel:policyVersion:GetPolicyVersionResponse'] :: GetPolicyVersionResponse -> Maybe PolicyVersion
+ Amazonka.IAM.GetPolicyVersion: [$sel:versionId:GetPolicyVersion'] :: GetPolicyVersion -> Text
+ Amazonka.IAM.GetPolicyVersion: data GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: data GetPolicyVersionResponse
+ Amazonka.IAM.GetPolicyVersion: getPolicyVersionResponse_httpStatus :: Lens' GetPolicyVersionResponse Int
+ Amazonka.IAM.GetPolicyVersion: getPolicyVersionResponse_policyVersion :: Lens' GetPolicyVersionResponse (Maybe PolicyVersion)
+ Amazonka.IAM.GetPolicyVersion: getPolicyVersion_policyArn :: Lens' GetPolicyVersion Text
+ Amazonka.IAM.GetPolicyVersion: getPolicyVersion_versionId :: Lens' GetPolicyVersion Text
+ Amazonka.IAM.GetPolicyVersion: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.GetPolicyVersion.GetPolicyVersionResponse
+ Amazonka.IAM.GetPolicyVersion: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.GetPolicyVersion.GetPolicyVersionResponse
+ Amazonka.IAM.GetPolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.GetPolicyVersion.GetPolicyVersionResponse
+ Amazonka.IAM.GetPolicyVersion: instance GHC.Read.Read Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance GHC.Read.Read Amazonka.IAM.GetPolicyVersion.GetPolicyVersionResponse
+ Amazonka.IAM.GetPolicyVersion: instance GHC.Show.Show Amazonka.IAM.GetPolicyVersion.GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: instance GHC.Show.Show Amazonka.IAM.GetPolicyVersion.GetPolicyVersionResponse
+ Amazonka.IAM.GetPolicyVersion: newGetPolicyVersion :: Text -> Text -> GetPolicyVersion
+ Amazonka.IAM.GetPolicyVersion: newGetPolicyVersionResponse :: Int -> GetPolicyVersionResponse
+ Amazonka.IAM.GetRole: GetRole' :: Text -> GetRole
+ Amazonka.IAM.GetRole: GetRoleResponse' :: Int -> Role -> GetRoleResponse
+ Amazonka.IAM.GetRole: [$sel:httpStatus:GetRoleResponse'] :: GetRoleResponse -> Int
+ Amazonka.IAM.GetRole: [$sel:role':GetRoleResponse'] :: GetRoleResponse -> Role
+ Amazonka.IAM.GetRole: [$sel:roleName:GetRole'] :: GetRole -> Text
+ Amazonka.IAM.GetRole: data GetRole
+ Amazonka.IAM.GetRole: data GetRoleResponse
+ Amazonka.IAM.GetRole: getRoleResponse_httpStatus :: Lens' GetRoleResponse Int
+ Amazonka.IAM.GetRole: getRoleResponse_role :: Lens' GetRoleResponse Role
+ Amazonka.IAM.GetRole: getRole_roleName :: Lens' GetRole Text
+ Amazonka.IAM.GetRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance Control.DeepSeq.NFData Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance Control.DeepSeq.NFData Amazonka.IAM.GetRole.GetRoleResponse
+ Amazonka.IAM.GetRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance GHC.Classes.Eq Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance GHC.Classes.Eq Amazonka.IAM.GetRole.GetRoleResponse
+ Amazonka.IAM.GetRole: instance GHC.Generics.Generic Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance GHC.Generics.Generic Amazonka.IAM.GetRole.GetRoleResponse
+ Amazonka.IAM.GetRole: instance GHC.Read.Read Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance GHC.Read.Read Amazonka.IAM.GetRole.GetRoleResponse
+ Amazonka.IAM.GetRole: instance GHC.Show.Show Amazonka.IAM.GetRole.GetRole
+ Amazonka.IAM.GetRole: instance GHC.Show.Show Amazonka.IAM.GetRole.GetRoleResponse
+ Amazonka.IAM.GetRole: newGetRole :: Text -> GetRole
+ Amazonka.IAM.GetRole: newGetRoleResponse :: Int -> Role -> GetRoleResponse
+ Amazonka.IAM.GetRolePolicy: GetRolePolicy' :: Text -> Text -> GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: GetRolePolicyResponse' :: Int -> Text -> Text -> Text -> GetRolePolicyResponse
+ Amazonka.IAM.GetRolePolicy: [$sel:httpStatus:GetRolePolicyResponse'] :: GetRolePolicyResponse -> Int
+ Amazonka.IAM.GetRolePolicy: [$sel:policyDocument:GetRolePolicyResponse'] :: GetRolePolicyResponse -> Text
+ Amazonka.IAM.GetRolePolicy: [$sel:policyName:GetRolePolicy'] :: GetRolePolicy -> Text
+ Amazonka.IAM.GetRolePolicy: [$sel:policyName:GetRolePolicyResponse'] :: GetRolePolicyResponse -> Text
+ Amazonka.IAM.GetRolePolicy: [$sel:roleName:GetRolePolicy'] :: GetRolePolicy -> Text
+ Amazonka.IAM.GetRolePolicy: [$sel:roleName:GetRolePolicyResponse'] :: GetRolePolicyResponse -> Text
+ Amazonka.IAM.GetRolePolicy: data GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: data GetRolePolicyResponse
+ Amazonka.IAM.GetRolePolicy: getRolePolicyResponse_httpStatus :: Lens' GetRolePolicyResponse Int
+ Amazonka.IAM.GetRolePolicy: getRolePolicyResponse_policyDocument :: Lens' GetRolePolicyResponse Text
+ Amazonka.IAM.GetRolePolicy: getRolePolicyResponse_policyName :: Lens' GetRolePolicyResponse Text
+ Amazonka.IAM.GetRolePolicy: getRolePolicyResponse_roleName :: Lens' GetRolePolicyResponse Text
+ Amazonka.IAM.GetRolePolicy: getRolePolicy_policyName :: Lens' GetRolePolicy Text
+ Amazonka.IAM.GetRolePolicy: getRolePolicy_roleName :: Lens' GetRolePolicy Text
+ Amazonka.IAM.GetRolePolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetRolePolicy.GetRolePolicyResponse
+ Amazonka.IAM.GetRolePolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.GetRolePolicy.GetRolePolicyResponse
+ Amazonka.IAM.GetRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.GetRolePolicy.GetRolePolicyResponse
+ Amazonka.IAM.GetRolePolicy: instance GHC.Read.Read Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance GHC.Read.Read Amazonka.IAM.GetRolePolicy.GetRolePolicyResponse
+ Amazonka.IAM.GetRolePolicy: instance GHC.Show.Show Amazonka.IAM.GetRolePolicy.GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: instance GHC.Show.Show Amazonka.IAM.GetRolePolicy.GetRolePolicyResponse
+ Amazonka.IAM.GetRolePolicy: newGetRolePolicy :: Text -> Text -> GetRolePolicy
+ Amazonka.IAM.GetRolePolicy: newGetRolePolicyResponse :: Int -> Text -> Text -> Text -> GetRolePolicyResponse
+ Amazonka.IAM.GetSAMLProvider: GetSAMLProvider' :: Text -> GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: GetSAMLProviderResponse' :: Maybe ISO8601 -> Maybe Text -> Maybe [Tag] -> Maybe ISO8601 -> Int -> GetSAMLProviderResponse
+ Amazonka.IAM.GetSAMLProvider: [$sel:createDate:GetSAMLProviderResponse'] :: GetSAMLProviderResponse -> Maybe ISO8601
+ Amazonka.IAM.GetSAMLProvider: [$sel:httpStatus:GetSAMLProviderResponse'] :: GetSAMLProviderResponse -> Int
+ Amazonka.IAM.GetSAMLProvider: [$sel:sAMLMetadataDocument:GetSAMLProviderResponse'] :: GetSAMLProviderResponse -> Maybe Text
+ Amazonka.IAM.GetSAMLProvider: [$sel:sAMLProviderArn:GetSAMLProvider'] :: GetSAMLProvider -> Text
+ Amazonka.IAM.GetSAMLProvider: [$sel:tags:GetSAMLProviderResponse'] :: GetSAMLProviderResponse -> Maybe [Tag]
+ Amazonka.IAM.GetSAMLProvider: [$sel:validUntil:GetSAMLProviderResponse'] :: GetSAMLProviderResponse -> Maybe ISO8601
+ Amazonka.IAM.GetSAMLProvider: data GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: data GetSAMLProviderResponse
+ Amazonka.IAM.GetSAMLProvider: getSAMLProviderResponse_createDate :: Lens' GetSAMLProviderResponse (Maybe UTCTime)
+ Amazonka.IAM.GetSAMLProvider: getSAMLProviderResponse_httpStatus :: Lens' GetSAMLProviderResponse Int
+ Amazonka.IAM.GetSAMLProvider: getSAMLProviderResponse_sAMLMetadataDocument :: Lens' GetSAMLProviderResponse (Maybe Text)
+ Amazonka.IAM.GetSAMLProvider: getSAMLProviderResponse_tags :: Lens' GetSAMLProviderResponse (Maybe [Tag])
+ Amazonka.IAM.GetSAMLProvider: getSAMLProviderResponse_validUntil :: Lens' GetSAMLProviderResponse (Maybe UTCTime)
+ Amazonka.IAM.GetSAMLProvider: getSAMLProvider_sAMLProviderArn :: Lens' GetSAMLProvider Text
+ Amazonka.IAM.GetSAMLProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.GetSAMLProvider.GetSAMLProviderResponse
+ Amazonka.IAM.GetSAMLProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.GetSAMLProvider.GetSAMLProviderResponse
+ Amazonka.IAM.GetSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.GetSAMLProvider.GetSAMLProviderResponse
+ Amazonka.IAM.GetSAMLProvider: instance GHC.Read.Read Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance GHC.Read.Read Amazonka.IAM.GetSAMLProvider.GetSAMLProviderResponse
+ Amazonka.IAM.GetSAMLProvider: instance GHC.Show.Show Amazonka.IAM.GetSAMLProvider.GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: instance GHC.Show.Show Amazonka.IAM.GetSAMLProvider.GetSAMLProviderResponse
+ Amazonka.IAM.GetSAMLProvider: newGetSAMLProvider :: Text -> GetSAMLProvider
+ Amazonka.IAM.GetSAMLProvider: newGetSAMLProviderResponse :: Int -> GetSAMLProviderResponse
+ Amazonka.IAM.GetSSHPublicKey: GetSSHPublicKey' :: Text -> Text -> EncodingType -> GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: GetSSHPublicKeyResponse' :: Maybe SSHPublicKey -> Int -> GetSSHPublicKeyResponse
+ Amazonka.IAM.GetSSHPublicKey: [$sel:encoding:GetSSHPublicKey'] :: GetSSHPublicKey -> EncodingType
+ Amazonka.IAM.GetSSHPublicKey: [$sel:httpStatus:GetSSHPublicKeyResponse'] :: GetSSHPublicKeyResponse -> Int
+ Amazonka.IAM.GetSSHPublicKey: [$sel:sSHPublicKey:GetSSHPublicKeyResponse'] :: GetSSHPublicKeyResponse -> Maybe SSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: [$sel:sSHPublicKeyId:GetSSHPublicKey'] :: GetSSHPublicKey -> Text
+ Amazonka.IAM.GetSSHPublicKey: [$sel:userName:GetSSHPublicKey'] :: GetSSHPublicKey -> Text
+ Amazonka.IAM.GetSSHPublicKey: data GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: data GetSSHPublicKeyResponse
+ Amazonka.IAM.GetSSHPublicKey: getSSHPublicKeyResponse_httpStatus :: Lens' GetSSHPublicKeyResponse Int
+ Amazonka.IAM.GetSSHPublicKey: getSSHPublicKeyResponse_sSHPublicKey :: Lens' GetSSHPublicKeyResponse (Maybe SSHPublicKey)
+ Amazonka.IAM.GetSSHPublicKey: getSSHPublicKey_encoding :: Lens' GetSSHPublicKey EncodingType
+ Amazonka.IAM.GetSSHPublicKey: getSSHPublicKey_sSHPublicKeyId :: Lens' GetSSHPublicKey Text
+ Amazonka.IAM.GetSSHPublicKey: getSSHPublicKey_userName :: Lens' GetSSHPublicKey Text
+ Amazonka.IAM.GetSSHPublicKey: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
+ Amazonka.IAM.GetSSHPublicKey: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
+ Amazonka.IAM.GetSSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
+ Amazonka.IAM.GetSSHPublicKey: instance GHC.Read.Read Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance GHC.Read.Read Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
+ Amazonka.IAM.GetSSHPublicKey: instance GHC.Show.Show Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: instance GHC.Show.Show Amazonka.IAM.GetSSHPublicKey.GetSSHPublicKeyResponse
+ Amazonka.IAM.GetSSHPublicKey: newGetSSHPublicKey :: Text -> Text -> EncodingType -> GetSSHPublicKey
+ Amazonka.IAM.GetSSHPublicKey: newGetSSHPublicKeyResponse :: Int -> GetSSHPublicKeyResponse
+ Amazonka.IAM.GetServerCertificate: GetServerCertificate' :: Text -> GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: GetServerCertificateResponse' :: Int -> ServerCertificate -> GetServerCertificateResponse
+ Amazonka.IAM.GetServerCertificate: [$sel:httpStatus:GetServerCertificateResponse'] :: GetServerCertificateResponse -> Int
+ Amazonka.IAM.GetServerCertificate: [$sel:serverCertificate:GetServerCertificateResponse'] :: GetServerCertificateResponse -> ServerCertificate
+ Amazonka.IAM.GetServerCertificate: [$sel:serverCertificateName:GetServerCertificate'] :: GetServerCertificate -> Text
+ Amazonka.IAM.GetServerCertificate: data GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: data GetServerCertificateResponse
+ Amazonka.IAM.GetServerCertificate: getServerCertificateResponse_httpStatus :: Lens' GetServerCertificateResponse Int
+ Amazonka.IAM.GetServerCertificate: getServerCertificateResponse_serverCertificate :: Lens' GetServerCertificateResponse ServerCertificate
+ Amazonka.IAM.GetServerCertificate: getServerCertificate_serverCertificateName :: Lens' GetServerCertificate Text
+ Amazonka.IAM.GetServerCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.GetServerCertificate.GetServerCertificateResponse
+ Amazonka.IAM.GetServerCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.GetServerCertificate.GetServerCertificateResponse
+ Amazonka.IAM.GetServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.GetServerCertificate.GetServerCertificateResponse
+ Amazonka.IAM.GetServerCertificate: instance GHC.Read.Read Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance GHC.Read.Read Amazonka.IAM.GetServerCertificate.GetServerCertificateResponse
+ Amazonka.IAM.GetServerCertificate: instance GHC.Show.Show Amazonka.IAM.GetServerCertificate.GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: instance GHC.Show.Show Amazonka.IAM.GetServerCertificate.GetServerCertificateResponse
+ Amazonka.IAM.GetServerCertificate: newGetServerCertificate :: Text -> GetServerCertificate
+ Amazonka.IAM.GetServerCertificate: newGetServerCertificateResponse :: Int -> ServerCertificate -> GetServerCertificateResponse
+ Amazonka.IAM.GetServiceLastAccessedDetails: GetServiceLastAccessedDetails' :: Maybe Text -> Maybe Natural -> Text -> GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: GetServiceLastAccessedDetailsResponse' :: Maybe ErrorDetails -> Maybe Bool -> Maybe AccessAdvisorUsageGranularityType -> Maybe Text -> Int -> JobStatusType -> ISO8601 -> [ServiceLastAccessed] -> ISO8601 -> GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:error:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> Maybe ErrorDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:httpStatus:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> Int
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:isTruncated:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> Maybe Bool
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:jobCompletionDate:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> ISO8601
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:jobCreationDate:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> ISO8601
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:jobId:GetServiceLastAccessedDetails'] :: GetServiceLastAccessedDetails -> Text
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:jobStatus:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> JobStatusType
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:jobType:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> Maybe AccessAdvisorUsageGranularityType
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:marker:GetServiceLastAccessedDetails'] :: GetServiceLastAccessedDetails -> Maybe Text
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:marker:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> Maybe Text
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:maxItems:GetServiceLastAccessedDetails'] :: GetServiceLastAccessedDetails -> Maybe Natural
+ Amazonka.IAM.GetServiceLastAccessedDetails: [$sel:servicesLastAccessed:GetServiceLastAccessedDetailsResponse'] :: GetServiceLastAccessedDetailsResponse -> [ServiceLastAccessed]
+ Amazonka.IAM.GetServiceLastAccessedDetails: data GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: data GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_error :: Lens' GetServiceLastAccessedDetailsResponse (Maybe ErrorDetails)
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_httpStatus :: Lens' GetServiceLastAccessedDetailsResponse Int
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_isTruncated :: Lens' GetServiceLastAccessedDetailsResponse (Maybe Bool)
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_jobCompletionDate :: Lens' GetServiceLastAccessedDetailsResponse UTCTime
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_jobCreationDate :: Lens' GetServiceLastAccessedDetailsResponse UTCTime
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_jobStatus :: Lens' GetServiceLastAccessedDetailsResponse JobStatusType
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_jobType :: Lens' GetServiceLastAccessedDetailsResponse (Maybe AccessAdvisorUsageGranularityType)
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_marker :: Lens' GetServiceLastAccessedDetailsResponse (Maybe Text)
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetailsResponse_servicesLastAccessed :: Lens' GetServiceLastAccessedDetailsResponse [ServiceLastAccessed]
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetails_jobId :: Lens' GetServiceLastAccessedDetails Text
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetails_marker :: Lens' GetServiceLastAccessedDetails (Maybe Text)
+ Amazonka.IAM.GetServiceLastAccessedDetails: getServiceLastAccessedDetails_maxItems :: Lens' GetServiceLastAccessedDetails (Maybe Natural)
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance Control.DeepSeq.NFData Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance Control.DeepSeq.NFData Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance GHC.Classes.Eq Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance GHC.Classes.Eq Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance GHC.Generics.Generic Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance GHC.Generics.Generic Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance GHC.Read.Read Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance GHC.Read.Read Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance GHC.Show.Show Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: instance GHC.Show.Show Amazonka.IAM.GetServiceLastAccessedDetails.GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetServiceLastAccessedDetails: newGetServiceLastAccessedDetails :: Text -> GetServiceLastAccessedDetails
+ Amazonka.IAM.GetServiceLastAccessedDetails: newGetServiceLastAccessedDetailsResponse :: Int -> JobStatusType -> UTCTime -> UTCTime -> GetServiceLastAccessedDetailsResponse
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: GetServiceLastAccessedDetailsWithEntities' :: Maybe Text -> Maybe Natural -> Text -> Text -> GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: GetServiceLastAccessedDetailsWithEntitiesResponse' :: Maybe ErrorDetails -> Maybe Bool -> Maybe Text -> Int -> JobStatusType -> ISO8601 -> ISO8601 -> [EntityDetails] -> GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:entityDetailsList:GetServiceLastAccessedDetailsWithEntitiesResponse'] :: GetServiceLastAccessedDetailsWithEntitiesResponse -> [EntityDetails]
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:error:GetServiceLastAccessedDetailsWithEntitiesResponse'] :: GetServiceLastAccessedDetailsWithEntitiesResponse -> Maybe ErrorDetails
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:httpStatus:GetServiceLastAccessedDetailsWithEntitiesResponse'] :: GetServiceLastAccessedDetailsWithEntitiesResponse -> Int
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:isTruncated:GetServiceLastAccessedDetailsWithEntitiesResponse'] :: GetServiceLastAccessedDetailsWithEntitiesResponse -> Maybe Bool
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:jobCompletionDate:GetServiceLastAccessedDetailsWithEntitiesResponse'] :: GetServiceLastAccessedDetailsWithEntitiesResponse -> ISO8601
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:jobCreationDate:GetServiceLastAccessedDetailsWithEntitiesResponse'] :: GetServiceLastAccessedDetailsWithEntitiesResponse -> ISO8601
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:jobId:GetServiceLastAccessedDetailsWithEntities'] :: GetServiceLastAccessedDetailsWithEntities -> Text
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:jobStatus:GetServiceLastAccessedDetailsWithEntitiesResponse'] :: GetServiceLastAccessedDetailsWithEntitiesResponse -> JobStatusType
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:marker:GetServiceLastAccessedDetailsWithEntities'] :: GetServiceLastAccessedDetailsWithEntities -> Maybe Text
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:marker:GetServiceLastAccessedDetailsWithEntitiesResponse'] :: GetServiceLastAccessedDetailsWithEntitiesResponse -> Maybe Text
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:maxItems:GetServiceLastAccessedDetailsWithEntities'] :: GetServiceLastAccessedDetailsWithEntities -> Maybe Natural
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: [$sel:serviceNamespace:GetServiceLastAccessedDetailsWithEntities'] :: GetServiceLastAccessedDetailsWithEntities -> Text
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: data GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: data GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntitiesResponse_entityDetailsList :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse [EntityDetails]
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntitiesResponse_error :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Maybe ErrorDetails)
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntitiesResponse_httpStatus :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse Int
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntitiesResponse_isTruncated :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Maybe Bool)
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntitiesResponse_jobCompletionDate :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse UTCTime
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntitiesResponse_jobCreationDate :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse UTCTime
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntitiesResponse_jobStatus :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse JobStatusType
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntitiesResponse_marker :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Maybe Text)
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntities_jobId :: Lens' GetServiceLastAccessedDetailsWithEntities Text
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntities_marker :: Lens' GetServiceLastAccessedDetailsWithEntities (Maybe Text)
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntities_maxItems :: Lens' GetServiceLastAccessedDetailsWithEntities (Maybe Natural)
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: getServiceLastAccessedDetailsWithEntities_serviceNamespace :: Lens' GetServiceLastAccessedDetailsWithEntities Text
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance Control.DeepSeq.NFData Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance Control.DeepSeq.NFData Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance GHC.Classes.Eq Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance GHC.Classes.Eq Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance GHC.Generics.Generic Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance GHC.Generics.Generic Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance GHC.Read.Read Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance GHC.Read.Read Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance GHC.Show.Show Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: instance GHC.Show.Show Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities.GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: newGetServiceLastAccessedDetailsWithEntities :: Text -> Text -> GetServiceLastAccessedDetailsWithEntities
+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities: newGetServiceLastAccessedDetailsWithEntitiesResponse :: Int -> JobStatusType -> UTCTime -> UTCTime -> GetServiceLastAccessedDetailsWithEntitiesResponse
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: GetServiceLinkedRoleDeletionStatus' :: Text -> GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: GetServiceLinkedRoleDeletionStatusResponse' :: Maybe DeletionTaskFailureReasonType -> Int -> DeletionTaskStatusType -> GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: [$sel:deletionTaskId:GetServiceLinkedRoleDeletionStatus'] :: GetServiceLinkedRoleDeletionStatus -> Text
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: [$sel:httpStatus:GetServiceLinkedRoleDeletionStatusResponse'] :: GetServiceLinkedRoleDeletionStatusResponse -> Int
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: [$sel:reason:GetServiceLinkedRoleDeletionStatusResponse'] :: GetServiceLinkedRoleDeletionStatusResponse -> Maybe DeletionTaskFailureReasonType
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: [$sel:status:GetServiceLinkedRoleDeletionStatusResponse'] :: GetServiceLinkedRoleDeletionStatusResponse -> DeletionTaskStatusType
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: data GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: data GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: getServiceLinkedRoleDeletionStatusResponse_httpStatus :: Lens' GetServiceLinkedRoleDeletionStatusResponse Int
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: getServiceLinkedRoleDeletionStatusResponse_reason :: Lens' GetServiceLinkedRoleDeletionStatusResponse (Maybe DeletionTaskFailureReasonType)
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: getServiceLinkedRoleDeletionStatusResponse_status :: Lens' GetServiceLinkedRoleDeletionStatusResponse DeletionTaskStatusType
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: getServiceLinkedRoleDeletionStatus_deletionTaskId :: Lens' GetServiceLinkedRoleDeletionStatus Text
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance Control.DeepSeq.NFData Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance Control.DeepSeq.NFData Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Classes.Eq Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Classes.Eq Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Generics.Generic Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Generics.Generic Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Read.Read Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Read.Read Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Show.Show Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: instance GHC.Show.Show Amazonka.IAM.GetServiceLinkedRoleDeletionStatus.GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: newGetServiceLinkedRoleDeletionStatus :: Text -> GetServiceLinkedRoleDeletionStatus
+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus: newGetServiceLinkedRoleDeletionStatusResponse :: Int -> DeletionTaskStatusType -> GetServiceLinkedRoleDeletionStatusResponse
+ Amazonka.IAM.GetUser: GetUser' :: Maybe Text -> GetUser
+ Amazonka.IAM.GetUser: GetUserResponse' :: Int -> User -> GetUserResponse
+ Amazonka.IAM.GetUser: [$sel:httpStatus:GetUserResponse'] :: GetUserResponse -> Int
+ Amazonka.IAM.GetUser: [$sel:user:GetUserResponse'] :: GetUserResponse -> User
+ Amazonka.IAM.GetUser: [$sel:userName:GetUser'] :: GetUser -> Maybe Text
+ Amazonka.IAM.GetUser: data GetUser
+ Amazonka.IAM.GetUser: data GetUserResponse
+ Amazonka.IAM.GetUser: getUserResponse_httpStatus :: Lens' GetUserResponse Int
+ Amazonka.IAM.GetUser: getUserResponse_user :: Lens' GetUserResponse User
+ Amazonka.IAM.GetUser: getUser_userName :: Lens' GetUser (Maybe Text)
+ Amazonka.IAM.GetUser: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance Control.DeepSeq.NFData Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance Control.DeepSeq.NFData Amazonka.IAM.GetUser.GetUserResponse
+ Amazonka.IAM.GetUser: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance GHC.Classes.Eq Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance GHC.Classes.Eq Amazonka.IAM.GetUser.GetUserResponse
+ Amazonka.IAM.GetUser: instance GHC.Generics.Generic Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance GHC.Generics.Generic Amazonka.IAM.GetUser.GetUserResponse
+ Amazonka.IAM.GetUser: instance GHC.Read.Read Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance GHC.Read.Read Amazonka.IAM.GetUser.GetUserResponse
+ Amazonka.IAM.GetUser: instance GHC.Show.Show Amazonka.IAM.GetUser.GetUser
+ Amazonka.IAM.GetUser: instance GHC.Show.Show Amazonka.IAM.GetUser.GetUserResponse
+ Amazonka.IAM.GetUser: newGetUser :: GetUser
+ Amazonka.IAM.GetUser: newGetUserResponse :: Int -> User -> GetUserResponse
+ Amazonka.IAM.GetUserPolicy: GetUserPolicy' :: Text -> Text -> GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: GetUserPolicyResponse' :: Int -> Text -> Text -> Text -> GetUserPolicyResponse
+ Amazonka.IAM.GetUserPolicy: [$sel:httpStatus:GetUserPolicyResponse'] :: GetUserPolicyResponse -> Int
+ Amazonka.IAM.GetUserPolicy: [$sel:policyDocument:GetUserPolicyResponse'] :: GetUserPolicyResponse -> Text
+ Amazonka.IAM.GetUserPolicy: [$sel:policyName:GetUserPolicy'] :: GetUserPolicy -> Text
+ Amazonka.IAM.GetUserPolicy: [$sel:policyName:GetUserPolicyResponse'] :: GetUserPolicyResponse -> Text
+ Amazonka.IAM.GetUserPolicy: [$sel:userName:GetUserPolicy'] :: GetUserPolicy -> Text
+ Amazonka.IAM.GetUserPolicy: [$sel:userName:GetUserPolicyResponse'] :: GetUserPolicyResponse -> Text
+ Amazonka.IAM.GetUserPolicy: data GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: data GetUserPolicyResponse
+ Amazonka.IAM.GetUserPolicy: getUserPolicyResponse_httpStatus :: Lens' GetUserPolicyResponse Int
+ Amazonka.IAM.GetUserPolicy: getUserPolicyResponse_policyDocument :: Lens' GetUserPolicyResponse Text
+ Amazonka.IAM.GetUserPolicy: getUserPolicyResponse_policyName :: Lens' GetUserPolicyResponse Text
+ Amazonka.IAM.GetUserPolicy: getUserPolicyResponse_userName :: Lens' GetUserPolicyResponse Text
+ Amazonka.IAM.GetUserPolicy: getUserPolicy_policyName :: Lens' GetUserPolicy Text
+ Amazonka.IAM.GetUserPolicy: getUserPolicy_userName :: Lens' GetUserPolicy Text
+ Amazonka.IAM.GetUserPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.GetUserPolicy.GetUserPolicyResponse
+ Amazonka.IAM.GetUserPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.GetUserPolicy.GetUserPolicyResponse
+ Amazonka.IAM.GetUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.GetUserPolicy.GetUserPolicyResponse
+ Amazonka.IAM.GetUserPolicy: instance GHC.Read.Read Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance GHC.Read.Read Amazonka.IAM.GetUserPolicy.GetUserPolicyResponse
+ Amazonka.IAM.GetUserPolicy: instance GHC.Show.Show Amazonka.IAM.GetUserPolicy.GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: instance GHC.Show.Show Amazonka.IAM.GetUserPolicy.GetUserPolicyResponse
+ Amazonka.IAM.GetUserPolicy: newGetUserPolicy :: Text -> Text -> GetUserPolicy
+ Amazonka.IAM.GetUserPolicy: newGetUserPolicyResponse :: Int -> Text -> Text -> Text -> GetUserPolicyResponse
+ Amazonka.IAM.Lens: accessDetail_entityPath :: Lens' AccessDetail (Maybe Text)
+ Amazonka.IAM.Lens: accessDetail_lastAuthenticatedTime :: Lens' AccessDetail (Maybe UTCTime)
+ Amazonka.IAM.Lens: accessDetail_region :: Lens' AccessDetail (Maybe Text)
+ Amazonka.IAM.Lens: accessDetail_serviceName :: Lens' AccessDetail Text
+ Amazonka.IAM.Lens: accessDetail_serviceNamespace :: Lens' AccessDetail Text
+ Amazonka.IAM.Lens: accessDetail_totalAuthenticatedEntities :: Lens' AccessDetail (Maybe Int)
+ Amazonka.IAM.Lens: accessKeyInfo_accessKeyId :: Lens' AccessKeyInfo AccessKey
+ Amazonka.IAM.Lens: accessKeyInfo_createDate :: Lens' AccessKeyInfo (Maybe UTCTime)
+ Amazonka.IAM.Lens: accessKeyInfo_secretAccessKey :: Lens' AccessKeyInfo Text
+ Amazonka.IAM.Lens: accessKeyInfo_status :: Lens' AccessKeyInfo StatusType
+ Amazonka.IAM.Lens: accessKeyInfo_userName :: Lens' AccessKeyInfo Text
+ Amazonka.IAM.Lens: accessKeyLastUsed_lastUsedDate :: Lens' AccessKeyLastUsed UTCTime
+ Amazonka.IAM.Lens: accessKeyLastUsed_region :: Lens' AccessKeyLastUsed Text
+ Amazonka.IAM.Lens: accessKeyLastUsed_serviceName :: Lens' AccessKeyLastUsed Text
+ Amazonka.IAM.Lens: accessKeyMetadata_accessKeyId :: Lens' AccessKeyMetadata (Maybe AccessKey)
+ Amazonka.IAM.Lens: accessKeyMetadata_createDate :: Lens' AccessKeyMetadata (Maybe UTCTime)
+ Amazonka.IAM.Lens: accessKeyMetadata_status :: Lens' AccessKeyMetadata (Maybe StatusType)
+ Amazonka.IAM.Lens: accessKeyMetadata_userName :: Lens' AccessKeyMetadata (Maybe Text)
+ Amazonka.IAM.Lens: addClientIDToOpenIDConnectProvider_clientID :: Lens' AddClientIDToOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: addClientIDToOpenIDConnectProvider_openIDConnectProviderArn :: Lens' AddClientIDToOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: addRoleToInstanceProfile_instanceProfileName :: Lens' AddRoleToInstanceProfile Text
+ Amazonka.IAM.Lens: addRoleToInstanceProfile_roleName :: Lens' AddRoleToInstanceProfile Text
+ Amazonka.IAM.Lens: addUserToGroup_groupName :: Lens' AddUserToGroup Text
+ Amazonka.IAM.Lens: addUserToGroup_userName :: Lens' AddUserToGroup Text
+ Amazonka.IAM.Lens: attachGroupPolicy_groupName :: Lens' AttachGroupPolicy Text
+ Amazonka.IAM.Lens: attachGroupPolicy_policyArn :: Lens' AttachGroupPolicy Text
+ Amazonka.IAM.Lens: attachRolePolicy_policyArn :: Lens' AttachRolePolicy Text
+ Amazonka.IAM.Lens: attachRolePolicy_roleName :: Lens' AttachRolePolicy Text
+ Amazonka.IAM.Lens: attachUserPolicy_policyArn :: Lens' AttachUserPolicy Text
+ Amazonka.IAM.Lens: attachUserPolicy_userName :: Lens' AttachUserPolicy Text
+ Amazonka.IAM.Lens: attachedPermissionsBoundary_permissionsBoundaryArn :: Lens' AttachedPermissionsBoundary (Maybe Text)
+ Amazonka.IAM.Lens: attachedPermissionsBoundary_permissionsBoundaryType :: Lens' AttachedPermissionsBoundary (Maybe PermissionsBoundaryAttachmentType)
+ Amazonka.IAM.Lens: attachedPolicy_policyArn :: Lens' AttachedPolicy (Maybe Text)
+ Amazonka.IAM.Lens: attachedPolicy_policyName :: Lens' AttachedPolicy (Maybe Text)
+ Amazonka.IAM.Lens: changePassword_newPassword :: Lens' ChangePassword Text
+ Amazonka.IAM.Lens: changePassword_oldPassword :: Lens' ChangePassword Text
+ Amazonka.IAM.Lens: contextEntry_contextKeyName :: Lens' ContextEntry (Maybe Text)
+ Amazonka.IAM.Lens: contextEntry_contextKeyType :: Lens' ContextEntry (Maybe ContextKeyTypeEnum)
+ Amazonka.IAM.Lens: contextEntry_contextKeyValues :: Lens' ContextEntry (Maybe [Text])
+ Amazonka.IAM.Lens: createAccessKeyResponse_accessKey :: Lens' CreateAccessKeyResponse AccessKeyInfo
+ Amazonka.IAM.Lens: createAccessKeyResponse_httpStatus :: Lens' CreateAccessKeyResponse Int
+ Amazonka.IAM.Lens: createAccessKey_userName :: Lens' CreateAccessKey (Maybe Text)
+ Amazonka.IAM.Lens: createAccountAlias_accountAlias :: Lens' CreateAccountAlias Text
+ Amazonka.IAM.Lens: createGroupResponse_group :: Lens' CreateGroupResponse Group
+ Amazonka.IAM.Lens: createGroupResponse_httpStatus :: Lens' CreateGroupResponse Int
+ Amazonka.IAM.Lens: createGroup_groupName :: Lens' CreateGroup Text
+ Amazonka.IAM.Lens: createGroup_path :: Lens' CreateGroup (Maybe Text)
+ Amazonka.IAM.Lens: createInstanceProfileResponse_httpStatus :: Lens' CreateInstanceProfileResponse Int
+ Amazonka.IAM.Lens: createInstanceProfileResponse_instanceProfile :: Lens' CreateInstanceProfileResponse InstanceProfile
+ Amazonka.IAM.Lens: createInstanceProfile_instanceProfileName :: Lens' CreateInstanceProfile Text
+ Amazonka.IAM.Lens: createInstanceProfile_path :: Lens' CreateInstanceProfile (Maybe Text)
+ Amazonka.IAM.Lens: createInstanceProfile_tags :: Lens' CreateInstanceProfile (Maybe [Tag])
+ Amazonka.IAM.Lens: createLoginProfileResponse_httpStatus :: Lens' CreateLoginProfileResponse Int
+ Amazonka.IAM.Lens: createLoginProfileResponse_loginProfile :: Lens' CreateLoginProfileResponse LoginProfile
+ Amazonka.IAM.Lens: createLoginProfile_password :: Lens' CreateLoginProfile Text
+ Amazonka.IAM.Lens: createLoginProfile_passwordResetRequired :: Lens' CreateLoginProfile (Maybe Bool)
+ Amazonka.IAM.Lens: createLoginProfile_userName :: Lens' CreateLoginProfile Text
+ Amazonka.IAM.Lens: createOpenIDConnectProviderResponse_httpStatus :: Lens' CreateOpenIDConnectProviderResponse Int
+ Amazonka.IAM.Lens: createOpenIDConnectProviderResponse_openIDConnectProviderArn :: Lens' CreateOpenIDConnectProviderResponse (Maybe Text)
+ Amazonka.IAM.Lens: createOpenIDConnectProviderResponse_tags :: Lens' CreateOpenIDConnectProviderResponse (Maybe [Tag])
+ Amazonka.IAM.Lens: createOpenIDConnectProvider_clientIDList :: Lens' CreateOpenIDConnectProvider (Maybe [Text])
+ Amazonka.IAM.Lens: createOpenIDConnectProvider_tags :: Lens' CreateOpenIDConnectProvider (Maybe [Tag])
+ Amazonka.IAM.Lens: createOpenIDConnectProvider_thumbprintList :: Lens' CreateOpenIDConnectProvider [Text]
+ Amazonka.IAM.Lens: createOpenIDConnectProvider_url :: Lens' CreateOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: createPolicyResponse_httpStatus :: Lens' CreatePolicyResponse Int
+ Amazonka.IAM.Lens: createPolicyResponse_policy :: Lens' CreatePolicyResponse (Maybe Policy)
+ Amazonka.IAM.Lens: createPolicyVersionResponse_httpStatus :: Lens' CreatePolicyVersionResponse Int
+ Amazonka.IAM.Lens: createPolicyVersionResponse_policyVersion :: Lens' CreatePolicyVersionResponse (Maybe PolicyVersion)
+ Amazonka.IAM.Lens: createPolicyVersion_policyArn :: Lens' CreatePolicyVersion Text
+ Amazonka.IAM.Lens: createPolicyVersion_policyDocument :: Lens' CreatePolicyVersion Text
+ Amazonka.IAM.Lens: createPolicyVersion_setAsDefault :: Lens' CreatePolicyVersion (Maybe Bool)
+ Amazonka.IAM.Lens: createPolicy_description :: Lens' CreatePolicy (Maybe Text)
+ Amazonka.IAM.Lens: createPolicy_path :: Lens' CreatePolicy (Maybe Text)
+ Amazonka.IAM.Lens: createPolicy_policyDocument :: Lens' CreatePolicy Text
+ Amazonka.IAM.Lens: createPolicy_policyName :: Lens' CreatePolicy Text
+ Amazonka.IAM.Lens: createPolicy_tags :: Lens' CreatePolicy (Maybe [Tag])
+ Amazonka.IAM.Lens: createRoleResponse_httpStatus :: Lens' CreateRoleResponse Int
+ Amazonka.IAM.Lens: createRoleResponse_role :: Lens' CreateRoleResponse Role
+ Amazonka.IAM.Lens: createRole_assumeRolePolicyDocument :: Lens' CreateRole Text
+ Amazonka.IAM.Lens: createRole_description :: Lens' CreateRole (Maybe Text)
+ Amazonka.IAM.Lens: createRole_maxSessionDuration :: Lens' CreateRole (Maybe Natural)
+ Amazonka.IAM.Lens: createRole_path :: Lens' CreateRole (Maybe Text)
+ Amazonka.IAM.Lens: createRole_permissionsBoundary :: Lens' CreateRole (Maybe Text)
+ Amazonka.IAM.Lens: createRole_roleName :: Lens' CreateRole Text
+ Amazonka.IAM.Lens: createRole_tags :: Lens' CreateRole (Maybe [Tag])
+ Amazonka.IAM.Lens: createSAMLProviderResponse_httpStatus :: Lens' CreateSAMLProviderResponse Int
+ Amazonka.IAM.Lens: createSAMLProviderResponse_sAMLProviderArn :: Lens' CreateSAMLProviderResponse (Maybe Text)
+ Amazonka.IAM.Lens: createSAMLProviderResponse_tags :: Lens' CreateSAMLProviderResponse (Maybe [Tag])
+ Amazonka.IAM.Lens: createSAMLProvider_name :: Lens' CreateSAMLProvider Text
+ Amazonka.IAM.Lens: createSAMLProvider_sAMLMetadataDocument :: Lens' CreateSAMLProvider Text
+ Amazonka.IAM.Lens: createSAMLProvider_tags :: Lens' CreateSAMLProvider (Maybe [Tag])
+ Amazonka.IAM.Lens: createServiceLinkedRoleResponse_httpStatus :: Lens' CreateServiceLinkedRoleResponse Int
+ Amazonka.IAM.Lens: createServiceLinkedRoleResponse_role :: Lens' CreateServiceLinkedRoleResponse (Maybe Role)
+ Amazonka.IAM.Lens: createServiceLinkedRole_aWSServiceName :: Lens' CreateServiceLinkedRole Text
+ Amazonka.IAM.Lens: createServiceLinkedRole_customSuffix :: Lens' CreateServiceLinkedRole (Maybe Text)
+ Amazonka.IAM.Lens: createServiceLinkedRole_description :: Lens' CreateServiceLinkedRole (Maybe Text)
+ Amazonka.IAM.Lens: createServiceSpecificCredentialResponse_httpStatus :: Lens' CreateServiceSpecificCredentialResponse Int
+ Amazonka.IAM.Lens: createServiceSpecificCredentialResponse_serviceSpecificCredential :: Lens' CreateServiceSpecificCredentialResponse (Maybe ServiceSpecificCredential)
+ Amazonka.IAM.Lens: createServiceSpecificCredential_serviceName :: Lens' CreateServiceSpecificCredential Text
+ Amazonka.IAM.Lens: createServiceSpecificCredential_userName :: Lens' CreateServiceSpecificCredential Text
+ Amazonka.IAM.Lens: createUserResponse_httpStatus :: Lens' CreateUserResponse Int
+ Amazonka.IAM.Lens: createUserResponse_user :: Lens' CreateUserResponse (Maybe User)
+ Amazonka.IAM.Lens: createUser_path :: Lens' CreateUser (Maybe Text)
+ Amazonka.IAM.Lens: createUser_permissionsBoundary :: Lens' CreateUser (Maybe Text)
+ Amazonka.IAM.Lens: createUser_tags :: Lens' CreateUser (Maybe [Tag])
+ Amazonka.IAM.Lens: createUser_userName :: Lens' CreateUser Text
+ Amazonka.IAM.Lens: createVirtualMFADeviceResponse_httpStatus :: Lens' CreateVirtualMFADeviceResponse Int
+ Amazonka.IAM.Lens: createVirtualMFADeviceResponse_virtualMFADevice :: Lens' CreateVirtualMFADeviceResponse VirtualMFADevice
+ Amazonka.IAM.Lens: createVirtualMFADevice_path :: Lens' CreateVirtualMFADevice (Maybe Text)
+ Amazonka.IAM.Lens: createVirtualMFADevice_tags :: Lens' CreateVirtualMFADevice (Maybe [Tag])
+ Amazonka.IAM.Lens: createVirtualMFADevice_virtualMFADeviceName :: Lens' CreateVirtualMFADevice Text
+ Amazonka.IAM.Lens: deactivateMFADevice_serialNumber :: Lens' DeactivateMFADevice Text
+ Amazonka.IAM.Lens: deactivateMFADevice_userName :: Lens' DeactivateMFADevice Text
+ Amazonka.IAM.Lens: deleteAccessKey_accessKeyId :: Lens' DeleteAccessKey AccessKey
+ Amazonka.IAM.Lens: deleteAccessKey_userName :: Lens' DeleteAccessKey (Maybe Text)
+ Amazonka.IAM.Lens: deleteAccountAlias_accountAlias :: Lens' DeleteAccountAlias Text
+ Amazonka.IAM.Lens: deleteGroupPolicy_groupName :: Lens' DeleteGroupPolicy Text
+ Amazonka.IAM.Lens: deleteGroupPolicy_policyName :: Lens' DeleteGroupPolicy Text
+ Amazonka.IAM.Lens: deleteGroup_groupName :: Lens' DeleteGroup Text
+ Amazonka.IAM.Lens: deleteInstanceProfile_instanceProfileName :: Lens' DeleteInstanceProfile Text
+ Amazonka.IAM.Lens: deleteLoginProfile_userName :: Lens' DeleteLoginProfile Text
+ Amazonka.IAM.Lens: deleteOpenIDConnectProvider_openIDConnectProviderArn :: Lens' DeleteOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: deletePolicyVersion_policyArn :: Lens' DeletePolicyVersion Text
+ Amazonka.IAM.Lens: deletePolicyVersion_versionId :: Lens' DeletePolicyVersion Text
+ Amazonka.IAM.Lens: deletePolicy_policyArn :: Lens' DeletePolicy Text
+ Amazonka.IAM.Lens: deleteRolePermissionsBoundary_roleName :: Lens' DeleteRolePermissionsBoundary Text
+ Amazonka.IAM.Lens: deleteRolePolicy_policyName :: Lens' DeleteRolePolicy Text
+ Amazonka.IAM.Lens: deleteRolePolicy_roleName :: Lens' DeleteRolePolicy Text
+ Amazonka.IAM.Lens: deleteRole_roleName :: Lens' DeleteRole Text
+ Amazonka.IAM.Lens: deleteSAMLProvider_sAMLProviderArn :: Lens' DeleteSAMLProvider Text
+ Amazonka.IAM.Lens: deleteSSHPublicKey_sSHPublicKeyId :: Lens' DeleteSSHPublicKey Text
+ Amazonka.IAM.Lens: deleteSSHPublicKey_userName :: Lens' DeleteSSHPublicKey Text
+ Amazonka.IAM.Lens: deleteServerCertificate_serverCertificateName :: Lens' DeleteServerCertificate Text
+ Amazonka.IAM.Lens: deleteServiceLinkedRoleResponse_deletionTaskId :: Lens' DeleteServiceLinkedRoleResponse Text
+ Amazonka.IAM.Lens: deleteServiceLinkedRoleResponse_httpStatus :: Lens' DeleteServiceLinkedRoleResponse Int
+ Amazonka.IAM.Lens: deleteServiceLinkedRole_roleName :: Lens' DeleteServiceLinkedRole Text
+ Amazonka.IAM.Lens: deleteServiceSpecificCredential_serviceSpecificCredentialId :: Lens' DeleteServiceSpecificCredential Text
+ Amazonka.IAM.Lens: deleteServiceSpecificCredential_userName :: Lens' DeleteServiceSpecificCredential (Maybe Text)
+ Amazonka.IAM.Lens: deleteSigningCertificate_certificateId :: Lens' DeleteSigningCertificate Text
+ Amazonka.IAM.Lens: deleteSigningCertificate_userName :: Lens' DeleteSigningCertificate (Maybe Text)
+ Amazonka.IAM.Lens: deleteUserPermissionsBoundary_userName :: Lens' DeleteUserPermissionsBoundary Text
+ Amazonka.IAM.Lens: deleteUserPolicy_policyName :: Lens' DeleteUserPolicy Text
+ Amazonka.IAM.Lens: deleteUserPolicy_userName :: Lens' DeleteUserPolicy Text
+ Amazonka.IAM.Lens: deleteUser_userName :: Lens' DeleteUser Text
+ Amazonka.IAM.Lens: deleteVirtualMFADevice_serialNumber :: Lens' DeleteVirtualMFADevice Text
+ Amazonka.IAM.Lens: deletionTaskFailureReasonType_reason :: Lens' DeletionTaskFailureReasonType (Maybe Text)
+ Amazonka.IAM.Lens: deletionTaskFailureReasonType_roleUsageList :: Lens' DeletionTaskFailureReasonType (Maybe [RoleUsageType])
+ Amazonka.IAM.Lens: detachGroupPolicy_groupName :: Lens' DetachGroupPolicy Text
+ Amazonka.IAM.Lens: detachGroupPolicy_policyArn :: Lens' DetachGroupPolicy Text
+ Amazonka.IAM.Lens: detachRolePolicy_policyArn :: Lens' DetachRolePolicy Text
+ Amazonka.IAM.Lens: detachRolePolicy_roleName :: Lens' DetachRolePolicy Text
+ Amazonka.IAM.Lens: detachUserPolicy_policyArn :: Lens' DetachUserPolicy Text
+ Amazonka.IAM.Lens: detachUserPolicy_userName :: Lens' DetachUserPolicy Text
+ Amazonka.IAM.Lens: enableMFADevice_authenticationCode1 :: Lens' EnableMFADevice Text
+ Amazonka.IAM.Lens: enableMFADevice_authenticationCode2 :: Lens' EnableMFADevice Text
+ Amazonka.IAM.Lens: enableMFADevice_serialNumber :: Lens' EnableMFADevice Text
+ Amazonka.IAM.Lens: enableMFADevice_userName :: Lens' EnableMFADevice Text
+ Amazonka.IAM.Lens: entityDetails_entityInfo :: Lens' EntityDetails EntityInfo
+ Amazonka.IAM.Lens: entityDetails_lastAuthenticated :: Lens' EntityDetails (Maybe UTCTime)
+ Amazonka.IAM.Lens: entityInfo_arn :: Lens' EntityInfo Text
+ Amazonka.IAM.Lens: entityInfo_id :: Lens' EntityInfo Text
+ Amazonka.IAM.Lens: entityInfo_name :: Lens' EntityInfo Text
+ Amazonka.IAM.Lens: entityInfo_path :: Lens' EntityInfo (Maybe Text)
+ Amazonka.IAM.Lens: entityInfo_type :: Lens' EntityInfo PolicyOwnerEntityType
+ Amazonka.IAM.Lens: errorDetails_code :: Lens' ErrorDetails Text
+ Amazonka.IAM.Lens: errorDetails_message :: Lens' ErrorDetails Text
+ Amazonka.IAM.Lens: evaluationResult_evalActionName :: Lens' EvaluationResult Text
+ Amazonka.IAM.Lens: evaluationResult_evalDecision :: Lens' EvaluationResult PolicyEvaluationDecisionType
+ Amazonka.IAM.Lens: evaluationResult_evalDecisionDetails :: Lens' EvaluationResult (Maybe (HashMap Text PolicyEvaluationDecisionType))
+ Amazonka.IAM.Lens: evaluationResult_evalResourceName :: Lens' EvaluationResult (Maybe Text)
+ Amazonka.IAM.Lens: evaluationResult_matchedStatements :: Lens' EvaluationResult (Maybe [Statement])
+ Amazonka.IAM.Lens: evaluationResult_missingContextValues :: Lens' EvaluationResult (Maybe [Text])
+ Amazonka.IAM.Lens: evaluationResult_organizationsDecisionDetail :: Lens' EvaluationResult (Maybe OrganizationsDecisionDetail)
+ Amazonka.IAM.Lens: evaluationResult_permissionsBoundaryDecisionDetail :: Lens' EvaluationResult (Maybe PermissionsBoundaryDecisionDetail)
+ Amazonka.IAM.Lens: evaluationResult_resourceSpecificResults :: Lens' EvaluationResult (Maybe [ResourceSpecificResult])
+ Amazonka.IAM.Lens: generateCredentialReportResponse_description :: Lens' GenerateCredentialReportResponse (Maybe Text)
+ Amazonka.IAM.Lens: generateCredentialReportResponse_httpStatus :: Lens' GenerateCredentialReportResponse Int
+ Amazonka.IAM.Lens: generateCredentialReportResponse_state :: Lens' GenerateCredentialReportResponse (Maybe ReportStateType)
+ Amazonka.IAM.Lens: generateOrganizationsAccessReportResponse_httpStatus :: Lens' GenerateOrganizationsAccessReportResponse Int
+ Amazonka.IAM.Lens: generateOrganizationsAccessReportResponse_jobId :: Lens' GenerateOrganizationsAccessReportResponse (Maybe Text)
+ Amazonka.IAM.Lens: generateOrganizationsAccessReport_entityPath :: Lens' GenerateOrganizationsAccessReport Text
+ Amazonka.IAM.Lens: generateOrganizationsAccessReport_organizationsPolicyId :: Lens' GenerateOrganizationsAccessReport (Maybe Text)
+ Amazonka.IAM.Lens: generateServiceLastAccessedDetailsResponse_httpStatus :: Lens' GenerateServiceLastAccessedDetailsResponse Int
+ Amazonka.IAM.Lens: generateServiceLastAccessedDetailsResponse_jobId :: Lens' GenerateServiceLastAccessedDetailsResponse (Maybe Text)
+ Amazonka.IAM.Lens: generateServiceLastAccessedDetails_arn :: Lens' GenerateServiceLastAccessedDetails Text
+ Amazonka.IAM.Lens: generateServiceLastAccessedDetails_granularity :: Lens' GenerateServiceLastAccessedDetails (Maybe AccessAdvisorUsageGranularityType)
+ Amazonka.IAM.Lens: getAccessKeyLastUsedResponse_accessKeyLastUsed :: Lens' GetAccessKeyLastUsedResponse (Maybe AccessKeyLastUsed)
+ Amazonka.IAM.Lens: getAccessKeyLastUsedResponse_httpStatus :: Lens' GetAccessKeyLastUsedResponse Int
+ Amazonka.IAM.Lens: getAccessKeyLastUsedResponse_userName :: Lens' GetAccessKeyLastUsedResponse (Maybe Text)
+ Amazonka.IAM.Lens: getAccessKeyLastUsed_accessKeyId :: Lens' GetAccessKeyLastUsed AccessKey
+ Amazonka.IAM.Lens: getAccountAuthorizationDetailsResponse_groupDetailList :: Lens' GetAccountAuthorizationDetailsResponse (Maybe [GroupDetail])
+ Amazonka.IAM.Lens: getAccountAuthorizationDetailsResponse_httpStatus :: Lens' GetAccountAuthorizationDetailsResponse Int
+ Amazonka.IAM.Lens: getAccountAuthorizationDetailsResponse_isTruncated :: Lens' GetAccountAuthorizationDetailsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: getAccountAuthorizationDetailsResponse_marker :: Lens' GetAccountAuthorizationDetailsResponse (Maybe Text)
+ Amazonka.IAM.Lens: getAccountAuthorizationDetailsResponse_policies :: Lens' GetAccountAuthorizationDetailsResponse (Maybe [ManagedPolicyDetail])
+ Amazonka.IAM.Lens: getAccountAuthorizationDetailsResponse_roleDetailList :: Lens' GetAccountAuthorizationDetailsResponse (Maybe [RoleDetail])
+ Amazonka.IAM.Lens: getAccountAuthorizationDetailsResponse_userDetailList :: Lens' GetAccountAuthorizationDetailsResponse (Maybe [UserDetail])
+ Amazonka.IAM.Lens: getAccountAuthorizationDetails_filter :: Lens' GetAccountAuthorizationDetails (Maybe [EntityType])
+ Amazonka.IAM.Lens: getAccountAuthorizationDetails_marker :: Lens' GetAccountAuthorizationDetails (Maybe Text)
+ Amazonka.IAM.Lens: getAccountAuthorizationDetails_maxItems :: Lens' GetAccountAuthorizationDetails (Maybe Natural)
+ Amazonka.IAM.Lens: getAccountPasswordPolicyResponse_httpStatus :: Lens' GetAccountPasswordPolicyResponse Int
+ Amazonka.IAM.Lens: getAccountPasswordPolicyResponse_passwordPolicy :: Lens' GetAccountPasswordPolicyResponse PasswordPolicy
+ Amazonka.IAM.Lens: getAccountSummaryResponse_httpStatus :: Lens' GetAccountSummaryResponse Int
+ Amazonka.IAM.Lens: getAccountSummaryResponse_summaryMap :: Lens' GetAccountSummaryResponse (Maybe (HashMap SummaryKeyType Int))
+ Amazonka.IAM.Lens: getContextKeysForCustomPolicy_policyInputList :: Lens' GetContextKeysForCustomPolicy [Text]
+ Amazonka.IAM.Lens: getContextKeysForPolicyResponse_contextKeyNames :: Lens' GetContextKeysForPolicyResponse (Maybe [Text])
+ Amazonka.IAM.Lens: getContextKeysForPrincipalPolicy_policyInputList :: Lens' GetContextKeysForPrincipalPolicy (Maybe [Text])
+ Amazonka.IAM.Lens: getContextKeysForPrincipalPolicy_policySourceArn :: Lens' GetContextKeysForPrincipalPolicy Text
+ Amazonka.IAM.Lens: getCredentialReportResponse_content :: Lens' GetCredentialReportResponse (Maybe ByteString)
+ Amazonka.IAM.Lens: getCredentialReportResponse_generatedTime :: Lens' GetCredentialReportResponse (Maybe UTCTime)
+ Amazonka.IAM.Lens: getCredentialReportResponse_httpStatus :: Lens' GetCredentialReportResponse Int
+ Amazonka.IAM.Lens: getCredentialReportResponse_reportFormat :: Lens' GetCredentialReportResponse (Maybe ReportFormatType)
+ Amazonka.IAM.Lens: getGroupPolicyResponse_groupName :: Lens' GetGroupPolicyResponse Text
+ Amazonka.IAM.Lens: getGroupPolicyResponse_httpStatus :: Lens' GetGroupPolicyResponse Int
+ Amazonka.IAM.Lens: getGroupPolicyResponse_policyDocument :: Lens' GetGroupPolicyResponse Text
+ Amazonka.IAM.Lens: getGroupPolicyResponse_policyName :: Lens' GetGroupPolicyResponse Text
+ Amazonka.IAM.Lens: getGroupPolicy_groupName :: Lens' GetGroupPolicy Text
+ Amazonka.IAM.Lens: getGroupPolicy_policyName :: Lens' GetGroupPolicy Text
+ Amazonka.IAM.Lens: getGroupResponse_group :: Lens' GetGroupResponse Group
+ Amazonka.IAM.Lens: getGroupResponse_httpStatus :: Lens' GetGroupResponse Int
+ Amazonka.IAM.Lens: getGroupResponse_isTruncated :: Lens' GetGroupResponse (Maybe Bool)
+ Amazonka.IAM.Lens: getGroupResponse_marker :: Lens' GetGroupResponse (Maybe Text)
+ Amazonka.IAM.Lens: getGroupResponse_users :: Lens' GetGroupResponse [User]
+ Amazonka.IAM.Lens: getGroup_groupName :: Lens' GetGroup Text
+ Amazonka.IAM.Lens: getGroup_marker :: Lens' GetGroup (Maybe Text)
+ Amazonka.IAM.Lens: getGroup_maxItems :: Lens' GetGroup (Maybe Natural)
+ Amazonka.IAM.Lens: getInstanceProfileResponse_httpStatus :: Lens' GetInstanceProfileResponse Int
+ Amazonka.IAM.Lens: getInstanceProfileResponse_instanceProfile :: Lens' GetInstanceProfileResponse InstanceProfile
+ Amazonka.IAM.Lens: getInstanceProfile_instanceProfileName :: Lens' GetInstanceProfile Text
+ Amazonka.IAM.Lens: getLoginProfileResponse_httpStatus :: Lens' GetLoginProfileResponse Int
+ Amazonka.IAM.Lens: getLoginProfileResponse_loginProfile :: Lens' GetLoginProfileResponse LoginProfile
+ Amazonka.IAM.Lens: getLoginProfile_userName :: Lens' GetLoginProfile Text
+ Amazonka.IAM.Lens: getOpenIDConnectProviderResponse_clientIDList :: Lens' GetOpenIDConnectProviderResponse (Maybe [Text])
+ Amazonka.IAM.Lens: getOpenIDConnectProviderResponse_createDate :: Lens' GetOpenIDConnectProviderResponse (Maybe UTCTime)
+ Amazonka.IAM.Lens: getOpenIDConnectProviderResponse_httpStatus :: Lens' GetOpenIDConnectProviderResponse Int
+ Amazonka.IAM.Lens: getOpenIDConnectProviderResponse_tags :: Lens' GetOpenIDConnectProviderResponse (Maybe [Tag])
+ Amazonka.IAM.Lens: getOpenIDConnectProviderResponse_thumbprintList :: Lens' GetOpenIDConnectProviderResponse (Maybe [Text])
+ Amazonka.IAM.Lens: getOpenIDConnectProviderResponse_url :: Lens' GetOpenIDConnectProviderResponse (Maybe Text)
+ Amazonka.IAM.Lens: getOpenIDConnectProvider_openIDConnectProviderArn :: Lens' GetOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_accessDetails :: Lens' GetOrganizationsAccessReportResponse (Maybe [AccessDetail])
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_errorDetails :: Lens' GetOrganizationsAccessReportResponse (Maybe ErrorDetails)
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_httpStatus :: Lens' GetOrganizationsAccessReportResponse Int
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_isTruncated :: Lens' GetOrganizationsAccessReportResponse (Maybe Bool)
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_jobCompletionDate :: Lens' GetOrganizationsAccessReportResponse (Maybe UTCTime)
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_jobCreationDate :: Lens' GetOrganizationsAccessReportResponse UTCTime
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_jobStatus :: Lens' GetOrganizationsAccessReportResponse JobStatusType
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_marker :: Lens' GetOrganizationsAccessReportResponse (Maybe Text)
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_numberOfServicesAccessible :: Lens' GetOrganizationsAccessReportResponse (Maybe Int)
+ Amazonka.IAM.Lens: getOrganizationsAccessReportResponse_numberOfServicesNotAccessed :: Lens' GetOrganizationsAccessReportResponse (Maybe Int)
+ Amazonka.IAM.Lens: getOrganizationsAccessReport_jobId :: Lens' GetOrganizationsAccessReport Text
+ Amazonka.IAM.Lens: getOrganizationsAccessReport_marker :: Lens' GetOrganizationsAccessReport (Maybe Text)
+ Amazonka.IAM.Lens: getOrganizationsAccessReport_maxItems :: Lens' GetOrganizationsAccessReport (Maybe Natural)
+ Amazonka.IAM.Lens: getOrganizationsAccessReport_sortKey :: Lens' GetOrganizationsAccessReport (Maybe SortKeyType)
+ Amazonka.IAM.Lens: getPolicyResponse_httpStatus :: Lens' GetPolicyResponse Int
+ Amazonka.IAM.Lens: getPolicyResponse_policy :: Lens' GetPolicyResponse (Maybe Policy)
+ Amazonka.IAM.Lens: getPolicyVersionResponse_httpStatus :: Lens' GetPolicyVersionResponse Int
+ Amazonka.IAM.Lens: getPolicyVersionResponse_policyVersion :: Lens' GetPolicyVersionResponse (Maybe PolicyVersion)
+ Amazonka.IAM.Lens: getPolicyVersion_policyArn :: Lens' GetPolicyVersion Text
+ Amazonka.IAM.Lens: getPolicyVersion_versionId :: Lens' GetPolicyVersion Text
+ Amazonka.IAM.Lens: getPolicy_policyArn :: Lens' GetPolicy Text
+ Amazonka.IAM.Lens: getRolePolicyResponse_httpStatus :: Lens' GetRolePolicyResponse Int
+ Amazonka.IAM.Lens: getRolePolicyResponse_policyDocument :: Lens' GetRolePolicyResponse Text
+ Amazonka.IAM.Lens: getRolePolicyResponse_policyName :: Lens' GetRolePolicyResponse Text
+ Amazonka.IAM.Lens: getRolePolicyResponse_roleName :: Lens' GetRolePolicyResponse Text
+ Amazonka.IAM.Lens: getRolePolicy_policyName :: Lens' GetRolePolicy Text
+ Amazonka.IAM.Lens: getRolePolicy_roleName :: Lens' GetRolePolicy Text
+ Amazonka.IAM.Lens: getRoleResponse_httpStatus :: Lens' GetRoleResponse Int
+ Amazonka.IAM.Lens: getRoleResponse_role :: Lens' GetRoleResponse Role
+ Amazonka.IAM.Lens: getRole_roleName :: Lens' GetRole Text
+ Amazonka.IAM.Lens: getSAMLProviderResponse_createDate :: Lens' GetSAMLProviderResponse (Maybe UTCTime)
+ Amazonka.IAM.Lens: getSAMLProviderResponse_httpStatus :: Lens' GetSAMLProviderResponse Int
+ Amazonka.IAM.Lens: getSAMLProviderResponse_sAMLMetadataDocument :: Lens' GetSAMLProviderResponse (Maybe Text)
+ Amazonka.IAM.Lens: getSAMLProviderResponse_tags :: Lens' GetSAMLProviderResponse (Maybe [Tag])
+ Amazonka.IAM.Lens: getSAMLProviderResponse_validUntil :: Lens' GetSAMLProviderResponse (Maybe UTCTime)
+ Amazonka.IAM.Lens: getSAMLProvider_sAMLProviderArn :: Lens' GetSAMLProvider Text
+ Amazonka.IAM.Lens: getSSHPublicKeyResponse_httpStatus :: Lens' GetSSHPublicKeyResponse Int
+ Amazonka.IAM.Lens: getSSHPublicKeyResponse_sSHPublicKey :: Lens' GetSSHPublicKeyResponse (Maybe SSHPublicKey)
+ Amazonka.IAM.Lens: getSSHPublicKey_encoding :: Lens' GetSSHPublicKey EncodingType
+ Amazonka.IAM.Lens: getSSHPublicKey_sSHPublicKeyId :: Lens' GetSSHPublicKey Text
+ Amazonka.IAM.Lens: getSSHPublicKey_userName :: Lens' GetSSHPublicKey Text
+ Amazonka.IAM.Lens: getServerCertificateResponse_httpStatus :: Lens' GetServerCertificateResponse Int
+ Amazonka.IAM.Lens: getServerCertificateResponse_serverCertificate :: Lens' GetServerCertificateResponse ServerCertificate
+ Amazonka.IAM.Lens: getServerCertificate_serverCertificateName :: Lens' GetServerCertificate Text
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_error :: Lens' GetServiceLastAccessedDetailsResponse (Maybe ErrorDetails)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_httpStatus :: Lens' GetServiceLastAccessedDetailsResponse Int
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_isTruncated :: Lens' GetServiceLastAccessedDetailsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_jobCompletionDate :: Lens' GetServiceLastAccessedDetailsResponse UTCTime
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_jobCreationDate :: Lens' GetServiceLastAccessedDetailsResponse UTCTime
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_jobStatus :: Lens' GetServiceLastAccessedDetailsResponse JobStatusType
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_jobType :: Lens' GetServiceLastAccessedDetailsResponse (Maybe AccessAdvisorUsageGranularityType)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_marker :: Lens' GetServiceLastAccessedDetailsResponse (Maybe Text)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsResponse_servicesLastAccessed :: Lens' GetServiceLastAccessedDetailsResponse [ServiceLastAccessed]
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntitiesResponse_entityDetailsList :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse [EntityDetails]
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntitiesResponse_error :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Maybe ErrorDetails)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntitiesResponse_httpStatus :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse Int
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntitiesResponse_isTruncated :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntitiesResponse_jobCompletionDate :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse UTCTime
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntitiesResponse_jobCreationDate :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse UTCTime
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntitiesResponse_jobStatus :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse JobStatusType
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntitiesResponse_marker :: Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Maybe Text)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntities_jobId :: Lens' GetServiceLastAccessedDetailsWithEntities Text
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntities_marker :: Lens' GetServiceLastAccessedDetailsWithEntities (Maybe Text)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntities_maxItems :: Lens' GetServiceLastAccessedDetailsWithEntities (Maybe Natural)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetailsWithEntities_serviceNamespace :: Lens' GetServiceLastAccessedDetailsWithEntities Text
+ Amazonka.IAM.Lens: getServiceLastAccessedDetails_jobId :: Lens' GetServiceLastAccessedDetails Text
+ Amazonka.IAM.Lens: getServiceLastAccessedDetails_marker :: Lens' GetServiceLastAccessedDetails (Maybe Text)
+ Amazonka.IAM.Lens: getServiceLastAccessedDetails_maxItems :: Lens' GetServiceLastAccessedDetails (Maybe Natural)
+ Amazonka.IAM.Lens: getServiceLinkedRoleDeletionStatusResponse_httpStatus :: Lens' GetServiceLinkedRoleDeletionStatusResponse Int
+ Amazonka.IAM.Lens: getServiceLinkedRoleDeletionStatusResponse_reason :: Lens' GetServiceLinkedRoleDeletionStatusResponse (Maybe DeletionTaskFailureReasonType)
+ Amazonka.IAM.Lens: getServiceLinkedRoleDeletionStatusResponse_status :: Lens' GetServiceLinkedRoleDeletionStatusResponse DeletionTaskStatusType
+ Amazonka.IAM.Lens: getServiceLinkedRoleDeletionStatus_deletionTaskId :: Lens' GetServiceLinkedRoleDeletionStatus Text
+ Amazonka.IAM.Lens: getUserPolicyResponse_httpStatus :: Lens' GetUserPolicyResponse Int
+ Amazonka.IAM.Lens: getUserPolicyResponse_policyDocument :: Lens' GetUserPolicyResponse Text
+ Amazonka.IAM.Lens: getUserPolicyResponse_policyName :: Lens' GetUserPolicyResponse Text
+ Amazonka.IAM.Lens: getUserPolicyResponse_userName :: Lens' GetUserPolicyResponse Text
+ Amazonka.IAM.Lens: getUserPolicy_policyName :: Lens' GetUserPolicy Text
+ Amazonka.IAM.Lens: getUserPolicy_userName :: Lens' GetUserPolicy Text
+ Amazonka.IAM.Lens: getUserResponse_httpStatus :: Lens' GetUserResponse Int
+ Amazonka.IAM.Lens: getUserResponse_user :: Lens' GetUserResponse User
+ Amazonka.IAM.Lens: getUser_userName :: Lens' GetUser (Maybe Text)
+ Amazonka.IAM.Lens: groupDetail_arn :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Lens: groupDetail_attachedManagedPolicies :: Lens' GroupDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Lens: groupDetail_createDate :: Lens' GroupDetail (Maybe UTCTime)
+ Amazonka.IAM.Lens: groupDetail_groupId :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Lens: groupDetail_groupName :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Lens: groupDetail_groupPolicyList :: Lens' GroupDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Lens: groupDetail_path :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Lens: group_arn :: Lens' Group Text
+ Amazonka.IAM.Lens: group_createDate :: Lens' Group UTCTime
+ Amazonka.IAM.Lens: group_groupId :: Lens' Group Text
+ Amazonka.IAM.Lens: group_groupName :: Lens' Group Text
+ Amazonka.IAM.Lens: group_path :: Lens' Group Text
+ Amazonka.IAM.Lens: instanceProfile_arn :: Lens' InstanceProfile Text
+ Amazonka.IAM.Lens: instanceProfile_createDate :: Lens' InstanceProfile UTCTime
+ Amazonka.IAM.Lens: instanceProfile_instanceProfileId :: Lens' InstanceProfile Text
+ Amazonka.IAM.Lens: instanceProfile_instanceProfileName :: Lens' InstanceProfile Text
+ Amazonka.IAM.Lens: instanceProfile_path :: Lens' InstanceProfile Text
+ Amazonka.IAM.Lens: instanceProfile_roles :: Lens' InstanceProfile [Role]
+ Amazonka.IAM.Lens: instanceProfile_tags :: Lens' InstanceProfile (Maybe [Tag])
+ Amazonka.IAM.Lens: listAccessKeysResponse_accessKeyMetadata :: Lens' ListAccessKeysResponse [AccessKeyMetadata]
+ Amazonka.IAM.Lens: listAccessKeysResponse_httpStatus :: Lens' ListAccessKeysResponse Int
+ Amazonka.IAM.Lens: listAccessKeysResponse_isTruncated :: Lens' ListAccessKeysResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listAccessKeysResponse_marker :: Lens' ListAccessKeysResponse (Maybe Text)
+ Amazonka.IAM.Lens: listAccessKeys_marker :: Lens' ListAccessKeys (Maybe Text)
+ Amazonka.IAM.Lens: listAccessKeys_maxItems :: Lens' ListAccessKeys (Maybe Natural)
+ Amazonka.IAM.Lens: listAccessKeys_userName :: Lens' ListAccessKeys (Maybe Text)
+ Amazonka.IAM.Lens: listAccountAliasesResponse_accountAliases :: Lens' ListAccountAliasesResponse [Text]
+ Amazonka.IAM.Lens: listAccountAliasesResponse_httpStatus :: Lens' ListAccountAliasesResponse Int
+ Amazonka.IAM.Lens: listAccountAliasesResponse_isTruncated :: Lens' ListAccountAliasesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listAccountAliasesResponse_marker :: Lens' ListAccountAliasesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listAccountAliases_marker :: Lens' ListAccountAliases (Maybe Text)
+ Amazonka.IAM.Lens: listAccountAliases_maxItems :: Lens' ListAccountAliases (Maybe Natural)
+ Amazonka.IAM.Lens: listAttachedGroupPoliciesResponse_attachedPolicies :: Lens' ListAttachedGroupPoliciesResponse (Maybe [AttachedPolicy])
+ Amazonka.IAM.Lens: listAttachedGroupPoliciesResponse_httpStatus :: Lens' ListAttachedGroupPoliciesResponse Int
+ Amazonka.IAM.Lens: listAttachedGroupPoliciesResponse_isTruncated :: Lens' ListAttachedGroupPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listAttachedGroupPoliciesResponse_marker :: Lens' ListAttachedGroupPoliciesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedGroupPolicies_groupName :: Lens' ListAttachedGroupPolicies Text
+ Amazonka.IAM.Lens: listAttachedGroupPolicies_marker :: Lens' ListAttachedGroupPolicies (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedGroupPolicies_maxItems :: Lens' ListAttachedGroupPolicies (Maybe Natural)
+ Amazonka.IAM.Lens: listAttachedGroupPolicies_pathPrefix :: Lens' ListAttachedGroupPolicies (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedRolePoliciesResponse_attachedPolicies :: Lens' ListAttachedRolePoliciesResponse (Maybe [AttachedPolicy])
+ Amazonka.IAM.Lens: listAttachedRolePoliciesResponse_httpStatus :: Lens' ListAttachedRolePoliciesResponse Int
+ Amazonka.IAM.Lens: listAttachedRolePoliciesResponse_isTruncated :: Lens' ListAttachedRolePoliciesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listAttachedRolePoliciesResponse_marker :: Lens' ListAttachedRolePoliciesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedRolePolicies_marker :: Lens' ListAttachedRolePolicies (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedRolePolicies_maxItems :: Lens' ListAttachedRolePolicies (Maybe Natural)
+ Amazonka.IAM.Lens: listAttachedRolePolicies_pathPrefix :: Lens' ListAttachedRolePolicies (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedRolePolicies_roleName :: Lens' ListAttachedRolePolicies Text
+ Amazonka.IAM.Lens: listAttachedUserPoliciesResponse_attachedPolicies :: Lens' ListAttachedUserPoliciesResponse (Maybe [AttachedPolicy])
+ Amazonka.IAM.Lens: listAttachedUserPoliciesResponse_httpStatus :: Lens' ListAttachedUserPoliciesResponse Int
+ Amazonka.IAM.Lens: listAttachedUserPoliciesResponse_isTruncated :: Lens' ListAttachedUserPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listAttachedUserPoliciesResponse_marker :: Lens' ListAttachedUserPoliciesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedUserPolicies_marker :: Lens' ListAttachedUserPolicies (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedUserPolicies_maxItems :: Lens' ListAttachedUserPolicies (Maybe Natural)
+ Amazonka.IAM.Lens: listAttachedUserPolicies_pathPrefix :: Lens' ListAttachedUserPolicies (Maybe Text)
+ Amazonka.IAM.Lens: listAttachedUserPolicies_userName :: Lens' ListAttachedUserPolicies Text
+ Amazonka.IAM.Lens: listEntitiesForPolicyResponse_httpStatus :: Lens' ListEntitiesForPolicyResponse Int
+ Amazonka.IAM.Lens: listEntitiesForPolicyResponse_isTruncated :: Lens' ListEntitiesForPolicyResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listEntitiesForPolicyResponse_marker :: Lens' ListEntitiesForPolicyResponse (Maybe Text)
+ Amazonka.IAM.Lens: listEntitiesForPolicyResponse_policyGroups :: Lens' ListEntitiesForPolicyResponse (Maybe [PolicyGroup])
+ Amazonka.IAM.Lens: listEntitiesForPolicyResponse_policyRoles :: Lens' ListEntitiesForPolicyResponse (Maybe [PolicyRole])
+ Amazonka.IAM.Lens: listEntitiesForPolicyResponse_policyUsers :: Lens' ListEntitiesForPolicyResponse (Maybe [PolicyUser])
+ Amazonka.IAM.Lens: listEntitiesForPolicy_entityFilter :: Lens' ListEntitiesForPolicy (Maybe EntityType)
+ Amazonka.IAM.Lens: listEntitiesForPolicy_marker :: Lens' ListEntitiesForPolicy (Maybe Text)
+ Amazonka.IAM.Lens: listEntitiesForPolicy_maxItems :: Lens' ListEntitiesForPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: listEntitiesForPolicy_pathPrefix :: Lens' ListEntitiesForPolicy (Maybe Text)
+ Amazonka.IAM.Lens: listEntitiesForPolicy_policyArn :: Lens' ListEntitiesForPolicy Text
+ Amazonka.IAM.Lens: listEntitiesForPolicy_policyUsageFilter :: Lens' ListEntitiesForPolicy (Maybe PolicyUsageType)
+ Amazonka.IAM.Lens: listGroupPoliciesResponse_httpStatus :: Lens' ListGroupPoliciesResponse Int
+ Amazonka.IAM.Lens: listGroupPoliciesResponse_isTruncated :: Lens' ListGroupPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listGroupPoliciesResponse_marker :: Lens' ListGroupPoliciesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listGroupPoliciesResponse_policyNames :: Lens' ListGroupPoliciesResponse [Text]
+ Amazonka.IAM.Lens: listGroupPolicies_groupName :: Lens' ListGroupPolicies Text
+ Amazonka.IAM.Lens: listGroupPolicies_marker :: Lens' ListGroupPolicies (Maybe Text)
+ Amazonka.IAM.Lens: listGroupPolicies_maxItems :: Lens' ListGroupPolicies (Maybe Natural)
+ Amazonka.IAM.Lens: listGroupsForUserResponse_groups :: Lens' ListGroupsForUserResponse [Group]
+ Amazonka.IAM.Lens: listGroupsForUserResponse_httpStatus :: Lens' ListGroupsForUserResponse Int
+ Amazonka.IAM.Lens: listGroupsForUserResponse_isTruncated :: Lens' ListGroupsForUserResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listGroupsForUserResponse_marker :: Lens' ListGroupsForUserResponse (Maybe Text)
+ Amazonka.IAM.Lens: listGroupsForUser_marker :: Lens' ListGroupsForUser (Maybe Text)
+ Amazonka.IAM.Lens: listGroupsForUser_maxItems :: Lens' ListGroupsForUser (Maybe Natural)
+ Amazonka.IAM.Lens: listGroupsForUser_userName :: Lens' ListGroupsForUser Text
+ Amazonka.IAM.Lens: listGroupsResponse_groups :: Lens' ListGroupsResponse [Group]
+ Amazonka.IAM.Lens: listGroupsResponse_httpStatus :: Lens' ListGroupsResponse Int
+ Amazonka.IAM.Lens: listGroupsResponse_isTruncated :: Lens' ListGroupsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listGroupsResponse_marker :: Lens' ListGroupsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listGroups_marker :: Lens' ListGroups (Maybe Text)
+ Amazonka.IAM.Lens: listGroups_maxItems :: Lens' ListGroups (Maybe Natural)
+ Amazonka.IAM.Lens: listGroups_pathPrefix :: Lens' ListGroups (Maybe Text)
+ Amazonka.IAM.Lens: listInstanceProfileTagsResponse_httpStatus :: Lens' ListInstanceProfileTagsResponse Int
+ Amazonka.IAM.Lens: listInstanceProfileTagsResponse_isTruncated :: Lens' ListInstanceProfileTagsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listInstanceProfileTagsResponse_marker :: Lens' ListInstanceProfileTagsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listInstanceProfileTagsResponse_tags :: Lens' ListInstanceProfileTagsResponse [Tag]
+ Amazonka.IAM.Lens: listInstanceProfileTags_instanceProfileName :: Lens' ListInstanceProfileTags Text
+ Amazonka.IAM.Lens: listInstanceProfileTags_marker :: Lens' ListInstanceProfileTags (Maybe Text)
+ Amazonka.IAM.Lens: listInstanceProfileTags_maxItems :: Lens' ListInstanceProfileTags (Maybe Natural)
+ Amazonka.IAM.Lens: listInstanceProfilesForRoleResponse_httpStatus :: Lens' ListInstanceProfilesForRoleResponse Int
+ Amazonka.IAM.Lens: listInstanceProfilesForRoleResponse_instanceProfiles :: Lens' ListInstanceProfilesForRoleResponse [InstanceProfile]
+ Amazonka.IAM.Lens: listInstanceProfilesForRoleResponse_isTruncated :: Lens' ListInstanceProfilesForRoleResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listInstanceProfilesForRoleResponse_marker :: Lens' ListInstanceProfilesForRoleResponse (Maybe Text)
+ Amazonka.IAM.Lens: listInstanceProfilesForRole_marker :: Lens' ListInstanceProfilesForRole (Maybe Text)
+ Amazonka.IAM.Lens: listInstanceProfilesForRole_maxItems :: Lens' ListInstanceProfilesForRole (Maybe Natural)
+ Amazonka.IAM.Lens: listInstanceProfilesForRole_roleName :: Lens' ListInstanceProfilesForRole Text
+ Amazonka.IAM.Lens: listInstanceProfilesResponse_httpStatus :: Lens' ListInstanceProfilesResponse Int
+ Amazonka.IAM.Lens: listInstanceProfilesResponse_instanceProfiles :: Lens' ListInstanceProfilesResponse [InstanceProfile]
+ Amazonka.IAM.Lens: listInstanceProfilesResponse_isTruncated :: Lens' ListInstanceProfilesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listInstanceProfilesResponse_marker :: Lens' ListInstanceProfilesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listInstanceProfiles_marker :: Lens' ListInstanceProfiles (Maybe Text)
+ Amazonka.IAM.Lens: listInstanceProfiles_maxItems :: Lens' ListInstanceProfiles (Maybe Natural)
+ Amazonka.IAM.Lens: listInstanceProfiles_pathPrefix :: Lens' ListInstanceProfiles (Maybe Text)
+ Amazonka.IAM.Lens: listMFADeviceTagsResponse_httpStatus :: Lens' ListMFADeviceTagsResponse Int
+ Amazonka.IAM.Lens: listMFADeviceTagsResponse_isTruncated :: Lens' ListMFADeviceTagsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listMFADeviceTagsResponse_marker :: Lens' ListMFADeviceTagsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listMFADeviceTagsResponse_tags :: Lens' ListMFADeviceTagsResponse [Tag]
+ Amazonka.IAM.Lens: listMFADeviceTags_marker :: Lens' ListMFADeviceTags (Maybe Text)
+ Amazonka.IAM.Lens: listMFADeviceTags_maxItems :: Lens' ListMFADeviceTags (Maybe Natural)
+ Amazonka.IAM.Lens: listMFADeviceTags_serialNumber :: Lens' ListMFADeviceTags Text
+ Amazonka.IAM.Lens: listMFADevicesResponse_httpStatus :: Lens' ListMFADevicesResponse Int
+ Amazonka.IAM.Lens: listMFADevicesResponse_isTruncated :: Lens' ListMFADevicesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listMFADevicesResponse_marker :: Lens' ListMFADevicesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listMFADevicesResponse_mfaDevices :: Lens' ListMFADevicesResponse [MFADevice]
+ Amazonka.IAM.Lens: listMFADevices_marker :: Lens' ListMFADevices (Maybe Text)
+ Amazonka.IAM.Lens: listMFADevices_maxItems :: Lens' ListMFADevices (Maybe Natural)
+ Amazonka.IAM.Lens: listMFADevices_userName :: Lens' ListMFADevices (Maybe Text)
+ Amazonka.IAM.Lens: listOpenIDConnectProviderTagsResponse_httpStatus :: Lens' ListOpenIDConnectProviderTagsResponse Int
+ Amazonka.IAM.Lens: listOpenIDConnectProviderTagsResponse_isTruncated :: Lens' ListOpenIDConnectProviderTagsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listOpenIDConnectProviderTagsResponse_marker :: Lens' ListOpenIDConnectProviderTagsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listOpenIDConnectProviderTagsResponse_tags :: Lens' ListOpenIDConnectProviderTagsResponse [Tag]
+ Amazonka.IAM.Lens: listOpenIDConnectProviderTags_marker :: Lens' ListOpenIDConnectProviderTags (Maybe Text)
+ Amazonka.IAM.Lens: listOpenIDConnectProviderTags_maxItems :: Lens' ListOpenIDConnectProviderTags (Maybe Natural)
+ Amazonka.IAM.Lens: listOpenIDConnectProviderTags_openIDConnectProviderArn :: Lens' ListOpenIDConnectProviderTags Text
+ Amazonka.IAM.Lens: listOpenIDConnectProvidersResponse_httpStatus :: Lens' ListOpenIDConnectProvidersResponse Int
+ Amazonka.IAM.Lens: listOpenIDConnectProvidersResponse_openIDConnectProviderList :: Lens' ListOpenIDConnectProvidersResponse (Maybe [OpenIDConnectProviderListEntry])
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccessEntry_policies :: Lens' ListPoliciesGrantingServiceAccessEntry (Maybe [PolicyGrantingServiceAccess])
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccessEntry_serviceNamespace :: Lens' ListPoliciesGrantingServiceAccessEntry (Maybe Text)
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccessResponse_httpStatus :: Lens' ListPoliciesGrantingServiceAccessResponse Int
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccessResponse_isTruncated :: Lens' ListPoliciesGrantingServiceAccessResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccessResponse_marker :: Lens' ListPoliciesGrantingServiceAccessResponse (Maybe Text)
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccessResponse_policiesGrantingServiceAccess :: Lens' ListPoliciesGrantingServiceAccessResponse [ListPoliciesGrantingServiceAccessEntry]
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccess_arn :: Lens' ListPoliciesGrantingServiceAccess Text
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccess_marker :: Lens' ListPoliciesGrantingServiceAccess (Maybe Text)
+ Amazonka.IAM.Lens: listPoliciesGrantingServiceAccess_serviceNamespaces :: Lens' ListPoliciesGrantingServiceAccess (NonEmpty Text)
+ Amazonka.IAM.Lens: listPoliciesResponse_httpStatus :: Lens' ListPoliciesResponse Int
+ Amazonka.IAM.Lens: listPoliciesResponse_isTruncated :: Lens' ListPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listPoliciesResponse_marker :: Lens' ListPoliciesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listPoliciesResponse_policies :: Lens' ListPoliciesResponse (Maybe [Policy])
+ Amazonka.IAM.Lens: listPolicies_marker :: Lens' ListPolicies (Maybe Text)
+ Amazonka.IAM.Lens: listPolicies_maxItems :: Lens' ListPolicies (Maybe Natural)
+ Amazonka.IAM.Lens: listPolicies_onlyAttached :: Lens' ListPolicies (Maybe Bool)
+ Amazonka.IAM.Lens: listPolicies_pathPrefix :: Lens' ListPolicies (Maybe Text)
+ Amazonka.IAM.Lens: listPolicies_policyUsageFilter :: Lens' ListPolicies (Maybe PolicyUsageType)
+ Amazonka.IAM.Lens: listPolicies_scope :: Lens' ListPolicies (Maybe PolicyScopeType)
+ Amazonka.IAM.Lens: listPolicyTagsResponse_httpStatus :: Lens' ListPolicyTagsResponse Int
+ Amazonka.IAM.Lens: listPolicyTagsResponse_isTruncated :: Lens' ListPolicyTagsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listPolicyTagsResponse_marker :: Lens' ListPolicyTagsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listPolicyTagsResponse_tags :: Lens' ListPolicyTagsResponse [Tag]
+ Amazonka.IAM.Lens: listPolicyTags_marker :: Lens' ListPolicyTags (Maybe Text)
+ Amazonka.IAM.Lens: listPolicyTags_maxItems :: Lens' ListPolicyTags (Maybe Natural)
+ Amazonka.IAM.Lens: listPolicyTags_policyArn :: Lens' ListPolicyTags Text
+ Amazonka.IAM.Lens: listPolicyVersionsResponse_httpStatus :: Lens' ListPolicyVersionsResponse Int
+ Amazonka.IAM.Lens: listPolicyVersionsResponse_isTruncated :: Lens' ListPolicyVersionsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listPolicyVersionsResponse_marker :: Lens' ListPolicyVersionsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listPolicyVersionsResponse_versions :: Lens' ListPolicyVersionsResponse (Maybe [PolicyVersion])
+ Amazonka.IAM.Lens: listPolicyVersions_marker :: Lens' ListPolicyVersions (Maybe Text)
+ Amazonka.IAM.Lens: listPolicyVersions_maxItems :: Lens' ListPolicyVersions (Maybe Natural)
+ Amazonka.IAM.Lens: listPolicyVersions_policyArn :: Lens' ListPolicyVersions Text
+ Amazonka.IAM.Lens: listRolePoliciesResponse_httpStatus :: Lens' ListRolePoliciesResponse Int
+ Amazonka.IAM.Lens: listRolePoliciesResponse_isTruncated :: Lens' ListRolePoliciesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listRolePoliciesResponse_marker :: Lens' ListRolePoliciesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listRolePoliciesResponse_policyNames :: Lens' ListRolePoliciesResponse [Text]
+ Amazonka.IAM.Lens: listRolePolicies_marker :: Lens' ListRolePolicies (Maybe Text)
+ Amazonka.IAM.Lens: listRolePolicies_maxItems :: Lens' ListRolePolicies (Maybe Natural)
+ Amazonka.IAM.Lens: listRolePolicies_roleName :: Lens' ListRolePolicies Text
+ Amazonka.IAM.Lens: listRoleTagsResponse_httpStatus :: Lens' ListRoleTagsResponse Int
+ Amazonka.IAM.Lens: listRoleTagsResponse_isTruncated :: Lens' ListRoleTagsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listRoleTagsResponse_marker :: Lens' ListRoleTagsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listRoleTagsResponse_tags :: Lens' ListRoleTagsResponse [Tag]
+ Amazonka.IAM.Lens: listRoleTags_marker :: Lens' ListRoleTags (Maybe Text)
+ Amazonka.IAM.Lens: listRoleTags_maxItems :: Lens' ListRoleTags (Maybe Natural)
+ Amazonka.IAM.Lens: listRoleTags_roleName :: Lens' ListRoleTags Text
+ Amazonka.IAM.Lens: listRolesResponse_httpStatus :: Lens' ListRolesResponse Int
+ Amazonka.IAM.Lens: listRolesResponse_isTruncated :: Lens' ListRolesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listRolesResponse_marker :: Lens' ListRolesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listRolesResponse_roles :: Lens' ListRolesResponse [Role]
+ Amazonka.IAM.Lens: listRoles_marker :: Lens' ListRoles (Maybe Text)
+ Amazonka.IAM.Lens: listRoles_maxItems :: Lens' ListRoles (Maybe Natural)
+ Amazonka.IAM.Lens: listRoles_pathPrefix :: Lens' ListRoles (Maybe Text)
+ Amazonka.IAM.Lens: listSAMLProviderTagsResponse_httpStatus :: Lens' ListSAMLProviderTagsResponse Int
+ Amazonka.IAM.Lens: listSAMLProviderTagsResponse_isTruncated :: Lens' ListSAMLProviderTagsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listSAMLProviderTagsResponse_marker :: Lens' ListSAMLProviderTagsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listSAMLProviderTagsResponse_tags :: Lens' ListSAMLProviderTagsResponse [Tag]
+ Amazonka.IAM.Lens: listSAMLProviderTags_marker :: Lens' ListSAMLProviderTags (Maybe Text)
+ Amazonka.IAM.Lens: listSAMLProviderTags_maxItems :: Lens' ListSAMLProviderTags (Maybe Natural)
+ Amazonka.IAM.Lens: listSAMLProviderTags_sAMLProviderArn :: Lens' ListSAMLProviderTags Text
+ Amazonka.IAM.Lens: listSAMLProvidersResponse_httpStatus :: Lens' ListSAMLProvidersResponse Int
+ Amazonka.IAM.Lens: listSAMLProvidersResponse_sAMLProviderList :: Lens' ListSAMLProvidersResponse (Maybe [SAMLProviderListEntry])
+ Amazonka.IAM.Lens: listSSHPublicKeysResponse_httpStatus :: Lens' ListSSHPublicKeysResponse Int
+ Amazonka.IAM.Lens: listSSHPublicKeysResponse_isTruncated :: Lens' ListSSHPublicKeysResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listSSHPublicKeysResponse_marker :: Lens' ListSSHPublicKeysResponse (Maybe Text)
+ Amazonka.IAM.Lens: listSSHPublicKeysResponse_sSHPublicKeys :: Lens' ListSSHPublicKeysResponse (Maybe [SSHPublicKeyMetadata])
+ Amazonka.IAM.Lens: listSSHPublicKeys_marker :: Lens' ListSSHPublicKeys (Maybe Text)
+ Amazonka.IAM.Lens: listSSHPublicKeys_maxItems :: Lens' ListSSHPublicKeys (Maybe Natural)
+ Amazonka.IAM.Lens: listSSHPublicKeys_userName :: Lens' ListSSHPublicKeys (Maybe Text)
+ Amazonka.IAM.Lens: listServerCertificateTagsResponse_httpStatus :: Lens' ListServerCertificateTagsResponse Int
+ Amazonka.IAM.Lens: listServerCertificateTagsResponse_isTruncated :: Lens' ListServerCertificateTagsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listServerCertificateTagsResponse_marker :: Lens' ListServerCertificateTagsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listServerCertificateTagsResponse_tags :: Lens' ListServerCertificateTagsResponse [Tag]
+ Amazonka.IAM.Lens: listServerCertificateTags_marker :: Lens' ListServerCertificateTags (Maybe Text)
+ Amazonka.IAM.Lens: listServerCertificateTags_maxItems :: Lens' ListServerCertificateTags (Maybe Natural)
+ Amazonka.IAM.Lens: listServerCertificateTags_serverCertificateName :: Lens' ListServerCertificateTags Text
+ Amazonka.IAM.Lens: listServerCertificatesResponse_httpStatus :: Lens' ListServerCertificatesResponse Int
+ Amazonka.IAM.Lens: listServerCertificatesResponse_isTruncated :: Lens' ListServerCertificatesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listServerCertificatesResponse_marker :: Lens' ListServerCertificatesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listServerCertificatesResponse_serverCertificateMetadataList :: Lens' ListServerCertificatesResponse [ServerCertificateMetadata]
+ Amazonka.IAM.Lens: listServerCertificates_marker :: Lens' ListServerCertificates (Maybe Text)
+ Amazonka.IAM.Lens: listServerCertificates_maxItems :: Lens' ListServerCertificates (Maybe Natural)
+ Amazonka.IAM.Lens: listServerCertificates_pathPrefix :: Lens' ListServerCertificates (Maybe Text)
+ Amazonka.IAM.Lens: listServiceSpecificCredentialsResponse_httpStatus :: Lens' ListServiceSpecificCredentialsResponse Int
+ Amazonka.IAM.Lens: listServiceSpecificCredentialsResponse_serviceSpecificCredentials :: Lens' ListServiceSpecificCredentialsResponse (Maybe [ServiceSpecificCredentialMetadata])
+ Amazonka.IAM.Lens: listServiceSpecificCredentials_serviceName :: Lens' ListServiceSpecificCredentials (Maybe Text)
+ Amazonka.IAM.Lens: listServiceSpecificCredentials_userName :: Lens' ListServiceSpecificCredentials (Maybe Text)
+ Amazonka.IAM.Lens: listSigningCertificatesResponse_certificates :: Lens' ListSigningCertificatesResponse [SigningCertificate]
+ Amazonka.IAM.Lens: listSigningCertificatesResponse_httpStatus :: Lens' ListSigningCertificatesResponse Int
+ Amazonka.IAM.Lens: listSigningCertificatesResponse_isTruncated :: Lens' ListSigningCertificatesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listSigningCertificatesResponse_marker :: Lens' ListSigningCertificatesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listSigningCertificates_marker :: Lens' ListSigningCertificates (Maybe Text)
+ Amazonka.IAM.Lens: listSigningCertificates_maxItems :: Lens' ListSigningCertificates (Maybe Natural)
+ Amazonka.IAM.Lens: listSigningCertificates_userName :: Lens' ListSigningCertificates (Maybe Text)
+ Amazonka.IAM.Lens: listUserPoliciesResponse_httpStatus :: Lens' ListUserPoliciesResponse Int
+ Amazonka.IAM.Lens: listUserPoliciesResponse_isTruncated :: Lens' ListUserPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listUserPoliciesResponse_marker :: Lens' ListUserPoliciesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listUserPoliciesResponse_policyNames :: Lens' ListUserPoliciesResponse [Text]
+ Amazonka.IAM.Lens: listUserPolicies_marker :: Lens' ListUserPolicies (Maybe Text)
+ Amazonka.IAM.Lens: listUserPolicies_maxItems :: Lens' ListUserPolicies (Maybe Natural)
+ Amazonka.IAM.Lens: listUserPolicies_userName :: Lens' ListUserPolicies Text
+ Amazonka.IAM.Lens: listUserTagsResponse_httpStatus :: Lens' ListUserTagsResponse Int
+ Amazonka.IAM.Lens: listUserTagsResponse_isTruncated :: Lens' ListUserTagsResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listUserTagsResponse_marker :: Lens' ListUserTagsResponse (Maybe Text)
+ Amazonka.IAM.Lens: listUserTagsResponse_tags :: Lens' ListUserTagsResponse [Tag]
+ Amazonka.IAM.Lens: listUserTags_marker :: Lens' ListUserTags (Maybe Text)
+ Amazonka.IAM.Lens: listUserTags_maxItems :: Lens' ListUserTags (Maybe Natural)
+ Amazonka.IAM.Lens: listUserTags_userName :: Lens' ListUserTags Text
+ Amazonka.IAM.Lens: listUsersResponse_httpStatus :: Lens' ListUsersResponse Int
+ Amazonka.IAM.Lens: listUsersResponse_isTruncated :: Lens' ListUsersResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listUsersResponse_marker :: Lens' ListUsersResponse (Maybe Text)
+ Amazonka.IAM.Lens: listUsersResponse_users :: Lens' ListUsersResponse [User]
+ Amazonka.IAM.Lens: listUsers_marker :: Lens' ListUsers (Maybe Text)
+ Amazonka.IAM.Lens: listUsers_maxItems :: Lens' ListUsers (Maybe Natural)
+ Amazonka.IAM.Lens: listUsers_pathPrefix :: Lens' ListUsers (Maybe Text)
+ Amazonka.IAM.Lens: listVirtualMFADevicesResponse_httpStatus :: Lens' ListVirtualMFADevicesResponse Int
+ Amazonka.IAM.Lens: listVirtualMFADevicesResponse_isTruncated :: Lens' ListVirtualMFADevicesResponse (Maybe Bool)
+ Amazonka.IAM.Lens: listVirtualMFADevicesResponse_marker :: Lens' ListVirtualMFADevicesResponse (Maybe Text)
+ Amazonka.IAM.Lens: listVirtualMFADevicesResponse_virtualMFADevices :: Lens' ListVirtualMFADevicesResponse [VirtualMFADevice]
+ Amazonka.IAM.Lens: listVirtualMFADevices_assignmentStatus :: Lens' ListVirtualMFADevices (Maybe AssignmentStatusType)
+ Amazonka.IAM.Lens: listVirtualMFADevices_marker :: Lens' ListVirtualMFADevices (Maybe Text)
+ Amazonka.IAM.Lens: listVirtualMFADevices_maxItems :: Lens' ListVirtualMFADevices (Maybe Natural)
+ Amazonka.IAM.Lens: loginProfile_createDate :: Lens' LoginProfile UTCTime
+ Amazonka.IAM.Lens: loginProfile_passwordResetRequired :: Lens' LoginProfile (Maybe Bool)
+ Amazonka.IAM.Lens: loginProfile_userName :: Lens' LoginProfile Text
+ Amazonka.IAM.Lens: managedPolicyDetail_arn :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Lens: managedPolicyDetail_attachmentCount :: Lens' ManagedPolicyDetail (Maybe Int)
+ Amazonka.IAM.Lens: managedPolicyDetail_createDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
+ Amazonka.IAM.Lens: managedPolicyDetail_defaultVersionId :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Lens: managedPolicyDetail_description :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Lens: managedPolicyDetail_isAttachable :: Lens' ManagedPolicyDetail (Maybe Bool)
+ Amazonka.IAM.Lens: managedPolicyDetail_path :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Lens: managedPolicyDetail_permissionsBoundaryUsageCount :: Lens' ManagedPolicyDetail (Maybe Int)
+ Amazonka.IAM.Lens: managedPolicyDetail_policyId :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Lens: managedPolicyDetail_policyName :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Lens: managedPolicyDetail_policyVersionList :: Lens' ManagedPolicyDetail (Maybe [PolicyVersion])
+ Amazonka.IAM.Lens: managedPolicyDetail_updateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
+ Amazonka.IAM.Lens: mfaDevice_enableDate :: Lens' MFADevice UTCTime
+ Amazonka.IAM.Lens: mfaDevice_serialNumber :: Lens' MFADevice Text
+ Amazonka.IAM.Lens: mfaDevice_userName :: Lens' MFADevice Text
+ Amazonka.IAM.Lens: openIDConnectProviderListEntry_arn :: Lens' OpenIDConnectProviderListEntry (Maybe Text)
+ Amazonka.IAM.Lens: organizationsDecisionDetail_allowedByOrganizations :: Lens' OrganizationsDecisionDetail (Maybe Bool)
+ Amazonka.IAM.Lens: passwordPolicy_allowUsersToChangePassword :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: passwordPolicy_expirePasswords :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: passwordPolicy_hardExpiry :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: passwordPolicy_maxPasswordAge :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: passwordPolicy_minimumPasswordLength :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: passwordPolicy_passwordReusePrevention :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: passwordPolicy_requireLowercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: passwordPolicy_requireNumbers :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: passwordPolicy_requireSymbols :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: passwordPolicy_requireUppercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: permissionsBoundaryDecisionDetail_allowedByPermissionsBoundary :: Lens' PermissionsBoundaryDecisionDetail (Maybe Bool)
+ Amazonka.IAM.Lens: policyDetail_policyDocument :: Lens' PolicyDetail (Maybe Text)
+ Amazonka.IAM.Lens: policyDetail_policyName :: Lens' PolicyDetail (Maybe Text)
+ Amazonka.IAM.Lens: policyGrantingServiceAccess_entityName :: Lens' PolicyGrantingServiceAccess (Maybe Text)
+ Amazonka.IAM.Lens: policyGrantingServiceAccess_entityType :: Lens' PolicyGrantingServiceAccess (Maybe PolicyOwnerEntityType)
+ Amazonka.IAM.Lens: policyGrantingServiceAccess_policyArn :: Lens' PolicyGrantingServiceAccess (Maybe Text)
+ Amazonka.IAM.Lens: policyGrantingServiceAccess_policyName :: Lens' PolicyGrantingServiceAccess Text
+ Amazonka.IAM.Lens: policyGrantingServiceAccess_policyType :: Lens' PolicyGrantingServiceAccess PolicyType
+ Amazonka.IAM.Lens: policyGroup_groupId :: Lens' PolicyGroup (Maybe Text)
+ Amazonka.IAM.Lens: policyGroup_groupName :: Lens' PolicyGroup (Maybe Text)
+ Amazonka.IAM.Lens: policyRole_roleId :: Lens' PolicyRole (Maybe Text)
+ Amazonka.IAM.Lens: policyRole_roleName :: Lens' PolicyRole (Maybe Text)
+ Amazonka.IAM.Lens: policyUser_userId :: Lens' PolicyUser (Maybe Text)
+ Amazonka.IAM.Lens: policyUser_userName :: Lens' PolicyUser (Maybe Text)
+ Amazonka.IAM.Lens: policyVersion_createDate :: Lens' PolicyVersion (Maybe UTCTime)
+ Amazonka.IAM.Lens: policyVersion_document :: Lens' PolicyVersion (Maybe Text)
+ Amazonka.IAM.Lens: policyVersion_isDefaultVersion :: Lens' PolicyVersion (Maybe Bool)
+ Amazonka.IAM.Lens: policyVersion_versionId :: Lens' PolicyVersion (Maybe Text)
+ Amazonka.IAM.Lens: policy_arn :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Lens: policy_attachmentCount :: Lens' Policy (Maybe Int)
+ Amazonka.IAM.Lens: policy_createDate :: Lens' Policy (Maybe UTCTime)
+ Amazonka.IAM.Lens: policy_defaultVersionId :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Lens: policy_description :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Lens: policy_isAttachable :: Lens' Policy (Maybe Bool)
+ Amazonka.IAM.Lens: policy_path :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Lens: policy_permissionsBoundaryUsageCount :: Lens' Policy (Maybe Int)
+ Amazonka.IAM.Lens: policy_policyId :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Lens: policy_policyName :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Lens: policy_tags :: Lens' Policy (Maybe [Tag])
+ Amazonka.IAM.Lens: policy_updateDate :: Lens' Policy (Maybe UTCTime)
+ Amazonka.IAM.Lens: position_column :: Lens' Position (Maybe Int)
+ Amazonka.IAM.Lens: position_line :: Lens' Position (Maybe Int)
+ Amazonka.IAM.Lens: putGroupPolicy_groupName :: Lens' PutGroupPolicy Text
+ Amazonka.IAM.Lens: putGroupPolicy_policyDocument :: Lens' PutGroupPolicy Text
+ Amazonka.IAM.Lens: putGroupPolicy_policyName :: Lens' PutGroupPolicy Text
+ Amazonka.IAM.Lens: putRolePermissionsBoundary_permissionsBoundary :: Lens' PutRolePermissionsBoundary Text
+ Amazonka.IAM.Lens: putRolePermissionsBoundary_roleName :: Lens' PutRolePermissionsBoundary Text
+ Amazonka.IAM.Lens: putRolePolicy_policyDocument :: Lens' PutRolePolicy Text
+ Amazonka.IAM.Lens: putRolePolicy_policyName :: Lens' PutRolePolicy Text
+ Amazonka.IAM.Lens: putRolePolicy_roleName :: Lens' PutRolePolicy Text
+ Amazonka.IAM.Lens: putUserPermissionsBoundary_permissionsBoundary :: Lens' PutUserPermissionsBoundary Text
+ Amazonka.IAM.Lens: putUserPermissionsBoundary_userName :: Lens' PutUserPermissionsBoundary Text
+ Amazonka.IAM.Lens: putUserPolicy_policyDocument :: Lens' PutUserPolicy Text
+ Amazonka.IAM.Lens: putUserPolicy_policyName :: Lens' PutUserPolicy Text
+ Amazonka.IAM.Lens: putUserPolicy_userName :: Lens' PutUserPolicy Text
+ Amazonka.IAM.Lens: removeClientIDFromOpenIDConnectProvider_clientID :: Lens' RemoveClientIDFromOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: removeClientIDFromOpenIDConnectProvider_openIDConnectProviderArn :: Lens' RemoveClientIDFromOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: removeRoleFromInstanceProfile_instanceProfileName :: Lens' RemoveRoleFromInstanceProfile Text
+ Amazonka.IAM.Lens: removeRoleFromInstanceProfile_roleName :: Lens' RemoveRoleFromInstanceProfile Text
+ Amazonka.IAM.Lens: removeUserFromGroup_groupName :: Lens' RemoveUserFromGroup Text
+ Amazonka.IAM.Lens: removeUserFromGroup_userName :: Lens' RemoveUserFromGroup Text
+ Amazonka.IAM.Lens: resetServiceSpecificCredentialResponse_httpStatus :: Lens' ResetServiceSpecificCredentialResponse Int
+ Amazonka.IAM.Lens: resetServiceSpecificCredentialResponse_serviceSpecificCredential :: Lens' ResetServiceSpecificCredentialResponse (Maybe ServiceSpecificCredential)
+ Amazonka.IAM.Lens: resetServiceSpecificCredential_serviceSpecificCredentialId :: Lens' ResetServiceSpecificCredential Text
+ Amazonka.IAM.Lens: resetServiceSpecificCredential_userName :: Lens' ResetServiceSpecificCredential (Maybe Text)
+ Amazonka.IAM.Lens: resourceSpecificResult_evalDecisionDetails :: Lens' ResourceSpecificResult (Maybe (HashMap Text PolicyEvaluationDecisionType))
+ Amazonka.IAM.Lens: resourceSpecificResult_evalResourceDecision :: Lens' ResourceSpecificResult PolicyEvaluationDecisionType
+ Amazonka.IAM.Lens: resourceSpecificResult_evalResourceName :: Lens' ResourceSpecificResult Text
+ Amazonka.IAM.Lens: resourceSpecificResult_matchedStatements :: Lens' ResourceSpecificResult (Maybe [Statement])
+ Amazonka.IAM.Lens: resourceSpecificResult_missingContextValues :: Lens' ResourceSpecificResult (Maybe [Text])
+ Amazonka.IAM.Lens: resourceSpecificResult_permissionsBoundaryDecisionDetail :: Lens' ResourceSpecificResult (Maybe PermissionsBoundaryDecisionDetail)
+ Amazonka.IAM.Lens: resyncMFADevice_authenticationCode1 :: Lens' ResyncMFADevice Text
+ Amazonka.IAM.Lens: resyncMFADevice_authenticationCode2 :: Lens' ResyncMFADevice Text
+ Amazonka.IAM.Lens: resyncMFADevice_serialNumber :: Lens' ResyncMFADevice Text
+ Amazonka.IAM.Lens: resyncMFADevice_userName :: Lens' ResyncMFADevice Text
+ Amazonka.IAM.Lens: roleDetail_arn :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Lens: roleDetail_assumeRolePolicyDocument :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Lens: roleDetail_attachedManagedPolicies :: Lens' RoleDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Lens: roleDetail_createDate :: Lens' RoleDetail (Maybe UTCTime)
+ Amazonka.IAM.Lens: roleDetail_instanceProfileList :: Lens' RoleDetail (Maybe [InstanceProfile])
+ Amazonka.IAM.Lens: roleDetail_path :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Lens: roleDetail_permissionsBoundary :: Lens' RoleDetail (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Lens: roleDetail_roleId :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Lens: roleDetail_roleLastUsed :: Lens' RoleDetail (Maybe RoleLastUsed)
+ Amazonka.IAM.Lens: roleDetail_roleName :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Lens: roleDetail_rolePolicyList :: Lens' RoleDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Lens: roleDetail_tags :: Lens' RoleDetail (Maybe [Tag])
+ Amazonka.IAM.Lens: roleLastUsed_lastUsedDate :: Lens' RoleLastUsed (Maybe UTCTime)
+ Amazonka.IAM.Lens: roleLastUsed_region :: Lens' RoleLastUsed (Maybe Text)
+ Amazonka.IAM.Lens: roleUsageType_region :: Lens' RoleUsageType (Maybe Text)
+ Amazonka.IAM.Lens: roleUsageType_resources :: Lens' RoleUsageType (Maybe [Text])
+ Amazonka.IAM.Lens: role_arn :: Lens' Role Text
+ Amazonka.IAM.Lens: role_assumeRolePolicyDocument :: Lens' Role (Maybe Text)
+ Amazonka.IAM.Lens: role_createDate :: Lens' Role UTCTime
+ Amazonka.IAM.Lens: role_description :: Lens' Role (Maybe Text)
+ Amazonka.IAM.Lens: role_maxSessionDuration :: Lens' Role (Maybe Natural)
+ Amazonka.IAM.Lens: role_path :: Lens' Role Text
+ Amazonka.IAM.Lens: role_permissionsBoundary :: Lens' Role (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Lens: role_roleId :: Lens' Role Text
+ Amazonka.IAM.Lens: role_roleLastUsed :: Lens' Role (Maybe RoleLastUsed)
+ Amazonka.IAM.Lens: role_roleName :: Lens' Role Text
+ Amazonka.IAM.Lens: role_tags :: Lens' Role (Maybe [Tag])
+ Amazonka.IAM.Lens: sAMLProviderListEntry_arn :: Lens' SAMLProviderListEntry (Maybe Text)
+ Amazonka.IAM.Lens: sAMLProviderListEntry_createDate :: Lens' SAMLProviderListEntry (Maybe UTCTime)
+ Amazonka.IAM.Lens: sAMLProviderListEntry_validUntil :: Lens' SAMLProviderListEntry (Maybe UTCTime)
+ Amazonka.IAM.Lens: sSHPublicKeyMetadata_sSHPublicKeyId :: Lens' SSHPublicKeyMetadata Text
+ Amazonka.IAM.Lens: sSHPublicKeyMetadata_status :: Lens' SSHPublicKeyMetadata StatusType
+ Amazonka.IAM.Lens: sSHPublicKeyMetadata_uploadDate :: Lens' SSHPublicKeyMetadata UTCTime
+ Amazonka.IAM.Lens: sSHPublicKeyMetadata_userName :: Lens' SSHPublicKeyMetadata Text
+ Amazonka.IAM.Lens: sSHPublicKey_fingerprint :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Lens: sSHPublicKey_sSHPublicKeyBody :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Lens: sSHPublicKey_sSHPublicKeyId :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Lens: sSHPublicKey_status :: Lens' SSHPublicKey StatusType
+ Amazonka.IAM.Lens: sSHPublicKey_uploadDate :: Lens' SSHPublicKey (Maybe UTCTime)
+ Amazonka.IAM.Lens: sSHPublicKey_userName :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Lens: serverCertificateMetadata_arn :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Lens: serverCertificateMetadata_expiration :: Lens' ServerCertificateMetadata (Maybe UTCTime)
+ Amazonka.IAM.Lens: serverCertificateMetadata_path :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Lens: serverCertificateMetadata_serverCertificateId :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Lens: serverCertificateMetadata_serverCertificateName :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Lens: serverCertificateMetadata_uploadDate :: Lens' ServerCertificateMetadata (Maybe UTCTime)
+ Amazonka.IAM.Lens: serverCertificate_certificateBody :: Lens' ServerCertificate Text
+ Amazonka.IAM.Lens: serverCertificate_certificateChain :: Lens' ServerCertificate (Maybe Text)
+ Amazonka.IAM.Lens: serverCertificate_serverCertificateMetadata :: Lens' ServerCertificate ServerCertificateMetadata
+ Amazonka.IAM.Lens: serverCertificate_tags :: Lens' ServerCertificate (Maybe [Tag])
+ Amazonka.IAM.Lens: serviceLastAccessed_lastAuthenticated :: Lens' ServiceLastAccessed (Maybe UTCTime)
+ Amazonka.IAM.Lens: serviceLastAccessed_lastAuthenticatedEntity :: Lens' ServiceLastAccessed (Maybe Text)
+ Amazonka.IAM.Lens: serviceLastAccessed_lastAuthenticatedRegion :: Lens' ServiceLastAccessed (Maybe Text)
+ Amazonka.IAM.Lens: serviceLastAccessed_serviceName :: Lens' ServiceLastAccessed Text
+ Amazonka.IAM.Lens: serviceLastAccessed_serviceNamespace :: Lens' ServiceLastAccessed Text
+ Amazonka.IAM.Lens: serviceLastAccessed_totalAuthenticatedEntities :: Lens' ServiceLastAccessed (Maybe Int)
+ Amazonka.IAM.Lens: serviceLastAccessed_trackedActionsLastAccessed :: Lens' ServiceLastAccessed (Maybe [TrackedActionLastAccessed])
+ Amazonka.IAM.Lens: serviceSpecificCredentialMetadata_createDate :: Lens' ServiceSpecificCredentialMetadata UTCTime
+ Amazonka.IAM.Lens: serviceSpecificCredentialMetadata_serviceName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Lens: serviceSpecificCredentialMetadata_serviceSpecificCredentialId :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Lens: serviceSpecificCredentialMetadata_serviceUserName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Lens: serviceSpecificCredentialMetadata_status :: Lens' ServiceSpecificCredentialMetadata StatusType
+ Amazonka.IAM.Lens: serviceSpecificCredentialMetadata_userName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Lens: serviceSpecificCredential_createDate :: Lens' ServiceSpecificCredential UTCTime
+ Amazonka.IAM.Lens: serviceSpecificCredential_serviceName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Lens: serviceSpecificCredential_servicePassword :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Lens: serviceSpecificCredential_serviceSpecificCredentialId :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Lens: serviceSpecificCredential_serviceUserName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Lens: serviceSpecificCredential_status :: Lens' ServiceSpecificCredential StatusType
+ Amazonka.IAM.Lens: serviceSpecificCredential_userName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Lens: setDefaultPolicyVersion_policyArn :: Lens' SetDefaultPolicyVersion Text
+ Amazonka.IAM.Lens: setDefaultPolicyVersion_versionId :: Lens' SetDefaultPolicyVersion Text
+ Amazonka.IAM.Lens: setSecurityTokenServicePreferences_globalEndpointTokenVersion :: Lens' SetSecurityTokenServicePreferences GlobalEndpointTokenVersion
+ Amazonka.IAM.Lens: signingCertificate_certificateBody :: Lens' SigningCertificate Text
+ Amazonka.IAM.Lens: signingCertificate_certificateId :: Lens' SigningCertificate Text
+ Amazonka.IAM.Lens: signingCertificate_status :: Lens' SigningCertificate StatusType
+ Amazonka.IAM.Lens: signingCertificate_uploadDate :: Lens' SigningCertificate (Maybe UTCTime)
+ Amazonka.IAM.Lens: signingCertificate_userName :: Lens' SigningCertificate Text
+ Amazonka.IAM.Lens: simulateCustomPolicy_actionNames :: Lens' SimulateCustomPolicy [Text]
+ Amazonka.IAM.Lens: simulateCustomPolicy_callerArn :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulateCustomPolicy_contextEntries :: Lens' SimulateCustomPolicy (Maybe [ContextEntry])
+ Amazonka.IAM.Lens: simulateCustomPolicy_marker :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulateCustomPolicy_maxItems :: Lens' SimulateCustomPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: simulateCustomPolicy_permissionsBoundaryPolicyInputList :: Lens' SimulateCustomPolicy (Maybe [Text])
+ Amazonka.IAM.Lens: simulateCustomPolicy_policyInputList :: Lens' SimulateCustomPolicy [Text]
+ Amazonka.IAM.Lens: simulateCustomPolicy_resourceArns :: Lens' SimulateCustomPolicy (Maybe [Text])
+ Amazonka.IAM.Lens: simulateCustomPolicy_resourceHandlingOption :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulateCustomPolicy_resourceOwner :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulateCustomPolicy_resourcePolicy :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulatePolicyResponse_evaluationResults :: Lens' SimulatePolicyResponse (Maybe [EvaluationResult])
+ Amazonka.IAM.Lens: simulatePolicyResponse_isTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
+ Amazonka.IAM.Lens: simulatePolicyResponse_marker :: Lens' SimulatePolicyResponse (Maybe Text)
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_actionNames :: Lens' SimulatePrincipalPolicy [Text]
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_callerArn :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_contextEntries :: Lens' SimulatePrincipalPolicy (Maybe [ContextEntry])
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_marker :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_maxItems :: Lens' SimulatePrincipalPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_permissionsBoundaryPolicyInputList :: Lens' SimulatePrincipalPolicy (Maybe [Text])
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_policyInputList :: Lens' SimulatePrincipalPolicy (Maybe [Text])
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_policySourceArn :: Lens' SimulatePrincipalPolicy Text
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_resourceArns :: Lens' SimulatePrincipalPolicy (Maybe [Text])
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_resourceHandlingOption :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_resourceOwner :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.Lens: simulatePrincipalPolicy_resourcePolicy :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.Lens: statement_endPosition :: Lens' Statement (Maybe Position)
+ Amazonka.IAM.Lens: statement_sourcePolicyId :: Lens' Statement (Maybe Text)
+ Amazonka.IAM.Lens: statement_sourcePolicyType :: Lens' Statement (Maybe PolicySourceType)
+ Amazonka.IAM.Lens: statement_startPosition :: Lens' Statement (Maybe Position)
+ Amazonka.IAM.Lens: tagInstanceProfile_instanceProfileName :: Lens' TagInstanceProfile Text
+ Amazonka.IAM.Lens: tagInstanceProfile_tags :: Lens' TagInstanceProfile [Tag]
+ Amazonka.IAM.Lens: tagMFADevice_serialNumber :: Lens' TagMFADevice Text
+ Amazonka.IAM.Lens: tagMFADevice_tags :: Lens' TagMFADevice [Tag]
+ Amazonka.IAM.Lens: tagOpenIDConnectProvider_openIDConnectProviderArn :: Lens' TagOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: tagOpenIDConnectProvider_tags :: Lens' TagOpenIDConnectProvider [Tag]
+ Amazonka.IAM.Lens: tagPolicy_policyArn :: Lens' TagPolicy Text
+ Amazonka.IAM.Lens: tagPolicy_tags :: Lens' TagPolicy [Tag]
+ Amazonka.IAM.Lens: tagRole_roleName :: Lens' TagRole Text
+ Amazonka.IAM.Lens: tagRole_tags :: Lens' TagRole [Tag]
+ Amazonka.IAM.Lens: tagSAMLProvider_sAMLProviderArn :: Lens' TagSAMLProvider Text
+ Amazonka.IAM.Lens: tagSAMLProvider_tags :: Lens' TagSAMLProvider [Tag]
+ Amazonka.IAM.Lens: tagServerCertificate_serverCertificateName :: Lens' TagServerCertificate Text
+ Amazonka.IAM.Lens: tagServerCertificate_tags :: Lens' TagServerCertificate [Tag]
+ Amazonka.IAM.Lens: tagUser_tags :: Lens' TagUser [Tag]
+ Amazonka.IAM.Lens: tagUser_userName :: Lens' TagUser Text
+ Amazonka.IAM.Lens: tag_key :: Lens' Tag Text
+ Amazonka.IAM.Lens: tag_value :: Lens' Tag Text
+ Amazonka.IAM.Lens: trackedActionLastAccessed_actionName :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Lens: trackedActionLastAccessed_lastAccessedEntity :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Lens: trackedActionLastAccessed_lastAccessedRegion :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Lens: trackedActionLastAccessed_lastAccessedTime :: Lens' TrackedActionLastAccessed (Maybe UTCTime)
+ Amazonka.IAM.Lens: untagInstanceProfile_instanceProfileName :: Lens' UntagInstanceProfile Text
+ Amazonka.IAM.Lens: untagInstanceProfile_tagKeys :: Lens' UntagInstanceProfile [Text]
+ Amazonka.IAM.Lens: untagMFADevice_serialNumber :: Lens' UntagMFADevice Text
+ Amazonka.IAM.Lens: untagMFADevice_tagKeys :: Lens' UntagMFADevice [Text]
+ Amazonka.IAM.Lens: untagOpenIDConnectProvider_openIDConnectProviderArn :: Lens' UntagOpenIDConnectProvider Text
+ Amazonka.IAM.Lens: untagOpenIDConnectProvider_tagKeys :: Lens' UntagOpenIDConnectProvider [Text]
+ Amazonka.IAM.Lens: untagPolicy_policyArn :: Lens' UntagPolicy Text
+ Amazonka.IAM.Lens: untagPolicy_tagKeys :: Lens' UntagPolicy [Text]
+ Amazonka.IAM.Lens: untagRole_roleName :: Lens' UntagRole Text
+ Amazonka.IAM.Lens: untagRole_tagKeys :: Lens' UntagRole [Text]
+ Amazonka.IAM.Lens: untagSAMLProvider_sAMLProviderArn :: Lens' UntagSAMLProvider Text
+ Amazonka.IAM.Lens: untagSAMLProvider_tagKeys :: Lens' UntagSAMLProvider [Text]
+ Amazonka.IAM.Lens: untagServerCertificate_serverCertificateName :: Lens' UntagServerCertificate Text
+ Amazonka.IAM.Lens: untagServerCertificate_tagKeys :: Lens' UntagServerCertificate [Text]
+ Amazonka.IAM.Lens: untagUser_tagKeys :: Lens' UntagUser [Text]
+ Amazonka.IAM.Lens: untagUser_userName :: Lens' UntagUser Text
+ Amazonka.IAM.Lens: updateAccessKey_accessKeyId :: Lens' UpdateAccessKey AccessKey
+ Amazonka.IAM.Lens: updateAccessKey_status :: Lens' UpdateAccessKey StatusType
+ Amazonka.IAM.Lens: updateAccessKey_userName :: Lens' UpdateAccessKey (Maybe Text)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_allowUsersToChangePassword :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_hardExpiry :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_maxPasswordAge :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_minimumPasswordLength :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_passwordReusePrevention :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_requireLowercaseCharacters :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_requireNumbers :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_requireSymbols :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: updateAccountPasswordPolicy_requireUppercaseCharacters :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Lens: updateAssumeRolePolicy_policyDocument :: Lens' UpdateAssumeRolePolicy Text
+ Amazonka.IAM.Lens: updateAssumeRolePolicy_roleName :: Lens' UpdateAssumeRolePolicy Text
+ Amazonka.IAM.Lens: updateGroup_groupName :: Lens' UpdateGroup Text
+ Amazonka.IAM.Lens: updateGroup_newGroupName :: Lens' UpdateGroup (Maybe Text)
+ Amazonka.IAM.Lens: updateGroup_newPath :: Lens' UpdateGroup (Maybe Text)
+ Amazonka.IAM.Lens: updateLoginProfile_password :: Lens' UpdateLoginProfile (Maybe Text)
+ Amazonka.IAM.Lens: updateLoginProfile_passwordResetRequired :: Lens' UpdateLoginProfile (Maybe Bool)
+ Amazonka.IAM.Lens: updateLoginProfile_userName :: Lens' UpdateLoginProfile Text
+ Amazonka.IAM.Lens: updateOpenIDConnectProviderThumbprint_openIDConnectProviderArn :: Lens' UpdateOpenIDConnectProviderThumbprint Text
+ Amazonka.IAM.Lens: updateOpenIDConnectProviderThumbprint_thumbprintList :: Lens' UpdateOpenIDConnectProviderThumbprint [Text]
+ Amazonka.IAM.Lens: updateRoleDescriptionResponse_httpStatus :: Lens' UpdateRoleDescriptionResponse Int
+ Amazonka.IAM.Lens: updateRoleDescriptionResponse_role :: Lens' UpdateRoleDescriptionResponse (Maybe Role)
+ Amazonka.IAM.Lens: updateRoleDescription_description :: Lens' UpdateRoleDescription Text
+ Amazonka.IAM.Lens: updateRoleDescription_roleName :: Lens' UpdateRoleDescription Text
+ Amazonka.IAM.Lens: updateRoleResponse_httpStatus :: Lens' UpdateRoleResponse Int
+ Amazonka.IAM.Lens: updateRole_description :: Lens' UpdateRole (Maybe Text)
+ Amazonka.IAM.Lens: updateRole_maxSessionDuration :: Lens' UpdateRole (Maybe Natural)
+ Amazonka.IAM.Lens: updateRole_roleName :: Lens' UpdateRole Text
+ Amazonka.IAM.Lens: updateSAMLProviderResponse_httpStatus :: Lens' UpdateSAMLProviderResponse Int
+ Amazonka.IAM.Lens: updateSAMLProviderResponse_sAMLProviderArn :: Lens' UpdateSAMLProviderResponse (Maybe Text)
+ Amazonka.IAM.Lens: updateSAMLProvider_sAMLMetadataDocument :: Lens' UpdateSAMLProvider Text
+ Amazonka.IAM.Lens: updateSAMLProvider_sAMLProviderArn :: Lens' UpdateSAMLProvider Text
+ Amazonka.IAM.Lens: updateSSHPublicKey_sSHPublicKeyId :: Lens' UpdateSSHPublicKey Text
+ Amazonka.IAM.Lens: updateSSHPublicKey_status :: Lens' UpdateSSHPublicKey StatusType
+ Amazonka.IAM.Lens: updateSSHPublicKey_userName :: Lens' UpdateSSHPublicKey Text
+ Amazonka.IAM.Lens: updateServerCertificate_newPath :: Lens' UpdateServerCertificate (Maybe Text)
+ Amazonka.IAM.Lens: updateServerCertificate_newServerCertificateName :: Lens' UpdateServerCertificate (Maybe Text)
+ Amazonka.IAM.Lens: updateServerCertificate_serverCertificateName :: Lens' UpdateServerCertificate Text
+ Amazonka.IAM.Lens: updateServiceSpecificCredential_serviceSpecificCredentialId :: Lens' UpdateServiceSpecificCredential Text
+ Amazonka.IAM.Lens: updateServiceSpecificCredential_status :: Lens' UpdateServiceSpecificCredential StatusType
+ Amazonka.IAM.Lens: updateServiceSpecificCredential_userName :: Lens' UpdateServiceSpecificCredential (Maybe Text)
+ Amazonka.IAM.Lens: updateSigningCertificate_certificateId :: Lens' UpdateSigningCertificate Text
+ Amazonka.IAM.Lens: updateSigningCertificate_status :: Lens' UpdateSigningCertificate StatusType
+ Amazonka.IAM.Lens: updateSigningCertificate_userName :: Lens' UpdateSigningCertificate (Maybe Text)
+ Amazonka.IAM.Lens: updateUser_newPath :: Lens' UpdateUser (Maybe Text)
+ Amazonka.IAM.Lens: updateUser_newUserName :: Lens' UpdateUser (Maybe Text)
+ Amazonka.IAM.Lens: updateUser_userName :: Lens' UpdateUser Text
+ Amazonka.IAM.Lens: uploadSSHPublicKeyResponse_httpStatus :: Lens' UploadSSHPublicKeyResponse Int
+ Amazonka.IAM.Lens: uploadSSHPublicKeyResponse_sSHPublicKey :: Lens' UploadSSHPublicKeyResponse (Maybe SSHPublicKey)
+ Amazonka.IAM.Lens: uploadSSHPublicKey_sSHPublicKeyBody :: Lens' UploadSSHPublicKey Text
+ Amazonka.IAM.Lens: uploadSSHPublicKey_userName :: Lens' UploadSSHPublicKey Text
+ Amazonka.IAM.Lens: uploadServerCertificateResponse_httpStatus :: Lens' UploadServerCertificateResponse Int
+ Amazonka.IAM.Lens: uploadServerCertificateResponse_serverCertificateMetadata :: Lens' UploadServerCertificateResponse (Maybe ServerCertificateMetadata)
+ Amazonka.IAM.Lens: uploadServerCertificateResponse_tags :: Lens' UploadServerCertificateResponse (Maybe [Tag])
+ Amazonka.IAM.Lens: uploadServerCertificate_certificateBody :: Lens' UploadServerCertificate Text
+ Amazonka.IAM.Lens: uploadServerCertificate_certificateChain :: Lens' UploadServerCertificate (Maybe Text)
+ Amazonka.IAM.Lens: uploadServerCertificate_path :: Lens' UploadServerCertificate (Maybe Text)
+ Amazonka.IAM.Lens: uploadServerCertificate_privateKey :: Lens' UploadServerCertificate Text
+ Amazonka.IAM.Lens: uploadServerCertificate_serverCertificateName :: Lens' UploadServerCertificate Text
+ Amazonka.IAM.Lens: uploadServerCertificate_tags :: Lens' UploadServerCertificate (Maybe [Tag])
+ Amazonka.IAM.Lens: uploadSigningCertificateResponse_certificate :: Lens' UploadSigningCertificateResponse SigningCertificate
+ Amazonka.IAM.Lens: uploadSigningCertificateResponse_httpStatus :: Lens' UploadSigningCertificateResponse Int
+ Amazonka.IAM.Lens: uploadSigningCertificate_certificateBody :: Lens' UploadSigningCertificate Text
+ Amazonka.IAM.Lens: uploadSigningCertificate_userName :: Lens' UploadSigningCertificate (Maybe Text)
+ Amazonka.IAM.Lens: userDetail_arn :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Lens: userDetail_attachedManagedPolicies :: Lens' UserDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Lens: userDetail_createDate :: Lens' UserDetail (Maybe UTCTime)
+ Amazonka.IAM.Lens: userDetail_groupList :: Lens' UserDetail (Maybe [Text])
+ Amazonka.IAM.Lens: userDetail_path :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Lens: userDetail_permissionsBoundary :: Lens' UserDetail (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Lens: userDetail_tags :: Lens' UserDetail (Maybe [Tag])
+ Amazonka.IAM.Lens: userDetail_userId :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Lens: userDetail_userName :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Lens: userDetail_userPolicyList :: Lens' UserDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Lens: user_arn :: Lens' User Text
+ Amazonka.IAM.Lens: user_createDate :: Lens' User UTCTime
+ Amazonka.IAM.Lens: user_passwordLastUsed :: Lens' User (Maybe UTCTime)
+ Amazonka.IAM.Lens: user_path :: Lens' User (Maybe Text)
+ Amazonka.IAM.Lens: user_permissionsBoundary :: Lens' User (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Lens: user_tags :: Lens' User (Maybe [Tag])
+ Amazonka.IAM.Lens: user_userId :: Lens' User Text
+ Amazonka.IAM.Lens: user_userName :: Lens' User Text
+ Amazonka.IAM.Lens: virtualMFADevice_base32StringSeed :: Lens' VirtualMFADevice (Maybe ByteString)
+ Amazonka.IAM.Lens: virtualMFADevice_enableDate :: Lens' VirtualMFADevice (Maybe UTCTime)
+ Amazonka.IAM.Lens: virtualMFADevice_qRCodePNG :: Lens' VirtualMFADevice (Maybe ByteString)
+ Amazonka.IAM.Lens: virtualMFADevice_serialNumber :: Lens' VirtualMFADevice Text
+ Amazonka.IAM.Lens: virtualMFADevice_tags :: Lens' VirtualMFADevice (Maybe [Tag])
+ Amazonka.IAM.Lens: virtualMFADevice_user :: Lens' VirtualMFADevice (Maybe User)
+ Amazonka.IAM.ListAccessKeys: ListAccessKeys' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: ListAccessKeysResponse' :: Maybe Bool -> Maybe Text -> Int -> [AccessKeyMetadata] -> ListAccessKeysResponse
+ Amazonka.IAM.ListAccessKeys: [$sel:accessKeyMetadata:ListAccessKeysResponse'] :: ListAccessKeysResponse -> [AccessKeyMetadata]
+ Amazonka.IAM.ListAccessKeys: [$sel:httpStatus:ListAccessKeysResponse'] :: ListAccessKeysResponse -> Int
+ Amazonka.IAM.ListAccessKeys: [$sel:isTruncated:ListAccessKeysResponse'] :: ListAccessKeysResponse -> Maybe Bool
+ Amazonka.IAM.ListAccessKeys: [$sel:marker:ListAccessKeys'] :: ListAccessKeys -> Maybe Text
+ Amazonka.IAM.ListAccessKeys: [$sel:marker:ListAccessKeysResponse'] :: ListAccessKeysResponse -> Maybe Text
+ Amazonka.IAM.ListAccessKeys: [$sel:maxItems:ListAccessKeys'] :: ListAccessKeys -> Maybe Natural
+ Amazonka.IAM.ListAccessKeys: [$sel:userName:ListAccessKeys'] :: ListAccessKeys -> Maybe Text
+ Amazonka.IAM.ListAccessKeys: data ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: data ListAccessKeysResponse
+ Amazonka.IAM.ListAccessKeys: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance Control.DeepSeq.NFData Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance Control.DeepSeq.NFData Amazonka.IAM.ListAccessKeys.ListAccessKeysResponse
+ Amazonka.IAM.ListAccessKeys: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance GHC.Classes.Eq Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance GHC.Classes.Eq Amazonka.IAM.ListAccessKeys.ListAccessKeysResponse
+ Amazonka.IAM.ListAccessKeys: instance GHC.Generics.Generic Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance GHC.Generics.Generic Amazonka.IAM.ListAccessKeys.ListAccessKeysResponse
+ Amazonka.IAM.ListAccessKeys: instance GHC.Read.Read Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance GHC.Read.Read Amazonka.IAM.ListAccessKeys.ListAccessKeysResponse
+ Amazonka.IAM.ListAccessKeys: instance GHC.Show.Show Amazonka.IAM.ListAccessKeys.ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: instance GHC.Show.Show Amazonka.IAM.ListAccessKeys.ListAccessKeysResponse
+ Amazonka.IAM.ListAccessKeys: listAccessKeysResponse_accessKeyMetadata :: Lens' ListAccessKeysResponse [AccessKeyMetadata]
+ Amazonka.IAM.ListAccessKeys: listAccessKeysResponse_httpStatus :: Lens' ListAccessKeysResponse Int
+ Amazonka.IAM.ListAccessKeys: listAccessKeysResponse_isTruncated :: Lens' ListAccessKeysResponse (Maybe Bool)
+ Amazonka.IAM.ListAccessKeys: listAccessKeysResponse_marker :: Lens' ListAccessKeysResponse (Maybe Text)
+ Amazonka.IAM.ListAccessKeys: listAccessKeys_marker :: Lens' ListAccessKeys (Maybe Text)
+ Amazonka.IAM.ListAccessKeys: listAccessKeys_maxItems :: Lens' ListAccessKeys (Maybe Natural)
+ Amazonka.IAM.ListAccessKeys: listAccessKeys_userName :: Lens' ListAccessKeys (Maybe Text)
+ Amazonka.IAM.ListAccessKeys: newListAccessKeys :: ListAccessKeys
+ Amazonka.IAM.ListAccessKeys: newListAccessKeysResponse :: Int -> ListAccessKeysResponse
+ Amazonka.IAM.ListAccountAliases: ListAccountAliases' :: Maybe Text -> Maybe Natural -> ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: ListAccountAliasesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Text] -> ListAccountAliasesResponse
+ Amazonka.IAM.ListAccountAliases: [$sel:accountAliases:ListAccountAliasesResponse'] :: ListAccountAliasesResponse -> [Text]
+ Amazonka.IAM.ListAccountAliases: [$sel:httpStatus:ListAccountAliasesResponse'] :: ListAccountAliasesResponse -> Int
+ Amazonka.IAM.ListAccountAliases: [$sel:isTruncated:ListAccountAliasesResponse'] :: ListAccountAliasesResponse -> Maybe Bool
+ Amazonka.IAM.ListAccountAliases: [$sel:marker:ListAccountAliases'] :: ListAccountAliases -> Maybe Text
+ Amazonka.IAM.ListAccountAliases: [$sel:marker:ListAccountAliasesResponse'] :: ListAccountAliasesResponse -> Maybe Text
+ Amazonka.IAM.ListAccountAliases: [$sel:maxItems:ListAccountAliases'] :: ListAccountAliases -> Maybe Natural
+ Amazonka.IAM.ListAccountAliases: data ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: data ListAccountAliasesResponse
+ Amazonka.IAM.ListAccountAliases: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance Control.DeepSeq.NFData Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance Control.DeepSeq.NFData Amazonka.IAM.ListAccountAliases.ListAccountAliasesResponse
+ Amazonka.IAM.ListAccountAliases: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance GHC.Classes.Eq Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance GHC.Classes.Eq Amazonka.IAM.ListAccountAliases.ListAccountAliasesResponse
+ Amazonka.IAM.ListAccountAliases: instance GHC.Generics.Generic Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance GHC.Generics.Generic Amazonka.IAM.ListAccountAliases.ListAccountAliasesResponse
+ Amazonka.IAM.ListAccountAliases: instance GHC.Read.Read Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance GHC.Read.Read Amazonka.IAM.ListAccountAliases.ListAccountAliasesResponse
+ Amazonka.IAM.ListAccountAliases: instance GHC.Show.Show Amazonka.IAM.ListAccountAliases.ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: instance GHC.Show.Show Amazonka.IAM.ListAccountAliases.ListAccountAliasesResponse
+ Amazonka.IAM.ListAccountAliases: listAccountAliasesResponse_accountAliases :: Lens' ListAccountAliasesResponse [Text]
+ Amazonka.IAM.ListAccountAliases: listAccountAliasesResponse_httpStatus :: Lens' ListAccountAliasesResponse Int
+ Amazonka.IAM.ListAccountAliases: listAccountAliasesResponse_isTruncated :: Lens' ListAccountAliasesResponse (Maybe Bool)
+ Amazonka.IAM.ListAccountAliases: listAccountAliasesResponse_marker :: Lens' ListAccountAliasesResponse (Maybe Text)
+ Amazonka.IAM.ListAccountAliases: listAccountAliases_marker :: Lens' ListAccountAliases (Maybe Text)
+ Amazonka.IAM.ListAccountAliases: listAccountAliases_maxItems :: Lens' ListAccountAliases (Maybe Natural)
+ Amazonka.IAM.ListAccountAliases: newListAccountAliases :: ListAccountAliases
+ Amazonka.IAM.ListAccountAliases: newListAccountAliasesResponse :: Int -> ListAccountAliasesResponse
+ Amazonka.IAM.ListAttachedGroupPolicies: ListAttachedGroupPolicies' :: Maybe Text -> Maybe Natural -> Maybe Text -> Text -> ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: ListAttachedGroupPoliciesResponse' :: Maybe [AttachedPolicy] -> Maybe Bool -> Maybe Text -> Int -> ListAttachedGroupPoliciesResponse
+ Amazonka.IAM.ListAttachedGroupPolicies: [$sel:attachedPolicies:ListAttachedGroupPoliciesResponse'] :: ListAttachedGroupPoliciesResponse -> Maybe [AttachedPolicy]
+ Amazonka.IAM.ListAttachedGroupPolicies: [$sel:groupName:ListAttachedGroupPolicies'] :: ListAttachedGroupPolicies -> Text
+ Amazonka.IAM.ListAttachedGroupPolicies: [$sel:httpStatus:ListAttachedGroupPoliciesResponse'] :: ListAttachedGroupPoliciesResponse -> Int
+ Amazonka.IAM.ListAttachedGroupPolicies: [$sel:isTruncated:ListAttachedGroupPoliciesResponse'] :: ListAttachedGroupPoliciesResponse -> Maybe Bool
+ Amazonka.IAM.ListAttachedGroupPolicies: [$sel:marker:ListAttachedGroupPolicies'] :: ListAttachedGroupPolicies -> Maybe Text
+ Amazonka.IAM.ListAttachedGroupPolicies: [$sel:marker:ListAttachedGroupPoliciesResponse'] :: ListAttachedGroupPoliciesResponse -> Maybe Text
+ Amazonka.IAM.ListAttachedGroupPolicies: [$sel:maxItems:ListAttachedGroupPolicies'] :: ListAttachedGroupPolicies -> Maybe Natural
+ Amazonka.IAM.ListAttachedGroupPolicies: [$sel:pathPrefix:ListAttachedGroupPolicies'] :: ListAttachedGroupPolicies -> Maybe Text
+ Amazonka.IAM.ListAttachedGroupPolicies: data ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: data ListAttachedGroupPoliciesResponse
+ Amazonka.IAM.ListAttachedGroupPolicies: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
+ Amazonka.IAM.ListAttachedGroupPolicies: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
+ Amazonka.IAM.ListAttachedGroupPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
+ Amazonka.IAM.ListAttachedGroupPolicies: instance GHC.Read.Read Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance GHC.Read.Read Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
+ Amazonka.IAM.ListAttachedGroupPolicies: instance GHC.Show.Show Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: instance GHC.Show.Show Amazonka.IAM.ListAttachedGroupPolicies.ListAttachedGroupPoliciesResponse
+ Amazonka.IAM.ListAttachedGroupPolicies: listAttachedGroupPoliciesResponse_attachedPolicies :: Lens' ListAttachedGroupPoliciesResponse (Maybe [AttachedPolicy])
+ Amazonka.IAM.ListAttachedGroupPolicies: listAttachedGroupPoliciesResponse_httpStatus :: Lens' ListAttachedGroupPoliciesResponse Int
+ Amazonka.IAM.ListAttachedGroupPolicies: listAttachedGroupPoliciesResponse_isTruncated :: Lens' ListAttachedGroupPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.ListAttachedGroupPolicies: listAttachedGroupPoliciesResponse_marker :: Lens' ListAttachedGroupPoliciesResponse (Maybe Text)
+ Amazonka.IAM.ListAttachedGroupPolicies: listAttachedGroupPolicies_groupName :: Lens' ListAttachedGroupPolicies Text
+ Amazonka.IAM.ListAttachedGroupPolicies: listAttachedGroupPolicies_marker :: Lens' ListAttachedGroupPolicies (Maybe Text)
+ Amazonka.IAM.ListAttachedGroupPolicies: listAttachedGroupPolicies_maxItems :: Lens' ListAttachedGroupPolicies (Maybe Natural)
+ Amazonka.IAM.ListAttachedGroupPolicies: listAttachedGroupPolicies_pathPrefix :: Lens' ListAttachedGroupPolicies (Maybe Text)
+ Amazonka.IAM.ListAttachedGroupPolicies: newListAttachedGroupPolicies :: Text -> ListAttachedGroupPolicies
+ Amazonka.IAM.ListAttachedGroupPolicies: newListAttachedGroupPoliciesResponse :: Int -> ListAttachedGroupPoliciesResponse
+ Amazonka.IAM.ListAttachedRolePolicies: ListAttachedRolePolicies' :: Maybe Text -> Maybe Natural -> Maybe Text -> Text -> ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: ListAttachedRolePoliciesResponse' :: Maybe [AttachedPolicy] -> Maybe Bool -> Maybe Text -> Int -> ListAttachedRolePoliciesResponse
+ Amazonka.IAM.ListAttachedRolePolicies: [$sel:attachedPolicies:ListAttachedRolePoliciesResponse'] :: ListAttachedRolePoliciesResponse -> Maybe [AttachedPolicy]
+ Amazonka.IAM.ListAttachedRolePolicies: [$sel:httpStatus:ListAttachedRolePoliciesResponse'] :: ListAttachedRolePoliciesResponse -> Int
+ Amazonka.IAM.ListAttachedRolePolicies: [$sel:isTruncated:ListAttachedRolePoliciesResponse'] :: ListAttachedRolePoliciesResponse -> Maybe Bool
+ Amazonka.IAM.ListAttachedRolePolicies: [$sel:marker:ListAttachedRolePolicies'] :: ListAttachedRolePolicies -> Maybe Text
+ Amazonka.IAM.ListAttachedRolePolicies: [$sel:marker:ListAttachedRolePoliciesResponse'] :: ListAttachedRolePoliciesResponse -> Maybe Text
+ Amazonka.IAM.ListAttachedRolePolicies: [$sel:maxItems:ListAttachedRolePolicies'] :: ListAttachedRolePolicies -> Maybe Natural
+ Amazonka.IAM.ListAttachedRolePolicies: [$sel:pathPrefix:ListAttachedRolePolicies'] :: ListAttachedRolePolicies -> Maybe Text
+ Amazonka.IAM.ListAttachedRolePolicies: [$sel:roleName:ListAttachedRolePolicies'] :: ListAttachedRolePolicies -> Text
+ Amazonka.IAM.ListAttachedRolePolicies: data ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: data ListAttachedRolePoliciesResponse
+ Amazonka.IAM.ListAttachedRolePolicies: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
+ Amazonka.IAM.ListAttachedRolePolicies: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance GHC.Classes.Eq Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance GHC.Classes.Eq Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
+ Amazonka.IAM.ListAttachedRolePolicies: instance GHC.Generics.Generic Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance GHC.Generics.Generic Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
+ Amazonka.IAM.ListAttachedRolePolicies: instance GHC.Read.Read Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance GHC.Read.Read Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
+ Amazonka.IAM.ListAttachedRolePolicies: instance GHC.Show.Show Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: instance GHC.Show.Show Amazonka.IAM.ListAttachedRolePolicies.ListAttachedRolePoliciesResponse
+ Amazonka.IAM.ListAttachedRolePolicies: listAttachedRolePoliciesResponse_attachedPolicies :: Lens' ListAttachedRolePoliciesResponse (Maybe [AttachedPolicy])
+ Amazonka.IAM.ListAttachedRolePolicies: listAttachedRolePoliciesResponse_httpStatus :: Lens' ListAttachedRolePoliciesResponse Int
+ Amazonka.IAM.ListAttachedRolePolicies: listAttachedRolePoliciesResponse_isTruncated :: Lens' ListAttachedRolePoliciesResponse (Maybe Bool)
+ Amazonka.IAM.ListAttachedRolePolicies: listAttachedRolePoliciesResponse_marker :: Lens' ListAttachedRolePoliciesResponse (Maybe Text)
+ Amazonka.IAM.ListAttachedRolePolicies: listAttachedRolePolicies_marker :: Lens' ListAttachedRolePolicies (Maybe Text)
+ Amazonka.IAM.ListAttachedRolePolicies: listAttachedRolePolicies_maxItems :: Lens' ListAttachedRolePolicies (Maybe Natural)
+ Amazonka.IAM.ListAttachedRolePolicies: listAttachedRolePolicies_pathPrefix :: Lens' ListAttachedRolePolicies (Maybe Text)
+ Amazonka.IAM.ListAttachedRolePolicies: listAttachedRolePolicies_roleName :: Lens' ListAttachedRolePolicies Text
+ Amazonka.IAM.ListAttachedRolePolicies: newListAttachedRolePolicies :: Text -> ListAttachedRolePolicies
+ Amazonka.IAM.ListAttachedRolePolicies: newListAttachedRolePoliciesResponse :: Int -> ListAttachedRolePoliciesResponse
+ Amazonka.IAM.ListAttachedUserPolicies: ListAttachedUserPolicies' :: Maybe Text -> Maybe Natural -> Maybe Text -> Text -> ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: ListAttachedUserPoliciesResponse' :: Maybe [AttachedPolicy] -> Maybe Bool -> Maybe Text -> Int -> ListAttachedUserPoliciesResponse
+ Amazonka.IAM.ListAttachedUserPolicies: [$sel:attachedPolicies:ListAttachedUserPoliciesResponse'] :: ListAttachedUserPoliciesResponse -> Maybe [AttachedPolicy]
+ Amazonka.IAM.ListAttachedUserPolicies: [$sel:httpStatus:ListAttachedUserPoliciesResponse'] :: ListAttachedUserPoliciesResponse -> Int
+ Amazonka.IAM.ListAttachedUserPolicies: [$sel:isTruncated:ListAttachedUserPoliciesResponse'] :: ListAttachedUserPoliciesResponse -> Maybe Bool
+ Amazonka.IAM.ListAttachedUserPolicies: [$sel:marker:ListAttachedUserPolicies'] :: ListAttachedUserPolicies -> Maybe Text
+ Amazonka.IAM.ListAttachedUserPolicies: [$sel:marker:ListAttachedUserPoliciesResponse'] :: ListAttachedUserPoliciesResponse -> Maybe Text
+ Amazonka.IAM.ListAttachedUserPolicies: [$sel:maxItems:ListAttachedUserPolicies'] :: ListAttachedUserPolicies -> Maybe Natural
+ Amazonka.IAM.ListAttachedUserPolicies: [$sel:pathPrefix:ListAttachedUserPolicies'] :: ListAttachedUserPolicies -> Maybe Text
+ Amazonka.IAM.ListAttachedUserPolicies: [$sel:userName:ListAttachedUserPolicies'] :: ListAttachedUserPolicies -> Text
+ Amazonka.IAM.ListAttachedUserPolicies: data ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: data ListAttachedUserPoliciesResponse
+ Amazonka.IAM.ListAttachedUserPolicies: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
+ Amazonka.IAM.ListAttachedUserPolicies: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
+ Amazonka.IAM.ListAttachedUserPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
+ Amazonka.IAM.ListAttachedUserPolicies: instance GHC.Read.Read Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance GHC.Read.Read Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
+ Amazonka.IAM.ListAttachedUserPolicies: instance GHC.Show.Show Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: instance GHC.Show.Show Amazonka.IAM.ListAttachedUserPolicies.ListAttachedUserPoliciesResponse
+ Amazonka.IAM.ListAttachedUserPolicies: listAttachedUserPoliciesResponse_attachedPolicies :: Lens' ListAttachedUserPoliciesResponse (Maybe [AttachedPolicy])
+ Amazonka.IAM.ListAttachedUserPolicies: listAttachedUserPoliciesResponse_httpStatus :: Lens' ListAttachedUserPoliciesResponse Int
+ Amazonka.IAM.ListAttachedUserPolicies: listAttachedUserPoliciesResponse_isTruncated :: Lens' ListAttachedUserPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.ListAttachedUserPolicies: listAttachedUserPoliciesResponse_marker :: Lens' ListAttachedUserPoliciesResponse (Maybe Text)
+ Amazonka.IAM.ListAttachedUserPolicies: listAttachedUserPolicies_marker :: Lens' ListAttachedUserPolicies (Maybe Text)
+ Amazonka.IAM.ListAttachedUserPolicies: listAttachedUserPolicies_maxItems :: Lens' ListAttachedUserPolicies (Maybe Natural)
+ Amazonka.IAM.ListAttachedUserPolicies: listAttachedUserPolicies_pathPrefix :: Lens' ListAttachedUserPolicies (Maybe Text)
+ Amazonka.IAM.ListAttachedUserPolicies: listAttachedUserPolicies_userName :: Lens' ListAttachedUserPolicies Text
+ Amazonka.IAM.ListAttachedUserPolicies: newListAttachedUserPolicies :: Text -> ListAttachedUserPolicies
+ Amazonka.IAM.ListAttachedUserPolicies: newListAttachedUserPoliciesResponse :: Int -> ListAttachedUserPoliciesResponse
+ Amazonka.IAM.ListEntitiesForPolicy: ListEntitiesForPolicy' :: Maybe EntityType -> Maybe Text -> Maybe Natural -> Maybe Text -> Maybe PolicyUsageType -> Text -> ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: ListEntitiesForPolicyResponse' :: Maybe Bool -> Maybe Text -> Maybe [PolicyGroup] -> Maybe [PolicyRole] -> Maybe [PolicyUser] -> Int -> ListEntitiesForPolicyResponse
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:entityFilter:ListEntitiesForPolicy'] :: ListEntitiesForPolicy -> Maybe EntityType
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:httpStatus:ListEntitiesForPolicyResponse'] :: ListEntitiesForPolicyResponse -> Int
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:isTruncated:ListEntitiesForPolicyResponse'] :: ListEntitiesForPolicyResponse -> Maybe Bool
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:marker:ListEntitiesForPolicy'] :: ListEntitiesForPolicy -> Maybe Text
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:marker:ListEntitiesForPolicyResponse'] :: ListEntitiesForPolicyResponse -> Maybe Text
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:maxItems:ListEntitiesForPolicy'] :: ListEntitiesForPolicy -> Maybe Natural
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:pathPrefix:ListEntitiesForPolicy'] :: ListEntitiesForPolicy -> Maybe Text
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:policyArn:ListEntitiesForPolicy'] :: ListEntitiesForPolicy -> Text
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:policyGroups:ListEntitiesForPolicyResponse'] :: ListEntitiesForPolicyResponse -> Maybe [PolicyGroup]
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:policyRoles:ListEntitiesForPolicyResponse'] :: ListEntitiesForPolicyResponse -> Maybe [PolicyRole]
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:policyUsageFilter:ListEntitiesForPolicy'] :: ListEntitiesForPolicy -> Maybe PolicyUsageType
+ Amazonka.IAM.ListEntitiesForPolicy: [$sel:policyUsers:ListEntitiesForPolicyResponse'] :: ListEntitiesForPolicyResponse -> Maybe [PolicyUser]
+ Amazonka.IAM.ListEntitiesForPolicy: data ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: data ListEntitiesForPolicyResponse
+ Amazonka.IAM.ListEntitiesForPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
+ Amazonka.IAM.ListEntitiesForPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance GHC.Classes.Eq Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance GHC.Classes.Eq Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
+ Amazonka.IAM.ListEntitiesForPolicy: instance GHC.Generics.Generic Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance GHC.Generics.Generic Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
+ Amazonka.IAM.ListEntitiesForPolicy: instance GHC.Read.Read Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance GHC.Read.Read Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
+ Amazonka.IAM.ListEntitiesForPolicy: instance GHC.Show.Show Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: instance GHC.Show.Show Amazonka.IAM.ListEntitiesForPolicy.ListEntitiesForPolicyResponse
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicyResponse_httpStatus :: Lens' ListEntitiesForPolicyResponse Int
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicyResponse_isTruncated :: Lens' ListEntitiesForPolicyResponse (Maybe Bool)
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicyResponse_marker :: Lens' ListEntitiesForPolicyResponse (Maybe Text)
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicyResponse_policyGroups :: Lens' ListEntitiesForPolicyResponse (Maybe [PolicyGroup])
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicyResponse_policyRoles :: Lens' ListEntitiesForPolicyResponse (Maybe [PolicyRole])
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicyResponse_policyUsers :: Lens' ListEntitiesForPolicyResponse (Maybe [PolicyUser])
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicy_entityFilter :: Lens' ListEntitiesForPolicy (Maybe EntityType)
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicy_marker :: Lens' ListEntitiesForPolicy (Maybe Text)
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicy_maxItems :: Lens' ListEntitiesForPolicy (Maybe Natural)
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicy_pathPrefix :: Lens' ListEntitiesForPolicy (Maybe Text)
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicy_policyArn :: Lens' ListEntitiesForPolicy Text
+ Amazonka.IAM.ListEntitiesForPolicy: listEntitiesForPolicy_policyUsageFilter :: Lens' ListEntitiesForPolicy (Maybe PolicyUsageType)
+ Amazonka.IAM.ListEntitiesForPolicy: newListEntitiesForPolicy :: Text -> ListEntitiesForPolicy
+ Amazonka.IAM.ListEntitiesForPolicy: newListEntitiesForPolicyResponse :: Int -> ListEntitiesForPolicyResponse
+ Amazonka.IAM.ListGroupPolicies: ListGroupPolicies' :: Maybe Text -> Maybe Natural -> Text -> ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: ListGroupPoliciesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Text] -> ListGroupPoliciesResponse
+ Amazonka.IAM.ListGroupPolicies: [$sel:groupName:ListGroupPolicies'] :: ListGroupPolicies -> Text
+ Amazonka.IAM.ListGroupPolicies: [$sel:httpStatus:ListGroupPoliciesResponse'] :: ListGroupPoliciesResponse -> Int
+ Amazonka.IAM.ListGroupPolicies: [$sel:isTruncated:ListGroupPoliciesResponse'] :: ListGroupPoliciesResponse -> Maybe Bool
+ Amazonka.IAM.ListGroupPolicies: [$sel:marker:ListGroupPolicies'] :: ListGroupPolicies -> Maybe Text
+ Amazonka.IAM.ListGroupPolicies: [$sel:marker:ListGroupPoliciesResponse'] :: ListGroupPoliciesResponse -> Maybe Text
+ Amazonka.IAM.ListGroupPolicies: [$sel:maxItems:ListGroupPolicies'] :: ListGroupPolicies -> Maybe Natural
+ Amazonka.IAM.ListGroupPolicies: [$sel:policyNames:ListGroupPoliciesResponse'] :: ListGroupPoliciesResponse -> [Text]
+ Amazonka.IAM.ListGroupPolicies: data ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: data ListGroupPoliciesResponse
+ Amazonka.IAM.ListGroupPolicies: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListGroupPolicies.ListGroupPoliciesResponse
+ Amazonka.IAM.ListGroupPolicies: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListGroupPolicies.ListGroupPoliciesResponse
+ Amazonka.IAM.ListGroupPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListGroupPolicies.ListGroupPoliciesResponse
+ Amazonka.IAM.ListGroupPolicies: instance GHC.Read.Read Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance GHC.Read.Read Amazonka.IAM.ListGroupPolicies.ListGroupPoliciesResponse
+ Amazonka.IAM.ListGroupPolicies: instance GHC.Show.Show Amazonka.IAM.ListGroupPolicies.ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: instance GHC.Show.Show Amazonka.IAM.ListGroupPolicies.ListGroupPoliciesResponse
+ Amazonka.IAM.ListGroupPolicies: listGroupPoliciesResponse_httpStatus :: Lens' ListGroupPoliciesResponse Int
+ Amazonka.IAM.ListGroupPolicies: listGroupPoliciesResponse_isTruncated :: Lens' ListGroupPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.ListGroupPolicies: listGroupPoliciesResponse_marker :: Lens' ListGroupPoliciesResponse (Maybe Text)
+ Amazonka.IAM.ListGroupPolicies: listGroupPoliciesResponse_policyNames :: Lens' ListGroupPoliciesResponse [Text]
+ Amazonka.IAM.ListGroupPolicies: listGroupPolicies_groupName :: Lens' ListGroupPolicies Text
+ Amazonka.IAM.ListGroupPolicies: listGroupPolicies_marker :: Lens' ListGroupPolicies (Maybe Text)
+ Amazonka.IAM.ListGroupPolicies: listGroupPolicies_maxItems :: Lens' ListGroupPolicies (Maybe Natural)
+ Amazonka.IAM.ListGroupPolicies: newListGroupPolicies :: Text -> ListGroupPolicies
+ Amazonka.IAM.ListGroupPolicies: newListGroupPoliciesResponse :: Int -> ListGroupPoliciesResponse
+ Amazonka.IAM.ListGroups: ListGroups' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListGroups
+ Amazonka.IAM.ListGroups: ListGroupsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Group] -> ListGroupsResponse
+ Amazonka.IAM.ListGroups: [$sel:groups:ListGroupsResponse'] :: ListGroupsResponse -> [Group]
+ Amazonka.IAM.ListGroups: [$sel:httpStatus:ListGroupsResponse'] :: ListGroupsResponse -> Int
+ Amazonka.IAM.ListGroups: [$sel:isTruncated:ListGroupsResponse'] :: ListGroupsResponse -> Maybe Bool
+ Amazonka.IAM.ListGroups: [$sel:marker:ListGroups'] :: ListGroups -> Maybe Text
+ Amazonka.IAM.ListGroups: [$sel:marker:ListGroupsResponse'] :: ListGroupsResponse -> Maybe Text
+ Amazonka.IAM.ListGroups: [$sel:maxItems:ListGroups'] :: ListGroups -> Maybe Natural
+ Amazonka.IAM.ListGroups: [$sel:pathPrefix:ListGroups'] :: ListGroups -> Maybe Text
+ Amazonka.IAM.ListGroups: data ListGroups
+ Amazonka.IAM.ListGroups: data ListGroupsResponse
+ Amazonka.IAM.ListGroups: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance Control.DeepSeq.NFData Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance Control.DeepSeq.NFData Amazonka.IAM.ListGroups.ListGroupsResponse
+ Amazonka.IAM.ListGroups: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance GHC.Classes.Eq Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance GHC.Classes.Eq Amazonka.IAM.ListGroups.ListGroupsResponse
+ Amazonka.IAM.ListGroups: instance GHC.Generics.Generic Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance GHC.Generics.Generic Amazonka.IAM.ListGroups.ListGroupsResponse
+ Amazonka.IAM.ListGroups: instance GHC.Read.Read Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance GHC.Read.Read Amazonka.IAM.ListGroups.ListGroupsResponse
+ Amazonka.IAM.ListGroups: instance GHC.Show.Show Amazonka.IAM.ListGroups.ListGroups
+ Amazonka.IAM.ListGroups: instance GHC.Show.Show Amazonka.IAM.ListGroups.ListGroupsResponse
+ Amazonka.IAM.ListGroups: listGroupsResponse_groups :: Lens' ListGroupsResponse [Group]
+ Amazonka.IAM.ListGroups: listGroupsResponse_httpStatus :: Lens' ListGroupsResponse Int
+ Amazonka.IAM.ListGroups: listGroupsResponse_isTruncated :: Lens' ListGroupsResponse (Maybe Bool)
+ Amazonka.IAM.ListGroups: listGroupsResponse_marker :: Lens' ListGroupsResponse (Maybe Text)
+ Amazonka.IAM.ListGroups: listGroups_marker :: Lens' ListGroups (Maybe Text)
+ Amazonka.IAM.ListGroups: listGroups_maxItems :: Lens' ListGroups (Maybe Natural)
+ Amazonka.IAM.ListGroups: listGroups_pathPrefix :: Lens' ListGroups (Maybe Text)
+ Amazonka.IAM.ListGroups: newListGroups :: ListGroups
+ Amazonka.IAM.ListGroups: newListGroupsResponse :: Int -> ListGroupsResponse
+ Amazonka.IAM.ListGroupsForUser: ListGroupsForUser' :: Maybe Text -> Maybe Natural -> Text -> ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: ListGroupsForUserResponse' :: Maybe Bool -> Maybe Text -> Int -> [Group] -> ListGroupsForUserResponse
+ Amazonka.IAM.ListGroupsForUser: [$sel:groups:ListGroupsForUserResponse'] :: ListGroupsForUserResponse -> [Group]
+ Amazonka.IAM.ListGroupsForUser: [$sel:httpStatus:ListGroupsForUserResponse'] :: ListGroupsForUserResponse -> Int
+ Amazonka.IAM.ListGroupsForUser: [$sel:isTruncated:ListGroupsForUserResponse'] :: ListGroupsForUserResponse -> Maybe Bool
+ Amazonka.IAM.ListGroupsForUser: [$sel:marker:ListGroupsForUser'] :: ListGroupsForUser -> Maybe Text
+ Amazonka.IAM.ListGroupsForUser: [$sel:marker:ListGroupsForUserResponse'] :: ListGroupsForUserResponse -> Maybe Text
+ Amazonka.IAM.ListGroupsForUser: [$sel:maxItems:ListGroupsForUser'] :: ListGroupsForUser -> Maybe Natural
+ Amazonka.IAM.ListGroupsForUser: [$sel:userName:ListGroupsForUser'] :: ListGroupsForUser -> Text
+ Amazonka.IAM.ListGroupsForUser: data ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: data ListGroupsForUserResponse
+ Amazonka.IAM.ListGroupsForUser: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance Control.DeepSeq.NFData Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance Control.DeepSeq.NFData Amazonka.IAM.ListGroupsForUser.ListGroupsForUserResponse
+ Amazonka.IAM.ListGroupsForUser: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance GHC.Classes.Eq Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance GHC.Classes.Eq Amazonka.IAM.ListGroupsForUser.ListGroupsForUserResponse
+ Amazonka.IAM.ListGroupsForUser: instance GHC.Generics.Generic Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance GHC.Generics.Generic Amazonka.IAM.ListGroupsForUser.ListGroupsForUserResponse
+ Amazonka.IAM.ListGroupsForUser: instance GHC.Read.Read Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance GHC.Read.Read Amazonka.IAM.ListGroupsForUser.ListGroupsForUserResponse
+ Amazonka.IAM.ListGroupsForUser: instance GHC.Show.Show Amazonka.IAM.ListGroupsForUser.ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: instance GHC.Show.Show Amazonka.IAM.ListGroupsForUser.ListGroupsForUserResponse
+ Amazonka.IAM.ListGroupsForUser: listGroupsForUserResponse_groups :: Lens' ListGroupsForUserResponse [Group]
+ Amazonka.IAM.ListGroupsForUser: listGroupsForUserResponse_httpStatus :: Lens' ListGroupsForUserResponse Int
+ Amazonka.IAM.ListGroupsForUser: listGroupsForUserResponse_isTruncated :: Lens' ListGroupsForUserResponse (Maybe Bool)
+ Amazonka.IAM.ListGroupsForUser: listGroupsForUserResponse_marker :: Lens' ListGroupsForUserResponse (Maybe Text)
+ Amazonka.IAM.ListGroupsForUser: listGroupsForUser_marker :: Lens' ListGroupsForUser (Maybe Text)
+ Amazonka.IAM.ListGroupsForUser: listGroupsForUser_maxItems :: Lens' ListGroupsForUser (Maybe Natural)
+ Amazonka.IAM.ListGroupsForUser: listGroupsForUser_userName :: Lens' ListGroupsForUser Text
+ Amazonka.IAM.ListGroupsForUser: newListGroupsForUser :: Text -> ListGroupsForUser
+ Amazonka.IAM.ListGroupsForUser: newListGroupsForUserResponse :: Int -> ListGroupsForUserResponse
+ Amazonka.IAM.ListInstanceProfileTags: ListInstanceProfileTags' :: Maybe Text -> Maybe Natural -> Text -> ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: ListInstanceProfileTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListInstanceProfileTagsResponse
+ Amazonka.IAM.ListInstanceProfileTags: [$sel:httpStatus:ListInstanceProfileTagsResponse'] :: ListInstanceProfileTagsResponse -> Int
+ Amazonka.IAM.ListInstanceProfileTags: [$sel:instanceProfileName:ListInstanceProfileTags'] :: ListInstanceProfileTags -> Text
+ Amazonka.IAM.ListInstanceProfileTags: [$sel:isTruncated:ListInstanceProfileTagsResponse'] :: ListInstanceProfileTagsResponse -> Maybe Bool
+ Amazonka.IAM.ListInstanceProfileTags: [$sel:marker:ListInstanceProfileTags'] :: ListInstanceProfileTags -> Maybe Text
+ Amazonka.IAM.ListInstanceProfileTags: [$sel:marker:ListInstanceProfileTagsResponse'] :: ListInstanceProfileTagsResponse -> Maybe Text
+ Amazonka.IAM.ListInstanceProfileTags: [$sel:maxItems:ListInstanceProfileTags'] :: ListInstanceProfileTags -> Maybe Natural
+ Amazonka.IAM.ListInstanceProfileTags: [$sel:tags:ListInstanceProfileTagsResponse'] :: ListInstanceProfileTagsResponse -> [Tag]
+ Amazonka.IAM.ListInstanceProfileTags: data ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: data ListInstanceProfileTagsResponse
+ Amazonka.IAM.ListInstanceProfileTags: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTagsResponse
+ Amazonka.IAM.ListInstanceProfileTags: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance GHC.Classes.Eq Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance GHC.Classes.Eq Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTagsResponse
+ Amazonka.IAM.ListInstanceProfileTags: instance GHC.Generics.Generic Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance GHC.Generics.Generic Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTagsResponse
+ Amazonka.IAM.ListInstanceProfileTags: instance GHC.Read.Read Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance GHC.Read.Read Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTagsResponse
+ Amazonka.IAM.ListInstanceProfileTags: instance GHC.Show.Show Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: instance GHC.Show.Show Amazonka.IAM.ListInstanceProfileTags.ListInstanceProfileTagsResponse
+ Amazonka.IAM.ListInstanceProfileTags: listInstanceProfileTagsResponse_httpStatus :: Lens' ListInstanceProfileTagsResponse Int
+ Amazonka.IAM.ListInstanceProfileTags: listInstanceProfileTagsResponse_isTruncated :: Lens' ListInstanceProfileTagsResponse (Maybe Bool)
+ Amazonka.IAM.ListInstanceProfileTags: listInstanceProfileTagsResponse_marker :: Lens' ListInstanceProfileTagsResponse (Maybe Text)
+ Amazonka.IAM.ListInstanceProfileTags: listInstanceProfileTagsResponse_tags :: Lens' ListInstanceProfileTagsResponse [Tag]
+ Amazonka.IAM.ListInstanceProfileTags: listInstanceProfileTags_instanceProfileName :: Lens' ListInstanceProfileTags Text
+ Amazonka.IAM.ListInstanceProfileTags: listInstanceProfileTags_marker :: Lens' ListInstanceProfileTags (Maybe Text)
+ Amazonka.IAM.ListInstanceProfileTags: listInstanceProfileTags_maxItems :: Lens' ListInstanceProfileTags (Maybe Natural)
+ Amazonka.IAM.ListInstanceProfileTags: newListInstanceProfileTags :: Text -> ListInstanceProfileTags
+ Amazonka.IAM.ListInstanceProfileTags: newListInstanceProfileTagsResponse :: Int -> ListInstanceProfileTagsResponse
+ Amazonka.IAM.ListInstanceProfiles: ListInstanceProfiles' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: ListInstanceProfilesResponse' :: Maybe Bool -> Maybe Text -> Int -> [InstanceProfile] -> ListInstanceProfilesResponse
+ Amazonka.IAM.ListInstanceProfiles: [$sel:httpStatus:ListInstanceProfilesResponse'] :: ListInstanceProfilesResponse -> Int
+ Amazonka.IAM.ListInstanceProfiles: [$sel:instanceProfiles:ListInstanceProfilesResponse'] :: ListInstanceProfilesResponse -> [InstanceProfile]
+ Amazonka.IAM.ListInstanceProfiles: [$sel:isTruncated:ListInstanceProfilesResponse'] :: ListInstanceProfilesResponse -> Maybe Bool
+ Amazonka.IAM.ListInstanceProfiles: [$sel:marker:ListInstanceProfiles'] :: ListInstanceProfiles -> Maybe Text
+ Amazonka.IAM.ListInstanceProfiles: [$sel:marker:ListInstanceProfilesResponse'] :: ListInstanceProfilesResponse -> Maybe Text
+ Amazonka.IAM.ListInstanceProfiles: [$sel:maxItems:ListInstanceProfiles'] :: ListInstanceProfiles -> Maybe Natural
+ Amazonka.IAM.ListInstanceProfiles: [$sel:pathPrefix:ListInstanceProfiles'] :: ListInstanceProfiles -> Maybe Text
+ Amazonka.IAM.ListInstanceProfiles: data ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: data ListInstanceProfilesResponse
+ Amazonka.IAM.ListInstanceProfiles: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance Control.DeepSeq.NFData Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance Control.DeepSeq.NFData Amazonka.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
+ Amazonka.IAM.ListInstanceProfiles: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance GHC.Classes.Eq Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance GHC.Classes.Eq Amazonka.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
+ Amazonka.IAM.ListInstanceProfiles: instance GHC.Generics.Generic Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance GHC.Generics.Generic Amazonka.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
+ Amazonka.IAM.ListInstanceProfiles: instance GHC.Read.Read Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance GHC.Read.Read Amazonka.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
+ Amazonka.IAM.ListInstanceProfiles: instance GHC.Show.Show Amazonka.IAM.ListInstanceProfiles.ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: instance GHC.Show.Show Amazonka.IAM.ListInstanceProfiles.ListInstanceProfilesResponse
+ Amazonka.IAM.ListInstanceProfiles: listInstanceProfilesResponse_httpStatus :: Lens' ListInstanceProfilesResponse Int
+ Amazonka.IAM.ListInstanceProfiles: listInstanceProfilesResponse_instanceProfiles :: Lens' ListInstanceProfilesResponse [InstanceProfile]
+ Amazonka.IAM.ListInstanceProfiles: listInstanceProfilesResponse_isTruncated :: Lens' ListInstanceProfilesResponse (Maybe Bool)
+ Amazonka.IAM.ListInstanceProfiles: listInstanceProfilesResponse_marker :: Lens' ListInstanceProfilesResponse (Maybe Text)
+ Amazonka.IAM.ListInstanceProfiles: listInstanceProfiles_marker :: Lens' ListInstanceProfiles (Maybe Text)
+ Amazonka.IAM.ListInstanceProfiles: listInstanceProfiles_maxItems :: Lens' ListInstanceProfiles (Maybe Natural)
+ Amazonka.IAM.ListInstanceProfiles: listInstanceProfiles_pathPrefix :: Lens' ListInstanceProfiles (Maybe Text)
+ Amazonka.IAM.ListInstanceProfiles: newListInstanceProfiles :: ListInstanceProfiles
+ Amazonka.IAM.ListInstanceProfiles: newListInstanceProfilesResponse :: Int -> ListInstanceProfilesResponse
+ Amazonka.IAM.ListInstanceProfilesForRole: ListInstanceProfilesForRole' :: Maybe Text -> Maybe Natural -> Text -> ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: ListInstanceProfilesForRoleResponse' :: Maybe Bool -> Maybe Text -> Int -> [InstanceProfile] -> ListInstanceProfilesForRoleResponse
+ Amazonka.IAM.ListInstanceProfilesForRole: [$sel:httpStatus:ListInstanceProfilesForRoleResponse'] :: ListInstanceProfilesForRoleResponse -> Int
+ Amazonka.IAM.ListInstanceProfilesForRole: [$sel:instanceProfiles:ListInstanceProfilesForRoleResponse'] :: ListInstanceProfilesForRoleResponse -> [InstanceProfile]
+ Amazonka.IAM.ListInstanceProfilesForRole: [$sel:isTruncated:ListInstanceProfilesForRoleResponse'] :: ListInstanceProfilesForRoleResponse -> Maybe Bool
+ Amazonka.IAM.ListInstanceProfilesForRole: [$sel:marker:ListInstanceProfilesForRole'] :: ListInstanceProfilesForRole -> Maybe Text
+ Amazonka.IAM.ListInstanceProfilesForRole: [$sel:marker:ListInstanceProfilesForRoleResponse'] :: ListInstanceProfilesForRoleResponse -> Maybe Text
+ Amazonka.IAM.ListInstanceProfilesForRole: [$sel:maxItems:ListInstanceProfilesForRole'] :: ListInstanceProfilesForRole -> Maybe Natural
+ Amazonka.IAM.ListInstanceProfilesForRole: [$sel:roleName:ListInstanceProfilesForRole'] :: ListInstanceProfilesForRole -> Text
+ Amazonka.IAM.ListInstanceProfilesForRole: data ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: data ListInstanceProfilesForRoleResponse
+ Amazonka.IAM.ListInstanceProfilesForRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance Control.DeepSeq.NFData Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance Control.DeepSeq.NFData Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
+ Amazonka.IAM.ListInstanceProfilesForRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance GHC.Classes.Eq Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance GHC.Classes.Eq Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
+ Amazonka.IAM.ListInstanceProfilesForRole: instance GHC.Generics.Generic Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance GHC.Generics.Generic Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
+ Amazonka.IAM.ListInstanceProfilesForRole: instance GHC.Read.Read Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance GHC.Read.Read Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
+ Amazonka.IAM.ListInstanceProfilesForRole: instance GHC.Show.Show Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: instance GHC.Show.Show Amazonka.IAM.ListInstanceProfilesForRole.ListInstanceProfilesForRoleResponse
+ Amazonka.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRoleResponse_httpStatus :: Lens' ListInstanceProfilesForRoleResponse Int
+ Amazonka.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRoleResponse_instanceProfiles :: Lens' ListInstanceProfilesForRoleResponse [InstanceProfile]
+ Amazonka.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRoleResponse_isTruncated :: Lens' ListInstanceProfilesForRoleResponse (Maybe Bool)
+ Amazonka.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRoleResponse_marker :: Lens' ListInstanceProfilesForRoleResponse (Maybe Text)
+ Amazonka.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRole_marker :: Lens' ListInstanceProfilesForRole (Maybe Text)
+ Amazonka.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRole_maxItems :: Lens' ListInstanceProfilesForRole (Maybe Natural)
+ Amazonka.IAM.ListInstanceProfilesForRole: listInstanceProfilesForRole_roleName :: Lens' ListInstanceProfilesForRole Text
+ Amazonka.IAM.ListInstanceProfilesForRole: newListInstanceProfilesForRole :: Text -> ListInstanceProfilesForRole
+ Amazonka.IAM.ListInstanceProfilesForRole: newListInstanceProfilesForRoleResponse :: Int -> ListInstanceProfilesForRoleResponse
+ Amazonka.IAM.ListMFADeviceTags: ListMFADeviceTags' :: Maybe Text -> Maybe Natural -> Text -> ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: ListMFADeviceTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListMFADeviceTagsResponse
+ Amazonka.IAM.ListMFADeviceTags: [$sel:httpStatus:ListMFADeviceTagsResponse'] :: ListMFADeviceTagsResponse -> Int
+ Amazonka.IAM.ListMFADeviceTags: [$sel:isTruncated:ListMFADeviceTagsResponse'] :: ListMFADeviceTagsResponse -> Maybe Bool
+ Amazonka.IAM.ListMFADeviceTags: [$sel:marker:ListMFADeviceTags'] :: ListMFADeviceTags -> Maybe Text
+ Amazonka.IAM.ListMFADeviceTags: [$sel:marker:ListMFADeviceTagsResponse'] :: ListMFADeviceTagsResponse -> Maybe Text
+ Amazonka.IAM.ListMFADeviceTags: [$sel:maxItems:ListMFADeviceTags'] :: ListMFADeviceTags -> Maybe Natural
+ Amazonka.IAM.ListMFADeviceTags: [$sel:serialNumber:ListMFADeviceTags'] :: ListMFADeviceTags -> Text
+ Amazonka.IAM.ListMFADeviceTags: [$sel:tags:ListMFADeviceTagsResponse'] :: ListMFADeviceTagsResponse -> [Tag]
+ Amazonka.IAM.ListMFADeviceTags: data ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: data ListMFADeviceTagsResponse
+ Amazonka.IAM.ListMFADeviceTags: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTagsResponse
+ Amazonka.IAM.ListMFADeviceTags: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance GHC.Classes.Eq Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance GHC.Classes.Eq Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTagsResponse
+ Amazonka.IAM.ListMFADeviceTags: instance GHC.Generics.Generic Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance GHC.Generics.Generic Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTagsResponse
+ Amazonka.IAM.ListMFADeviceTags: instance GHC.Read.Read Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance GHC.Read.Read Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTagsResponse
+ Amazonka.IAM.ListMFADeviceTags: instance GHC.Show.Show Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: instance GHC.Show.Show Amazonka.IAM.ListMFADeviceTags.ListMFADeviceTagsResponse
+ Amazonka.IAM.ListMFADeviceTags: listMFADeviceTagsResponse_httpStatus :: Lens' ListMFADeviceTagsResponse Int
+ Amazonka.IAM.ListMFADeviceTags: listMFADeviceTagsResponse_isTruncated :: Lens' ListMFADeviceTagsResponse (Maybe Bool)
+ Amazonka.IAM.ListMFADeviceTags: listMFADeviceTagsResponse_marker :: Lens' ListMFADeviceTagsResponse (Maybe Text)
+ Amazonka.IAM.ListMFADeviceTags: listMFADeviceTagsResponse_tags :: Lens' ListMFADeviceTagsResponse [Tag]
+ Amazonka.IAM.ListMFADeviceTags: listMFADeviceTags_marker :: Lens' ListMFADeviceTags (Maybe Text)
+ Amazonka.IAM.ListMFADeviceTags: listMFADeviceTags_maxItems :: Lens' ListMFADeviceTags (Maybe Natural)
+ Amazonka.IAM.ListMFADeviceTags: listMFADeviceTags_serialNumber :: Lens' ListMFADeviceTags Text
+ Amazonka.IAM.ListMFADeviceTags: newListMFADeviceTags :: Text -> ListMFADeviceTags
+ Amazonka.IAM.ListMFADeviceTags: newListMFADeviceTagsResponse :: Int -> ListMFADeviceTagsResponse
+ Amazonka.IAM.ListMFADevices: ListMFADevices' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListMFADevices
+ Amazonka.IAM.ListMFADevices: ListMFADevicesResponse' :: Maybe Bool -> Maybe Text -> Int -> [MFADevice] -> ListMFADevicesResponse
+ Amazonka.IAM.ListMFADevices: [$sel:httpStatus:ListMFADevicesResponse'] :: ListMFADevicesResponse -> Int
+ Amazonka.IAM.ListMFADevices: [$sel:isTruncated:ListMFADevicesResponse'] :: ListMFADevicesResponse -> Maybe Bool
+ Amazonka.IAM.ListMFADevices: [$sel:marker:ListMFADevices'] :: ListMFADevices -> Maybe Text
+ Amazonka.IAM.ListMFADevices: [$sel:marker:ListMFADevicesResponse'] :: ListMFADevicesResponse -> Maybe Text
+ Amazonka.IAM.ListMFADevices: [$sel:maxItems:ListMFADevices'] :: ListMFADevices -> Maybe Natural
+ Amazonka.IAM.ListMFADevices: [$sel:mfaDevices:ListMFADevicesResponse'] :: ListMFADevicesResponse -> [MFADevice]
+ Amazonka.IAM.ListMFADevices: [$sel:userName:ListMFADevices'] :: ListMFADevices -> Maybe Text
+ Amazonka.IAM.ListMFADevices: data ListMFADevices
+ Amazonka.IAM.ListMFADevices: data ListMFADevicesResponse
+ Amazonka.IAM.ListMFADevices: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance Control.DeepSeq.NFData Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance Control.DeepSeq.NFData Amazonka.IAM.ListMFADevices.ListMFADevicesResponse
+ Amazonka.IAM.ListMFADevices: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance GHC.Classes.Eq Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance GHC.Classes.Eq Amazonka.IAM.ListMFADevices.ListMFADevicesResponse
+ Amazonka.IAM.ListMFADevices: instance GHC.Generics.Generic Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance GHC.Generics.Generic Amazonka.IAM.ListMFADevices.ListMFADevicesResponse
+ Amazonka.IAM.ListMFADevices: instance GHC.Read.Read Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance GHC.Read.Read Amazonka.IAM.ListMFADevices.ListMFADevicesResponse
+ Amazonka.IAM.ListMFADevices: instance GHC.Show.Show Amazonka.IAM.ListMFADevices.ListMFADevices
+ Amazonka.IAM.ListMFADevices: instance GHC.Show.Show Amazonka.IAM.ListMFADevices.ListMFADevicesResponse
+ Amazonka.IAM.ListMFADevices: listMFADevicesResponse_httpStatus :: Lens' ListMFADevicesResponse Int
+ Amazonka.IAM.ListMFADevices: listMFADevicesResponse_isTruncated :: Lens' ListMFADevicesResponse (Maybe Bool)
+ Amazonka.IAM.ListMFADevices: listMFADevicesResponse_marker :: Lens' ListMFADevicesResponse (Maybe Text)
+ Amazonka.IAM.ListMFADevices: listMFADevicesResponse_mfaDevices :: Lens' ListMFADevicesResponse [MFADevice]
+ Amazonka.IAM.ListMFADevices: listMFADevices_marker :: Lens' ListMFADevices (Maybe Text)
+ Amazonka.IAM.ListMFADevices: listMFADevices_maxItems :: Lens' ListMFADevices (Maybe Natural)
+ Amazonka.IAM.ListMFADevices: listMFADevices_userName :: Lens' ListMFADevices (Maybe Text)
+ Amazonka.IAM.ListMFADevices: newListMFADevices :: ListMFADevices
+ Amazonka.IAM.ListMFADevices: newListMFADevicesResponse :: Int -> ListMFADevicesResponse
+ Amazonka.IAM.ListOpenIDConnectProviderTags: ListOpenIDConnectProviderTags' :: Maybe Text -> Maybe Natural -> Text -> ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: ListOpenIDConnectProviderTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM.ListOpenIDConnectProviderTags: [$sel:httpStatus:ListOpenIDConnectProviderTagsResponse'] :: ListOpenIDConnectProviderTagsResponse -> Int
+ Amazonka.IAM.ListOpenIDConnectProviderTags: [$sel:isTruncated:ListOpenIDConnectProviderTagsResponse'] :: ListOpenIDConnectProviderTagsResponse -> Maybe Bool
+ Amazonka.IAM.ListOpenIDConnectProviderTags: [$sel:marker:ListOpenIDConnectProviderTags'] :: ListOpenIDConnectProviderTags -> Maybe Text
+ Amazonka.IAM.ListOpenIDConnectProviderTags: [$sel:marker:ListOpenIDConnectProviderTagsResponse'] :: ListOpenIDConnectProviderTagsResponse -> Maybe Text
+ Amazonka.IAM.ListOpenIDConnectProviderTags: [$sel:maxItems:ListOpenIDConnectProviderTags'] :: ListOpenIDConnectProviderTags -> Maybe Natural
+ Amazonka.IAM.ListOpenIDConnectProviderTags: [$sel:openIDConnectProviderArn:ListOpenIDConnectProviderTags'] :: ListOpenIDConnectProviderTags -> Text
+ Amazonka.IAM.ListOpenIDConnectProviderTags: [$sel:tags:ListOpenIDConnectProviderTagsResponse'] :: ListOpenIDConnectProviderTagsResponse -> [Tag]
+ Amazonka.IAM.ListOpenIDConnectProviderTags: data ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: data ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance GHC.Classes.Eq Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance GHC.Classes.Eq Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance GHC.Generics.Generic Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance GHC.Generics.Generic Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance GHC.Read.Read Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance GHC.Read.Read Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance GHC.Show.Show Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: instance GHC.Show.Show Amazonka.IAM.ListOpenIDConnectProviderTags.ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM.ListOpenIDConnectProviderTags: listOpenIDConnectProviderTagsResponse_httpStatus :: Lens' ListOpenIDConnectProviderTagsResponse Int
+ Amazonka.IAM.ListOpenIDConnectProviderTags: listOpenIDConnectProviderTagsResponse_isTruncated :: Lens' ListOpenIDConnectProviderTagsResponse (Maybe Bool)
+ Amazonka.IAM.ListOpenIDConnectProviderTags: listOpenIDConnectProviderTagsResponse_marker :: Lens' ListOpenIDConnectProviderTagsResponse (Maybe Text)
+ Amazonka.IAM.ListOpenIDConnectProviderTags: listOpenIDConnectProviderTagsResponse_tags :: Lens' ListOpenIDConnectProviderTagsResponse [Tag]
+ Amazonka.IAM.ListOpenIDConnectProviderTags: listOpenIDConnectProviderTags_marker :: Lens' ListOpenIDConnectProviderTags (Maybe Text)
+ Amazonka.IAM.ListOpenIDConnectProviderTags: listOpenIDConnectProviderTags_maxItems :: Lens' ListOpenIDConnectProviderTags (Maybe Natural)
+ Amazonka.IAM.ListOpenIDConnectProviderTags: listOpenIDConnectProviderTags_openIDConnectProviderArn :: Lens' ListOpenIDConnectProviderTags Text
+ Amazonka.IAM.ListOpenIDConnectProviderTags: newListOpenIDConnectProviderTags :: Text -> ListOpenIDConnectProviderTags
+ Amazonka.IAM.ListOpenIDConnectProviderTags: newListOpenIDConnectProviderTagsResponse :: Int -> ListOpenIDConnectProviderTagsResponse
+ Amazonka.IAM.ListOpenIDConnectProviders: ListOpenIDConnectProviders' :: ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: ListOpenIDConnectProvidersResponse' :: Maybe [OpenIDConnectProviderListEntry] -> Int -> ListOpenIDConnectProvidersResponse
+ Amazonka.IAM.ListOpenIDConnectProviders: [$sel:httpStatus:ListOpenIDConnectProvidersResponse'] :: ListOpenIDConnectProvidersResponse -> Int
+ Amazonka.IAM.ListOpenIDConnectProviders: [$sel:openIDConnectProviderList:ListOpenIDConnectProvidersResponse'] :: ListOpenIDConnectProvidersResponse -> Maybe [OpenIDConnectProviderListEntry]
+ Amazonka.IAM.ListOpenIDConnectProviders: data ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: data ListOpenIDConnectProvidersResponse
+ Amazonka.IAM.ListOpenIDConnectProviders: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance Control.DeepSeq.NFData Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance Control.DeepSeq.NFData Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProvidersResponse
+ Amazonka.IAM.ListOpenIDConnectProviders: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance GHC.Classes.Eq Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance GHC.Classes.Eq Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProvidersResponse
+ Amazonka.IAM.ListOpenIDConnectProviders: instance GHC.Generics.Generic Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance GHC.Generics.Generic Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProvidersResponse
+ Amazonka.IAM.ListOpenIDConnectProviders: instance GHC.Read.Read Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance GHC.Read.Read Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProvidersResponse
+ Amazonka.IAM.ListOpenIDConnectProviders: instance GHC.Show.Show Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: instance GHC.Show.Show Amazonka.IAM.ListOpenIDConnectProviders.ListOpenIDConnectProvidersResponse
+ Amazonka.IAM.ListOpenIDConnectProviders: listOpenIDConnectProvidersResponse_httpStatus :: Lens' ListOpenIDConnectProvidersResponse Int
+ Amazonka.IAM.ListOpenIDConnectProviders: listOpenIDConnectProvidersResponse_openIDConnectProviderList :: Lens' ListOpenIDConnectProvidersResponse (Maybe [OpenIDConnectProviderListEntry])
+ Amazonka.IAM.ListOpenIDConnectProviders: newListOpenIDConnectProviders :: ListOpenIDConnectProviders
+ Amazonka.IAM.ListOpenIDConnectProviders: newListOpenIDConnectProvidersResponse :: Int -> ListOpenIDConnectProvidersResponse
+ Amazonka.IAM.ListPolicies: ListPolicies' :: Maybe Text -> Maybe Natural -> Maybe Bool -> Maybe Text -> Maybe PolicyUsageType -> Maybe PolicyScopeType -> ListPolicies
+ Amazonka.IAM.ListPolicies: ListPoliciesResponse' :: Maybe Bool -> Maybe Text -> Maybe [Policy] -> Int -> ListPoliciesResponse
+ Amazonka.IAM.ListPolicies: [$sel:httpStatus:ListPoliciesResponse'] :: ListPoliciesResponse -> Int
+ Amazonka.IAM.ListPolicies: [$sel:isTruncated:ListPoliciesResponse'] :: ListPoliciesResponse -> Maybe Bool
+ Amazonka.IAM.ListPolicies: [$sel:marker:ListPolicies'] :: ListPolicies -> Maybe Text
+ Amazonka.IAM.ListPolicies: [$sel:marker:ListPoliciesResponse'] :: ListPoliciesResponse -> Maybe Text
+ Amazonka.IAM.ListPolicies: [$sel:maxItems:ListPolicies'] :: ListPolicies -> Maybe Natural
+ Amazonka.IAM.ListPolicies: [$sel:onlyAttached:ListPolicies'] :: ListPolicies -> Maybe Bool
+ Amazonka.IAM.ListPolicies: [$sel:pathPrefix:ListPolicies'] :: ListPolicies -> Maybe Text
+ Amazonka.IAM.ListPolicies: [$sel:policies:ListPoliciesResponse'] :: ListPoliciesResponse -> Maybe [Policy]
+ Amazonka.IAM.ListPolicies: [$sel:policyUsageFilter:ListPolicies'] :: ListPolicies -> Maybe PolicyUsageType
+ Amazonka.IAM.ListPolicies: [$sel:scope:ListPolicies'] :: ListPolicies -> Maybe PolicyScopeType
+ Amazonka.IAM.ListPolicies: data ListPolicies
+ Amazonka.IAM.ListPolicies: data ListPoliciesResponse
+ Amazonka.IAM.ListPolicies: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListPolicies.ListPoliciesResponse
+ Amazonka.IAM.ListPolicies: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListPolicies.ListPoliciesResponse
+ Amazonka.IAM.ListPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListPolicies.ListPoliciesResponse
+ Amazonka.IAM.ListPolicies: instance GHC.Read.Read Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance GHC.Read.Read Amazonka.IAM.ListPolicies.ListPoliciesResponse
+ Amazonka.IAM.ListPolicies: instance GHC.Show.Show Amazonka.IAM.ListPolicies.ListPolicies
+ Amazonka.IAM.ListPolicies: instance GHC.Show.Show Amazonka.IAM.ListPolicies.ListPoliciesResponse
+ Amazonka.IAM.ListPolicies: listPoliciesResponse_httpStatus :: Lens' ListPoliciesResponse Int
+ Amazonka.IAM.ListPolicies: listPoliciesResponse_isTruncated :: Lens' ListPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.ListPolicies: listPoliciesResponse_marker :: Lens' ListPoliciesResponse (Maybe Text)
+ Amazonka.IAM.ListPolicies: listPoliciesResponse_policies :: Lens' ListPoliciesResponse (Maybe [Policy])
+ Amazonka.IAM.ListPolicies: listPolicies_marker :: Lens' ListPolicies (Maybe Text)
+ Amazonka.IAM.ListPolicies: listPolicies_maxItems :: Lens' ListPolicies (Maybe Natural)
+ Amazonka.IAM.ListPolicies: listPolicies_onlyAttached :: Lens' ListPolicies (Maybe Bool)
+ Amazonka.IAM.ListPolicies: listPolicies_pathPrefix :: Lens' ListPolicies (Maybe Text)
+ Amazonka.IAM.ListPolicies: listPolicies_policyUsageFilter :: Lens' ListPolicies (Maybe PolicyUsageType)
+ Amazonka.IAM.ListPolicies: listPolicies_scope :: Lens' ListPolicies (Maybe PolicyScopeType)
+ Amazonka.IAM.ListPolicies: newListPolicies :: ListPolicies
+ Amazonka.IAM.ListPolicies: newListPoliciesResponse :: Int -> ListPoliciesResponse
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: ListPoliciesGrantingServiceAccess' :: Maybe Text -> Text -> NonEmpty Text -> ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: ListPoliciesGrantingServiceAccessResponse' :: Maybe Bool -> Maybe Text -> Int -> [ListPoliciesGrantingServiceAccessEntry] -> ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: [$sel:arn:ListPoliciesGrantingServiceAccess'] :: ListPoliciesGrantingServiceAccess -> Text
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: [$sel:httpStatus:ListPoliciesGrantingServiceAccessResponse'] :: ListPoliciesGrantingServiceAccessResponse -> Int
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: [$sel:isTruncated:ListPoliciesGrantingServiceAccessResponse'] :: ListPoliciesGrantingServiceAccessResponse -> Maybe Bool
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: [$sel:marker:ListPoliciesGrantingServiceAccess'] :: ListPoliciesGrantingServiceAccess -> Maybe Text
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: [$sel:marker:ListPoliciesGrantingServiceAccessResponse'] :: ListPoliciesGrantingServiceAccessResponse -> Maybe Text
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: [$sel:policiesGrantingServiceAccess:ListPoliciesGrantingServiceAccessResponse'] :: ListPoliciesGrantingServiceAccessResponse -> [ListPoliciesGrantingServiceAccessEntry]
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: [$sel:serviceNamespaces:ListPoliciesGrantingServiceAccess'] :: ListPoliciesGrantingServiceAccess -> NonEmpty Text
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: data ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: data ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance Control.DeepSeq.NFData Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance Control.DeepSeq.NFData Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance GHC.Classes.Eq Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance GHC.Classes.Eq Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance GHC.Generics.Generic Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance GHC.Generics.Generic Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance GHC.Read.Read Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance GHC.Read.Read Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance GHC.Show.Show Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: instance GHC.Show.Show Amazonka.IAM.ListPoliciesGrantingServiceAccess.ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: listPoliciesGrantingServiceAccessResponse_httpStatus :: Lens' ListPoliciesGrantingServiceAccessResponse Int
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: listPoliciesGrantingServiceAccessResponse_isTruncated :: Lens' ListPoliciesGrantingServiceAccessResponse (Maybe Bool)
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: listPoliciesGrantingServiceAccessResponse_marker :: Lens' ListPoliciesGrantingServiceAccessResponse (Maybe Text)
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: listPoliciesGrantingServiceAccessResponse_policiesGrantingServiceAccess :: Lens' ListPoliciesGrantingServiceAccessResponse [ListPoliciesGrantingServiceAccessEntry]
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: listPoliciesGrantingServiceAccess_arn :: Lens' ListPoliciesGrantingServiceAccess Text
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: listPoliciesGrantingServiceAccess_marker :: Lens' ListPoliciesGrantingServiceAccess (Maybe Text)
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: listPoliciesGrantingServiceAccess_serviceNamespaces :: Lens' ListPoliciesGrantingServiceAccess (NonEmpty Text)
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: newListPoliciesGrantingServiceAccess :: Text -> NonEmpty Text -> ListPoliciesGrantingServiceAccess
+ Amazonka.IAM.ListPoliciesGrantingServiceAccess: newListPoliciesGrantingServiceAccessResponse :: Int -> ListPoliciesGrantingServiceAccessResponse
+ Amazonka.IAM.ListPolicyTags: ListPolicyTags' :: Maybe Text -> Maybe Natural -> Text -> ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: ListPolicyTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListPolicyTagsResponse
+ Amazonka.IAM.ListPolicyTags: [$sel:httpStatus:ListPolicyTagsResponse'] :: ListPolicyTagsResponse -> Int
+ Amazonka.IAM.ListPolicyTags: [$sel:isTruncated:ListPolicyTagsResponse'] :: ListPolicyTagsResponse -> Maybe Bool
+ Amazonka.IAM.ListPolicyTags: [$sel:marker:ListPolicyTags'] :: ListPolicyTags -> Maybe Text
+ Amazonka.IAM.ListPolicyTags: [$sel:marker:ListPolicyTagsResponse'] :: ListPolicyTagsResponse -> Maybe Text
+ Amazonka.IAM.ListPolicyTags: [$sel:maxItems:ListPolicyTags'] :: ListPolicyTags -> Maybe Natural
+ Amazonka.IAM.ListPolicyTags: [$sel:policyArn:ListPolicyTags'] :: ListPolicyTags -> Text
+ Amazonka.IAM.ListPolicyTags: [$sel:tags:ListPolicyTagsResponse'] :: ListPolicyTagsResponse -> [Tag]
+ Amazonka.IAM.ListPolicyTags: data ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: data ListPolicyTagsResponse
+ Amazonka.IAM.ListPolicyTags: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListPolicyTags.ListPolicyTagsResponse
+ Amazonka.IAM.ListPolicyTags: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance GHC.Classes.Eq Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance GHC.Classes.Eq Amazonka.IAM.ListPolicyTags.ListPolicyTagsResponse
+ Amazonka.IAM.ListPolicyTags: instance GHC.Generics.Generic Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance GHC.Generics.Generic Amazonka.IAM.ListPolicyTags.ListPolicyTagsResponse
+ Amazonka.IAM.ListPolicyTags: instance GHC.Read.Read Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance GHC.Read.Read Amazonka.IAM.ListPolicyTags.ListPolicyTagsResponse
+ Amazonka.IAM.ListPolicyTags: instance GHC.Show.Show Amazonka.IAM.ListPolicyTags.ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: instance GHC.Show.Show Amazonka.IAM.ListPolicyTags.ListPolicyTagsResponse
+ Amazonka.IAM.ListPolicyTags: listPolicyTagsResponse_httpStatus :: Lens' ListPolicyTagsResponse Int
+ Amazonka.IAM.ListPolicyTags: listPolicyTagsResponse_isTruncated :: Lens' ListPolicyTagsResponse (Maybe Bool)
+ Amazonka.IAM.ListPolicyTags: listPolicyTagsResponse_marker :: Lens' ListPolicyTagsResponse (Maybe Text)
+ Amazonka.IAM.ListPolicyTags: listPolicyTagsResponse_tags :: Lens' ListPolicyTagsResponse [Tag]
+ Amazonka.IAM.ListPolicyTags: listPolicyTags_marker :: Lens' ListPolicyTags (Maybe Text)
+ Amazonka.IAM.ListPolicyTags: listPolicyTags_maxItems :: Lens' ListPolicyTags (Maybe Natural)
+ Amazonka.IAM.ListPolicyTags: listPolicyTags_policyArn :: Lens' ListPolicyTags Text
+ Amazonka.IAM.ListPolicyTags: newListPolicyTags :: Text -> ListPolicyTags
+ Amazonka.IAM.ListPolicyTags: newListPolicyTagsResponse :: Int -> ListPolicyTagsResponse
+ Amazonka.IAM.ListPolicyVersions: ListPolicyVersions' :: Maybe Text -> Maybe Natural -> Text -> ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: ListPolicyVersionsResponse' :: Maybe Bool -> Maybe Text -> Maybe [PolicyVersion] -> Int -> ListPolicyVersionsResponse
+ Amazonka.IAM.ListPolicyVersions: [$sel:httpStatus:ListPolicyVersionsResponse'] :: ListPolicyVersionsResponse -> Int
+ Amazonka.IAM.ListPolicyVersions: [$sel:isTruncated:ListPolicyVersionsResponse'] :: ListPolicyVersionsResponse -> Maybe Bool
+ Amazonka.IAM.ListPolicyVersions: [$sel:marker:ListPolicyVersions'] :: ListPolicyVersions -> Maybe Text
+ Amazonka.IAM.ListPolicyVersions: [$sel:marker:ListPolicyVersionsResponse'] :: ListPolicyVersionsResponse -> Maybe Text
+ Amazonka.IAM.ListPolicyVersions: [$sel:maxItems:ListPolicyVersions'] :: ListPolicyVersions -> Maybe Natural
+ Amazonka.IAM.ListPolicyVersions: [$sel:policyArn:ListPolicyVersions'] :: ListPolicyVersions -> Text
+ Amazonka.IAM.ListPolicyVersions: [$sel:versions:ListPolicyVersionsResponse'] :: ListPolicyVersionsResponse -> Maybe [PolicyVersion]
+ Amazonka.IAM.ListPolicyVersions: data ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: data ListPolicyVersionsResponse
+ Amazonka.IAM.ListPolicyVersions: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance Control.DeepSeq.NFData Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance Control.DeepSeq.NFData Amazonka.IAM.ListPolicyVersions.ListPolicyVersionsResponse
+ Amazonka.IAM.ListPolicyVersions: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance GHC.Classes.Eq Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance GHC.Classes.Eq Amazonka.IAM.ListPolicyVersions.ListPolicyVersionsResponse
+ Amazonka.IAM.ListPolicyVersions: instance GHC.Generics.Generic Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance GHC.Generics.Generic Amazonka.IAM.ListPolicyVersions.ListPolicyVersionsResponse
+ Amazonka.IAM.ListPolicyVersions: instance GHC.Read.Read Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance GHC.Read.Read Amazonka.IAM.ListPolicyVersions.ListPolicyVersionsResponse
+ Amazonka.IAM.ListPolicyVersions: instance GHC.Show.Show Amazonka.IAM.ListPolicyVersions.ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: instance GHC.Show.Show Amazonka.IAM.ListPolicyVersions.ListPolicyVersionsResponse
+ Amazonka.IAM.ListPolicyVersions: listPolicyVersionsResponse_httpStatus :: Lens' ListPolicyVersionsResponse Int
+ Amazonka.IAM.ListPolicyVersions: listPolicyVersionsResponse_isTruncated :: Lens' ListPolicyVersionsResponse (Maybe Bool)
+ Amazonka.IAM.ListPolicyVersions: listPolicyVersionsResponse_marker :: Lens' ListPolicyVersionsResponse (Maybe Text)
+ Amazonka.IAM.ListPolicyVersions: listPolicyVersionsResponse_versions :: Lens' ListPolicyVersionsResponse (Maybe [PolicyVersion])
+ Amazonka.IAM.ListPolicyVersions: listPolicyVersions_marker :: Lens' ListPolicyVersions (Maybe Text)
+ Amazonka.IAM.ListPolicyVersions: listPolicyVersions_maxItems :: Lens' ListPolicyVersions (Maybe Natural)
+ Amazonka.IAM.ListPolicyVersions: listPolicyVersions_policyArn :: Lens' ListPolicyVersions Text
+ Amazonka.IAM.ListPolicyVersions: newListPolicyVersions :: Text -> ListPolicyVersions
+ Amazonka.IAM.ListPolicyVersions: newListPolicyVersionsResponse :: Int -> ListPolicyVersionsResponse
+ Amazonka.IAM.ListRolePolicies: ListRolePolicies' :: Maybe Text -> Maybe Natural -> Text -> ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: ListRolePoliciesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Text] -> ListRolePoliciesResponse
+ Amazonka.IAM.ListRolePolicies: [$sel:httpStatus:ListRolePoliciesResponse'] :: ListRolePoliciesResponse -> Int
+ Amazonka.IAM.ListRolePolicies: [$sel:isTruncated:ListRolePoliciesResponse'] :: ListRolePoliciesResponse -> Maybe Bool
+ Amazonka.IAM.ListRolePolicies: [$sel:marker:ListRolePolicies'] :: ListRolePolicies -> Maybe Text
+ Amazonka.IAM.ListRolePolicies: [$sel:marker:ListRolePoliciesResponse'] :: ListRolePoliciesResponse -> Maybe Text
+ Amazonka.IAM.ListRolePolicies: [$sel:maxItems:ListRolePolicies'] :: ListRolePolicies -> Maybe Natural
+ Amazonka.IAM.ListRolePolicies: [$sel:policyNames:ListRolePoliciesResponse'] :: ListRolePoliciesResponse -> [Text]
+ Amazonka.IAM.ListRolePolicies: [$sel:roleName:ListRolePolicies'] :: ListRolePolicies -> Text
+ Amazonka.IAM.ListRolePolicies: data ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: data ListRolePoliciesResponse
+ Amazonka.IAM.ListRolePolicies: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListRolePolicies.ListRolePoliciesResponse
+ Amazonka.IAM.ListRolePolicies: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance GHC.Classes.Eq Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance GHC.Classes.Eq Amazonka.IAM.ListRolePolicies.ListRolePoliciesResponse
+ Amazonka.IAM.ListRolePolicies: instance GHC.Generics.Generic Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance GHC.Generics.Generic Amazonka.IAM.ListRolePolicies.ListRolePoliciesResponse
+ Amazonka.IAM.ListRolePolicies: instance GHC.Read.Read Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance GHC.Read.Read Amazonka.IAM.ListRolePolicies.ListRolePoliciesResponse
+ Amazonka.IAM.ListRolePolicies: instance GHC.Show.Show Amazonka.IAM.ListRolePolicies.ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: instance GHC.Show.Show Amazonka.IAM.ListRolePolicies.ListRolePoliciesResponse
+ Amazonka.IAM.ListRolePolicies: listRolePoliciesResponse_httpStatus :: Lens' ListRolePoliciesResponse Int
+ Amazonka.IAM.ListRolePolicies: listRolePoliciesResponse_isTruncated :: Lens' ListRolePoliciesResponse (Maybe Bool)
+ Amazonka.IAM.ListRolePolicies: listRolePoliciesResponse_marker :: Lens' ListRolePoliciesResponse (Maybe Text)
+ Amazonka.IAM.ListRolePolicies: listRolePoliciesResponse_policyNames :: Lens' ListRolePoliciesResponse [Text]
+ Amazonka.IAM.ListRolePolicies: listRolePolicies_marker :: Lens' ListRolePolicies (Maybe Text)
+ Amazonka.IAM.ListRolePolicies: listRolePolicies_maxItems :: Lens' ListRolePolicies (Maybe Natural)
+ Amazonka.IAM.ListRolePolicies: listRolePolicies_roleName :: Lens' ListRolePolicies Text
+ Amazonka.IAM.ListRolePolicies: newListRolePolicies :: Text -> ListRolePolicies
+ Amazonka.IAM.ListRolePolicies: newListRolePoliciesResponse :: Int -> ListRolePoliciesResponse
+ Amazonka.IAM.ListRoleTags: ListRoleTags' :: Maybe Text -> Maybe Natural -> Text -> ListRoleTags
+ Amazonka.IAM.ListRoleTags: ListRoleTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListRoleTagsResponse
+ Amazonka.IAM.ListRoleTags: [$sel:httpStatus:ListRoleTagsResponse'] :: ListRoleTagsResponse -> Int
+ Amazonka.IAM.ListRoleTags: [$sel:isTruncated:ListRoleTagsResponse'] :: ListRoleTagsResponse -> Maybe Bool
+ Amazonka.IAM.ListRoleTags: [$sel:marker:ListRoleTags'] :: ListRoleTags -> Maybe Text
+ Amazonka.IAM.ListRoleTags: [$sel:marker:ListRoleTagsResponse'] :: ListRoleTagsResponse -> Maybe Text
+ Amazonka.IAM.ListRoleTags: [$sel:maxItems:ListRoleTags'] :: ListRoleTags -> Maybe Natural
+ Amazonka.IAM.ListRoleTags: [$sel:roleName:ListRoleTags'] :: ListRoleTags -> Text
+ Amazonka.IAM.ListRoleTags: [$sel:tags:ListRoleTagsResponse'] :: ListRoleTagsResponse -> [Tag]
+ Amazonka.IAM.ListRoleTags: data ListRoleTags
+ Amazonka.IAM.ListRoleTags: data ListRoleTagsResponse
+ Amazonka.IAM.ListRoleTags: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListRoleTags.ListRoleTagsResponse
+ Amazonka.IAM.ListRoleTags: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance GHC.Classes.Eq Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance GHC.Classes.Eq Amazonka.IAM.ListRoleTags.ListRoleTagsResponse
+ Amazonka.IAM.ListRoleTags: instance GHC.Generics.Generic Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance GHC.Generics.Generic Amazonka.IAM.ListRoleTags.ListRoleTagsResponse
+ Amazonka.IAM.ListRoleTags: instance GHC.Read.Read Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance GHC.Read.Read Amazonka.IAM.ListRoleTags.ListRoleTagsResponse
+ Amazonka.IAM.ListRoleTags: instance GHC.Show.Show Amazonka.IAM.ListRoleTags.ListRoleTags
+ Amazonka.IAM.ListRoleTags: instance GHC.Show.Show Amazonka.IAM.ListRoleTags.ListRoleTagsResponse
+ Amazonka.IAM.ListRoleTags: listRoleTagsResponse_httpStatus :: Lens' ListRoleTagsResponse Int
+ Amazonka.IAM.ListRoleTags: listRoleTagsResponse_isTruncated :: Lens' ListRoleTagsResponse (Maybe Bool)
+ Amazonka.IAM.ListRoleTags: listRoleTagsResponse_marker :: Lens' ListRoleTagsResponse (Maybe Text)
+ Amazonka.IAM.ListRoleTags: listRoleTagsResponse_tags :: Lens' ListRoleTagsResponse [Tag]
+ Amazonka.IAM.ListRoleTags: listRoleTags_marker :: Lens' ListRoleTags (Maybe Text)
+ Amazonka.IAM.ListRoleTags: listRoleTags_maxItems :: Lens' ListRoleTags (Maybe Natural)
+ Amazonka.IAM.ListRoleTags: listRoleTags_roleName :: Lens' ListRoleTags Text
+ Amazonka.IAM.ListRoleTags: newListRoleTags :: Text -> ListRoleTags
+ Amazonka.IAM.ListRoleTags: newListRoleTagsResponse :: Int -> ListRoleTagsResponse
+ Amazonka.IAM.ListRoles: ListRoles' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListRoles
+ Amazonka.IAM.ListRoles: ListRolesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Role] -> ListRolesResponse
+ Amazonka.IAM.ListRoles: [$sel:httpStatus:ListRolesResponse'] :: ListRolesResponse -> Int
+ Amazonka.IAM.ListRoles: [$sel:isTruncated:ListRolesResponse'] :: ListRolesResponse -> Maybe Bool
+ Amazonka.IAM.ListRoles: [$sel:marker:ListRoles'] :: ListRoles -> Maybe Text
+ Amazonka.IAM.ListRoles: [$sel:marker:ListRolesResponse'] :: ListRolesResponse -> Maybe Text
+ Amazonka.IAM.ListRoles: [$sel:maxItems:ListRoles'] :: ListRoles -> Maybe Natural
+ Amazonka.IAM.ListRoles: [$sel:pathPrefix:ListRoles'] :: ListRoles -> Maybe Text
+ Amazonka.IAM.ListRoles: [$sel:roles:ListRolesResponse'] :: ListRolesResponse -> [Role]
+ Amazonka.IAM.ListRoles: data ListRoles
+ Amazonka.IAM.ListRoles: data ListRolesResponse
+ Amazonka.IAM.ListRoles: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance Control.DeepSeq.NFData Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance Control.DeepSeq.NFData Amazonka.IAM.ListRoles.ListRolesResponse
+ Amazonka.IAM.ListRoles: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance GHC.Classes.Eq Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance GHC.Classes.Eq Amazonka.IAM.ListRoles.ListRolesResponse
+ Amazonka.IAM.ListRoles: instance GHC.Generics.Generic Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance GHC.Generics.Generic Amazonka.IAM.ListRoles.ListRolesResponse
+ Amazonka.IAM.ListRoles: instance GHC.Read.Read Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance GHC.Read.Read Amazonka.IAM.ListRoles.ListRolesResponse
+ Amazonka.IAM.ListRoles: instance GHC.Show.Show Amazonka.IAM.ListRoles.ListRoles
+ Amazonka.IAM.ListRoles: instance GHC.Show.Show Amazonka.IAM.ListRoles.ListRolesResponse
+ Amazonka.IAM.ListRoles: listRolesResponse_httpStatus :: Lens' ListRolesResponse Int
+ Amazonka.IAM.ListRoles: listRolesResponse_isTruncated :: Lens' ListRolesResponse (Maybe Bool)
+ Amazonka.IAM.ListRoles: listRolesResponse_marker :: Lens' ListRolesResponse (Maybe Text)
+ Amazonka.IAM.ListRoles: listRolesResponse_roles :: Lens' ListRolesResponse [Role]
+ Amazonka.IAM.ListRoles: listRoles_marker :: Lens' ListRoles (Maybe Text)
+ Amazonka.IAM.ListRoles: listRoles_maxItems :: Lens' ListRoles (Maybe Natural)
+ Amazonka.IAM.ListRoles: listRoles_pathPrefix :: Lens' ListRoles (Maybe Text)
+ Amazonka.IAM.ListRoles: newListRoles :: ListRoles
+ Amazonka.IAM.ListRoles: newListRolesResponse :: Int -> ListRolesResponse
+ Amazonka.IAM.ListSAMLProviderTags: ListSAMLProviderTags' :: Maybe Text -> Maybe Natural -> Text -> ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: ListSAMLProviderTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListSAMLProviderTagsResponse
+ Amazonka.IAM.ListSAMLProviderTags: [$sel:httpStatus:ListSAMLProviderTagsResponse'] :: ListSAMLProviderTagsResponse -> Int
+ Amazonka.IAM.ListSAMLProviderTags: [$sel:isTruncated:ListSAMLProviderTagsResponse'] :: ListSAMLProviderTagsResponse -> Maybe Bool
+ Amazonka.IAM.ListSAMLProviderTags: [$sel:marker:ListSAMLProviderTags'] :: ListSAMLProviderTags -> Maybe Text
+ Amazonka.IAM.ListSAMLProviderTags: [$sel:marker:ListSAMLProviderTagsResponse'] :: ListSAMLProviderTagsResponse -> Maybe Text
+ Amazonka.IAM.ListSAMLProviderTags: [$sel:maxItems:ListSAMLProviderTags'] :: ListSAMLProviderTags -> Maybe Natural
+ Amazonka.IAM.ListSAMLProviderTags: [$sel:sAMLProviderArn:ListSAMLProviderTags'] :: ListSAMLProviderTags -> Text
+ Amazonka.IAM.ListSAMLProviderTags: [$sel:tags:ListSAMLProviderTagsResponse'] :: ListSAMLProviderTagsResponse -> [Tag]
+ Amazonka.IAM.ListSAMLProviderTags: data ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: data ListSAMLProviderTagsResponse
+ Amazonka.IAM.ListSAMLProviderTags: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTagsResponse
+ Amazonka.IAM.ListSAMLProviderTags: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance GHC.Classes.Eq Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance GHC.Classes.Eq Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTagsResponse
+ Amazonka.IAM.ListSAMLProviderTags: instance GHC.Generics.Generic Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance GHC.Generics.Generic Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTagsResponse
+ Amazonka.IAM.ListSAMLProviderTags: instance GHC.Read.Read Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance GHC.Read.Read Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTagsResponse
+ Amazonka.IAM.ListSAMLProviderTags: instance GHC.Show.Show Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: instance GHC.Show.Show Amazonka.IAM.ListSAMLProviderTags.ListSAMLProviderTagsResponse
+ Amazonka.IAM.ListSAMLProviderTags: listSAMLProviderTagsResponse_httpStatus :: Lens' ListSAMLProviderTagsResponse Int
+ Amazonka.IAM.ListSAMLProviderTags: listSAMLProviderTagsResponse_isTruncated :: Lens' ListSAMLProviderTagsResponse (Maybe Bool)
+ Amazonka.IAM.ListSAMLProviderTags: listSAMLProviderTagsResponse_marker :: Lens' ListSAMLProviderTagsResponse (Maybe Text)
+ Amazonka.IAM.ListSAMLProviderTags: listSAMLProviderTagsResponse_tags :: Lens' ListSAMLProviderTagsResponse [Tag]
+ Amazonka.IAM.ListSAMLProviderTags: listSAMLProviderTags_marker :: Lens' ListSAMLProviderTags (Maybe Text)
+ Amazonka.IAM.ListSAMLProviderTags: listSAMLProviderTags_maxItems :: Lens' ListSAMLProviderTags (Maybe Natural)
+ Amazonka.IAM.ListSAMLProviderTags: listSAMLProviderTags_sAMLProviderArn :: Lens' ListSAMLProviderTags Text
+ Amazonka.IAM.ListSAMLProviderTags: newListSAMLProviderTags :: Text -> ListSAMLProviderTags
+ Amazonka.IAM.ListSAMLProviderTags: newListSAMLProviderTagsResponse :: Int -> ListSAMLProviderTagsResponse
+ Amazonka.IAM.ListSAMLProviders: ListSAMLProviders' :: ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: ListSAMLProvidersResponse' :: Maybe [SAMLProviderListEntry] -> Int -> ListSAMLProvidersResponse
+ Amazonka.IAM.ListSAMLProviders: [$sel:httpStatus:ListSAMLProvidersResponse'] :: ListSAMLProvidersResponse -> Int
+ Amazonka.IAM.ListSAMLProviders: [$sel:sAMLProviderList:ListSAMLProvidersResponse'] :: ListSAMLProvidersResponse -> Maybe [SAMLProviderListEntry]
+ Amazonka.IAM.ListSAMLProviders: data ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: data ListSAMLProvidersResponse
+ Amazonka.IAM.ListSAMLProviders: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance Control.DeepSeq.NFData Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance Control.DeepSeq.NFData Amazonka.IAM.ListSAMLProviders.ListSAMLProvidersResponse
+ Amazonka.IAM.ListSAMLProviders: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance GHC.Classes.Eq Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance GHC.Classes.Eq Amazonka.IAM.ListSAMLProviders.ListSAMLProvidersResponse
+ Amazonka.IAM.ListSAMLProviders: instance GHC.Generics.Generic Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance GHC.Generics.Generic Amazonka.IAM.ListSAMLProviders.ListSAMLProvidersResponse
+ Amazonka.IAM.ListSAMLProviders: instance GHC.Read.Read Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance GHC.Read.Read Amazonka.IAM.ListSAMLProviders.ListSAMLProvidersResponse
+ Amazonka.IAM.ListSAMLProviders: instance GHC.Show.Show Amazonka.IAM.ListSAMLProviders.ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: instance GHC.Show.Show Amazonka.IAM.ListSAMLProviders.ListSAMLProvidersResponse
+ Amazonka.IAM.ListSAMLProviders: listSAMLProvidersResponse_httpStatus :: Lens' ListSAMLProvidersResponse Int
+ Amazonka.IAM.ListSAMLProviders: listSAMLProvidersResponse_sAMLProviderList :: Lens' ListSAMLProvidersResponse (Maybe [SAMLProviderListEntry])
+ Amazonka.IAM.ListSAMLProviders: newListSAMLProviders :: ListSAMLProviders
+ Amazonka.IAM.ListSAMLProviders: newListSAMLProvidersResponse :: Int -> ListSAMLProvidersResponse
+ Amazonka.IAM.ListSSHPublicKeys: ListSSHPublicKeys' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: ListSSHPublicKeysResponse' :: Maybe Bool -> Maybe Text -> Maybe [SSHPublicKeyMetadata] -> Int -> ListSSHPublicKeysResponse
+ Amazonka.IAM.ListSSHPublicKeys: [$sel:httpStatus:ListSSHPublicKeysResponse'] :: ListSSHPublicKeysResponse -> Int
+ Amazonka.IAM.ListSSHPublicKeys: [$sel:isTruncated:ListSSHPublicKeysResponse'] :: ListSSHPublicKeysResponse -> Maybe Bool
+ Amazonka.IAM.ListSSHPublicKeys: [$sel:marker:ListSSHPublicKeys'] :: ListSSHPublicKeys -> Maybe Text
+ Amazonka.IAM.ListSSHPublicKeys: [$sel:marker:ListSSHPublicKeysResponse'] :: ListSSHPublicKeysResponse -> Maybe Text
+ Amazonka.IAM.ListSSHPublicKeys: [$sel:maxItems:ListSSHPublicKeys'] :: ListSSHPublicKeys -> Maybe Natural
+ Amazonka.IAM.ListSSHPublicKeys: [$sel:sSHPublicKeys:ListSSHPublicKeysResponse'] :: ListSSHPublicKeysResponse -> Maybe [SSHPublicKeyMetadata]
+ Amazonka.IAM.ListSSHPublicKeys: [$sel:userName:ListSSHPublicKeys'] :: ListSSHPublicKeys -> Maybe Text
+ Amazonka.IAM.ListSSHPublicKeys: data ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: data ListSSHPublicKeysResponse
+ Amazonka.IAM.ListSSHPublicKeys: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance Control.DeepSeq.NFData Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance Control.DeepSeq.NFData Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
+ Amazonka.IAM.ListSSHPublicKeys: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance GHC.Classes.Eq Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance GHC.Classes.Eq Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
+ Amazonka.IAM.ListSSHPublicKeys: instance GHC.Generics.Generic Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance GHC.Generics.Generic Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
+ Amazonka.IAM.ListSSHPublicKeys: instance GHC.Read.Read Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance GHC.Read.Read Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
+ Amazonka.IAM.ListSSHPublicKeys: instance GHC.Show.Show Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: instance GHC.Show.Show Amazonka.IAM.ListSSHPublicKeys.ListSSHPublicKeysResponse
+ Amazonka.IAM.ListSSHPublicKeys: listSSHPublicKeysResponse_httpStatus :: Lens' ListSSHPublicKeysResponse Int
+ Amazonka.IAM.ListSSHPublicKeys: listSSHPublicKeysResponse_isTruncated :: Lens' ListSSHPublicKeysResponse (Maybe Bool)
+ Amazonka.IAM.ListSSHPublicKeys: listSSHPublicKeysResponse_marker :: Lens' ListSSHPublicKeysResponse (Maybe Text)
+ Amazonka.IAM.ListSSHPublicKeys: listSSHPublicKeysResponse_sSHPublicKeys :: Lens' ListSSHPublicKeysResponse (Maybe [SSHPublicKeyMetadata])
+ Amazonka.IAM.ListSSHPublicKeys: listSSHPublicKeys_marker :: Lens' ListSSHPublicKeys (Maybe Text)
+ Amazonka.IAM.ListSSHPublicKeys: listSSHPublicKeys_maxItems :: Lens' ListSSHPublicKeys (Maybe Natural)
+ Amazonka.IAM.ListSSHPublicKeys: listSSHPublicKeys_userName :: Lens' ListSSHPublicKeys (Maybe Text)
+ Amazonka.IAM.ListSSHPublicKeys: newListSSHPublicKeys :: ListSSHPublicKeys
+ Amazonka.IAM.ListSSHPublicKeys: newListSSHPublicKeysResponse :: Int -> ListSSHPublicKeysResponse
+ Amazonka.IAM.ListServerCertificateTags: ListServerCertificateTags' :: Maybe Text -> Maybe Natural -> Text -> ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: ListServerCertificateTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListServerCertificateTagsResponse
+ Amazonka.IAM.ListServerCertificateTags: [$sel:httpStatus:ListServerCertificateTagsResponse'] :: ListServerCertificateTagsResponse -> Int
+ Amazonka.IAM.ListServerCertificateTags: [$sel:isTruncated:ListServerCertificateTagsResponse'] :: ListServerCertificateTagsResponse -> Maybe Bool
+ Amazonka.IAM.ListServerCertificateTags: [$sel:marker:ListServerCertificateTags'] :: ListServerCertificateTags -> Maybe Text
+ Amazonka.IAM.ListServerCertificateTags: [$sel:marker:ListServerCertificateTagsResponse'] :: ListServerCertificateTagsResponse -> Maybe Text
+ Amazonka.IAM.ListServerCertificateTags: [$sel:maxItems:ListServerCertificateTags'] :: ListServerCertificateTags -> Maybe Natural
+ Amazonka.IAM.ListServerCertificateTags: [$sel:serverCertificateName:ListServerCertificateTags'] :: ListServerCertificateTags -> Text
+ Amazonka.IAM.ListServerCertificateTags: [$sel:tags:ListServerCertificateTagsResponse'] :: ListServerCertificateTagsResponse -> [Tag]
+ Amazonka.IAM.ListServerCertificateTags: data ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: data ListServerCertificateTagsResponse
+ Amazonka.IAM.ListServerCertificateTags: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTagsResponse
+ Amazonka.IAM.ListServerCertificateTags: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance GHC.Classes.Eq Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance GHC.Classes.Eq Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTagsResponse
+ Amazonka.IAM.ListServerCertificateTags: instance GHC.Generics.Generic Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance GHC.Generics.Generic Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTagsResponse
+ Amazonka.IAM.ListServerCertificateTags: instance GHC.Read.Read Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance GHC.Read.Read Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTagsResponse
+ Amazonka.IAM.ListServerCertificateTags: instance GHC.Show.Show Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: instance GHC.Show.Show Amazonka.IAM.ListServerCertificateTags.ListServerCertificateTagsResponse
+ Amazonka.IAM.ListServerCertificateTags: listServerCertificateTagsResponse_httpStatus :: Lens' ListServerCertificateTagsResponse Int
+ Amazonka.IAM.ListServerCertificateTags: listServerCertificateTagsResponse_isTruncated :: Lens' ListServerCertificateTagsResponse (Maybe Bool)
+ Amazonka.IAM.ListServerCertificateTags: listServerCertificateTagsResponse_marker :: Lens' ListServerCertificateTagsResponse (Maybe Text)
+ Amazonka.IAM.ListServerCertificateTags: listServerCertificateTagsResponse_tags :: Lens' ListServerCertificateTagsResponse [Tag]
+ Amazonka.IAM.ListServerCertificateTags: listServerCertificateTags_marker :: Lens' ListServerCertificateTags (Maybe Text)
+ Amazonka.IAM.ListServerCertificateTags: listServerCertificateTags_maxItems :: Lens' ListServerCertificateTags (Maybe Natural)
+ Amazonka.IAM.ListServerCertificateTags: listServerCertificateTags_serverCertificateName :: Lens' ListServerCertificateTags Text
+ Amazonka.IAM.ListServerCertificateTags: newListServerCertificateTags :: Text -> ListServerCertificateTags
+ Amazonka.IAM.ListServerCertificateTags: newListServerCertificateTagsResponse :: Int -> ListServerCertificateTagsResponse
+ Amazonka.IAM.ListServerCertificates: ListServerCertificates' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: ListServerCertificatesResponse' :: Maybe Bool -> Maybe Text -> Int -> [ServerCertificateMetadata] -> ListServerCertificatesResponse
+ Amazonka.IAM.ListServerCertificates: [$sel:httpStatus:ListServerCertificatesResponse'] :: ListServerCertificatesResponse -> Int
+ Amazonka.IAM.ListServerCertificates: [$sel:isTruncated:ListServerCertificatesResponse'] :: ListServerCertificatesResponse -> Maybe Bool
+ Amazonka.IAM.ListServerCertificates: [$sel:marker:ListServerCertificates'] :: ListServerCertificates -> Maybe Text
+ Amazonka.IAM.ListServerCertificates: [$sel:marker:ListServerCertificatesResponse'] :: ListServerCertificatesResponse -> Maybe Text
+ Amazonka.IAM.ListServerCertificates: [$sel:maxItems:ListServerCertificates'] :: ListServerCertificates -> Maybe Natural
+ Amazonka.IAM.ListServerCertificates: [$sel:pathPrefix:ListServerCertificates'] :: ListServerCertificates -> Maybe Text
+ Amazonka.IAM.ListServerCertificates: [$sel:serverCertificateMetadataList:ListServerCertificatesResponse'] :: ListServerCertificatesResponse -> [ServerCertificateMetadata]
+ Amazonka.IAM.ListServerCertificates: data ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: data ListServerCertificatesResponse
+ Amazonka.IAM.ListServerCertificates: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance Control.DeepSeq.NFData Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance Control.DeepSeq.NFData Amazonka.IAM.ListServerCertificates.ListServerCertificatesResponse
+ Amazonka.IAM.ListServerCertificates: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance GHC.Classes.Eq Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance GHC.Classes.Eq Amazonka.IAM.ListServerCertificates.ListServerCertificatesResponse
+ Amazonka.IAM.ListServerCertificates: instance GHC.Generics.Generic Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance GHC.Generics.Generic Amazonka.IAM.ListServerCertificates.ListServerCertificatesResponse
+ Amazonka.IAM.ListServerCertificates: instance GHC.Read.Read Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance GHC.Read.Read Amazonka.IAM.ListServerCertificates.ListServerCertificatesResponse
+ Amazonka.IAM.ListServerCertificates: instance GHC.Show.Show Amazonka.IAM.ListServerCertificates.ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: instance GHC.Show.Show Amazonka.IAM.ListServerCertificates.ListServerCertificatesResponse
+ Amazonka.IAM.ListServerCertificates: listServerCertificatesResponse_httpStatus :: Lens' ListServerCertificatesResponse Int
+ Amazonka.IAM.ListServerCertificates: listServerCertificatesResponse_isTruncated :: Lens' ListServerCertificatesResponse (Maybe Bool)
+ Amazonka.IAM.ListServerCertificates: listServerCertificatesResponse_marker :: Lens' ListServerCertificatesResponse (Maybe Text)
+ Amazonka.IAM.ListServerCertificates: listServerCertificatesResponse_serverCertificateMetadataList :: Lens' ListServerCertificatesResponse [ServerCertificateMetadata]
+ Amazonka.IAM.ListServerCertificates: listServerCertificates_marker :: Lens' ListServerCertificates (Maybe Text)
+ Amazonka.IAM.ListServerCertificates: listServerCertificates_maxItems :: Lens' ListServerCertificates (Maybe Natural)
+ Amazonka.IAM.ListServerCertificates: listServerCertificates_pathPrefix :: Lens' ListServerCertificates (Maybe Text)
+ Amazonka.IAM.ListServerCertificates: newListServerCertificates :: ListServerCertificates
+ Amazonka.IAM.ListServerCertificates: newListServerCertificatesResponse :: Int -> ListServerCertificatesResponse
+ Amazonka.IAM.ListServiceSpecificCredentials: ListServiceSpecificCredentials' :: Maybe Text -> Maybe Text -> ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: ListServiceSpecificCredentialsResponse' :: Maybe [ServiceSpecificCredentialMetadata] -> Int -> ListServiceSpecificCredentialsResponse
+ Amazonka.IAM.ListServiceSpecificCredentials: [$sel:httpStatus:ListServiceSpecificCredentialsResponse'] :: ListServiceSpecificCredentialsResponse -> Int
+ Amazonka.IAM.ListServiceSpecificCredentials: [$sel:serviceName:ListServiceSpecificCredentials'] :: ListServiceSpecificCredentials -> Maybe Text
+ Amazonka.IAM.ListServiceSpecificCredentials: [$sel:serviceSpecificCredentials:ListServiceSpecificCredentialsResponse'] :: ListServiceSpecificCredentialsResponse -> Maybe [ServiceSpecificCredentialMetadata]
+ Amazonka.IAM.ListServiceSpecificCredentials: [$sel:userName:ListServiceSpecificCredentials'] :: ListServiceSpecificCredentials -> Maybe Text
+ Amazonka.IAM.ListServiceSpecificCredentials: data ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: data ListServiceSpecificCredentialsResponse
+ Amazonka.IAM.ListServiceSpecificCredentials: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance Control.DeepSeq.NFData Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance Control.DeepSeq.NFData Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
+ Amazonka.IAM.ListServiceSpecificCredentials: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance GHC.Classes.Eq Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance GHC.Classes.Eq Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
+ Amazonka.IAM.ListServiceSpecificCredentials: instance GHC.Generics.Generic Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance GHC.Generics.Generic Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
+ Amazonka.IAM.ListServiceSpecificCredentials: instance GHC.Read.Read Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance GHC.Read.Read Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
+ Amazonka.IAM.ListServiceSpecificCredentials: instance GHC.Show.Show Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: instance GHC.Show.Show Amazonka.IAM.ListServiceSpecificCredentials.ListServiceSpecificCredentialsResponse
+ Amazonka.IAM.ListServiceSpecificCredentials: listServiceSpecificCredentialsResponse_httpStatus :: Lens' ListServiceSpecificCredentialsResponse Int
+ Amazonka.IAM.ListServiceSpecificCredentials: listServiceSpecificCredentialsResponse_serviceSpecificCredentials :: Lens' ListServiceSpecificCredentialsResponse (Maybe [ServiceSpecificCredentialMetadata])
+ Amazonka.IAM.ListServiceSpecificCredentials: listServiceSpecificCredentials_serviceName :: Lens' ListServiceSpecificCredentials (Maybe Text)
+ Amazonka.IAM.ListServiceSpecificCredentials: listServiceSpecificCredentials_userName :: Lens' ListServiceSpecificCredentials (Maybe Text)
+ Amazonka.IAM.ListServiceSpecificCredentials: newListServiceSpecificCredentials :: ListServiceSpecificCredentials
+ Amazonka.IAM.ListServiceSpecificCredentials: newListServiceSpecificCredentialsResponse :: Int -> ListServiceSpecificCredentialsResponse
+ Amazonka.IAM.ListSigningCertificates: ListSigningCertificates' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: ListSigningCertificatesResponse' :: Maybe Bool -> Maybe Text -> Int -> [SigningCertificate] -> ListSigningCertificatesResponse
+ Amazonka.IAM.ListSigningCertificates: [$sel:certificates:ListSigningCertificatesResponse'] :: ListSigningCertificatesResponse -> [SigningCertificate]
+ Amazonka.IAM.ListSigningCertificates: [$sel:httpStatus:ListSigningCertificatesResponse'] :: ListSigningCertificatesResponse -> Int
+ Amazonka.IAM.ListSigningCertificates: [$sel:isTruncated:ListSigningCertificatesResponse'] :: ListSigningCertificatesResponse -> Maybe Bool
+ Amazonka.IAM.ListSigningCertificates: [$sel:marker:ListSigningCertificates'] :: ListSigningCertificates -> Maybe Text
+ Amazonka.IAM.ListSigningCertificates: [$sel:marker:ListSigningCertificatesResponse'] :: ListSigningCertificatesResponse -> Maybe Text
+ Amazonka.IAM.ListSigningCertificates: [$sel:maxItems:ListSigningCertificates'] :: ListSigningCertificates -> Maybe Natural
+ Amazonka.IAM.ListSigningCertificates: [$sel:userName:ListSigningCertificates'] :: ListSigningCertificates -> Maybe Text
+ Amazonka.IAM.ListSigningCertificates: data ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: data ListSigningCertificatesResponse
+ Amazonka.IAM.ListSigningCertificates: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance Control.DeepSeq.NFData Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance Control.DeepSeq.NFData Amazonka.IAM.ListSigningCertificates.ListSigningCertificatesResponse
+ Amazonka.IAM.ListSigningCertificates: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance GHC.Classes.Eq Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance GHC.Classes.Eq Amazonka.IAM.ListSigningCertificates.ListSigningCertificatesResponse
+ Amazonka.IAM.ListSigningCertificates: instance GHC.Generics.Generic Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance GHC.Generics.Generic Amazonka.IAM.ListSigningCertificates.ListSigningCertificatesResponse
+ Amazonka.IAM.ListSigningCertificates: instance GHC.Read.Read Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance GHC.Read.Read Amazonka.IAM.ListSigningCertificates.ListSigningCertificatesResponse
+ Amazonka.IAM.ListSigningCertificates: instance GHC.Show.Show Amazonka.IAM.ListSigningCertificates.ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: instance GHC.Show.Show Amazonka.IAM.ListSigningCertificates.ListSigningCertificatesResponse
+ Amazonka.IAM.ListSigningCertificates: listSigningCertificatesResponse_certificates :: Lens' ListSigningCertificatesResponse [SigningCertificate]
+ Amazonka.IAM.ListSigningCertificates: listSigningCertificatesResponse_httpStatus :: Lens' ListSigningCertificatesResponse Int
+ Amazonka.IAM.ListSigningCertificates: listSigningCertificatesResponse_isTruncated :: Lens' ListSigningCertificatesResponse (Maybe Bool)
+ Amazonka.IAM.ListSigningCertificates: listSigningCertificatesResponse_marker :: Lens' ListSigningCertificatesResponse (Maybe Text)
+ Amazonka.IAM.ListSigningCertificates: listSigningCertificates_marker :: Lens' ListSigningCertificates (Maybe Text)
+ Amazonka.IAM.ListSigningCertificates: listSigningCertificates_maxItems :: Lens' ListSigningCertificates (Maybe Natural)
+ Amazonka.IAM.ListSigningCertificates: listSigningCertificates_userName :: Lens' ListSigningCertificates (Maybe Text)
+ Amazonka.IAM.ListSigningCertificates: newListSigningCertificates :: ListSigningCertificates
+ Amazonka.IAM.ListSigningCertificates: newListSigningCertificatesResponse :: Int -> ListSigningCertificatesResponse
+ Amazonka.IAM.ListUserPolicies: ListUserPolicies' :: Maybe Text -> Maybe Natural -> Text -> ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: ListUserPoliciesResponse' :: Maybe Bool -> Maybe Text -> Int -> [Text] -> ListUserPoliciesResponse
+ Amazonka.IAM.ListUserPolicies: [$sel:httpStatus:ListUserPoliciesResponse'] :: ListUserPoliciesResponse -> Int
+ Amazonka.IAM.ListUserPolicies: [$sel:isTruncated:ListUserPoliciesResponse'] :: ListUserPoliciesResponse -> Maybe Bool
+ Amazonka.IAM.ListUserPolicies: [$sel:marker:ListUserPolicies'] :: ListUserPolicies -> Maybe Text
+ Amazonka.IAM.ListUserPolicies: [$sel:marker:ListUserPoliciesResponse'] :: ListUserPoliciesResponse -> Maybe Text
+ Amazonka.IAM.ListUserPolicies: [$sel:maxItems:ListUserPolicies'] :: ListUserPolicies -> Maybe Natural
+ Amazonka.IAM.ListUserPolicies: [$sel:policyNames:ListUserPoliciesResponse'] :: ListUserPoliciesResponse -> [Text]
+ Amazonka.IAM.ListUserPolicies: [$sel:userName:ListUserPolicies'] :: ListUserPolicies -> Text
+ Amazonka.IAM.ListUserPolicies: data ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: data ListUserPoliciesResponse
+ Amazonka.IAM.ListUserPolicies: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance Control.DeepSeq.NFData Amazonka.IAM.ListUserPolicies.ListUserPoliciesResponse
+ Amazonka.IAM.ListUserPolicies: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance GHC.Classes.Eq Amazonka.IAM.ListUserPolicies.ListUserPoliciesResponse
+ Amazonka.IAM.ListUserPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance GHC.Generics.Generic Amazonka.IAM.ListUserPolicies.ListUserPoliciesResponse
+ Amazonka.IAM.ListUserPolicies: instance GHC.Read.Read Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance GHC.Read.Read Amazonka.IAM.ListUserPolicies.ListUserPoliciesResponse
+ Amazonka.IAM.ListUserPolicies: instance GHC.Show.Show Amazonka.IAM.ListUserPolicies.ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: instance GHC.Show.Show Amazonka.IAM.ListUserPolicies.ListUserPoliciesResponse
+ Amazonka.IAM.ListUserPolicies: listUserPoliciesResponse_httpStatus :: Lens' ListUserPoliciesResponse Int
+ Amazonka.IAM.ListUserPolicies: listUserPoliciesResponse_isTruncated :: Lens' ListUserPoliciesResponse (Maybe Bool)
+ Amazonka.IAM.ListUserPolicies: listUserPoliciesResponse_marker :: Lens' ListUserPoliciesResponse (Maybe Text)
+ Amazonka.IAM.ListUserPolicies: listUserPoliciesResponse_policyNames :: Lens' ListUserPoliciesResponse [Text]
+ Amazonka.IAM.ListUserPolicies: listUserPolicies_marker :: Lens' ListUserPolicies (Maybe Text)
+ Amazonka.IAM.ListUserPolicies: listUserPolicies_maxItems :: Lens' ListUserPolicies (Maybe Natural)
+ Amazonka.IAM.ListUserPolicies: listUserPolicies_userName :: Lens' ListUserPolicies Text
+ Amazonka.IAM.ListUserPolicies: newListUserPolicies :: Text -> ListUserPolicies
+ Amazonka.IAM.ListUserPolicies: newListUserPoliciesResponse :: Int -> ListUserPoliciesResponse
+ Amazonka.IAM.ListUserTags: ListUserTags' :: Maybe Text -> Maybe Natural -> Text -> ListUserTags
+ Amazonka.IAM.ListUserTags: ListUserTagsResponse' :: Maybe Bool -> Maybe Text -> Int -> [Tag] -> ListUserTagsResponse
+ Amazonka.IAM.ListUserTags: [$sel:httpStatus:ListUserTagsResponse'] :: ListUserTagsResponse -> Int
+ Amazonka.IAM.ListUserTags: [$sel:isTruncated:ListUserTagsResponse'] :: ListUserTagsResponse -> Maybe Bool
+ Amazonka.IAM.ListUserTags: [$sel:marker:ListUserTags'] :: ListUserTags -> Maybe Text
+ Amazonka.IAM.ListUserTags: [$sel:marker:ListUserTagsResponse'] :: ListUserTagsResponse -> Maybe Text
+ Amazonka.IAM.ListUserTags: [$sel:maxItems:ListUserTags'] :: ListUserTags -> Maybe Natural
+ Amazonka.IAM.ListUserTags: [$sel:tags:ListUserTagsResponse'] :: ListUserTagsResponse -> [Tag]
+ Amazonka.IAM.ListUserTags: [$sel:userName:ListUserTags'] :: ListUserTags -> Text
+ Amazonka.IAM.ListUserTags: data ListUserTags
+ Amazonka.IAM.ListUserTags: data ListUserTagsResponse
+ Amazonka.IAM.ListUserTags: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance Control.DeepSeq.NFData Amazonka.IAM.ListUserTags.ListUserTagsResponse
+ Amazonka.IAM.ListUserTags: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance GHC.Classes.Eq Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance GHC.Classes.Eq Amazonka.IAM.ListUserTags.ListUserTagsResponse
+ Amazonka.IAM.ListUserTags: instance GHC.Generics.Generic Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance GHC.Generics.Generic Amazonka.IAM.ListUserTags.ListUserTagsResponse
+ Amazonka.IAM.ListUserTags: instance GHC.Read.Read Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance GHC.Read.Read Amazonka.IAM.ListUserTags.ListUserTagsResponse
+ Amazonka.IAM.ListUserTags: instance GHC.Show.Show Amazonka.IAM.ListUserTags.ListUserTags
+ Amazonka.IAM.ListUserTags: instance GHC.Show.Show Amazonka.IAM.ListUserTags.ListUserTagsResponse
+ Amazonka.IAM.ListUserTags: listUserTagsResponse_httpStatus :: Lens' ListUserTagsResponse Int
+ Amazonka.IAM.ListUserTags: listUserTagsResponse_isTruncated :: Lens' ListUserTagsResponse (Maybe Bool)
+ Amazonka.IAM.ListUserTags: listUserTagsResponse_marker :: Lens' ListUserTagsResponse (Maybe Text)
+ Amazonka.IAM.ListUserTags: listUserTagsResponse_tags :: Lens' ListUserTagsResponse [Tag]
+ Amazonka.IAM.ListUserTags: listUserTags_marker :: Lens' ListUserTags (Maybe Text)
+ Amazonka.IAM.ListUserTags: listUserTags_maxItems :: Lens' ListUserTags (Maybe Natural)
+ Amazonka.IAM.ListUserTags: listUserTags_userName :: Lens' ListUserTags Text
+ Amazonka.IAM.ListUserTags: newListUserTags :: Text -> ListUserTags
+ Amazonka.IAM.ListUserTags: newListUserTagsResponse :: Int -> ListUserTagsResponse
+ Amazonka.IAM.ListUsers: ListUsers' :: Maybe Text -> Maybe Natural -> Maybe Text -> ListUsers
+ Amazonka.IAM.ListUsers: ListUsersResponse' :: Maybe Bool -> Maybe Text -> Int -> [User] -> ListUsersResponse
+ Amazonka.IAM.ListUsers: [$sel:httpStatus:ListUsersResponse'] :: ListUsersResponse -> Int
+ Amazonka.IAM.ListUsers: [$sel:isTruncated:ListUsersResponse'] :: ListUsersResponse -> Maybe Bool
+ Amazonka.IAM.ListUsers: [$sel:marker:ListUsers'] :: ListUsers -> Maybe Text
+ Amazonka.IAM.ListUsers: [$sel:marker:ListUsersResponse'] :: ListUsersResponse -> Maybe Text
+ Amazonka.IAM.ListUsers: [$sel:maxItems:ListUsers'] :: ListUsers -> Maybe Natural
+ Amazonka.IAM.ListUsers: [$sel:pathPrefix:ListUsers'] :: ListUsers -> Maybe Text
+ Amazonka.IAM.ListUsers: [$sel:users:ListUsersResponse'] :: ListUsersResponse -> [User]
+ Amazonka.IAM.ListUsers: data ListUsers
+ Amazonka.IAM.ListUsers: data ListUsersResponse
+ Amazonka.IAM.ListUsers: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance Control.DeepSeq.NFData Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance Control.DeepSeq.NFData Amazonka.IAM.ListUsers.ListUsersResponse
+ Amazonka.IAM.ListUsers: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance GHC.Classes.Eq Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance GHC.Classes.Eq Amazonka.IAM.ListUsers.ListUsersResponse
+ Amazonka.IAM.ListUsers: instance GHC.Generics.Generic Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance GHC.Generics.Generic Amazonka.IAM.ListUsers.ListUsersResponse
+ Amazonka.IAM.ListUsers: instance GHC.Read.Read Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance GHC.Read.Read Amazonka.IAM.ListUsers.ListUsersResponse
+ Amazonka.IAM.ListUsers: instance GHC.Show.Show Amazonka.IAM.ListUsers.ListUsers
+ Amazonka.IAM.ListUsers: instance GHC.Show.Show Amazonka.IAM.ListUsers.ListUsersResponse
+ Amazonka.IAM.ListUsers: listUsersResponse_httpStatus :: Lens' ListUsersResponse Int
+ Amazonka.IAM.ListUsers: listUsersResponse_isTruncated :: Lens' ListUsersResponse (Maybe Bool)
+ Amazonka.IAM.ListUsers: listUsersResponse_marker :: Lens' ListUsersResponse (Maybe Text)
+ Amazonka.IAM.ListUsers: listUsersResponse_users :: Lens' ListUsersResponse [User]
+ Amazonka.IAM.ListUsers: listUsers_marker :: Lens' ListUsers (Maybe Text)
+ Amazonka.IAM.ListUsers: listUsers_maxItems :: Lens' ListUsers (Maybe Natural)
+ Amazonka.IAM.ListUsers: listUsers_pathPrefix :: Lens' ListUsers (Maybe Text)
+ Amazonka.IAM.ListUsers: newListUsers :: ListUsers
+ Amazonka.IAM.ListUsers: newListUsersResponse :: Int -> ListUsersResponse
+ Amazonka.IAM.ListVirtualMFADevices: ListVirtualMFADevices' :: Maybe AssignmentStatusType -> Maybe Text -> Maybe Natural -> ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: ListVirtualMFADevicesResponse' :: Maybe Bool -> Maybe Text -> Int -> [VirtualMFADevice] -> ListVirtualMFADevicesResponse
+ Amazonka.IAM.ListVirtualMFADevices: [$sel:assignmentStatus:ListVirtualMFADevices'] :: ListVirtualMFADevices -> Maybe AssignmentStatusType
+ Amazonka.IAM.ListVirtualMFADevices: [$sel:httpStatus:ListVirtualMFADevicesResponse'] :: ListVirtualMFADevicesResponse -> Int
+ Amazonka.IAM.ListVirtualMFADevices: [$sel:isTruncated:ListVirtualMFADevicesResponse'] :: ListVirtualMFADevicesResponse -> Maybe Bool
+ Amazonka.IAM.ListVirtualMFADevices: [$sel:marker:ListVirtualMFADevices'] :: ListVirtualMFADevices -> Maybe Text
+ Amazonka.IAM.ListVirtualMFADevices: [$sel:marker:ListVirtualMFADevicesResponse'] :: ListVirtualMFADevicesResponse -> Maybe Text
+ Amazonka.IAM.ListVirtualMFADevices: [$sel:maxItems:ListVirtualMFADevices'] :: ListVirtualMFADevices -> Maybe Natural
+ Amazonka.IAM.ListVirtualMFADevices: [$sel:virtualMFADevices:ListVirtualMFADevicesResponse'] :: ListVirtualMFADevicesResponse -> [VirtualMFADevice]
+ Amazonka.IAM.ListVirtualMFADevices: data ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: data ListVirtualMFADevicesResponse
+ Amazonka.IAM.ListVirtualMFADevices: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance Amazonka.Pager.AWSPager Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance Amazonka.Types.AWSRequest Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance Control.DeepSeq.NFData Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance Control.DeepSeq.NFData Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
+ Amazonka.IAM.ListVirtualMFADevices: instance Data.Hashable.Class.Hashable Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance GHC.Classes.Eq Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance GHC.Classes.Eq Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
+ Amazonka.IAM.ListVirtualMFADevices: instance GHC.Generics.Generic Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance GHC.Generics.Generic Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
+ Amazonka.IAM.ListVirtualMFADevices: instance GHC.Read.Read Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance GHC.Show.Show Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: instance GHC.Show.Show Amazonka.IAM.ListVirtualMFADevices.ListVirtualMFADevicesResponse
+ Amazonka.IAM.ListVirtualMFADevices: listVirtualMFADevicesResponse_httpStatus :: Lens' ListVirtualMFADevicesResponse Int
+ Amazonka.IAM.ListVirtualMFADevices: listVirtualMFADevicesResponse_isTruncated :: Lens' ListVirtualMFADevicesResponse (Maybe Bool)
+ Amazonka.IAM.ListVirtualMFADevices: listVirtualMFADevicesResponse_marker :: Lens' ListVirtualMFADevicesResponse (Maybe Text)
+ Amazonka.IAM.ListVirtualMFADevices: listVirtualMFADevicesResponse_virtualMFADevices :: Lens' ListVirtualMFADevicesResponse [VirtualMFADevice]
+ Amazonka.IAM.ListVirtualMFADevices: listVirtualMFADevices_assignmentStatus :: Lens' ListVirtualMFADevices (Maybe AssignmentStatusType)
+ Amazonka.IAM.ListVirtualMFADevices: listVirtualMFADevices_marker :: Lens' ListVirtualMFADevices (Maybe Text)
+ Amazonka.IAM.ListVirtualMFADevices: listVirtualMFADevices_maxItems :: Lens' ListVirtualMFADevices (Maybe Natural)
+ Amazonka.IAM.ListVirtualMFADevices: newListVirtualMFADevices :: ListVirtualMFADevices
+ Amazonka.IAM.ListVirtualMFADevices: newListVirtualMFADevicesResponse :: Int -> ListVirtualMFADevicesResponse
+ Amazonka.IAM.PutGroupPolicy: PutGroupPolicy' :: Text -> Text -> Text -> PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: PutGroupPolicyResponse' :: PutGroupPolicyResponse
+ Amazonka.IAM.PutGroupPolicy: [$sel:groupName:PutGroupPolicy'] :: PutGroupPolicy -> Text
+ Amazonka.IAM.PutGroupPolicy: [$sel:policyDocument:PutGroupPolicy'] :: PutGroupPolicy -> Text
+ Amazonka.IAM.PutGroupPolicy: [$sel:policyName:PutGroupPolicy'] :: PutGroupPolicy -> Text
+ Amazonka.IAM.PutGroupPolicy: data PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: data PutGroupPolicyResponse
+ Amazonka.IAM.PutGroupPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.PutGroupPolicy.PutGroupPolicyResponse
+ Amazonka.IAM.PutGroupPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance GHC.Classes.Eq Amazonka.IAM.PutGroupPolicy.PutGroupPolicyResponse
+ Amazonka.IAM.PutGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance GHC.Generics.Generic Amazonka.IAM.PutGroupPolicy.PutGroupPolicyResponse
+ Amazonka.IAM.PutGroupPolicy: instance GHC.Read.Read Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance GHC.Read.Read Amazonka.IAM.PutGroupPolicy.PutGroupPolicyResponse
+ Amazonka.IAM.PutGroupPolicy: instance GHC.Show.Show Amazonka.IAM.PutGroupPolicy.PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: instance GHC.Show.Show Amazonka.IAM.PutGroupPolicy.PutGroupPolicyResponse
+ Amazonka.IAM.PutGroupPolicy: newPutGroupPolicy :: Text -> Text -> Text -> PutGroupPolicy
+ Amazonka.IAM.PutGroupPolicy: newPutGroupPolicyResponse :: PutGroupPolicyResponse
+ Amazonka.IAM.PutGroupPolicy: putGroupPolicy_groupName :: Lens' PutGroupPolicy Text
+ Amazonka.IAM.PutGroupPolicy: putGroupPolicy_policyDocument :: Lens' PutGroupPolicy Text
+ Amazonka.IAM.PutGroupPolicy: putGroupPolicy_policyName :: Lens' PutGroupPolicy Text
+ Amazonka.IAM.PutRolePermissionsBoundary: PutRolePermissionsBoundary' :: Text -> Text -> PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: PutRolePermissionsBoundaryResponse' :: PutRolePermissionsBoundaryResponse
+ Amazonka.IAM.PutRolePermissionsBoundary: [$sel:permissionsBoundary:PutRolePermissionsBoundary'] :: PutRolePermissionsBoundary -> Text
+ Amazonka.IAM.PutRolePermissionsBoundary: [$sel:roleName:PutRolePermissionsBoundary'] :: PutRolePermissionsBoundary -> Text
+ Amazonka.IAM.PutRolePermissionsBoundary: data PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: data PutRolePermissionsBoundaryResponse
+ Amazonka.IAM.PutRolePermissionsBoundary: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance Amazonka.Data.Path.ToPath Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance Amazonka.Types.AWSRequest Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundaryResponse
+ Amazonka.IAM.PutRolePermissionsBoundary: instance Data.Hashable.Class.Hashable Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundaryResponse
+ Amazonka.IAM.PutRolePermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundaryResponse
+ Amazonka.IAM.PutRolePermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundaryResponse
+ Amazonka.IAM.PutRolePermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.PutRolePermissionsBoundary.PutRolePermissionsBoundaryResponse
+ Amazonka.IAM.PutRolePermissionsBoundary: newPutRolePermissionsBoundary :: Text -> Text -> PutRolePermissionsBoundary
+ Amazonka.IAM.PutRolePermissionsBoundary: newPutRolePermissionsBoundaryResponse :: PutRolePermissionsBoundaryResponse
+ Amazonka.IAM.PutRolePermissionsBoundary: putRolePermissionsBoundary_permissionsBoundary :: Lens' PutRolePermissionsBoundary Text
+ Amazonka.IAM.PutRolePermissionsBoundary: putRolePermissionsBoundary_roleName :: Lens' PutRolePermissionsBoundary Text
+ Amazonka.IAM.PutRolePolicy: PutRolePolicy' :: Text -> Text -> Text -> PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: PutRolePolicyResponse' :: PutRolePolicyResponse
+ Amazonka.IAM.PutRolePolicy: [$sel:policyDocument:PutRolePolicy'] :: PutRolePolicy -> Text
+ Amazonka.IAM.PutRolePolicy: [$sel:policyName:PutRolePolicy'] :: PutRolePolicy -> Text
+ Amazonka.IAM.PutRolePolicy: [$sel:roleName:PutRolePolicy'] :: PutRolePolicy -> Text
+ Amazonka.IAM.PutRolePolicy: data PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: data PutRolePolicyResponse
+ Amazonka.IAM.PutRolePolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.PutRolePolicy.PutRolePolicyResponse
+ Amazonka.IAM.PutRolePolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.PutRolePolicy.PutRolePolicyResponse
+ Amazonka.IAM.PutRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.PutRolePolicy.PutRolePolicyResponse
+ Amazonka.IAM.PutRolePolicy: instance GHC.Read.Read Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance GHC.Read.Read Amazonka.IAM.PutRolePolicy.PutRolePolicyResponse
+ Amazonka.IAM.PutRolePolicy: instance GHC.Show.Show Amazonka.IAM.PutRolePolicy.PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: instance GHC.Show.Show Amazonka.IAM.PutRolePolicy.PutRolePolicyResponse
+ Amazonka.IAM.PutRolePolicy: newPutRolePolicy :: Text -> Text -> Text -> PutRolePolicy
+ Amazonka.IAM.PutRolePolicy: newPutRolePolicyResponse :: PutRolePolicyResponse
+ Amazonka.IAM.PutRolePolicy: putRolePolicy_policyDocument :: Lens' PutRolePolicy Text
+ Amazonka.IAM.PutRolePolicy: putRolePolicy_policyName :: Lens' PutRolePolicy Text
+ Amazonka.IAM.PutRolePolicy: putRolePolicy_roleName :: Lens' PutRolePolicy Text
+ Amazonka.IAM.PutUserPermissionsBoundary: PutUserPermissionsBoundary' :: Text -> Text -> PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: PutUserPermissionsBoundaryResponse' :: PutUserPermissionsBoundaryResponse
+ Amazonka.IAM.PutUserPermissionsBoundary: [$sel:permissionsBoundary:PutUserPermissionsBoundary'] :: PutUserPermissionsBoundary -> Text
+ Amazonka.IAM.PutUserPermissionsBoundary: [$sel:userName:PutUserPermissionsBoundary'] :: PutUserPermissionsBoundary -> Text
+ Amazonka.IAM.PutUserPermissionsBoundary: data PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: data PutUserPermissionsBoundaryResponse
+ Amazonka.IAM.PutUserPermissionsBoundary: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance Amazonka.Data.Path.ToPath Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance Amazonka.Types.AWSRequest Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundaryResponse
+ Amazonka.IAM.PutUserPermissionsBoundary: instance Data.Hashable.Class.Hashable Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundaryResponse
+ Amazonka.IAM.PutUserPermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundaryResponse
+ Amazonka.IAM.PutUserPermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundaryResponse
+ Amazonka.IAM.PutUserPermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.PutUserPermissionsBoundary.PutUserPermissionsBoundaryResponse
+ Amazonka.IAM.PutUserPermissionsBoundary: newPutUserPermissionsBoundary :: Text -> Text -> PutUserPermissionsBoundary
+ Amazonka.IAM.PutUserPermissionsBoundary: newPutUserPermissionsBoundaryResponse :: PutUserPermissionsBoundaryResponse
+ Amazonka.IAM.PutUserPermissionsBoundary: putUserPermissionsBoundary_permissionsBoundary :: Lens' PutUserPermissionsBoundary Text
+ Amazonka.IAM.PutUserPermissionsBoundary: putUserPermissionsBoundary_userName :: Lens' PutUserPermissionsBoundary Text
+ Amazonka.IAM.PutUserPolicy: PutUserPolicy' :: Text -> Text -> Text -> PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: PutUserPolicyResponse' :: PutUserPolicyResponse
+ Amazonka.IAM.PutUserPolicy: [$sel:policyDocument:PutUserPolicy'] :: PutUserPolicy -> Text
+ Amazonka.IAM.PutUserPolicy: [$sel:policyName:PutUserPolicy'] :: PutUserPolicy -> Text
+ Amazonka.IAM.PutUserPolicy: [$sel:userName:PutUserPolicy'] :: PutUserPolicy -> Text
+ Amazonka.IAM.PutUserPolicy: data PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: data PutUserPolicyResponse
+ Amazonka.IAM.PutUserPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.PutUserPolicy.PutUserPolicyResponse
+ Amazonka.IAM.PutUserPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance GHC.Classes.Eq Amazonka.IAM.PutUserPolicy.PutUserPolicyResponse
+ Amazonka.IAM.PutUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance GHC.Generics.Generic Amazonka.IAM.PutUserPolicy.PutUserPolicyResponse
+ Amazonka.IAM.PutUserPolicy: instance GHC.Read.Read Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance GHC.Read.Read Amazonka.IAM.PutUserPolicy.PutUserPolicyResponse
+ Amazonka.IAM.PutUserPolicy: instance GHC.Show.Show Amazonka.IAM.PutUserPolicy.PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: instance GHC.Show.Show Amazonka.IAM.PutUserPolicy.PutUserPolicyResponse
+ Amazonka.IAM.PutUserPolicy: newPutUserPolicy :: Text -> Text -> Text -> PutUserPolicy
+ Amazonka.IAM.PutUserPolicy: newPutUserPolicyResponse :: PutUserPolicyResponse
+ Amazonka.IAM.PutUserPolicy: putUserPolicy_policyDocument :: Lens' PutUserPolicy Text
+ Amazonka.IAM.PutUserPolicy: putUserPolicy_policyName :: Lens' PutUserPolicy Text
+ Amazonka.IAM.PutUserPolicy: putUserPolicy_userName :: Lens' PutUserPolicy Text
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: RemoveClientIDFromOpenIDConnectProvider' :: Text -> Text -> RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: RemoveClientIDFromOpenIDConnectProviderResponse' :: RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: [$sel:clientID:RemoveClientIDFromOpenIDConnectProvider'] :: RemoveClientIDFromOpenIDConnectProvider -> Text
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: [$sel:openIDConnectProviderArn:RemoveClientIDFromOpenIDConnectProvider'] :: RemoveClientIDFromOpenIDConnectProvider -> Text
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: data RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: data RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider.RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: newRemoveClientIDFromOpenIDConnectProvider :: Text -> Text -> RemoveClientIDFromOpenIDConnectProvider
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: newRemoveClientIDFromOpenIDConnectProviderResponse :: RemoveClientIDFromOpenIDConnectProviderResponse
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: removeClientIDFromOpenIDConnectProvider_clientID :: Lens' RemoveClientIDFromOpenIDConnectProvider Text
+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider: removeClientIDFromOpenIDConnectProvider_openIDConnectProviderArn :: Lens' RemoveClientIDFromOpenIDConnectProvider Text
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: RemoveRoleFromInstanceProfile' :: Text -> Text -> RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: RemoveRoleFromInstanceProfileResponse' :: RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: [$sel:instanceProfileName:RemoveRoleFromInstanceProfile'] :: RemoveRoleFromInstanceProfile -> Text
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: [$sel:roleName:RemoveRoleFromInstanceProfile'] :: RemoveRoleFromInstanceProfile -> Text
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: data RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: data RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance GHC.Read.Read Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance GHC.Read.Read Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance GHC.Show.Show Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: instance GHC.Show.Show Amazonka.IAM.RemoveRoleFromInstanceProfile.RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: newRemoveRoleFromInstanceProfile :: Text -> Text -> RemoveRoleFromInstanceProfile
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: newRemoveRoleFromInstanceProfileResponse :: RemoveRoleFromInstanceProfileResponse
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: removeRoleFromInstanceProfile_instanceProfileName :: Lens' RemoveRoleFromInstanceProfile Text
+ Amazonka.IAM.RemoveRoleFromInstanceProfile: removeRoleFromInstanceProfile_roleName :: Lens' RemoveRoleFromInstanceProfile Text
+ Amazonka.IAM.RemoveUserFromGroup: RemoveUserFromGroup' :: Text -> Text -> RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: RemoveUserFromGroupResponse' :: RemoveUserFromGroupResponse
+ Amazonka.IAM.RemoveUserFromGroup: [$sel:groupName:RemoveUserFromGroup'] :: RemoveUserFromGroup -> Text
+ Amazonka.IAM.RemoveUserFromGroup: [$sel:userName:RemoveUserFromGroup'] :: RemoveUserFromGroup -> Text
+ Amazonka.IAM.RemoveUserFromGroup: data RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: data RemoveUserFromGroupResponse
+ Amazonka.IAM.RemoveUserFromGroup: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance Amazonka.Data.Path.ToPath Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance Amazonka.Types.AWSRequest Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance Control.DeepSeq.NFData Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance Control.DeepSeq.NFData Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
+ Amazonka.IAM.RemoveUserFromGroup: instance Data.Hashable.Class.Hashable Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance GHC.Classes.Eq Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance GHC.Classes.Eq Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
+ Amazonka.IAM.RemoveUserFromGroup: instance GHC.Generics.Generic Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance GHC.Generics.Generic Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
+ Amazonka.IAM.RemoveUserFromGroup: instance GHC.Read.Read Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance GHC.Read.Read Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
+ Amazonka.IAM.RemoveUserFromGroup: instance GHC.Show.Show Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: instance GHC.Show.Show Amazonka.IAM.RemoveUserFromGroup.RemoveUserFromGroupResponse
+ Amazonka.IAM.RemoveUserFromGroup: newRemoveUserFromGroup :: Text -> Text -> RemoveUserFromGroup
+ Amazonka.IAM.RemoveUserFromGroup: newRemoveUserFromGroupResponse :: RemoveUserFromGroupResponse
+ Amazonka.IAM.RemoveUserFromGroup: removeUserFromGroup_groupName :: Lens' RemoveUserFromGroup Text
+ Amazonka.IAM.RemoveUserFromGroup: removeUserFromGroup_userName :: Lens' RemoveUserFromGroup Text
+ Amazonka.IAM.ResetServiceSpecificCredential: ResetServiceSpecificCredential' :: Maybe Text -> Text -> ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: ResetServiceSpecificCredentialResponse' :: Maybe ServiceSpecificCredential -> Int -> ResetServiceSpecificCredentialResponse
+ Amazonka.IAM.ResetServiceSpecificCredential: [$sel:httpStatus:ResetServiceSpecificCredentialResponse'] :: ResetServiceSpecificCredentialResponse -> Int
+ Amazonka.IAM.ResetServiceSpecificCredential: [$sel:serviceSpecificCredential:ResetServiceSpecificCredentialResponse'] :: ResetServiceSpecificCredentialResponse -> Maybe ServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: [$sel:serviceSpecificCredentialId:ResetServiceSpecificCredential'] :: ResetServiceSpecificCredential -> Text
+ Amazonka.IAM.ResetServiceSpecificCredential: [$sel:userName:ResetServiceSpecificCredential'] :: ResetServiceSpecificCredential -> Maybe Text
+ Amazonka.IAM.ResetServiceSpecificCredential: data ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: data ResetServiceSpecificCredentialResponse
+ Amazonka.IAM.ResetServiceSpecificCredential: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance Amazonka.Types.AWSRequest Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
+ Amazonka.IAM.ResetServiceSpecificCredential: instance Data.Hashable.Class.Hashable Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
+ Amazonka.IAM.ResetServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
+ Amazonka.IAM.ResetServiceSpecificCredential: instance GHC.Read.Read Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.ResetServiceSpecificCredential.ResetServiceSpecificCredentialResponse
+ Amazonka.IAM.ResetServiceSpecificCredential: newResetServiceSpecificCredential :: Text -> ResetServiceSpecificCredential
+ Amazonka.IAM.ResetServiceSpecificCredential: newResetServiceSpecificCredentialResponse :: Int -> ResetServiceSpecificCredentialResponse
+ Amazonka.IAM.ResetServiceSpecificCredential: resetServiceSpecificCredentialResponse_httpStatus :: Lens' ResetServiceSpecificCredentialResponse Int
+ Amazonka.IAM.ResetServiceSpecificCredential: resetServiceSpecificCredentialResponse_serviceSpecificCredential :: Lens' ResetServiceSpecificCredentialResponse (Maybe ServiceSpecificCredential)
+ Amazonka.IAM.ResetServiceSpecificCredential: resetServiceSpecificCredential_serviceSpecificCredentialId :: Lens' ResetServiceSpecificCredential Text
+ Amazonka.IAM.ResetServiceSpecificCredential: resetServiceSpecificCredential_userName :: Lens' ResetServiceSpecificCredential (Maybe Text)
+ Amazonka.IAM.ResyncMFADevice: ResyncMFADevice' :: Text -> Text -> Text -> Text -> ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: ResyncMFADeviceResponse' :: ResyncMFADeviceResponse
+ Amazonka.IAM.ResyncMFADevice: [$sel:authenticationCode1:ResyncMFADevice'] :: ResyncMFADevice -> Text
+ Amazonka.IAM.ResyncMFADevice: [$sel:authenticationCode2:ResyncMFADevice'] :: ResyncMFADevice -> Text
+ Amazonka.IAM.ResyncMFADevice: [$sel:serialNumber:ResyncMFADevice'] :: ResyncMFADevice -> Text
+ Amazonka.IAM.ResyncMFADevice: [$sel:userName:ResyncMFADevice'] :: ResyncMFADevice -> Text
+ Amazonka.IAM.ResyncMFADevice: data ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: data ResyncMFADeviceResponse
+ Amazonka.IAM.ResyncMFADevice: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance Amazonka.Data.Path.ToPath Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance Amazonka.Types.AWSRequest Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.ResyncMFADevice.ResyncMFADeviceResponse
+ Amazonka.IAM.ResyncMFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance GHC.Classes.Eq Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance GHC.Classes.Eq Amazonka.IAM.ResyncMFADevice.ResyncMFADeviceResponse
+ Amazonka.IAM.ResyncMFADevice: instance GHC.Generics.Generic Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance GHC.Generics.Generic Amazonka.IAM.ResyncMFADevice.ResyncMFADeviceResponse
+ Amazonka.IAM.ResyncMFADevice: instance GHC.Read.Read Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance GHC.Read.Read Amazonka.IAM.ResyncMFADevice.ResyncMFADeviceResponse
+ Amazonka.IAM.ResyncMFADevice: instance GHC.Show.Show Amazonka.IAM.ResyncMFADevice.ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: instance GHC.Show.Show Amazonka.IAM.ResyncMFADevice.ResyncMFADeviceResponse
+ Amazonka.IAM.ResyncMFADevice: newResyncMFADevice :: Text -> Text -> Text -> Text -> ResyncMFADevice
+ Amazonka.IAM.ResyncMFADevice: newResyncMFADeviceResponse :: ResyncMFADeviceResponse
+ Amazonka.IAM.ResyncMFADevice: resyncMFADevice_authenticationCode1 :: Lens' ResyncMFADevice Text
+ Amazonka.IAM.ResyncMFADevice: resyncMFADevice_authenticationCode2 :: Lens' ResyncMFADevice Text
+ Amazonka.IAM.ResyncMFADevice: resyncMFADevice_serialNumber :: Lens' ResyncMFADevice Text
+ Amazonka.IAM.ResyncMFADevice: resyncMFADevice_userName :: Lens' ResyncMFADevice Text
+ Amazonka.IAM.SetDefaultPolicyVersion: SetDefaultPolicyVersion' :: Text -> Text -> SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: SetDefaultPolicyVersionResponse' :: SetDefaultPolicyVersionResponse
+ Amazonka.IAM.SetDefaultPolicyVersion: [$sel:policyArn:SetDefaultPolicyVersion'] :: SetDefaultPolicyVersion -> Text
+ Amazonka.IAM.SetDefaultPolicyVersion: [$sel:versionId:SetDefaultPolicyVersion'] :: SetDefaultPolicyVersion -> Text
+ Amazonka.IAM.SetDefaultPolicyVersion: data SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: data SetDefaultPolicyVersionResponse
+ Amazonka.IAM.SetDefaultPolicyVersion: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance Amazonka.Data.Path.ToPath Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance Amazonka.Types.AWSRequest Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
+ Amazonka.IAM.SetDefaultPolicyVersion: instance Data.Hashable.Class.Hashable Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
+ Amazonka.IAM.SetDefaultPolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
+ Amazonka.IAM.SetDefaultPolicyVersion: instance GHC.Read.Read Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance GHC.Read.Read Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
+ Amazonka.IAM.SetDefaultPolicyVersion: instance GHC.Show.Show Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: instance GHC.Show.Show Amazonka.IAM.SetDefaultPolicyVersion.SetDefaultPolicyVersionResponse
+ Amazonka.IAM.SetDefaultPolicyVersion: newSetDefaultPolicyVersion :: Text -> Text -> SetDefaultPolicyVersion
+ Amazonka.IAM.SetDefaultPolicyVersion: newSetDefaultPolicyVersionResponse :: SetDefaultPolicyVersionResponse
+ Amazonka.IAM.SetDefaultPolicyVersion: setDefaultPolicyVersion_policyArn :: Lens' SetDefaultPolicyVersion Text
+ Amazonka.IAM.SetDefaultPolicyVersion: setDefaultPolicyVersion_versionId :: Lens' SetDefaultPolicyVersion Text
+ Amazonka.IAM.SetSecurityTokenServicePreferences: SetSecurityTokenServicePreferences' :: GlobalEndpointTokenVersion -> SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: SetSecurityTokenServicePreferencesResponse' :: SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM.SetSecurityTokenServicePreferences: [$sel:globalEndpointTokenVersion:SetSecurityTokenServicePreferences'] :: SetSecurityTokenServicePreferences -> GlobalEndpointTokenVersion
+ Amazonka.IAM.SetSecurityTokenServicePreferences: data SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: data SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance Amazonka.Data.Path.ToPath Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance Amazonka.Types.AWSRequest Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance Control.DeepSeq.NFData Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance Control.DeepSeq.NFData Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance Data.Hashable.Class.Hashable Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance GHC.Classes.Eq Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance GHC.Classes.Eq Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance GHC.Generics.Generic Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance GHC.Generics.Generic Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance GHC.Read.Read Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance GHC.Read.Read Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance GHC.Show.Show Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: instance GHC.Show.Show Amazonka.IAM.SetSecurityTokenServicePreferences.SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM.SetSecurityTokenServicePreferences: newSetSecurityTokenServicePreferences :: GlobalEndpointTokenVersion -> SetSecurityTokenServicePreferences
+ Amazonka.IAM.SetSecurityTokenServicePreferences: newSetSecurityTokenServicePreferencesResponse :: SetSecurityTokenServicePreferencesResponse
+ Amazonka.IAM.SetSecurityTokenServicePreferences: setSecurityTokenServicePreferences_globalEndpointTokenVersion :: Lens' SetSecurityTokenServicePreferences GlobalEndpointTokenVersion
+ Amazonka.IAM.SimulateCustomPolicy: SimulateCustomPolicy' :: Maybe Text -> Maybe [ContextEntry] -> Maybe Text -> Maybe Natural -> Maybe [Text] -> Maybe [Text] -> Maybe Text -> Maybe Text -> Maybe Text -> [Text] -> [Text] -> SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: SimulatePolicyResponse' :: Maybe [EvaluationResult] -> Maybe Bool -> Maybe Text -> SimulatePolicyResponse
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:actionNames:SimulateCustomPolicy'] :: SimulateCustomPolicy -> [Text]
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:callerArn:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe Text
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:contextEntries:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe [ContextEntry]
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:evaluationResults:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe [EvaluationResult]
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:isTruncated:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe Bool
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:marker:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe Text
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:marker:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe Text
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:maxItems:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe Natural
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:permissionsBoundaryPolicyInputList:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe [Text]
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:policyInputList:SimulateCustomPolicy'] :: SimulateCustomPolicy -> [Text]
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:resourceArns:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe [Text]
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:resourceHandlingOption:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe Text
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:resourceOwner:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe Text
+ Amazonka.IAM.SimulateCustomPolicy: [$sel:resourcePolicy:SimulateCustomPolicy'] :: SimulateCustomPolicy -> Maybe Text
+ Amazonka.IAM.SimulateCustomPolicy: data SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: data SimulatePolicyResponse
+ Amazonka.IAM.SimulateCustomPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance Amazonka.Pager.AWSPager Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance GHC.Classes.Eq Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance GHC.Generics.Generic Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance GHC.Read.Read Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: instance GHC.Show.Show Amazonka.IAM.SimulateCustomPolicy.SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: newSimulateCustomPolicy :: SimulateCustomPolicy
+ Amazonka.IAM.SimulateCustomPolicy: newSimulatePolicyResponse :: SimulatePolicyResponse
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_actionNames :: Lens' SimulateCustomPolicy [Text]
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_callerArn :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_contextEntries :: Lens' SimulateCustomPolicy (Maybe [ContextEntry])
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_marker :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_maxItems :: Lens' SimulateCustomPolicy (Maybe Natural)
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_permissionsBoundaryPolicyInputList :: Lens' SimulateCustomPolicy (Maybe [Text])
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_policyInputList :: Lens' SimulateCustomPolicy [Text]
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_resourceArns :: Lens' SimulateCustomPolicy (Maybe [Text])
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_resourceHandlingOption :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_resourceOwner :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.SimulateCustomPolicy: simulateCustomPolicy_resourcePolicy :: Lens' SimulateCustomPolicy (Maybe Text)
+ Amazonka.IAM.SimulateCustomPolicy: simulatePolicyResponse_evaluationResults :: Lens' SimulatePolicyResponse (Maybe [EvaluationResult])
+ Amazonka.IAM.SimulateCustomPolicy: simulatePolicyResponse_isTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
+ Amazonka.IAM.SimulateCustomPolicy: simulatePolicyResponse_marker :: Lens' SimulatePolicyResponse (Maybe Text)
+ Amazonka.IAM.SimulatePrincipalPolicy: SimulatePolicyResponse' :: Maybe [EvaluationResult] -> Maybe Bool -> Maybe Text -> SimulatePolicyResponse
+ Amazonka.IAM.SimulatePrincipalPolicy: SimulatePrincipalPolicy' :: Maybe Text -> Maybe [ContextEntry] -> Maybe Text -> Maybe Natural -> Maybe [Text] -> Maybe [Text] -> Maybe [Text] -> Maybe Text -> Maybe Text -> Maybe Text -> Text -> [Text] -> SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:actionNames:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> [Text]
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:callerArn:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe Text
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:contextEntries:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe [ContextEntry]
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:evaluationResults:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe [EvaluationResult]
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:isTruncated:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe Bool
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:marker:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe Text
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:marker:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe Text
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:maxItems:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe Natural
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:permissionsBoundaryPolicyInputList:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe [Text]
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:policyInputList:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe [Text]
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:policySourceArn:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Text
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:resourceArns:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe [Text]
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:resourceHandlingOption:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe Text
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:resourceOwner:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe Text
+ Amazonka.IAM.SimulatePrincipalPolicy: [$sel:resourcePolicy:SimulatePrincipalPolicy'] :: SimulatePrincipalPolicy -> Maybe Text
+ Amazonka.IAM.SimulatePrincipalPolicy: data SimulatePolicyResponse
+ Amazonka.IAM.SimulatePrincipalPolicy: data SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance Amazonka.Pager.AWSPager Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance GHC.Classes.Eq Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance GHC.Generics.Generic Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance GHC.Read.Read Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: instance GHC.Show.Show Amazonka.IAM.SimulatePrincipalPolicy.SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: newSimulatePolicyResponse :: SimulatePolicyResponse
+ Amazonka.IAM.SimulatePrincipalPolicy: newSimulatePrincipalPolicy :: Text -> SimulatePrincipalPolicy
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePolicyResponse_evaluationResults :: Lens' SimulatePolicyResponse (Maybe [EvaluationResult])
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePolicyResponse_isTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePolicyResponse_marker :: Lens' SimulatePolicyResponse (Maybe Text)
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_actionNames :: Lens' SimulatePrincipalPolicy [Text]
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_callerArn :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_contextEntries :: Lens' SimulatePrincipalPolicy (Maybe [ContextEntry])
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_marker :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_maxItems :: Lens' SimulatePrincipalPolicy (Maybe Natural)
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_permissionsBoundaryPolicyInputList :: Lens' SimulatePrincipalPolicy (Maybe [Text])
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_policyInputList :: Lens' SimulatePrincipalPolicy (Maybe [Text])
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_policySourceArn :: Lens' SimulatePrincipalPolicy Text
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_resourceArns :: Lens' SimulatePrincipalPolicy (Maybe [Text])
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_resourceHandlingOption :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_resourceOwner :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.SimulatePrincipalPolicy: simulatePrincipalPolicy_resourcePolicy :: Lens' SimulatePrincipalPolicy (Maybe Text)
+ Amazonka.IAM.TagInstanceProfile: TagInstanceProfile' :: Text -> [Tag] -> TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: TagInstanceProfileResponse' :: TagInstanceProfileResponse
+ Amazonka.IAM.TagInstanceProfile: [$sel:instanceProfileName:TagInstanceProfile'] :: TagInstanceProfile -> Text
+ Amazonka.IAM.TagInstanceProfile: [$sel:tags:TagInstanceProfile'] :: TagInstanceProfile -> [Tag]
+ Amazonka.IAM.TagInstanceProfile: data TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: data TagInstanceProfileResponse
+ Amazonka.IAM.TagInstanceProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.TagInstanceProfile.TagInstanceProfileResponse
+ Amazonka.IAM.TagInstanceProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.TagInstanceProfile.TagInstanceProfileResponse
+ Amazonka.IAM.TagInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.TagInstanceProfile.TagInstanceProfileResponse
+ Amazonka.IAM.TagInstanceProfile: instance GHC.Read.Read Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance GHC.Read.Read Amazonka.IAM.TagInstanceProfile.TagInstanceProfileResponse
+ Amazonka.IAM.TagInstanceProfile: instance GHC.Show.Show Amazonka.IAM.TagInstanceProfile.TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: instance GHC.Show.Show Amazonka.IAM.TagInstanceProfile.TagInstanceProfileResponse
+ Amazonka.IAM.TagInstanceProfile: newTagInstanceProfile :: Text -> TagInstanceProfile
+ Amazonka.IAM.TagInstanceProfile: newTagInstanceProfileResponse :: TagInstanceProfileResponse
+ Amazonka.IAM.TagInstanceProfile: tagInstanceProfile_instanceProfileName :: Lens' TagInstanceProfile Text
+ Amazonka.IAM.TagInstanceProfile: tagInstanceProfile_tags :: Lens' TagInstanceProfile [Tag]
+ Amazonka.IAM.TagMFADevice: TagMFADevice' :: Text -> [Tag] -> TagMFADevice
+ Amazonka.IAM.TagMFADevice: TagMFADeviceResponse' :: TagMFADeviceResponse
+ Amazonka.IAM.TagMFADevice: [$sel:serialNumber:TagMFADevice'] :: TagMFADevice -> Text
+ Amazonka.IAM.TagMFADevice: [$sel:tags:TagMFADevice'] :: TagMFADevice -> [Tag]
+ Amazonka.IAM.TagMFADevice: data TagMFADevice
+ Amazonka.IAM.TagMFADevice: data TagMFADeviceResponse
+ Amazonka.IAM.TagMFADevice: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance Amazonka.Data.Path.ToPath Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance Amazonka.Types.AWSRequest Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.TagMFADevice.TagMFADeviceResponse
+ Amazonka.IAM.TagMFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance GHC.Classes.Eq Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance GHC.Classes.Eq Amazonka.IAM.TagMFADevice.TagMFADeviceResponse
+ Amazonka.IAM.TagMFADevice: instance GHC.Generics.Generic Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance GHC.Generics.Generic Amazonka.IAM.TagMFADevice.TagMFADeviceResponse
+ Amazonka.IAM.TagMFADevice: instance GHC.Read.Read Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance GHC.Read.Read Amazonka.IAM.TagMFADevice.TagMFADeviceResponse
+ Amazonka.IAM.TagMFADevice: instance GHC.Show.Show Amazonka.IAM.TagMFADevice.TagMFADevice
+ Amazonka.IAM.TagMFADevice: instance GHC.Show.Show Amazonka.IAM.TagMFADevice.TagMFADeviceResponse
+ Amazonka.IAM.TagMFADevice: newTagMFADevice :: Text -> TagMFADevice
+ Amazonka.IAM.TagMFADevice: newTagMFADeviceResponse :: TagMFADeviceResponse
+ Amazonka.IAM.TagMFADevice: tagMFADevice_serialNumber :: Lens' TagMFADevice Text
+ Amazonka.IAM.TagMFADevice: tagMFADevice_tags :: Lens' TagMFADevice [Tag]
+ Amazonka.IAM.TagOpenIDConnectProvider: TagOpenIDConnectProvider' :: Text -> [Tag] -> TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: TagOpenIDConnectProviderResponse' :: TagOpenIDConnectProviderResponse
+ Amazonka.IAM.TagOpenIDConnectProvider: [$sel:openIDConnectProviderArn:TagOpenIDConnectProvider'] :: TagOpenIDConnectProvider -> Text
+ Amazonka.IAM.TagOpenIDConnectProvider: [$sel:tags:TagOpenIDConnectProvider'] :: TagOpenIDConnectProvider -> [Tag]
+ Amazonka.IAM.TagOpenIDConnectProvider: data TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: data TagOpenIDConnectProviderResponse
+ Amazonka.IAM.TagOpenIDConnectProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProviderResponse
+ Amazonka.IAM.TagOpenIDConnectProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProviderResponse
+ Amazonka.IAM.TagOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProviderResponse
+ Amazonka.IAM.TagOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProviderResponse
+ Amazonka.IAM.TagOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.TagOpenIDConnectProvider.TagOpenIDConnectProviderResponse
+ Amazonka.IAM.TagOpenIDConnectProvider: newTagOpenIDConnectProvider :: Text -> TagOpenIDConnectProvider
+ Amazonka.IAM.TagOpenIDConnectProvider: newTagOpenIDConnectProviderResponse :: TagOpenIDConnectProviderResponse
+ Amazonka.IAM.TagOpenIDConnectProvider: tagOpenIDConnectProvider_openIDConnectProviderArn :: Lens' TagOpenIDConnectProvider Text
+ Amazonka.IAM.TagOpenIDConnectProvider: tagOpenIDConnectProvider_tags :: Lens' TagOpenIDConnectProvider [Tag]
+ Amazonka.IAM.TagPolicy: TagPolicy' :: Text -> [Tag] -> TagPolicy
+ Amazonka.IAM.TagPolicy: TagPolicyResponse' :: TagPolicyResponse
+ Amazonka.IAM.TagPolicy: [$sel:policyArn:TagPolicy'] :: TagPolicy -> Text
+ Amazonka.IAM.TagPolicy: [$sel:tags:TagPolicy'] :: TagPolicy -> [Tag]
+ Amazonka.IAM.TagPolicy: data TagPolicy
+ Amazonka.IAM.TagPolicy: data TagPolicyResponse
+ Amazonka.IAM.TagPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.TagPolicy.TagPolicyResponse
+ Amazonka.IAM.TagPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance GHC.Classes.Eq Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance GHC.Classes.Eq Amazonka.IAM.TagPolicy.TagPolicyResponse
+ Amazonka.IAM.TagPolicy: instance GHC.Generics.Generic Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance GHC.Generics.Generic Amazonka.IAM.TagPolicy.TagPolicyResponse
+ Amazonka.IAM.TagPolicy: instance GHC.Read.Read Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance GHC.Read.Read Amazonka.IAM.TagPolicy.TagPolicyResponse
+ Amazonka.IAM.TagPolicy: instance GHC.Show.Show Amazonka.IAM.TagPolicy.TagPolicy
+ Amazonka.IAM.TagPolicy: instance GHC.Show.Show Amazonka.IAM.TagPolicy.TagPolicyResponse
+ Amazonka.IAM.TagPolicy: newTagPolicy :: Text -> TagPolicy
+ Amazonka.IAM.TagPolicy: newTagPolicyResponse :: TagPolicyResponse
+ Amazonka.IAM.TagPolicy: tagPolicy_policyArn :: Lens' TagPolicy Text
+ Amazonka.IAM.TagPolicy: tagPolicy_tags :: Lens' TagPolicy [Tag]
+ Amazonka.IAM.TagRole: TagRole' :: Text -> [Tag] -> TagRole
+ Amazonka.IAM.TagRole: TagRoleResponse' :: TagRoleResponse
+ Amazonka.IAM.TagRole: [$sel:roleName:TagRole'] :: TagRole -> Text
+ Amazonka.IAM.TagRole: [$sel:tags:TagRole'] :: TagRole -> [Tag]
+ Amazonka.IAM.TagRole: data TagRole
+ Amazonka.IAM.TagRole: data TagRoleResponse
+ Amazonka.IAM.TagRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance Control.DeepSeq.NFData Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance Control.DeepSeq.NFData Amazonka.IAM.TagRole.TagRoleResponse
+ Amazonka.IAM.TagRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance GHC.Classes.Eq Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance GHC.Classes.Eq Amazonka.IAM.TagRole.TagRoleResponse
+ Amazonka.IAM.TagRole: instance GHC.Generics.Generic Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance GHC.Generics.Generic Amazonka.IAM.TagRole.TagRoleResponse
+ Amazonka.IAM.TagRole: instance GHC.Read.Read Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance GHC.Read.Read Amazonka.IAM.TagRole.TagRoleResponse
+ Amazonka.IAM.TagRole: instance GHC.Show.Show Amazonka.IAM.TagRole.TagRole
+ Amazonka.IAM.TagRole: instance GHC.Show.Show Amazonka.IAM.TagRole.TagRoleResponse
+ Amazonka.IAM.TagRole: newTagRole :: Text -> TagRole
+ Amazonka.IAM.TagRole: newTagRoleResponse :: TagRoleResponse
+ Amazonka.IAM.TagRole: tagRole_roleName :: Lens' TagRole Text
+ Amazonka.IAM.TagRole: tagRole_tags :: Lens' TagRole [Tag]
+ Amazonka.IAM.TagSAMLProvider: TagSAMLProvider' :: Text -> [Tag] -> TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: TagSAMLProviderResponse' :: TagSAMLProviderResponse
+ Amazonka.IAM.TagSAMLProvider: [$sel:sAMLProviderArn:TagSAMLProvider'] :: TagSAMLProvider -> Text
+ Amazonka.IAM.TagSAMLProvider: [$sel:tags:TagSAMLProvider'] :: TagSAMLProvider -> [Tag]
+ Amazonka.IAM.TagSAMLProvider: data TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: data TagSAMLProviderResponse
+ Amazonka.IAM.TagSAMLProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.TagSAMLProvider.TagSAMLProviderResponse
+ Amazonka.IAM.TagSAMLProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.TagSAMLProvider.TagSAMLProviderResponse
+ Amazonka.IAM.TagSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.TagSAMLProvider.TagSAMLProviderResponse
+ Amazonka.IAM.TagSAMLProvider: instance GHC.Read.Read Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance GHC.Read.Read Amazonka.IAM.TagSAMLProvider.TagSAMLProviderResponse
+ Amazonka.IAM.TagSAMLProvider: instance GHC.Show.Show Amazonka.IAM.TagSAMLProvider.TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: instance GHC.Show.Show Amazonka.IAM.TagSAMLProvider.TagSAMLProviderResponse
+ Amazonka.IAM.TagSAMLProvider: newTagSAMLProvider :: Text -> TagSAMLProvider
+ Amazonka.IAM.TagSAMLProvider: newTagSAMLProviderResponse :: TagSAMLProviderResponse
+ Amazonka.IAM.TagSAMLProvider: tagSAMLProvider_sAMLProviderArn :: Lens' TagSAMLProvider Text
+ Amazonka.IAM.TagSAMLProvider: tagSAMLProvider_tags :: Lens' TagSAMLProvider [Tag]
+ Amazonka.IAM.TagServerCertificate: TagServerCertificate' :: Text -> [Tag] -> TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: TagServerCertificateResponse' :: TagServerCertificateResponse
+ Amazonka.IAM.TagServerCertificate: [$sel:serverCertificateName:TagServerCertificate'] :: TagServerCertificate -> Text
+ Amazonka.IAM.TagServerCertificate: [$sel:tags:TagServerCertificate'] :: TagServerCertificate -> [Tag]
+ Amazonka.IAM.TagServerCertificate: data TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: data TagServerCertificateResponse
+ Amazonka.IAM.TagServerCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.TagServerCertificate.TagServerCertificateResponse
+ Amazonka.IAM.TagServerCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.TagServerCertificate.TagServerCertificateResponse
+ Amazonka.IAM.TagServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.TagServerCertificate.TagServerCertificateResponse
+ Amazonka.IAM.TagServerCertificate: instance GHC.Read.Read Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance GHC.Read.Read Amazonka.IAM.TagServerCertificate.TagServerCertificateResponse
+ Amazonka.IAM.TagServerCertificate: instance GHC.Show.Show Amazonka.IAM.TagServerCertificate.TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: instance GHC.Show.Show Amazonka.IAM.TagServerCertificate.TagServerCertificateResponse
+ Amazonka.IAM.TagServerCertificate: newTagServerCertificate :: Text -> TagServerCertificate
+ Amazonka.IAM.TagServerCertificate: newTagServerCertificateResponse :: TagServerCertificateResponse
+ Amazonka.IAM.TagServerCertificate: tagServerCertificate_serverCertificateName :: Lens' TagServerCertificate Text
+ Amazonka.IAM.TagServerCertificate: tagServerCertificate_tags :: Lens' TagServerCertificate [Tag]
+ Amazonka.IAM.TagUser: TagUser' :: Text -> [Tag] -> TagUser
+ Amazonka.IAM.TagUser: TagUserResponse' :: TagUserResponse
+ Amazonka.IAM.TagUser: [$sel:tags:TagUser'] :: TagUser -> [Tag]
+ Amazonka.IAM.TagUser: [$sel:userName:TagUser'] :: TagUser -> Text
+ Amazonka.IAM.TagUser: data TagUser
+ Amazonka.IAM.TagUser: data TagUserResponse
+ Amazonka.IAM.TagUser: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance Amazonka.Data.Path.ToPath Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance Amazonka.Types.AWSRequest Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance Control.DeepSeq.NFData Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance Control.DeepSeq.NFData Amazonka.IAM.TagUser.TagUserResponse
+ Amazonka.IAM.TagUser: instance Data.Hashable.Class.Hashable Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance GHC.Classes.Eq Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance GHC.Classes.Eq Amazonka.IAM.TagUser.TagUserResponse
+ Amazonka.IAM.TagUser: instance GHC.Generics.Generic Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance GHC.Generics.Generic Amazonka.IAM.TagUser.TagUserResponse
+ Amazonka.IAM.TagUser: instance GHC.Read.Read Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance GHC.Read.Read Amazonka.IAM.TagUser.TagUserResponse
+ Amazonka.IAM.TagUser: instance GHC.Show.Show Amazonka.IAM.TagUser.TagUser
+ Amazonka.IAM.TagUser: instance GHC.Show.Show Amazonka.IAM.TagUser.TagUserResponse
+ Amazonka.IAM.TagUser: newTagUser :: Text -> TagUser
+ Amazonka.IAM.TagUser: newTagUserResponse :: TagUserResponse
+ Amazonka.IAM.TagUser: tagUser_tags :: Lens' TagUser [Tag]
+ Amazonka.IAM.TagUser: tagUser_userName :: Lens' TagUser Text
+ Amazonka.IAM.Types: AccessAdvisorUsageGranularityType' :: Text -> AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types: AccessDetail' :: Maybe Text -> Maybe ISO8601 -> Maybe Text -> Maybe Int -> Text -> Text -> AccessDetail
+ Amazonka.IAM.Types: AccessKeyInfo' :: Maybe ISO8601 -> Text -> AccessKey -> StatusType -> Sensitive Text -> AccessKeyInfo
+ Amazonka.IAM.Types: AccessKeyLastUsed' :: ISO8601 -> Text -> Text -> AccessKeyLastUsed
+ Amazonka.IAM.Types: AccessKeyMetadata' :: Maybe AccessKey -> Maybe ISO8601 -> Maybe StatusType -> Maybe Text -> AccessKeyMetadata
+ Amazonka.IAM.Types: AssignmentStatusType' :: Text -> AssignmentStatusType
+ Amazonka.IAM.Types: AttachedPermissionsBoundary' :: Maybe Text -> Maybe PermissionsBoundaryAttachmentType -> AttachedPermissionsBoundary
+ Amazonka.IAM.Types: AttachedPolicy' :: Maybe Text -> Maybe Text -> AttachedPolicy
+ Amazonka.IAM.Types: ContextEntry' :: Maybe Text -> Maybe ContextKeyTypeEnum -> Maybe [Text] -> ContextEntry
+ Amazonka.IAM.Types: ContextKeyTypeEnum' :: Text -> ContextKeyTypeEnum
+ Amazonka.IAM.Types: DeletionTaskFailureReasonType' :: Maybe Text -> Maybe [RoleUsageType] -> DeletionTaskFailureReasonType
+ Amazonka.IAM.Types: DeletionTaskStatusType' :: Text -> DeletionTaskStatusType
+ Amazonka.IAM.Types: EncodingType' :: Text -> EncodingType
+ Amazonka.IAM.Types: EntityDetails' :: Maybe ISO8601 -> EntityInfo -> EntityDetails
+ Amazonka.IAM.Types: EntityInfo' :: Maybe Text -> Text -> Text -> PolicyOwnerEntityType -> Text -> EntityInfo
+ Amazonka.IAM.Types: EntityType' :: Text -> EntityType
+ Amazonka.IAM.Types: ErrorDetails' :: Text -> Text -> ErrorDetails
+ Amazonka.IAM.Types: EvaluationResult' :: Maybe (HashMap Text PolicyEvaluationDecisionType) -> Maybe Text -> Maybe [Statement] -> Maybe [Text] -> Maybe OrganizationsDecisionDetail -> Maybe PermissionsBoundaryDecisionDetail -> Maybe [ResourceSpecificResult] -> Text -> PolicyEvaluationDecisionType -> EvaluationResult
+ Amazonka.IAM.Types: GetContextKeysForPolicyResponse' :: Maybe [Text] -> GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types: GlobalEndpointTokenVersion' :: Text -> GlobalEndpointTokenVersion
+ Amazonka.IAM.Types: Group' :: Text -> Text -> Text -> Text -> ISO8601 -> Group
+ Amazonka.IAM.Types: GroupDetail' :: Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe [PolicyDetail] -> Maybe Text -> GroupDetail
+ Amazonka.IAM.Types: InstanceProfile' :: Maybe [Tag] -> Text -> Text -> Text -> Text -> ISO8601 -> [Role] -> InstanceProfile
+ Amazonka.IAM.Types: JobStatusType' :: Text -> JobStatusType
+ Amazonka.IAM.Types: ListPoliciesGrantingServiceAccessEntry' :: Maybe [PolicyGrantingServiceAccess] -> Maybe Text -> ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types: LoginProfile' :: Maybe Bool -> Text -> ISO8601 -> LoginProfile
+ Amazonka.IAM.Types: MFADevice' :: Text -> Text -> ISO8601 -> MFADevice
+ Amazonka.IAM.Types: ManagedPolicyDetail' :: Maybe Text -> Maybe Int -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Bool -> Maybe Text -> Maybe Int -> Maybe Text -> Maybe Text -> Maybe [PolicyVersion] -> Maybe ISO8601 -> ManagedPolicyDetail
+ Amazonka.IAM.Types: OpenIDConnectProviderListEntry' :: Maybe Text -> OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types: OrganizationsDecisionDetail' :: Maybe Bool -> OrganizationsDecisionDetail
+ Amazonka.IAM.Types: PasswordPolicy' :: Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Natural -> Maybe Natural -> Maybe Natural -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> PasswordPolicy
+ Amazonka.IAM.Types: PermissionsBoundaryAttachmentType' :: Text -> PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types: PermissionsBoundaryDecisionDetail' :: Maybe Bool -> PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types: Policy' :: Maybe Text -> Maybe Int -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Bool -> Maybe Text -> Maybe Int -> Maybe Text -> Maybe Text -> Maybe [Tag] -> Maybe ISO8601 -> Policy
+ Amazonka.IAM.Types: PolicyDetail' :: Maybe Text -> Maybe Text -> PolicyDetail
+ Amazonka.IAM.Types: PolicyEvaluationDecisionType' :: Text -> PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: PolicyGrantingServiceAccess' :: Maybe Text -> Maybe PolicyOwnerEntityType -> Maybe Text -> Text -> PolicyType -> PolicyGrantingServiceAccess
+ Amazonka.IAM.Types: PolicyGroup' :: Maybe Text -> Maybe Text -> PolicyGroup
+ Amazonka.IAM.Types: PolicyOwnerEntityType' :: Text -> PolicyOwnerEntityType
+ Amazonka.IAM.Types: PolicyRole' :: Maybe Text -> Maybe Text -> PolicyRole
+ Amazonka.IAM.Types: PolicyScopeType' :: Text -> PolicyScopeType
+ Amazonka.IAM.Types: PolicySourceType' :: Text -> PolicySourceType
+ Amazonka.IAM.Types: PolicyType' :: Text -> PolicyType
+ Amazonka.IAM.Types: PolicyUsageType' :: Text -> PolicyUsageType
+ Amazonka.IAM.Types: PolicyUser' :: Maybe Text -> Maybe Text -> PolicyUser
+ Amazonka.IAM.Types: PolicyVersion' :: Maybe ISO8601 -> Maybe Text -> Maybe Bool -> Maybe Text -> PolicyVersion
+ Amazonka.IAM.Types: Position' :: Maybe Int -> Maybe Int -> Position
+ Amazonka.IAM.Types: ReportFormatType' :: Text -> ReportFormatType
+ Amazonka.IAM.Types: ReportStateType' :: Text -> ReportStateType
+ Amazonka.IAM.Types: ResourceSpecificResult' :: Maybe (HashMap Text PolicyEvaluationDecisionType) -> Maybe [Statement] -> Maybe [Text] -> Maybe PermissionsBoundaryDecisionDetail -> Text -> PolicyEvaluationDecisionType -> ResourceSpecificResult
+ Amazonka.IAM.Types: Role' :: Maybe Text -> Maybe Text -> Maybe Natural -> Maybe AttachedPermissionsBoundary -> Maybe RoleLastUsed -> Maybe [Tag] -> Text -> Text -> Text -> Text -> ISO8601 -> Role
+ Amazonka.IAM.Types: RoleDetail' :: Maybe Text -> Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe [InstanceProfile] -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe Text -> Maybe RoleLastUsed -> Maybe Text -> Maybe [PolicyDetail] -> Maybe [Tag] -> RoleDetail
+ Amazonka.IAM.Types: RoleLastUsed' :: Maybe ISO8601 -> Maybe Text -> RoleLastUsed
+ Amazonka.IAM.Types: RoleUsageType' :: Maybe Text -> Maybe [Text] -> RoleUsageType
+ Amazonka.IAM.Types: SAMLProviderListEntry' :: Maybe Text -> Maybe ISO8601 -> Maybe ISO8601 -> SAMLProviderListEntry
+ Amazonka.IAM.Types: SSHPublicKey' :: Maybe ISO8601 -> Text -> Text -> Text -> Text -> StatusType -> SSHPublicKey
+ Amazonka.IAM.Types: SSHPublicKeyMetadata' :: Text -> Text -> StatusType -> ISO8601 -> SSHPublicKeyMetadata
+ Amazonka.IAM.Types: ServerCertificate' :: Maybe Text -> Maybe [Tag] -> ServerCertificateMetadata -> Text -> ServerCertificate
+ Amazonka.IAM.Types: ServerCertificateMetadata' :: Maybe ISO8601 -> Maybe ISO8601 -> Text -> Text -> Text -> Text -> ServerCertificateMetadata
+ Amazonka.IAM.Types: ServiceLastAccessed' :: Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Int -> Maybe [TrackedActionLastAccessed] -> Text -> Text -> ServiceLastAccessed
+ Amazonka.IAM.Types: ServiceSpecificCredential' :: ISO8601 -> Text -> Text -> Sensitive Text -> Text -> Text -> StatusType -> ServiceSpecificCredential
+ Amazonka.IAM.Types: ServiceSpecificCredentialMetadata' :: Text -> StatusType -> Text -> ISO8601 -> Text -> Text -> ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types: SigningCertificate' :: Maybe ISO8601 -> Text -> Text -> Text -> StatusType -> SigningCertificate
+ Amazonka.IAM.Types: SimulatePolicyResponse' :: Maybe [EvaluationResult] -> Maybe Bool -> Maybe Text -> SimulatePolicyResponse
+ Amazonka.IAM.Types: SortKeyType' :: Text -> SortKeyType
+ Amazonka.IAM.Types: Statement' :: Maybe Position -> Maybe Text -> Maybe PolicySourceType -> Maybe Position -> Statement
+ Amazonka.IAM.Types: StatusType' :: Text -> StatusType
+ Amazonka.IAM.Types: SummaryKeyType' :: Text -> SummaryKeyType
+ Amazonka.IAM.Types: Tag' :: Text -> Text -> Tag
+ Amazonka.IAM.Types: TrackedActionLastAccessed' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe ISO8601 -> TrackedActionLastAccessed
+ Amazonka.IAM.Types: User' :: Maybe ISO8601 -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe [Tag] -> Text -> Text -> Text -> ISO8601 -> User
+ Amazonka.IAM.Types: UserDetail' :: Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe [Text] -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe [Tag] -> Maybe Text -> Maybe Text -> Maybe [PolicyDetail] -> UserDetail
+ Amazonka.IAM.Types: VirtualMFADevice' :: Maybe (Sensitive Base64) -> Maybe ISO8601 -> Maybe (Sensitive Base64) -> Maybe [Tag] -> Maybe User -> Text -> VirtualMFADevice
+ Amazonka.IAM.Types: [$sel:accessKeyId:AccessKeyInfo'] :: AccessKeyInfo -> AccessKey
+ Amazonka.IAM.Types: [$sel:accessKeyId:AccessKeyMetadata'] :: AccessKeyMetadata -> Maybe AccessKey
+ Amazonka.IAM.Types: [$sel:actionName:TrackedActionLastAccessed'] :: TrackedActionLastAccessed -> Maybe Text
+ Amazonka.IAM.Types: [$sel:allowUsersToChangePassword:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:allowedByOrganizations:OrganizationsDecisionDetail'] :: OrganizationsDecisionDetail -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:allowedByPermissionsBoundary:PermissionsBoundaryDecisionDetail'] :: PermissionsBoundaryDecisionDetail -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:arn:EntityInfo'] :: EntityInfo -> Text
+ Amazonka.IAM.Types: [$sel:arn:Group'] :: Group -> Text
+ Amazonka.IAM.Types: [$sel:arn:GroupDetail'] :: GroupDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:arn:InstanceProfile'] :: InstanceProfile -> Text
+ Amazonka.IAM.Types: [$sel:arn:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:arn:OpenIDConnectProviderListEntry'] :: OpenIDConnectProviderListEntry -> Maybe Text
+ Amazonka.IAM.Types: [$sel:arn:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types: [$sel:arn:Role'] :: Role -> Text
+ Amazonka.IAM.Types: [$sel:arn:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:arn:SAMLProviderListEntry'] :: SAMLProviderListEntry -> Maybe Text
+ Amazonka.IAM.Types: [$sel:arn:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Text
+ Amazonka.IAM.Types: [$sel:arn:User'] :: User -> Text
+ Amazonka.IAM.Types: [$sel:arn:UserDetail'] :: UserDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:assumeRolePolicyDocument:Role'] :: Role -> Maybe Text
+ Amazonka.IAM.Types: [$sel:assumeRolePolicyDocument:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:attachedManagedPolicies:GroupDetail'] :: GroupDetail -> Maybe [AttachedPolicy]
+ Amazonka.IAM.Types: [$sel:attachedManagedPolicies:RoleDetail'] :: RoleDetail -> Maybe [AttachedPolicy]
+ Amazonka.IAM.Types: [$sel:attachedManagedPolicies:UserDetail'] :: UserDetail -> Maybe [AttachedPolicy]
+ Amazonka.IAM.Types: [$sel:attachmentCount:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Int
+ Amazonka.IAM.Types: [$sel:attachmentCount:Policy'] :: Policy -> Maybe Int
+ Amazonka.IAM.Types: [$sel:base32StringSeed:VirtualMFADevice'] :: VirtualMFADevice -> Maybe (Sensitive Base64)
+ Amazonka.IAM.Types: [$sel:certificateBody:ServerCertificate'] :: ServerCertificate -> Text
+ Amazonka.IAM.Types: [$sel:certificateBody:SigningCertificate'] :: SigningCertificate -> Text
+ Amazonka.IAM.Types: [$sel:certificateChain:ServerCertificate'] :: ServerCertificate -> Maybe Text
+ Amazonka.IAM.Types: [$sel:certificateId:SigningCertificate'] :: SigningCertificate -> Text
+ Amazonka.IAM.Types: [$sel:code:ErrorDetails'] :: ErrorDetails -> Text
+ Amazonka.IAM.Types: [$sel:column:Position'] :: Position -> Maybe Int
+ Amazonka.IAM.Types: [$sel:contextKeyName:ContextEntry'] :: ContextEntry -> Maybe Text
+ Amazonka.IAM.Types: [$sel:contextKeyNames:GetContextKeysForPolicyResponse'] :: GetContextKeysForPolicyResponse -> Maybe [Text]
+ Amazonka.IAM.Types: [$sel:contextKeyType:ContextEntry'] :: ContextEntry -> Maybe ContextKeyTypeEnum
+ Amazonka.IAM.Types: [$sel:contextKeyValues:ContextEntry'] :: ContextEntry -> Maybe [Text]
+ Amazonka.IAM.Types: [$sel:createDate:AccessKeyInfo'] :: AccessKeyInfo -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:AccessKeyMetadata'] :: AccessKeyMetadata -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:Group'] :: Group -> ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:GroupDetail'] :: GroupDetail -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:InstanceProfile'] :: InstanceProfile -> ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:LoginProfile'] :: LoginProfile -> ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:Policy'] :: Policy -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:PolicyVersion'] :: PolicyVersion -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:Role'] :: Role -> ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:RoleDetail'] :: RoleDetail -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:SAMLProviderListEntry'] :: SAMLProviderListEntry -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:ServiceSpecificCredential'] :: ServiceSpecificCredential -> ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:User'] :: User -> ISO8601
+ Amazonka.IAM.Types: [$sel:createDate:UserDetail'] :: UserDetail -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:defaultVersionId:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:defaultVersionId:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types: [$sel:description:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:description:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types: [$sel:description:Role'] :: Role -> Maybe Text
+ Amazonka.IAM.Types: [$sel:document:PolicyVersion'] :: PolicyVersion -> Maybe Text
+ Amazonka.IAM.Types: [$sel:enableDate:MFADevice'] :: MFADevice -> ISO8601
+ Amazonka.IAM.Types: [$sel:enableDate:VirtualMFADevice'] :: VirtualMFADevice -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:endPosition:Statement'] :: Statement -> Maybe Position
+ Amazonka.IAM.Types: [$sel:entityInfo:EntityDetails'] :: EntityDetails -> EntityInfo
+ Amazonka.IAM.Types: [$sel:entityName:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> Maybe Text
+ Amazonka.IAM.Types: [$sel:entityPath:AccessDetail'] :: AccessDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:entityType:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> Maybe PolicyOwnerEntityType
+ Amazonka.IAM.Types: [$sel:evalActionName:EvaluationResult'] :: EvaluationResult -> Text
+ Amazonka.IAM.Types: [$sel:evalDecision:EvaluationResult'] :: EvaluationResult -> PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: [$sel:evalDecisionDetails:EvaluationResult'] :: EvaluationResult -> Maybe (HashMap Text PolicyEvaluationDecisionType)
+ Amazonka.IAM.Types: [$sel:evalDecisionDetails:ResourceSpecificResult'] :: ResourceSpecificResult -> Maybe (HashMap Text PolicyEvaluationDecisionType)
+ Amazonka.IAM.Types: [$sel:evalResourceDecision:ResourceSpecificResult'] :: ResourceSpecificResult -> PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: [$sel:evalResourceName:EvaluationResult'] :: EvaluationResult -> Maybe Text
+ Amazonka.IAM.Types: [$sel:evalResourceName:ResourceSpecificResult'] :: ResourceSpecificResult -> Text
+ Amazonka.IAM.Types: [$sel:evaluationResults:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe [EvaluationResult]
+ Amazonka.IAM.Types: [$sel:expiration:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:expirePasswords:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:fingerprint:SSHPublicKey'] :: SSHPublicKey -> Text
+ Amazonka.IAM.Types: [$sel:groupId:Group'] :: Group -> Text
+ Amazonka.IAM.Types: [$sel:groupId:GroupDetail'] :: GroupDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:groupId:PolicyGroup'] :: PolicyGroup -> Maybe Text
+ Amazonka.IAM.Types: [$sel:groupList:UserDetail'] :: UserDetail -> Maybe [Text]
+ Amazonka.IAM.Types: [$sel:groupName:Group'] :: Group -> Text
+ Amazonka.IAM.Types: [$sel:groupName:GroupDetail'] :: GroupDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:groupName:PolicyGroup'] :: PolicyGroup -> Maybe Text
+ Amazonka.IAM.Types: [$sel:groupPolicyList:GroupDetail'] :: GroupDetail -> Maybe [PolicyDetail]
+ Amazonka.IAM.Types: [$sel:hardExpiry:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:id:EntityInfo'] :: EntityInfo -> Text
+ Amazonka.IAM.Types: [$sel:instanceProfileId:InstanceProfile'] :: InstanceProfile -> Text
+ Amazonka.IAM.Types: [$sel:instanceProfileList:RoleDetail'] :: RoleDetail -> Maybe [InstanceProfile]
+ Amazonka.IAM.Types: [$sel:instanceProfileName:InstanceProfile'] :: InstanceProfile -> Text
+ Amazonka.IAM.Types: [$sel:isAttachable:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:isAttachable:Policy'] :: Policy -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:isDefaultVersion:PolicyVersion'] :: PolicyVersion -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:isTruncated:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:key:Tag'] :: Tag -> Text
+ Amazonka.IAM.Types: [$sel:lastAccessedEntity:TrackedActionLastAccessed'] :: TrackedActionLastAccessed -> Maybe Text
+ Amazonka.IAM.Types: [$sel:lastAccessedRegion:TrackedActionLastAccessed'] :: TrackedActionLastAccessed -> Maybe Text
+ Amazonka.IAM.Types: [$sel:lastAccessedTime:TrackedActionLastAccessed'] :: TrackedActionLastAccessed -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:lastAuthenticated:EntityDetails'] :: EntityDetails -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:lastAuthenticated:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:lastAuthenticatedEntity:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe Text
+ Amazonka.IAM.Types: [$sel:lastAuthenticatedRegion:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe Text
+ Amazonka.IAM.Types: [$sel:lastAuthenticatedTime:AccessDetail'] :: AccessDetail -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:lastUsedDate:AccessKeyLastUsed'] :: AccessKeyLastUsed -> ISO8601
+ Amazonka.IAM.Types: [$sel:lastUsedDate:RoleLastUsed'] :: RoleLastUsed -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:line:Position'] :: Position -> Maybe Int
+ Amazonka.IAM.Types: [$sel:marker:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe Text
+ Amazonka.IAM.Types: [$sel:matchedStatements:EvaluationResult'] :: EvaluationResult -> Maybe [Statement]
+ Amazonka.IAM.Types: [$sel:matchedStatements:ResourceSpecificResult'] :: ResourceSpecificResult -> Maybe [Statement]
+ Amazonka.IAM.Types: [$sel:maxPasswordAge:PasswordPolicy'] :: PasswordPolicy -> Maybe Natural
+ Amazonka.IAM.Types: [$sel:maxSessionDuration:Role'] :: Role -> Maybe Natural
+ Amazonka.IAM.Types: [$sel:message:ErrorDetails'] :: ErrorDetails -> Text
+ Amazonka.IAM.Types: [$sel:minimumPasswordLength:PasswordPolicy'] :: PasswordPolicy -> Maybe Natural
+ Amazonka.IAM.Types: [$sel:missingContextValues:EvaluationResult'] :: EvaluationResult -> Maybe [Text]
+ Amazonka.IAM.Types: [$sel:missingContextValues:ResourceSpecificResult'] :: ResourceSpecificResult -> Maybe [Text]
+ Amazonka.IAM.Types: [$sel:name:EntityInfo'] :: EntityInfo -> Text
+ Amazonka.IAM.Types: [$sel:organizationsDecisionDetail:EvaluationResult'] :: EvaluationResult -> Maybe OrganizationsDecisionDetail
+ Amazonka.IAM.Types: [$sel:passwordLastUsed:User'] :: User -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:passwordResetRequired:LoginProfile'] :: LoginProfile -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:passwordReusePrevention:PasswordPolicy'] :: PasswordPolicy -> Maybe Natural
+ Amazonka.IAM.Types: [$sel:path:EntityInfo'] :: EntityInfo -> Maybe Text
+ Amazonka.IAM.Types: [$sel:path:Group'] :: Group -> Text
+ Amazonka.IAM.Types: [$sel:path:GroupDetail'] :: GroupDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:path:InstanceProfile'] :: InstanceProfile -> Text
+ Amazonka.IAM.Types: [$sel:path:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:path:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types: [$sel:path:Role'] :: Role -> Text
+ Amazonka.IAM.Types: [$sel:path:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:path:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Text
+ Amazonka.IAM.Types: [$sel:path:User'] :: User -> Maybe Text
+ Amazonka.IAM.Types: [$sel:path:UserDetail'] :: UserDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:permissionsBoundary:Role'] :: Role -> Maybe AttachedPermissionsBoundary
+ Amazonka.IAM.Types: [$sel:permissionsBoundary:RoleDetail'] :: RoleDetail -> Maybe AttachedPermissionsBoundary
+ Amazonka.IAM.Types: [$sel:permissionsBoundary:User'] :: User -> Maybe AttachedPermissionsBoundary
+ Amazonka.IAM.Types: [$sel:permissionsBoundary:UserDetail'] :: UserDetail -> Maybe AttachedPermissionsBoundary
+ Amazonka.IAM.Types: [$sel:permissionsBoundaryArn:AttachedPermissionsBoundary'] :: AttachedPermissionsBoundary -> Maybe Text
+ Amazonka.IAM.Types: [$sel:permissionsBoundaryDecisionDetail:EvaluationResult'] :: EvaluationResult -> Maybe PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types: [$sel:permissionsBoundaryDecisionDetail:ResourceSpecificResult'] :: ResourceSpecificResult -> Maybe PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types: [$sel:permissionsBoundaryType:AttachedPermissionsBoundary'] :: AttachedPermissionsBoundary -> Maybe PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types: [$sel:permissionsBoundaryUsageCount:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Int
+ Amazonka.IAM.Types: [$sel:permissionsBoundaryUsageCount:Policy'] :: Policy -> Maybe Int
+ Amazonka.IAM.Types: [$sel:policies:ListPoliciesGrantingServiceAccessEntry'] :: ListPoliciesGrantingServiceAccessEntry -> Maybe [PolicyGrantingServiceAccess]
+ Amazonka.IAM.Types: [$sel:policyArn:AttachedPolicy'] :: AttachedPolicy -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyArn:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyDocument:PolicyDetail'] :: PolicyDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyId:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyId:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyName:AttachedPolicy'] :: AttachedPolicy -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyName:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyName:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyName:PolicyDetail'] :: PolicyDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:policyName:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> Text
+ Amazonka.IAM.Types: [$sel:policyType:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> PolicyType
+ Amazonka.IAM.Types: [$sel:policyVersionList:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe [PolicyVersion]
+ Amazonka.IAM.Types: [$sel:qRCodePNG:VirtualMFADevice'] :: VirtualMFADevice -> Maybe (Sensitive Base64)
+ Amazonka.IAM.Types: [$sel:reason:DeletionTaskFailureReasonType'] :: DeletionTaskFailureReasonType -> Maybe Text
+ Amazonka.IAM.Types: [$sel:region:AccessDetail'] :: AccessDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:region:AccessKeyLastUsed'] :: AccessKeyLastUsed -> Text
+ Amazonka.IAM.Types: [$sel:region:RoleLastUsed'] :: RoleLastUsed -> Maybe Text
+ Amazonka.IAM.Types: [$sel:region:RoleUsageType'] :: RoleUsageType -> Maybe Text
+ Amazonka.IAM.Types: [$sel:requireLowercaseCharacters:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:requireNumbers:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:requireSymbols:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:requireUppercaseCharacters:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types: [$sel:resourceSpecificResults:EvaluationResult'] :: EvaluationResult -> Maybe [ResourceSpecificResult]
+ Amazonka.IAM.Types: [$sel:resources:RoleUsageType'] :: RoleUsageType -> Maybe [Text]
+ Amazonka.IAM.Types: [$sel:roleId:PolicyRole'] :: PolicyRole -> Maybe Text
+ Amazonka.IAM.Types: [$sel:roleId:Role'] :: Role -> Text
+ Amazonka.IAM.Types: [$sel:roleId:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:roleLastUsed:Role'] :: Role -> Maybe RoleLastUsed
+ Amazonka.IAM.Types: [$sel:roleLastUsed:RoleDetail'] :: RoleDetail -> Maybe RoleLastUsed
+ Amazonka.IAM.Types: [$sel:roleName:PolicyRole'] :: PolicyRole -> Maybe Text
+ Amazonka.IAM.Types: [$sel:roleName:Role'] :: Role -> Text
+ Amazonka.IAM.Types: [$sel:roleName:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:rolePolicyList:RoleDetail'] :: RoleDetail -> Maybe [PolicyDetail]
+ Amazonka.IAM.Types: [$sel:roleUsageList:DeletionTaskFailureReasonType'] :: DeletionTaskFailureReasonType -> Maybe [RoleUsageType]
+ Amazonka.IAM.Types: [$sel:roles:InstanceProfile'] :: InstanceProfile -> [Role]
+ Amazonka.IAM.Types: [$sel:sSHPublicKeyBody:SSHPublicKey'] :: SSHPublicKey -> Text
+ Amazonka.IAM.Types: [$sel:sSHPublicKeyId:SSHPublicKey'] :: SSHPublicKey -> Text
+ Amazonka.IAM.Types: [$sel:sSHPublicKeyId:SSHPublicKeyMetadata'] :: SSHPublicKeyMetadata -> Text
+ Amazonka.IAM.Types: [$sel:secretAccessKey:AccessKeyInfo'] :: AccessKeyInfo -> Sensitive Text
+ Amazonka.IAM.Types: [$sel:serialNumber:MFADevice'] :: MFADevice -> Text
+ Amazonka.IAM.Types: [$sel:serialNumber:VirtualMFADevice'] :: VirtualMFADevice -> Text
+ Amazonka.IAM.Types: [$sel:serverCertificateId:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Text
+ Amazonka.IAM.Types: [$sel:serverCertificateMetadata:ServerCertificate'] :: ServerCertificate -> ServerCertificateMetadata
+ Amazonka.IAM.Types: [$sel:serverCertificateName:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Text
+ Amazonka.IAM.Types: [$sel:serviceName:AccessDetail'] :: AccessDetail -> Text
+ Amazonka.IAM.Types: [$sel:serviceName:AccessKeyLastUsed'] :: AccessKeyLastUsed -> Text
+ Amazonka.IAM.Types: [$sel:serviceName:ServiceLastAccessed'] :: ServiceLastAccessed -> Text
+ Amazonka.IAM.Types: [$sel:serviceName:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Text
+ Amazonka.IAM.Types: [$sel:serviceName:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> Text
+ Amazonka.IAM.Types: [$sel:serviceNamespace:AccessDetail'] :: AccessDetail -> Text
+ Amazonka.IAM.Types: [$sel:serviceNamespace:ListPoliciesGrantingServiceAccessEntry'] :: ListPoliciesGrantingServiceAccessEntry -> Maybe Text
+ Amazonka.IAM.Types: [$sel:serviceNamespace:ServiceLastAccessed'] :: ServiceLastAccessed -> Text
+ Amazonka.IAM.Types: [$sel:servicePassword:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Sensitive Text
+ Amazonka.IAM.Types: [$sel:serviceSpecificCredentialId:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Text
+ Amazonka.IAM.Types: [$sel:serviceSpecificCredentialId:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> Text
+ Amazonka.IAM.Types: [$sel:serviceUserName:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Text
+ Amazonka.IAM.Types: [$sel:serviceUserName:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> Text
+ Amazonka.IAM.Types: [$sel:sourcePolicyId:Statement'] :: Statement -> Maybe Text
+ Amazonka.IAM.Types: [$sel:sourcePolicyType:Statement'] :: Statement -> Maybe PolicySourceType
+ Amazonka.IAM.Types: [$sel:startPosition:Statement'] :: Statement -> Maybe Position
+ Amazonka.IAM.Types: [$sel:status:AccessKeyInfo'] :: AccessKeyInfo -> StatusType
+ Amazonka.IAM.Types: [$sel:status:AccessKeyMetadata'] :: AccessKeyMetadata -> Maybe StatusType
+ Amazonka.IAM.Types: [$sel:status:SSHPublicKey'] :: SSHPublicKey -> StatusType
+ Amazonka.IAM.Types: [$sel:status:SSHPublicKeyMetadata'] :: SSHPublicKeyMetadata -> StatusType
+ Amazonka.IAM.Types: [$sel:status:ServiceSpecificCredential'] :: ServiceSpecificCredential -> StatusType
+ Amazonka.IAM.Types: [$sel:status:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> StatusType
+ Amazonka.IAM.Types: [$sel:status:SigningCertificate'] :: SigningCertificate -> StatusType
+ Amazonka.IAM.Types: [$sel:tags:InstanceProfile'] :: InstanceProfile -> Maybe [Tag]
+ Amazonka.IAM.Types: [$sel:tags:Policy'] :: Policy -> Maybe [Tag]
+ Amazonka.IAM.Types: [$sel:tags:Role'] :: Role -> Maybe [Tag]
+ Amazonka.IAM.Types: [$sel:tags:RoleDetail'] :: RoleDetail -> Maybe [Tag]
+ Amazonka.IAM.Types: [$sel:tags:ServerCertificate'] :: ServerCertificate -> Maybe [Tag]
+ Amazonka.IAM.Types: [$sel:tags:User'] :: User -> Maybe [Tag]
+ Amazonka.IAM.Types: [$sel:tags:UserDetail'] :: UserDetail -> Maybe [Tag]
+ Amazonka.IAM.Types: [$sel:tags:VirtualMFADevice'] :: VirtualMFADevice -> Maybe [Tag]
+ Amazonka.IAM.Types: [$sel:totalAuthenticatedEntities:AccessDetail'] :: AccessDetail -> Maybe Int
+ Amazonka.IAM.Types: [$sel:totalAuthenticatedEntities:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe Int
+ Amazonka.IAM.Types: [$sel:trackedActionsLastAccessed:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe [TrackedActionLastAccessed]
+ Amazonka.IAM.Types: [$sel:type':EntityInfo'] :: EntityInfo -> PolicyOwnerEntityType
+ Amazonka.IAM.Types: [$sel:updateDate:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:updateDate:Policy'] :: Policy -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:uploadDate:SSHPublicKey'] :: SSHPublicKey -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:uploadDate:SSHPublicKeyMetadata'] :: SSHPublicKeyMetadata -> ISO8601
+ Amazonka.IAM.Types: [$sel:uploadDate:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:uploadDate:SigningCertificate'] :: SigningCertificate -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:user:VirtualMFADevice'] :: VirtualMFADevice -> Maybe User
+ Amazonka.IAM.Types: [$sel:userId:PolicyUser'] :: PolicyUser -> Maybe Text
+ Amazonka.IAM.Types: [$sel:userId:User'] :: User -> Text
+ Amazonka.IAM.Types: [$sel:userId:UserDetail'] :: UserDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:userName:AccessKeyInfo'] :: AccessKeyInfo -> Text
+ Amazonka.IAM.Types: [$sel:userName:AccessKeyMetadata'] :: AccessKeyMetadata -> Maybe Text
+ Amazonka.IAM.Types: [$sel:userName:LoginProfile'] :: LoginProfile -> Text
+ Amazonka.IAM.Types: [$sel:userName:MFADevice'] :: MFADevice -> Text
+ Amazonka.IAM.Types: [$sel:userName:PolicyUser'] :: PolicyUser -> Maybe Text
+ Amazonka.IAM.Types: [$sel:userName:SSHPublicKey'] :: SSHPublicKey -> Text
+ Amazonka.IAM.Types: [$sel:userName:SSHPublicKeyMetadata'] :: SSHPublicKeyMetadata -> Text
+ Amazonka.IAM.Types: [$sel:userName:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Text
+ Amazonka.IAM.Types: [$sel:userName:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> Text
+ Amazonka.IAM.Types: [$sel:userName:SigningCertificate'] :: SigningCertificate -> Text
+ Amazonka.IAM.Types: [$sel:userName:User'] :: User -> Text
+ Amazonka.IAM.Types: [$sel:userName:UserDetail'] :: UserDetail -> Maybe Text
+ Amazonka.IAM.Types: [$sel:userPolicyList:UserDetail'] :: UserDetail -> Maybe [PolicyDetail]
+ Amazonka.IAM.Types: [$sel:validUntil:SAMLProviderListEntry'] :: SAMLProviderListEntry -> Maybe ISO8601
+ Amazonka.IAM.Types: [$sel:value:Tag'] :: Tag -> Text
+ Amazonka.IAM.Types: [$sel:versionId:PolicyVersion'] :: PolicyVersion -> Maybe Text
+ Amazonka.IAM.Types: [fromAccessAdvisorUsageGranularityType] :: AccessAdvisorUsageGranularityType -> Text
+ Amazonka.IAM.Types: [fromAssignmentStatusType] :: AssignmentStatusType -> Text
+ Amazonka.IAM.Types: [fromContextKeyTypeEnum] :: ContextKeyTypeEnum -> Text
+ Amazonka.IAM.Types: [fromDeletionTaskStatusType] :: DeletionTaskStatusType -> Text
+ Amazonka.IAM.Types: [fromEncodingType] :: EncodingType -> Text
+ Amazonka.IAM.Types: [fromEntityType] :: EntityType -> Text
+ Amazonka.IAM.Types: [fromGlobalEndpointTokenVersion] :: GlobalEndpointTokenVersion -> Text
+ Amazonka.IAM.Types: [fromJobStatusType] :: JobStatusType -> Text
+ Amazonka.IAM.Types: [fromPermissionsBoundaryAttachmentType] :: PermissionsBoundaryAttachmentType -> Text
+ Amazonka.IAM.Types: [fromPolicyEvaluationDecisionType] :: PolicyEvaluationDecisionType -> Text
+ Amazonka.IAM.Types: [fromPolicyOwnerEntityType] :: PolicyOwnerEntityType -> Text
+ Amazonka.IAM.Types: [fromPolicyScopeType] :: PolicyScopeType -> Text
+ Amazonka.IAM.Types: [fromPolicySourceType] :: PolicySourceType -> Text
+ Amazonka.IAM.Types: [fromPolicyType] :: PolicyType -> Text
+ Amazonka.IAM.Types: [fromPolicyUsageType] :: PolicyUsageType -> Text
+ Amazonka.IAM.Types: [fromReportFormatType] :: ReportFormatType -> Text
+ Amazonka.IAM.Types: [fromReportStateType] :: ReportStateType -> Text
+ Amazonka.IAM.Types: [fromSortKeyType] :: SortKeyType -> Text
+ Amazonka.IAM.Types: [fromStatusType] :: StatusType -> Text
+ Amazonka.IAM.Types: [fromSummaryKeyType] :: SummaryKeyType -> Text
+ Amazonka.IAM.Types: _ConcurrentModificationException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _CredentialReportExpiredException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _CredentialReportNotPresentException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _CredentialReportNotReadyException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _DeleteConflictException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _DuplicateCertificateException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _DuplicateSSHPublicKeyException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _EntityAlreadyExistsException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _EntityTemporarilyUnmodifiableException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _InvalidAuthenticationCodeException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _InvalidCertificateException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _InvalidInputException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _InvalidPublicKeyException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _InvalidUserTypeException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _KeyPairMismatchException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _LimitExceededException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _MalformedCertificateException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _MalformedPolicyDocumentException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _NoSuchEntityException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _PasswordPolicyViolationException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _PolicyEvaluationException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _PolicyNotAttachableException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _ReportGenerationLimitExceededException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _ServiceFailureException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _ServiceNotSupportedException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _UnmodifiableEntityException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: _UnrecognizedPublicKeyEncodingException :: AsError a => Fold a ServiceError
+ Amazonka.IAM.Types: accessDetail_entityPath :: Lens' AccessDetail (Maybe Text)
+ Amazonka.IAM.Types: accessDetail_lastAuthenticatedTime :: Lens' AccessDetail (Maybe UTCTime)
+ Amazonka.IAM.Types: accessDetail_region :: Lens' AccessDetail (Maybe Text)
+ Amazonka.IAM.Types: accessDetail_serviceName :: Lens' AccessDetail Text
+ Amazonka.IAM.Types: accessDetail_serviceNamespace :: Lens' AccessDetail Text
+ Amazonka.IAM.Types: accessDetail_totalAuthenticatedEntities :: Lens' AccessDetail (Maybe Int)
+ Amazonka.IAM.Types: accessKeyInfo_accessKeyId :: Lens' AccessKeyInfo AccessKey
+ Amazonka.IAM.Types: accessKeyInfo_createDate :: Lens' AccessKeyInfo (Maybe UTCTime)
+ Amazonka.IAM.Types: accessKeyInfo_secretAccessKey :: Lens' AccessKeyInfo Text
+ Amazonka.IAM.Types: accessKeyInfo_status :: Lens' AccessKeyInfo StatusType
+ Amazonka.IAM.Types: accessKeyInfo_userName :: Lens' AccessKeyInfo Text
+ Amazonka.IAM.Types: accessKeyLastUsed_lastUsedDate :: Lens' AccessKeyLastUsed UTCTime
+ Amazonka.IAM.Types: accessKeyLastUsed_region :: Lens' AccessKeyLastUsed Text
+ Amazonka.IAM.Types: accessKeyLastUsed_serviceName :: Lens' AccessKeyLastUsed Text
+ Amazonka.IAM.Types: accessKeyMetadata_accessKeyId :: Lens' AccessKeyMetadata (Maybe AccessKey)
+ Amazonka.IAM.Types: accessKeyMetadata_createDate :: Lens' AccessKeyMetadata (Maybe UTCTime)
+ Amazonka.IAM.Types: accessKeyMetadata_status :: Lens' AccessKeyMetadata (Maybe StatusType)
+ Amazonka.IAM.Types: accessKeyMetadata_userName :: Lens' AccessKeyMetadata (Maybe Text)
+ Amazonka.IAM.Types: attachedPermissionsBoundary_permissionsBoundaryArn :: Lens' AttachedPermissionsBoundary (Maybe Text)
+ Amazonka.IAM.Types: attachedPermissionsBoundary_permissionsBoundaryType :: Lens' AttachedPermissionsBoundary (Maybe PermissionsBoundaryAttachmentType)
+ Amazonka.IAM.Types: attachedPolicy_policyArn :: Lens' AttachedPolicy (Maybe Text)
+ Amazonka.IAM.Types: attachedPolicy_policyName :: Lens' AttachedPolicy (Maybe Text)
+ Amazonka.IAM.Types: contextEntry_contextKeyName :: Lens' ContextEntry (Maybe Text)
+ Amazonka.IAM.Types: contextEntry_contextKeyType :: Lens' ContextEntry (Maybe ContextKeyTypeEnum)
+ Amazonka.IAM.Types: contextEntry_contextKeyValues :: Lens' ContextEntry (Maybe [Text])
+ Amazonka.IAM.Types: data AccessDetail
+ Amazonka.IAM.Types: data AccessKeyInfo
+ Amazonka.IAM.Types: data AccessKeyLastUsed
+ Amazonka.IAM.Types: data AccessKeyMetadata
+ Amazonka.IAM.Types: data AttachedPermissionsBoundary
+ Amazonka.IAM.Types: data AttachedPolicy
+ Amazonka.IAM.Types: data ContextEntry
+ Amazonka.IAM.Types: data DeletionTaskFailureReasonType
+ Amazonka.IAM.Types: data EntityDetails
+ Amazonka.IAM.Types: data EntityInfo
+ Amazonka.IAM.Types: data ErrorDetails
+ Amazonka.IAM.Types: data EvaluationResult
+ Amazonka.IAM.Types: data GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types: data Group
+ Amazonka.IAM.Types: data GroupDetail
+ Amazonka.IAM.Types: data InstanceProfile
+ Amazonka.IAM.Types: data ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types: data LoginProfile
+ Amazonka.IAM.Types: data MFADevice
+ Amazonka.IAM.Types: data ManagedPolicyDetail
+ Amazonka.IAM.Types: data OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types: data OrganizationsDecisionDetail
+ Amazonka.IAM.Types: data PasswordPolicy
+ Amazonka.IAM.Types: data PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types: data Policy
+ Amazonka.IAM.Types: data PolicyDetail
+ Amazonka.IAM.Types: data PolicyGrantingServiceAccess
+ Amazonka.IAM.Types: data PolicyGroup
+ Amazonka.IAM.Types: data PolicyRole
+ Amazonka.IAM.Types: data PolicyUser
+ Amazonka.IAM.Types: data PolicyVersion
+ Amazonka.IAM.Types: data Position
+ Amazonka.IAM.Types: data ResourceSpecificResult
+ Amazonka.IAM.Types: data Role
+ Amazonka.IAM.Types: data RoleDetail
+ Amazonka.IAM.Types: data RoleLastUsed
+ Amazonka.IAM.Types: data RoleUsageType
+ Amazonka.IAM.Types: data SAMLProviderListEntry
+ Amazonka.IAM.Types: data SSHPublicKey
+ Amazonka.IAM.Types: data SSHPublicKeyMetadata
+ Amazonka.IAM.Types: data ServerCertificate
+ Amazonka.IAM.Types: data ServerCertificateMetadata
+ Amazonka.IAM.Types: data ServiceLastAccessed
+ Amazonka.IAM.Types: data ServiceSpecificCredential
+ Amazonka.IAM.Types: data ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types: data SigningCertificate
+ Amazonka.IAM.Types: data SimulatePolicyResponse
+ Amazonka.IAM.Types: data Statement
+ Amazonka.IAM.Types: data Tag
+ Amazonka.IAM.Types: data TrackedActionLastAccessed
+ Amazonka.IAM.Types: data User
+ Amazonka.IAM.Types: data UserDetail
+ Amazonka.IAM.Types: data VirtualMFADevice
+ Amazonka.IAM.Types: defaultService :: Service
+ Amazonka.IAM.Types: deletionTaskFailureReasonType_reason :: Lens' DeletionTaskFailureReasonType (Maybe Text)
+ Amazonka.IAM.Types: deletionTaskFailureReasonType_roleUsageList :: Lens' DeletionTaskFailureReasonType (Maybe [RoleUsageType])
+ Amazonka.IAM.Types: entityDetails_entityInfo :: Lens' EntityDetails EntityInfo
+ Amazonka.IAM.Types: entityDetails_lastAuthenticated :: Lens' EntityDetails (Maybe UTCTime)
+ Amazonka.IAM.Types: entityInfo_arn :: Lens' EntityInfo Text
+ Amazonka.IAM.Types: entityInfo_id :: Lens' EntityInfo Text
+ Amazonka.IAM.Types: entityInfo_name :: Lens' EntityInfo Text
+ Amazonka.IAM.Types: entityInfo_path :: Lens' EntityInfo (Maybe Text)
+ Amazonka.IAM.Types: entityInfo_type :: Lens' EntityInfo PolicyOwnerEntityType
+ Amazonka.IAM.Types: errorDetails_code :: Lens' ErrorDetails Text
+ Amazonka.IAM.Types: errorDetails_message :: Lens' ErrorDetails Text
+ Amazonka.IAM.Types: evaluationResult_evalActionName :: Lens' EvaluationResult Text
+ Amazonka.IAM.Types: evaluationResult_evalDecision :: Lens' EvaluationResult PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: evaluationResult_evalDecisionDetails :: Lens' EvaluationResult (Maybe (HashMap Text PolicyEvaluationDecisionType))
+ Amazonka.IAM.Types: evaluationResult_evalResourceName :: Lens' EvaluationResult (Maybe Text)
+ Amazonka.IAM.Types: evaluationResult_matchedStatements :: Lens' EvaluationResult (Maybe [Statement])
+ Amazonka.IAM.Types: evaluationResult_missingContextValues :: Lens' EvaluationResult (Maybe [Text])
+ Amazonka.IAM.Types: evaluationResult_organizationsDecisionDetail :: Lens' EvaluationResult (Maybe OrganizationsDecisionDetail)
+ Amazonka.IAM.Types: evaluationResult_permissionsBoundaryDecisionDetail :: Lens' EvaluationResult (Maybe PermissionsBoundaryDecisionDetail)
+ Amazonka.IAM.Types: evaluationResult_resourceSpecificResults :: Lens' EvaluationResult (Maybe [ResourceSpecificResult])
+ Amazonka.IAM.Types: getContextKeysForPolicyResponse_contextKeyNames :: Lens' GetContextKeysForPolicyResponse (Maybe [Text])
+ Amazonka.IAM.Types: groupDetail_arn :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Types: groupDetail_attachedManagedPolicies :: Lens' GroupDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Types: groupDetail_createDate :: Lens' GroupDetail (Maybe UTCTime)
+ Amazonka.IAM.Types: groupDetail_groupId :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Types: groupDetail_groupName :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Types: groupDetail_groupPolicyList :: Lens' GroupDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Types: groupDetail_path :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Types: group_arn :: Lens' Group Text
+ Amazonka.IAM.Types: group_createDate :: Lens' Group UTCTime
+ Amazonka.IAM.Types: group_groupId :: Lens' Group Text
+ Amazonka.IAM.Types: group_groupName :: Lens' Group Text
+ Amazonka.IAM.Types: group_path :: Lens' Group Text
+ Amazonka.IAM.Types: instanceProfile_arn :: Lens' InstanceProfile Text
+ Amazonka.IAM.Types: instanceProfile_createDate :: Lens' InstanceProfile UTCTime
+ Amazonka.IAM.Types: instanceProfile_instanceProfileId :: Lens' InstanceProfile Text
+ Amazonka.IAM.Types: instanceProfile_instanceProfileName :: Lens' InstanceProfile Text
+ Amazonka.IAM.Types: instanceProfile_path :: Lens' InstanceProfile Text
+ Amazonka.IAM.Types: instanceProfile_roles :: Lens' InstanceProfile [Role]
+ Amazonka.IAM.Types: instanceProfile_tags :: Lens' InstanceProfile (Maybe [Tag])
+ Amazonka.IAM.Types: listPoliciesGrantingServiceAccessEntry_policies :: Lens' ListPoliciesGrantingServiceAccessEntry (Maybe [PolicyGrantingServiceAccess])
+ Amazonka.IAM.Types: listPoliciesGrantingServiceAccessEntry_serviceNamespace :: Lens' ListPoliciesGrantingServiceAccessEntry (Maybe Text)
+ Amazonka.IAM.Types: loginProfile_createDate :: Lens' LoginProfile UTCTime
+ Amazonka.IAM.Types: loginProfile_passwordResetRequired :: Lens' LoginProfile (Maybe Bool)
+ Amazonka.IAM.Types: loginProfile_userName :: Lens' LoginProfile Text
+ Amazonka.IAM.Types: managedPolicyDetail_arn :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types: managedPolicyDetail_attachmentCount :: Lens' ManagedPolicyDetail (Maybe Int)
+ Amazonka.IAM.Types: managedPolicyDetail_createDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
+ Amazonka.IAM.Types: managedPolicyDetail_defaultVersionId :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types: managedPolicyDetail_description :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types: managedPolicyDetail_isAttachable :: Lens' ManagedPolicyDetail (Maybe Bool)
+ Amazonka.IAM.Types: managedPolicyDetail_path :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types: managedPolicyDetail_permissionsBoundaryUsageCount :: Lens' ManagedPolicyDetail (Maybe Int)
+ Amazonka.IAM.Types: managedPolicyDetail_policyId :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types: managedPolicyDetail_policyName :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types: managedPolicyDetail_policyVersionList :: Lens' ManagedPolicyDetail (Maybe [PolicyVersion])
+ Amazonka.IAM.Types: managedPolicyDetail_updateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
+ Amazonka.IAM.Types: mfaDevice_enableDate :: Lens' MFADevice UTCTime
+ Amazonka.IAM.Types: mfaDevice_serialNumber :: Lens' MFADevice Text
+ Amazonka.IAM.Types: mfaDevice_userName :: Lens' MFADevice Text
+ Amazonka.IAM.Types: newAccessDetail :: Text -> Text -> AccessDetail
+ Amazonka.IAM.Types: newAccessKeyInfo :: Text -> AccessKey -> StatusType -> Text -> AccessKeyInfo
+ Amazonka.IAM.Types: newAccessKeyLastUsed :: UTCTime -> Text -> Text -> AccessKeyLastUsed
+ Amazonka.IAM.Types: newAccessKeyMetadata :: AccessKeyMetadata
+ Amazonka.IAM.Types: newAttachedPermissionsBoundary :: AttachedPermissionsBoundary
+ Amazonka.IAM.Types: newAttachedPolicy :: AttachedPolicy
+ Amazonka.IAM.Types: newContextEntry :: ContextEntry
+ Amazonka.IAM.Types: newDeletionTaskFailureReasonType :: DeletionTaskFailureReasonType
+ Amazonka.IAM.Types: newEntityDetails :: EntityInfo -> EntityDetails
+ Amazonka.IAM.Types: newEntityInfo :: Text -> Text -> PolicyOwnerEntityType -> Text -> EntityInfo
+ Amazonka.IAM.Types: newErrorDetails :: Text -> Text -> ErrorDetails
+ Amazonka.IAM.Types: newEvaluationResult :: Text -> PolicyEvaluationDecisionType -> EvaluationResult
+ Amazonka.IAM.Types: newGetContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types: newGroup :: Text -> Text -> Text -> Text -> UTCTime -> Group
+ Amazonka.IAM.Types: newGroupDetail :: GroupDetail
+ Amazonka.IAM.Types: newInstanceProfile :: Text -> Text -> Text -> Text -> UTCTime -> InstanceProfile
+ Amazonka.IAM.Types: newListPoliciesGrantingServiceAccessEntry :: ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types: newLoginProfile :: Text -> UTCTime -> LoginProfile
+ Amazonka.IAM.Types: newMFADevice :: Text -> Text -> UTCTime -> MFADevice
+ Amazonka.IAM.Types: newManagedPolicyDetail :: ManagedPolicyDetail
+ Amazonka.IAM.Types: newOpenIDConnectProviderListEntry :: OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types: newOrganizationsDecisionDetail :: OrganizationsDecisionDetail
+ Amazonka.IAM.Types: newPasswordPolicy :: PasswordPolicy
+ Amazonka.IAM.Types: newPermissionsBoundaryDecisionDetail :: PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types: newPolicy :: Policy
+ Amazonka.IAM.Types: newPolicyDetail :: PolicyDetail
+ Amazonka.IAM.Types: newPolicyGrantingServiceAccess :: Text -> PolicyType -> PolicyGrantingServiceAccess
+ Amazonka.IAM.Types: newPolicyGroup :: PolicyGroup
+ Amazonka.IAM.Types: newPolicyRole :: PolicyRole
+ Amazonka.IAM.Types: newPolicyUser :: PolicyUser
+ Amazonka.IAM.Types: newPolicyVersion :: PolicyVersion
+ Amazonka.IAM.Types: newPosition :: Position
+ Amazonka.IAM.Types: newResourceSpecificResult :: Text -> PolicyEvaluationDecisionType -> ResourceSpecificResult
+ Amazonka.IAM.Types: newRole :: Text -> Text -> Text -> Text -> UTCTime -> Role
+ Amazonka.IAM.Types: newRoleDetail :: RoleDetail
+ Amazonka.IAM.Types: newRoleLastUsed :: RoleLastUsed
+ Amazonka.IAM.Types: newRoleUsageType :: RoleUsageType
+ Amazonka.IAM.Types: newSAMLProviderListEntry :: SAMLProviderListEntry
+ Amazonka.IAM.Types: newSSHPublicKey :: Text -> Text -> Text -> Text -> StatusType -> SSHPublicKey
+ Amazonka.IAM.Types: newSSHPublicKeyMetadata :: Text -> Text -> StatusType -> UTCTime -> SSHPublicKeyMetadata
+ Amazonka.IAM.Types: newServerCertificate :: ServerCertificateMetadata -> Text -> ServerCertificate
+ Amazonka.IAM.Types: newServerCertificateMetadata :: Text -> Text -> Text -> Text -> ServerCertificateMetadata
+ Amazonka.IAM.Types: newServiceLastAccessed :: Text -> Text -> ServiceLastAccessed
+ Amazonka.IAM.Types: newServiceSpecificCredential :: UTCTime -> Text -> Text -> Text -> Text -> Text -> StatusType -> ServiceSpecificCredential
+ Amazonka.IAM.Types: newServiceSpecificCredentialMetadata :: Text -> StatusType -> Text -> UTCTime -> Text -> Text -> ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types: newSigningCertificate :: Text -> Text -> Text -> StatusType -> SigningCertificate
+ Amazonka.IAM.Types: newSimulatePolicyResponse :: SimulatePolicyResponse
+ Amazonka.IAM.Types: newStatement :: Statement
+ Amazonka.IAM.Types: newTag :: Text -> Text -> Tag
+ Amazonka.IAM.Types: newTrackedActionLastAccessed :: TrackedActionLastAccessed
+ Amazonka.IAM.Types: newUser :: Text -> Text -> Text -> UTCTime -> User
+ Amazonka.IAM.Types: newUserDetail :: UserDetail
+ Amazonka.IAM.Types: newVirtualMFADevice :: Text -> VirtualMFADevice
+ Amazonka.IAM.Types: newtype AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types: newtype AssignmentStatusType
+ Amazonka.IAM.Types: newtype ContextKeyTypeEnum
+ Amazonka.IAM.Types: newtype DeletionTaskStatusType
+ Amazonka.IAM.Types: newtype EncodingType
+ Amazonka.IAM.Types: newtype EntityType
+ Amazonka.IAM.Types: newtype GlobalEndpointTokenVersion
+ Amazonka.IAM.Types: newtype JobStatusType
+ Amazonka.IAM.Types: newtype PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types: newtype PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: newtype PolicyOwnerEntityType
+ Amazonka.IAM.Types: newtype PolicyScopeType
+ Amazonka.IAM.Types: newtype PolicySourceType
+ Amazonka.IAM.Types: newtype PolicyType
+ Amazonka.IAM.Types: newtype PolicyUsageType
+ Amazonka.IAM.Types: newtype ReportFormatType
+ Amazonka.IAM.Types: newtype ReportStateType
+ Amazonka.IAM.Types: newtype SortKeyType
+ Amazonka.IAM.Types: newtype StatusType
+ Amazonka.IAM.Types: newtype SummaryKeyType
+ Amazonka.IAM.Types: openIDConnectProviderListEntry_arn :: Lens' OpenIDConnectProviderListEntry (Maybe Text)
+ Amazonka.IAM.Types: organizationsDecisionDetail_allowedByOrganizations :: Lens' OrganizationsDecisionDetail (Maybe Bool)
+ Amazonka.IAM.Types: passwordPolicy_allowUsersToChangePassword :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types: passwordPolicy_expirePasswords :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types: passwordPolicy_hardExpiry :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types: passwordPolicy_maxPasswordAge :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Types: passwordPolicy_minimumPasswordLength :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Types: passwordPolicy_passwordReusePrevention :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Types: passwordPolicy_requireLowercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types: passwordPolicy_requireNumbers :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types: passwordPolicy_requireSymbols :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types: passwordPolicy_requireUppercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types: pattern AccessAdvisorUsageGranularityType_ACTION_LEVEL :: AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types: pattern AccessAdvisorUsageGranularityType_SERVICE_LEVEL :: AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types: pattern AssignmentStatusType_Any :: AssignmentStatusType
+ Amazonka.IAM.Types: pattern AssignmentStatusType_Assigned :: AssignmentStatusType
+ Amazonka.IAM.Types: pattern AssignmentStatusType_Unassigned :: AssignmentStatusType
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_Binary :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_BinaryList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_Boolean :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_BooleanList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_Date :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_DateList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_Ip :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_IpList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_Numeric :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_NumericList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_String :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern ContextKeyTypeEnum_StringList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types: pattern DeletionTaskStatusType_FAILED :: DeletionTaskStatusType
+ Amazonka.IAM.Types: pattern DeletionTaskStatusType_IN_PROGRESS :: DeletionTaskStatusType
+ Amazonka.IAM.Types: pattern DeletionTaskStatusType_NOT_STARTED :: DeletionTaskStatusType
+ Amazonka.IAM.Types: pattern DeletionTaskStatusType_SUCCEEDED :: DeletionTaskStatusType
+ Amazonka.IAM.Types: pattern EncodingType_PEM :: EncodingType
+ Amazonka.IAM.Types: pattern EncodingType_SSH :: EncodingType
+ Amazonka.IAM.Types: pattern EntityType_AWSManagedPolicy :: EntityType
+ Amazonka.IAM.Types: pattern EntityType_Group :: EntityType
+ Amazonka.IAM.Types: pattern EntityType_LocalManagedPolicy :: EntityType
+ Amazonka.IAM.Types: pattern EntityType_Role :: EntityType
+ Amazonka.IAM.Types: pattern EntityType_User :: EntityType
+ Amazonka.IAM.Types: pattern GlobalEndpointTokenVersion_V1Token :: GlobalEndpointTokenVersion
+ Amazonka.IAM.Types: pattern GlobalEndpointTokenVersion_V2Token :: GlobalEndpointTokenVersion
+ Amazonka.IAM.Types: pattern JobStatusType_COMPLETED :: JobStatusType
+ Amazonka.IAM.Types: pattern JobStatusType_FAILED :: JobStatusType
+ Amazonka.IAM.Types: pattern JobStatusType_IN_PROGRESS :: JobStatusType
+ Amazonka.IAM.Types: pattern PermissionsBoundaryAttachmentType_PermissionsBoundaryPolicy :: PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types: pattern PolicyEvaluationDecisionType_Allowed :: PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: pattern PolicyEvaluationDecisionType_ExplicitDeny :: PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: pattern PolicyEvaluationDecisionType_ImplicitDeny :: PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: pattern PolicyOwnerEntityType_GROUP :: PolicyOwnerEntityType
+ Amazonka.IAM.Types: pattern PolicyOwnerEntityType_ROLE :: PolicyOwnerEntityType
+ Amazonka.IAM.Types: pattern PolicyOwnerEntityType_USER :: PolicyOwnerEntityType
+ Amazonka.IAM.Types: pattern PolicyScopeType_AWS :: PolicyScopeType
+ Amazonka.IAM.Types: pattern PolicyScopeType_All :: PolicyScopeType
+ Amazonka.IAM.Types: pattern PolicyScopeType_Local :: PolicyScopeType
+ Amazonka.IAM.Types: pattern PolicySourceType_Aws_managed :: PolicySourceType
+ Amazonka.IAM.Types: pattern PolicySourceType_Group :: PolicySourceType
+ Amazonka.IAM.Types: pattern PolicySourceType_None :: PolicySourceType
+ Amazonka.IAM.Types: pattern PolicySourceType_Resource :: PolicySourceType
+ Amazonka.IAM.Types: pattern PolicySourceType_Role :: PolicySourceType
+ Amazonka.IAM.Types: pattern PolicySourceType_User :: PolicySourceType
+ Amazonka.IAM.Types: pattern PolicySourceType_User_managed :: PolicySourceType
+ Amazonka.IAM.Types: pattern PolicyType_INLINE :: PolicyType
+ Amazonka.IAM.Types: pattern PolicyType_MANAGED :: PolicyType
+ Amazonka.IAM.Types: pattern PolicyUsageType_PermissionsBoundary :: PolicyUsageType
+ Amazonka.IAM.Types: pattern PolicyUsageType_PermissionsPolicy :: PolicyUsageType
+ Amazonka.IAM.Types: pattern ReportFormatType_Text_csv :: ReportFormatType
+ Amazonka.IAM.Types: pattern ReportStateType_COMPLETE :: ReportStateType
+ Amazonka.IAM.Types: pattern ReportStateType_INPROGRESS :: ReportStateType
+ Amazonka.IAM.Types: pattern ReportStateType_STARTED :: ReportStateType
+ Amazonka.IAM.Types: pattern SortKeyType_LAST_AUTHENTICATED_TIME_ASCENDING :: SortKeyType
+ Amazonka.IAM.Types: pattern SortKeyType_LAST_AUTHENTICATED_TIME_DESCENDING :: SortKeyType
+ Amazonka.IAM.Types: pattern SortKeyType_SERVICE_NAMESPACE_ASCENDING :: SortKeyType
+ Amazonka.IAM.Types: pattern SortKeyType_SERVICE_NAMESPACE_DESCENDING :: SortKeyType
+ Amazonka.IAM.Types: pattern StatusType_Active :: StatusType
+ Amazonka.IAM.Types: pattern StatusType_Inactive :: StatusType
+ Amazonka.IAM.Types: pattern SummaryKeyType_AccessKeysPerUserQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_AccountAccessKeysPresent :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_AccountMFAEnabled :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_AccountSigningCertificatesPresent :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_AttachedPoliciesPerGroupQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_AttachedPoliciesPerRoleQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_AttachedPoliciesPerUserQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_GlobalEndpointTokenVersion :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_GroupPolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_Groups :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_GroupsPerUserQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_GroupsQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_MFADevices :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_MFADevicesInUse :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_Policies :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_PoliciesQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_PolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_PolicyVersionsInUse :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_PolicyVersionsInUseQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_ServerCertificates :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_ServerCertificatesQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_SigningCertificatesPerUserQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_UserPolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_Users :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_UsersQuota :: SummaryKeyType
+ Amazonka.IAM.Types: pattern SummaryKeyType_VersionsPerPolicyQuota :: SummaryKeyType
+ Amazonka.IAM.Types: permissionsBoundaryDecisionDetail_allowedByPermissionsBoundary :: Lens' PermissionsBoundaryDecisionDetail (Maybe Bool)
+ Amazonka.IAM.Types: policyDetail_policyDocument :: Lens' PolicyDetail (Maybe Text)
+ Amazonka.IAM.Types: policyDetail_policyName :: Lens' PolicyDetail (Maybe Text)
+ Amazonka.IAM.Types: policyGrantingServiceAccess_entityName :: Lens' PolicyGrantingServiceAccess (Maybe Text)
+ Amazonka.IAM.Types: policyGrantingServiceAccess_entityType :: Lens' PolicyGrantingServiceAccess (Maybe PolicyOwnerEntityType)
+ Amazonka.IAM.Types: policyGrantingServiceAccess_policyArn :: Lens' PolicyGrantingServiceAccess (Maybe Text)
+ Amazonka.IAM.Types: policyGrantingServiceAccess_policyName :: Lens' PolicyGrantingServiceAccess Text
+ Amazonka.IAM.Types: policyGrantingServiceAccess_policyType :: Lens' PolicyGrantingServiceAccess PolicyType
+ Amazonka.IAM.Types: policyGroup_groupId :: Lens' PolicyGroup (Maybe Text)
+ Amazonka.IAM.Types: policyGroup_groupName :: Lens' PolicyGroup (Maybe Text)
+ Amazonka.IAM.Types: policyRole_roleId :: Lens' PolicyRole (Maybe Text)
+ Amazonka.IAM.Types: policyRole_roleName :: Lens' PolicyRole (Maybe Text)
+ Amazonka.IAM.Types: policyUser_userId :: Lens' PolicyUser (Maybe Text)
+ Amazonka.IAM.Types: policyUser_userName :: Lens' PolicyUser (Maybe Text)
+ Amazonka.IAM.Types: policyVersion_createDate :: Lens' PolicyVersion (Maybe UTCTime)
+ Amazonka.IAM.Types: policyVersion_document :: Lens' PolicyVersion (Maybe Text)
+ Amazonka.IAM.Types: policyVersion_isDefaultVersion :: Lens' PolicyVersion (Maybe Bool)
+ Amazonka.IAM.Types: policyVersion_versionId :: Lens' PolicyVersion (Maybe Text)
+ Amazonka.IAM.Types: policy_arn :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types: policy_attachmentCount :: Lens' Policy (Maybe Int)
+ Amazonka.IAM.Types: policy_createDate :: Lens' Policy (Maybe UTCTime)
+ Amazonka.IAM.Types: policy_defaultVersionId :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types: policy_description :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types: policy_isAttachable :: Lens' Policy (Maybe Bool)
+ Amazonka.IAM.Types: policy_path :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types: policy_permissionsBoundaryUsageCount :: Lens' Policy (Maybe Int)
+ Amazonka.IAM.Types: policy_policyId :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types: policy_policyName :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types: policy_tags :: Lens' Policy (Maybe [Tag])
+ Amazonka.IAM.Types: policy_updateDate :: Lens' Policy (Maybe UTCTime)
+ Amazonka.IAM.Types: position_column :: Lens' Position (Maybe Int)
+ Amazonka.IAM.Types: position_line :: Lens' Position (Maybe Int)
+ Amazonka.IAM.Types: resourceSpecificResult_evalDecisionDetails :: Lens' ResourceSpecificResult (Maybe (HashMap Text PolicyEvaluationDecisionType))
+ Amazonka.IAM.Types: resourceSpecificResult_evalResourceDecision :: Lens' ResourceSpecificResult PolicyEvaluationDecisionType
+ Amazonka.IAM.Types: resourceSpecificResult_evalResourceName :: Lens' ResourceSpecificResult Text
+ Amazonka.IAM.Types: resourceSpecificResult_matchedStatements :: Lens' ResourceSpecificResult (Maybe [Statement])
+ Amazonka.IAM.Types: resourceSpecificResult_missingContextValues :: Lens' ResourceSpecificResult (Maybe [Text])
+ Amazonka.IAM.Types: resourceSpecificResult_permissionsBoundaryDecisionDetail :: Lens' ResourceSpecificResult (Maybe PermissionsBoundaryDecisionDetail)
+ Amazonka.IAM.Types: roleDetail_arn :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types: roleDetail_assumeRolePolicyDocument :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types: roleDetail_attachedManagedPolicies :: Lens' RoleDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Types: roleDetail_createDate :: Lens' RoleDetail (Maybe UTCTime)
+ Amazonka.IAM.Types: roleDetail_instanceProfileList :: Lens' RoleDetail (Maybe [InstanceProfile])
+ Amazonka.IAM.Types: roleDetail_path :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types: roleDetail_permissionsBoundary :: Lens' RoleDetail (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Types: roleDetail_roleId :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types: roleDetail_roleLastUsed :: Lens' RoleDetail (Maybe RoleLastUsed)
+ Amazonka.IAM.Types: roleDetail_roleName :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types: roleDetail_rolePolicyList :: Lens' RoleDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Types: roleDetail_tags :: Lens' RoleDetail (Maybe [Tag])
+ Amazonka.IAM.Types: roleLastUsed_lastUsedDate :: Lens' RoleLastUsed (Maybe UTCTime)
+ Amazonka.IAM.Types: roleLastUsed_region :: Lens' RoleLastUsed (Maybe Text)
+ Amazonka.IAM.Types: roleUsageType_region :: Lens' RoleUsageType (Maybe Text)
+ Amazonka.IAM.Types: roleUsageType_resources :: Lens' RoleUsageType (Maybe [Text])
+ Amazonka.IAM.Types: role_arn :: Lens' Role Text
+ Amazonka.IAM.Types: role_assumeRolePolicyDocument :: Lens' Role (Maybe Text)
+ Amazonka.IAM.Types: role_createDate :: Lens' Role UTCTime
+ Amazonka.IAM.Types: role_description :: Lens' Role (Maybe Text)
+ Amazonka.IAM.Types: role_maxSessionDuration :: Lens' Role (Maybe Natural)
+ Amazonka.IAM.Types: role_path :: Lens' Role Text
+ Amazonka.IAM.Types: role_permissionsBoundary :: Lens' Role (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Types: role_roleId :: Lens' Role Text
+ Amazonka.IAM.Types: role_roleLastUsed :: Lens' Role (Maybe RoleLastUsed)
+ Amazonka.IAM.Types: role_roleName :: Lens' Role Text
+ Amazonka.IAM.Types: role_tags :: Lens' Role (Maybe [Tag])
+ Amazonka.IAM.Types: sAMLProviderListEntry_arn :: Lens' SAMLProviderListEntry (Maybe Text)
+ Amazonka.IAM.Types: sAMLProviderListEntry_createDate :: Lens' SAMLProviderListEntry (Maybe UTCTime)
+ Amazonka.IAM.Types: sAMLProviderListEntry_validUntil :: Lens' SAMLProviderListEntry (Maybe UTCTime)
+ Amazonka.IAM.Types: sSHPublicKeyMetadata_sSHPublicKeyId :: Lens' SSHPublicKeyMetadata Text
+ Amazonka.IAM.Types: sSHPublicKeyMetadata_status :: Lens' SSHPublicKeyMetadata StatusType
+ Amazonka.IAM.Types: sSHPublicKeyMetadata_uploadDate :: Lens' SSHPublicKeyMetadata UTCTime
+ Amazonka.IAM.Types: sSHPublicKeyMetadata_userName :: Lens' SSHPublicKeyMetadata Text
+ Amazonka.IAM.Types: sSHPublicKey_fingerprint :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Types: sSHPublicKey_sSHPublicKeyBody :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Types: sSHPublicKey_sSHPublicKeyId :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Types: sSHPublicKey_status :: Lens' SSHPublicKey StatusType
+ Amazonka.IAM.Types: sSHPublicKey_uploadDate :: Lens' SSHPublicKey (Maybe UTCTime)
+ Amazonka.IAM.Types: sSHPublicKey_userName :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Types: serverCertificateMetadata_arn :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Types: serverCertificateMetadata_expiration :: Lens' ServerCertificateMetadata (Maybe UTCTime)
+ Amazonka.IAM.Types: serverCertificateMetadata_path :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Types: serverCertificateMetadata_serverCertificateId :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Types: serverCertificateMetadata_serverCertificateName :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Types: serverCertificateMetadata_uploadDate :: Lens' ServerCertificateMetadata (Maybe UTCTime)
+ Amazonka.IAM.Types: serverCertificate_certificateBody :: Lens' ServerCertificate Text
+ Amazonka.IAM.Types: serverCertificate_certificateChain :: Lens' ServerCertificate (Maybe Text)
+ Amazonka.IAM.Types: serverCertificate_serverCertificateMetadata :: Lens' ServerCertificate ServerCertificateMetadata
+ Amazonka.IAM.Types: serverCertificate_tags :: Lens' ServerCertificate (Maybe [Tag])
+ Amazonka.IAM.Types: serviceLastAccessed_lastAuthenticated :: Lens' ServiceLastAccessed (Maybe UTCTime)
+ Amazonka.IAM.Types: serviceLastAccessed_lastAuthenticatedEntity :: Lens' ServiceLastAccessed (Maybe Text)
+ Amazonka.IAM.Types: serviceLastAccessed_lastAuthenticatedRegion :: Lens' ServiceLastAccessed (Maybe Text)
+ Amazonka.IAM.Types: serviceLastAccessed_serviceName :: Lens' ServiceLastAccessed Text
+ Amazonka.IAM.Types: serviceLastAccessed_serviceNamespace :: Lens' ServiceLastAccessed Text
+ Amazonka.IAM.Types: serviceLastAccessed_totalAuthenticatedEntities :: Lens' ServiceLastAccessed (Maybe Int)
+ Amazonka.IAM.Types: serviceLastAccessed_trackedActionsLastAccessed :: Lens' ServiceLastAccessed (Maybe [TrackedActionLastAccessed])
+ Amazonka.IAM.Types: serviceSpecificCredentialMetadata_createDate :: Lens' ServiceSpecificCredentialMetadata UTCTime
+ Amazonka.IAM.Types: serviceSpecificCredentialMetadata_serviceName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Types: serviceSpecificCredentialMetadata_serviceSpecificCredentialId :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Types: serviceSpecificCredentialMetadata_serviceUserName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Types: serviceSpecificCredentialMetadata_status :: Lens' ServiceSpecificCredentialMetadata StatusType
+ Amazonka.IAM.Types: serviceSpecificCredentialMetadata_userName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Types: serviceSpecificCredential_createDate :: Lens' ServiceSpecificCredential UTCTime
+ Amazonka.IAM.Types: serviceSpecificCredential_serviceName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types: serviceSpecificCredential_servicePassword :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types: serviceSpecificCredential_serviceSpecificCredentialId :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types: serviceSpecificCredential_serviceUserName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types: serviceSpecificCredential_status :: Lens' ServiceSpecificCredential StatusType
+ Amazonka.IAM.Types: serviceSpecificCredential_userName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types: signingCertificate_certificateBody :: Lens' SigningCertificate Text
+ Amazonka.IAM.Types: signingCertificate_certificateId :: Lens' SigningCertificate Text
+ Amazonka.IAM.Types: signingCertificate_status :: Lens' SigningCertificate StatusType
+ Amazonka.IAM.Types: signingCertificate_uploadDate :: Lens' SigningCertificate (Maybe UTCTime)
+ Amazonka.IAM.Types: signingCertificate_userName :: Lens' SigningCertificate Text
+ Amazonka.IAM.Types: simulatePolicyResponse_evaluationResults :: Lens' SimulatePolicyResponse (Maybe [EvaluationResult])
+ Amazonka.IAM.Types: simulatePolicyResponse_isTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
+ Amazonka.IAM.Types: simulatePolicyResponse_marker :: Lens' SimulatePolicyResponse (Maybe Text)
+ Amazonka.IAM.Types: statement_endPosition :: Lens' Statement (Maybe Position)
+ Amazonka.IAM.Types: statement_sourcePolicyId :: Lens' Statement (Maybe Text)
+ Amazonka.IAM.Types: statement_sourcePolicyType :: Lens' Statement (Maybe PolicySourceType)
+ Amazonka.IAM.Types: statement_startPosition :: Lens' Statement (Maybe Position)
+ Amazonka.IAM.Types: tag_key :: Lens' Tag Text
+ Amazonka.IAM.Types: tag_value :: Lens' Tag Text
+ Amazonka.IAM.Types: trackedActionLastAccessed_actionName :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Types: trackedActionLastAccessed_lastAccessedEntity :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Types: trackedActionLastAccessed_lastAccessedRegion :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Types: trackedActionLastAccessed_lastAccessedTime :: Lens' TrackedActionLastAccessed (Maybe UTCTime)
+ Amazonka.IAM.Types: userDetail_arn :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Types: userDetail_attachedManagedPolicies :: Lens' UserDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Types: userDetail_createDate :: Lens' UserDetail (Maybe UTCTime)
+ Amazonka.IAM.Types: userDetail_groupList :: Lens' UserDetail (Maybe [Text])
+ Amazonka.IAM.Types: userDetail_path :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Types: userDetail_permissionsBoundary :: Lens' UserDetail (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Types: userDetail_tags :: Lens' UserDetail (Maybe [Tag])
+ Amazonka.IAM.Types: userDetail_userId :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Types: userDetail_userName :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Types: userDetail_userPolicyList :: Lens' UserDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Types: user_arn :: Lens' User Text
+ Amazonka.IAM.Types: user_createDate :: Lens' User UTCTime
+ Amazonka.IAM.Types: user_passwordLastUsed :: Lens' User (Maybe UTCTime)
+ Amazonka.IAM.Types: user_path :: Lens' User (Maybe Text)
+ Amazonka.IAM.Types: user_permissionsBoundary :: Lens' User (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Types: user_tags :: Lens' User (Maybe [Tag])
+ Amazonka.IAM.Types: user_userId :: Lens' User Text
+ Amazonka.IAM.Types: user_userName :: Lens' User Text
+ Amazonka.IAM.Types: virtualMFADevice_base32StringSeed :: Lens' VirtualMFADevice (Maybe ByteString)
+ Amazonka.IAM.Types: virtualMFADevice_enableDate :: Lens' VirtualMFADevice (Maybe UTCTime)
+ Amazonka.IAM.Types: virtualMFADevice_qRCodePNG :: Lens' VirtualMFADevice (Maybe ByteString)
+ Amazonka.IAM.Types: virtualMFADevice_serialNumber :: Lens' VirtualMFADevice Text
+ Amazonka.IAM.Types: virtualMFADevice_tags :: Lens' VirtualMFADevice (Maybe [Tag])
+ Amazonka.IAM.Types: virtualMFADevice_user :: Lens' VirtualMFADevice (Maybe User)
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: AccessAdvisorUsageGranularityType' :: Text -> AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: [fromAccessAdvisorUsageGranularityType] :: AccessAdvisorUsageGranularityType -> Text
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance GHC.Classes.Eq Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance GHC.Classes.Ord Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance GHC.Generics.Generic Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance GHC.Read.Read Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: instance GHC.Show.Show Amazonka.IAM.Types.AccessAdvisorUsageGranularityType.AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: newtype AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: pattern AccessAdvisorUsageGranularityType_ACTION_LEVEL :: AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType: pattern AccessAdvisorUsageGranularityType_SERVICE_LEVEL :: AccessAdvisorUsageGranularityType
+ Amazonka.IAM.Types.AccessDetail: AccessDetail' :: Maybe Text -> Maybe ISO8601 -> Maybe Text -> Maybe Int -> Text -> Text -> AccessDetail
+ Amazonka.IAM.Types.AccessDetail: [$sel:entityPath:AccessDetail'] :: AccessDetail -> Maybe Text
+ Amazonka.IAM.Types.AccessDetail: [$sel:lastAuthenticatedTime:AccessDetail'] :: AccessDetail -> Maybe ISO8601
+ Amazonka.IAM.Types.AccessDetail: [$sel:region:AccessDetail'] :: AccessDetail -> Maybe Text
+ Amazonka.IAM.Types.AccessDetail: [$sel:serviceName:AccessDetail'] :: AccessDetail -> Text
+ Amazonka.IAM.Types.AccessDetail: [$sel:serviceNamespace:AccessDetail'] :: AccessDetail -> Text
+ Amazonka.IAM.Types.AccessDetail: [$sel:totalAuthenticatedEntities:AccessDetail'] :: AccessDetail -> Maybe Int
+ Amazonka.IAM.Types.AccessDetail: accessDetail_entityPath :: Lens' AccessDetail (Maybe Text)
+ Amazonka.IAM.Types.AccessDetail: accessDetail_lastAuthenticatedTime :: Lens' AccessDetail (Maybe UTCTime)
+ Amazonka.IAM.Types.AccessDetail: accessDetail_region :: Lens' AccessDetail (Maybe Text)
+ Amazonka.IAM.Types.AccessDetail: accessDetail_serviceName :: Lens' AccessDetail Text
+ Amazonka.IAM.Types.AccessDetail: accessDetail_serviceNamespace :: Lens' AccessDetail Text
+ Amazonka.IAM.Types.AccessDetail: accessDetail_totalAuthenticatedEntities :: Lens' AccessDetail (Maybe Int)
+ Amazonka.IAM.Types.AccessDetail: data AccessDetail
+ Amazonka.IAM.Types.AccessDetail: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.AccessDetail.AccessDetail
+ Amazonka.IAM.Types.AccessDetail: instance Control.DeepSeq.NFData Amazonka.IAM.Types.AccessDetail.AccessDetail
+ Amazonka.IAM.Types.AccessDetail: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.AccessDetail.AccessDetail
+ Amazonka.IAM.Types.AccessDetail: instance GHC.Classes.Eq Amazonka.IAM.Types.AccessDetail.AccessDetail
+ Amazonka.IAM.Types.AccessDetail: instance GHC.Generics.Generic Amazonka.IAM.Types.AccessDetail.AccessDetail
+ Amazonka.IAM.Types.AccessDetail: instance GHC.Read.Read Amazonka.IAM.Types.AccessDetail.AccessDetail
+ Amazonka.IAM.Types.AccessDetail: instance GHC.Show.Show Amazonka.IAM.Types.AccessDetail.AccessDetail
+ Amazonka.IAM.Types.AccessDetail: newAccessDetail :: Text -> Text -> AccessDetail
+ Amazonka.IAM.Types.AccessKeyInfo: AccessKeyInfo' :: Maybe ISO8601 -> Text -> AccessKey -> StatusType -> Sensitive Text -> AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyInfo: [$sel:accessKeyId:AccessKeyInfo'] :: AccessKeyInfo -> AccessKey
+ Amazonka.IAM.Types.AccessKeyInfo: [$sel:createDate:AccessKeyInfo'] :: AccessKeyInfo -> Maybe ISO8601
+ Amazonka.IAM.Types.AccessKeyInfo: [$sel:secretAccessKey:AccessKeyInfo'] :: AccessKeyInfo -> Sensitive Text
+ Amazonka.IAM.Types.AccessKeyInfo: [$sel:status:AccessKeyInfo'] :: AccessKeyInfo -> StatusType
+ Amazonka.IAM.Types.AccessKeyInfo: [$sel:userName:AccessKeyInfo'] :: AccessKeyInfo -> Text
+ Amazonka.IAM.Types.AccessKeyInfo: accessKeyInfo_accessKeyId :: Lens' AccessKeyInfo AccessKey
+ Amazonka.IAM.Types.AccessKeyInfo: accessKeyInfo_createDate :: Lens' AccessKeyInfo (Maybe UTCTime)
+ Amazonka.IAM.Types.AccessKeyInfo: accessKeyInfo_secretAccessKey :: Lens' AccessKeyInfo Text
+ Amazonka.IAM.Types.AccessKeyInfo: accessKeyInfo_status :: Lens' AccessKeyInfo StatusType
+ Amazonka.IAM.Types.AccessKeyInfo: accessKeyInfo_userName :: Lens' AccessKeyInfo Text
+ Amazonka.IAM.Types.AccessKeyInfo: data AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyInfo: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.AccessKeyInfo.AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyInfo: instance Control.DeepSeq.NFData Amazonka.IAM.Types.AccessKeyInfo.AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyInfo: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.AccessKeyInfo.AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyInfo: instance GHC.Classes.Eq Amazonka.IAM.Types.AccessKeyInfo.AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyInfo: instance GHC.Generics.Generic Amazonka.IAM.Types.AccessKeyInfo.AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyInfo: instance GHC.Show.Show Amazonka.IAM.Types.AccessKeyInfo.AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyInfo: newAccessKeyInfo :: Text -> AccessKey -> StatusType -> Text -> AccessKeyInfo
+ Amazonka.IAM.Types.AccessKeyLastUsed: AccessKeyLastUsed' :: ISO8601 -> Text -> Text -> AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: [$sel:lastUsedDate:AccessKeyLastUsed'] :: AccessKeyLastUsed -> ISO8601
+ Amazonka.IAM.Types.AccessKeyLastUsed: [$sel:region:AccessKeyLastUsed'] :: AccessKeyLastUsed -> Text
+ Amazonka.IAM.Types.AccessKeyLastUsed: [$sel:serviceName:AccessKeyLastUsed'] :: AccessKeyLastUsed -> Text
+ Amazonka.IAM.Types.AccessKeyLastUsed: accessKeyLastUsed_lastUsedDate :: Lens' AccessKeyLastUsed UTCTime
+ Amazonka.IAM.Types.AccessKeyLastUsed: accessKeyLastUsed_region :: Lens' AccessKeyLastUsed Text
+ Amazonka.IAM.Types.AccessKeyLastUsed: accessKeyLastUsed_serviceName :: Lens' AccessKeyLastUsed Text
+ Amazonka.IAM.Types.AccessKeyLastUsed: data AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.AccessKeyLastUsed.AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: instance Control.DeepSeq.NFData Amazonka.IAM.Types.AccessKeyLastUsed.AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.AccessKeyLastUsed.AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: instance GHC.Classes.Eq Amazonka.IAM.Types.AccessKeyLastUsed.AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: instance GHC.Generics.Generic Amazonka.IAM.Types.AccessKeyLastUsed.AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: instance GHC.Read.Read Amazonka.IAM.Types.AccessKeyLastUsed.AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: instance GHC.Show.Show Amazonka.IAM.Types.AccessKeyLastUsed.AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyLastUsed: newAccessKeyLastUsed :: UTCTime -> Text -> Text -> AccessKeyLastUsed
+ Amazonka.IAM.Types.AccessKeyMetadata: AccessKeyMetadata' :: Maybe AccessKey -> Maybe ISO8601 -> Maybe StatusType -> Maybe Text -> AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: [$sel:accessKeyId:AccessKeyMetadata'] :: AccessKeyMetadata -> Maybe AccessKey
+ Amazonka.IAM.Types.AccessKeyMetadata: [$sel:createDate:AccessKeyMetadata'] :: AccessKeyMetadata -> Maybe ISO8601
+ Amazonka.IAM.Types.AccessKeyMetadata: [$sel:status:AccessKeyMetadata'] :: AccessKeyMetadata -> Maybe StatusType
+ Amazonka.IAM.Types.AccessKeyMetadata: [$sel:userName:AccessKeyMetadata'] :: AccessKeyMetadata -> Maybe Text
+ Amazonka.IAM.Types.AccessKeyMetadata: accessKeyMetadata_accessKeyId :: Lens' AccessKeyMetadata (Maybe AccessKey)
+ Amazonka.IAM.Types.AccessKeyMetadata: accessKeyMetadata_createDate :: Lens' AccessKeyMetadata (Maybe UTCTime)
+ Amazonka.IAM.Types.AccessKeyMetadata: accessKeyMetadata_status :: Lens' AccessKeyMetadata (Maybe StatusType)
+ Amazonka.IAM.Types.AccessKeyMetadata: accessKeyMetadata_userName :: Lens' AccessKeyMetadata (Maybe Text)
+ Amazonka.IAM.Types.AccessKeyMetadata: data AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.AccessKeyMetadata.AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: instance Control.DeepSeq.NFData Amazonka.IAM.Types.AccessKeyMetadata.AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.AccessKeyMetadata.AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: instance GHC.Classes.Eq Amazonka.IAM.Types.AccessKeyMetadata.AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: instance GHC.Generics.Generic Amazonka.IAM.Types.AccessKeyMetadata.AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: instance GHC.Read.Read Amazonka.IAM.Types.AccessKeyMetadata.AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: instance GHC.Show.Show Amazonka.IAM.Types.AccessKeyMetadata.AccessKeyMetadata
+ Amazonka.IAM.Types.AccessKeyMetadata: newAccessKeyMetadata :: AccessKeyMetadata
+ Amazonka.IAM.Types.AssignmentStatusType: AssignmentStatusType' :: Text -> AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: [fromAssignmentStatusType] :: AssignmentStatusType -> Text
+ Amazonka.IAM.Types.AssignmentStatusType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance GHC.Classes.Eq Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance GHC.Classes.Ord Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance GHC.Generics.Generic Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance GHC.Read.Read Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: instance GHC.Show.Show Amazonka.IAM.Types.AssignmentStatusType.AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: newtype AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: pattern AssignmentStatusType_Any :: AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: pattern AssignmentStatusType_Assigned :: AssignmentStatusType
+ Amazonka.IAM.Types.AssignmentStatusType: pattern AssignmentStatusType_Unassigned :: AssignmentStatusType
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: AttachedPermissionsBoundary' :: Maybe Text -> Maybe PermissionsBoundaryAttachmentType -> AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: [$sel:permissionsBoundaryArn:AttachedPermissionsBoundary'] :: AttachedPermissionsBoundary -> Maybe Text
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: [$sel:permissionsBoundaryType:AttachedPermissionsBoundary'] :: AttachedPermissionsBoundary -> Maybe PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: attachedPermissionsBoundary_permissionsBoundaryArn :: Lens' AttachedPermissionsBoundary (Maybe Text)
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: attachedPermissionsBoundary_permissionsBoundaryType :: Lens' AttachedPermissionsBoundary (Maybe PermissionsBoundaryAttachmentType)
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: data AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.AttachedPermissionsBoundary.AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: instance Control.DeepSeq.NFData Amazonka.IAM.Types.AttachedPermissionsBoundary.AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.AttachedPermissionsBoundary.AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: instance GHC.Classes.Eq Amazonka.IAM.Types.AttachedPermissionsBoundary.AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: instance GHC.Generics.Generic Amazonka.IAM.Types.AttachedPermissionsBoundary.AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: instance GHC.Read.Read Amazonka.IAM.Types.AttachedPermissionsBoundary.AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: instance GHC.Show.Show Amazonka.IAM.Types.AttachedPermissionsBoundary.AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPermissionsBoundary: newAttachedPermissionsBoundary :: AttachedPermissionsBoundary
+ Amazonka.IAM.Types.AttachedPolicy: AttachedPolicy' :: Maybe Text -> Maybe Text -> AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: [$sel:policyArn:AttachedPolicy'] :: AttachedPolicy -> Maybe Text
+ Amazonka.IAM.Types.AttachedPolicy: [$sel:policyName:AttachedPolicy'] :: AttachedPolicy -> Maybe Text
+ Amazonka.IAM.Types.AttachedPolicy: attachedPolicy_policyArn :: Lens' AttachedPolicy (Maybe Text)
+ Amazonka.IAM.Types.AttachedPolicy: attachedPolicy_policyName :: Lens' AttachedPolicy (Maybe Text)
+ Amazonka.IAM.Types.AttachedPolicy: data AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.AttachedPolicy.AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.Types.AttachedPolicy.AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.AttachedPolicy.AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: instance GHC.Classes.Eq Amazonka.IAM.Types.AttachedPolicy.AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: instance GHC.Generics.Generic Amazonka.IAM.Types.AttachedPolicy.AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: instance GHC.Read.Read Amazonka.IAM.Types.AttachedPolicy.AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: instance GHC.Show.Show Amazonka.IAM.Types.AttachedPolicy.AttachedPolicy
+ Amazonka.IAM.Types.AttachedPolicy: newAttachedPolicy :: AttachedPolicy
+ Amazonka.IAM.Types.ContextEntry: ContextEntry' :: Maybe Text -> Maybe ContextKeyTypeEnum -> Maybe [Text] -> ContextEntry
+ Amazonka.IAM.Types.ContextEntry: [$sel:contextKeyName:ContextEntry'] :: ContextEntry -> Maybe Text
+ Amazonka.IAM.Types.ContextEntry: [$sel:contextKeyType:ContextEntry'] :: ContextEntry -> Maybe ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextEntry: [$sel:contextKeyValues:ContextEntry'] :: ContextEntry -> Maybe [Text]
+ Amazonka.IAM.Types.ContextEntry: contextEntry_contextKeyName :: Lens' ContextEntry (Maybe Text)
+ Amazonka.IAM.Types.ContextEntry: contextEntry_contextKeyType :: Lens' ContextEntry (Maybe ContextKeyTypeEnum)
+ Amazonka.IAM.Types.ContextEntry: contextEntry_contextKeyValues :: Lens' ContextEntry (Maybe [Text])
+ Amazonka.IAM.Types.ContextEntry: data ContextEntry
+ Amazonka.IAM.Types.ContextEntry: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.ContextEntry.ContextEntry
+ Amazonka.IAM.Types.ContextEntry: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ContextEntry.ContextEntry
+ Amazonka.IAM.Types.ContextEntry: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ContextEntry.ContextEntry
+ Amazonka.IAM.Types.ContextEntry: instance GHC.Classes.Eq Amazonka.IAM.Types.ContextEntry.ContextEntry
+ Amazonka.IAM.Types.ContextEntry: instance GHC.Generics.Generic Amazonka.IAM.Types.ContextEntry.ContextEntry
+ Amazonka.IAM.Types.ContextEntry: instance GHC.Read.Read Amazonka.IAM.Types.ContextEntry.ContextEntry
+ Amazonka.IAM.Types.ContextEntry: instance GHC.Show.Show Amazonka.IAM.Types.ContextEntry.ContextEntry
+ Amazonka.IAM.Types.ContextEntry: newContextEntry :: ContextEntry
+ Amazonka.IAM.Types.ContextKeyTypeEnum: ContextKeyTypeEnum' :: Text -> ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: [fromContextKeyTypeEnum] :: ContextKeyTypeEnum -> Text
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance GHC.Classes.Eq Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance GHC.Classes.Ord Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance GHC.Generics.Generic Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance GHC.Read.Read Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: instance GHC.Show.Show Amazonka.IAM.Types.ContextKeyTypeEnum.ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: newtype ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_Binary :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_BinaryList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_Boolean :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_BooleanList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_Date :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_DateList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_Ip :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_IpList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_Numeric :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_NumericList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_String :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.ContextKeyTypeEnum: pattern ContextKeyTypeEnum_StringList :: ContextKeyTypeEnum
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: DeletionTaskFailureReasonType' :: Maybe Text -> Maybe [RoleUsageType] -> DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: [$sel:reason:DeletionTaskFailureReasonType'] :: DeletionTaskFailureReasonType -> Maybe Text
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: [$sel:roleUsageList:DeletionTaskFailureReasonType'] :: DeletionTaskFailureReasonType -> Maybe [RoleUsageType]
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: data DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: deletionTaskFailureReasonType_reason :: Lens' DeletionTaskFailureReasonType (Maybe Text)
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: deletionTaskFailureReasonType_roleUsageList :: Lens' DeletionTaskFailureReasonType (Maybe [RoleUsageType])
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.DeletionTaskFailureReasonType.DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.DeletionTaskFailureReasonType.DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.DeletionTaskFailureReasonType.DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: instance GHC.Classes.Eq Amazonka.IAM.Types.DeletionTaskFailureReasonType.DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: instance GHC.Generics.Generic Amazonka.IAM.Types.DeletionTaskFailureReasonType.DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: instance GHC.Read.Read Amazonka.IAM.Types.DeletionTaskFailureReasonType.DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: instance GHC.Show.Show Amazonka.IAM.Types.DeletionTaskFailureReasonType.DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskFailureReasonType: newDeletionTaskFailureReasonType :: DeletionTaskFailureReasonType
+ Amazonka.IAM.Types.DeletionTaskStatusType: DeletionTaskStatusType' :: Text -> DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: [fromDeletionTaskStatusType] :: DeletionTaskStatusType -> Text
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance GHC.Classes.Eq Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance GHC.Classes.Ord Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance GHC.Generics.Generic Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance GHC.Read.Read Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: instance GHC.Show.Show Amazonka.IAM.Types.DeletionTaskStatusType.DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: newtype DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: pattern DeletionTaskStatusType_FAILED :: DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: pattern DeletionTaskStatusType_IN_PROGRESS :: DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: pattern DeletionTaskStatusType_NOT_STARTED :: DeletionTaskStatusType
+ Amazonka.IAM.Types.DeletionTaskStatusType: pattern DeletionTaskStatusType_SUCCEEDED :: DeletionTaskStatusType
+ Amazonka.IAM.Types.EncodingType: EncodingType' :: Text -> EncodingType
+ Amazonka.IAM.Types.EncodingType: [fromEncodingType] :: EncodingType -> Text
+ Amazonka.IAM.Types.EncodingType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance GHC.Classes.Eq Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance GHC.Classes.Ord Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance GHC.Generics.Generic Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance GHC.Read.Read Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: instance GHC.Show.Show Amazonka.IAM.Types.EncodingType.EncodingType
+ Amazonka.IAM.Types.EncodingType: newtype EncodingType
+ Amazonka.IAM.Types.EncodingType: pattern EncodingType_PEM :: EncodingType
+ Amazonka.IAM.Types.EncodingType: pattern EncodingType_SSH :: EncodingType
+ Amazonka.IAM.Types.EntityDetails: EntityDetails' :: Maybe ISO8601 -> EntityInfo -> EntityDetails
+ Amazonka.IAM.Types.EntityDetails: [$sel:entityInfo:EntityDetails'] :: EntityDetails -> EntityInfo
+ Amazonka.IAM.Types.EntityDetails: [$sel:lastAuthenticated:EntityDetails'] :: EntityDetails -> Maybe ISO8601
+ Amazonka.IAM.Types.EntityDetails: data EntityDetails
+ Amazonka.IAM.Types.EntityDetails: entityDetails_entityInfo :: Lens' EntityDetails EntityInfo
+ Amazonka.IAM.Types.EntityDetails: entityDetails_lastAuthenticated :: Lens' EntityDetails (Maybe UTCTime)
+ Amazonka.IAM.Types.EntityDetails: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.EntityDetails.EntityDetails
+ Amazonka.IAM.Types.EntityDetails: instance Control.DeepSeq.NFData Amazonka.IAM.Types.EntityDetails.EntityDetails
+ Amazonka.IAM.Types.EntityDetails: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.EntityDetails.EntityDetails
+ Amazonka.IAM.Types.EntityDetails: instance GHC.Classes.Eq Amazonka.IAM.Types.EntityDetails.EntityDetails
+ Amazonka.IAM.Types.EntityDetails: instance GHC.Generics.Generic Amazonka.IAM.Types.EntityDetails.EntityDetails
+ Amazonka.IAM.Types.EntityDetails: instance GHC.Read.Read Amazonka.IAM.Types.EntityDetails.EntityDetails
+ Amazonka.IAM.Types.EntityDetails: instance GHC.Show.Show Amazonka.IAM.Types.EntityDetails.EntityDetails
+ Amazonka.IAM.Types.EntityDetails: newEntityDetails :: EntityInfo -> EntityDetails
+ Amazonka.IAM.Types.EntityInfo: EntityInfo' :: Maybe Text -> Text -> Text -> PolicyOwnerEntityType -> Text -> EntityInfo
+ Amazonka.IAM.Types.EntityInfo: [$sel:arn:EntityInfo'] :: EntityInfo -> Text
+ Amazonka.IAM.Types.EntityInfo: [$sel:id:EntityInfo'] :: EntityInfo -> Text
+ Amazonka.IAM.Types.EntityInfo: [$sel:name:EntityInfo'] :: EntityInfo -> Text
+ Amazonka.IAM.Types.EntityInfo: [$sel:path:EntityInfo'] :: EntityInfo -> Maybe Text
+ Amazonka.IAM.Types.EntityInfo: [$sel:type':EntityInfo'] :: EntityInfo -> PolicyOwnerEntityType
+ Amazonka.IAM.Types.EntityInfo: data EntityInfo
+ Amazonka.IAM.Types.EntityInfo: entityInfo_arn :: Lens' EntityInfo Text
+ Amazonka.IAM.Types.EntityInfo: entityInfo_id :: Lens' EntityInfo Text
+ Amazonka.IAM.Types.EntityInfo: entityInfo_name :: Lens' EntityInfo Text
+ Amazonka.IAM.Types.EntityInfo: entityInfo_path :: Lens' EntityInfo (Maybe Text)
+ Amazonka.IAM.Types.EntityInfo: entityInfo_type :: Lens' EntityInfo PolicyOwnerEntityType
+ Amazonka.IAM.Types.EntityInfo: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.EntityInfo.EntityInfo
+ Amazonka.IAM.Types.EntityInfo: instance Control.DeepSeq.NFData Amazonka.IAM.Types.EntityInfo.EntityInfo
+ Amazonka.IAM.Types.EntityInfo: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.EntityInfo.EntityInfo
+ Amazonka.IAM.Types.EntityInfo: instance GHC.Classes.Eq Amazonka.IAM.Types.EntityInfo.EntityInfo
+ Amazonka.IAM.Types.EntityInfo: instance GHC.Generics.Generic Amazonka.IAM.Types.EntityInfo.EntityInfo
+ Amazonka.IAM.Types.EntityInfo: instance GHC.Read.Read Amazonka.IAM.Types.EntityInfo.EntityInfo
+ Amazonka.IAM.Types.EntityInfo: instance GHC.Show.Show Amazonka.IAM.Types.EntityInfo.EntityInfo
+ Amazonka.IAM.Types.EntityInfo: newEntityInfo :: Text -> Text -> PolicyOwnerEntityType -> Text -> EntityInfo
+ Amazonka.IAM.Types.EntityType: EntityType' :: Text -> EntityType
+ Amazonka.IAM.Types.EntityType: [fromEntityType] :: EntityType -> Text
+ Amazonka.IAM.Types.EntityType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance GHC.Classes.Eq Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance GHC.Classes.Ord Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance GHC.Generics.Generic Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance GHC.Read.Read Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: instance GHC.Show.Show Amazonka.IAM.Types.EntityType.EntityType
+ Amazonka.IAM.Types.EntityType: newtype EntityType
+ Amazonka.IAM.Types.EntityType: pattern EntityType_AWSManagedPolicy :: EntityType
+ Amazonka.IAM.Types.EntityType: pattern EntityType_Group :: EntityType
+ Amazonka.IAM.Types.EntityType: pattern EntityType_LocalManagedPolicy :: EntityType
+ Amazonka.IAM.Types.EntityType: pattern EntityType_Role :: EntityType
+ Amazonka.IAM.Types.EntityType: pattern EntityType_User :: EntityType
+ Amazonka.IAM.Types.ErrorDetails: ErrorDetails' :: Text -> Text -> ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: [$sel:code:ErrorDetails'] :: ErrorDetails -> Text
+ Amazonka.IAM.Types.ErrorDetails: [$sel:message:ErrorDetails'] :: ErrorDetails -> Text
+ Amazonka.IAM.Types.ErrorDetails: data ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: errorDetails_code :: Lens' ErrorDetails Text
+ Amazonka.IAM.Types.ErrorDetails: errorDetails_message :: Lens' ErrorDetails Text
+ Amazonka.IAM.Types.ErrorDetails: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ErrorDetails.ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ErrorDetails.ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ErrorDetails.ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: instance GHC.Classes.Eq Amazonka.IAM.Types.ErrorDetails.ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: instance GHC.Generics.Generic Amazonka.IAM.Types.ErrorDetails.ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: instance GHC.Read.Read Amazonka.IAM.Types.ErrorDetails.ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: instance GHC.Show.Show Amazonka.IAM.Types.ErrorDetails.ErrorDetails
+ Amazonka.IAM.Types.ErrorDetails: newErrorDetails :: Text -> Text -> ErrorDetails
+ Amazonka.IAM.Types.EvaluationResult: EvaluationResult' :: Maybe (HashMap Text PolicyEvaluationDecisionType) -> Maybe Text -> Maybe [Statement] -> Maybe [Text] -> Maybe OrganizationsDecisionDetail -> Maybe PermissionsBoundaryDecisionDetail -> Maybe [ResourceSpecificResult] -> Text -> PolicyEvaluationDecisionType -> EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: [$sel:evalActionName:EvaluationResult'] :: EvaluationResult -> Text
+ Amazonka.IAM.Types.EvaluationResult: [$sel:evalDecision:EvaluationResult'] :: EvaluationResult -> PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.EvaluationResult: [$sel:evalDecisionDetails:EvaluationResult'] :: EvaluationResult -> Maybe (HashMap Text PolicyEvaluationDecisionType)
+ Amazonka.IAM.Types.EvaluationResult: [$sel:evalResourceName:EvaluationResult'] :: EvaluationResult -> Maybe Text
+ Amazonka.IAM.Types.EvaluationResult: [$sel:matchedStatements:EvaluationResult'] :: EvaluationResult -> Maybe [Statement]
+ Amazonka.IAM.Types.EvaluationResult: [$sel:missingContextValues:EvaluationResult'] :: EvaluationResult -> Maybe [Text]
+ Amazonka.IAM.Types.EvaluationResult: [$sel:organizationsDecisionDetail:EvaluationResult'] :: EvaluationResult -> Maybe OrganizationsDecisionDetail
+ Amazonka.IAM.Types.EvaluationResult: [$sel:permissionsBoundaryDecisionDetail:EvaluationResult'] :: EvaluationResult -> Maybe PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.EvaluationResult: [$sel:resourceSpecificResults:EvaluationResult'] :: EvaluationResult -> Maybe [ResourceSpecificResult]
+ Amazonka.IAM.Types.EvaluationResult: data EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_evalActionName :: Lens' EvaluationResult Text
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_evalDecision :: Lens' EvaluationResult PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_evalDecisionDetails :: Lens' EvaluationResult (Maybe (HashMap Text PolicyEvaluationDecisionType))
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_evalResourceName :: Lens' EvaluationResult (Maybe Text)
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_matchedStatements :: Lens' EvaluationResult (Maybe [Statement])
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_missingContextValues :: Lens' EvaluationResult (Maybe [Text])
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_organizationsDecisionDetail :: Lens' EvaluationResult (Maybe OrganizationsDecisionDetail)
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_permissionsBoundaryDecisionDetail :: Lens' EvaluationResult (Maybe PermissionsBoundaryDecisionDetail)
+ Amazonka.IAM.Types.EvaluationResult: evaluationResult_resourceSpecificResults :: Lens' EvaluationResult (Maybe [ResourceSpecificResult])
+ Amazonka.IAM.Types.EvaluationResult: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.EvaluationResult.EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: instance Control.DeepSeq.NFData Amazonka.IAM.Types.EvaluationResult.EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.EvaluationResult.EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: instance GHC.Classes.Eq Amazonka.IAM.Types.EvaluationResult.EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: instance GHC.Generics.Generic Amazonka.IAM.Types.EvaluationResult.EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: instance GHC.Read.Read Amazonka.IAM.Types.EvaluationResult.EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: instance GHC.Show.Show Amazonka.IAM.Types.EvaluationResult.EvaluationResult
+ Amazonka.IAM.Types.EvaluationResult: newEvaluationResult :: Text -> PolicyEvaluationDecisionType -> EvaluationResult
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: GetContextKeysForPolicyResponse' :: Maybe [Text] -> GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: [$sel:contextKeyNames:GetContextKeysForPolicyResponse'] :: GetContextKeysForPolicyResponse -> Maybe [Text]
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: data GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: getContextKeysForPolicyResponse_contextKeyNames :: Lens' GetContextKeysForPolicyResponse (Maybe [Text])
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.GetContextKeysForPolicyResponse.GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: instance Control.DeepSeq.NFData Amazonka.IAM.Types.GetContextKeysForPolicyResponse.GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.GetContextKeysForPolicyResponse.GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: instance GHC.Classes.Eq Amazonka.IAM.Types.GetContextKeysForPolicyResponse.GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: instance GHC.Generics.Generic Amazonka.IAM.Types.GetContextKeysForPolicyResponse.GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: instance GHC.Read.Read Amazonka.IAM.Types.GetContextKeysForPolicyResponse.GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: instance GHC.Show.Show Amazonka.IAM.Types.GetContextKeysForPolicyResponse.GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse: newGetContextKeysForPolicyResponse :: GetContextKeysForPolicyResponse
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: GlobalEndpointTokenVersion' :: Text -> GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: [fromGlobalEndpointTokenVersion] :: GlobalEndpointTokenVersion -> Text
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Control.DeepSeq.NFData Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance GHC.Classes.Eq Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance GHC.Classes.Ord Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance GHC.Generics.Generic Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance GHC.Read.Read Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: instance GHC.Show.Show Amazonka.IAM.Types.GlobalEndpointTokenVersion.GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: newtype GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: pattern GlobalEndpointTokenVersion_V1Token :: GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.GlobalEndpointTokenVersion: pattern GlobalEndpointTokenVersion_V2Token :: GlobalEndpointTokenVersion
+ Amazonka.IAM.Types.Group: Group' :: Text -> Text -> Text -> Text -> ISO8601 -> Group
+ Amazonka.IAM.Types.Group: [$sel:arn:Group'] :: Group -> Text
+ Amazonka.IAM.Types.Group: [$sel:createDate:Group'] :: Group -> ISO8601
+ Amazonka.IAM.Types.Group: [$sel:groupId:Group'] :: Group -> Text
+ Amazonka.IAM.Types.Group: [$sel:groupName:Group'] :: Group -> Text
+ Amazonka.IAM.Types.Group: [$sel:path:Group'] :: Group -> Text
+ Amazonka.IAM.Types.Group: data Group
+ Amazonka.IAM.Types.Group: group_arn :: Lens' Group Text
+ Amazonka.IAM.Types.Group: group_createDate :: Lens' Group UTCTime
+ Amazonka.IAM.Types.Group: group_groupId :: Lens' Group Text
+ Amazonka.IAM.Types.Group: group_groupName :: Lens' Group Text
+ Amazonka.IAM.Types.Group: group_path :: Lens' Group Text
+ Amazonka.IAM.Types.Group: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.Group.Group
+ Amazonka.IAM.Types.Group: instance Control.DeepSeq.NFData Amazonka.IAM.Types.Group.Group
+ Amazonka.IAM.Types.Group: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.Group.Group
+ Amazonka.IAM.Types.Group: instance GHC.Classes.Eq Amazonka.IAM.Types.Group.Group
+ Amazonka.IAM.Types.Group: instance GHC.Generics.Generic Amazonka.IAM.Types.Group.Group
+ Amazonka.IAM.Types.Group: instance GHC.Read.Read Amazonka.IAM.Types.Group.Group
+ Amazonka.IAM.Types.Group: instance GHC.Show.Show Amazonka.IAM.Types.Group.Group
+ Amazonka.IAM.Types.Group: newGroup :: Text -> Text -> Text -> Text -> UTCTime -> Group
+ Amazonka.IAM.Types.GroupDetail: GroupDetail' :: Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe [PolicyDetail] -> Maybe Text -> GroupDetail
+ Amazonka.IAM.Types.GroupDetail: [$sel:arn:GroupDetail'] :: GroupDetail -> Maybe Text
+ Amazonka.IAM.Types.GroupDetail: [$sel:attachedManagedPolicies:GroupDetail'] :: GroupDetail -> Maybe [AttachedPolicy]
+ Amazonka.IAM.Types.GroupDetail: [$sel:createDate:GroupDetail'] :: GroupDetail -> Maybe ISO8601
+ Amazonka.IAM.Types.GroupDetail: [$sel:groupId:GroupDetail'] :: GroupDetail -> Maybe Text
+ Amazonka.IAM.Types.GroupDetail: [$sel:groupName:GroupDetail'] :: GroupDetail -> Maybe Text
+ Amazonka.IAM.Types.GroupDetail: [$sel:groupPolicyList:GroupDetail'] :: GroupDetail -> Maybe [PolicyDetail]
+ Amazonka.IAM.Types.GroupDetail: [$sel:path:GroupDetail'] :: GroupDetail -> Maybe Text
+ Amazonka.IAM.Types.GroupDetail: data GroupDetail
+ Amazonka.IAM.Types.GroupDetail: groupDetail_arn :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Types.GroupDetail: groupDetail_attachedManagedPolicies :: Lens' GroupDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Types.GroupDetail: groupDetail_createDate :: Lens' GroupDetail (Maybe UTCTime)
+ Amazonka.IAM.Types.GroupDetail: groupDetail_groupId :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Types.GroupDetail: groupDetail_groupName :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Types.GroupDetail: groupDetail_groupPolicyList :: Lens' GroupDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Types.GroupDetail: groupDetail_path :: Lens' GroupDetail (Maybe Text)
+ Amazonka.IAM.Types.GroupDetail: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.GroupDetail.GroupDetail
+ Amazonka.IAM.Types.GroupDetail: instance Control.DeepSeq.NFData Amazonka.IAM.Types.GroupDetail.GroupDetail
+ Amazonka.IAM.Types.GroupDetail: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.GroupDetail.GroupDetail
+ Amazonka.IAM.Types.GroupDetail: instance GHC.Classes.Eq Amazonka.IAM.Types.GroupDetail.GroupDetail
+ Amazonka.IAM.Types.GroupDetail: instance GHC.Generics.Generic Amazonka.IAM.Types.GroupDetail.GroupDetail
+ Amazonka.IAM.Types.GroupDetail: instance GHC.Read.Read Amazonka.IAM.Types.GroupDetail.GroupDetail
+ Amazonka.IAM.Types.GroupDetail: instance GHC.Show.Show Amazonka.IAM.Types.GroupDetail.GroupDetail
+ Amazonka.IAM.Types.GroupDetail: newGroupDetail :: GroupDetail
+ Amazonka.IAM.Types.InstanceProfile: InstanceProfile' :: Maybe [Tag] -> Text -> Text -> Text -> Text -> ISO8601 -> [Role] -> InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: [$sel:arn:InstanceProfile'] :: InstanceProfile -> Text
+ Amazonka.IAM.Types.InstanceProfile: [$sel:createDate:InstanceProfile'] :: InstanceProfile -> ISO8601
+ Amazonka.IAM.Types.InstanceProfile: [$sel:instanceProfileId:InstanceProfile'] :: InstanceProfile -> Text
+ Amazonka.IAM.Types.InstanceProfile: [$sel:instanceProfileName:InstanceProfile'] :: InstanceProfile -> Text
+ Amazonka.IAM.Types.InstanceProfile: [$sel:path:InstanceProfile'] :: InstanceProfile -> Text
+ Amazonka.IAM.Types.InstanceProfile: [$sel:roles:InstanceProfile'] :: InstanceProfile -> [Role]
+ Amazonka.IAM.Types.InstanceProfile: [$sel:tags:InstanceProfile'] :: InstanceProfile -> Maybe [Tag]
+ Amazonka.IAM.Types.InstanceProfile: data InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.InstanceProfile.InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.Types.InstanceProfile.InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.InstanceProfile.InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.Types.InstanceProfile.InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.Types.InstanceProfile.InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: instance GHC.Read.Read Amazonka.IAM.Types.InstanceProfile.InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: instance GHC.Show.Show Amazonka.IAM.Types.InstanceProfile.InstanceProfile
+ Amazonka.IAM.Types.InstanceProfile: instanceProfile_arn :: Lens' InstanceProfile Text
+ Amazonka.IAM.Types.InstanceProfile: instanceProfile_createDate :: Lens' InstanceProfile UTCTime
+ Amazonka.IAM.Types.InstanceProfile: instanceProfile_instanceProfileId :: Lens' InstanceProfile Text
+ Amazonka.IAM.Types.InstanceProfile: instanceProfile_instanceProfileName :: Lens' InstanceProfile Text
+ Amazonka.IAM.Types.InstanceProfile: instanceProfile_path :: Lens' InstanceProfile Text
+ Amazonka.IAM.Types.InstanceProfile: instanceProfile_roles :: Lens' InstanceProfile [Role]
+ Amazonka.IAM.Types.InstanceProfile: instanceProfile_tags :: Lens' InstanceProfile (Maybe [Tag])
+ Amazonka.IAM.Types.InstanceProfile: newInstanceProfile :: Text -> Text -> Text -> Text -> UTCTime -> InstanceProfile
+ Amazonka.IAM.Types.JobStatusType: JobStatusType' :: Text -> JobStatusType
+ Amazonka.IAM.Types.JobStatusType: [fromJobStatusType] :: JobStatusType -> Text
+ Amazonka.IAM.Types.JobStatusType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance GHC.Classes.Eq Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance GHC.Classes.Ord Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance GHC.Generics.Generic Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance GHC.Read.Read Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: instance GHC.Show.Show Amazonka.IAM.Types.JobStatusType.JobStatusType
+ Amazonka.IAM.Types.JobStatusType: newtype JobStatusType
+ Amazonka.IAM.Types.JobStatusType: pattern JobStatusType_COMPLETED :: JobStatusType
+ Amazonka.IAM.Types.JobStatusType: pattern JobStatusType_FAILED :: JobStatusType
+ Amazonka.IAM.Types.JobStatusType: pattern JobStatusType_IN_PROGRESS :: JobStatusType
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: ListPoliciesGrantingServiceAccessEntry' :: Maybe [PolicyGrantingServiceAccess] -> Maybe Text -> ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: [$sel:policies:ListPoliciesGrantingServiceAccessEntry'] :: ListPoliciesGrantingServiceAccessEntry -> Maybe [PolicyGrantingServiceAccess]
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: [$sel:serviceNamespace:ListPoliciesGrantingServiceAccessEntry'] :: ListPoliciesGrantingServiceAccessEntry -> Maybe Text
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: data ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry.ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry.ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry.ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: instance GHC.Classes.Eq Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry.ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: instance GHC.Generics.Generic Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry.ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: instance GHC.Read.Read Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry.ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: instance GHC.Show.Show Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry.ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: listPoliciesGrantingServiceAccessEntry_policies :: Lens' ListPoliciesGrantingServiceAccessEntry (Maybe [PolicyGrantingServiceAccess])
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: listPoliciesGrantingServiceAccessEntry_serviceNamespace :: Lens' ListPoliciesGrantingServiceAccessEntry (Maybe Text)
+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry: newListPoliciesGrantingServiceAccessEntry :: ListPoliciesGrantingServiceAccessEntry
+ Amazonka.IAM.Types.LoginProfile: LoginProfile' :: Maybe Bool -> Text -> ISO8601 -> LoginProfile
+ Amazonka.IAM.Types.LoginProfile: [$sel:createDate:LoginProfile'] :: LoginProfile -> ISO8601
+ Amazonka.IAM.Types.LoginProfile: [$sel:passwordResetRequired:LoginProfile'] :: LoginProfile -> Maybe Bool
+ Amazonka.IAM.Types.LoginProfile: [$sel:userName:LoginProfile'] :: LoginProfile -> Text
+ Amazonka.IAM.Types.LoginProfile: data LoginProfile
+ Amazonka.IAM.Types.LoginProfile: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.LoginProfile.LoginProfile
+ Amazonka.IAM.Types.LoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.Types.LoginProfile.LoginProfile
+ Amazonka.IAM.Types.LoginProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.LoginProfile.LoginProfile
+ Amazonka.IAM.Types.LoginProfile: instance GHC.Classes.Eq Amazonka.IAM.Types.LoginProfile.LoginProfile
+ Amazonka.IAM.Types.LoginProfile: instance GHC.Generics.Generic Amazonka.IAM.Types.LoginProfile.LoginProfile
+ Amazonka.IAM.Types.LoginProfile: instance GHC.Read.Read Amazonka.IAM.Types.LoginProfile.LoginProfile
+ Amazonka.IAM.Types.LoginProfile: instance GHC.Show.Show Amazonka.IAM.Types.LoginProfile.LoginProfile
+ Amazonka.IAM.Types.LoginProfile: loginProfile_createDate :: Lens' LoginProfile UTCTime
+ Amazonka.IAM.Types.LoginProfile: loginProfile_passwordResetRequired :: Lens' LoginProfile (Maybe Bool)
+ Amazonka.IAM.Types.LoginProfile: loginProfile_userName :: Lens' LoginProfile Text
+ Amazonka.IAM.Types.LoginProfile: newLoginProfile :: Text -> UTCTime -> LoginProfile
+ Amazonka.IAM.Types.MFADevice: MFADevice' :: Text -> Text -> ISO8601 -> MFADevice
+ Amazonka.IAM.Types.MFADevice: [$sel:enableDate:MFADevice'] :: MFADevice -> ISO8601
+ Amazonka.IAM.Types.MFADevice: [$sel:serialNumber:MFADevice'] :: MFADevice -> Text
+ Amazonka.IAM.Types.MFADevice: [$sel:userName:MFADevice'] :: MFADevice -> Text
+ Amazonka.IAM.Types.MFADevice: data MFADevice
+ Amazonka.IAM.Types.MFADevice: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.MFADevice.MFADevice
+ Amazonka.IAM.Types.MFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.Types.MFADevice.MFADevice
+ Amazonka.IAM.Types.MFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.MFADevice.MFADevice
+ Amazonka.IAM.Types.MFADevice: instance GHC.Classes.Eq Amazonka.IAM.Types.MFADevice.MFADevice
+ Amazonka.IAM.Types.MFADevice: instance GHC.Generics.Generic Amazonka.IAM.Types.MFADevice.MFADevice
+ Amazonka.IAM.Types.MFADevice: instance GHC.Read.Read Amazonka.IAM.Types.MFADevice.MFADevice
+ Amazonka.IAM.Types.MFADevice: instance GHC.Show.Show Amazonka.IAM.Types.MFADevice.MFADevice
+ Amazonka.IAM.Types.MFADevice: mfaDevice_enableDate :: Lens' MFADevice UTCTime
+ Amazonka.IAM.Types.MFADevice: mfaDevice_serialNumber :: Lens' MFADevice Text
+ Amazonka.IAM.Types.MFADevice: mfaDevice_userName :: Lens' MFADevice Text
+ Amazonka.IAM.Types.MFADevice: newMFADevice :: Text -> Text -> UTCTime -> MFADevice
+ Amazonka.IAM.Types.ManagedPolicyDetail: ManagedPolicyDetail' :: Maybe Text -> Maybe Int -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Bool -> Maybe Text -> Maybe Int -> Maybe Text -> Maybe Text -> Maybe [PolicyVersion] -> Maybe ISO8601 -> ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:arn:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:attachmentCount:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Int
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:createDate:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe ISO8601
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:defaultVersionId:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:description:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:isAttachable:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Bool
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:path:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:permissionsBoundaryUsageCount:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Int
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:policyId:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:policyName:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe Text
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:policyVersionList:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe [PolicyVersion]
+ Amazonka.IAM.Types.ManagedPolicyDetail: [$sel:updateDate:ManagedPolicyDetail'] :: ManagedPolicyDetail -> Maybe ISO8601
+ Amazonka.IAM.Types.ManagedPolicyDetail: data ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ManagedPolicyDetail.ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ManagedPolicyDetail.ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ManagedPolicyDetail.ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: instance GHC.Classes.Eq Amazonka.IAM.Types.ManagedPolicyDetail.ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: instance GHC.Generics.Generic Amazonka.IAM.Types.ManagedPolicyDetail.ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: instance GHC.Read.Read Amazonka.IAM.Types.ManagedPolicyDetail.ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: instance GHC.Show.Show Amazonka.IAM.Types.ManagedPolicyDetail.ManagedPolicyDetail
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_arn :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_attachmentCount :: Lens' ManagedPolicyDetail (Maybe Int)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_createDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_defaultVersionId :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_description :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_isAttachable :: Lens' ManagedPolicyDetail (Maybe Bool)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_path :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_permissionsBoundaryUsageCount :: Lens' ManagedPolicyDetail (Maybe Int)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_policyId :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_policyName :: Lens' ManagedPolicyDetail (Maybe Text)
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_policyVersionList :: Lens' ManagedPolicyDetail (Maybe [PolicyVersion])
+ Amazonka.IAM.Types.ManagedPolicyDetail: managedPolicyDetail_updateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)
+ Amazonka.IAM.Types.ManagedPolicyDetail: newManagedPolicyDetail :: ManagedPolicyDetail
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: OpenIDConnectProviderListEntry' :: Maybe Text -> OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: [$sel:arn:OpenIDConnectProviderListEntry'] :: OpenIDConnectProviderListEntry -> Maybe Text
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: data OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.OpenIDConnectProviderListEntry.OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: instance Control.DeepSeq.NFData Amazonka.IAM.Types.OpenIDConnectProviderListEntry.OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.OpenIDConnectProviderListEntry.OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: instance GHC.Classes.Eq Amazonka.IAM.Types.OpenIDConnectProviderListEntry.OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: instance GHC.Generics.Generic Amazonka.IAM.Types.OpenIDConnectProviderListEntry.OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: instance GHC.Read.Read Amazonka.IAM.Types.OpenIDConnectProviderListEntry.OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: instance GHC.Show.Show Amazonka.IAM.Types.OpenIDConnectProviderListEntry.OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: newOpenIDConnectProviderListEntry :: OpenIDConnectProviderListEntry
+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry: openIDConnectProviderListEntry_arn :: Lens' OpenIDConnectProviderListEntry (Maybe Text)
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: OrganizationsDecisionDetail' :: Maybe Bool -> OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: [$sel:allowedByOrganizations:OrganizationsDecisionDetail'] :: OrganizationsDecisionDetail -> Maybe Bool
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: data OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.OrganizationsDecisionDetail.OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: instance Control.DeepSeq.NFData Amazonka.IAM.Types.OrganizationsDecisionDetail.OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.OrganizationsDecisionDetail.OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: instance GHC.Classes.Eq Amazonka.IAM.Types.OrganizationsDecisionDetail.OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: instance GHC.Generics.Generic Amazonka.IAM.Types.OrganizationsDecisionDetail.OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: instance GHC.Read.Read Amazonka.IAM.Types.OrganizationsDecisionDetail.OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: instance GHC.Show.Show Amazonka.IAM.Types.OrganizationsDecisionDetail.OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: newOrganizationsDecisionDetail :: OrganizationsDecisionDetail
+ Amazonka.IAM.Types.OrganizationsDecisionDetail: organizationsDecisionDetail_allowedByOrganizations :: Lens' OrganizationsDecisionDetail (Maybe Bool)
+ Amazonka.IAM.Types.PasswordPolicy: PasswordPolicy' :: Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Natural -> Maybe Natural -> Maybe Natural -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:allowUsersToChangePassword:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:expirePasswords:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:hardExpiry:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:maxPasswordAge:PasswordPolicy'] :: PasswordPolicy -> Maybe Natural
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:minimumPasswordLength:PasswordPolicy'] :: PasswordPolicy -> Maybe Natural
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:passwordReusePrevention:PasswordPolicy'] :: PasswordPolicy -> Maybe Natural
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:requireLowercaseCharacters:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:requireNumbers:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:requireSymbols:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types.PasswordPolicy: [$sel:requireUppercaseCharacters:PasswordPolicy'] :: PasswordPolicy -> Maybe Bool
+ Amazonka.IAM.Types.PasswordPolicy: data PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PasswordPolicy.PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PasswordPolicy.PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PasswordPolicy.PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: instance GHC.Classes.Eq Amazonka.IAM.Types.PasswordPolicy.PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: instance GHC.Generics.Generic Amazonka.IAM.Types.PasswordPolicy.PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: instance GHC.Read.Read Amazonka.IAM.Types.PasswordPolicy.PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: instance GHC.Show.Show Amazonka.IAM.Types.PasswordPolicy.PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: newPasswordPolicy :: PasswordPolicy
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_allowUsersToChangePassword :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_expirePasswords :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_hardExpiry :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_maxPasswordAge :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_minimumPasswordLength :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_passwordReusePrevention :: Lens' PasswordPolicy (Maybe Natural)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_requireLowercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_requireNumbers :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_requireSymbols :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types.PasswordPolicy: passwordPolicy_requireUppercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: PermissionsBoundaryAttachmentType' :: Text -> PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: [fromPermissionsBoundaryAttachmentType] :: PermissionsBoundaryAttachmentType -> Text
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance GHC.Classes.Eq Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance GHC.Classes.Ord Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance GHC.Generics.Generic Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance GHC.Read.Read Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: instance GHC.Show.Show Amazonka.IAM.Types.PermissionsBoundaryAttachmentType.PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: newtype PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType: pattern PermissionsBoundaryAttachmentType_PermissionsBoundaryPolicy :: PermissionsBoundaryAttachmentType
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: PermissionsBoundaryDecisionDetail' :: Maybe Bool -> PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: [$sel:allowedByPermissionsBoundary:PermissionsBoundaryDecisionDetail'] :: PermissionsBoundaryDecisionDetail -> Maybe Bool
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: data PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail.PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail.PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail.PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: instance GHC.Classes.Eq Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail.PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: instance GHC.Generics.Generic Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail.PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: instance GHC.Read.Read Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail.PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: instance GHC.Show.Show Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail.PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: newPermissionsBoundaryDecisionDetail :: PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail: permissionsBoundaryDecisionDetail_allowedByPermissionsBoundary :: Lens' PermissionsBoundaryDecisionDetail (Maybe Bool)
+ Amazonka.IAM.Types.Policy: Policy' :: Maybe Text -> Maybe Int -> Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Bool -> Maybe Text -> Maybe Int -> Maybe Text -> Maybe Text -> Maybe [Tag] -> Maybe ISO8601 -> Policy
+ Amazonka.IAM.Types.Policy: [$sel:arn:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types.Policy: [$sel:attachmentCount:Policy'] :: Policy -> Maybe Int
+ Amazonka.IAM.Types.Policy: [$sel:createDate:Policy'] :: Policy -> Maybe ISO8601
+ Amazonka.IAM.Types.Policy: [$sel:defaultVersionId:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types.Policy: [$sel:description:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types.Policy: [$sel:isAttachable:Policy'] :: Policy -> Maybe Bool
+ Amazonka.IAM.Types.Policy: [$sel:path:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types.Policy: [$sel:permissionsBoundaryUsageCount:Policy'] :: Policy -> Maybe Int
+ Amazonka.IAM.Types.Policy: [$sel:policyId:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types.Policy: [$sel:policyName:Policy'] :: Policy -> Maybe Text
+ Amazonka.IAM.Types.Policy: [$sel:tags:Policy'] :: Policy -> Maybe [Tag]
+ Amazonka.IAM.Types.Policy: [$sel:updateDate:Policy'] :: Policy -> Maybe ISO8601
+ Amazonka.IAM.Types.Policy: data Policy
+ Amazonka.IAM.Types.Policy: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.Policy.Policy
+ Amazonka.IAM.Types.Policy: instance Control.DeepSeq.NFData Amazonka.IAM.Types.Policy.Policy
+ Amazonka.IAM.Types.Policy: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.Policy.Policy
+ Amazonka.IAM.Types.Policy: instance GHC.Classes.Eq Amazonka.IAM.Types.Policy.Policy
+ Amazonka.IAM.Types.Policy: instance GHC.Generics.Generic Amazonka.IAM.Types.Policy.Policy
+ Amazonka.IAM.Types.Policy: instance GHC.Read.Read Amazonka.IAM.Types.Policy.Policy
+ Amazonka.IAM.Types.Policy: instance GHC.Show.Show Amazonka.IAM.Types.Policy.Policy
+ Amazonka.IAM.Types.Policy: newPolicy :: Policy
+ Amazonka.IAM.Types.Policy: policy_arn :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types.Policy: policy_attachmentCount :: Lens' Policy (Maybe Int)
+ Amazonka.IAM.Types.Policy: policy_createDate :: Lens' Policy (Maybe UTCTime)
+ Amazonka.IAM.Types.Policy: policy_defaultVersionId :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types.Policy: policy_description :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types.Policy: policy_isAttachable :: Lens' Policy (Maybe Bool)
+ Amazonka.IAM.Types.Policy: policy_path :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types.Policy: policy_permissionsBoundaryUsageCount :: Lens' Policy (Maybe Int)
+ Amazonka.IAM.Types.Policy: policy_policyId :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types.Policy: policy_policyName :: Lens' Policy (Maybe Text)
+ Amazonka.IAM.Types.Policy: policy_tags :: Lens' Policy (Maybe [Tag])
+ Amazonka.IAM.Types.Policy: policy_updateDate :: Lens' Policy (Maybe UTCTime)
+ Amazonka.IAM.Types.PolicyDetail: PolicyDetail' :: Maybe Text -> Maybe Text -> PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: [$sel:policyDocument:PolicyDetail'] :: PolicyDetail -> Maybe Text
+ Amazonka.IAM.Types.PolicyDetail: [$sel:policyName:PolicyDetail'] :: PolicyDetail -> Maybe Text
+ Amazonka.IAM.Types.PolicyDetail: data PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyDetail.PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyDetail.PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyDetail.PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyDetail.PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyDetail.PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: instance GHC.Read.Read Amazonka.IAM.Types.PolicyDetail.PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: instance GHC.Show.Show Amazonka.IAM.Types.PolicyDetail.PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: newPolicyDetail :: PolicyDetail
+ Amazonka.IAM.Types.PolicyDetail: policyDetail_policyDocument :: Lens' PolicyDetail (Maybe Text)
+ Amazonka.IAM.Types.PolicyDetail: policyDetail_policyName :: Lens' PolicyDetail (Maybe Text)
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: PolicyEvaluationDecisionType' :: Text -> PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: [fromPolicyEvaluationDecisionType] :: PolicyEvaluationDecisionType -> Text
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance GHC.Classes.Ord Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance GHC.Read.Read Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: instance GHC.Show.Show Amazonka.IAM.Types.PolicyEvaluationDecisionType.PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: newtype PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: pattern PolicyEvaluationDecisionType_Allowed :: PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: pattern PolicyEvaluationDecisionType_ExplicitDeny :: PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyEvaluationDecisionType: pattern PolicyEvaluationDecisionType_ImplicitDeny :: PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: PolicyGrantingServiceAccess' :: Maybe Text -> Maybe PolicyOwnerEntityType -> Maybe Text -> Text -> PolicyType -> PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: [$sel:entityName:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> Maybe Text
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: [$sel:entityType:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> Maybe PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: [$sel:policyArn:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> Maybe Text
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: [$sel:policyName:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> Text
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: [$sel:policyType:PolicyGrantingServiceAccess'] :: PolicyGrantingServiceAccess -> PolicyType
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: data PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyGrantingServiceAccess.PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyGrantingServiceAccess.PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyGrantingServiceAccess.PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyGrantingServiceAccess.PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyGrantingServiceAccess.PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: instance GHC.Read.Read Amazonka.IAM.Types.PolicyGrantingServiceAccess.PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: instance GHC.Show.Show Amazonka.IAM.Types.PolicyGrantingServiceAccess.PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: newPolicyGrantingServiceAccess :: Text -> PolicyType -> PolicyGrantingServiceAccess
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: policyGrantingServiceAccess_entityName :: Lens' PolicyGrantingServiceAccess (Maybe Text)
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: policyGrantingServiceAccess_entityType :: Lens' PolicyGrantingServiceAccess (Maybe PolicyOwnerEntityType)
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: policyGrantingServiceAccess_policyArn :: Lens' PolicyGrantingServiceAccess (Maybe Text)
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: policyGrantingServiceAccess_policyName :: Lens' PolicyGrantingServiceAccess Text
+ Amazonka.IAM.Types.PolicyGrantingServiceAccess: policyGrantingServiceAccess_policyType :: Lens' PolicyGrantingServiceAccess PolicyType
+ Amazonka.IAM.Types.PolicyGroup: PolicyGroup' :: Maybe Text -> Maybe Text -> PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: [$sel:groupId:PolicyGroup'] :: PolicyGroup -> Maybe Text
+ Amazonka.IAM.Types.PolicyGroup: [$sel:groupName:PolicyGroup'] :: PolicyGroup -> Maybe Text
+ Amazonka.IAM.Types.PolicyGroup: data PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyGroup.PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyGroup.PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyGroup.PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyGroup.PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyGroup.PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: instance GHC.Read.Read Amazonka.IAM.Types.PolicyGroup.PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: instance GHC.Show.Show Amazonka.IAM.Types.PolicyGroup.PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: newPolicyGroup :: PolicyGroup
+ Amazonka.IAM.Types.PolicyGroup: policyGroup_groupId :: Lens' PolicyGroup (Maybe Text)
+ Amazonka.IAM.Types.PolicyGroup: policyGroup_groupName :: Lens' PolicyGroup (Maybe Text)
+ Amazonka.IAM.Types.PolicyOwnerEntityType: PolicyOwnerEntityType' :: Text -> PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: [fromPolicyOwnerEntityType] :: PolicyOwnerEntityType -> Text
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance GHC.Classes.Ord Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance GHC.Read.Read Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: instance GHC.Show.Show Amazonka.IAM.Types.PolicyOwnerEntityType.PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: newtype PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: pattern PolicyOwnerEntityType_GROUP :: PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: pattern PolicyOwnerEntityType_ROLE :: PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyOwnerEntityType: pattern PolicyOwnerEntityType_USER :: PolicyOwnerEntityType
+ Amazonka.IAM.Types.PolicyRole: PolicyRole' :: Maybe Text -> Maybe Text -> PolicyRole
+ Amazonka.IAM.Types.PolicyRole: [$sel:roleId:PolicyRole'] :: PolicyRole -> Maybe Text
+ Amazonka.IAM.Types.PolicyRole: [$sel:roleName:PolicyRole'] :: PolicyRole -> Maybe Text
+ Amazonka.IAM.Types.PolicyRole: data PolicyRole
+ Amazonka.IAM.Types.PolicyRole: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyRole.PolicyRole
+ Amazonka.IAM.Types.PolicyRole: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyRole.PolicyRole
+ Amazonka.IAM.Types.PolicyRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyRole.PolicyRole
+ Amazonka.IAM.Types.PolicyRole: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyRole.PolicyRole
+ Amazonka.IAM.Types.PolicyRole: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyRole.PolicyRole
+ Amazonka.IAM.Types.PolicyRole: instance GHC.Read.Read Amazonka.IAM.Types.PolicyRole.PolicyRole
+ Amazonka.IAM.Types.PolicyRole: instance GHC.Show.Show Amazonka.IAM.Types.PolicyRole.PolicyRole
+ Amazonka.IAM.Types.PolicyRole: newPolicyRole :: PolicyRole
+ Amazonka.IAM.Types.PolicyRole: policyRole_roleId :: Lens' PolicyRole (Maybe Text)
+ Amazonka.IAM.Types.PolicyRole: policyRole_roleName :: Lens' PolicyRole (Maybe Text)
+ Amazonka.IAM.Types.PolicyScopeType: PolicyScopeType' :: Text -> PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: [fromPolicyScopeType] :: PolicyScopeType -> Text
+ Amazonka.IAM.Types.PolicyScopeType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance GHC.Classes.Ord Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance GHC.Read.Read Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: instance GHC.Show.Show Amazonka.IAM.Types.PolicyScopeType.PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: newtype PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: pattern PolicyScopeType_AWS :: PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: pattern PolicyScopeType_All :: PolicyScopeType
+ Amazonka.IAM.Types.PolicyScopeType: pattern PolicyScopeType_Local :: PolicyScopeType
+ Amazonka.IAM.Types.PolicySourceType: PolicySourceType' :: Text -> PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: [fromPolicySourceType] :: PolicySourceType -> Text
+ Amazonka.IAM.Types.PolicySourceType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance GHC.Classes.Ord Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance GHC.Read.Read Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: instance GHC.Show.Show Amazonka.IAM.Types.PolicySourceType.PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: newtype PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: pattern PolicySourceType_Aws_managed :: PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: pattern PolicySourceType_Group :: PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: pattern PolicySourceType_None :: PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: pattern PolicySourceType_Resource :: PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: pattern PolicySourceType_Role :: PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: pattern PolicySourceType_User :: PolicySourceType
+ Amazonka.IAM.Types.PolicySourceType: pattern PolicySourceType_User_managed :: PolicySourceType
+ Amazonka.IAM.Types.PolicyType: PolicyType' :: Text -> PolicyType
+ Amazonka.IAM.Types.PolicyType: [fromPolicyType] :: PolicyType -> Text
+ Amazonka.IAM.Types.PolicyType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance GHC.Classes.Ord Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance GHC.Read.Read Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: instance GHC.Show.Show Amazonka.IAM.Types.PolicyType.PolicyType
+ Amazonka.IAM.Types.PolicyType: newtype PolicyType
+ Amazonka.IAM.Types.PolicyType: pattern PolicyType_INLINE :: PolicyType
+ Amazonka.IAM.Types.PolicyType: pattern PolicyType_MANAGED :: PolicyType
+ Amazonka.IAM.Types.PolicyUsageType: PolicyUsageType' :: Text -> PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: [fromPolicyUsageType] :: PolicyUsageType -> Text
+ Amazonka.IAM.Types.PolicyUsageType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance GHC.Classes.Ord Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance GHC.Read.Read Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: instance GHC.Show.Show Amazonka.IAM.Types.PolicyUsageType.PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: newtype PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: pattern PolicyUsageType_PermissionsBoundary :: PolicyUsageType
+ Amazonka.IAM.Types.PolicyUsageType: pattern PolicyUsageType_PermissionsPolicy :: PolicyUsageType
+ Amazonka.IAM.Types.PolicyUser: PolicyUser' :: Maybe Text -> Maybe Text -> PolicyUser
+ Amazonka.IAM.Types.PolicyUser: [$sel:userId:PolicyUser'] :: PolicyUser -> Maybe Text
+ Amazonka.IAM.Types.PolicyUser: [$sel:userName:PolicyUser'] :: PolicyUser -> Maybe Text
+ Amazonka.IAM.Types.PolicyUser: data PolicyUser
+ Amazonka.IAM.Types.PolicyUser: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyUser.PolicyUser
+ Amazonka.IAM.Types.PolicyUser: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyUser.PolicyUser
+ Amazonka.IAM.Types.PolicyUser: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyUser.PolicyUser
+ Amazonka.IAM.Types.PolicyUser: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyUser.PolicyUser
+ Amazonka.IAM.Types.PolicyUser: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyUser.PolicyUser
+ Amazonka.IAM.Types.PolicyUser: instance GHC.Read.Read Amazonka.IAM.Types.PolicyUser.PolicyUser
+ Amazonka.IAM.Types.PolicyUser: instance GHC.Show.Show Amazonka.IAM.Types.PolicyUser.PolicyUser
+ Amazonka.IAM.Types.PolicyUser: newPolicyUser :: PolicyUser
+ Amazonka.IAM.Types.PolicyUser: policyUser_userId :: Lens' PolicyUser (Maybe Text)
+ Amazonka.IAM.Types.PolicyUser: policyUser_userName :: Lens' PolicyUser (Maybe Text)
+ Amazonka.IAM.Types.PolicyVersion: PolicyVersion' :: Maybe ISO8601 -> Maybe Text -> Maybe Bool -> Maybe Text -> PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: [$sel:createDate:PolicyVersion'] :: PolicyVersion -> Maybe ISO8601
+ Amazonka.IAM.Types.PolicyVersion: [$sel:document:PolicyVersion'] :: PolicyVersion -> Maybe Text
+ Amazonka.IAM.Types.PolicyVersion: [$sel:isDefaultVersion:PolicyVersion'] :: PolicyVersion -> Maybe Bool
+ Amazonka.IAM.Types.PolicyVersion: [$sel:versionId:PolicyVersion'] :: PolicyVersion -> Maybe Text
+ Amazonka.IAM.Types.PolicyVersion: data PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.PolicyVersion.PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: instance Control.DeepSeq.NFData Amazonka.IAM.Types.PolicyVersion.PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.PolicyVersion.PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: instance GHC.Classes.Eq Amazonka.IAM.Types.PolicyVersion.PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: instance GHC.Generics.Generic Amazonka.IAM.Types.PolicyVersion.PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: instance GHC.Read.Read Amazonka.IAM.Types.PolicyVersion.PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: instance GHC.Show.Show Amazonka.IAM.Types.PolicyVersion.PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: newPolicyVersion :: PolicyVersion
+ Amazonka.IAM.Types.PolicyVersion: policyVersion_createDate :: Lens' PolicyVersion (Maybe UTCTime)
+ Amazonka.IAM.Types.PolicyVersion: policyVersion_document :: Lens' PolicyVersion (Maybe Text)
+ Amazonka.IAM.Types.PolicyVersion: policyVersion_isDefaultVersion :: Lens' PolicyVersion (Maybe Bool)
+ Amazonka.IAM.Types.PolicyVersion: policyVersion_versionId :: Lens' PolicyVersion (Maybe Text)
+ Amazonka.IAM.Types.Position: Position' :: Maybe Int -> Maybe Int -> Position
+ Amazonka.IAM.Types.Position: [$sel:column:Position'] :: Position -> Maybe Int
+ Amazonka.IAM.Types.Position: [$sel:line:Position'] :: Position -> Maybe Int
+ Amazonka.IAM.Types.Position: data Position
+ Amazonka.IAM.Types.Position: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.Position.Position
+ Amazonka.IAM.Types.Position: instance Control.DeepSeq.NFData Amazonka.IAM.Types.Position.Position
+ Amazonka.IAM.Types.Position: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.Position.Position
+ Amazonka.IAM.Types.Position: instance GHC.Classes.Eq Amazonka.IAM.Types.Position.Position
+ Amazonka.IAM.Types.Position: instance GHC.Generics.Generic Amazonka.IAM.Types.Position.Position
+ Amazonka.IAM.Types.Position: instance GHC.Read.Read Amazonka.IAM.Types.Position.Position
+ Amazonka.IAM.Types.Position: instance GHC.Show.Show Amazonka.IAM.Types.Position.Position
+ Amazonka.IAM.Types.Position: newPosition :: Position
+ Amazonka.IAM.Types.Position: position_column :: Lens' Position (Maybe Int)
+ Amazonka.IAM.Types.Position: position_line :: Lens' Position (Maybe Int)
+ Amazonka.IAM.Types.ReportFormatType: ReportFormatType' :: Text -> ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: [fromReportFormatType] :: ReportFormatType -> Text
+ Amazonka.IAM.Types.ReportFormatType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance GHC.Classes.Eq Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance GHC.Classes.Ord Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance GHC.Generics.Generic Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance GHC.Read.Read Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: instance GHC.Show.Show Amazonka.IAM.Types.ReportFormatType.ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: newtype ReportFormatType
+ Amazonka.IAM.Types.ReportFormatType: pattern ReportFormatType_Text_csv :: ReportFormatType
+ Amazonka.IAM.Types.ReportStateType: ReportStateType' :: Text -> ReportStateType
+ Amazonka.IAM.Types.ReportStateType: [fromReportStateType] :: ReportStateType -> Text
+ Amazonka.IAM.Types.ReportStateType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance GHC.Classes.Eq Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance GHC.Classes.Ord Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance GHC.Generics.Generic Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance GHC.Read.Read Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: instance GHC.Show.Show Amazonka.IAM.Types.ReportStateType.ReportStateType
+ Amazonka.IAM.Types.ReportStateType: newtype ReportStateType
+ Amazonka.IAM.Types.ReportStateType: pattern ReportStateType_COMPLETE :: ReportStateType
+ Amazonka.IAM.Types.ReportStateType: pattern ReportStateType_INPROGRESS :: ReportStateType
+ Amazonka.IAM.Types.ReportStateType: pattern ReportStateType_STARTED :: ReportStateType
+ Amazonka.IAM.Types.ResourceSpecificResult: ResourceSpecificResult' :: Maybe (HashMap Text PolicyEvaluationDecisionType) -> Maybe [Statement] -> Maybe [Text] -> Maybe PermissionsBoundaryDecisionDetail -> Text -> PolicyEvaluationDecisionType -> ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: [$sel:evalDecisionDetails:ResourceSpecificResult'] :: ResourceSpecificResult -> Maybe (HashMap Text PolicyEvaluationDecisionType)
+ Amazonka.IAM.Types.ResourceSpecificResult: [$sel:evalResourceDecision:ResourceSpecificResult'] :: ResourceSpecificResult -> PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.ResourceSpecificResult: [$sel:evalResourceName:ResourceSpecificResult'] :: ResourceSpecificResult -> Text
+ Amazonka.IAM.Types.ResourceSpecificResult: [$sel:matchedStatements:ResourceSpecificResult'] :: ResourceSpecificResult -> Maybe [Statement]
+ Amazonka.IAM.Types.ResourceSpecificResult: [$sel:missingContextValues:ResourceSpecificResult'] :: ResourceSpecificResult -> Maybe [Text]
+ Amazonka.IAM.Types.ResourceSpecificResult: [$sel:permissionsBoundaryDecisionDetail:ResourceSpecificResult'] :: ResourceSpecificResult -> Maybe PermissionsBoundaryDecisionDetail
+ Amazonka.IAM.Types.ResourceSpecificResult: data ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ResourceSpecificResult.ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ResourceSpecificResult.ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ResourceSpecificResult.ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: instance GHC.Classes.Eq Amazonka.IAM.Types.ResourceSpecificResult.ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: instance GHC.Generics.Generic Amazonka.IAM.Types.ResourceSpecificResult.ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: instance GHC.Read.Read Amazonka.IAM.Types.ResourceSpecificResult.ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: instance GHC.Show.Show Amazonka.IAM.Types.ResourceSpecificResult.ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: newResourceSpecificResult :: Text -> PolicyEvaluationDecisionType -> ResourceSpecificResult
+ Amazonka.IAM.Types.ResourceSpecificResult: resourceSpecificResult_evalDecisionDetails :: Lens' ResourceSpecificResult (Maybe (HashMap Text PolicyEvaluationDecisionType))
+ Amazonka.IAM.Types.ResourceSpecificResult: resourceSpecificResult_evalResourceDecision :: Lens' ResourceSpecificResult PolicyEvaluationDecisionType
+ Amazonka.IAM.Types.ResourceSpecificResult: resourceSpecificResult_evalResourceName :: Lens' ResourceSpecificResult Text
+ Amazonka.IAM.Types.ResourceSpecificResult: resourceSpecificResult_matchedStatements :: Lens' ResourceSpecificResult (Maybe [Statement])
+ Amazonka.IAM.Types.ResourceSpecificResult: resourceSpecificResult_missingContextValues :: Lens' ResourceSpecificResult (Maybe [Text])
+ Amazonka.IAM.Types.ResourceSpecificResult: resourceSpecificResult_permissionsBoundaryDecisionDetail :: Lens' ResourceSpecificResult (Maybe PermissionsBoundaryDecisionDetail)
+ Amazonka.IAM.Types.Role: Role' :: Maybe Text -> Maybe Text -> Maybe Natural -> Maybe AttachedPermissionsBoundary -> Maybe RoleLastUsed -> Maybe [Tag] -> Text -> Text -> Text -> Text -> ISO8601 -> Role
+ Amazonka.IAM.Types.Role: [$sel:arn:Role'] :: Role -> Text
+ Amazonka.IAM.Types.Role: [$sel:assumeRolePolicyDocument:Role'] :: Role -> Maybe Text
+ Amazonka.IAM.Types.Role: [$sel:createDate:Role'] :: Role -> ISO8601
+ Amazonka.IAM.Types.Role: [$sel:description:Role'] :: Role -> Maybe Text
+ Amazonka.IAM.Types.Role: [$sel:maxSessionDuration:Role'] :: Role -> Maybe Natural
+ Amazonka.IAM.Types.Role: [$sel:path:Role'] :: Role -> Text
+ Amazonka.IAM.Types.Role: [$sel:permissionsBoundary:Role'] :: Role -> Maybe AttachedPermissionsBoundary
+ Amazonka.IAM.Types.Role: [$sel:roleId:Role'] :: Role -> Text
+ Amazonka.IAM.Types.Role: [$sel:roleLastUsed:Role'] :: Role -> Maybe RoleLastUsed
+ Amazonka.IAM.Types.Role: [$sel:roleName:Role'] :: Role -> Text
+ Amazonka.IAM.Types.Role: [$sel:tags:Role'] :: Role -> Maybe [Tag]
+ Amazonka.IAM.Types.Role: data Role
+ Amazonka.IAM.Types.Role: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.Role.Role
+ Amazonka.IAM.Types.Role: instance Control.DeepSeq.NFData Amazonka.IAM.Types.Role.Role
+ Amazonka.IAM.Types.Role: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.Role.Role
+ Amazonka.IAM.Types.Role: instance GHC.Classes.Eq Amazonka.IAM.Types.Role.Role
+ Amazonka.IAM.Types.Role: instance GHC.Generics.Generic Amazonka.IAM.Types.Role.Role
+ Amazonka.IAM.Types.Role: instance GHC.Read.Read Amazonka.IAM.Types.Role.Role
+ Amazonka.IAM.Types.Role: instance GHC.Show.Show Amazonka.IAM.Types.Role.Role
+ Amazonka.IAM.Types.Role: newRole :: Text -> Text -> Text -> Text -> UTCTime -> Role
+ Amazonka.IAM.Types.Role: role_arn :: Lens' Role Text
+ Amazonka.IAM.Types.Role: role_assumeRolePolicyDocument :: Lens' Role (Maybe Text)
+ Amazonka.IAM.Types.Role: role_createDate :: Lens' Role UTCTime
+ Amazonka.IAM.Types.Role: role_description :: Lens' Role (Maybe Text)
+ Amazonka.IAM.Types.Role: role_maxSessionDuration :: Lens' Role (Maybe Natural)
+ Amazonka.IAM.Types.Role: role_path :: Lens' Role Text
+ Amazonka.IAM.Types.Role: role_permissionsBoundary :: Lens' Role (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Types.Role: role_roleId :: Lens' Role Text
+ Amazonka.IAM.Types.Role: role_roleLastUsed :: Lens' Role (Maybe RoleLastUsed)
+ Amazonka.IAM.Types.Role: role_roleName :: Lens' Role Text
+ Amazonka.IAM.Types.Role: role_tags :: Lens' Role (Maybe [Tag])
+ Amazonka.IAM.Types.RoleDetail: RoleDetail' :: Maybe Text -> Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe [InstanceProfile] -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe Text -> Maybe RoleLastUsed -> Maybe Text -> Maybe [PolicyDetail] -> Maybe [Tag] -> RoleDetail
+ Amazonka.IAM.Types.RoleDetail: [$sel:arn:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types.RoleDetail: [$sel:assumeRolePolicyDocument:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types.RoleDetail: [$sel:attachedManagedPolicies:RoleDetail'] :: RoleDetail -> Maybe [AttachedPolicy]
+ Amazonka.IAM.Types.RoleDetail: [$sel:createDate:RoleDetail'] :: RoleDetail -> Maybe ISO8601
+ Amazonka.IAM.Types.RoleDetail: [$sel:instanceProfileList:RoleDetail'] :: RoleDetail -> Maybe [InstanceProfile]
+ Amazonka.IAM.Types.RoleDetail: [$sel:path:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types.RoleDetail: [$sel:permissionsBoundary:RoleDetail'] :: RoleDetail -> Maybe AttachedPermissionsBoundary
+ Amazonka.IAM.Types.RoleDetail: [$sel:roleId:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types.RoleDetail: [$sel:roleLastUsed:RoleDetail'] :: RoleDetail -> Maybe RoleLastUsed
+ Amazonka.IAM.Types.RoleDetail: [$sel:roleName:RoleDetail'] :: RoleDetail -> Maybe Text
+ Amazonka.IAM.Types.RoleDetail: [$sel:rolePolicyList:RoleDetail'] :: RoleDetail -> Maybe [PolicyDetail]
+ Amazonka.IAM.Types.RoleDetail: [$sel:tags:RoleDetail'] :: RoleDetail -> Maybe [Tag]
+ Amazonka.IAM.Types.RoleDetail: data RoleDetail
+ Amazonka.IAM.Types.RoleDetail: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.RoleDetail.RoleDetail
+ Amazonka.IAM.Types.RoleDetail: instance Control.DeepSeq.NFData Amazonka.IAM.Types.RoleDetail.RoleDetail
+ Amazonka.IAM.Types.RoleDetail: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.RoleDetail.RoleDetail
+ Amazonka.IAM.Types.RoleDetail: instance GHC.Classes.Eq Amazonka.IAM.Types.RoleDetail.RoleDetail
+ Amazonka.IAM.Types.RoleDetail: instance GHC.Generics.Generic Amazonka.IAM.Types.RoleDetail.RoleDetail
+ Amazonka.IAM.Types.RoleDetail: instance GHC.Read.Read Amazonka.IAM.Types.RoleDetail.RoleDetail
+ Amazonka.IAM.Types.RoleDetail: instance GHC.Show.Show Amazonka.IAM.Types.RoleDetail.RoleDetail
+ Amazonka.IAM.Types.RoleDetail: newRoleDetail :: RoleDetail
+ Amazonka.IAM.Types.RoleDetail: roleDetail_arn :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types.RoleDetail: roleDetail_assumeRolePolicyDocument :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types.RoleDetail: roleDetail_attachedManagedPolicies :: Lens' RoleDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Types.RoleDetail: roleDetail_createDate :: Lens' RoleDetail (Maybe UTCTime)
+ Amazonka.IAM.Types.RoleDetail: roleDetail_instanceProfileList :: Lens' RoleDetail (Maybe [InstanceProfile])
+ Amazonka.IAM.Types.RoleDetail: roleDetail_path :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types.RoleDetail: roleDetail_permissionsBoundary :: Lens' RoleDetail (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Types.RoleDetail: roleDetail_roleId :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types.RoleDetail: roleDetail_roleLastUsed :: Lens' RoleDetail (Maybe RoleLastUsed)
+ Amazonka.IAM.Types.RoleDetail: roleDetail_roleName :: Lens' RoleDetail (Maybe Text)
+ Amazonka.IAM.Types.RoleDetail: roleDetail_rolePolicyList :: Lens' RoleDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Types.RoleDetail: roleDetail_tags :: Lens' RoleDetail (Maybe [Tag])
+ Amazonka.IAM.Types.RoleLastUsed: RoleLastUsed' :: Maybe ISO8601 -> Maybe Text -> RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: [$sel:lastUsedDate:RoleLastUsed'] :: RoleLastUsed -> Maybe ISO8601
+ Amazonka.IAM.Types.RoleLastUsed: [$sel:region:RoleLastUsed'] :: RoleLastUsed -> Maybe Text
+ Amazonka.IAM.Types.RoleLastUsed: data RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.RoleLastUsed.RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: instance Control.DeepSeq.NFData Amazonka.IAM.Types.RoleLastUsed.RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.RoleLastUsed.RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: instance GHC.Classes.Eq Amazonka.IAM.Types.RoleLastUsed.RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: instance GHC.Generics.Generic Amazonka.IAM.Types.RoleLastUsed.RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: instance GHC.Read.Read Amazonka.IAM.Types.RoleLastUsed.RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: instance GHC.Show.Show Amazonka.IAM.Types.RoleLastUsed.RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: newRoleLastUsed :: RoleLastUsed
+ Amazonka.IAM.Types.RoleLastUsed: roleLastUsed_lastUsedDate :: Lens' RoleLastUsed (Maybe UTCTime)
+ Amazonka.IAM.Types.RoleLastUsed: roleLastUsed_region :: Lens' RoleLastUsed (Maybe Text)
+ Amazonka.IAM.Types.RoleUsageType: RoleUsageType' :: Maybe Text -> Maybe [Text] -> RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: [$sel:region:RoleUsageType'] :: RoleUsageType -> Maybe Text
+ Amazonka.IAM.Types.RoleUsageType: [$sel:resources:RoleUsageType'] :: RoleUsageType -> Maybe [Text]
+ Amazonka.IAM.Types.RoleUsageType: data RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.RoleUsageType.RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.RoleUsageType.RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.RoleUsageType.RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: instance GHC.Classes.Eq Amazonka.IAM.Types.RoleUsageType.RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: instance GHC.Generics.Generic Amazonka.IAM.Types.RoleUsageType.RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: instance GHC.Read.Read Amazonka.IAM.Types.RoleUsageType.RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: instance GHC.Show.Show Amazonka.IAM.Types.RoleUsageType.RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: newRoleUsageType :: RoleUsageType
+ Amazonka.IAM.Types.RoleUsageType: roleUsageType_region :: Lens' RoleUsageType (Maybe Text)
+ Amazonka.IAM.Types.RoleUsageType: roleUsageType_resources :: Lens' RoleUsageType (Maybe [Text])
+ Amazonka.IAM.Types.SAMLProviderListEntry: SAMLProviderListEntry' :: Maybe Text -> Maybe ISO8601 -> Maybe ISO8601 -> SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: [$sel:arn:SAMLProviderListEntry'] :: SAMLProviderListEntry -> Maybe Text
+ Amazonka.IAM.Types.SAMLProviderListEntry: [$sel:createDate:SAMLProviderListEntry'] :: SAMLProviderListEntry -> Maybe ISO8601
+ Amazonka.IAM.Types.SAMLProviderListEntry: [$sel:validUntil:SAMLProviderListEntry'] :: SAMLProviderListEntry -> Maybe ISO8601
+ Amazonka.IAM.Types.SAMLProviderListEntry: data SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.SAMLProviderListEntry.SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: instance Control.DeepSeq.NFData Amazonka.IAM.Types.SAMLProviderListEntry.SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.SAMLProviderListEntry.SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: instance GHC.Classes.Eq Amazonka.IAM.Types.SAMLProviderListEntry.SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: instance GHC.Generics.Generic Amazonka.IAM.Types.SAMLProviderListEntry.SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: instance GHC.Read.Read Amazonka.IAM.Types.SAMLProviderListEntry.SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: instance GHC.Show.Show Amazonka.IAM.Types.SAMLProviderListEntry.SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: newSAMLProviderListEntry :: SAMLProviderListEntry
+ Amazonka.IAM.Types.SAMLProviderListEntry: sAMLProviderListEntry_arn :: Lens' SAMLProviderListEntry (Maybe Text)
+ Amazonka.IAM.Types.SAMLProviderListEntry: sAMLProviderListEntry_createDate :: Lens' SAMLProviderListEntry (Maybe UTCTime)
+ Amazonka.IAM.Types.SAMLProviderListEntry: sAMLProviderListEntry_validUntil :: Lens' SAMLProviderListEntry (Maybe UTCTime)
+ Amazonka.IAM.Types.SSHPublicKey: SSHPublicKey' :: Maybe ISO8601 -> Text -> Text -> Text -> Text -> StatusType -> SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: [$sel:fingerprint:SSHPublicKey'] :: SSHPublicKey -> Text
+ Amazonka.IAM.Types.SSHPublicKey: [$sel:sSHPublicKeyBody:SSHPublicKey'] :: SSHPublicKey -> Text
+ Amazonka.IAM.Types.SSHPublicKey: [$sel:sSHPublicKeyId:SSHPublicKey'] :: SSHPublicKey -> Text
+ Amazonka.IAM.Types.SSHPublicKey: [$sel:status:SSHPublicKey'] :: SSHPublicKey -> StatusType
+ Amazonka.IAM.Types.SSHPublicKey: [$sel:uploadDate:SSHPublicKey'] :: SSHPublicKey -> Maybe ISO8601
+ Amazonka.IAM.Types.SSHPublicKey: [$sel:userName:SSHPublicKey'] :: SSHPublicKey -> Text
+ Amazonka.IAM.Types.SSHPublicKey: data SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.SSHPublicKey.SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.Types.SSHPublicKey.SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.SSHPublicKey.SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.Types.SSHPublicKey.SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.Types.SSHPublicKey.SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: instance GHC.Read.Read Amazonka.IAM.Types.SSHPublicKey.SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: instance GHC.Show.Show Amazonka.IAM.Types.SSHPublicKey.SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: newSSHPublicKey :: Text -> Text -> Text -> Text -> StatusType -> SSHPublicKey
+ Amazonka.IAM.Types.SSHPublicKey: sSHPublicKey_fingerprint :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Types.SSHPublicKey: sSHPublicKey_sSHPublicKeyBody :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Types.SSHPublicKey: sSHPublicKey_sSHPublicKeyId :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Types.SSHPublicKey: sSHPublicKey_status :: Lens' SSHPublicKey StatusType
+ Amazonka.IAM.Types.SSHPublicKey: sSHPublicKey_uploadDate :: Lens' SSHPublicKey (Maybe UTCTime)
+ Amazonka.IAM.Types.SSHPublicKey: sSHPublicKey_userName :: Lens' SSHPublicKey Text
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: SSHPublicKeyMetadata' :: Text -> Text -> StatusType -> ISO8601 -> SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: [$sel:sSHPublicKeyId:SSHPublicKeyMetadata'] :: SSHPublicKeyMetadata -> Text
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: [$sel:status:SSHPublicKeyMetadata'] :: SSHPublicKeyMetadata -> StatusType
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: [$sel:uploadDate:SSHPublicKeyMetadata'] :: SSHPublicKeyMetadata -> ISO8601
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: [$sel:userName:SSHPublicKeyMetadata'] :: SSHPublicKeyMetadata -> Text
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: data SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.SSHPublicKeyMetadata.SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: instance Control.DeepSeq.NFData Amazonka.IAM.Types.SSHPublicKeyMetadata.SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.SSHPublicKeyMetadata.SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: instance GHC.Classes.Eq Amazonka.IAM.Types.SSHPublicKeyMetadata.SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: instance GHC.Generics.Generic Amazonka.IAM.Types.SSHPublicKeyMetadata.SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: instance GHC.Read.Read Amazonka.IAM.Types.SSHPublicKeyMetadata.SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: instance GHC.Show.Show Amazonka.IAM.Types.SSHPublicKeyMetadata.SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: newSSHPublicKeyMetadata :: Text -> Text -> StatusType -> UTCTime -> SSHPublicKeyMetadata
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: sSHPublicKeyMetadata_sSHPublicKeyId :: Lens' SSHPublicKeyMetadata Text
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: sSHPublicKeyMetadata_status :: Lens' SSHPublicKeyMetadata StatusType
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: sSHPublicKeyMetadata_uploadDate :: Lens' SSHPublicKeyMetadata UTCTime
+ Amazonka.IAM.Types.SSHPublicKeyMetadata: sSHPublicKeyMetadata_userName :: Lens' SSHPublicKeyMetadata Text
+ Amazonka.IAM.Types.ServerCertificate: ServerCertificate' :: Maybe Text -> Maybe [Tag] -> ServerCertificateMetadata -> Text -> ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: [$sel:certificateBody:ServerCertificate'] :: ServerCertificate -> Text
+ Amazonka.IAM.Types.ServerCertificate: [$sel:certificateChain:ServerCertificate'] :: ServerCertificate -> Maybe Text
+ Amazonka.IAM.Types.ServerCertificate: [$sel:serverCertificateMetadata:ServerCertificate'] :: ServerCertificate -> ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificate: [$sel:tags:ServerCertificate'] :: ServerCertificate -> Maybe [Tag]
+ Amazonka.IAM.Types.ServerCertificate: data ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ServerCertificate.ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ServerCertificate.ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ServerCertificate.ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.Types.ServerCertificate.ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.Types.ServerCertificate.ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: instance GHC.Read.Read Amazonka.IAM.Types.ServerCertificate.ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: instance GHC.Show.Show Amazonka.IAM.Types.ServerCertificate.ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: newServerCertificate :: ServerCertificateMetadata -> Text -> ServerCertificate
+ Amazonka.IAM.Types.ServerCertificate: serverCertificate_certificateBody :: Lens' ServerCertificate Text
+ Amazonka.IAM.Types.ServerCertificate: serverCertificate_certificateChain :: Lens' ServerCertificate (Maybe Text)
+ Amazonka.IAM.Types.ServerCertificate: serverCertificate_serverCertificateMetadata :: Lens' ServerCertificate ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificate: serverCertificate_tags :: Lens' ServerCertificate (Maybe [Tag])
+ Amazonka.IAM.Types.ServerCertificateMetadata: ServerCertificateMetadata' :: Maybe ISO8601 -> Maybe ISO8601 -> Text -> Text -> Text -> Text -> ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: [$sel:arn:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Text
+ Amazonka.IAM.Types.ServerCertificateMetadata: [$sel:expiration:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Maybe ISO8601
+ Amazonka.IAM.Types.ServerCertificateMetadata: [$sel:path:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Text
+ Amazonka.IAM.Types.ServerCertificateMetadata: [$sel:serverCertificateId:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Text
+ Amazonka.IAM.Types.ServerCertificateMetadata: [$sel:serverCertificateName:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Text
+ Amazonka.IAM.Types.ServerCertificateMetadata: [$sel:uploadDate:ServerCertificateMetadata'] :: ServerCertificateMetadata -> Maybe ISO8601
+ Amazonka.IAM.Types.ServerCertificateMetadata: data ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ServerCertificateMetadata.ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ServerCertificateMetadata.ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ServerCertificateMetadata.ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: instance GHC.Classes.Eq Amazonka.IAM.Types.ServerCertificateMetadata.ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: instance GHC.Generics.Generic Amazonka.IAM.Types.ServerCertificateMetadata.ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: instance GHC.Read.Read Amazonka.IAM.Types.ServerCertificateMetadata.ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: instance GHC.Show.Show Amazonka.IAM.Types.ServerCertificateMetadata.ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: newServerCertificateMetadata :: Text -> Text -> Text -> Text -> ServerCertificateMetadata
+ Amazonka.IAM.Types.ServerCertificateMetadata: serverCertificateMetadata_arn :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Types.ServerCertificateMetadata: serverCertificateMetadata_expiration :: Lens' ServerCertificateMetadata (Maybe UTCTime)
+ Amazonka.IAM.Types.ServerCertificateMetadata: serverCertificateMetadata_path :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Types.ServerCertificateMetadata: serverCertificateMetadata_serverCertificateId :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Types.ServerCertificateMetadata: serverCertificateMetadata_serverCertificateName :: Lens' ServerCertificateMetadata Text
+ Amazonka.IAM.Types.ServerCertificateMetadata: serverCertificateMetadata_uploadDate :: Lens' ServerCertificateMetadata (Maybe UTCTime)
+ Amazonka.IAM.Types.ServiceLastAccessed: ServiceLastAccessed' :: Maybe ISO8601 -> Maybe Text -> Maybe Text -> Maybe Int -> Maybe [TrackedActionLastAccessed] -> Text -> Text -> ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: [$sel:lastAuthenticated:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe ISO8601
+ Amazonka.IAM.Types.ServiceLastAccessed: [$sel:lastAuthenticatedEntity:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe Text
+ Amazonka.IAM.Types.ServiceLastAccessed: [$sel:lastAuthenticatedRegion:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe Text
+ Amazonka.IAM.Types.ServiceLastAccessed: [$sel:serviceName:ServiceLastAccessed'] :: ServiceLastAccessed -> Text
+ Amazonka.IAM.Types.ServiceLastAccessed: [$sel:serviceNamespace:ServiceLastAccessed'] :: ServiceLastAccessed -> Text
+ Amazonka.IAM.Types.ServiceLastAccessed: [$sel:totalAuthenticatedEntities:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe Int
+ Amazonka.IAM.Types.ServiceLastAccessed: [$sel:trackedActionsLastAccessed:ServiceLastAccessed'] :: ServiceLastAccessed -> Maybe [TrackedActionLastAccessed]
+ Amazonka.IAM.Types.ServiceLastAccessed: data ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ServiceLastAccessed.ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ServiceLastAccessed.ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ServiceLastAccessed.ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: instance GHC.Classes.Eq Amazonka.IAM.Types.ServiceLastAccessed.ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: instance GHC.Generics.Generic Amazonka.IAM.Types.ServiceLastAccessed.ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: instance GHC.Read.Read Amazonka.IAM.Types.ServiceLastAccessed.ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: instance GHC.Show.Show Amazonka.IAM.Types.ServiceLastAccessed.ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: newServiceLastAccessed :: Text -> Text -> ServiceLastAccessed
+ Amazonka.IAM.Types.ServiceLastAccessed: serviceLastAccessed_lastAuthenticated :: Lens' ServiceLastAccessed (Maybe UTCTime)
+ Amazonka.IAM.Types.ServiceLastAccessed: serviceLastAccessed_lastAuthenticatedEntity :: Lens' ServiceLastAccessed (Maybe Text)
+ Amazonka.IAM.Types.ServiceLastAccessed: serviceLastAccessed_lastAuthenticatedRegion :: Lens' ServiceLastAccessed (Maybe Text)
+ Amazonka.IAM.Types.ServiceLastAccessed: serviceLastAccessed_serviceName :: Lens' ServiceLastAccessed Text
+ Amazonka.IAM.Types.ServiceLastAccessed: serviceLastAccessed_serviceNamespace :: Lens' ServiceLastAccessed Text
+ Amazonka.IAM.Types.ServiceLastAccessed: serviceLastAccessed_totalAuthenticatedEntities :: Lens' ServiceLastAccessed (Maybe Int)
+ Amazonka.IAM.Types.ServiceLastAccessed: serviceLastAccessed_trackedActionsLastAccessed :: Lens' ServiceLastAccessed (Maybe [TrackedActionLastAccessed])
+ Amazonka.IAM.Types.ServiceSpecificCredential: ServiceSpecificCredential' :: ISO8601 -> Text -> Text -> Sensitive Text -> Text -> Text -> StatusType -> ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: [$sel:createDate:ServiceSpecificCredential'] :: ServiceSpecificCredential -> ISO8601
+ Amazonka.IAM.Types.ServiceSpecificCredential: [$sel:serviceName:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: [$sel:servicePassword:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Sensitive Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: [$sel:serviceSpecificCredentialId:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: [$sel:serviceUserName:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: [$sel:status:ServiceSpecificCredential'] :: ServiceSpecificCredential -> StatusType
+ Amazonka.IAM.Types.ServiceSpecificCredential: [$sel:userName:ServiceSpecificCredential'] :: ServiceSpecificCredential -> Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: data ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ServiceSpecificCredential.ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ServiceSpecificCredential.ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ServiceSpecificCredential.ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.Types.ServiceSpecificCredential.ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.Types.ServiceSpecificCredential.ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.Types.ServiceSpecificCredential.ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: newServiceSpecificCredential :: UTCTime -> Text -> Text -> Text -> Text -> Text -> StatusType -> ServiceSpecificCredential
+ Amazonka.IAM.Types.ServiceSpecificCredential: serviceSpecificCredential_createDate :: Lens' ServiceSpecificCredential UTCTime
+ Amazonka.IAM.Types.ServiceSpecificCredential: serviceSpecificCredential_serviceName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: serviceSpecificCredential_servicePassword :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: serviceSpecificCredential_serviceSpecificCredentialId :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: serviceSpecificCredential_serviceUserName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types.ServiceSpecificCredential: serviceSpecificCredential_status :: Lens' ServiceSpecificCredential StatusType
+ Amazonka.IAM.Types.ServiceSpecificCredential: serviceSpecificCredential_userName :: Lens' ServiceSpecificCredential Text
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: ServiceSpecificCredentialMetadata' :: Text -> StatusType -> Text -> ISO8601 -> Text -> Text -> ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: [$sel:createDate:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> ISO8601
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: [$sel:serviceName:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> Text
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: [$sel:serviceSpecificCredentialId:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> Text
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: [$sel:serviceUserName:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> Text
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: [$sel:status:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> StatusType
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: [$sel:userName:ServiceSpecificCredentialMetadata'] :: ServiceSpecificCredentialMetadata -> Text
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: data ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.ServiceSpecificCredentialMetadata.ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: instance Control.DeepSeq.NFData Amazonka.IAM.Types.ServiceSpecificCredentialMetadata.ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.ServiceSpecificCredentialMetadata.ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: instance GHC.Classes.Eq Amazonka.IAM.Types.ServiceSpecificCredentialMetadata.ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: instance GHC.Generics.Generic Amazonka.IAM.Types.ServiceSpecificCredentialMetadata.ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: instance GHC.Read.Read Amazonka.IAM.Types.ServiceSpecificCredentialMetadata.ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: instance GHC.Show.Show Amazonka.IAM.Types.ServiceSpecificCredentialMetadata.ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: newServiceSpecificCredentialMetadata :: Text -> StatusType -> Text -> UTCTime -> Text -> Text -> ServiceSpecificCredentialMetadata
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: serviceSpecificCredentialMetadata_createDate :: Lens' ServiceSpecificCredentialMetadata UTCTime
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: serviceSpecificCredentialMetadata_serviceName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: serviceSpecificCredentialMetadata_serviceSpecificCredentialId :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: serviceSpecificCredentialMetadata_serviceUserName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: serviceSpecificCredentialMetadata_status :: Lens' ServiceSpecificCredentialMetadata StatusType
+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata: serviceSpecificCredentialMetadata_userName :: Lens' ServiceSpecificCredentialMetadata Text
+ Amazonka.IAM.Types.SigningCertificate: SigningCertificate' :: Maybe ISO8601 -> Text -> Text -> Text -> StatusType -> SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: [$sel:certificateBody:SigningCertificate'] :: SigningCertificate -> Text
+ Amazonka.IAM.Types.SigningCertificate: [$sel:certificateId:SigningCertificate'] :: SigningCertificate -> Text
+ Amazonka.IAM.Types.SigningCertificate: [$sel:status:SigningCertificate'] :: SigningCertificate -> StatusType
+ Amazonka.IAM.Types.SigningCertificate: [$sel:uploadDate:SigningCertificate'] :: SigningCertificate -> Maybe ISO8601
+ Amazonka.IAM.Types.SigningCertificate: [$sel:userName:SigningCertificate'] :: SigningCertificate -> Text
+ Amazonka.IAM.Types.SigningCertificate: data SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.SigningCertificate.SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.Types.SigningCertificate.SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.SigningCertificate.SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: instance GHC.Classes.Eq Amazonka.IAM.Types.SigningCertificate.SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: instance GHC.Generics.Generic Amazonka.IAM.Types.SigningCertificate.SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: instance GHC.Read.Read Amazonka.IAM.Types.SigningCertificate.SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: instance GHC.Show.Show Amazonka.IAM.Types.SigningCertificate.SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: newSigningCertificate :: Text -> Text -> Text -> StatusType -> SigningCertificate
+ Amazonka.IAM.Types.SigningCertificate: signingCertificate_certificateBody :: Lens' SigningCertificate Text
+ Amazonka.IAM.Types.SigningCertificate: signingCertificate_certificateId :: Lens' SigningCertificate Text
+ Amazonka.IAM.Types.SigningCertificate: signingCertificate_status :: Lens' SigningCertificate StatusType
+ Amazonka.IAM.Types.SigningCertificate: signingCertificate_uploadDate :: Lens' SigningCertificate (Maybe UTCTime)
+ Amazonka.IAM.Types.SigningCertificate: signingCertificate_userName :: Lens' SigningCertificate Text
+ Amazonka.IAM.Types.SimulatePolicyResponse: SimulatePolicyResponse' :: Maybe [EvaluationResult] -> Maybe Bool -> Maybe Text -> SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: [$sel:evaluationResults:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe [EvaluationResult]
+ Amazonka.IAM.Types.SimulatePolicyResponse: [$sel:isTruncated:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe Bool
+ Amazonka.IAM.Types.SimulatePolicyResponse: [$sel:marker:SimulatePolicyResponse'] :: SimulatePolicyResponse -> Maybe Text
+ Amazonka.IAM.Types.SimulatePolicyResponse: data SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.SimulatePolicyResponse.SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: instance Control.DeepSeq.NFData Amazonka.IAM.Types.SimulatePolicyResponse.SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.SimulatePolicyResponse.SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: instance GHC.Classes.Eq Amazonka.IAM.Types.SimulatePolicyResponse.SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: instance GHC.Generics.Generic Amazonka.IAM.Types.SimulatePolicyResponse.SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: instance GHC.Read.Read Amazonka.IAM.Types.SimulatePolicyResponse.SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: instance GHC.Show.Show Amazonka.IAM.Types.SimulatePolicyResponse.SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: newSimulatePolicyResponse :: SimulatePolicyResponse
+ Amazonka.IAM.Types.SimulatePolicyResponse: simulatePolicyResponse_evaluationResults :: Lens' SimulatePolicyResponse (Maybe [EvaluationResult])
+ Amazonka.IAM.Types.SimulatePolicyResponse: simulatePolicyResponse_isTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)
+ Amazonka.IAM.Types.SimulatePolicyResponse: simulatePolicyResponse_marker :: Lens' SimulatePolicyResponse (Maybe Text)
+ Amazonka.IAM.Types.SortKeyType: SortKeyType' :: Text -> SortKeyType
+ Amazonka.IAM.Types.SortKeyType: [fromSortKeyType] :: SortKeyType -> Text
+ Amazonka.IAM.Types.SortKeyType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance GHC.Classes.Eq Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance GHC.Classes.Ord Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance GHC.Generics.Generic Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance GHC.Read.Read Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: instance GHC.Show.Show Amazonka.IAM.Types.SortKeyType.SortKeyType
+ Amazonka.IAM.Types.SortKeyType: newtype SortKeyType
+ Amazonka.IAM.Types.SortKeyType: pattern SortKeyType_LAST_AUTHENTICATED_TIME_ASCENDING :: SortKeyType
+ Amazonka.IAM.Types.SortKeyType: pattern SortKeyType_LAST_AUTHENTICATED_TIME_DESCENDING :: SortKeyType
+ Amazonka.IAM.Types.SortKeyType: pattern SortKeyType_SERVICE_NAMESPACE_ASCENDING :: SortKeyType
+ Amazonka.IAM.Types.SortKeyType: pattern SortKeyType_SERVICE_NAMESPACE_DESCENDING :: SortKeyType
+ Amazonka.IAM.Types.Statement: Statement' :: Maybe Position -> Maybe Text -> Maybe PolicySourceType -> Maybe Position -> Statement
+ Amazonka.IAM.Types.Statement: [$sel:endPosition:Statement'] :: Statement -> Maybe Position
+ Amazonka.IAM.Types.Statement: [$sel:sourcePolicyId:Statement'] :: Statement -> Maybe Text
+ Amazonka.IAM.Types.Statement: [$sel:sourcePolicyType:Statement'] :: Statement -> Maybe PolicySourceType
+ Amazonka.IAM.Types.Statement: [$sel:startPosition:Statement'] :: Statement -> Maybe Position
+ Amazonka.IAM.Types.Statement: data Statement
+ Amazonka.IAM.Types.Statement: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.Statement.Statement
+ Amazonka.IAM.Types.Statement: instance Control.DeepSeq.NFData Amazonka.IAM.Types.Statement.Statement
+ Amazonka.IAM.Types.Statement: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.Statement.Statement
+ Amazonka.IAM.Types.Statement: instance GHC.Classes.Eq Amazonka.IAM.Types.Statement.Statement
+ Amazonka.IAM.Types.Statement: instance GHC.Generics.Generic Amazonka.IAM.Types.Statement.Statement
+ Amazonka.IAM.Types.Statement: instance GHC.Read.Read Amazonka.IAM.Types.Statement.Statement
+ Amazonka.IAM.Types.Statement: instance GHC.Show.Show Amazonka.IAM.Types.Statement.Statement
+ Amazonka.IAM.Types.Statement: newStatement :: Statement
+ Amazonka.IAM.Types.Statement: statement_endPosition :: Lens' Statement (Maybe Position)
+ Amazonka.IAM.Types.Statement: statement_sourcePolicyId :: Lens' Statement (Maybe Text)
+ Amazonka.IAM.Types.Statement: statement_sourcePolicyType :: Lens' Statement (Maybe PolicySourceType)
+ Amazonka.IAM.Types.Statement: statement_startPosition :: Lens' Statement (Maybe Position)
+ Amazonka.IAM.Types.StatusType: StatusType' :: Text -> StatusType
+ Amazonka.IAM.Types.StatusType: [fromStatusType] :: StatusType -> Text
+ Amazonka.IAM.Types.StatusType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance GHC.Classes.Eq Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance GHC.Classes.Ord Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance GHC.Generics.Generic Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance GHC.Read.Read Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: instance GHC.Show.Show Amazonka.IAM.Types.StatusType.StatusType
+ Amazonka.IAM.Types.StatusType: newtype StatusType
+ Amazonka.IAM.Types.StatusType: pattern StatusType_Active :: StatusType
+ Amazonka.IAM.Types.StatusType: pattern StatusType_Inactive :: StatusType
+ Amazonka.IAM.Types.SummaryKeyType: SummaryKeyType' :: Text -> SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: [fromSummaryKeyType] :: SummaryKeyType -> Text
+ Amazonka.IAM.Types.SummaryKeyType: instance Amazonka.Data.ByteString.ToByteString Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Amazonka.Data.Headers.ToHeader Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Amazonka.Data.Log.ToLog Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Amazonka.Data.Text.FromText Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Amazonka.Data.Text.ToText Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Amazonka.Data.XML.ToXML Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Control.DeepSeq.NFData Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Data.Aeson.Types.FromJSON.FromJSON Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Data.Aeson.Types.FromJSON.FromJSONKey Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Data.Aeson.Types.ToJSON.ToJSON Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Data.Aeson.Types.ToJSON.ToJSONKey Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance GHC.Classes.Eq Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance GHC.Classes.Ord Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance GHC.Generics.Generic Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance GHC.Read.Read Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: instance GHC.Show.Show Amazonka.IAM.Types.SummaryKeyType.SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: newtype SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_AccessKeysPerUserQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_AccountAccessKeysPresent :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_AccountMFAEnabled :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_AccountSigningCertificatesPresent :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_AttachedPoliciesPerGroupQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_AttachedPoliciesPerRoleQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_AttachedPoliciesPerUserQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_GlobalEndpointTokenVersion :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_GroupPolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_Groups :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_GroupsPerUserQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_GroupsQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_MFADevices :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_MFADevicesInUse :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_Policies :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_PoliciesQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_PolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_PolicyVersionsInUse :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_PolicyVersionsInUseQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_ServerCertificates :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_ServerCertificatesQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_SigningCertificatesPerUserQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_UserPolicySizeQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_Users :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_UsersQuota :: SummaryKeyType
+ Amazonka.IAM.Types.SummaryKeyType: pattern SummaryKeyType_VersionsPerPolicyQuota :: SummaryKeyType
+ Amazonka.IAM.Types.Tag: Tag' :: Text -> Text -> Tag
+ Amazonka.IAM.Types.Tag: [$sel:key:Tag'] :: Tag -> Text
+ Amazonka.IAM.Types.Tag: [$sel:value:Tag'] :: Tag -> Text
+ Amazonka.IAM.Types.Tag: data Tag
+ Amazonka.IAM.Types.Tag: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.Types.Tag.Tag
+ Amazonka.IAM.Types.Tag: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.Tag.Tag
+ Amazonka.IAM.Types.Tag: instance Control.DeepSeq.NFData Amazonka.IAM.Types.Tag.Tag
+ Amazonka.IAM.Types.Tag: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.Tag.Tag
+ Amazonka.IAM.Types.Tag: instance GHC.Classes.Eq Amazonka.IAM.Types.Tag.Tag
+ Amazonka.IAM.Types.Tag: instance GHC.Generics.Generic Amazonka.IAM.Types.Tag.Tag
+ Amazonka.IAM.Types.Tag: instance GHC.Read.Read Amazonka.IAM.Types.Tag.Tag
+ Amazonka.IAM.Types.Tag: instance GHC.Show.Show Amazonka.IAM.Types.Tag.Tag
+ Amazonka.IAM.Types.Tag: newTag :: Text -> Text -> Tag
+ Amazonka.IAM.Types.Tag: tag_key :: Lens' Tag Text
+ Amazonka.IAM.Types.Tag: tag_value :: Lens' Tag Text
+ Amazonka.IAM.Types.TrackedActionLastAccessed: TrackedActionLastAccessed' :: Maybe Text -> Maybe Text -> Maybe Text -> Maybe ISO8601 -> TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: [$sel:actionName:TrackedActionLastAccessed'] :: TrackedActionLastAccessed -> Maybe Text
+ Amazonka.IAM.Types.TrackedActionLastAccessed: [$sel:lastAccessedEntity:TrackedActionLastAccessed'] :: TrackedActionLastAccessed -> Maybe Text
+ Amazonka.IAM.Types.TrackedActionLastAccessed: [$sel:lastAccessedRegion:TrackedActionLastAccessed'] :: TrackedActionLastAccessed -> Maybe Text
+ Amazonka.IAM.Types.TrackedActionLastAccessed: [$sel:lastAccessedTime:TrackedActionLastAccessed'] :: TrackedActionLastAccessed -> Maybe ISO8601
+ Amazonka.IAM.Types.TrackedActionLastAccessed: data TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.TrackedActionLastAccessed.TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: instance Control.DeepSeq.NFData Amazonka.IAM.Types.TrackedActionLastAccessed.TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.TrackedActionLastAccessed.TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: instance GHC.Classes.Eq Amazonka.IAM.Types.TrackedActionLastAccessed.TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: instance GHC.Generics.Generic Amazonka.IAM.Types.TrackedActionLastAccessed.TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: instance GHC.Read.Read Amazonka.IAM.Types.TrackedActionLastAccessed.TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: instance GHC.Show.Show Amazonka.IAM.Types.TrackedActionLastAccessed.TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: newTrackedActionLastAccessed :: TrackedActionLastAccessed
+ Amazonka.IAM.Types.TrackedActionLastAccessed: trackedActionLastAccessed_actionName :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Types.TrackedActionLastAccessed: trackedActionLastAccessed_lastAccessedEntity :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Types.TrackedActionLastAccessed: trackedActionLastAccessed_lastAccessedRegion :: Lens' TrackedActionLastAccessed (Maybe Text)
+ Amazonka.IAM.Types.TrackedActionLastAccessed: trackedActionLastAccessed_lastAccessedTime :: Lens' TrackedActionLastAccessed (Maybe UTCTime)
+ Amazonka.IAM.Types.User: User' :: Maybe ISO8601 -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe [Tag] -> Text -> Text -> Text -> ISO8601 -> User
+ Amazonka.IAM.Types.User: [$sel:arn:User'] :: User -> Text
+ Amazonka.IAM.Types.User: [$sel:createDate:User'] :: User -> ISO8601
+ Amazonka.IAM.Types.User: [$sel:passwordLastUsed:User'] :: User -> Maybe ISO8601
+ Amazonka.IAM.Types.User: [$sel:path:User'] :: User -> Maybe Text
+ Amazonka.IAM.Types.User: [$sel:permissionsBoundary:User'] :: User -> Maybe AttachedPermissionsBoundary
+ Amazonka.IAM.Types.User: [$sel:tags:User'] :: User -> Maybe [Tag]
+ Amazonka.IAM.Types.User: [$sel:userId:User'] :: User -> Text
+ Amazonka.IAM.Types.User: [$sel:userName:User'] :: User -> Text
+ Amazonka.IAM.Types.User: data User
+ Amazonka.IAM.Types.User: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.User.User
+ Amazonka.IAM.Types.User: instance Control.DeepSeq.NFData Amazonka.IAM.Types.User.User
+ Amazonka.IAM.Types.User: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.User.User
+ Amazonka.IAM.Types.User: instance GHC.Classes.Eq Amazonka.IAM.Types.User.User
+ Amazonka.IAM.Types.User: instance GHC.Generics.Generic Amazonka.IAM.Types.User.User
+ Amazonka.IAM.Types.User: instance GHC.Read.Read Amazonka.IAM.Types.User.User
+ Amazonka.IAM.Types.User: instance GHC.Show.Show Amazonka.IAM.Types.User.User
+ Amazonka.IAM.Types.User: newUser :: Text -> Text -> Text -> UTCTime -> User
+ Amazonka.IAM.Types.User: user_arn :: Lens' User Text
+ Amazonka.IAM.Types.User: user_createDate :: Lens' User UTCTime
+ Amazonka.IAM.Types.User: user_passwordLastUsed :: Lens' User (Maybe UTCTime)
+ Amazonka.IAM.Types.User: user_path :: Lens' User (Maybe Text)
+ Amazonka.IAM.Types.User: user_permissionsBoundary :: Lens' User (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Types.User: user_tags :: Lens' User (Maybe [Tag])
+ Amazonka.IAM.Types.User: user_userId :: Lens' User Text
+ Amazonka.IAM.Types.User: user_userName :: Lens' User Text
+ Amazonka.IAM.Types.UserDetail: UserDetail' :: Maybe Text -> Maybe [AttachedPolicy] -> Maybe ISO8601 -> Maybe [Text] -> Maybe Text -> Maybe AttachedPermissionsBoundary -> Maybe [Tag] -> Maybe Text -> Maybe Text -> Maybe [PolicyDetail] -> UserDetail
+ Amazonka.IAM.Types.UserDetail: [$sel:arn:UserDetail'] :: UserDetail -> Maybe Text
+ Amazonka.IAM.Types.UserDetail: [$sel:attachedManagedPolicies:UserDetail'] :: UserDetail -> Maybe [AttachedPolicy]
+ Amazonka.IAM.Types.UserDetail: [$sel:createDate:UserDetail'] :: UserDetail -> Maybe ISO8601
+ Amazonka.IAM.Types.UserDetail: [$sel:groupList:UserDetail'] :: UserDetail -> Maybe [Text]
+ Amazonka.IAM.Types.UserDetail: [$sel:path:UserDetail'] :: UserDetail -> Maybe Text
+ Amazonka.IAM.Types.UserDetail: [$sel:permissionsBoundary:UserDetail'] :: UserDetail -> Maybe AttachedPermissionsBoundary
+ Amazonka.IAM.Types.UserDetail: [$sel:tags:UserDetail'] :: UserDetail -> Maybe [Tag]
+ Amazonka.IAM.Types.UserDetail: [$sel:userId:UserDetail'] :: UserDetail -> Maybe Text
+ Amazonka.IAM.Types.UserDetail: [$sel:userName:UserDetail'] :: UserDetail -> Maybe Text
+ Amazonka.IAM.Types.UserDetail: [$sel:userPolicyList:UserDetail'] :: UserDetail -> Maybe [PolicyDetail]
+ Amazonka.IAM.Types.UserDetail: data UserDetail
+ Amazonka.IAM.Types.UserDetail: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.UserDetail.UserDetail
+ Amazonka.IAM.Types.UserDetail: instance Control.DeepSeq.NFData Amazonka.IAM.Types.UserDetail.UserDetail
+ Amazonka.IAM.Types.UserDetail: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.UserDetail.UserDetail
+ Amazonka.IAM.Types.UserDetail: instance GHC.Classes.Eq Amazonka.IAM.Types.UserDetail.UserDetail
+ Amazonka.IAM.Types.UserDetail: instance GHC.Generics.Generic Amazonka.IAM.Types.UserDetail.UserDetail
+ Amazonka.IAM.Types.UserDetail: instance GHC.Read.Read Amazonka.IAM.Types.UserDetail.UserDetail
+ Amazonka.IAM.Types.UserDetail: instance GHC.Show.Show Amazonka.IAM.Types.UserDetail.UserDetail
+ Amazonka.IAM.Types.UserDetail: newUserDetail :: UserDetail
+ Amazonka.IAM.Types.UserDetail: userDetail_arn :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Types.UserDetail: userDetail_attachedManagedPolicies :: Lens' UserDetail (Maybe [AttachedPolicy])
+ Amazonka.IAM.Types.UserDetail: userDetail_createDate :: Lens' UserDetail (Maybe UTCTime)
+ Amazonka.IAM.Types.UserDetail: userDetail_groupList :: Lens' UserDetail (Maybe [Text])
+ Amazonka.IAM.Types.UserDetail: userDetail_path :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Types.UserDetail: userDetail_permissionsBoundary :: Lens' UserDetail (Maybe AttachedPermissionsBoundary)
+ Amazonka.IAM.Types.UserDetail: userDetail_tags :: Lens' UserDetail (Maybe [Tag])
+ Amazonka.IAM.Types.UserDetail: userDetail_userId :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Types.UserDetail: userDetail_userName :: Lens' UserDetail (Maybe Text)
+ Amazonka.IAM.Types.UserDetail: userDetail_userPolicyList :: Lens' UserDetail (Maybe [PolicyDetail])
+ Amazonka.IAM.Types.VirtualMFADevice: VirtualMFADevice' :: Maybe (Sensitive Base64) -> Maybe ISO8601 -> Maybe (Sensitive Base64) -> Maybe [Tag] -> Maybe User -> Text -> VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: [$sel:base32StringSeed:VirtualMFADevice'] :: VirtualMFADevice -> Maybe (Sensitive Base64)
+ Amazonka.IAM.Types.VirtualMFADevice: [$sel:enableDate:VirtualMFADevice'] :: VirtualMFADevice -> Maybe ISO8601
+ Amazonka.IAM.Types.VirtualMFADevice: [$sel:qRCodePNG:VirtualMFADevice'] :: VirtualMFADevice -> Maybe (Sensitive Base64)
+ Amazonka.IAM.Types.VirtualMFADevice: [$sel:serialNumber:VirtualMFADevice'] :: VirtualMFADevice -> Text
+ Amazonka.IAM.Types.VirtualMFADevice: [$sel:tags:VirtualMFADevice'] :: VirtualMFADevice -> Maybe [Tag]
+ Amazonka.IAM.Types.VirtualMFADevice: [$sel:user:VirtualMFADevice'] :: VirtualMFADevice -> Maybe User
+ Amazonka.IAM.Types.VirtualMFADevice: data VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: instance Amazonka.Data.XML.FromXML Amazonka.IAM.Types.VirtualMFADevice.VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.Types.VirtualMFADevice.VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.Types.VirtualMFADevice.VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: instance GHC.Classes.Eq Amazonka.IAM.Types.VirtualMFADevice.VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: instance GHC.Generics.Generic Amazonka.IAM.Types.VirtualMFADevice.VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: instance GHC.Show.Show Amazonka.IAM.Types.VirtualMFADevice.VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: newVirtualMFADevice :: Text -> VirtualMFADevice
+ Amazonka.IAM.Types.VirtualMFADevice: virtualMFADevice_base32StringSeed :: Lens' VirtualMFADevice (Maybe ByteString)
+ Amazonka.IAM.Types.VirtualMFADevice: virtualMFADevice_enableDate :: Lens' VirtualMFADevice (Maybe UTCTime)
+ Amazonka.IAM.Types.VirtualMFADevice: virtualMFADevice_qRCodePNG :: Lens' VirtualMFADevice (Maybe ByteString)
+ Amazonka.IAM.Types.VirtualMFADevice: virtualMFADevice_serialNumber :: Lens' VirtualMFADevice Text
+ Amazonka.IAM.Types.VirtualMFADevice: virtualMFADevice_tags :: Lens' VirtualMFADevice (Maybe [Tag])
+ Amazonka.IAM.Types.VirtualMFADevice: virtualMFADevice_user :: Lens' VirtualMFADevice (Maybe User)
+ Amazonka.IAM.UntagInstanceProfile: UntagInstanceProfile' :: Text -> [Text] -> UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: UntagInstanceProfileResponse' :: UntagInstanceProfileResponse
+ Amazonka.IAM.UntagInstanceProfile: [$sel:instanceProfileName:UntagInstanceProfile'] :: UntagInstanceProfile -> Text
+ Amazonka.IAM.UntagInstanceProfile: [$sel:tagKeys:UntagInstanceProfile'] :: UntagInstanceProfile -> [Text]
+ Amazonka.IAM.UntagInstanceProfile: data UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: data UntagInstanceProfileResponse
+ Amazonka.IAM.UntagInstanceProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance Control.DeepSeq.NFData Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfileResponse
+ Amazonka.IAM.UntagInstanceProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance GHC.Classes.Eq Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfileResponse
+ Amazonka.IAM.UntagInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance GHC.Generics.Generic Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfileResponse
+ Amazonka.IAM.UntagInstanceProfile: instance GHC.Read.Read Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance GHC.Read.Read Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfileResponse
+ Amazonka.IAM.UntagInstanceProfile: instance GHC.Show.Show Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: instance GHC.Show.Show Amazonka.IAM.UntagInstanceProfile.UntagInstanceProfileResponse
+ Amazonka.IAM.UntagInstanceProfile: newUntagInstanceProfile :: Text -> UntagInstanceProfile
+ Amazonka.IAM.UntagInstanceProfile: newUntagInstanceProfileResponse :: UntagInstanceProfileResponse
+ Amazonka.IAM.UntagInstanceProfile: untagInstanceProfile_instanceProfileName :: Lens' UntagInstanceProfile Text
+ Amazonka.IAM.UntagInstanceProfile: untagInstanceProfile_tagKeys :: Lens' UntagInstanceProfile [Text]
+ Amazonka.IAM.UntagMFADevice: UntagMFADevice' :: Text -> [Text] -> UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: UntagMFADeviceResponse' :: UntagMFADeviceResponse
+ Amazonka.IAM.UntagMFADevice: [$sel:serialNumber:UntagMFADevice'] :: UntagMFADevice -> Text
+ Amazonka.IAM.UntagMFADevice: [$sel:tagKeys:UntagMFADevice'] :: UntagMFADevice -> [Text]
+ Amazonka.IAM.UntagMFADevice: data UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: data UntagMFADeviceResponse
+ Amazonka.IAM.UntagMFADevice: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance Amazonka.Types.AWSRequest Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance Control.DeepSeq.NFData Amazonka.IAM.UntagMFADevice.UntagMFADeviceResponse
+ Amazonka.IAM.UntagMFADevice: instance Data.Hashable.Class.Hashable Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance GHC.Classes.Eq Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance GHC.Classes.Eq Amazonka.IAM.UntagMFADevice.UntagMFADeviceResponse
+ Amazonka.IAM.UntagMFADevice: instance GHC.Generics.Generic Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance GHC.Generics.Generic Amazonka.IAM.UntagMFADevice.UntagMFADeviceResponse
+ Amazonka.IAM.UntagMFADevice: instance GHC.Read.Read Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance GHC.Read.Read Amazonka.IAM.UntagMFADevice.UntagMFADeviceResponse
+ Amazonka.IAM.UntagMFADevice: instance GHC.Show.Show Amazonka.IAM.UntagMFADevice.UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: instance GHC.Show.Show Amazonka.IAM.UntagMFADevice.UntagMFADeviceResponse
+ Amazonka.IAM.UntagMFADevice: newUntagMFADevice :: Text -> UntagMFADevice
+ Amazonka.IAM.UntagMFADevice: newUntagMFADeviceResponse :: UntagMFADeviceResponse
+ Amazonka.IAM.UntagMFADevice: untagMFADevice_serialNumber :: Lens' UntagMFADevice Text
+ Amazonka.IAM.UntagMFADevice: untagMFADevice_tagKeys :: Lens' UntagMFADevice [Text]
+ Amazonka.IAM.UntagOpenIDConnectProvider: UntagOpenIDConnectProvider' :: Text -> [Text] -> UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: UntagOpenIDConnectProviderResponse' :: UntagOpenIDConnectProviderResponse
+ Amazonka.IAM.UntagOpenIDConnectProvider: [$sel:openIDConnectProviderArn:UntagOpenIDConnectProvider'] :: UntagOpenIDConnectProvider -> Text
+ Amazonka.IAM.UntagOpenIDConnectProvider: [$sel:tagKeys:UntagOpenIDConnectProvider'] :: UntagOpenIDConnectProvider -> [Text]
+ Amazonka.IAM.UntagOpenIDConnectProvider: data UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: data UntagOpenIDConnectProviderResponse
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance Control.DeepSeq.NFData Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProviderResponse
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance GHC.Classes.Eq Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProviderResponse
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance GHC.Generics.Generic Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProviderResponse
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance GHC.Read.Read Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProviderResponse
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: instance GHC.Show.Show Amazonka.IAM.UntagOpenIDConnectProvider.UntagOpenIDConnectProviderResponse
+ Amazonka.IAM.UntagOpenIDConnectProvider: newUntagOpenIDConnectProvider :: Text -> UntagOpenIDConnectProvider
+ Amazonka.IAM.UntagOpenIDConnectProvider: newUntagOpenIDConnectProviderResponse :: UntagOpenIDConnectProviderResponse
+ Amazonka.IAM.UntagOpenIDConnectProvider: untagOpenIDConnectProvider_openIDConnectProviderArn :: Lens' UntagOpenIDConnectProvider Text
+ Amazonka.IAM.UntagOpenIDConnectProvider: untagOpenIDConnectProvider_tagKeys :: Lens' UntagOpenIDConnectProvider [Text]
+ Amazonka.IAM.UntagPolicy: UntagPolicy' :: Text -> [Text] -> UntagPolicy
+ Amazonka.IAM.UntagPolicy: UntagPolicyResponse' :: UntagPolicyResponse
+ Amazonka.IAM.UntagPolicy: [$sel:policyArn:UntagPolicy'] :: UntagPolicy -> Text
+ Amazonka.IAM.UntagPolicy: [$sel:tagKeys:UntagPolicy'] :: UntagPolicy -> [Text]
+ Amazonka.IAM.UntagPolicy: data UntagPolicy
+ Amazonka.IAM.UntagPolicy: data UntagPolicyResponse
+ Amazonka.IAM.UntagPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.UntagPolicy.UntagPolicyResponse
+ Amazonka.IAM.UntagPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance GHC.Classes.Eq Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance GHC.Classes.Eq Amazonka.IAM.UntagPolicy.UntagPolicyResponse
+ Amazonka.IAM.UntagPolicy: instance GHC.Generics.Generic Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance GHC.Generics.Generic Amazonka.IAM.UntagPolicy.UntagPolicyResponse
+ Amazonka.IAM.UntagPolicy: instance GHC.Read.Read Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance GHC.Read.Read Amazonka.IAM.UntagPolicy.UntagPolicyResponse
+ Amazonka.IAM.UntagPolicy: instance GHC.Show.Show Amazonka.IAM.UntagPolicy.UntagPolicy
+ Amazonka.IAM.UntagPolicy: instance GHC.Show.Show Amazonka.IAM.UntagPolicy.UntagPolicyResponse
+ Amazonka.IAM.UntagPolicy: newUntagPolicy :: Text -> UntagPolicy
+ Amazonka.IAM.UntagPolicy: newUntagPolicyResponse :: UntagPolicyResponse
+ Amazonka.IAM.UntagPolicy: untagPolicy_policyArn :: Lens' UntagPolicy Text
+ Amazonka.IAM.UntagPolicy: untagPolicy_tagKeys :: Lens' UntagPolicy [Text]
+ Amazonka.IAM.UntagRole: UntagRole' :: Text -> [Text] -> UntagRole
+ Amazonka.IAM.UntagRole: UntagRoleResponse' :: UntagRoleResponse
+ Amazonka.IAM.UntagRole: [$sel:roleName:UntagRole'] :: UntagRole -> Text
+ Amazonka.IAM.UntagRole: [$sel:tagKeys:UntagRole'] :: UntagRole -> [Text]
+ Amazonka.IAM.UntagRole: data UntagRole
+ Amazonka.IAM.UntagRole: data UntagRoleResponse
+ Amazonka.IAM.UntagRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance Control.DeepSeq.NFData Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance Control.DeepSeq.NFData Amazonka.IAM.UntagRole.UntagRoleResponse
+ Amazonka.IAM.UntagRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance GHC.Classes.Eq Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance GHC.Classes.Eq Amazonka.IAM.UntagRole.UntagRoleResponse
+ Amazonka.IAM.UntagRole: instance GHC.Generics.Generic Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance GHC.Generics.Generic Amazonka.IAM.UntagRole.UntagRoleResponse
+ Amazonka.IAM.UntagRole: instance GHC.Read.Read Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance GHC.Read.Read Amazonka.IAM.UntagRole.UntagRoleResponse
+ Amazonka.IAM.UntagRole: instance GHC.Show.Show Amazonka.IAM.UntagRole.UntagRole
+ Amazonka.IAM.UntagRole: instance GHC.Show.Show Amazonka.IAM.UntagRole.UntagRoleResponse
+ Amazonka.IAM.UntagRole: newUntagRole :: Text -> UntagRole
+ Amazonka.IAM.UntagRole: newUntagRoleResponse :: UntagRoleResponse
+ Amazonka.IAM.UntagRole: untagRole_roleName :: Lens' UntagRole Text
+ Amazonka.IAM.UntagRole: untagRole_tagKeys :: Lens' UntagRole [Text]
+ Amazonka.IAM.UntagSAMLProvider: UntagSAMLProvider' :: Text -> [Text] -> UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: UntagSAMLProviderResponse' :: UntagSAMLProviderResponse
+ Amazonka.IAM.UntagSAMLProvider: [$sel:sAMLProviderArn:UntagSAMLProvider'] :: UntagSAMLProvider -> Text
+ Amazonka.IAM.UntagSAMLProvider: [$sel:tagKeys:UntagSAMLProvider'] :: UntagSAMLProvider -> [Text]
+ Amazonka.IAM.UntagSAMLProvider: data UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: data UntagSAMLProviderResponse
+ Amazonka.IAM.UntagSAMLProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.UntagSAMLProvider.UntagSAMLProviderResponse
+ Amazonka.IAM.UntagSAMLProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.UntagSAMLProvider.UntagSAMLProviderResponse
+ Amazonka.IAM.UntagSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.UntagSAMLProvider.UntagSAMLProviderResponse
+ Amazonka.IAM.UntagSAMLProvider: instance GHC.Read.Read Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance GHC.Read.Read Amazonka.IAM.UntagSAMLProvider.UntagSAMLProviderResponse
+ Amazonka.IAM.UntagSAMLProvider: instance GHC.Show.Show Amazonka.IAM.UntagSAMLProvider.UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: instance GHC.Show.Show Amazonka.IAM.UntagSAMLProvider.UntagSAMLProviderResponse
+ Amazonka.IAM.UntagSAMLProvider: newUntagSAMLProvider :: Text -> UntagSAMLProvider
+ Amazonka.IAM.UntagSAMLProvider: newUntagSAMLProviderResponse :: UntagSAMLProviderResponse
+ Amazonka.IAM.UntagSAMLProvider: untagSAMLProvider_sAMLProviderArn :: Lens' UntagSAMLProvider Text
+ Amazonka.IAM.UntagSAMLProvider: untagSAMLProvider_tagKeys :: Lens' UntagSAMLProvider [Text]
+ Amazonka.IAM.UntagServerCertificate: UntagServerCertificate' :: Text -> [Text] -> UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: UntagServerCertificateResponse' :: UntagServerCertificateResponse
+ Amazonka.IAM.UntagServerCertificate: [$sel:serverCertificateName:UntagServerCertificate'] :: UntagServerCertificate -> Text
+ Amazonka.IAM.UntagServerCertificate: [$sel:tagKeys:UntagServerCertificate'] :: UntagServerCertificate -> [Text]
+ Amazonka.IAM.UntagServerCertificate: data UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: data UntagServerCertificateResponse
+ Amazonka.IAM.UntagServerCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UntagServerCertificate.UntagServerCertificateResponse
+ Amazonka.IAM.UntagServerCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.UntagServerCertificate.UntagServerCertificateResponse
+ Amazonka.IAM.UntagServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.UntagServerCertificate.UntagServerCertificateResponse
+ Amazonka.IAM.UntagServerCertificate: instance GHC.Read.Read Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance GHC.Read.Read Amazonka.IAM.UntagServerCertificate.UntagServerCertificateResponse
+ Amazonka.IAM.UntagServerCertificate: instance GHC.Show.Show Amazonka.IAM.UntagServerCertificate.UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: instance GHC.Show.Show Amazonka.IAM.UntagServerCertificate.UntagServerCertificateResponse
+ Amazonka.IAM.UntagServerCertificate: newUntagServerCertificate :: Text -> UntagServerCertificate
+ Amazonka.IAM.UntagServerCertificate: newUntagServerCertificateResponse :: UntagServerCertificateResponse
+ Amazonka.IAM.UntagServerCertificate: untagServerCertificate_serverCertificateName :: Lens' UntagServerCertificate Text
+ Amazonka.IAM.UntagServerCertificate: untagServerCertificate_tagKeys :: Lens' UntagServerCertificate [Text]
+ Amazonka.IAM.UntagUser: UntagUser' :: Text -> [Text] -> UntagUser
+ Amazonka.IAM.UntagUser: UntagUserResponse' :: UntagUserResponse
+ Amazonka.IAM.UntagUser: [$sel:tagKeys:UntagUser'] :: UntagUser -> [Text]
+ Amazonka.IAM.UntagUser: [$sel:userName:UntagUser'] :: UntagUser -> Text
+ Amazonka.IAM.UntagUser: data UntagUser
+ Amazonka.IAM.UntagUser: data UntagUserResponse
+ Amazonka.IAM.UntagUser: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance Amazonka.Types.AWSRequest Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance Control.DeepSeq.NFData Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance Control.DeepSeq.NFData Amazonka.IAM.UntagUser.UntagUserResponse
+ Amazonka.IAM.UntagUser: instance Data.Hashable.Class.Hashable Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance GHC.Classes.Eq Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance GHC.Classes.Eq Amazonka.IAM.UntagUser.UntagUserResponse
+ Amazonka.IAM.UntagUser: instance GHC.Generics.Generic Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance GHC.Generics.Generic Amazonka.IAM.UntagUser.UntagUserResponse
+ Amazonka.IAM.UntagUser: instance GHC.Read.Read Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance GHC.Read.Read Amazonka.IAM.UntagUser.UntagUserResponse
+ Amazonka.IAM.UntagUser: instance GHC.Show.Show Amazonka.IAM.UntagUser.UntagUser
+ Amazonka.IAM.UntagUser: instance GHC.Show.Show Amazonka.IAM.UntagUser.UntagUserResponse
+ Amazonka.IAM.UntagUser: newUntagUser :: Text -> UntagUser
+ Amazonka.IAM.UntagUser: newUntagUserResponse :: UntagUserResponse
+ Amazonka.IAM.UntagUser: untagUser_tagKeys :: Lens' UntagUser [Text]
+ Amazonka.IAM.UntagUser: untagUser_userName :: Lens' UntagUser Text
+ Amazonka.IAM.UpdateAccessKey: UpdateAccessKey' :: Maybe Text -> AccessKey -> StatusType -> UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: UpdateAccessKeyResponse' :: UpdateAccessKeyResponse
+ Amazonka.IAM.UpdateAccessKey: [$sel:accessKeyId:UpdateAccessKey'] :: UpdateAccessKey -> AccessKey
+ Amazonka.IAM.UpdateAccessKey: [$sel:status:UpdateAccessKey'] :: UpdateAccessKey -> StatusType
+ Amazonka.IAM.UpdateAccessKey: [$sel:userName:UpdateAccessKey'] :: UpdateAccessKey -> Maybe Text
+ Amazonka.IAM.UpdateAccessKey: data UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: data UpdateAccessKeyResponse
+ Amazonka.IAM.UpdateAccessKey: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateAccessKey.UpdateAccessKeyResponse
+ Amazonka.IAM.UpdateAccessKey: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance GHC.Classes.Eq Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance GHC.Classes.Eq Amazonka.IAM.UpdateAccessKey.UpdateAccessKeyResponse
+ Amazonka.IAM.UpdateAccessKey: instance GHC.Generics.Generic Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance GHC.Generics.Generic Amazonka.IAM.UpdateAccessKey.UpdateAccessKeyResponse
+ Amazonka.IAM.UpdateAccessKey: instance GHC.Read.Read Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance GHC.Read.Read Amazonka.IAM.UpdateAccessKey.UpdateAccessKeyResponse
+ Amazonka.IAM.UpdateAccessKey: instance GHC.Show.Show Amazonka.IAM.UpdateAccessKey.UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: instance GHC.Show.Show Amazonka.IAM.UpdateAccessKey.UpdateAccessKeyResponse
+ Amazonka.IAM.UpdateAccessKey: newUpdateAccessKey :: AccessKey -> StatusType -> UpdateAccessKey
+ Amazonka.IAM.UpdateAccessKey: newUpdateAccessKeyResponse :: UpdateAccessKeyResponse
+ Amazonka.IAM.UpdateAccessKey: updateAccessKey_accessKeyId :: Lens' UpdateAccessKey AccessKey
+ Amazonka.IAM.UpdateAccessKey: updateAccessKey_status :: Lens' UpdateAccessKey StatusType
+ Amazonka.IAM.UpdateAccessKey: updateAccessKey_userName :: Lens' UpdateAccessKey (Maybe Text)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: UpdateAccountPasswordPolicy' :: Maybe Bool -> Maybe Bool -> Maybe Natural -> Maybe Natural -> Maybe Natural -> Maybe Bool -> Maybe Bool -> Maybe Bool -> Maybe Bool -> UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: UpdateAccountPasswordPolicyResponse' :: UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:allowUsersToChangePassword:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Bool
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:hardExpiry:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Bool
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:maxPasswordAge:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Natural
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:minimumPasswordLength:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Natural
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:passwordReusePrevention:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Natural
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:requireLowercaseCharacters:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Bool
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:requireNumbers:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Bool
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:requireSymbols:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Bool
+ Amazonka.IAM.UpdateAccountPasswordPolicy: [$sel:requireUppercaseCharacters:UpdateAccountPasswordPolicy'] :: UpdateAccountPasswordPolicy -> Maybe Bool
+ Amazonka.IAM.UpdateAccountPasswordPolicy: data UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: data UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance GHC.Classes.Eq Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance GHC.Classes.Eq Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance GHC.Generics.Generic Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance GHC.Generics.Generic Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance GHC.Read.Read Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance GHC.Read.Read Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance GHC.Show.Show Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: instance GHC.Show.Show Amazonka.IAM.UpdateAccountPasswordPolicy.UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM.UpdateAccountPasswordPolicy: newUpdateAccountPasswordPolicy :: UpdateAccountPasswordPolicy
+ Amazonka.IAM.UpdateAccountPasswordPolicy: newUpdateAccountPasswordPolicyResponse :: UpdateAccountPasswordPolicyResponse
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_allowUsersToChangePassword :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_hardExpiry :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_maxPasswordAge :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_minimumPasswordLength :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_passwordReusePrevention :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_requireLowercaseCharacters :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_requireNumbers :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_requireSymbols :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.UpdateAccountPasswordPolicy: updateAccountPasswordPolicy_requireUppercaseCharacters :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)
+ Amazonka.IAM.UpdateAssumeRolePolicy: UpdateAssumeRolePolicy' :: Text -> Text -> UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: UpdateAssumeRolePolicyResponse' :: UpdateAssumeRolePolicyResponse
+ Amazonka.IAM.UpdateAssumeRolePolicy: [$sel:policyDocument:UpdateAssumeRolePolicy'] :: UpdateAssumeRolePolicy -> Text
+ Amazonka.IAM.UpdateAssumeRolePolicy: [$sel:roleName:UpdateAssumeRolePolicy'] :: UpdateAssumeRolePolicy -> Text
+ Amazonka.IAM.UpdateAssumeRolePolicy: data UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: data UpdateAssumeRolePolicyResponse
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance GHC.Classes.Eq Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance GHC.Generics.Generic Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance GHC.Read.Read Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance GHC.Read.Read Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance GHC.Show.Show Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: instance GHC.Show.Show Amazonka.IAM.UpdateAssumeRolePolicy.UpdateAssumeRolePolicyResponse
+ Amazonka.IAM.UpdateAssumeRolePolicy: newUpdateAssumeRolePolicy :: Text -> Text -> UpdateAssumeRolePolicy
+ Amazonka.IAM.UpdateAssumeRolePolicy: newUpdateAssumeRolePolicyResponse :: UpdateAssumeRolePolicyResponse
+ Amazonka.IAM.UpdateAssumeRolePolicy: updateAssumeRolePolicy_policyDocument :: Lens' UpdateAssumeRolePolicy Text
+ Amazonka.IAM.UpdateAssumeRolePolicy: updateAssumeRolePolicy_roleName :: Lens' UpdateAssumeRolePolicy Text
+ Amazonka.IAM.UpdateGroup: UpdateGroup' :: Maybe Text -> Maybe Text -> Text -> UpdateGroup
+ Amazonka.IAM.UpdateGroup: UpdateGroupResponse' :: UpdateGroupResponse
+ Amazonka.IAM.UpdateGroup: [$sel:groupName:UpdateGroup'] :: UpdateGroup -> Text
+ Amazonka.IAM.UpdateGroup: [$sel:newGroupName':UpdateGroup'] :: UpdateGroup -> Maybe Text
+ Amazonka.IAM.UpdateGroup: [$sel:newPath':UpdateGroup'] :: UpdateGroup -> Maybe Text
+ Amazonka.IAM.UpdateGroup: data UpdateGroup
+ Amazonka.IAM.UpdateGroup: data UpdateGroupResponse
+ Amazonka.IAM.UpdateGroup: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateGroup.UpdateGroupResponse
+ Amazonka.IAM.UpdateGroup: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance GHC.Classes.Eq Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance GHC.Classes.Eq Amazonka.IAM.UpdateGroup.UpdateGroupResponse
+ Amazonka.IAM.UpdateGroup: instance GHC.Generics.Generic Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance GHC.Generics.Generic Amazonka.IAM.UpdateGroup.UpdateGroupResponse
+ Amazonka.IAM.UpdateGroup: instance GHC.Read.Read Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance GHC.Read.Read Amazonka.IAM.UpdateGroup.UpdateGroupResponse
+ Amazonka.IAM.UpdateGroup: instance GHC.Show.Show Amazonka.IAM.UpdateGroup.UpdateGroup
+ Amazonka.IAM.UpdateGroup: instance GHC.Show.Show Amazonka.IAM.UpdateGroup.UpdateGroupResponse
+ Amazonka.IAM.UpdateGroup: newUpdateGroup :: Text -> UpdateGroup
+ Amazonka.IAM.UpdateGroup: newUpdateGroupResponse :: UpdateGroupResponse
+ Amazonka.IAM.UpdateGroup: updateGroup_groupName :: Lens' UpdateGroup Text
+ Amazonka.IAM.UpdateGroup: updateGroup_newGroupName :: Lens' UpdateGroup (Maybe Text)
+ Amazonka.IAM.UpdateGroup: updateGroup_newPath :: Lens' UpdateGroup (Maybe Text)
+ Amazonka.IAM.UpdateLoginProfile: UpdateLoginProfile' :: Maybe (Sensitive Text) -> Maybe Bool -> Text -> UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: UpdateLoginProfileResponse' :: UpdateLoginProfileResponse
+ Amazonka.IAM.UpdateLoginProfile: [$sel:password:UpdateLoginProfile'] :: UpdateLoginProfile -> Maybe (Sensitive Text)
+ Amazonka.IAM.UpdateLoginProfile: [$sel:passwordResetRequired:UpdateLoginProfile'] :: UpdateLoginProfile -> Maybe Bool
+ Amazonka.IAM.UpdateLoginProfile: [$sel:userName:UpdateLoginProfile'] :: UpdateLoginProfile -> Text
+ Amazonka.IAM.UpdateLoginProfile: data UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: data UpdateLoginProfileResponse
+ Amazonka.IAM.UpdateLoginProfile: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
+ Amazonka.IAM.UpdateLoginProfile: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance GHC.Classes.Eq Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance GHC.Classes.Eq Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
+ Amazonka.IAM.UpdateLoginProfile: instance GHC.Generics.Generic Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance GHC.Generics.Generic Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
+ Amazonka.IAM.UpdateLoginProfile: instance GHC.Read.Read Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
+ Amazonka.IAM.UpdateLoginProfile: instance GHC.Show.Show Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: instance GHC.Show.Show Amazonka.IAM.UpdateLoginProfile.UpdateLoginProfileResponse
+ Amazonka.IAM.UpdateLoginProfile: newUpdateLoginProfile :: Text -> UpdateLoginProfile
+ Amazonka.IAM.UpdateLoginProfile: newUpdateLoginProfileResponse :: UpdateLoginProfileResponse
+ Amazonka.IAM.UpdateLoginProfile: updateLoginProfile_password :: Lens' UpdateLoginProfile (Maybe Text)
+ Amazonka.IAM.UpdateLoginProfile: updateLoginProfile_passwordResetRequired :: Lens' UpdateLoginProfile (Maybe Bool)
+ Amazonka.IAM.UpdateLoginProfile: updateLoginProfile_userName :: Lens' UpdateLoginProfile Text
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: UpdateOpenIDConnectProviderThumbprint' :: Text -> [Text] -> UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: UpdateOpenIDConnectProviderThumbprintResponse' :: UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: [$sel:openIDConnectProviderArn:UpdateOpenIDConnectProviderThumbprint'] :: UpdateOpenIDConnectProviderThumbprint -> Text
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: [$sel:thumbprintList:UpdateOpenIDConnectProviderThumbprint'] :: UpdateOpenIDConnectProviderThumbprint -> [Text]
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: data UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: data UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance GHC.Classes.Eq Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance GHC.Classes.Eq Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance GHC.Generics.Generic Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance GHC.Generics.Generic Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance GHC.Read.Read Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance GHC.Read.Read Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance GHC.Show.Show Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: instance GHC.Show.Show Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint.UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: newUpdateOpenIDConnectProviderThumbprint :: Text -> UpdateOpenIDConnectProviderThumbprint
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: newUpdateOpenIDConnectProviderThumbprintResponse :: UpdateOpenIDConnectProviderThumbprintResponse
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: updateOpenIDConnectProviderThumbprint_openIDConnectProviderArn :: Lens' UpdateOpenIDConnectProviderThumbprint Text
+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint: updateOpenIDConnectProviderThumbprint_thumbprintList :: Lens' UpdateOpenIDConnectProviderThumbprint [Text]
+ Amazonka.IAM.UpdateRole: UpdateRole' :: Maybe Text -> Maybe Natural -> Text -> UpdateRole
+ Amazonka.IAM.UpdateRole: UpdateRoleResponse' :: Int -> UpdateRoleResponse
+ Amazonka.IAM.UpdateRole: [$sel:description:UpdateRole'] :: UpdateRole -> Maybe Text
+ Amazonka.IAM.UpdateRole: [$sel:httpStatus:UpdateRoleResponse'] :: UpdateRoleResponse -> Int
+ Amazonka.IAM.UpdateRole: [$sel:maxSessionDuration:UpdateRole'] :: UpdateRole -> Maybe Natural
+ Amazonka.IAM.UpdateRole: [$sel:roleName:UpdateRole'] :: UpdateRole -> Text
+ Amazonka.IAM.UpdateRole: data UpdateRole
+ Amazonka.IAM.UpdateRole: data UpdateRoleResponse
+ Amazonka.IAM.UpdateRole: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateRole.UpdateRoleResponse
+ Amazonka.IAM.UpdateRole: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance GHC.Classes.Eq Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance GHC.Classes.Eq Amazonka.IAM.UpdateRole.UpdateRoleResponse
+ Amazonka.IAM.UpdateRole: instance GHC.Generics.Generic Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance GHC.Generics.Generic Amazonka.IAM.UpdateRole.UpdateRoleResponse
+ Amazonka.IAM.UpdateRole: instance GHC.Read.Read Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance GHC.Read.Read Amazonka.IAM.UpdateRole.UpdateRoleResponse
+ Amazonka.IAM.UpdateRole: instance GHC.Show.Show Amazonka.IAM.UpdateRole.UpdateRole
+ Amazonka.IAM.UpdateRole: instance GHC.Show.Show Amazonka.IAM.UpdateRole.UpdateRoleResponse
+ Amazonka.IAM.UpdateRole: newUpdateRole :: Text -> UpdateRole
+ Amazonka.IAM.UpdateRole: newUpdateRoleResponse :: Int -> UpdateRoleResponse
+ Amazonka.IAM.UpdateRole: updateRoleResponse_httpStatus :: Lens' UpdateRoleResponse Int
+ Amazonka.IAM.UpdateRole: updateRole_description :: Lens' UpdateRole (Maybe Text)
+ Amazonka.IAM.UpdateRole: updateRole_maxSessionDuration :: Lens' UpdateRole (Maybe Natural)
+ Amazonka.IAM.UpdateRole: updateRole_roleName :: Lens' UpdateRole Text
+ Amazonka.IAM.UpdateRoleDescription: UpdateRoleDescription' :: Text -> Text -> UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: UpdateRoleDescriptionResponse' :: Maybe Role -> Int -> UpdateRoleDescriptionResponse
+ Amazonka.IAM.UpdateRoleDescription: [$sel:description:UpdateRoleDescription'] :: UpdateRoleDescription -> Text
+ Amazonka.IAM.UpdateRoleDescription: [$sel:httpStatus:UpdateRoleDescriptionResponse'] :: UpdateRoleDescriptionResponse -> Int
+ Amazonka.IAM.UpdateRoleDescription: [$sel:role':UpdateRoleDescriptionResponse'] :: UpdateRoleDescriptionResponse -> Maybe Role
+ Amazonka.IAM.UpdateRoleDescription: [$sel:roleName:UpdateRoleDescription'] :: UpdateRoleDescription -> Text
+ Amazonka.IAM.UpdateRoleDescription: data UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: data UpdateRoleDescriptionResponse
+ Amazonka.IAM.UpdateRoleDescription: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
+ Amazonka.IAM.UpdateRoleDescription: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance GHC.Classes.Eq Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance GHC.Classes.Eq Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
+ Amazonka.IAM.UpdateRoleDescription: instance GHC.Generics.Generic Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance GHC.Generics.Generic Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
+ Amazonka.IAM.UpdateRoleDescription: instance GHC.Read.Read Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance GHC.Read.Read Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
+ Amazonka.IAM.UpdateRoleDescription: instance GHC.Show.Show Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: instance GHC.Show.Show Amazonka.IAM.UpdateRoleDescription.UpdateRoleDescriptionResponse
+ Amazonka.IAM.UpdateRoleDescription: newUpdateRoleDescription :: Text -> Text -> UpdateRoleDescription
+ Amazonka.IAM.UpdateRoleDescription: newUpdateRoleDescriptionResponse :: Int -> UpdateRoleDescriptionResponse
+ Amazonka.IAM.UpdateRoleDescription: updateRoleDescriptionResponse_httpStatus :: Lens' UpdateRoleDescriptionResponse Int
+ Amazonka.IAM.UpdateRoleDescription: updateRoleDescriptionResponse_role :: Lens' UpdateRoleDescriptionResponse (Maybe Role)
+ Amazonka.IAM.UpdateRoleDescription: updateRoleDescription_description :: Lens' UpdateRoleDescription Text
+ Amazonka.IAM.UpdateRoleDescription: updateRoleDescription_roleName :: Lens' UpdateRoleDescription Text
+ Amazonka.IAM.UpdateSAMLProvider: UpdateSAMLProvider' :: Text -> Text -> UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: UpdateSAMLProviderResponse' :: Maybe Text -> Int -> UpdateSAMLProviderResponse
+ Amazonka.IAM.UpdateSAMLProvider: [$sel:httpStatus:UpdateSAMLProviderResponse'] :: UpdateSAMLProviderResponse -> Int
+ Amazonka.IAM.UpdateSAMLProvider: [$sel:sAMLMetadataDocument:UpdateSAMLProvider'] :: UpdateSAMLProvider -> Text
+ Amazonka.IAM.UpdateSAMLProvider: [$sel:sAMLProviderArn:UpdateSAMLProvider'] :: UpdateSAMLProvider -> Text
+ Amazonka.IAM.UpdateSAMLProvider: [$sel:sAMLProviderArn:UpdateSAMLProviderResponse'] :: UpdateSAMLProviderResponse -> Maybe Text
+ Amazonka.IAM.UpdateSAMLProvider: data UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: data UpdateSAMLProviderResponse
+ Amazonka.IAM.UpdateSAMLProvider: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
+ Amazonka.IAM.UpdateSAMLProvider: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance GHC.Classes.Eq Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
+ Amazonka.IAM.UpdateSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance GHC.Generics.Generic Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
+ Amazonka.IAM.UpdateSAMLProvider: instance GHC.Read.Read Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance GHC.Read.Read Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
+ Amazonka.IAM.UpdateSAMLProvider: instance GHC.Show.Show Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: instance GHC.Show.Show Amazonka.IAM.UpdateSAMLProvider.UpdateSAMLProviderResponse
+ Amazonka.IAM.UpdateSAMLProvider: newUpdateSAMLProvider :: Text -> Text -> UpdateSAMLProvider
+ Amazonka.IAM.UpdateSAMLProvider: newUpdateSAMLProviderResponse :: Int -> UpdateSAMLProviderResponse
+ Amazonka.IAM.UpdateSAMLProvider: updateSAMLProviderResponse_httpStatus :: Lens' UpdateSAMLProviderResponse Int
+ Amazonka.IAM.UpdateSAMLProvider: updateSAMLProviderResponse_sAMLProviderArn :: Lens' UpdateSAMLProviderResponse (Maybe Text)
+ Amazonka.IAM.UpdateSAMLProvider: updateSAMLProvider_sAMLMetadataDocument :: Lens' UpdateSAMLProvider Text
+ Amazonka.IAM.UpdateSAMLProvider: updateSAMLProvider_sAMLProviderArn :: Lens' UpdateSAMLProvider Text
+ Amazonka.IAM.UpdateSSHPublicKey: UpdateSSHPublicKey' :: Text -> Text -> StatusType -> UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: UpdateSSHPublicKeyResponse' :: UpdateSSHPublicKeyResponse
+ Amazonka.IAM.UpdateSSHPublicKey: [$sel:sSHPublicKeyId:UpdateSSHPublicKey'] :: UpdateSSHPublicKey -> Text
+ Amazonka.IAM.UpdateSSHPublicKey: [$sel:status:UpdateSSHPublicKey'] :: UpdateSSHPublicKey -> StatusType
+ Amazonka.IAM.UpdateSSHPublicKey: [$sel:userName:UpdateSSHPublicKey'] :: UpdateSSHPublicKey -> Text
+ Amazonka.IAM.UpdateSSHPublicKey: data UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: data UpdateSSHPublicKeyResponse
+ Amazonka.IAM.UpdateSSHPublicKey: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
+ Amazonka.IAM.UpdateSSHPublicKey: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
+ Amazonka.IAM.UpdateSSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
+ Amazonka.IAM.UpdateSSHPublicKey: instance GHC.Read.Read Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance GHC.Read.Read Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
+ Amazonka.IAM.UpdateSSHPublicKey: instance GHC.Show.Show Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: instance GHC.Show.Show Amazonka.IAM.UpdateSSHPublicKey.UpdateSSHPublicKeyResponse
+ Amazonka.IAM.UpdateSSHPublicKey: newUpdateSSHPublicKey :: Text -> Text -> StatusType -> UpdateSSHPublicKey
+ Amazonka.IAM.UpdateSSHPublicKey: newUpdateSSHPublicKeyResponse :: UpdateSSHPublicKeyResponse
+ Amazonka.IAM.UpdateSSHPublicKey: updateSSHPublicKey_sSHPublicKeyId :: Lens' UpdateSSHPublicKey Text
+ Amazonka.IAM.UpdateSSHPublicKey: updateSSHPublicKey_status :: Lens' UpdateSSHPublicKey StatusType
+ Amazonka.IAM.UpdateSSHPublicKey: updateSSHPublicKey_userName :: Lens' UpdateSSHPublicKey Text
+ Amazonka.IAM.UpdateServerCertificate: UpdateServerCertificate' :: Maybe Text -> Maybe Text -> Text -> UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: UpdateServerCertificateResponse' :: UpdateServerCertificateResponse
+ Amazonka.IAM.UpdateServerCertificate: [$sel:newPath':UpdateServerCertificate'] :: UpdateServerCertificate -> Maybe Text
+ Amazonka.IAM.UpdateServerCertificate: [$sel:newServerCertificateName':UpdateServerCertificate'] :: UpdateServerCertificate -> Maybe Text
+ Amazonka.IAM.UpdateServerCertificate: [$sel:serverCertificateName:UpdateServerCertificate'] :: UpdateServerCertificate -> Text
+ Amazonka.IAM.UpdateServerCertificate: data UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: data UpdateServerCertificateResponse
+ Amazonka.IAM.UpdateServerCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
+ Amazonka.IAM.UpdateServerCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
+ Amazonka.IAM.UpdateServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
+ Amazonka.IAM.UpdateServerCertificate: instance GHC.Read.Read Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance GHC.Read.Read Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
+ Amazonka.IAM.UpdateServerCertificate: instance GHC.Show.Show Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: instance GHC.Show.Show Amazonka.IAM.UpdateServerCertificate.UpdateServerCertificateResponse
+ Amazonka.IAM.UpdateServerCertificate: newUpdateServerCertificate :: Text -> UpdateServerCertificate
+ Amazonka.IAM.UpdateServerCertificate: newUpdateServerCertificateResponse :: UpdateServerCertificateResponse
+ Amazonka.IAM.UpdateServerCertificate: updateServerCertificate_newPath :: Lens' UpdateServerCertificate (Maybe Text)
+ Amazonka.IAM.UpdateServerCertificate: updateServerCertificate_newServerCertificateName :: Lens' UpdateServerCertificate (Maybe Text)
+ Amazonka.IAM.UpdateServerCertificate: updateServerCertificate_serverCertificateName :: Lens' UpdateServerCertificate Text
+ Amazonka.IAM.UpdateServiceSpecificCredential: UpdateServiceSpecificCredential' :: Maybe Text -> Text -> StatusType -> UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: UpdateServiceSpecificCredentialResponse' :: UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM.UpdateServiceSpecificCredential: [$sel:serviceSpecificCredentialId:UpdateServiceSpecificCredential'] :: UpdateServiceSpecificCredential -> Text
+ Amazonka.IAM.UpdateServiceSpecificCredential: [$sel:status:UpdateServiceSpecificCredential'] :: UpdateServiceSpecificCredential -> StatusType
+ Amazonka.IAM.UpdateServiceSpecificCredential: [$sel:userName:UpdateServiceSpecificCredential'] :: UpdateServiceSpecificCredential -> Maybe Text
+ Amazonka.IAM.UpdateServiceSpecificCredential: data UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: data UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance GHC.Classes.Eq Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance GHC.Generics.Generic Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance GHC.Read.Read Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance GHC.Read.Read Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: instance GHC.Show.Show Amazonka.IAM.UpdateServiceSpecificCredential.UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM.UpdateServiceSpecificCredential: newUpdateServiceSpecificCredential :: Text -> StatusType -> UpdateServiceSpecificCredential
+ Amazonka.IAM.UpdateServiceSpecificCredential: newUpdateServiceSpecificCredentialResponse :: UpdateServiceSpecificCredentialResponse
+ Amazonka.IAM.UpdateServiceSpecificCredential: updateServiceSpecificCredential_serviceSpecificCredentialId :: Lens' UpdateServiceSpecificCredential Text
+ Amazonka.IAM.UpdateServiceSpecificCredential: updateServiceSpecificCredential_status :: Lens' UpdateServiceSpecificCredential StatusType
+ Amazonka.IAM.UpdateServiceSpecificCredential: updateServiceSpecificCredential_userName :: Lens' UpdateServiceSpecificCredential (Maybe Text)
+ Amazonka.IAM.UpdateSigningCertificate: UpdateSigningCertificate' :: Maybe Text -> Text -> StatusType -> UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: UpdateSigningCertificateResponse' :: UpdateSigningCertificateResponse
+ Amazonka.IAM.UpdateSigningCertificate: [$sel:certificateId:UpdateSigningCertificate'] :: UpdateSigningCertificate -> Text
+ Amazonka.IAM.UpdateSigningCertificate: [$sel:status:UpdateSigningCertificate'] :: UpdateSigningCertificate -> StatusType
+ Amazonka.IAM.UpdateSigningCertificate: [$sel:userName:UpdateSigningCertificate'] :: UpdateSigningCertificate -> Maybe Text
+ Amazonka.IAM.UpdateSigningCertificate: data UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: data UpdateSigningCertificateResponse
+ Amazonka.IAM.UpdateSigningCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
+ Amazonka.IAM.UpdateSigningCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance GHC.Classes.Eq Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance GHC.Classes.Eq Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
+ Amazonka.IAM.UpdateSigningCertificate: instance GHC.Generics.Generic Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance GHC.Generics.Generic Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
+ Amazonka.IAM.UpdateSigningCertificate: instance GHC.Read.Read Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance GHC.Read.Read Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
+ Amazonka.IAM.UpdateSigningCertificate: instance GHC.Show.Show Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: instance GHC.Show.Show Amazonka.IAM.UpdateSigningCertificate.UpdateSigningCertificateResponse
+ Amazonka.IAM.UpdateSigningCertificate: newUpdateSigningCertificate :: Text -> StatusType -> UpdateSigningCertificate
+ Amazonka.IAM.UpdateSigningCertificate: newUpdateSigningCertificateResponse :: UpdateSigningCertificateResponse
+ Amazonka.IAM.UpdateSigningCertificate: updateSigningCertificate_certificateId :: Lens' UpdateSigningCertificate Text
+ Amazonka.IAM.UpdateSigningCertificate: updateSigningCertificate_status :: Lens' UpdateSigningCertificate StatusType
+ Amazonka.IAM.UpdateSigningCertificate: updateSigningCertificate_userName :: Lens' UpdateSigningCertificate (Maybe Text)
+ Amazonka.IAM.UpdateUser: UpdateUser' :: Maybe Text -> Maybe Text -> Text -> UpdateUser
+ Amazonka.IAM.UpdateUser: UpdateUserResponse' :: UpdateUserResponse
+ Amazonka.IAM.UpdateUser: [$sel:newPath':UpdateUser'] :: UpdateUser -> Maybe Text
+ Amazonka.IAM.UpdateUser: [$sel:newUserName':UpdateUser'] :: UpdateUser -> Maybe Text
+ Amazonka.IAM.UpdateUser: [$sel:userName:UpdateUser'] :: UpdateUser -> Text
+ Amazonka.IAM.UpdateUser: data UpdateUser
+ Amazonka.IAM.UpdateUser: data UpdateUserResponse
+ Amazonka.IAM.UpdateUser: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance Amazonka.Types.AWSRequest Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance Control.DeepSeq.NFData Amazonka.IAM.UpdateUser.UpdateUserResponse
+ Amazonka.IAM.UpdateUser: instance Data.Hashable.Class.Hashable Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance GHC.Classes.Eq Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance GHC.Classes.Eq Amazonka.IAM.UpdateUser.UpdateUserResponse
+ Amazonka.IAM.UpdateUser: instance GHC.Generics.Generic Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance GHC.Generics.Generic Amazonka.IAM.UpdateUser.UpdateUserResponse
+ Amazonka.IAM.UpdateUser: instance GHC.Read.Read Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance GHC.Read.Read Amazonka.IAM.UpdateUser.UpdateUserResponse
+ Amazonka.IAM.UpdateUser: instance GHC.Show.Show Amazonka.IAM.UpdateUser.UpdateUser
+ Amazonka.IAM.UpdateUser: instance GHC.Show.Show Amazonka.IAM.UpdateUser.UpdateUserResponse
+ Amazonka.IAM.UpdateUser: newUpdateUser :: Text -> UpdateUser
+ Amazonka.IAM.UpdateUser: newUpdateUserResponse :: UpdateUserResponse
+ Amazonka.IAM.UpdateUser: updateUser_newPath :: Lens' UpdateUser (Maybe Text)
+ Amazonka.IAM.UpdateUser: updateUser_newUserName :: Lens' UpdateUser (Maybe Text)
+ Amazonka.IAM.UpdateUser: updateUser_userName :: Lens' UpdateUser Text
+ Amazonka.IAM.UploadSSHPublicKey: UploadSSHPublicKey' :: Text -> Text -> UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: UploadSSHPublicKeyResponse' :: Maybe SSHPublicKey -> Int -> UploadSSHPublicKeyResponse
+ Amazonka.IAM.UploadSSHPublicKey: [$sel:httpStatus:UploadSSHPublicKeyResponse'] :: UploadSSHPublicKeyResponse -> Int
+ Amazonka.IAM.UploadSSHPublicKey: [$sel:sSHPublicKey:UploadSSHPublicKeyResponse'] :: UploadSSHPublicKeyResponse -> Maybe SSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: [$sel:sSHPublicKeyBody:UploadSSHPublicKey'] :: UploadSSHPublicKey -> Text
+ Amazonka.IAM.UploadSSHPublicKey: [$sel:userName:UploadSSHPublicKey'] :: UploadSSHPublicKey -> Text
+ Amazonka.IAM.UploadSSHPublicKey: data UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: data UploadSSHPublicKeyResponse
+ Amazonka.IAM.UploadSSHPublicKey: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance Amazonka.Types.AWSRequest Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance Control.DeepSeq.NFData Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
+ Amazonka.IAM.UploadSSHPublicKey: instance Data.Hashable.Class.Hashable Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance GHC.Classes.Eq Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
+ Amazonka.IAM.UploadSSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance GHC.Generics.Generic Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
+ Amazonka.IAM.UploadSSHPublicKey: instance GHC.Read.Read Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance GHC.Read.Read Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
+ Amazonka.IAM.UploadSSHPublicKey: instance GHC.Show.Show Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: instance GHC.Show.Show Amazonka.IAM.UploadSSHPublicKey.UploadSSHPublicKeyResponse
+ Amazonka.IAM.UploadSSHPublicKey: newUploadSSHPublicKey :: Text -> Text -> UploadSSHPublicKey
+ Amazonka.IAM.UploadSSHPublicKey: newUploadSSHPublicKeyResponse :: Int -> UploadSSHPublicKeyResponse
+ Amazonka.IAM.UploadSSHPublicKey: uploadSSHPublicKeyResponse_httpStatus :: Lens' UploadSSHPublicKeyResponse Int
+ Amazonka.IAM.UploadSSHPublicKey: uploadSSHPublicKeyResponse_sSHPublicKey :: Lens' UploadSSHPublicKeyResponse (Maybe SSHPublicKey)
+ Amazonka.IAM.UploadSSHPublicKey: uploadSSHPublicKey_sSHPublicKeyBody :: Lens' UploadSSHPublicKey Text
+ Amazonka.IAM.UploadSSHPublicKey: uploadSSHPublicKey_userName :: Lens' UploadSSHPublicKey Text
+ Amazonka.IAM.UploadServerCertificate: UploadServerCertificate' :: Maybe Text -> Maybe Text -> Maybe [Tag] -> Text -> Text -> Sensitive Text -> UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: UploadServerCertificateResponse' :: Maybe ServerCertificateMetadata -> Maybe [Tag] -> Int -> UploadServerCertificateResponse
+ Amazonka.IAM.UploadServerCertificate: [$sel:certificateBody:UploadServerCertificate'] :: UploadServerCertificate -> Text
+ Amazonka.IAM.UploadServerCertificate: [$sel:certificateChain:UploadServerCertificate'] :: UploadServerCertificate -> Maybe Text
+ Amazonka.IAM.UploadServerCertificate: [$sel:httpStatus:UploadServerCertificateResponse'] :: UploadServerCertificateResponse -> Int
+ Amazonka.IAM.UploadServerCertificate: [$sel:path:UploadServerCertificate'] :: UploadServerCertificate -> Maybe Text
+ Amazonka.IAM.UploadServerCertificate: [$sel:privateKey:UploadServerCertificate'] :: UploadServerCertificate -> Sensitive Text
+ Amazonka.IAM.UploadServerCertificate: [$sel:serverCertificateMetadata:UploadServerCertificateResponse'] :: UploadServerCertificateResponse -> Maybe ServerCertificateMetadata
+ Amazonka.IAM.UploadServerCertificate: [$sel:serverCertificateName:UploadServerCertificate'] :: UploadServerCertificate -> Text
+ Amazonka.IAM.UploadServerCertificate: [$sel:tags:UploadServerCertificate'] :: UploadServerCertificate -> Maybe [Tag]
+ Amazonka.IAM.UploadServerCertificate: [$sel:tags:UploadServerCertificateResponse'] :: UploadServerCertificateResponse -> Maybe [Tag]
+ Amazonka.IAM.UploadServerCertificate: data UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: data UploadServerCertificateResponse
+ Amazonka.IAM.UploadServerCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UploadServerCertificate.UploadServerCertificateResponse
+ Amazonka.IAM.UploadServerCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance GHC.Classes.Eq Amazonka.IAM.UploadServerCertificate.UploadServerCertificateResponse
+ Amazonka.IAM.UploadServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance GHC.Generics.Generic Amazonka.IAM.UploadServerCertificate.UploadServerCertificateResponse
+ Amazonka.IAM.UploadServerCertificate: instance GHC.Read.Read Amazonka.IAM.UploadServerCertificate.UploadServerCertificateResponse
+ Amazonka.IAM.UploadServerCertificate: instance GHC.Show.Show Amazonka.IAM.UploadServerCertificate.UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: instance GHC.Show.Show Amazonka.IAM.UploadServerCertificate.UploadServerCertificateResponse
+ Amazonka.IAM.UploadServerCertificate: newUploadServerCertificate :: Text -> Text -> Text -> UploadServerCertificate
+ Amazonka.IAM.UploadServerCertificate: newUploadServerCertificateResponse :: Int -> UploadServerCertificateResponse
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificateResponse_httpStatus :: Lens' UploadServerCertificateResponse Int
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificateResponse_serverCertificateMetadata :: Lens' UploadServerCertificateResponse (Maybe ServerCertificateMetadata)
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificateResponse_tags :: Lens' UploadServerCertificateResponse (Maybe [Tag])
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificate_certificateBody :: Lens' UploadServerCertificate Text
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificate_certificateChain :: Lens' UploadServerCertificate (Maybe Text)
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificate_path :: Lens' UploadServerCertificate (Maybe Text)
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificate_privateKey :: Lens' UploadServerCertificate Text
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificate_serverCertificateName :: Lens' UploadServerCertificate Text
+ Amazonka.IAM.UploadServerCertificate: uploadServerCertificate_tags :: Lens' UploadServerCertificate (Maybe [Tag])
+ Amazonka.IAM.UploadSigningCertificate: UploadSigningCertificate' :: Maybe Text -> Text -> UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: UploadSigningCertificateResponse' :: Int -> SigningCertificate -> UploadSigningCertificateResponse
+ Amazonka.IAM.UploadSigningCertificate: [$sel:certificate:UploadSigningCertificateResponse'] :: UploadSigningCertificateResponse -> SigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: [$sel:certificateBody:UploadSigningCertificate'] :: UploadSigningCertificate -> Text
+ Amazonka.IAM.UploadSigningCertificate: [$sel:httpStatus:UploadSigningCertificateResponse'] :: UploadSigningCertificateResponse -> Int
+ Amazonka.IAM.UploadSigningCertificate: [$sel:userName:UploadSigningCertificate'] :: UploadSigningCertificate -> Maybe Text
+ Amazonka.IAM.UploadSigningCertificate: data UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: data UploadSigningCertificateResponse
+ Amazonka.IAM.UploadSigningCertificate: instance Amazonka.Data.Headers.ToHeaders Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance Amazonka.Data.Path.ToPath Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance Amazonka.Data.Query.ToQuery Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance Amazonka.Types.AWSRequest Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance Control.DeepSeq.NFData Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
+ Amazonka.IAM.UploadSigningCertificate: instance Data.Hashable.Class.Hashable Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance GHC.Classes.Eq Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance GHC.Classes.Eq Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
+ Amazonka.IAM.UploadSigningCertificate: instance GHC.Generics.Generic Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance GHC.Generics.Generic Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
+ Amazonka.IAM.UploadSigningCertificate: instance GHC.Read.Read Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance GHC.Read.Read Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
+ Amazonka.IAM.UploadSigningCertificate: instance GHC.Show.Show Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: instance GHC.Show.Show Amazonka.IAM.UploadSigningCertificate.UploadSigningCertificateResponse
+ Amazonka.IAM.UploadSigningCertificate: newUploadSigningCertificate :: Text -> UploadSigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: newUploadSigningCertificateResponse :: Int -> SigningCertificate -> UploadSigningCertificateResponse
+ Amazonka.IAM.UploadSigningCertificate: uploadSigningCertificateResponse_certificate :: Lens' UploadSigningCertificateResponse SigningCertificate
+ Amazonka.IAM.UploadSigningCertificate: uploadSigningCertificateResponse_httpStatus :: Lens' UploadSigningCertificateResponse Int
+ Amazonka.IAM.UploadSigningCertificate: uploadSigningCertificate_certificateBody :: Lens' UploadSigningCertificate Text
+ Amazonka.IAM.UploadSigningCertificate: uploadSigningCertificate_userName :: Lens' UploadSigningCertificate (Maybe Text)
+ Amazonka.IAM.Waiters: newInstanceProfileExists :: Wait GetInstanceProfile
+ Amazonka.IAM.Waiters: newPolicyExists :: Wait GetPolicy
+ Amazonka.IAM.Waiters: newRoleExists :: Wait GetRole
+ Amazonka.IAM.Waiters: newUserExists :: Wait GetUser
Files
- README.md +3/−4
- Setup.hs +0/−2
- amazonka-iam.cabal +303/−197
- fixture/AddClientIDToOpenIDConnectProvider.yaml +10/−0
- fixture/AddClientIDToOpenIDConnectProviderResponse.proto +0/−0
- fixture/AddClientIdToOpenIdConnectProvider.yaml +0/−0
- fixture/AddClientIdToOpenIdConnectProviderResponse.proto +0/−0
- fixture/AddRoleToInstanceProfile.yaml +10/−0
- fixture/AddUserToGroup.yaml +10/−0
- fixture/AttachGroupPolicy.yaml +10/−0
- fixture/AttachRolePolicy.yaml +10/−0
- fixture/AttachUserPolicy.yaml +10/−0
- fixture/ChangePassword.yaml +10/−0
- fixture/CreateAccessKey.yaml +10/−0
- fixture/CreateAccountAlias.yaml +10/−0
- fixture/CreateGroup.yaml +10/−0
- fixture/CreateInstanceProfile.yaml +10/−0
- fixture/CreateLoginProfile.yaml +10/−0
- fixture/CreateOpenIDConnectProvider.yaml +10/−0
- fixture/CreateOpenIDConnectProviderResponse.proto +0/−0
- fixture/CreateOpenIdConnectProvider.yaml +0/−0
- fixture/CreateOpenIdConnectProviderResponse.proto +0/−0
- fixture/CreatePolicy.yaml +10/−0
- fixture/CreatePolicyVersion.yaml +10/−0
- fixture/CreateRole.yaml +10/−0
- fixture/CreateSAMLProvider.yaml +10/−0
- fixture/CreateUser.yaml +10/−0
- fixture/CreateVirtualMFADevice.yaml +10/−0
- fixture/DeactivateMFADevice.yaml +10/−0
- fixture/DeleteAccessKey.yaml +10/−0
- fixture/DeleteAccountAlias.yaml +10/−0
- fixture/DeleteAccountPasswordPolicy.yaml +10/−0
- fixture/DeleteGroup.yaml +10/−0
- fixture/DeleteGroupPolicy.yaml +10/−0
- fixture/DeleteInstanceProfile.yaml +10/−0
- fixture/DeleteLoginProfile.yaml +10/−0
- fixture/DeleteOpenIDConnectProvider.yaml +10/−0
- fixture/DeleteOpenIDConnectProviderResponse.proto +0/−0
- fixture/DeleteOpenIdConnectProvider.yaml +0/−0
- fixture/DeleteOpenIdConnectProviderResponse.proto +0/−0
- fixture/DeletePolicy.yaml +10/−0
- fixture/DeletePolicyVersion.yaml +10/−0
- fixture/DeleteRole.yaml +10/−0
- fixture/DeleteRolePermissionsBoundary.yaml +10/−0
- fixture/DeleteRolePermissionsBoundaryResponse.proto +0/−0
- fixture/DeleteRolePolicy.yaml +10/−0
- fixture/DeleteSAMLProvider.yaml +10/−0
- fixture/DeleteSSHPublicKey.yaml +10/−0
- fixture/DeleteServerCertificate.yaml +10/−0
- fixture/DeleteSigningCertificate.yaml +10/−0
- fixture/DeleteUser.yaml +10/−0
- fixture/DeleteUserPermissionsBoundary.yaml +10/−0
- fixture/DeleteUserPermissionsBoundaryResponse.proto +0/−0
- fixture/DeleteUserPolicy.yaml +10/−0
- fixture/DeleteVirtualMFADevice.yaml +10/−0
- fixture/DetachGroupPolicy.yaml +10/−0
- fixture/DetachRolePolicy.yaml +10/−0
- fixture/DetachUserPolicy.yaml +10/−0
- fixture/EnableMFADevice.yaml +10/−0
- fixture/GenerateCredentialReport.yaml +10/−0
- fixture/GenerateOrganizationsAccessReport.yaml +10/−0
- fixture/GenerateOrganizationsAccessReportResponse.proto +0/−0
- fixture/GenerateServiceLastAccessedDetails.yaml +10/−0
- fixture/GenerateServiceLastAccessedDetailsResponse.proto +0/−0
- fixture/GetAccessKeyLastUsed.yaml +10/−0
- fixture/GetAccountAuthorizationDetails.yaml +10/−0
- fixture/GetAccountPasswordPolicy.yaml +10/−0
- fixture/GetAccountSummary.yaml +10/−0
- fixture/GetContextKeysForCustomPolicy.yaml +10/−0
- fixture/GetContextKeysForPrincipalPolicy.yaml +10/−0
- fixture/GetCredentialReport.yaml +10/−0
- fixture/GetGroup.yaml +10/−0
- fixture/GetGroupPolicy.yaml +10/−0
- fixture/GetInstanceProfile.yaml +10/−0
- fixture/GetLoginProfile.yaml +10/−0
- fixture/GetOpenIDConnectProvider.yaml +10/−0
- fixture/GetOpenIDConnectProviderResponse.proto +0/−0
- fixture/GetOpenIdConnectProvider.yaml +0/−0
- fixture/GetOpenIdConnectProviderResponse.proto +0/−0
- fixture/GetOrganizationsAccessReport.yaml +10/−0
- fixture/GetOrganizationsAccessReportResponse.proto +0/−0
- fixture/GetPolicy.yaml +10/−0
- fixture/GetPolicyVersion.yaml +10/−0
- fixture/GetRole.yaml +10/−0
- fixture/GetRolePolicy.yaml +10/−0
- fixture/GetSAMLProvider.yaml +10/−0
- fixture/GetSSHPublicKey.yaml +10/−0
- fixture/GetServerCertificate.yaml +10/−0
- fixture/GetServiceLastAccessedDetails.yaml +10/−0
- fixture/GetServiceLastAccessedDetailsResponse.proto +0/−0
- fixture/GetServiceLastAccessedDetailsWithEntities.yaml +10/−0
- fixture/GetServiceLastAccessedDetailsWithEntitiesResponse.proto +0/−0
- fixture/GetUser.yaml +10/−0
- fixture/GetUserPolicy.yaml +10/−0
- fixture/ListAccessKeys.yaml +10/−0
- fixture/ListAccountAliases.yaml +10/−0
- fixture/ListAttachedGroupPolicies.yaml +10/−0
- fixture/ListAttachedRolePolicies.yaml +10/−0
- fixture/ListAttachedUserPolicies.yaml +10/−0
- fixture/ListEntitiesForPolicy.yaml +10/−0
- fixture/ListGroupPolicies.yaml +10/−0
- fixture/ListGroups.yaml +10/−0
- fixture/ListGroupsForUser.yaml +10/−0
- fixture/ListInstanceProfileTags.yaml +10/−0
- fixture/ListInstanceProfileTagsResponse.proto +0/−0
- fixture/ListInstanceProfiles.yaml +10/−0
- fixture/ListInstanceProfilesForRole.yaml +10/−0
- fixture/ListMFADeviceTags.yaml +10/−0
- fixture/ListMFADeviceTagsResponse.proto +0/−0
- fixture/ListMFADevices.yaml +10/−0
- fixture/ListOpenIDConnectProviderTags.yaml +10/−0
- fixture/ListOpenIDConnectProviderTagsResponse.proto +0/−0
- fixture/ListOpenIDConnectProviders.yaml +10/−0
- fixture/ListOpenIDConnectProvidersResponse.proto +0/−0
- fixture/ListOpenIdConnectProviders.yaml +0/−0
- fixture/ListOpenIdConnectProvidersResponse.proto +0/−0
- fixture/ListPolicies.yaml +10/−0
- fixture/ListPoliciesGrantingServiceAccess.yaml +10/−0
- fixture/ListPoliciesGrantingServiceAccessResponse.proto +0/−0
- fixture/ListPolicyTags.yaml +10/−0
- fixture/ListPolicyTagsResponse.proto +0/−0
- fixture/ListPolicyVersions.yaml +10/−0
- fixture/ListRolePolicies.yaml +10/−0
- fixture/ListRoleTags.yaml +10/−0
- fixture/ListRoleTagsResponse.proto +0/−0
- fixture/ListRoles.yaml +10/−0
- fixture/ListSAMLProviderTags.yaml +10/−0
- fixture/ListSAMLProviderTagsResponse.proto +0/−0
- fixture/ListSAMLProviders.yaml +10/−0
- fixture/ListSSHPublicKeys.yaml +10/−0
- fixture/ListServerCertificateTags.yaml +10/−0
- fixture/ListServerCertificateTagsResponse.proto +0/−0
- fixture/ListServerCertificates.yaml +10/−0
- fixture/ListSigningCertificates.yaml +10/−0
- fixture/ListUserPolicies.yaml +10/−0
- fixture/ListUserTags.yaml +10/−0
- fixture/ListUserTagsResponse.proto +0/−0
- fixture/ListUsers.yaml +10/−0
- fixture/ListVirtualMFADevices.yaml +10/−0
- fixture/PutGroupPolicy.yaml +10/−0
- fixture/PutRolePermissionsBoundary.yaml +10/−0
- fixture/PutRolePermissionsBoundaryResponse.proto +0/−0
- fixture/PutRolePolicy.yaml +10/−0
- fixture/PutUserPermissionsBoundary.yaml +10/−0
- fixture/PutUserPermissionsBoundaryResponse.proto +0/−0
- fixture/PutUserPolicy.yaml +10/−0
- fixture/RemoveClientIDFromOpenIDConnectProvider.yaml +10/−0
- fixture/RemoveClientIDFromOpenIDConnectProviderResponse.proto +0/−0
- fixture/RemoveClientIdFromOpenIdConnectProvider.yaml +0/−0
- fixture/RemoveClientIdFromOpenIdConnectProviderResponse.proto +0/−0
- fixture/RemoveRoleFromInstanceProfile.yaml +10/−0
- fixture/RemoveUserFromGroup.yaml +10/−0
- fixture/ResyncMFADevice.yaml +10/−0
- fixture/SetDefaultPolicyVersion.yaml +10/−0
- fixture/SetSecurityTokenServicePreferences.yaml +10/−0
- fixture/SetSecurityTokenServicePreferencesResponse.proto +0/−0
- fixture/SimulateCustomPolicy.yaml +10/−0
- fixture/SimulatePrincipalPolicy.yaml +10/−0
- fixture/TagInstanceProfile.yaml +10/−0
- fixture/TagInstanceProfileResponse.proto +0/−0
- fixture/TagMFADevice.yaml +10/−0
- fixture/TagMFADeviceResponse.proto +0/−0
- fixture/TagOpenIDConnectProvider.yaml +10/−0
- fixture/TagOpenIDConnectProviderResponse.proto +0/−0
- fixture/TagPolicy.yaml +10/−0
- fixture/TagPolicyResponse.proto +0/−0
- fixture/TagRole.yaml +10/−0
- fixture/TagRoleResponse.proto +0/−0
- fixture/TagSAMLProvider.yaml +10/−0
- fixture/TagSAMLProviderResponse.proto +0/−0
- fixture/TagServerCertificate.yaml +10/−0
- fixture/TagServerCertificateResponse.proto +0/−0
- fixture/TagUser.yaml +10/−0
- fixture/TagUserResponse.proto +0/−0
- fixture/UntagInstanceProfile.yaml +10/−0
- fixture/UntagInstanceProfileResponse.proto +0/−0
- fixture/UntagMFADevice.yaml +10/−0
- fixture/UntagMFADeviceResponse.proto +0/−0
- fixture/UntagOpenIDConnectProvider.yaml +10/−0
- fixture/UntagOpenIDConnectProviderResponse.proto +0/−0
- fixture/UntagPolicy.yaml +10/−0
- fixture/UntagPolicyResponse.proto +0/−0
- fixture/UntagRole.yaml +10/−0
- fixture/UntagRoleResponse.proto +0/−0
- fixture/UntagSAMLProvider.yaml +10/−0
- fixture/UntagSAMLProviderResponse.proto +0/−0
- fixture/UntagServerCertificate.yaml +10/−0
- fixture/UntagServerCertificateResponse.proto +0/−0
- fixture/UntagUser.yaml +10/−0
- fixture/UntagUserResponse.proto +0/−0
- fixture/UpdateAccessKey.yaml +10/−0
- fixture/UpdateAccountPasswordPolicy.yaml +10/−0
- fixture/UpdateAssumeRolePolicy.yaml +10/−0
- fixture/UpdateGroup.yaml +10/−0
- fixture/UpdateLoginProfile.yaml +10/−0
- fixture/UpdateOpenIDConnectProviderThumbprint.yaml +10/−0
- fixture/UpdateOpenIDConnectProviderThumbprintResponse.proto +0/−0
- fixture/UpdateOpenIdConnectProviderThumbprint.yaml +0/−0
- fixture/UpdateOpenIdConnectProviderThumbprintResponse.proto +0/−0
- fixture/UpdateSAMLProvider.yaml +10/−0
- fixture/UpdateSSHPublicKey.yaml +10/−0
- fixture/UpdateServerCertificate.yaml +10/−0
- fixture/UpdateSigningCertificate.yaml +10/−0
- fixture/UpdateUser.yaml +10/−0
- fixture/UploadSSHPublicKey.yaml +10/−0
- fixture/UploadServerCertificate.yaml +10/−0
- fixture/UploadSigningCertificate.yaml +10/−0
- gen/Amazonka/IAM.hs +1541/−0
- gen/Amazonka/IAM/AddClientIDToOpenIDConnectProvider.hs +184/−0
- gen/Amazonka/IAM/AddRoleToInstanceProfile.hs +195/−0
- gen/Amazonka/IAM/AddUserToGroup.hs +169/−0
- gen/Amazonka/IAM/AttachGroupPolicy.hs +179/−0
- gen/Amazonka/IAM/AttachRolePolicy.hs +184/−0
- gen/Amazonka/IAM/AttachUserPolicy.hs +182/−0
- gen/Amazonka/IAM/ChangePassword.hs +183/−0
- gen/Amazonka/IAM/CreateAccessKey.hs +192/−0
- gen/Amazonka/IAM/CreateAccountAlias.hs +140/−0
- gen/Amazonka/IAM/CreateGroup.hs +230/−0
- gen/Amazonka/IAM/CreateInstanceProfile.hs +283/−0
- gen/Amazonka/IAM/CreateLoginProfile.hs +259/−0
- gen/Amazonka/IAM/CreateOpenIDConnectProvider.hs +435/−0
- gen/Amazonka/IAM/CreatePolicy.hs +417/−0
- gen/Amazonka/IAM/CreatePolicyVersion.hs +312/−0
- gen/Amazonka/IAM/CreateRole.hs +438/−0
- gen/Amazonka/IAM/CreateSAMLProvider.hs +311/−0
- gen/Amazonka/IAM/CreateServiceLinkedRole.hs +253/−0
- gen/Amazonka/IAM/CreateServiceSpecificCredential.hs +260/−0
- gen/Amazonka/IAM/CreateUser.hs +284/−0
- gen/Amazonka/IAM/CreateVirtualMFADevice.hs +299/−0
- gen/Amazonka/IAM/DeactivateMFADevice.hs +179/−0
- gen/Amazonka/IAM/DeleteAccessKey.hs +174/−0
- gen/Amazonka/IAM/DeleteAccountAlias.hs +140/−0
- gen/Amazonka/IAM/DeleteAccountPasswordPolicy.hs +114/−0
- gen/Amazonka/IAM/DeleteGroup.hs +133/−0
- gen/Amazonka/IAM/DeleteGroupPolicy.hs +180/−0
- gen/Amazonka/IAM/DeleteInstanceProfile.hs +149/−0
- gen/Amazonka/IAM/DeleteLoginProfile.hs +150/−0
- gen/Amazonka/IAM/DeleteOpenIDConnectProvider.hs +148/−0
- gen/Amazonka/IAM/DeletePolicy.hs +152/−0
- gen/Amazonka/IAM/DeletePolicyVersion.hs +194/−0
- gen/Amazonka/IAM/DeleteRole.hs +139/−0
- gen/Amazonka/IAM/DeleteRolePermissionsBoundary.hs +144/−0
- gen/Amazonka/IAM/DeleteRolePolicy.hs +180/−0
- gen/Amazonka/IAM/DeleteSAMLProvider.hs +133/−0
- gen/Amazonka/IAM/DeleteSSHPublicKey.hs +174/−0
- gen/Amazonka/IAM/DeleteServerCertificate.hs +162/−0
- gen/Amazonka/IAM/DeleteServiceLinkedRole.hs +192/−0
- gen/Amazonka/IAM/DeleteServiceSpecificCredential.hs +198/−0
- gen/Amazonka/IAM/DeleteSigningCertificate.hs +177/−0
- gen/Amazonka/IAM/DeleteUser.hs +156/−0
- gen/Amazonka/IAM/DeleteUserPermissionsBoundary.hs +144/−0
- gen/Amazonka/IAM/DeleteUserPolicy.hs +180/−0
- gen/Amazonka/IAM/DeleteVirtualMFADevice.hs +151/−0
- gen/Amazonka/IAM/DetachGroupPolicy.hs +176/−0
- gen/Amazonka/IAM/DetachRolePolicy.hs +175/−0
- gen/Amazonka/IAM/DetachUserPolicy.hs +175/−0
- gen/Amazonka/IAM/EnableMFADevice.hs +268/−0
- gen/Amazonka/IAM/GenerateCredentialReport.hs +163/−0
- gen/Amazonka/IAM/GenerateOrganizationsAccessReport.hs +363/−0
- gen/Amazonka/IAM/GenerateServiceLastAccessedDetails.hs +292/−0
- gen/Amazonka/IAM/GetAccessKeyLastUsed.hs +189/−0
- gen/Amazonka/IAM/GetAccountAuthorizationDetails.hs +400/−0
- gen/Amazonka/IAM/GetAccountPasswordPolicy.hs +156/−0
- gen/Amazonka/IAM/GetAccountSummary.hs +156/−0
- gen/Amazonka/IAM/GetContextKeysForCustomPolicy.hs +172/−0
- gen/Amazonka/IAM/GetContextKeysForPrincipalPolicy.hs +240/−0
- gen/Amazonka/IAM/GetCredentialReport.hs +182/−0
- gen/Amazonka/IAM/GetGroup.hs +324/−0
- gen/Amazonka/IAM/GetGroupPolicy.hs +273/−0
- gen/Amazonka/IAM/GetInstanceProfile.hs +186/−0
- gen/Amazonka/IAM/GetLoginProfile.hs +193/−0
- gen/Amazonka/IAM/GetOpenIDConnectProvider.hs +278/−0
- gen/Amazonka/IAM/GetOrganizationsAccessReport.hs +437/−0
- gen/Amazonka/IAM/GetPolicy.hs +185/−0
- gen/Amazonka/IAM/GetPolicyVersion.hs +233/−0
- gen/Amazonka/IAM/GetRole.hs +182/−0
- gen/Amazonka/IAM/GetRolePolicy.hs +276/−0
- gen/Amazonka/IAM/GetSAMLProvider.hs +237/−0
- gen/Amazonka/IAM/GetSSHPublicKey.hs +237/−0
- gen/Amazonka/IAM/GetServerCertificate.hs +193/−0
- gen/Amazonka/IAM/GetServiceLastAccessedDetails.hs +450/−0
- gen/Amazonka/IAM/GetServiceLastAccessedDetailsWithEntities.hs +469/−0
- gen/Amazonka/IAM/GetServiceLinkedRoleDeletionStatus.hs +214/−0
- gen/Amazonka/IAM/GetUser.hs +234/−0
- gen/Amazonka/IAM/GetUserPolicy.hs +273/−0
- gen/Amazonka/IAM/Lens.hs +1568/−0
- gen/Amazonka/IAM/ListAccessKeys.hs +328/−0
- gen/Amazonka/IAM/ListAccountAliases.hs +290/−0
- gen/Amazonka/IAM/ListAttachedGroupPolicies.hs +375/−0
- gen/Amazonka/IAM/ListAttachedRolePolicies.hs +374/−0
- gen/Amazonka/IAM/ListAttachedUserPolicies.hs +374/−0
- gen/Amazonka/IAM/ListEntitiesForPolicy.hs +466/−0
- gen/Amazonka/IAM/ListGroupPolicies.hs +339/−0
- gen/Amazonka/IAM/ListGroups.hs +329/−0
- gen/Amazonka/IAM/ListGroupsForUser.hs +316/−0
- gen/Amazonka/IAM/ListInstanceProfileTags.hs +303/−0
- gen/Amazonka/IAM/ListInstanceProfiles.hs +340/−0
- gen/Amazonka/IAM/ListInstanceProfilesForRole.hs +326/−0
- gen/Amazonka/IAM/ListMFADeviceTags.hs +303/−0
- gen/Amazonka/IAM/ListMFADevices.hs +318/−0
- gen/Amazonka/IAM/ListOpenIDConnectProviderTags.hs +321/−0
- gen/Amazonka/IAM/ListOpenIDConnectProviders.hs +163/−0
- gen/Amazonka/IAM/ListPolicies.hs +437/−0
- gen/Amazonka/IAM/ListPoliciesGrantingServiceAccess.hs +353/−0
- gen/Amazonka/IAM/ListPolicyTags.hs +300/−0
- gen/Amazonka/IAM/ListPolicyVersions.hs +331/−0
- gen/Amazonka/IAM/ListRolePolicies.hs +324/−0
- gen/Amazonka/IAM/ListRoleTags.hs +295/−0
- gen/Amazonka/IAM/ListRoles.hs +337/−0
- gen/Amazonka/IAM/ListSAMLProviderTags.hs +306/−0
- gen/Amazonka/IAM/ListSAMLProviders.hs +158/−0
- gen/Amazonka/IAM/ListSSHPublicKeys.hs +328/−0
- gen/Amazonka/IAM/ListServerCertificateTags.hs +312/−0
- gen/Amazonka/IAM/ListServerCertificates.hs +349/−0
- gen/Amazonka/IAM/ListServiceSpecificCredentials.hs +234/−0
- gen/Amazonka/IAM/ListSigningCertificates.hs +326/−0
- gen/Amazonka/IAM/ListUserPolicies.hs +324/−0
- gen/Amazonka/IAM/ListUserTags.hs +319/−0
- gen/Amazonka/IAM/ListUsers.hs +337/−0
- gen/Amazonka/IAM/ListVirtualMFADevices.hs +317/−0
- gen/Amazonka/IAM/PutGroupPolicy.hs +256/−0
- gen/Amazonka/IAM/PutRolePermissionsBoundary.hs +165/−0
- gen/Amazonka/IAM/PutRolePolicy.hs +263/−0
- gen/Amazonka/IAM/PutUserPermissionsBoundary.hs +163/−0
- gen/Amazonka/IAM/PutUserPolicy.hs +256/−0
- gen/Amazonka/IAM/RemoveClientIDFromOpenIDConnectProvider.hs +200/−0
- gen/Amazonka/IAM/RemoveRoleFromInstanceProfile.hs +195/−0
- gen/Amazonka/IAM/RemoveUserFromGroup.hs +170/−0
- gen/Amazonka/IAM/ResetServiceSpecificCredential.hs +246/−0
- gen/Amazonka/IAM/ResyncMFADevice.hs +221/−0
- gen/Amazonka/IAM/SetDefaultPolicyVersion.hs +180/−0
- gen/Amazonka/IAM/SetSecurityTokenServicePreferences.hs +206/−0
- gen/Amazonka/IAM/SimulateCustomPolicy.hs +777/−0
- gen/Amazonka/IAM/SimulatePrincipalPolicy.hs +826/−0
- gen/Amazonka/IAM/TagInstanceProfile.hs +187/−0
- gen/Amazonka/IAM/TagMFADevice.hs +188/−0
- gen/Amazonka/IAM/TagOpenIDConnectProvider.hs +197/−0
- gen/Amazonka/IAM/TagPolicy.hs +185/−0
- gen/Amazonka/IAM/TagRole.hs +188/−0
- gen/Amazonka/IAM/TagSAMLProvider.hs +191/−0
- gen/Amazonka/IAM/TagServerCertificate.hs +197/−0
- gen/Amazonka/IAM/TagUser.hs +187/−0
- gen/Amazonka/IAM/Types.hs +970/−0
- gen/Amazonka/IAM/Types/AccessAdvisorUsageGranularityType.hs +71/−0
- gen/Amazonka/IAM/Types/AccessDetail.hs +228/−0
- gen/Amazonka/IAM/Types/AccessKeyInfo.hs +141/−0
- gen/Amazonka/IAM/Types/AccessKeyLastUsed.hs +200/−0
- gen/Amazonka/IAM/Types/AccessKeyMetadata.hs +112/−0
- gen/Amazonka/IAM/Types/AssignmentStatusType.hs +76/−0
- gen/Amazonka/IAM/Types/AttachedPermissionsBoundary.hs +98/−0
- gen/Amazonka/IAM/Types/AttachedPolicy.hs +88/−0
- gen/Amazonka/IAM/Types/ContextEntry.hs +116/−0
- gen/Amazonka/IAM/Types/ContextKeyTypeEnum.hs +121/−0
- gen/Amazonka/IAM/Types/DeletionTaskFailureReasonType.hs +113/−0
- gen/Amazonka/IAM/Types/DeletionTaskStatusType.hs +81/−0
- gen/Amazonka/IAM/Types/EncodingType.hs +71/−0
- gen/Amazonka/IAM/Types/EntityDetails.hs +112/−0
- gen/Amazonka/IAM/Types/EntityInfo.hs +135/−0
- gen/Amazonka/IAM/Types/EntityType.hs +86/−0
- gen/Amazonka/IAM/Types/ErrorDetails.hs +84/−0
- gen/Amazonka/IAM/Types/EvaluationResult.hs +292/−0
- gen/Amazonka/IAM/Types/GetContextKeysForPolicyResponse.hs +81/−0
- gen/Amazonka/IAM/Types/GlobalEndpointTokenVersion.hs +71/−0
- gen/Amazonka/IAM/Types/Group.hs +170/−0
- gen/Amazonka/IAM/Types/GroupDetail.hs +174/−0
- gen/Amazonka/IAM/Types/InstanceProfile.hs +209/−0
- gen/Amazonka/IAM/Types/JobStatusType.hs +76/−0
- gen/Amazonka/IAM/Types/ListPoliciesGrantingServiceAccessEntry.hs +131/−0
- gen/Amazonka/IAM/Types/LoginProfile.hs +106/−0
- gen/Amazonka/IAM/Types/MFADevice.hs +104/−0
- gen/Amazonka/IAM/Types/ManagedPolicyDetail.hs +300/−0
- gen/Amazonka/IAM/Types/OpenIDConnectProviderListEntry.hs +76/−0
- gen/Amazonka/IAM/Types/OrganizationsDecisionDetail.hs +75/−0
- gen/Amazonka/IAM/Types/PasswordPolicy.hs +234/−0
- gen/Amazonka/IAM/Types/PermissionsBoundaryAttachmentType.hs +66/−0
- gen/Amazonka/IAM/Types/PermissionsBoundaryDecisionDetail.hs +105/−0
- gen/Amazonka/IAM/Types/Policy.hs +304/−0
- gen/Amazonka/IAM/Types/PolicyDetail.hs +83/−0
- gen/Amazonka/IAM/Types/PolicyEvaluationDecisionType.hs +76/−0
- gen/Amazonka/IAM/Types/PolicyGrantingServiceAccess.hs +170/−0
- gen/Amazonka/IAM/Types/PolicyGroup.hs +96/−0
- gen/Amazonka/IAM/Types/PolicyOwnerEntityType.hs +76/−0
- gen/Amazonka/IAM/Types/PolicyRole.hs +96/−0
- gen/Amazonka/IAM/Types/PolicyScopeType.hs +76/−0
- gen/Amazonka/IAM/Types/PolicySourceType.hs +96/−0
- gen/Amazonka/IAM/Types/PolicyType.hs +71/−0
- gen/Amazonka/IAM/Types/PolicyUsageType.hs +77/−0
- gen/Amazonka/IAM/Types/PolicyUser.hs +96/−0
- gen/Amazonka/IAM/Types/PolicyVersion.hs +163/−0
- gen/Amazonka/IAM/Types/Position.hs +85/−0
- gen/Amazonka/IAM/Types/ReportFormatType.hs +66/−0
- gen/Amazonka/IAM/Types/ReportStateType.hs +76/−0
- gen/Amazonka/IAM/Types/ResourceSpecificResult.hs +207/−0
- gen/Amazonka/IAM/Types/Role.hs +287/−0
- gen/Amazonka/IAM/Types/RoleDetail.hs +294/−0
- gen/Amazonka/IAM/Types/RoleLastUsed.hs +114/−0
- gen/Amazonka/IAM/Types/RoleUsageType.hs +88/−0
- gen/Amazonka/IAM/Types/SAMLProviderListEntry.hs +92/−0
- gen/Amazonka/IAM/Types/SSHPublicKey.hs +159/−0
- gen/Amazonka/IAM/Types/SSHPublicKeyMetadata.hs +133/−0
- gen/Amazonka/IAM/Types/ServerCertificate.hs +133/−0
- gen/Amazonka/IAM/Types/ServerCertificateMetadata.hs +172/−0
- gen/Amazonka/IAM/Types/ServiceLastAccessed.hs +278/−0
- gen/Amazonka/IAM/Types/ServiceSpecificCredential.hs +186/−0
- gen/Amazonka/IAM/Types/ServiceSpecificCredentialMetadata.hs +173/−0
- gen/Amazonka/IAM/Types/SigningCertificate.hs +135/−0
- gen/Amazonka/IAM/Types/SimulatePolicyResponse.hs +123/−0
- gen/Amazonka/IAM/Types/SortKeyType.hs +81/−0
- gen/Amazonka/IAM/Types/Statement.hs +110/−0
- gen/Amazonka/IAM/Types/StatusType.hs +71/−0
- gen/Amazonka/IAM/Types/SummaryKeyType.hs +191/−0
- gen/Amazonka/IAM/Types/Tag.hs +121/−0
- gen/Amazonka/IAM/Types/TrackedActionLastAccessed.hs +150/−0
- gen/Amazonka/IAM/Types/User.hs +289/−0
- gen/Amazonka/IAM/Types/UserDetail.hs +241/−0
- gen/Amazonka/IAM/Types/VirtualMFADevice.hs +183/−0
- gen/Amazonka/IAM/UntagInstanceProfile.hs +160/−0
- gen/Amazonka/IAM/UntagMFADevice.hs +164/−0
- gen/Amazonka/IAM/UntagOpenIDConnectProvider.hs +169/−0
- gen/Amazonka/IAM/UntagPolicy.hs +158/−0
- gen/Amazonka/IAM/UntagRole.hs +155/−0
- gen/Amazonka/IAM/UntagSAMLProvider.hs +166/−0
- gen/Amazonka/IAM/UntagServerCertificate.hs +175/−0
- gen/Amazonka/IAM/UntagUser.hs +155/−0
- gen/Amazonka/IAM/UpdateAccessKey.hs +200/−0
- gen/Amazonka/IAM/UpdateAccountPasswordPolicy.hs +432/−0
- gen/Amazonka/IAM/UpdateAssumeRolePolicy.hs +213/−0
- gen/Amazonka/IAM/UpdateGroup.hs +220/−0
- gen/Amazonka/IAM/UpdateLoginProfile.hs +226/−0
- gen/Amazonka/IAM/UpdateOpenIDConnectProviderThumbprint.hs +217/−0
- gen/Amazonka/IAM/UpdateRole.hs +214/−0
- gen/Amazonka/IAM/UpdateRoleDescription.hs +180/−0
- gen/Amazonka/IAM/UpdateSAMLProvider.hs +212/−0
- gen/Amazonka/IAM/UpdateSSHPublicKey.hs +201/−0
- gen/Amazonka/IAM/UpdateServerCertificate.hs +243/−0
- gen/Amazonka/IAM/UpdateServiceSpecificCredential.hs +215/−0
- gen/Amazonka/IAM/UpdateSigningCertificate.hs +200/−0
- gen/Amazonka/IAM/UpdateUser.hs +221/−0
- gen/Amazonka/IAM/UploadSSHPublicKey.hs +245/−0
- gen/Amazonka/IAM/UploadServerCertificate.hs +509/−0
- gen/Amazonka/IAM/UploadSigningCertificate.hs +261/−0
- gen/Amazonka/IAM/Waiters.hs +80/−0
- gen/Network/AWS/IAM.hs +0/−1048
- gen/Network/AWS/IAM/AddClientIdToOpenIdConnectProvider.hs +0/−131
- gen/Network/AWS/IAM/AddRoleToInstanceProfile.hs +0/−120
- gen/Network/AWS/IAM/AddUserToGroup.hs +0/−111
- gen/Network/AWS/IAM/AttachGroupPolicy.hs +0/−115
- gen/Network/AWS/IAM/AttachRolePolicy.hs +0/−113
- gen/Network/AWS/IAM/AttachUserPolicy.hs +0/−115
- gen/Network/AWS/IAM/ChangePassword.hs +0/−116
- gen/Network/AWS/IAM/CreateAccessKey.hs +0/−134
- gen/Network/AWS/IAM/CreateAccountAlias.hs +0/−102
- gen/Network/AWS/IAM/CreateGroup.hs +0/−140
- gen/Network/AWS/IAM/CreateInstanceProfile.hs +0/−145
- gen/Network/AWS/IAM/CreateLoginProfile.hs +0/−156
- gen/Network/AWS/IAM/CreateOpenIdConnectProvider.hs +0/−175
- gen/Network/AWS/IAM/CreatePolicy.hs +0/−165
- gen/Network/AWS/IAM/CreatePolicyVersion.hs +0/−157
- gen/Network/AWS/IAM/CreateRole.hs +0/−173
- gen/Network/AWS/IAM/CreateSAMLProvider.hs +0/−150
- gen/Network/AWS/IAM/CreateServiceLinkedRole.hs +0/−153
- gen/Network/AWS/IAM/CreateServiceSpecificCredential.hs +0/−156
- gen/Network/AWS/IAM/CreateUser.hs +0/−139
- gen/Network/AWS/IAM/CreateVirtualMFADevice.hs +0/−148
- gen/Network/AWS/IAM/DeactivateMFADevice.hs +0/−115
- gen/Network/AWS/IAM/DeleteAccessKey.hs +0/−112
- gen/Network/AWS/IAM/DeleteAccountAlias.hs +0/−102
- gen/Network/AWS/IAM/DeleteAccountPasswordPolicy.hs +0/−94
- gen/Network/AWS/IAM/DeleteGroup.hs +0/−100
- gen/Network/AWS/IAM/DeleteGroupPolicy.hs +0/−113
- gen/Network/AWS/IAM/DeleteInstanceProfile.hs +0/−106
- gen/Network/AWS/IAM/DeleteLoginProfile.hs +0/−103
- gen/Network/AWS/IAM/DeleteOpenIdConnectProvider.hs +0/−111
- gen/Network/AWS/IAM/DeletePolicy.hs +0/−112
- gen/Network/AWS/IAM/DeletePolicyVersion.hs +0/−117
- gen/Network/AWS/IAM/DeleteRole.hs +0/−102
- gen/Network/AWS/IAM/DeleteRolePolicy.hs +0/−113
- gen/Network/AWS/IAM/DeleteSAMLProvider.hs +0/−104
- gen/Network/AWS/IAM/DeleteSSHPublicKey.hs +0/−115
- gen/Network/AWS/IAM/DeleteServerCertificate.hs +0/−108
- gen/Network/AWS/IAM/DeleteServiceLinkedRole.hs +0/−134
- gen/Network/AWS/IAM/DeleteServiceSpecificCredential.hs +0/−125
- gen/Network/AWS/IAM/DeleteSigningCertificate.hs +0/−117
- gen/Network/AWS/IAM/DeleteUser.hs +0/−100
- gen/Network/AWS/IAM/DeleteUserPolicy.hs +0/−113
- gen/Network/AWS/IAM/DeleteVirtualMFADevice.hs +0/−104
- gen/Network/AWS/IAM/DetachGroupPolicy.hs +0/−113
- gen/Network/AWS/IAM/DetachRolePolicy.hs +0/−113
- gen/Network/AWS/IAM/DetachUserPolicy.hs +0/−112
- gen/Network/AWS/IAM/EnableMFADevice.hs +0/−136
- gen/Network/AWS/IAM/GenerateCredentialReport.hs +0/−133
- gen/Network/AWS/IAM/GetAccessKeyLastUsed.hs +0/−142
- gen/Network/AWS/IAM/GetAccountAuthorizationDetails.hs +0/−228
- gen/Network/AWS/IAM/GetAccountPasswordPolicy.hs +0/−124
- gen/Network/AWS/IAM/GetAccountSummary.hs +0/−122
- gen/Network/AWS/IAM/GetContextKeysForCustomPolicy.hs +0/−97
- gen/Network/AWS/IAM/GetContextKeysForPrincipalPolicy.hs +0/−119
- gen/Network/AWS/IAM/GetCredentialReport.hs +0/−141
- gen/Network/AWS/IAM/GetGroup.hs +0/−191
- gen/Network/AWS/IAM/GetGroupPolicy.hs +0/−168
- gen/Network/AWS/IAM/GetInstanceProfile.hs +0/−133
- gen/Network/AWS/IAM/GetLoginProfile.hs +0/−131
- gen/Network/AWS/IAM/GetOpenIdConnectProvider.hs +0/−169
- gen/Network/AWS/IAM/GetPolicy.hs +0/−132
- gen/Network/AWS/IAM/GetPolicyVersion.hs +0/−147
- gen/Network/AWS/IAM/GetRole.hs +0/−128
- gen/Network/AWS/IAM/GetRolePolicy.hs +0/−170
- gen/Network/AWS/IAM/GetSAMLProvider.hs +0/−151
- gen/Network/AWS/IAM/GetSSHPublicKey.hs +0/−155
- gen/Network/AWS/IAM/GetServerCertificate.hs +0/−135
- gen/Network/AWS/IAM/GetServiceLinkedRoleDeletionStatus.hs +0/−150
- gen/Network/AWS/IAM/GetUser.hs +0/−129
- gen/Network/AWS/IAM/GetUserPolicy.hs +0/−168
- gen/Network/AWS/IAM/ListAccessKeys.hs +0/−184
- gen/Network/AWS/IAM/ListAccountAliases.hs +0/−171
- gen/Network/AWS/IAM/ListAttachedGroupPolicies.hs +0/−201
- gen/Network/AWS/IAM/ListAttachedRolePolicies.hs +0/−201
- gen/Network/AWS/IAM/ListAttachedUserPolicies.hs +0/−201
- gen/Network/AWS/IAM/ListEntitiesForPolicy.hs +0/−233
- gen/Network/AWS/IAM/ListGroupPolicies.hs +0/−185
- gen/Network/AWS/IAM/ListGroups.hs +0/−182
- gen/Network/AWS/IAM/ListGroupsForUser.hs +0/−183
- gen/Network/AWS/IAM/ListInstanceProfiles.hs +0/−183
- gen/Network/AWS/IAM/ListInstanceProfilesForRole.hs +0/−191
- gen/Network/AWS/IAM/ListMFADevices.hs +0/−182
- gen/Network/AWS/IAM/ListOpenIdConnectProviders.hs +0/−126
- gen/Network/AWS/IAM/ListPolicies.hs +0/−208
- gen/Network/AWS/IAM/ListPolicyVersions.hs +0/−184
- gen/Network/AWS/IAM/ListRolePolicies.hs +0/−185
- gen/Network/AWS/IAM/ListRoles.hs +0/−181
- gen/Network/AWS/IAM/ListSAMLProviders.hs +0/−122
- gen/Network/AWS/IAM/ListSSHPublicKeys.hs +0/−184
- gen/Network/AWS/IAM/ListServerCertificates.hs +0/−186
- gen/Network/AWS/IAM/ListServiceSpecificCredentials.hs +0/−146
- gen/Network/AWS/IAM/ListSigningCertificates.hs +0/−185
- gen/Network/AWS/IAM/ListUserPolicies.hs +0/−185
- gen/Network/AWS/IAM/ListUsers.hs +0/−181
- gen/Network/AWS/IAM/ListVirtualMFADevices.hs +0/−186
- gen/Network/AWS/IAM/PutGroupPolicy.hs +0/−129
- gen/Network/AWS/IAM/PutRolePolicy.hs +0/−131
- gen/Network/AWS/IAM/PutUserPolicy.hs +0/−129
- gen/Network/AWS/IAM/RemoveClientIdFromOpenIdConnectProvider.hs +0/−137
- gen/Network/AWS/IAM/RemoveRoleFromInstanceProfile.hs +0/−124
- gen/Network/AWS/IAM/RemoveUserFromGroup.hs +0/−113
- gen/Network/AWS/IAM/ResetServiceSpecificCredential.hs +0/−149
- gen/Network/AWS/IAM/ResyncMFADevice.hs +0/−138
- gen/Network/AWS/IAM/SetDefaultPolicyVersion.hs +0/−119
- gen/Network/AWS/IAM/SimulateCustomPolicy.hs +0/−205
- gen/Network/AWS/IAM/SimulatePrincipalPolicy.hs +0/−223
- gen/Network/AWS/IAM/Types.hs +0/−675
- gen/Network/AWS/IAM/Types/Product.hs +0/−2982
- gen/Network/AWS/IAM/Types/Sum.hs +0/−467
- gen/Network/AWS/IAM/UpdateAccessKey.hs +0/−128
- gen/Network/AWS/IAM/UpdateAccountPasswordPolicy.hs +0/−193
- gen/Network/AWS/IAM/UpdateAssumeRolePolicy.hs +0/−115
- gen/Network/AWS/IAM/UpdateGroup.hs +0/−124
- gen/Network/AWS/IAM/UpdateLoginProfile.hs +0/−126
- gen/Network/AWS/IAM/UpdateOpenIdConnectProviderThumbprint.hs +0/−137
- gen/Network/AWS/IAM/UpdateRole.hs +0/−137
- gen/Network/AWS/IAM/UpdateRoleDescription.hs +0/−139
- gen/Network/AWS/IAM/UpdateSAMLProvider.hs +0/−146
- gen/Network/AWS/IAM/UpdateSSHPublicKey.hs +0/−128
- gen/Network/AWS/IAM/UpdateServerCertificate.hs +0/−131
- gen/Network/AWS/IAM/UpdateServiceSpecificCredential.hs +0/−136
- gen/Network/AWS/IAM/UpdateSigningCertificate.hs +0/−130
- gen/Network/AWS/IAM/UpdateUser.hs +0/−121
- gen/Network/AWS/IAM/UploadSSHPublicKey.hs +0/−143
- gen/Network/AWS/IAM/UploadServerCertificate.hs +0/−184
- gen/Network/AWS/IAM/UploadSigningCertificate.hs +0/−145
- gen/Network/AWS/IAM/Waiters.hs +0/−47
- test/Main.hs +11/−9
- test/Test/AWS/Gen/IAM.hs +0/−2253
- test/Test/AWS/IAM.hs +0/−26
- test/Test/AWS/IAM/Internal.hs +0/−16
- test/Test/Amazonka/Gen/IAM.hs +3198/−0
- test/Test/Amazonka/IAM.hs +20/−0
- test/Test/Amazonka/IAM/Internal.hs +8/−0
README.md view
@@ -7,9 +7,8 @@ ## Version--`1.6.1`-+ +`2.0` - Derived from API version @2010-05-08@ of the AWS service descriptions, licensed under Apache 2.0. ## Description @@ -26,7 +25,7 @@ The provided lenses should be compatible with any of the major lens libraries [lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core). -See [Network.AWS.IAM](http://hackage.haskell.org/package/amazonka-iam/docs/Network-AWS-IAM.html)+See [Amazonka.IAM](http://hackage.haskell.org/package/amazonka-iam/docs/Amazonka-IAM.html) or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.
− Setup.hs
@@ -1,2 +0,0 @@-import Distribution.Simple-main = defaultMain
amazonka-iam.cabal view
@@ -1,208 +1,314 @@-name: amazonka-iam-version: 1.6.1-synopsis: Amazon Identity and Access Management SDK.-homepage: https://github.com/brendanhay/amazonka-bug-reports: https://github.com/brendanhay/amazonka/issues-license: MPL-2.0-license-file: LICENSE-author: Brendan Hay-maintainer: Brendan Hay <brendan.g.hay+amazonka@gmail.com>-copyright: Copyright (c) 2013-2018 Brendan Hay-category: Network, AWS, Cloud, Distributed Computing-build-type: Simple-cabal-version: >= 1.10-extra-source-files: README.md fixture/*.yaml fixture/*.proto src/.gitkeep+cabal-version: 2.2+name: amazonka-iam+version: 2.0+synopsis: Amazon Identity and Access Management SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep+ description:- The types from this library are intended to be used with- <http://hackage.haskell.org/package/amazonka amazonka>, which provides- mechanisms for specifying AuthN/AuthZ information, sending requests,- and receiving responses.- .- Lenses are used for constructing and manipulating types,- due to the depth of nesting of AWS types and transparency regarding- de/serialisation into more palatable Haskell values.- The provided lenses should be compatible with any of the major lens libraries- such as <http://hackage.haskell.org/package/lens lens> or- <http://hackage.haskell.org/package/lens-family-core lens-family-core>.- .- See "Network.AWS.IAM" or <https://aws.amazon.com/documentation/ the AWS documentation>- to get started.+ Derived from API version @2010-05-08@ of the AWS service descriptions, licensed under Apache 2.0.+ .+ The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+ which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+ .+ It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+ .+ Generated lenses can be found in "Amazonka.IAM.Lens" and are+ suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Amazonka.IAM" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started. source-repository head- type: git- location: git://github.com/brendanhay/amazonka.git- subdir: amazonka-iam+ type: git+ location: git://github.com/brendanhay/amazonka.git+ subdir: amazonka-iam library- default-language: Haskell2010- hs-source-dirs: src gen-- ghc-options:- -Wall- -fwarn-incomplete-uni-patterns- -fwarn-incomplete-record-updates- -funbox-strict-fields-- exposed-modules:- Network.AWS.IAM- , Network.AWS.IAM.AddClientIdToOpenIdConnectProvider- , Network.AWS.IAM.AddRoleToInstanceProfile- , Network.AWS.IAM.AddUserToGroup- , Network.AWS.IAM.AttachGroupPolicy- , Network.AWS.IAM.AttachRolePolicy- , Network.AWS.IAM.AttachUserPolicy- , Network.AWS.IAM.ChangePassword- , Network.AWS.IAM.CreateAccessKey- , Network.AWS.IAM.CreateAccountAlias- , Network.AWS.IAM.CreateGroup- , Network.AWS.IAM.CreateInstanceProfile- , Network.AWS.IAM.CreateLoginProfile- , Network.AWS.IAM.CreateOpenIdConnectProvider- , Network.AWS.IAM.CreatePolicy- , Network.AWS.IAM.CreatePolicyVersion- , Network.AWS.IAM.CreateRole- , Network.AWS.IAM.CreateSAMLProvider- , Network.AWS.IAM.CreateServiceLinkedRole- , Network.AWS.IAM.CreateServiceSpecificCredential- , Network.AWS.IAM.CreateUser- , Network.AWS.IAM.CreateVirtualMFADevice- , Network.AWS.IAM.DeactivateMFADevice- , Network.AWS.IAM.DeleteAccessKey- , Network.AWS.IAM.DeleteAccountAlias- , Network.AWS.IAM.DeleteAccountPasswordPolicy- , Network.AWS.IAM.DeleteGroup- , Network.AWS.IAM.DeleteGroupPolicy- , Network.AWS.IAM.DeleteInstanceProfile- , Network.AWS.IAM.DeleteLoginProfile- , Network.AWS.IAM.DeleteOpenIdConnectProvider- , Network.AWS.IAM.DeletePolicy- , Network.AWS.IAM.DeletePolicyVersion- , Network.AWS.IAM.DeleteRole- , Network.AWS.IAM.DeleteRolePolicy- , Network.AWS.IAM.DeleteSAMLProvider- , Network.AWS.IAM.DeleteSSHPublicKey- , Network.AWS.IAM.DeleteServerCertificate- , Network.AWS.IAM.DeleteServiceLinkedRole- , Network.AWS.IAM.DeleteServiceSpecificCredential- , Network.AWS.IAM.DeleteSigningCertificate- , Network.AWS.IAM.DeleteUser- , Network.AWS.IAM.DeleteUserPolicy- , Network.AWS.IAM.DeleteVirtualMFADevice- , Network.AWS.IAM.DetachGroupPolicy- , Network.AWS.IAM.DetachRolePolicy- , Network.AWS.IAM.DetachUserPolicy- , Network.AWS.IAM.EnableMFADevice- , Network.AWS.IAM.GenerateCredentialReport- , Network.AWS.IAM.GetAccessKeyLastUsed- , Network.AWS.IAM.GetAccountAuthorizationDetails- , Network.AWS.IAM.GetAccountPasswordPolicy- , Network.AWS.IAM.GetAccountSummary- , Network.AWS.IAM.GetContextKeysForCustomPolicy- , Network.AWS.IAM.GetContextKeysForPrincipalPolicy- , Network.AWS.IAM.GetCredentialReport- , Network.AWS.IAM.GetGroup- , Network.AWS.IAM.GetGroupPolicy- , Network.AWS.IAM.GetInstanceProfile- , Network.AWS.IAM.GetLoginProfile- , Network.AWS.IAM.GetOpenIdConnectProvider- , Network.AWS.IAM.GetPolicy- , Network.AWS.IAM.GetPolicyVersion- , Network.AWS.IAM.GetRole- , Network.AWS.IAM.GetRolePolicy- , Network.AWS.IAM.GetSAMLProvider- , Network.AWS.IAM.GetSSHPublicKey- , Network.AWS.IAM.GetServerCertificate- , Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus- , Network.AWS.IAM.GetUser- , Network.AWS.IAM.GetUserPolicy- , Network.AWS.IAM.ListAccessKeys- , Network.AWS.IAM.ListAccountAliases- , Network.AWS.IAM.ListAttachedGroupPolicies- , Network.AWS.IAM.ListAttachedRolePolicies- , Network.AWS.IAM.ListAttachedUserPolicies- , Network.AWS.IAM.ListEntitiesForPolicy- , Network.AWS.IAM.ListGroupPolicies- , Network.AWS.IAM.ListGroups- , Network.AWS.IAM.ListGroupsForUser- , Network.AWS.IAM.ListInstanceProfiles- , Network.AWS.IAM.ListInstanceProfilesForRole- , Network.AWS.IAM.ListMFADevices- , Network.AWS.IAM.ListOpenIdConnectProviders- , Network.AWS.IAM.ListPolicies- , Network.AWS.IAM.ListPolicyVersions- , Network.AWS.IAM.ListRolePolicies- , Network.AWS.IAM.ListRoles- , Network.AWS.IAM.ListSAMLProviders- , Network.AWS.IAM.ListSSHPublicKeys- , Network.AWS.IAM.ListServerCertificates- , Network.AWS.IAM.ListServiceSpecificCredentials- , Network.AWS.IAM.ListSigningCertificates- , Network.AWS.IAM.ListUserPolicies- , Network.AWS.IAM.ListUsers- , Network.AWS.IAM.ListVirtualMFADevices- , Network.AWS.IAM.PutGroupPolicy- , Network.AWS.IAM.PutRolePolicy- , Network.AWS.IAM.PutUserPolicy- , Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider- , Network.AWS.IAM.RemoveRoleFromInstanceProfile- , Network.AWS.IAM.RemoveUserFromGroup- , Network.AWS.IAM.ResetServiceSpecificCredential- , Network.AWS.IAM.ResyncMFADevice- , Network.AWS.IAM.SetDefaultPolicyVersion- , Network.AWS.IAM.SimulateCustomPolicy- , Network.AWS.IAM.SimulatePrincipalPolicy- , Network.AWS.IAM.Types- , Network.AWS.IAM.UpdateAccessKey- , Network.AWS.IAM.UpdateAccountPasswordPolicy- , Network.AWS.IAM.UpdateAssumeRolePolicy- , Network.AWS.IAM.UpdateGroup- , Network.AWS.IAM.UpdateLoginProfile- , Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint- , Network.AWS.IAM.UpdateRole- , Network.AWS.IAM.UpdateRoleDescription- , Network.AWS.IAM.UpdateSAMLProvider- , Network.AWS.IAM.UpdateSSHPublicKey- , Network.AWS.IAM.UpdateServerCertificate- , Network.AWS.IAM.UpdateServiceSpecificCredential- , Network.AWS.IAM.UpdateSigningCertificate- , Network.AWS.IAM.UpdateUser- , Network.AWS.IAM.UploadSSHPublicKey- , Network.AWS.IAM.UploadServerCertificate- , Network.AWS.IAM.UploadSigningCertificate- , Network.AWS.IAM.Waiters+ default-language: Haskell2010+ hs-source-dirs: src gen+ ghc-options:+ -Wall -fwarn-incomplete-uni-patterns+ -fwarn-incomplete-record-updates -funbox-strict-fields - other-modules:- Network.AWS.IAM.Types.Product- , Network.AWS.IAM.Types.Sum+ exposed-modules:+ Amazonka.IAM+ Amazonka.IAM.AddClientIDToOpenIDConnectProvider+ Amazonka.IAM.AddRoleToInstanceProfile+ Amazonka.IAM.AddUserToGroup+ Amazonka.IAM.AttachGroupPolicy+ Amazonka.IAM.AttachRolePolicy+ Amazonka.IAM.AttachUserPolicy+ Amazonka.IAM.ChangePassword+ Amazonka.IAM.CreateAccessKey+ Amazonka.IAM.CreateAccountAlias+ Amazonka.IAM.CreateGroup+ Amazonka.IAM.CreateInstanceProfile+ Amazonka.IAM.CreateLoginProfile+ Amazonka.IAM.CreateOpenIDConnectProvider+ Amazonka.IAM.CreatePolicy+ Amazonka.IAM.CreatePolicyVersion+ Amazonka.IAM.CreateRole+ Amazonka.IAM.CreateSAMLProvider+ Amazonka.IAM.CreateServiceLinkedRole+ Amazonka.IAM.CreateServiceSpecificCredential+ Amazonka.IAM.CreateUser+ Amazonka.IAM.CreateVirtualMFADevice+ Amazonka.IAM.DeactivateMFADevice+ Amazonka.IAM.DeleteAccessKey+ Amazonka.IAM.DeleteAccountAlias+ Amazonka.IAM.DeleteAccountPasswordPolicy+ Amazonka.IAM.DeleteGroup+ Amazonka.IAM.DeleteGroupPolicy+ Amazonka.IAM.DeleteInstanceProfile+ Amazonka.IAM.DeleteLoginProfile+ Amazonka.IAM.DeleteOpenIDConnectProvider+ Amazonka.IAM.DeletePolicy+ Amazonka.IAM.DeletePolicyVersion+ Amazonka.IAM.DeleteRole+ Amazonka.IAM.DeleteRolePermissionsBoundary+ Amazonka.IAM.DeleteRolePolicy+ Amazonka.IAM.DeleteSAMLProvider+ Amazonka.IAM.DeleteServerCertificate+ Amazonka.IAM.DeleteServiceLinkedRole+ Amazonka.IAM.DeleteServiceSpecificCredential+ Amazonka.IAM.DeleteSigningCertificate+ Amazonka.IAM.DeleteSSHPublicKey+ Amazonka.IAM.DeleteUser+ Amazonka.IAM.DeleteUserPermissionsBoundary+ Amazonka.IAM.DeleteUserPolicy+ Amazonka.IAM.DeleteVirtualMFADevice+ Amazonka.IAM.DetachGroupPolicy+ Amazonka.IAM.DetachRolePolicy+ Amazonka.IAM.DetachUserPolicy+ Amazonka.IAM.EnableMFADevice+ Amazonka.IAM.GenerateCredentialReport+ Amazonka.IAM.GenerateOrganizationsAccessReport+ Amazonka.IAM.GenerateServiceLastAccessedDetails+ Amazonka.IAM.GetAccessKeyLastUsed+ Amazonka.IAM.GetAccountAuthorizationDetails+ Amazonka.IAM.GetAccountPasswordPolicy+ Amazonka.IAM.GetAccountSummary+ Amazonka.IAM.GetContextKeysForCustomPolicy+ Amazonka.IAM.GetContextKeysForPrincipalPolicy+ Amazonka.IAM.GetCredentialReport+ Amazonka.IAM.GetGroup+ Amazonka.IAM.GetGroupPolicy+ Amazonka.IAM.GetInstanceProfile+ Amazonka.IAM.GetLoginProfile+ Amazonka.IAM.GetOpenIDConnectProvider+ Amazonka.IAM.GetOrganizationsAccessReport+ Amazonka.IAM.GetPolicy+ Amazonka.IAM.GetPolicyVersion+ Amazonka.IAM.GetRole+ Amazonka.IAM.GetRolePolicy+ Amazonka.IAM.GetSAMLProvider+ Amazonka.IAM.GetServerCertificate+ Amazonka.IAM.GetServiceLastAccessedDetails+ Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities+ Amazonka.IAM.GetServiceLinkedRoleDeletionStatus+ Amazonka.IAM.GetSSHPublicKey+ Amazonka.IAM.GetUser+ Amazonka.IAM.GetUserPolicy+ Amazonka.IAM.Lens+ Amazonka.IAM.ListAccessKeys+ Amazonka.IAM.ListAccountAliases+ Amazonka.IAM.ListAttachedGroupPolicies+ Amazonka.IAM.ListAttachedRolePolicies+ Amazonka.IAM.ListAttachedUserPolicies+ Amazonka.IAM.ListEntitiesForPolicy+ Amazonka.IAM.ListGroupPolicies+ Amazonka.IAM.ListGroups+ Amazonka.IAM.ListGroupsForUser+ Amazonka.IAM.ListInstanceProfiles+ Amazonka.IAM.ListInstanceProfilesForRole+ Amazonka.IAM.ListInstanceProfileTags+ Amazonka.IAM.ListMFADevices+ Amazonka.IAM.ListMFADeviceTags+ Amazonka.IAM.ListOpenIDConnectProviders+ Amazonka.IAM.ListOpenIDConnectProviderTags+ Amazonka.IAM.ListPolicies+ Amazonka.IAM.ListPoliciesGrantingServiceAccess+ Amazonka.IAM.ListPolicyTags+ Amazonka.IAM.ListPolicyVersions+ Amazonka.IAM.ListRolePolicies+ Amazonka.IAM.ListRoles+ Amazonka.IAM.ListRoleTags+ Amazonka.IAM.ListSAMLProviders+ Amazonka.IAM.ListSAMLProviderTags+ Amazonka.IAM.ListServerCertificates+ Amazonka.IAM.ListServerCertificateTags+ Amazonka.IAM.ListServiceSpecificCredentials+ Amazonka.IAM.ListSigningCertificates+ Amazonka.IAM.ListSSHPublicKeys+ Amazonka.IAM.ListUserPolicies+ Amazonka.IAM.ListUsers+ Amazonka.IAM.ListUserTags+ Amazonka.IAM.ListVirtualMFADevices+ Amazonka.IAM.PutGroupPolicy+ Amazonka.IAM.PutRolePermissionsBoundary+ Amazonka.IAM.PutRolePolicy+ Amazonka.IAM.PutUserPermissionsBoundary+ Amazonka.IAM.PutUserPolicy+ Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider+ Amazonka.IAM.RemoveRoleFromInstanceProfile+ Amazonka.IAM.RemoveUserFromGroup+ Amazonka.IAM.ResetServiceSpecificCredential+ Amazonka.IAM.ResyncMFADevice+ Amazonka.IAM.SetDefaultPolicyVersion+ Amazonka.IAM.SetSecurityTokenServicePreferences+ Amazonka.IAM.SimulateCustomPolicy+ Amazonka.IAM.SimulatePrincipalPolicy+ Amazonka.IAM.TagInstanceProfile+ Amazonka.IAM.TagMFADevice+ Amazonka.IAM.TagOpenIDConnectProvider+ Amazonka.IAM.TagPolicy+ Amazonka.IAM.TagRole+ Amazonka.IAM.TagSAMLProvider+ Amazonka.IAM.TagServerCertificate+ Amazonka.IAM.TagUser+ Amazonka.IAM.Types+ Amazonka.IAM.Types.AccessAdvisorUsageGranularityType+ Amazonka.IAM.Types.AccessDetail+ Amazonka.IAM.Types.AccessKeyInfo+ Amazonka.IAM.Types.AccessKeyLastUsed+ Amazonka.IAM.Types.AccessKeyMetadata+ Amazonka.IAM.Types.AssignmentStatusType+ Amazonka.IAM.Types.AttachedPermissionsBoundary+ Amazonka.IAM.Types.AttachedPolicy+ Amazonka.IAM.Types.ContextEntry+ Amazonka.IAM.Types.ContextKeyTypeEnum+ Amazonka.IAM.Types.DeletionTaskFailureReasonType+ Amazonka.IAM.Types.DeletionTaskStatusType+ Amazonka.IAM.Types.EncodingType+ Amazonka.IAM.Types.EntityDetails+ Amazonka.IAM.Types.EntityInfo+ Amazonka.IAM.Types.EntityType+ Amazonka.IAM.Types.ErrorDetails+ Amazonka.IAM.Types.EvaluationResult+ Amazonka.IAM.Types.GetContextKeysForPolicyResponse+ Amazonka.IAM.Types.GlobalEndpointTokenVersion+ Amazonka.IAM.Types.Group+ Amazonka.IAM.Types.GroupDetail+ Amazonka.IAM.Types.InstanceProfile+ Amazonka.IAM.Types.JobStatusType+ Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry+ Amazonka.IAM.Types.LoginProfile+ Amazonka.IAM.Types.ManagedPolicyDetail+ Amazonka.IAM.Types.MFADevice+ Amazonka.IAM.Types.OpenIDConnectProviderListEntry+ Amazonka.IAM.Types.OrganizationsDecisionDetail+ Amazonka.IAM.Types.PasswordPolicy+ Amazonka.IAM.Types.PermissionsBoundaryAttachmentType+ Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail+ Amazonka.IAM.Types.Policy+ Amazonka.IAM.Types.PolicyDetail+ Amazonka.IAM.Types.PolicyEvaluationDecisionType+ Amazonka.IAM.Types.PolicyGrantingServiceAccess+ Amazonka.IAM.Types.PolicyGroup+ Amazonka.IAM.Types.PolicyOwnerEntityType+ Amazonka.IAM.Types.PolicyRole+ Amazonka.IAM.Types.PolicyScopeType+ Amazonka.IAM.Types.PolicySourceType+ Amazonka.IAM.Types.PolicyType+ Amazonka.IAM.Types.PolicyUsageType+ Amazonka.IAM.Types.PolicyUser+ Amazonka.IAM.Types.PolicyVersion+ Amazonka.IAM.Types.Position+ Amazonka.IAM.Types.ReportFormatType+ Amazonka.IAM.Types.ReportStateType+ Amazonka.IAM.Types.ResourceSpecificResult+ Amazonka.IAM.Types.Role+ Amazonka.IAM.Types.RoleDetail+ Amazonka.IAM.Types.RoleLastUsed+ Amazonka.IAM.Types.RoleUsageType+ Amazonka.IAM.Types.SAMLProviderListEntry+ Amazonka.IAM.Types.ServerCertificate+ Amazonka.IAM.Types.ServerCertificateMetadata+ Amazonka.IAM.Types.ServiceLastAccessed+ Amazonka.IAM.Types.ServiceSpecificCredential+ Amazonka.IAM.Types.ServiceSpecificCredentialMetadata+ Amazonka.IAM.Types.SigningCertificate+ Amazonka.IAM.Types.SimulatePolicyResponse+ Amazonka.IAM.Types.SortKeyType+ Amazonka.IAM.Types.SSHPublicKey+ Amazonka.IAM.Types.SSHPublicKeyMetadata+ Amazonka.IAM.Types.Statement+ Amazonka.IAM.Types.StatusType+ Amazonka.IAM.Types.SummaryKeyType+ Amazonka.IAM.Types.Tag+ Amazonka.IAM.Types.TrackedActionLastAccessed+ Amazonka.IAM.Types.User+ Amazonka.IAM.Types.UserDetail+ Amazonka.IAM.Types.VirtualMFADevice+ Amazonka.IAM.UntagInstanceProfile+ Amazonka.IAM.UntagMFADevice+ Amazonka.IAM.UntagOpenIDConnectProvider+ Amazonka.IAM.UntagPolicy+ Amazonka.IAM.UntagRole+ Amazonka.IAM.UntagSAMLProvider+ Amazonka.IAM.UntagServerCertificate+ Amazonka.IAM.UntagUser+ Amazonka.IAM.UpdateAccessKey+ Amazonka.IAM.UpdateAccountPasswordPolicy+ Amazonka.IAM.UpdateAssumeRolePolicy+ Amazonka.IAM.UpdateGroup+ Amazonka.IAM.UpdateLoginProfile+ Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint+ Amazonka.IAM.UpdateRole+ Amazonka.IAM.UpdateRoleDescription+ Amazonka.IAM.UpdateSAMLProvider+ Amazonka.IAM.UpdateServerCertificate+ Amazonka.IAM.UpdateServiceSpecificCredential+ Amazonka.IAM.UpdateSigningCertificate+ Amazonka.IAM.UpdateSSHPublicKey+ Amazonka.IAM.UpdateUser+ Amazonka.IAM.UploadServerCertificate+ Amazonka.IAM.UploadSigningCertificate+ Amazonka.IAM.UploadSSHPublicKey+ Amazonka.IAM.Waiters - build-depends:- amazonka-core == 1.6.1.*- , base >= 4.7 && < 5+ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5 test-suite amazonka-iam-test- type: exitcode-stdio-1.0- default-language: Haskell2010- hs-source-dirs: test- main-is: Main.hs-- ghc-options: -Wall -threaded+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs+ ghc-options: -Wall -threaded - -- This section is encoded by the template and any modules added by- -- hand outside these namespaces will not correctly be added to the- -- distribution package.- other-modules:- Test.AWS.IAM- , Test.AWS.Gen.IAM- , Test.AWS.IAM.Internal+ -- This section is encoded by the template and any modules added by+ -- hand outside these namespaces will not correctly be added to the+ -- distribution package.+ other-modules:+ Test.Amazonka.Gen.IAM+ Test.Amazonka.IAM+ Test.Amazonka.IAM.Internal - build-depends:- amazonka-core == 1.6.1.*- , amazonka-test == 1.6.1.*- , amazonka-iam- , base- , bytestring- , tasty- , tasty-hunit- , text- , time- , unordered-containers+ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-iam+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AddClientIDToOpenIDConnectProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/AddClientIDToOpenIDConnectProviderResponse.proto view
− fixture/AddClientIdToOpenIdConnectProvider.yaml
− fixture/AddClientIdToOpenIdConnectProviderResponse.proto
fixture/AddRoleToInstanceProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/AddUserToGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/AttachGroupPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/AttachRolePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/AttachUserPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ChangePassword.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateAccessKey.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateAccountAlias.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateInstanceProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateLoginProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateOpenIDConnectProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateOpenIDConnectProviderResponse.proto view
− fixture/CreateOpenIdConnectProvider.yaml
− fixture/CreateOpenIdConnectProviderResponse.proto
fixture/CreatePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreatePolicyVersion.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateRole.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateSAMLProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/CreateVirtualMFADevice.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeactivateMFADevice.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteAccessKey.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteAccountAlias.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteAccountPasswordPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteGroupPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteInstanceProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteLoginProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteOpenIDConnectProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteOpenIDConnectProviderResponse.proto view
− fixture/DeleteOpenIdConnectProvider.yaml
− fixture/DeleteOpenIdConnectProviderResponse.proto
fixture/DeletePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeletePolicyVersion.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteRole.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteRolePermissionsBoundary.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteRolePermissionsBoundaryResponse.proto view
fixture/DeleteRolePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteSAMLProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteSSHPublicKey.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteServerCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteSigningCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteUserPermissionsBoundary.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteUserPermissionsBoundaryResponse.proto view
fixture/DeleteUserPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DeleteVirtualMFADevice.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DetachGroupPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DetachRolePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/DetachUserPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/EnableMFADevice.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GenerateCredentialReport.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GenerateOrganizationsAccessReport.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GenerateOrganizationsAccessReportResponse.proto view
+ fixture/GenerateServiceLastAccessedDetails.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GenerateServiceLastAccessedDetailsResponse.proto view
fixture/GetAccessKeyLastUsed.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetAccountAuthorizationDetails.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetAccountPasswordPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetAccountSummary.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetContextKeysForCustomPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetContextKeysForPrincipalPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetCredentialReport.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetGroupPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetInstanceProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetLoginProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetOpenIDConnectProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetOpenIDConnectProviderResponse.proto view
− fixture/GetOpenIdConnectProvider.yaml
− fixture/GetOpenIdConnectProviderResponse.proto
+ fixture/GetOrganizationsAccessReport.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetOrganizationsAccessReportResponse.proto view
fixture/GetPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetPolicyVersion.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetRole.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetRolePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetSAMLProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetSSHPublicKey.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetServerCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetServiceLastAccessedDetails.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetServiceLastAccessedDetailsResponse.proto view
+ fixture/GetServiceLastAccessedDetailsWithEntities.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetServiceLastAccessedDetailsWithEntitiesResponse.proto view
fixture/GetUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/GetUserPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListAccessKeys.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListAccountAliases.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListAttachedGroupPolicies.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListAttachedRolePolicies.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListAttachedUserPolicies.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListEntitiesForPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListGroupPolicies.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListGroups.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListGroupsForUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListInstanceProfileTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListInstanceProfileTagsResponse.proto view
fixture/ListInstanceProfiles.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListInstanceProfilesForRole.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListMFADeviceTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListMFADeviceTagsResponse.proto view
fixture/ListMFADevices.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListOpenIDConnectProviderTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListOpenIDConnectProviderTagsResponse.proto view
+ fixture/ListOpenIDConnectProviders.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListOpenIDConnectProvidersResponse.proto view
− fixture/ListOpenIdConnectProviders.yaml
− fixture/ListOpenIdConnectProvidersResponse.proto
fixture/ListPolicies.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListPoliciesGrantingServiceAccess.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListPoliciesGrantingServiceAccessResponse.proto view
+ fixture/ListPolicyTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListPolicyTagsResponse.proto view
fixture/ListPolicyVersions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListRolePolicies.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListRoleTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListRoleTagsResponse.proto view
fixture/ListRoles.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListSAMLProviderTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListSAMLProviderTagsResponse.proto view
fixture/ListSAMLProviders.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListSSHPublicKeys.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListServerCertificateTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListServerCertificateTagsResponse.proto view
fixture/ListServerCertificates.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListSigningCertificates.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListUserPolicies.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListUserTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListUserTagsResponse.proto view
fixture/ListUsers.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ListVirtualMFADevices.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/PutGroupPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PutRolePermissionsBoundary.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PutRolePermissionsBoundaryResponse.proto view
fixture/PutRolePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PutUserPermissionsBoundary.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PutUserPermissionsBoundaryResponse.proto view
fixture/PutUserPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RemoveClientIDFromOpenIDConnectProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/RemoveClientIDFromOpenIDConnectProviderResponse.proto view
− fixture/RemoveClientIdFromOpenIdConnectProvider.yaml
− fixture/RemoveClientIdFromOpenIdConnectProviderResponse.proto
fixture/RemoveRoleFromInstanceProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/RemoveUserFromGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/ResyncMFADevice.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/SetDefaultPolicyVersion.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/SetSecurityTokenServicePreferences.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/SetSecurityTokenServicePreferencesResponse.proto view
fixture/SimulateCustomPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/SimulatePrincipalPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagInstanceProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagInstanceProfileResponse.proto view
+ fixture/TagMFADevice.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagMFADeviceResponse.proto view
+ fixture/TagOpenIDConnectProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagOpenIDConnectProviderResponse.proto view
+ fixture/TagPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagPolicyResponse.proto view
+ fixture/TagRole.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagRoleResponse.proto view
+ fixture/TagSAMLProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagSAMLProviderResponse.proto view
+ fixture/TagServerCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagServerCertificateResponse.proto view
+ fixture/TagUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagUserResponse.proto view
+ fixture/UntagInstanceProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagInstanceProfileResponse.proto view
+ fixture/UntagMFADevice.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagMFADeviceResponse.proto view
+ fixture/UntagOpenIDConnectProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagOpenIDConnectProviderResponse.proto view
+ fixture/UntagPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagPolicyResponse.proto view
+ fixture/UntagRole.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagRoleResponse.proto view
+ fixture/UntagSAMLProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagSAMLProviderResponse.proto view
+ fixture/UntagServerCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagServerCertificateResponse.proto view
+ fixture/UntagUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagUserResponse.proto view
fixture/UpdateAccessKey.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UpdateAccountPasswordPolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UpdateAssumeRolePolicy.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UpdateGroup.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UpdateLoginProfile.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateOpenIDConnectProviderThumbprint.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UpdateOpenIDConnectProviderThumbprintResponse.proto view
− fixture/UpdateOpenIdConnectProviderThumbprint.yaml
− fixture/UpdateOpenIdConnectProviderThumbprintResponse.proto
fixture/UpdateSAMLProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UpdateSSHPublicKey.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UpdateServerCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UpdateSigningCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UpdateUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UploadSSHPublicKey.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UploadServerCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
fixture/UploadSigningCertificate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iam/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: iam.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ gen/Amazonka/IAM.hs view
@@ -0,0 +1,1541 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.IAM+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2010-05-08@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Identity and Access Management+--+-- Identity and Access Management (IAM) is a web service for securely+-- controlling access to Amazon Web Services services. With IAM, you can+-- centrally manage users, security credentials such as access keys, and+-- permissions that control which Amazon Web Services resources users and+-- applications can access. For more information about IAM, see+-- <http://aws.amazon.com/iam/ Identity and Access Management (IAM)> and+-- the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/ Identity and Access Management User Guide>.+module Amazonka.IAM+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** ConcurrentModificationException+ _ConcurrentModificationException,++ -- ** CredentialReportExpiredException+ _CredentialReportExpiredException,++ -- ** CredentialReportNotPresentException+ _CredentialReportNotPresentException,++ -- ** CredentialReportNotReadyException+ _CredentialReportNotReadyException,++ -- ** DeleteConflictException+ _DeleteConflictException,++ -- ** DuplicateCertificateException+ _DuplicateCertificateException,++ -- ** DuplicateSSHPublicKeyException+ _DuplicateSSHPublicKeyException,++ -- ** EntityAlreadyExistsException+ _EntityAlreadyExistsException,++ -- ** EntityTemporarilyUnmodifiableException+ _EntityTemporarilyUnmodifiableException,++ -- ** InvalidAuthenticationCodeException+ _InvalidAuthenticationCodeException,++ -- ** InvalidCertificateException+ _InvalidCertificateException,++ -- ** InvalidInputException+ _InvalidInputException,++ -- ** InvalidPublicKeyException+ _InvalidPublicKeyException,++ -- ** InvalidUserTypeException+ _InvalidUserTypeException,++ -- ** KeyPairMismatchException+ _KeyPairMismatchException,++ -- ** LimitExceededException+ _LimitExceededException,++ -- ** MalformedCertificateException+ _MalformedCertificateException,++ -- ** MalformedPolicyDocumentException+ _MalformedPolicyDocumentException,++ -- ** NoSuchEntityException+ _NoSuchEntityException,++ -- ** PasswordPolicyViolationException+ _PasswordPolicyViolationException,++ -- ** PolicyEvaluationException+ _PolicyEvaluationException,++ -- ** PolicyNotAttachableException+ _PolicyNotAttachableException,++ -- ** ReportGenerationLimitExceededException+ _ReportGenerationLimitExceededException,++ -- ** ServiceFailureException+ _ServiceFailureException,++ -- ** ServiceNotSupportedException+ _ServiceNotSupportedException,++ -- ** UnmodifiableEntityException+ _UnmodifiableEntityException,++ -- ** UnrecognizedPublicKeyEncodingException+ _UnrecognizedPublicKeyEncodingException,++ -- * Waiters+ -- $waiters++ -- ** InstanceProfileExists+ newInstanceProfileExists,++ -- ** PolicyExists+ newPolicyExists,++ -- ** RoleExists+ newRoleExists,++ -- ** UserExists+ newUserExists,++ -- * Operations+ -- $operations++ -- ** AddClientIDToOpenIDConnectProvider+ AddClientIDToOpenIDConnectProvider (AddClientIDToOpenIDConnectProvider'),+ newAddClientIDToOpenIDConnectProvider,+ AddClientIDToOpenIDConnectProviderResponse (AddClientIDToOpenIDConnectProviderResponse'),+ newAddClientIDToOpenIDConnectProviderResponse,++ -- ** AddRoleToInstanceProfile+ AddRoleToInstanceProfile (AddRoleToInstanceProfile'),+ newAddRoleToInstanceProfile,+ AddRoleToInstanceProfileResponse (AddRoleToInstanceProfileResponse'),+ newAddRoleToInstanceProfileResponse,++ -- ** AddUserToGroup+ AddUserToGroup (AddUserToGroup'),+ newAddUserToGroup,+ AddUserToGroupResponse (AddUserToGroupResponse'),+ newAddUserToGroupResponse,++ -- ** AttachGroupPolicy+ AttachGroupPolicy (AttachGroupPolicy'),+ newAttachGroupPolicy,+ AttachGroupPolicyResponse (AttachGroupPolicyResponse'),+ newAttachGroupPolicyResponse,++ -- ** AttachRolePolicy+ AttachRolePolicy (AttachRolePolicy'),+ newAttachRolePolicy,+ AttachRolePolicyResponse (AttachRolePolicyResponse'),+ newAttachRolePolicyResponse,++ -- ** AttachUserPolicy+ AttachUserPolicy (AttachUserPolicy'),+ newAttachUserPolicy,+ AttachUserPolicyResponse (AttachUserPolicyResponse'),+ newAttachUserPolicyResponse,++ -- ** ChangePassword+ ChangePassword (ChangePassword'),+ newChangePassword,+ ChangePasswordResponse (ChangePasswordResponse'),+ newChangePasswordResponse,++ -- ** CreateAccessKey+ CreateAccessKey (CreateAccessKey'),+ newCreateAccessKey,+ CreateAccessKeyResponse (CreateAccessKeyResponse'),+ newCreateAccessKeyResponse,++ -- ** CreateAccountAlias+ CreateAccountAlias (CreateAccountAlias'),+ newCreateAccountAlias,+ CreateAccountAliasResponse (CreateAccountAliasResponse'),+ newCreateAccountAliasResponse,++ -- ** CreateGroup+ CreateGroup (CreateGroup'),+ newCreateGroup,+ CreateGroupResponse (CreateGroupResponse'),+ newCreateGroupResponse,++ -- ** CreateInstanceProfile+ CreateInstanceProfile (CreateInstanceProfile'),+ newCreateInstanceProfile,+ CreateInstanceProfileResponse (CreateInstanceProfileResponse'),+ newCreateInstanceProfileResponse,++ -- ** CreateLoginProfile+ CreateLoginProfile (CreateLoginProfile'),+ newCreateLoginProfile,+ CreateLoginProfileResponse (CreateLoginProfileResponse'),+ newCreateLoginProfileResponse,++ -- ** CreateOpenIDConnectProvider+ CreateOpenIDConnectProvider (CreateOpenIDConnectProvider'),+ newCreateOpenIDConnectProvider,+ CreateOpenIDConnectProviderResponse (CreateOpenIDConnectProviderResponse'),+ newCreateOpenIDConnectProviderResponse,++ -- ** CreatePolicy+ CreatePolicy (CreatePolicy'),+ newCreatePolicy,+ CreatePolicyResponse (CreatePolicyResponse'),+ newCreatePolicyResponse,++ -- ** CreatePolicyVersion+ CreatePolicyVersion (CreatePolicyVersion'),+ newCreatePolicyVersion,+ CreatePolicyVersionResponse (CreatePolicyVersionResponse'),+ newCreatePolicyVersionResponse,++ -- ** CreateRole+ CreateRole (CreateRole'),+ newCreateRole,+ CreateRoleResponse (CreateRoleResponse'),+ newCreateRoleResponse,++ -- ** CreateSAMLProvider+ CreateSAMLProvider (CreateSAMLProvider'),+ newCreateSAMLProvider,+ CreateSAMLProviderResponse (CreateSAMLProviderResponse'),+ newCreateSAMLProviderResponse,++ -- ** CreateServiceLinkedRole+ CreateServiceLinkedRole (CreateServiceLinkedRole'),+ newCreateServiceLinkedRole,+ CreateServiceLinkedRoleResponse (CreateServiceLinkedRoleResponse'),+ newCreateServiceLinkedRoleResponse,++ -- ** CreateServiceSpecificCredential+ CreateServiceSpecificCredential (CreateServiceSpecificCredential'),+ newCreateServiceSpecificCredential,+ CreateServiceSpecificCredentialResponse (CreateServiceSpecificCredentialResponse'),+ newCreateServiceSpecificCredentialResponse,++ -- ** CreateUser+ CreateUser (CreateUser'),+ newCreateUser,+ CreateUserResponse (CreateUserResponse'),+ newCreateUserResponse,++ -- ** CreateVirtualMFADevice+ CreateVirtualMFADevice (CreateVirtualMFADevice'),+ newCreateVirtualMFADevice,+ CreateVirtualMFADeviceResponse (CreateVirtualMFADeviceResponse'),+ newCreateVirtualMFADeviceResponse,++ -- ** DeactivateMFADevice+ DeactivateMFADevice (DeactivateMFADevice'),+ newDeactivateMFADevice,+ DeactivateMFADeviceResponse (DeactivateMFADeviceResponse'),+ newDeactivateMFADeviceResponse,++ -- ** DeleteAccessKey+ DeleteAccessKey (DeleteAccessKey'),+ newDeleteAccessKey,+ DeleteAccessKeyResponse (DeleteAccessKeyResponse'),+ newDeleteAccessKeyResponse,++ -- ** DeleteAccountAlias+ DeleteAccountAlias (DeleteAccountAlias'),+ newDeleteAccountAlias,+ DeleteAccountAliasResponse (DeleteAccountAliasResponse'),+ newDeleteAccountAliasResponse,++ -- ** DeleteAccountPasswordPolicy+ DeleteAccountPasswordPolicy (DeleteAccountPasswordPolicy'),+ newDeleteAccountPasswordPolicy,+ DeleteAccountPasswordPolicyResponse (DeleteAccountPasswordPolicyResponse'),+ newDeleteAccountPasswordPolicyResponse,++ -- ** DeleteGroup+ DeleteGroup (DeleteGroup'),+ newDeleteGroup,+ DeleteGroupResponse (DeleteGroupResponse'),+ newDeleteGroupResponse,++ -- ** DeleteGroupPolicy+ DeleteGroupPolicy (DeleteGroupPolicy'),+ newDeleteGroupPolicy,+ DeleteGroupPolicyResponse (DeleteGroupPolicyResponse'),+ newDeleteGroupPolicyResponse,++ -- ** DeleteInstanceProfile+ DeleteInstanceProfile (DeleteInstanceProfile'),+ newDeleteInstanceProfile,+ DeleteInstanceProfileResponse (DeleteInstanceProfileResponse'),+ newDeleteInstanceProfileResponse,++ -- ** DeleteLoginProfile+ DeleteLoginProfile (DeleteLoginProfile'),+ newDeleteLoginProfile,+ DeleteLoginProfileResponse (DeleteLoginProfileResponse'),+ newDeleteLoginProfileResponse,++ -- ** DeleteOpenIDConnectProvider+ DeleteOpenIDConnectProvider (DeleteOpenIDConnectProvider'),+ newDeleteOpenIDConnectProvider,+ DeleteOpenIDConnectProviderResponse (DeleteOpenIDConnectProviderResponse'),+ newDeleteOpenIDConnectProviderResponse,++ -- ** DeletePolicy+ DeletePolicy (DeletePolicy'),+ newDeletePolicy,+ DeletePolicyResponse (DeletePolicyResponse'),+ newDeletePolicyResponse,++ -- ** DeletePolicyVersion+ DeletePolicyVersion (DeletePolicyVersion'),+ newDeletePolicyVersion,+ DeletePolicyVersionResponse (DeletePolicyVersionResponse'),+ newDeletePolicyVersionResponse,++ -- ** DeleteRole+ DeleteRole (DeleteRole'),+ newDeleteRole,+ DeleteRoleResponse (DeleteRoleResponse'),+ newDeleteRoleResponse,++ -- ** DeleteRolePermissionsBoundary+ DeleteRolePermissionsBoundary (DeleteRolePermissionsBoundary'),+ newDeleteRolePermissionsBoundary,+ DeleteRolePermissionsBoundaryResponse (DeleteRolePermissionsBoundaryResponse'),+ newDeleteRolePermissionsBoundaryResponse,++ -- ** DeleteRolePolicy+ DeleteRolePolicy (DeleteRolePolicy'),+ newDeleteRolePolicy,+ DeleteRolePolicyResponse (DeleteRolePolicyResponse'),+ newDeleteRolePolicyResponse,++ -- ** DeleteSAMLProvider+ DeleteSAMLProvider (DeleteSAMLProvider'),+ newDeleteSAMLProvider,+ DeleteSAMLProviderResponse (DeleteSAMLProviderResponse'),+ newDeleteSAMLProviderResponse,++ -- ** DeleteSSHPublicKey+ DeleteSSHPublicKey (DeleteSSHPublicKey'),+ newDeleteSSHPublicKey,+ DeleteSSHPublicKeyResponse (DeleteSSHPublicKeyResponse'),+ newDeleteSSHPublicKeyResponse,++ -- ** DeleteServerCertificate+ DeleteServerCertificate (DeleteServerCertificate'),+ newDeleteServerCertificate,+ DeleteServerCertificateResponse (DeleteServerCertificateResponse'),+ newDeleteServerCertificateResponse,++ -- ** DeleteServiceLinkedRole+ DeleteServiceLinkedRole (DeleteServiceLinkedRole'),+ newDeleteServiceLinkedRole,+ DeleteServiceLinkedRoleResponse (DeleteServiceLinkedRoleResponse'),+ newDeleteServiceLinkedRoleResponse,++ -- ** DeleteServiceSpecificCredential+ DeleteServiceSpecificCredential (DeleteServiceSpecificCredential'),+ newDeleteServiceSpecificCredential,+ DeleteServiceSpecificCredentialResponse (DeleteServiceSpecificCredentialResponse'),+ newDeleteServiceSpecificCredentialResponse,++ -- ** DeleteSigningCertificate+ DeleteSigningCertificate (DeleteSigningCertificate'),+ newDeleteSigningCertificate,+ DeleteSigningCertificateResponse (DeleteSigningCertificateResponse'),+ newDeleteSigningCertificateResponse,++ -- ** DeleteUser+ DeleteUser (DeleteUser'),+ newDeleteUser,+ DeleteUserResponse (DeleteUserResponse'),+ newDeleteUserResponse,++ -- ** DeleteUserPermissionsBoundary+ DeleteUserPermissionsBoundary (DeleteUserPermissionsBoundary'),+ newDeleteUserPermissionsBoundary,+ DeleteUserPermissionsBoundaryResponse (DeleteUserPermissionsBoundaryResponse'),+ newDeleteUserPermissionsBoundaryResponse,++ -- ** DeleteUserPolicy+ DeleteUserPolicy (DeleteUserPolicy'),+ newDeleteUserPolicy,+ DeleteUserPolicyResponse (DeleteUserPolicyResponse'),+ newDeleteUserPolicyResponse,++ -- ** DeleteVirtualMFADevice+ DeleteVirtualMFADevice (DeleteVirtualMFADevice'),+ newDeleteVirtualMFADevice,+ DeleteVirtualMFADeviceResponse (DeleteVirtualMFADeviceResponse'),+ newDeleteVirtualMFADeviceResponse,++ -- ** DetachGroupPolicy+ DetachGroupPolicy (DetachGroupPolicy'),+ newDetachGroupPolicy,+ DetachGroupPolicyResponse (DetachGroupPolicyResponse'),+ newDetachGroupPolicyResponse,++ -- ** DetachRolePolicy+ DetachRolePolicy (DetachRolePolicy'),+ newDetachRolePolicy,+ DetachRolePolicyResponse (DetachRolePolicyResponse'),+ newDetachRolePolicyResponse,++ -- ** DetachUserPolicy+ DetachUserPolicy (DetachUserPolicy'),+ newDetachUserPolicy,+ DetachUserPolicyResponse (DetachUserPolicyResponse'),+ newDetachUserPolicyResponse,++ -- ** EnableMFADevice+ EnableMFADevice (EnableMFADevice'),+ newEnableMFADevice,+ EnableMFADeviceResponse (EnableMFADeviceResponse'),+ newEnableMFADeviceResponse,++ -- ** GenerateCredentialReport+ GenerateCredentialReport (GenerateCredentialReport'),+ newGenerateCredentialReport,+ GenerateCredentialReportResponse (GenerateCredentialReportResponse'),+ newGenerateCredentialReportResponse,++ -- ** GenerateOrganizationsAccessReport+ GenerateOrganizationsAccessReport (GenerateOrganizationsAccessReport'),+ newGenerateOrganizationsAccessReport,+ GenerateOrganizationsAccessReportResponse (GenerateOrganizationsAccessReportResponse'),+ newGenerateOrganizationsAccessReportResponse,++ -- ** GenerateServiceLastAccessedDetails+ GenerateServiceLastAccessedDetails (GenerateServiceLastAccessedDetails'),+ newGenerateServiceLastAccessedDetails,+ GenerateServiceLastAccessedDetailsResponse (GenerateServiceLastAccessedDetailsResponse'),+ newGenerateServiceLastAccessedDetailsResponse,++ -- ** GetAccessKeyLastUsed+ GetAccessKeyLastUsed (GetAccessKeyLastUsed'),+ newGetAccessKeyLastUsed,+ GetAccessKeyLastUsedResponse (GetAccessKeyLastUsedResponse'),+ newGetAccessKeyLastUsedResponse,++ -- ** GetAccountAuthorizationDetails (Paginated)+ GetAccountAuthorizationDetails (GetAccountAuthorizationDetails'),+ newGetAccountAuthorizationDetails,+ GetAccountAuthorizationDetailsResponse (GetAccountAuthorizationDetailsResponse'),+ newGetAccountAuthorizationDetailsResponse,++ -- ** GetAccountPasswordPolicy+ GetAccountPasswordPolicy (GetAccountPasswordPolicy'),+ newGetAccountPasswordPolicy,+ GetAccountPasswordPolicyResponse (GetAccountPasswordPolicyResponse'),+ newGetAccountPasswordPolicyResponse,++ -- ** GetAccountSummary+ GetAccountSummary (GetAccountSummary'),+ newGetAccountSummary,+ GetAccountSummaryResponse (GetAccountSummaryResponse'),+ newGetAccountSummaryResponse,++ -- ** GetContextKeysForCustomPolicy+ GetContextKeysForCustomPolicy (GetContextKeysForCustomPolicy'),+ newGetContextKeysForCustomPolicy,+ GetContextKeysForPolicyResponse (GetContextKeysForPolicyResponse'),+ newGetContextKeysForPolicyResponse,++ -- ** GetContextKeysForPrincipalPolicy+ GetContextKeysForPrincipalPolicy (GetContextKeysForPrincipalPolicy'),+ newGetContextKeysForPrincipalPolicy,+ GetContextKeysForPolicyResponse (GetContextKeysForPolicyResponse'),+ newGetContextKeysForPolicyResponse,++ -- ** GetCredentialReport+ GetCredentialReport (GetCredentialReport'),+ newGetCredentialReport,+ GetCredentialReportResponse (GetCredentialReportResponse'),+ newGetCredentialReportResponse,++ -- ** GetGroup (Paginated)+ GetGroup (GetGroup'),+ newGetGroup,+ GetGroupResponse (GetGroupResponse'),+ newGetGroupResponse,++ -- ** GetGroupPolicy+ GetGroupPolicy (GetGroupPolicy'),+ newGetGroupPolicy,+ GetGroupPolicyResponse (GetGroupPolicyResponse'),+ newGetGroupPolicyResponse,++ -- ** GetInstanceProfile+ GetInstanceProfile (GetInstanceProfile'),+ newGetInstanceProfile,+ GetInstanceProfileResponse (GetInstanceProfileResponse'),+ newGetInstanceProfileResponse,++ -- ** GetLoginProfile+ GetLoginProfile (GetLoginProfile'),+ newGetLoginProfile,+ GetLoginProfileResponse (GetLoginProfileResponse'),+ newGetLoginProfileResponse,++ -- ** GetOpenIDConnectProvider+ GetOpenIDConnectProvider (GetOpenIDConnectProvider'),+ newGetOpenIDConnectProvider,+ GetOpenIDConnectProviderResponse (GetOpenIDConnectProviderResponse'),+ newGetOpenIDConnectProviderResponse,++ -- ** GetOrganizationsAccessReport+ GetOrganizationsAccessReport (GetOrganizationsAccessReport'),+ newGetOrganizationsAccessReport,+ GetOrganizationsAccessReportResponse (GetOrganizationsAccessReportResponse'),+ newGetOrganizationsAccessReportResponse,++ -- ** GetPolicy+ GetPolicy (GetPolicy'),+ newGetPolicy,+ GetPolicyResponse (GetPolicyResponse'),+ newGetPolicyResponse,++ -- ** GetPolicyVersion+ GetPolicyVersion (GetPolicyVersion'),+ newGetPolicyVersion,+ GetPolicyVersionResponse (GetPolicyVersionResponse'),+ newGetPolicyVersionResponse,++ -- ** GetRole+ GetRole (GetRole'),+ newGetRole,+ GetRoleResponse (GetRoleResponse'),+ newGetRoleResponse,++ -- ** GetRolePolicy+ GetRolePolicy (GetRolePolicy'),+ newGetRolePolicy,+ GetRolePolicyResponse (GetRolePolicyResponse'),+ newGetRolePolicyResponse,++ -- ** GetSAMLProvider+ GetSAMLProvider (GetSAMLProvider'),+ newGetSAMLProvider,+ GetSAMLProviderResponse (GetSAMLProviderResponse'),+ newGetSAMLProviderResponse,++ -- ** GetSSHPublicKey+ GetSSHPublicKey (GetSSHPublicKey'),+ newGetSSHPublicKey,+ GetSSHPublicKeyResponse (GetSSHPublicKeyResponse'),+ newGetSSHPublicKeyResponse,++ -- ** GetServerCertificate+ GetServerCertificate (GetServerCertificate'),+ newGetServerCertificate,+ GetServerCertificateResponse (GetServerCertificateResponse'),+ newGetServerCertificateResponse,++ -- ** GetServiceLastAccessedDetails+ GetServiceLastAccessedDetails (GetServiceLastAccessedDetails'),+ newGetServiceLastAccessedDetails,+ GetServiceLastAccessedDetailsResponse (GetServiceLastAccessedDetailsResponse'),+ newGetServiceLastAccessedDetailsResponse,++ -- ** GetServiceLastAccessedDetailsWithEntities+ GetServiceLastAccessedDetailsWithEntities (GetServiceLastAccessedDetailsWithEntities'),+ newGetServiceLastAccessedDetailsWithEntities,+ GetServiceLastAccessedDetailsWithEntitiesResponse (GetServiceLastAccessedDetailsWithEntitiesResponse'),+ newGetServiceLastAccessedDetailsWithEntitiesResponse,++ -- ** GetServiceLinkedRoleDeletionStatus+ GetServiceLinkedRoleDeletionStatus (GetServiceLinkedRoleDeletionStatus'),+ newGetServiceLinkedRoleDeletionStatus,+ GetServiceLinkedRoleDeletionStatusResponse (GetServiceLinkedRoleDeletionStatusResponse'),+ newGetServiceLinkedRoleDeletionStatusResponse,++ -- ** GetUser+ GetUser (GetUser'),+ newGetUser,+ GetUserResponse (GetUserResponse'),+ newGetUserResponse,++ -- ** GetUserPolicy+ GetUserPolicy (GetUserPolicy'),+ newGetUserPolicy,+ GetUserPolicyResponse (GetUserPolicyResponse'),+ newGetUserPolicyResponse,++ -- ** ListAccessKeys (Paginated)+ ListAccessKeys (ListAccessKeys'),+ newListAccessKeys,+ ListAccessKeysResponse (ListAccessKeysResponse'),+ newListAccessKeysResponse,++ -- ** ListAccountAliases (Paginated)+ ListAccountAliases (ListAccountAliases'),+ newListAccountAliases,+ ListAccountAliasesResponse (ListAccountAliasesResponse'),+ newListAccountAliasesResponse,++ -- ** ListAttachedGroupPolicies (Paginated)+ ListAttachedGroupPolicies (ListAttachedGroupPolicies'),+ newListAttachedGroupPolicies,+ ListAttachedGroupPoliciesResponse (ListAttachedGroupPoliciesResponse'),+ newListAttachedGroupPoliciesResponse,++ -- ** ListAttachedRolePolicies (Paginated)+ ListAttachedRolePolicies (ListAttachedRolePolicies'),+ newListAttachedRolePolicies,+ ListAttachedRolePoliciesResponse (ListAttachedRolePoliciesResponse'),+ newListAttachedRolePoliciesResponse,++ -- ** ListAttachedUserPolicies (Paginated)+ ListAttachedUserPolicies (ListAttachedUserPolicies'),+ newListAttachedUserPolicies,+ ListAttachedUserPoliciesResponse (ListAttachedUserPoliciesResponse'),+ newListAttachedUserPoliciesResponse,++ -- ** ListEntitiesForPolicy (Paginated)+ ListEntitiesForPolicy (ListEntitiesForPolicy'),+ newListEntitiesForPolicy,+ ListEntitiesForPolicyResponse (ListEntitiesForPolicyResponse'),+ newListEntitiesForPolicyResponse,++ -- ** ListGroupPolicies (Paginated)+ ListGroupPolicies (ListGroupPolicies'),+ newListGroupPolicies,+ ListGroupPoliciesResponse (ListGroupPoliciesResponse'),+ newListGroupPoliciesResponse,++ -- ** ListGroups (Paginated)+ ListGroups (ListGroups'),+ newListGroups,+ ListGroupsResponse (ListGroupsResponse'),+ newListGroupsResponse,++ -- ** ListGroupsForUser (Paginated)+ ListGroupsForUser (ListGroupsForUser'),+ newListGroupsForUser,+ ListGroupsForUserResponse (ListGroupsForUserResponse'),+ newListGroupsForUserResponse,++ -- ** ListInstanceProfileTags+ ListInstanceProfileTags (ListInstanceProfileTags'),+ newListInstanceProfileTags,+ ListInstanceProfileTagsResponse (ListInstanceProfileTagsResponse'),+ newListInstanceProfileTagsResponse,++ -- ** ListInstanceProfiles (Paginated)+ ListInstanceProfiles (ListInstanceProfiles'),+ newListInstanceProfiles,+ ListInstanceProfilesResponse (ListInstanceProfilesResponse'),+ newListInstanceProfilesResponse,++ -- ** ListInstanceProfilesForRole (Paginated)+ ListInstanceProfilesForRole (ListInstanceProfilesForRole'),+ newListInstanceProfilesForRole,+ ListInstanceProfilesForRoleResponse (ListInstanceProfilesForRoleResponse'),+ newListInstanceProfilesForRoleResponse,++ -- ** ListMFADeviceTags+ ListMFADeviceTags (ListMFADeviceTags'),+ newListMFADeviceTags,+ ListMFADeviceTagsResponse (ListMFADeviceTagsResponse'),+ newListMFADeviceTagsResponse,++ -- ** ListMFADevices (Paginated)+ ListMFADevices (ListMFADevices'),+ newListMFADevices,+ ListMFADevicesResponse (ListMFADevicesResponse'),+ newListMFADevicesResponse,++ -- ** ListOpenIDConnectProviderTags+ ListOpenIDConnectProviderTags (ListOpenIDConnectProviderTags'),+ newListOpenIDConnectProviderTags,+ ListOpenIDConnectProviderTagsResponse (ListOpenIDConnectProviderTagsResponse'),+ newListOpenIDConnectProviderTagsResponse,++ -- ** ListOpenIDConnectProviders+ ListOpenIDConnectProviders (ListOpenIDConnectProviders'),+ newListOpenIDConnectProviders,+ ListOpenIDConnectProvidersResponse (ListOpenIDConnectProvidersResponse'),+ newListOpenIDConnectProvidersResponse,++ -- ** ListPolicies (Paginated)+ ListPolicies (ListPolicies'),+ newListPolicies,+ ListPoliciesResponse (ListPoliciesResponse'),+ newListPoliciesResponse,++ -- ** ListPoliciesGrantingServiceAccess+ ListPoliciesGrantingServiceAccess (ListPoliciesGrantingServiceAccess'),+ newListPoliciesGrantingServiceAccess,+ ListPoliciesGrantingServiceAccessResponse (ListPoliciesGrantingServiceAccessResponse'),+ newListPoliciesGrantingServiceAccessResponse,++ -- ** ListPolicyTags+ ListPolicyTags (ListPolicyTags'),+ newListPolicyTags,+ ListPolicyTagsResponse (ListPolicyTagsResponse'),+ newListPolicyTagsResponse,++ -- ** ListPolicyVersions (Paginated)+ ListPolicyVersions (ListPolicyVersions'),+ newListPolicyVersions,+ ListPolicyVersionsResponse (ListPolicyVersionsResponse'),+ newListPolicyVersionsResponse,++ -- ** ListRolePolicies (Paginated)+ ListRolePolicies (ListRolePolicies'),+ newListRolePolicies,+ ListRolePoliciesResponse (ListRolePoliciesResponse'),+ newListRolePoliciesResponse,++ -- ** ListRoleTags+ ListRoleTags (ListRoleTags'),+ newListRoleTags,+ ListRoleTagsResponse (ListRoleTagsResponse'),+ newListRoleTagsResponse,++ -- ** ListRoles (Paginated)+ ListRoles (ListRoles'),+ newListRoles,+ ListRolesResponse (ListRolesResponse'),+ newListRolesResponse,++ -- ** ListSAMLProviderTags+ ListSAMLProviderTags (ListSAMLProviderTags'),+ newListSAMLProviderTags,+ ListSAMLProviderTagsResponse (ListSAMLProviderTagsResponse'),+ newListSAMLProviderTagsResponse,++ -- ** ListSAMLProviders+ ListSAMLProviders (ListSAMLProviders'),+ newListSAMLProviders,+ ListSAMLProvidersResponse (ListSAMLProvidersResponse'),+ newListSAMLProvidersResponse,++ -- ** ListSSHPublicKeys (Paginated)+ ListSSHPublicKeys (ListSSHPublicKeys'),+ newListSSHPublicKeys,+ ListSSHPublicKeysResponse (ListSSHPublicKeysResponse'),+ newListSSHPublicKeysResponse,++ -- ** ListServerCertificateTags+ ListServerCertificateTags (ListServerCertificateTags'),+ newListServerCertificateTags,+ ListServerCertificateTagsResponse (ListServerCertificateTagsResponse'),+ newListServerCertificateTagsResponse,++ -- ** ListServerCertificates (Paginated)+ ListServerCertificates (ListServerCertificates'),+ newListServerCertificates,+ ListServerCertificatesResponse (ListServerCertificatesResponse'),+ newListServerCertificatesResponse,++ -- ** ListServiceSpecificCredentials+ ListServiceSpecificCredentials (ListServiceSpecificCredentials'),+ newListServiceSpecificCredentials,+ ListServiceSpecificCredentialsResponse (ListServiceSpecificCredentialsResponse'),+ newListServiceSpecificCredentialsResponse,++ -- ** ListSigningCertificates (Paginated)+ ListSigningCertificates (ListSigningCertificates'),+ newListSigningCertificates,+ ListSigningCertificatesResponse (ListSigningCertificatesResponse'),+ newListSigningCertificatesResponse,++ -- ** ListUserPolicies (Paginated)+ ListUserPolicies (ListUserPolicies'),+ newListUserPolicies,+ ListUserPoliciesResponse (ListUserPoliciesResponse'),+ newListUserPoliciesResponse,++ -- ** ListUserTags (Paginated)+ ListUserTags (ListUserTags'),+ newListUserTags,+ ListUserTagsResponse (ListUserTagsResponse'),+ newListUserTagsResponse,++ -- ** ListUsers (Paginated)+ ListUsers (ListUsers'),+ newListUsers,+ ListUsersResponse (ListUsersResponse'),+ newListUsersResponse,++ -- ** ListVirtualMFADevices (Paginated)+ ListVirtualMFADevices (ListVirtualMFADevices'),+ newListVirtualMFADevices,+ ListVirtualMFADevicesResponse (ListVirtualMFADevicesResponse'),+ newListVirtualMFADevicesResponse,++ -- ** PutGroupPolicy+ PutGroupPolicy (PutGroupPolicy'),+ newPutGroupPolicy,+ PutGroupPolicyResponse (PutGroupPolicyResponse'),+ newPutGroupPolicyResponse,++ -- ** PutRolePermissionsBoundary+ PutRolePermissionsBoundary (PutRolePermissionsBoundary'),+ newPutRolePermissionsBoundary,+ PutRolePermissionsBoundaryResponse (PutRolePermissionsBoundaryResponse'),+ newPutRolePermissionsBoundaryResponse,++ -- ** PutRolePolicy+ PutRolePolicy (PutRolePolicy'),+ newPutRolePolicy,+ PutRolePolicyResponse (PutRolePolicyResponse'),+ newPutRolePolicyResponse,++ -- ** PutUserPermissionsBoundary+ PutUserPermissionsBoundary (PutUserPermissionsBoundary'),+ newPutUserPermissionsBoundary,+ PutUserPermissionsBoundaryResponse (PutUserPermissionsBoundaryResponse'),+ newPutUserPermissionsBoundaryResponse,++ -- ** PutUserPolicy+ PutUserPolicy (PutUserPolicy'),+ newPutUserPolicy,+ PutUserPolicyResponse (PutUserPolicyResponse'),+ newPutUserPolicyResponse,++ -- ** RemoveClientIDFromOpenIDConnectProvider+ RemoveClientIDFromOpenIDConnectProvider (RemoveClientIDFromOpenIDConnectProvider'),+ newRemoveClientIDFromOpenIDConnectProvider,+ RemoveClientIDFromOpenIDConnectProviderResponse (RemoveClientIDFromOpenIDConnectProviderResponse'),+ newRemoveClientIDFromOpenIDConnectProviderResponse,++ -- ** RemoveRoleFromInstanceProfile+ RemoveRoleFromInstanceProfile (RemoveRoleFromInstanceProfile'),+ newRemoveRoleFromInstanceProfile,+ RemoveRoleFromInstanceProfileResponse (RemoveRoleFromInstanceProfileResponse'),+ newRemoveRoleFromInstanceProfileResponse,++ -- ** RemoveUserFromGroup+ RemoveUserFromGroup (RemoveUserFromGroup'),+ newRemoveUserFromGroup,+ RemoveUserFromGroupResponse (RemoveUserFromGroupResponse'),+ newRemoveUserFromGroupResponse,++ -- ** ResetServiceSpecificCredential+ ResetServiceSpecificCredential (ResetServiceSpecificCredential'),+ newResetServiceSpecificCredential,+ ResetServiceSpecificCredentialResponse (ResetServiceSpecificCredentialResponse'),+ newResetServiceSpecificCredentialResponse,++ -- ** ResyncMFADevice+ ResyncMFADevice (ResyncMFADevice'),+ newResyncMFADevice,+ ResyncMFADeviceResponse (ResyncMFADeviceResponse'),+ newResyncMFADeviceResponse,++ -- ** SetDefaultPolicyVersion+ SetDefaultPolicyVersion (SetDefaultPolicyVersion'),+ newSetDefaultPolicyVersion,+ SetDefaultPolicyVersionResponse (SetDefaultPolicyVersionResponse'),+ newSetDefaultPolicyVersionResponse,++ -- ** SetSecurityTokenServicePreferences+ SetSecurityTokenServicePreferences (SetSecurityTokenServicePreferences'),+ newSetSecurityTokenServicePreferences,+ SetSecurityTokenServicePreferencesResponse (SetSecurityTokenServicePreferencesResponse'),+ newSetSecurityTokenServicePreferencesResponse,++ -- ** SimulateCustomPolicy (Paginated)+ SimulateCustomPolicy (SimulateCustomPolicy'),+ newSimulateCustomPolicy,+ SimulatePolicyResponse (SimulatePolicyResponse'),+ newSimulatePolicyResponse,++ -- ** SimulatePrincipalPolicy (Paginated)+ SimulatePrincipalPolicy (SimulatePrincipalPolicy'),+ newSimulatePrincipalPolicy,+ SimulatePolicyResponse (SimulatePolicyResponse'),+ newSimulatePolicyResponse,++ -- ** TagInstanceProfile+ TagInstanceProfile (TagInstanceProfile'),+ newTagInstanceProfile,+ TagInstanceProfileResponse (TagInstanceProfileResponse'),+ newTagInstanceProfileResponse,++ -- ** TagMFADevice+ TagMFADevice (TagMFADevice'),+ newTagMFADevice,+ TagMFADeviceResponse (TagMFADeviceResponse'),+ newTagMFADeviceResponse,++ -- ** TagOpenIDConnectProvider+ TagOpenIDConnectProvider (TagOpenIDConnectProvider'),+ newTagOpenIDConnectProvider,+ TagOpenIDConnectProviderResponse (TagOpenIDConnectProviderResponse'),+ newTagOpenIDConnectProviderResponse,++ -- ** TagPolicy+ TagPolicy (TagPolicy'),+ newTagPolicy,+ TagPolicyResponse (TagPolicyResponse'),+ newTagPolicyResponse,++ -- ** TagRole+ TagRole (TagRole'),+ newTagRole,+ TagRoleResponse (TagRoleResponse'),+ newTagRoleResponse,++ -- ** TagSAMLProvider+ TagSAMLProvider (TagSAMLProvider'),+ newTagSAMLProvider,+ TagSAMLProviderResponse (TagSAMLProviderResponse'),+ newTagSAMLProviderResponse,++ -- ** TagServerCertificate+ TagServerCertificate (TagServerCertificate'),+ newTagServerCertificate,+ TagServerCertificateResponse (TagServerCertificateResponse'),+ newTagServerCertificateResponse,++ -- ** TagUser+ TagUser (TagUser'),+ newTagUser,+ TagUserResponse (TagUserResponse'),+ newTagUserResponse,++ -- ** UntagInstanceProfile+ UntagInstanceProfile (UntagInstanceProfile'),+ newUntagInstanceProfile,+ UntagInstanceProfileResponse (UntagInstanceProfileResponse'),+ newUntagInstanceProfileResponse,++ -- ** UntagMFADevice+ UntagMFADevice (UntagMFADevice'),+ newUntagMFADevice,+ UntagMFADeviceResponse (UntagMFADeviceResponse'),+ newUntagMFADeviceResponse,++ -- ** UntagOpenIDConnectProvider+ UntagOpenIDConnectProvider (UntagOpenIDConnectProvider'),+ newUntagOpenIDConnectProvider,+ UntagOpenIDConnectProviderResponse (UntagOpenIDConnectProviderResponse'),+ newUntagOpenIDConnectProviderResponse,++ -- ** UntagPolicy+ UntagPolicy (UntagPolicy'),+ newUntagPolicy,+ UntagPolicyResponse (UntagPolicyResponse'),+ newUntagPolicyResponse,++ -- ** UntagRole+ UntagRole (UntagRole'),+ newUntagRole,+ UntagRoleResponse (UntagRoleResponse'),+ newUntagRoleResponse,++ -- ** UntagSAMLProvider+ UntagSAMLProvider (UntagSAMLProvider'),+ newUntagSAMLProvider,+ UntagSAMLProviderResponse (UntagSAMLProviderResponse'),+ newUntagSAMLProviderResponse,++ -- ** UntagServerCertificate+ UntagServerCertificate (UntagServerCertificate'),+ newUntagServerCertificate,+ UntagServerCertificateResponse (UntagServerCertificateResponse'),+ newUntagServerCertificateResponse,++ -- ** UntagUser+ UntagUser (UntagUser'),+ newUntagUser,+ UntagUserResponse (UntagUserResponse'),+ newUntagUserResponse,++ -- ** UpdateAccessKey+ UpdateAccessKey (UpdateAccessKey'),+ newUpdateAccessKey,+ UpdateAccessKeyResponse (UpdateAccessKeyResponse'),+ newUpdateAccessKeyResponse,++ -- ** UpdateAccountPasswordPolicy+ UpdateAccountPasswordPolicy (UpdateAccountPasswordPolicy'),+ newUpdateAccountPasswordPolicy,+ UpdateAccountPasswordPolicyResponse (UpdateAccountPasswordPolicyResponse'),+ newUpdateAccountPasswordPolicyResponse,++ -- ** UpdateAssumeRolePolicy+ UpdateAssumeRolePolicy (UpdateAssumeRolePolicy'),+ newUpdateAssumeRolePolicy,+ UpdateAssumeRolePolicyResponse (UpdateAssumeRolePolicyResponse'),+ newUpdateAssumeRolePolicyResponse,++ -- ** UpdateGroup+ UpdateGroup (UpdateGroup'),+ newUpdateGroup,+ UpdateGroupResponse (UpdateGroupResponse'),+ newUpdateGroupResponse,++ -- ** UpdateLoginProfile+ UpdateLoginProfile (UpdateLoginProfile'),+ newUpdateLoginProfile,+ UpdateLoginProfileResponse (UpdateLoginProfileResponse'),+ newUpdateLoginProfileResponse,++ -- ** UpdateOpenIDConnectProviderThumbprint+ UpdateOpenIDConnectProviderThumbprint (UpdateOpenIDConnectProviderThumbprint'),+ newUpdateOpenIDConnectProviderThumbprint,+ UpdateOpenIDConnectProviderThumbprintResponse (UpdateOpenIDConnectProviderThumbprintResponse'),+ newUpdateOpenIDConnectProviderThumbprintResponse,++ -- ** UpdateRole+ UpdateRole (UpdateRole'),+ newUpdateRole,+ UpdateRoleResponse (UpdateRoleResponse'),+ newUpdateRoleResponse,++ -- ** UpdateRoleDescription+ UpdateRoleDescription (UpdateRoleDescription'),+ newUpdateRoleDescription,+ UpdateRoleDescriptionResponse (UpdateRoleDescriptionResponse'),+ newUpdateRoleDescriptionResponse,++ -- ** UpdateSAMLProvider+ UpdateSAMLProvider (UpdateSAMLProvider'),+ newUpdateSAMLProvider,+ UpdateSAMLProviderResponse (UpdateSAMLProviderResponse'),+ newUpdateSAMLProviderResponse,++ -- ** UpdateSSHPublicKey+ UpdateSSHPublicKey (UpdateSSHPublicKey'),+ newUpdateSSHPublicKey,+ UpdateSSHPublicKeyResponse (UpdateSSHPublicKeyResponse'),+ newUpdateSSHPublicKeyResponse,++ -- ** UpdateServerCertificate+ UpdateServerCertificate (UpdateServerCertificate'),+ newUpdateServerCertificate,+ UpdateServerCertificateResponse (UpdateServerCertificateResponse'),+ newUpdateServerCertificateResponse,++ -- ** UpdateServiceSpecificCredential+ UpdateServiceSpecificCredential (UpdateServiceSpecificCredential'),+ newUpdateServiceSpecificCredential,+ UpdateServiceSpecificCredentialResponse (UpdateServiceSpecificCredentialResponse'),+ newUpdateServiceSpecificCredentialResponse,++ -- ** UpdateSigningCertificate+ UpdateSigningCertificate (UpdateSigningCertificate'),+ newUpdateSigningCertificate,+ UpdateSigningCertificateResponse (UpdateSigningCertificateResponse'),+ newUpdateSigningCertificateResponse,++ -- ** UpdateUser+ UpdateUser (UpdateUser'),+ newUpdateUser,+ UpdateUserResponse (UpdateUserResponse'),+ newUpdateUserResponse,++ -- ** UploadSSHPublicKey+ UploadSSHPublicKey (UploadSSHPublicKey'),+ newUploadSSHPublicKey,+ UploadSSHPublicKeyResponse (UploadSSHPublicKeyResponse'),+ newUploadSSHPublicKeyResponse,++ -- ** UploadServerCertificate+ UploadServerCertificate (UploadServerCertificate'),+ newUploadServerCertificate,+ UploadServerCertificateResponse (UploadServerCertificateResponse'),+ newUploadServerCertificateResponse,++ -- ** UploadSigningCertificate+ UploadSigningCertificate (UploadSigningCertificate'),+ newUploadSigningCertificate,+ UploadSigningCertificateResponse (UploadSigningCertificateResponse'),+ newUploadSigningCertificateResponse,++ -- * Types++ -- ** AccessAdvisorUsageGranularityType+ AccessAdvisorUsageGranularityType (..),++ -- ** AssignmentStatusType+ AssignmentStatusType (..),++ -- ** ContextKeyTypeEnum+ ContextKeyTypeEnum (..),++ -- ** DeletionTaskStatusType+ DeletionTaskStatusType (..),++ -- ** EncodingType+ EncodingType (..),++ -- ** EntityType+ EntityType (..),++ -- ** GlobalEndpointTokenVersion+ GlobalEndpointTokenVersion (..),++ -- ** JobStatusType+ JobStatusType (..),++ -- ** PermissionsBoundaryAttachmentType+ PermissionsBoundaryAttachmentType (..),++ -- ** PolicyEvaluationDecisionType+ PolicyEvaluationDecisionType (..),++ -- ** PolicyOwnerEntityType+ PolicyOwnerEntityType (..),++ -- ** PolicyScopeType+ PolicyScopeType (..),++ -- ** PolicySourceType+ PolicySourceType (..),++ -- ** PolicyType+ PolicyType (..),++ -- ** PolicyUsageType+ PolicyUsageType (..),++ -- ** ReportFormatType+ ReportFormatType (..),++ -- ** ReportStateType+ ReportStateType (..),++ -- ** SortKeyType+ SortKeyType (..),++ -- ** StatusType+ StatusType (..),++ -- ** SummaryKeyType+ SummaryKeyType (..),++ -- ** AccessDetail+ AccessDetail (AccessDetail'),+ newAccessDetail,++ -- ** AccessKeyInfo+ AccessKeyInfo (AccessKeyInfo'),+ newAccessKeyInfo,++ -- ** AccessKeyLastUsed+ AccessKeyLastUsed (AccessKeyLastUsed'),+ newAccessKeyLastUsed,++ -- ** AccessKeyMetadata+ AccessKeyMetadata (AccessKeyMetadata'),+ newAccessKeyMetadata,++ -- ** AttachedPermissionsBoundary+ AttachedPermissionsBoundary (AttachedPermissionsBoundary'),+ newAttachedPermissionsBoundary,++ -- ** AttachedPolicy+ AttachedPolicy (AttachedPolicy'),+ newAttachedPolicy,++ -- ** ContextEntry+ ContextEntry (ContextEntry'),+ newContextEntry,++ -- ** DeletionTaskFailureReasonType+ DeletionTaskFailureReasonType (DeletionTaskFailureReasonType'),+ newDeletionTaskFailureReasonType,++ -- ** EntityDetails+ EntityDetails (EntityDetails'),+ newEntityDetails,++ -- ** EntityInfo+ EntityInfo (EntityInfo'),+ newEntityInfo,++ -- ** ErrorDetails+ ErrorDetails (ErrorDetails'),+ newErrorDetails,++ -- ** EvaluationResult+ EvaluationResult (EvaluationResult'),+ newEvaluationResult,++ -- ** GetContextKeysForPolicyResponse+ GetContextKeysForPolicyResponse (GetContextKeysForPolicyResponse'),+ newGetContextKeysForPolicyResponse,++ -- ** Group+ Group (Group'),+ newGroup,++ -- ** GroupDetail+ GroupDetail (GroupDetail'),+ newGroupDetail,++ -- ** InstanceProfile+ InstanceProfile (InstanceProfile'),+ newInstanceProfile,++ -- ** ListPoliciesGrantingServiceAccessEntry+ ListPoliciesGrantingServiceAccessEntry (ListPoliciesGrantingServiceAccessEntry'),+ newListPoliciesGrantingServiceAccessEntry,++ -- ** LoginProfile+ LoginProfile (LoginProfile'),+ newLoginProfile,++ -- ** MFADevice+ MFADevice (MFADevice'),+ newMFADevice,++ -- ** ManagedPolicyDetail+ ManagedPolicyDetail (ManagedPolicyDetail'),+ newManagedPolicyDetail,++ -- ** OpenIDConnectProviderListEntry+ OpenIDConnectProviderListEntry (OpenIDConnectProviderListEntry'),+ newOpenIDConnectProviderListEntry,++ -- ** OrganizationsDecisionDetail+ OrganizationsDecisionDetail (OrganizationsDecisionDetail'),+ newOrganizationsDecisionDetail,++ -- ** PasswordPolicy+ PasswordPolicy (PasswordPolicy'),+ newPasswordPolicy,++ -- ** PermissionsBoundaryDecisionDetail+ PermissionsBoundaryDecisionDetail (PermissionsBoundaryDecisionDetail'),+ newPermissionsBoundaryDecisionDetail,++ -- ** Policy+ Policy (Policy'),+ newPolicy,++ -- ** PolicyDetail+ PolicyDetail (PolicyDetail'),+ newPolicyDetail,++ -- ** PolicyGrantingServiceAccess+ PolicyGrantingServiceAccess (PolicyGrantingServiceAccess'),+ newPolicyGrantingServiceAccess,++ -- ** PolicyGroup+ PolicyGroup (PolicyGroup'),+ newPolicyGroup,++ -- ** PolicyRole+ PolicyRole (PolicyRole'),+ newPolicyRole,++ -- ** PolicyUser+ PolicyUser (PolicyUser'),+ newPolicyUser,++ -- ** PolicyVersion+ PolicyVersion (PolicyVersion'),+ newPolicyVersion,++ -- ** Position+ Position (Position'),+ newPosition,++ -- ** ResourceSpecificResult+ ResourceSpecificResult (ResourceSpecificResult'),+ newResourceSpecificResult,++ -- ** Role+ Role (Role'),+ newRole,++ -- ** RoleDetail+ RoleDetail (RoleDetail'),+ newRoleDetail,++ -- ** RoleLastUsed+ RoleLastUsed (RoleLastUsed'),+ newRoleLastUsed,++ -- ** RoleUsageType+ RoleUsageType (RoleUsageType'),+ newRoleUsageType,++ -- ** SAMLProviderListEntry+ SAMLProviderListEntry (SAMLProviderListEntry'),+ newSAMLProviderListEntry,++ -- ** SSHPublicKey+ SSHPublicKey (SSHPublicKey'),+ newSSHPublicKey,++ -- ** SSHPublicKeyMetadata+ SSHPublicKeyMetadata (SSHPublicKeyMetadata'),+ newSSHPublicKeyMetadata,++ -- ** ServerCertificate+ ServerCertificate (ServerCertificate'),+ newServerCertificate,++ -- ** ServerCertificateMetadata+ ServerCertificateMetadata (ServerCertificateMetadata'),+ newServerCertificateMetadata,++ -- ** ServiceLastAccessed+ ServiceLastAccessed (ServiceLastAccessed'),+ newServiceLastAccessed,++ -- ** ServiceSpecificCredential+ ServiceSpecificCredential (ServiceSpecificCredential'),+ newServiceSpecificCredential,++ -- ** ServiceSpecificCredentialMetadata+ ServiceSpecificCredentialMetadata (ServiceSpecificCredentialMetadata'),+ newServiceSpecificCredentialMetadata,++ -- ** SigningCertificate+ SigningCertificate (SigningCertificate'),+ newSigningCertificate,++ -- ** SimulatePolicyResponse+ SimulatePolicyResponse (SimulatePolicyResponse'),+ newSimulatePolicyResponse,++ -- ** Statement+ Statement (Statement'),+ newStatement,++ -- ** Tag+ Tag (Tag'),+ newTag,++ -- ** TrackedActionLastAccessed+ TrackedActionLastAccessed (TrackedActionLastAccessed'),+ newTrackedActionLastAccessed,++ -- ** User+ User (User'),+ newUser,++ -- ** UserDetail+ UserDetail (UserDetail'),+ newUserDetail,++ -- ** VirtualMFADevice+ VirtualMFADevice (VirtualMFADevice'),+ newVirtualMFADevice,+ )+where++import Amazonka.IAM.AddClientIDToOpenIDConnectProvider+import Amazonka.IAM.AddRoleToInstanceProfile+import Amazonka.IAM.AddUserToGroup+import Amazonka.IAM.AttachGroupPolicy+import Amazonka.IAM.AttachRolePolicy+import Amazonka.IAM.AttachUserPolicy+import Amazonka.IAM.ChangePassword+import Amazonka.IAM.CreateAccessKey+import Amazonka.IAM.CreateAccountAlias+import Amazonka.IAM.CreateGroup+import Amazonka.IAM.CreateInstanceProfile+import Amazonka.IAM.CreateLoginProfile+import Amazonka.IAM.CreateOpenIDConnectProvider+import Amazonka.IAM.CreatePolicy+import Amazonka.IAM.CreatePolicyVersion+import Amazonka.IAM.CreateRole+import Amazonka.IAM.CreateSAMLProvider+import Amazonka.IAM.CreateServiceLinkedRole+import Amazonka.IAM.CreateServiceSpecificCredential+import Amazonka.IAM.CreateUser+import Amazonka.IAM.CreateVirtualMFADevice+import Amazonka.IAM.DeactivateMFADevice+import Amazonka.IAM.DeleteAccessKey+import Amazonka.IAM.DeleteAccountAlias+import Amazonka.IAM.DeleteAccountPasswordPolicy+import Amazonka.IAM.DeleteGroup+import Amazonka.IAM.DeleteGroupPolicy+import Amazonka.IAM.DeleteInstanceProfile+import Amazonka.IAM.DeleteLoginProfile+import Amazonka.IAM.DeleteOpenIDConnectProvider+import Amazonka.IAM.DeletePolicy+import Amazonka.IAM.DeletePolicyVersion+import Amazonka.IAM.DeleteRole+import Amazonka.IAM.DeleteRolePermissionsBoundary+import Amazonka.IAM.DeleteRolePolicy+import Amazonka.IAM.DeleteSAMLProvider+import Amazonka.IAM.DeleteSSHPublicKey+import Amazonka.IAM.DeleteServerCertificate+import Amazonka.IAM.DeleteServiceLinkedRole+import Amazonka.IAM.DeleteServiceSpecificCredential+import Amazonka.IAM.DeleteSigningCertificate+import Amazonka.IAM.DeleteUser+import Amazonka.IAM.DeleteUserPermissionsBoundary+import Amazonka.IAM.DeleteUserPolicy+import Amazonka.IAM.DeleteVirtualMFADevice+import Amazonka.IAM.DetachGroupPolicy+import Amazonka.IAM.DetachRolePolicy+import Amazonka.IAM.DetachUserPolicy+import Amazonka.IAM.EnableMFADevice+import Amazonka.IAM.GenerateCredentialReport+import Amazonka.IAM.GenerateOrganizationsAccessReport+import Amazonka.IAM.GenerateServiceLastAccessedDetails+import Amazonka.IAM.GetAccessKeyLastUsed+import Amazonka.IAM.GetAccountAuthorizationDetails+import Amazonka.IAM.GetAccountPasswordPolicy+import Amazonka.IAM.GetAccountSummary+import Amazonka.IAM.GetContextKeysForCustomPolicy+import Amazonka.IAM.GetContextKeysForPrincipalPolicy+import Amazonka.IAM.GetCredentialReport+import Amazonka.IAM.GetGroup+import Amazonka.IAM.GetGroupPolicy+import Amazonka.IAM.GetInstanceProfile+import Amazonka.IAM.GetLoginProfile+import Amazonka.IAM.GetOpenIDConnectProvider+import Amazonka.IAM.GetOrganizationsAccessReport+import Amazonka.IAM.GetPolicy+import Amazonka.IAM.GetPolicyVersion+import Amazonka.IAM.GetRole+import Amazonka.IAM.GetRolePolicy+import Amazonka.IAM.GetSAMLProvider+import Amazonka.IAM.GetSSHPublicKey+import Amazonka.IAM.GetServerCertificate+import Amazonka.IAM.GetServiceLastAccessedDetails+import Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities+import Amazonka.IAM.GetServiceLinkedRoleDeletionStatus+import Amazonka.IAM.GetUser+import Amazonka.IAM.GetUserPolicy+import Amazonka.IAM.Lens+import Amazonka.IAM.ListAccessKeys+import Amazonka.IAM.ListAccountAliases+import Amazonka.IAM.ListAttachedGroupPolicies+import Amazonka.IAM.ListAttachedRolePolicies+import Amazonka.IAM.ListAttachedUserPolicies+import Amazonka.IAM.ListEntitiesForPolicy+import Amazonka.IAM.ListGroupPolicies+import Amazonka.IAM.ListGroups+import Amazonka.IAM.ListGroupsForUser+import Amazonka.IAM.ListInstanceProfileTags+import Amazonka.IAM.ListInstanceProfiles+import Amazonka.IAM.ListInstanceProfilesForRole+import Amazonka.IAM.ListMFADeviceTags+import Amazonka.IAM.ListMFADevices+import Amazonka.IAM.ListOpenIDConnectProviderTags+import Amazonka.IAM.ListOpenIDConnectProviders+import Amazonka.IAM.ListPolicies+import Amazonka.IAM.ListPoliciesGrantingServiceAccess+import Amazonka.IAM.ListPolicyTags+import Amazonka.IAM.ListPolicyVersions+import Amazonka.IAM.ListRolePolicies+import Amazonka.IAM.ListRoleTags+import Amazonka.IAM.ListRoles+import Amazonka.IAM.ListSAMLProviderTags+import Amazonka.IAM.ListSAMLProviders+import Amazonka.IAM.ListSSHPublicKeys+import Amazonka.IAM.ListServerCertificateTags+import Amazonka.IAM.ListServerCertificates+import Amazonka.IAM.ListServiceSpecificCredentials+import Amazonka.IAM.ListSigningCertificates+import Amazonka.IAM.ListUserPolicies+import Amazonka.IAM.ListUserTags+import Amazonka.IAM.ListUsers+import Amazonka.IAM.ListVirtualMFADevices+import Amazonka.IAM.PutGroupPolicy+import Amazonka.IAM.PutRolePermissionsBoundary+import Amazonka.IAM.PutRolePolicy+import Amazonka.IAM.PutUserPermissionsBoundary+import Amazonka.IAM.PutUserPolicy+import Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider+import Amazonka.IAM.RemoveRoleFromInstanceProfile+import Amazonka.IAM.RemoveUserFromGroup+import Amazonka.IAM.ResetServiceSpecificCredential+import Amazonka.IAM.ResyncMFADevice+import Amazonka.IAM.SetDefaultPolicyVersion+import Amazonka.IAM.SetSecurityTokenServicePreferences+import Amazonka.IAM.SimulateCustomPolicy+import Amazonka.IAM.SimulatePrincipalPolicy+import Amazonka.IAM.TagInstanceProfile+import Amazonka.IAM.TagMFADevice+import Amazonka.IAM.TagOpenIDConnectProvider+import Amazonka.IAM.TagPolicy+import Amazonka.IAM.TagRole+import Amazonka.IAM.TagSAMLProvider+import Amazonka.IAM.TagServerCertificate+import Amazonka.IAM.TagUser+import Amazonka.IAM.Types+import Amazonka.IAM.UntagInstanceProfile+import Amazonka.IAM.UntagMFADevice+import Amazonka.IAM.UntagOpenIDConnectProvider+import Amazonka.IAM.UntagPolicy+import Amazonka.IAM.UntagRole+import Amazonka.IAM.UntagSAMLProvider+import Amazonka.IAM.UntagServerCertificate+import Amazonka.IAM.UntagUser+import Amazonka.IAM.UpdateAccessKey+import Amazonka.IAM.UpdateAccountPasswordPolicy+import Amazonka.IAM.UpdateAssumeRolePolicy+import Amazonka.IAM.UpdateGroup+import Amazonka.IAM.UpdateLoginProfile+import Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint+import Amazonka.IAM.UpdateRole+import Amazonka.IAM.UpdateRoleDescription+import Amazonka.IAM.UpdateSAMLProvider+import Amazonka.IAM.UpdateSSHPublicKey+import Amazonka.IAM.UpdateServerCertificate+import Amazonka.IAM.UpdateServiceSpecificCredential+import Amazonka.IAM.UpdateSigningCertificate+import Amazonka.IAM.UpdateUser+import Amazonka.IAM.UploadSSHPublicKey+import Amazonka.IAM.UploadServerCertificate+import Amazonka.IAM.UploadSigningCertificate+import Amazonka.IAM.Waiters++-- $errors+-- Error matchers are designed for use with the functions provided by+-- <http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+-- This allows catching (and rethrowing) service specific errors returned+-- by 'IAM'.++-- $operations+-- Some AWS operations return results that are incomplete and require subsequent+-- requests in order to obtain the entire result set. The process of sending+-- subsequent requests to continue where a previous request left off is called+-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+-- 1000 objects at a time, and you must send subsequent requests with the+-- appropriate Marker in order to retrieve the next page of results.+--+-- Operations that have an 'AWSPager' instance can transparently perform subsequent+-- requests, correctly setting Markers and other request facets to iterate through+-- the entire result set of a truncated API operation. Operations which support+-- this have an additional note in the documentation.+--+-- Many operations have the ability to filter results on the server side. See the+-- individual operation parameters for details.++-- $waiters+-- Waiters poll by repeatedly sending a request until some remote success condition+-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification+-- determines how many attempts should be made, in addition to delay and retry strategies.
+ gen/Amazonka/IAM/AddClientIDToOpenIDConnectProvider.hs view
@@ -0,0 +1,184 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.AddClientIDToOpenIDConnectProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds a new client ID (also known as audience) to the list of client IDs+-- already registered for the specified IAM OpenID Connect (OIDC) provider+-- resource.+--+-- This operation is idempotent; it does not fail or return an error if you+-- add an existing client ID to the provider.+module Amazonka.IAM.AddClientIDToOpenIDConnectProvider+ ( -- * Creating a Request+ AddClientIDToOpenIDConnectProvider (..),+ newAddClientIDToOpenIDConnectProvider,++ -- * Request Lenses+ addClientIDToOpenIDConnectProvider_openIDConnectProviderArn,+ addClientIDToOpenIDConnectProvider_clientID,++ -- * Destructuring the Response+ AddClientIDToOpenIDConnectProviderResponse (..),+ newAddClientIDToOpenIDConnectProviderResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddClientIDToOpenIDConnectProvider' smart constructor.+data AddClientIDToOpenIDConnectProvider = AddClientIDToOpenIDConnectProvider'+ { -- | The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider+ -- resource to add the client ID to. You can get a list of OIDC provider+ -- ARNs by using the ListOpenIDConnectProviders operation.+ openIDConnectProviderArn :: Prelude.Text,+ -- | The client ID (also known as audience) to add to the IAM OpenID Connect+ -- provider resource.+ clientID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddClientIDToOpenIDConnectProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderArn', 'addClientIDToOpenIDConnectProvider_openIDConnectProviderArn' - The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider+-- resource to add the client ID to. You can get a list of OIDC provider+-- ARNs by using the ListOpenIDConnectProviders operation.+--+-- 'clientID', 'addClientIDToOpenIDConnectProvider_clientID' - The client ID (also known as audience) to add to the IAM OpenID Connect+-- provider resource.+newAddClientIDToOpenIDConnectProvider ::+ -- | 'openIDConnectProviderArn'+ Prelude.Text ->+ -- | 'clientID'+ Prelude.Text ->+ AddClientIDToOpenIDConnectProvider+newAddClientIDToOpenIDConnectProvider+ pOpenIDConnectProviderArn_+ pClientID_ =+ AddClientIDToOpenIDConnectProvider'+ { openIDConnectProviderArn =+ pOpenIDConnectProviderArn_,+ clientID = pClientID_+ }++-- | The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider+-- resource to add the client ID to. You can get a list of OIDC provider+-- ARNs by using the ListOpenIDConnectProviders operation.+addClientIDToOpenIDConnectProvider_openIDConnectProviderArn :: Lens.Lens' AddClientIDToOpenIDConnectProvider Prelude.Text+addClientIDToOpenIDConnectProvider_openIDConnectProviderArn = Lens.lens (\AddClientIDToOpenIDConnectProvider' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@AddClientIDToOpenIDConnectProvider' {} a -> s {openIDConnectProviderArn = a} :: AddClientIDToOpenIDConnectProvider)++-- | The client ID (also known as audience) to add to the IAM OpenID Connect+-- provider resource.+addClientIDToOpenIDConnectProvider_clientID :: Lens.Lens' AddClientIDToOpenIDConnectProvider Prelude.Text+addClientIDToOpenIDConnectProvider_clientID = Lens.lens (\AddClientIDToOpenIDConnectProvider' {clientID} -> clientID) (\s@AddClientIDToOpenIDConnectProvider' {} a -> s {clientID = a} :: AddClientIDToOpenIDConnectProvider)++instance+ Core.AWSRequest+ AddClientIDToOpenIDConnectProvider+ where+ type+ AWSResponse AddClientIDToOpenIDConnectProvider =+ AddClientIDToOpenIDConnectProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ AddClientIDToOpenIDConnectProviderResponse'++instance+ Prelude.Hashable+ AddClientIDToOpenIDConnectProvider+ where+ hashWithSalt+ _salt+ AddClientIDToOpenIDConnectProvider' {..} =+ _salt+ `Prelude.hashWithSalt` openIDConnectProviderArn+ `Prelude.hashWithSalt` clientID++instance+ Prelude.NFData+ AddClientIDToOpenIDConnectProvider+ where+ rnf AddClientIDToOpenIDConnectProvider' {..} =+ Prelude.rnf openIDConnectProviderArn+ `Prelude.seq` Prelude.rnf clientID++instance+ Data.ToHeaders+ AddClientIDToOpenIDConnectProvider+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ AddClientIDToOpenIDConnectProvider+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ AddClientIDToOpenIDConnectProvider+ where+ toQuery AddClientIDToOpenIDConnectProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "AddClientIDToOpenIDConnectProvider" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OpenIDConnectProviderArn"+ Data.=: openIDConnectProviderArn,+ "ClientID" Data.=: clientID+ ]++-- | /See:/ 'newAddClientIDToOpenIDConnectProviderResponse' smart constructor.+data AddClientIDToOpenIDConnectProviderResponse = AddClientIDToOpenIDConnectProviderResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddClientIDToOpenIDConnectProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newAddClientIDToOpenIDConnectProviderResponse ::+ AddClientIDToOpenIDConnectProviderResponse+newAddClientIDToOpenIDConnectProviderResponse =+ AddClientIDToOpenIDConnectProviderResponse'++instance+ Prelude.NFData+ AddClientIDToOpenIDConnectProviderResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/AddRoleToInstanceProfile.hs view
@@ -0,0 +1,195 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.AddRoleToInstanceProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds the specified IAM role to the specified instance profile. An+-- instance profile can contain only one role, and this quota cannot be+-- increased. You can remove the existing role and then add a different+-- role to an instance profile. You must then wait for the change to appear+-- across all of Amazon Web Services because of+-- <https://en.wikipedia.org/wiki/Eventual_consistency eventual consistency>.+-- To force the change, you must+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DisassociateIamInstanceProfile.html disassociate the instance profile>+-- and then+-- <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateIamInstanceProfile.html associate the instance profile>,+-- or you can stop your instance and then restart it.+--+-- The caller of this operation must be granted the @PassRole@ permission+-- on the IAM role by a permissions policy.+--+-- For more information about roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with roles>.+-- For more information about instance profiles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About instance profiles>.+module Amazonka.IAM.AddRoleToInstanceProfile+ ( -- * Creating a Request+ AddRoleToInstanceProfile (..),+ newAddRoleToInstanceProfile,++ -- * Request Lenses+ addRoleToInstanceProfile_instanceProfileName,+ addRoleToInstanceProfile_roleName,++ -- * Destructuring the Response+ AddRoleToInstanceProfileResponse (..),+ newAddRoleToInstanceProfileResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddRoleToInstanceProfile' smart constructor.+data AddRoleToInstanceProfile = AddRoleToInstanceProfile'+ { -- | The name of the instance profile to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ instanceProfileName :: Prelude.Text,+ -- | The name of the role to add.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddRoleToInstanceProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceProfileName', 'addRoleToInstanceProfile_instanceProfileName' - The name of the instance profile to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'roleName', 'addRoleToInstanceProfile_roleName' - The name of the role to add.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newAddRoleToInstanceProfile ::+ -- | 'instanceProfileName'+ Prelude.Text ->+ -- | 'roleName'+ Prelude.Text ->+ AddRoleToInstanceProfile+newAddRoleToInstanceProfile+ pInstanceProfileName_+ pRoleName_ =+ AddRoleToInstanceProfile'+ { instanceProfileName =+ pInstanceProfileName_,+ roleName = pRoleName_+ }++-- | The name of the instance profile to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+addRoleToInstanceProfile_instanceProfileName :: Lens.Lens' AddRoleToInstanceProfile Prelude.Text+addRoleToInstanceProfile_instanceProfileName = Lens.lens (\AddRoleToInstanceProfile' {instanceProfileName} -> instanceProfileName) (\s@AddRoleToInstanceProfile' {} a -> s {instanceProfileName = a} :: AddRoleToInstanceProfile)++-- | The name of the role to add.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+addRoleToInstanceProfile_roleName :: Lens.Lens' AddRoleToInstanceProfile Prelude.Text+addRoleToInstanceProfile_roleName = Lens.lens (\AddRoleToInstanceProfile' {roleName} -> roleName) (\s@AddRoleToInstanceProfile' {} a -> s {roleName = a} :: AddRoleToInstanceProfile)++instance Core.AWSRequest AddRoleToInstanceProfile where+ type+ AWSResponse AddRoleToInstanceProfile =+ AddRoleToInstanceProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ AddRoleToInstanceProfileResponse'++instance Prelude.Hashable AddRoleToInstanceProfile where+ hashWithSalt _salt AddRoleToInstanceProfile' {..} =+ _salt+ `Prelude.hashWithSalt` instanceProfileName+ `Prelude.hashWithSalt` roleName++instance Prelude.NFData AddRoleToInstanceProfile where+ rnf AddRoleToInstanceProfile' {..} =+ Prelude.rnf instanceProfileName+ `Prelude.seq` Prelude.rnf roleName++instance Data.ToHeaders AddRoleToInstanceProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath AddRoleToInstanceProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery AddRoleToInstanceProfile where+ toQuery AddRoleToInstanceProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("AddRoleToInstanceProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "InstanceProfileName" Data.=: instanceProfileName,+ "RoleName" Data.=: roleName+ ]++-- | /See:/ 'newAddRoleToInstanceProfileResponse' smart constructor.+data AddRoleToInstanceProfileResponse = AddRoleToInstanceProfileResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddRoleToInstanceProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newAddRoleToInstanceProfileResponse ::+ AddRoleToInstanceProfileResponse+newAddRoleToInstanceProfileResponse =+ AddRoleToInstanceProfileResponse'++instance+ Prelude.NFData+ AddRoleToInstanceProfileResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/AddUserToGroup.hs view
@@ -0,0 +1,169 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.AddUserToGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds the specified user to the specified group.+module Amazonka.IAM.AddUserToGroup+ ( -- * Creating a Request+ AddUserToGroup (..),+ newAddUserToGroup,++ -- * Request Lenses+ addUserToGroup_groupName,+ addUserToGroup_userName,++ -- * Destructuring the Response+ AddUserToGroupResponse (..),+ newAddUserToGroupResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAddUserToGroup' smart constructor.+data AddUserToGroup = AddUserToGroup'+ { -- | The name of the group to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text,+ -- | The name of the user to add.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddUserToGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupName', 'addUserToGroup_groupName' - The name of the group to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'userName', 'addUserToGroup_userName' - The name of the user to add.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newAddUserToGroup ::+ -- | 'groupName'+ Prelude.Text ->+ -- | 'userName'+ Prelude.Text ->+ AddUserToGroup+newAddUserToGroup pGroupName_ pUserName_ =+ AddUserToGroup'+ { groupName = pGroupName_,+ userName = pUserName_+ }++-- | The name of the group to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+addUserToGroup_groupName :: Lens.Lens' AddUserToGroup Prelude.Text+addUserToGroup_groupName = Lens.lens (\AddUserToGroup' {groupName} -> groupName) (\s@AddUserToGroup' {} a -> s {groupName = a} :: AddUserToGroup)++-- | The name of the user to add.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+addUserToGroup_userName :: Lens.Lens' AddUserToGroup Prelude.Text+addUserToGroup_userName = Lens.lens (\AddUserToGroup' {userName} -> userName) (\s@AddUserToGroup' {} a -> s {userName = a} :: AddUserToGroup)++instance Core.AWSRequest AddUserToGroup where+ type+ AWSResponse AddUserToGroup =+ AddUserToGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull AddUserToGroupResponse'++instance Prelude.Hashable AddUserToGroup where+ hashWithSalt _salt AddUserToGroup' {..} =+ _salt+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` userName++instance Prelude.NFData AddUserToGroup where+ rnf AddUserToGroup' {..} =+ Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders AddUserToGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath AddUserToGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery AddUserToGroup where+ toQuery AddUserToGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("AddUserToGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GroupName" Data.=: groupName,+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newAddUserToGroupResponse' smart constructor.+data AddUserToGroupResponse = AddUserToGroupResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddUserToGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newAddUserToGroupResponse ::+ AddUserToGroupResponse+newAddUserToGroupResponse = AddUserToGroupResponse'++instance Prelude.NFData AddUserToGroupResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/AttachGroupPolicy.hs view
@@ -0,0 +1,179 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.AttachGroupPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Attaches the specified managed policy to the specified IAM group.+--+-- You use this operation to attach a managed policy to a group. To embed+-- an inline policy in a group, use PutGroupPolicy.+--+-- As a best practice, you can validate your IAM policies. To learn more,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html Validating IAM policies>+-- in the /IAM User Guide/.+--+-- For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.AttachGroupPolicy+ ( -- * Creating a Request+ AttachGroupPolicy (..),+ newAttachGroupPolicy,++ -- * Request Lenses+ attachGroupPolicy_groupName,+ attachGroupPolicy_policyArn,++ -- * Destructuring the Response+ AttachGroupPolicyResponse (..),+ newAttachGroupPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAttachGroupPolicy' smart constructor.+data AttachGroupPolicy = AttachGroupPolicy'+ { -- | The name (friendly name, not ARN) of the group to attach the policy to.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the IAM policy you want to attach.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachGroupPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupName', 'attachGroupPolicy_groupName' - The name (friendly name, not ARN) of the group to attach the policy to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyArn', 'attachGroupPolicy_policyArn' - The Amazon Resource Name (ARN) of the IAM policy you want to attach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newAttachGroupPolicy ::+ -- | 'groupName'+ Prelude.Text ->+ -- | 'policyArn'+ Prelude.Text ->+ AttachGroupPolicy+newAttachGroupPolicy pGroupName_ pPolicyArn_ =+ AttachGroupPolicy'+ { groupName = pGroupName_,+ policyArn = pPolicyArn_+ }++-- | The name (friendly name, not ARN) of the group to attach the policy to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+attachGroupPolicy_groupName :: Lens.Lens' AttachGroupPolicy Prelude.Text+attachGroupPolicy_groupName = Lens.lens (\AttachGroupPolicy' {groupName} -> groupName) (\s@AttachGroupPolicy' {} a -> s {groupName = a} :: AttachGroupPolicy)++-- | The Amazon Resource Name (ARN) of the IAM policy you want to attach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+attachGroupPolicy_policyArn :: Lens.Lens' AttachGroupPolicy Prelude.Text+attachGroupPolicy_policyArn = Lens.lens (\AttachGroupPolicy' {policyArn} -> policyArn) (\s@AttachGroupPolicy' {} a -> s {policyArn = a} :: AttachGroupPolicy)++instance Core.AWSRequest AttachGroupPolicy where+ type+ AWSResponse AttachGroupPolicy =+ AttachGroupPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull AttachGroupPolicyResponse'++instance Prelude.Hashable AttachGroupPolicy where+ hashWithSalt _salt AttachGroupPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData AttachGroupPolicy where+ rnf AttachGroupPolicy' {..} =+ Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders AttachGroupPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath AttachGroupPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery AttachGroupPolicy where+ toQuery AttachGroupPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("AttachGroupPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GroupName" Data.=: groupName,+ "PolicyArn" Data.=: policyArn+ ]++-- | /See:/ 'newAttachGroupPolicyResponse' smart constructor.+data AttachGroupPolicyResponse = AttachGroupPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachGroupPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newAttachGroupPolicyResponse ::+ AttachGroupPolicyResponse+newAttachGroupPolicyResponse =+ AttachGroupPolicyResponse'++instance Prelude.NFData AttachGroupPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/AttachRolePolicy.hs view
@@ -0,0 +1,184 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.AttachRolePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Attaches the specified managed policy to the specified IAM role. When+-- you attach a managed policy to a role, the managed policy becomes part+-- of the role\'s permission (access) policy.+--+-- You cannot use a managed policy as the role\'s trust policy. The role\'s+-- trust policy is created at the same time as the role, using CreateRole.+-- You can update a role\'s trust policy using UpdateAssumeRolePolicy.+--+-- Use this operation to attach a /managed/ policy to a role. To embed an+-- inline policy in a role, use PutRolePolicy. For more information about+-- policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- As a best practice, you can validate your IAM policies. To learn more,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html Validating IAM policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.AttachRolePolicy+ ( -- * Creating a Request+ AttachRolePolicy (..),+ newAttachRolePolicy,++ -- * Request Lenses+ attachRolePolicy_roleName,+ attachRolePolicy_policyArn,++ -- * Destructuring the Response+ AttachRolePolicyResponse (..),+ newAttachRolePolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAttachRolePolicy' smart constructor.+data AttachRolePolicy = AttachRolePolicy'+ { -- | The name (friendly name, not ARN) of the role to attach the policy to.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the IAM policy you want to attach.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachRolePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'attachRolePolicy_roleName' - The name (friendly name, not ARN) of the role to attach the policy to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyArn', 'attachRolePolicy_policyArn' - The Amazon Resource Name (ARN) of the IAM policy you want to attach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newAttachRolePolicy ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'policyArn'+ Prelude.Text ->+ AttachRolePolicy+newAttachRolePolicy pRoleName_ pPolicyArn_ =+ AttachRolePolicy'+ { roleName = pRoleName_,+ policyArn = pPolicyArn_+ }++-- | The name (friendly name, not ARN) of the role to attach the policy to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+attachRolePolicy_roleName :: Lens.Lens' AttachRolePolicy Prelude.Text+attachRolePolicy_roleName = Lens.lens (\AttachRolePolicy' {roleName} -> roleName) (\s@AttachRolePolicy' {} a -> s {roleName = a} :: AttachRolePolicy)++-- | The Amazon Resource Name (ARN) of the IAM policy you want to attach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+attachRolePolicy_policyArn :: Lens.Lens' AttachRolePolicy Prelude.Text+attachRolePolicy_policyArn = Lens.lens (\AttachRolePolicy' {policyArn} -> policyArn) (\s@AttachRolePolicy' {} a -> s {policyArn = a} :: AttachRolePolicy)++instance Core.AWSRequest AttachRolePolicy where+ type+ AWSResponse AttachRolePolicy =+ AttachRolePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull AttachRolePolicyResponse'++instance Prelude.Hashable AttachRolePolicy where+ hashWithSalt _salt AttachRolePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData AttachRolePolicy where+ rnf AttachRolePolicy' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders AttachRolePolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath AttachRolePolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery AttachRolePolicy where+ toQuery AttachRolePolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("AttachRolePolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "PolicyArn" Data.=: policyArn+ ]++-- | /See:/ 'newAttachRolePolicyResponse' smart constructor.+data AttachRolePolicyResponse = AttachRolePolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachRolePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newAttachRolePolicyResponse ::+ AttachRolePolicyResponse+newAttachRolePolicyResponse =+ AttachRolePolicyResponse'++instance Prelude.NFData AttachRolePolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/AttachUserPolicy.hs view
@@ -0,0 +1,182 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.AttachUserPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Attaches the specified managed policy to the specified user.+--+-- You use this operation to attach a /managed/ policy to a user. To embed+-- an inline policy in a user, use PutUserPolicy.+--+-- As a best practice, you can validate your IAM policies. To learn more,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html Validating IAM policies>+-- in the /IAM User Guide/.+--+-- For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.AttachUserPolicy+ ( -- * Creating a Request+ AttachUserPolicy (..),+ newAttachUserPolicy,++ -- * Request Lenses+ attachUserPolicy_userName,+ attachUserPolicy_policyArn,++ -- * Destructuring the Response+ AttachUserPolicyResponse (..),+ newAttachUserPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAttachUserPolicy' smart constructor.+data AttachUserPolicy = AttachUserPolicy'+ { -- | The name (friendly name, not ARN) of the IAM user to attach the policy+ -- to.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the IAM policy you want to attach.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachUserPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'attachUserPolicy_userName' - The name (friendly name, not ARN) of the IAM user to attach the policy+-- to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyArn', 'attachUserPolicy_policyArn' - The Amazon Resource Name (ARN) of the IAM policy you want to attach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newAttachUserPolicy ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'policyArn'+ Prelude.Text ->+ AttachUserPolicy+newAttachUserPolicy pUserName_ pPolicyArn_ =+ AttachUserPolicy'+ { userName = pUserName_,+ policyArn = pPolicyArn_+ }++-- | The name (friendly name, not ARN) of the IAM user to attach the policy+-- to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+attachUserPolicy_userName :: Lens.Lens' AttachUserPolicy Prelude.Text+attachUserPolicy_userName = Lens.lens (\AttachUserPolicy' {userName} -> userName) (\s@AttachUserPolicy' {} a -> s {userName = a} :: AttachUserPolicy)++-- | The Amazon Resource Name (ARN) of the IAM policy you want to attach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+attachUserPolicy_policyArn :: Lens.Lens' AttachUserPolicy Prelude.Text+attachUserPolicy_policyArn = Lens.lens (\AttachUserPolicy' {policyArn} -> policyArn) (\s@AttachUserPolicy' {} a -> s {policyArn = a} :: AttachUserPolicy)++instance Core.AWSRequest AttachUserPolicy where+ type+ AWSResponse AttachUserPolicy =+ AttachUserPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull AttachUserPolicyResponse'++instance Prelude.Hashable AttachUserPolicy where+ hashWithSalt _salt AttachUserPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData AttachUserPolicy where+ rnf AttachUserPolicy' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders AttachUserPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath AttachUserPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery AttachUserPolicy where+ toQuery AttachUserPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("AttachUserPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "PolicyArn" Data.=: policyArn+ ]++-- | /See:/ 'newAttachUserPolicyResponse' smart constructor.+data AttachUserPolicyResponse = AttachUserPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachUserPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newAttachUserPolicyResponse ::+ AttachUserPolicyResponse+newAttachUserPolicyResponse =+ AttachUserPolicyResponse'++instance Prelude.NFData AttachUserPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/ChangePassword.hs view
@@ -0,0 +1,183 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ChangePassword+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Changes the password of the IAM user who is calling this operation. This+-- operation can be performed using the CLI, the Amazon Web Services API,+-- or the __My Security Credentials__ page in the Amazon Web Services+-- Management Console. The Amazon Web Services account root user password+-- is not affected by this operation.+--+-- Use UpdateLoginProfile to use the CLI, the Amazon Web Services API, or+-- the __Users__ page in the IAM console to change the password for any IAM+-- user. For more information about modifying passwords, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html Managing passwords>+-- in the /IAM User Guide/.+module Amazonka.IAM.ChangePassword+ ( -- * Creating a Request+ ChangePassword (..),+ newChangePassword,++ -- * Request Lenses+ changePassword_oldPassword,+ changePassword_newPassword,++ -- * Destructuring the Response+ ChangePasswordResponse (..),+ newChangePasswordResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newChangePassword' smart constructor.+data ChangePassword = ChangePassword'+ { -- | The IAM user\'s current password.+ oldPassword :: Data.Sensitive Prelude.Text,+ -- | The new password. The new password must conform to the Amazon Web+ -- Services account\'s password policy, if one exists.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> that is used to+ -- validate this parameter is a string of characters. That string can+ -- include almost any printable ASCII character from the space (@\\u0020@)+ -- through the end of the ASCII character range (@\\u00FF@). You can also+ -- include the tab (@\\u0009@), line feed (@\\u000A@), and carriage return+ -- (@\\u000D@) characters. Any of these characters are valid in a password.+ -- However, many tools, such as the Amazon Web Services Management Console,+ -- might restrict the ability to type certain characters because they have+ -- special meaning within that tool.+ newPassword' :: Data.Sensitive Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChangePassword' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'oldPassword', 'changePassword_oldPassword' - The IAM user\'s current password.+--+-- 'newPassword'', 'changePassword_newPassword' - The new password. The new password must conform to the Amazon Web+-- Services account\'s password policy, if one exists.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> that is used to+-- validate this parameter is a string of characters. That string can+-- include almost any printable ASCII character from the space (@\\u0020@)+-- through the end of the ASCII character range (@\\u00FF@). You can also+-- include the tab (@\\u0009@), line feed (@\\u000A@), and carriage return+-- (@\\u000D@) characters. Any of these characters are valid in a password.+-- However, many tools, such as the Amazon Web Services Management Console,+-- might restrict the ability to type certain characters because they have+-- special meaning within that tool.+newChangePassword ::+ -- | 'oldPassword'+ Prelude.Text ->+ -- | 'newPassword''+ Prelude.Text ->+ ChangePassword+newChangePassword pOldPassword_ pNewPassword_ =+ ChangePassword'+ { oldPassword =+ Data._Sensitive Lens.# pOldPassword_,+ newPassword' = Data._Sensitive Lens.# pNewPassword_+ }++-- | The IAM user\'s current password.+changePassword_oldPassword :: Lens.Lens' ChangePassword Prelude.Text+changePassword_oldPassword = Lens.lens (\ChangePassword' {oldPassword} -> oldPassword) (\s@ChangePassword' {} a -> s {oldPassword = a} :: ChangePassword) Prelude.. Data._Sensitive++-- | The new password. The new password must conform to the Amazon Web+-- Services account\'s password policy, if one exists.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> that is used to+-- validate this parameter is a string of characters. That string can+-- include almost any printable ASCII character from the space (@\\u0020@)+-- through the end of the ASCII character range (@\\u00FF@). You can also+-- include the tab (@\\u0009@), line feed (@\\u000A@), and carriage return+-- (@\\u000D@) characters. Any of these characters are valid in a password.+-- However, many tools, such as the Amazon Web Services Management Console,+-- might restrict the ability to type certain characters because they have+-- special meaning within that tool.+changePassword_newPassword :: Lens.Lens' ChangePassword Prelude.Text+changePassword_newPassword = Lens.lens (\ChangePassword' {newPassword'} -> newPassword') (\s@ChangePassword' {} a -> s {newPassword' = a} :: ChangePassword) Prelude.. Data._Sensitive++instance Core.AWSRequest ChangePassword where+ type+ AWSResponse ChangePassword =+ ChangePasswordResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull ChangePasswordResponse'++instance Prelude.Hashable ChangePassword where+ hashWithSalt _salt ChangePassword' {..} =+ _salt+ `Prelude.hashWithSalt` oldPassword+ `Prelude.hashWithSalt` newPassword'++instance Prelude.NFData ChangePassword where+ rnf ChangePassword' {..} =+ Prelude.rnf oldPassword+ `Prelude.seq` Prelude.rnf newPassword'++instance Data.ToHeaders ChangePassword where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ChangePassword where+ toPath = Prelude.const "/"++instance Data.ToQuery ChangePassword where+ toQuery ChangePassword' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ChangePassword" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OldPassword" Data.=: oldPassword,+ "NewPassword" Data.=: newPassword'+ ]++-- | /See:/ 'newChangePasswordResponse' smart constructor.+data ChangePasswordResponse = ChangePasswordResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChangePasswordResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newChangePasswordResponse ::+ ChangePasswordResponse+newChangePasswordResponse = ChangePasswordResponse'++instance Prelude.NFData ChangePasswordResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/CreateAccessKey.hs view
@@ -0,0 +1,192 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateAccessKey+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new Amazon Web Services secret access key and corresponding+-- Amazon Web Services access key ID for the specified user. The default+-- status for new keys is @Active@.+--+-- If you do not specify a user name, IAM determines the user name+-- implicitly based on the Amazon Web Services access key ID signing the+-- request. This operation works for access keys under the Amazon Web+-- Services account. Consequently, you can use this operation to manage+-- Amazon Web Services account root user credentials. This is true even if+-- the Amazon Web Services account has no associated users.+--+-- For information about quotas on the number of keys you can create, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+--+-- To ensure the security of your Amazon Web Services account, the secret+-- access key is accessible only during key and user creation. You must+-- save the key (for example, in a text file) if you want to be able to+-- access it again. If a secret key is lost, you can delete the access keys+-- for the associated user and then create new keys.+module Amazonka.IAM.CreateAccessKey+ ( -- * Creating a Request+ CreateAccessKey (..),+ newCreateAccessKey,++ -- * Request Lenses+ createAccessKey_userName,++ -- * Destructuring the Response+ CreateAccessKeyResponse (..),+ newCreateAccessKeyResponse,++ -- * Response Lenses+ createAccessKeyResponse_httpStatus,+ createAccessKeyResponse_accessKey,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateAccessKey' smart constructor.+data CreateAccessKey = CreateAccessKey'+ { -- | The name of the IAM user that the new key will belong to.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateAccessKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'createAccessKey_userName' - The name of the IAM user that the new key will belong to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newCreateAccessKey ::+ CreateAccessKey+newCreateAccessKey =+ CreateAccessKey' {userName = Prelude.Nothing}++-- | The name of the IAM user that the new key will belong to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+createAccessKey_userName :: Lens.Lens' CreateAccessKey (Prelude.Maybe Prelude.Text)+createAccessKey_userName = Lens.lens (\CreateAccessKey' {userName} -> userName) (\s@CreateAccessKey' {} a -> s {userName = a} :: CreateAccessKey)++instance Core.AWSRequest CreateAccessKey where+ type+ AWSResponse CreateAccessKey =+ CreateAccessKeyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateAccessKeyResult"+ ( \s h x ->+ CreateAccessKeyResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "AccessKey")+ )++instance Prelude.Hashable CreateAccessKey where+ hashWithSalt _salt CreateAccessKey' {..} =+ _salt `Prelude.hashWithSalt` userName++instance Prelude.NFData CreateAccessKey where+ rnf CreateAccessKey' {..} = Prelude.rnf userName++instance Data.ToHeaders CreateAccessKey where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateAccessKey where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateAccessKey where+ toQuery CreateAccessKey' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateAccessKey" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful CreateAccessKey request.+--+-- /See:/ 'newCreateAccessKeyResponse' smart constructor.+data CreateAccessKeyResponse = CreateAccessKeyResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure with details about the access key.+ accessKey :: AccessKeyInfo+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateAccessKeyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createAccessKeyResponse_httpStatus' - The response's http status code.+--+-- 'accessKey', 'createAccessKeyResponse_accessKey' - A structure with details about the access key.+newCreateAccessKeyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'accessKey'+ AccessKeyInfo ->+ CreateAccessKeyResponse+newCreateAccessKeyResponse pHttpStatus_ pAccessKey_ =+ CreateAccessKeyResponse'+ { httpStatus = pHttpStatus_,+ accessKey = pAccessKey_+ }++-- | The response's http status code.+createAccessKeyResponse_httpStatus :: Lens.Lens' CreateAccessKeyResponse Prelude.Int+createAccessKeyResponse_httpStatus = Lens.lens (\CreateAccessKeyResponse' {httpStatus} -> httpStatus) (\s@CreateAccessKeyResponse' {} a -> s {httpStatus = a} :: CreateAccessKeyResponse)++-- | A structure with details about the access key.+createAccessKeyResponse_accessKey :: Lens.Lens' CreateAccessKeyResponse AccessKeyInfo+createAccessKeyResponse_accessKey = Lens.lens (\CreateAccessKeyResponse' {accessKey} -> accessKey) (\s@CreateAccessKeyResponse' {} a -> s {accessKey = a} :: CreateAccessKeyResponse)++instance Prelude.NFData CreateAccessKeyResponse where+ rnf CreateAccessKeyResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf accessKey
+ gen/Amazonka/IAM/CreateAccountAlias.hs view
@@ -0,0 +1,140 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateAccountAlias+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an alias for your Amazon Web Services account. For information+-- about using an Amazon Web Services account alias, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html Using an alias for your Amazon Web Services account ID>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreateAccountAlias+ ( -- * Creating a Request+ CreateAccountAlias (..),+ newCreateAccountAlias,++ -- * Request Lenses+ createAccountAlias_accountAlias,++ -- * Destructuring the Response+ CreateAccountAliasResponse (..),+ newCreateAccountAliasResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateAccountAlias' smart constructor.+data CreateAccountAlias = CreateAccountAlias'+ { -- | The account alias to create.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of lowercase letters, digits, and dashes. You cannot start or+ -- finish with a dash, nor can you have two dashes in a row.+ accountAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateAccountAlias' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAlias', 'createAccountAlias_accountAlias' - The account alias to create.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of lowercase letters, digits, and dashes. You cannot start or+-- finish with a dash, nor can you have two dashes in a row.+newCreateAccountAlias ::+ -- | 'accountAlias'+ Prelude.Text ->+ CreateAccountAlias+newCreateAccountAlias pAccountAlias_ =+ CreateAccountAlias' {accountAlias = pAccountAlias_}++-- | The account alias to create.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of lowercase letters, digits, and dashes. You cannot start or+-- finish with a dash, nor can you have two dashes in a row.+createAccountAlias_accountAlias :: Lens.Lens' CreateAccountAlias Prelude.Text+createAccountAlias_accountAlias = Lens.lens (\CreateAccountAlias' {accountAlias} -> accountAlias) (\s@CreateAccountAlias' {} a -> s {accountAlias = a} :: CreateAccountAlias)++instance Core.AWSRequest CreateAccountAlias where+ type+ AWSResponse CreateAccountAlias =+ CreateAccountAliasResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull CreateAccountAliasResponse'++instance Prelude.Hashable CreateAccountAlias where+ hashWithSalt _salt CreateAccountAlias' {..} =+ _salt `Prelude.hashWithSalt` accountAlias++instance Prelude.NFData CreateAccountAlias where+ rnf CreateAccountAlias' {..} =+ Prelude.rnf accountAlias++instance Data.ToHeaders CreateAccountAlias where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateAccountAlias where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateAccountAlias where+ toQuery CreateAccountAlias' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateAccountAlias" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "AccountAlias" Data.=: accountAlias+ ]++-- | /See:/ 'newCreateAccountAliasResponse' smart constructor.+data CreateAccountAliasResponse = CreateAccountAliasResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateAccountAliasResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newCreateAccountAliasResponse ::+ CreateAccountAliasResponse+newCreateAccountAliasResponse =+ CreateAccountAliasResponse'++instance Prelude.NFData CreateAccountAliasResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/CreateGroup.hs view
@@ -0,0 +1,230 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new group.+--+-- For information about the number of groups you can create, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreateGroup+ ( -- * Creating a Request+ CreateGroup (..),+ newCreateGroup,++ -- * Request Lenses+ createGroup_path,+ createGroup_groupName,++ -- * Destructuring the Response+ CreateGroupResponse (..),+ newCreateGroupResponse,++ -- * Response Lenses+ createGroupResponse_httpStatus,+ createGroupResponse_group,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateGroup' smart constructor.+data CreateGroup = CreateGroup'+ { -- | The path to the group. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/).+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ path :: Prelude.Maybe Prelude.Text,+ -- | The name of the group to create. Do not include the path in this value.+ --+ -- IAM user, group, role, and policy names must be unique within the+ -- account. Names are not distinguished by case. For example, you cannot+ -- create resources named both \"MyResource\" and \"myresource\".+ groupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'path', 'createGroup_path' - The path to the group. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'groupName', 'createGroup_groupName' - The name of the group to create. Do not include the path in this value.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+newCreateGroup ::+ -- | 'groupName'+ Prelude.Text ->+ CreateGroup+newCreateGroup pGroupName_ =+ CreateGroup'+ { path = Prelude.Nothing,+ groupName = pGroupName_+ }++-- | The path to the group. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+createGroup_path :: Lens.Lens' CreateGroup (Prelude.Maybe Prelude.Text)+createGroup_path = Lens.lens (\CreateGroup' {path} -> path) (\s@CreateGroup' {} a -> s {path = a} :: CreateGroup)++-- | The name of the group to create. Do not include the path in this value.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+createGroup_groupName :: Lens.Lens' CreateGroup Prelude.Text+createGroup_groupName = Lens.lens (\CreateGroup' {groupName} -> groupName) (\s@CreateGroup' {} a -> s {groupName = a} :: CreateGroup)++instance Core.AWSRequest CreateGroup where+ type AWSResponse CreateGroup = CreateGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateGroupResult"+ ( \s h x ->+ CreateGroupResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "Group")+ )++instance Prelude.Hashable CreateGroup where+ hashWithSalt _salt CreateGroup' {..} =+ _salt+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` groupName++instance Prelude.NFData CreateGroup where+ rnf CreateGroup' {..} =+ Prelude.rnf path+ `Prelude.seq` Prelude.rnf groupName++instance Data.ToHeaders CreateGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateGroup where+ toQuery CreateGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Path" Data.=: path,+ "GroupName" Data.=: groupName+ ]++-- | Contains the response to a successful CreateGroup request.+--+-- /See:/ 'newCreateGroupResponse' smart constructor.+data CreateGroupResponse = CreateGroupResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing details about the new group.+ group' :: Group+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createGroupResponse_httpStatus' - The response's http status code.+--+-- 'group'', 'createGroupResponse_group' - A structure containing details about the new group.+newCreateGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'group''+ Group ->+ CreateGroupResponse+newCreateGroupResponse pHttpStatus_ pGroup_ =+ CreateGroupResponse'+ { httpStatus = pHttpStatus_,+ group' = pGroup_+ }++-- | The response's http status code.+createGroupResponse_httpStatus :: Lens.Lens' CreateGroupResponse Prelude.Int+createGroupResponse_httpStatus = Lens.lens (\CreateGroupResponse' {httpStatus} -> httpStatus) (\s@CreateGroupResponse' {} a -> s {httpStatus = a} :: CreateGroupResponse)++-- | A structure containing details about the new group.+createGroupResponse_group :: Lens.Lens' CreateGroupResponse Group+createGroupResponse_group = Lens.lens (\CreateGroupResponse' {group'} -> group') (\s@CreateGroupResponse' {} a -> s {group' = a} :: CreateGroupResponse)++instance Prelude.NFData CreateGroupResponse where+ rnf CreateGroupResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf group'
+ gen/Amazonka/IAM/CreateInstanceProfile.hs view
@@ -0,0 +1,283 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateInstanceProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new instance profile. For information about instance profiles,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html Using roles for applications on Amazon EC2>+-- in the /IAM User Guide/, and+-- <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#ec2-instance-profile Instance profiles>+-- in the /Amazon EC2 User Guide/.+--+-- For information about the number of instance profiles you can create,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM object quotas>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreateInstanceProfile+ ( -- * Creating a Request+ CreateInstanceProfile (..),+ newCreateInstanceProfile,++ -- * Request Lenses+ createInstanceProfile_path,+ createInstanceProfile_tags,+ createInstanceProfile_instanceProfileName,++ -- * Destructuring the Response+ CreateInstanceProfileResponse (..),+ newCreateInstanceProfileResponse,++ -- * Response Lenses+ createInstanceProfileResponse_httpStatus,+ createInstanceProfileResponse_instanceProfile,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateInstanceProfile' smart constructor.+data CreateInstanceProfile = CreateInstanceProfile'+ { -- | The path to the instance profile. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+ -- in the /IAM User Guide/.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/).+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ path :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that you want to attach to the newly created IAM instance+ -- profile. Each tag consists of a key name and an associated value. For+ -- more information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ --+ -- If any one of the tags is invalid or if you exceed the allowed maximum+ -- number of tags, then the entire request fails and the resource is not+ -- created.+ tags :: Prelude.Maybe [Tag],+ -- | The name of the instance profile to create.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ instanceProfileName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateInstanceProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'path', 'createInstanceProfile_path' - The path to the instance profile. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'tags', 'createInstanceProfile_tags' - A list of tags that you want to attach to the newly created IAM instance+-- profile. Each tag consists of a key name and an associated value. For+-- more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+--+-- 'instanceProfileName', 'createInstanceProfile_instanceProfileName' - The name of the instance profile to create.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newCreateInstanceProfile ::+ -- | 'instanceProfileName'+ Prelude.Text ->+ CreateInstanceProfile+newCreateInstanceProfile pInstanceProfileName_ =+ CreateInstanceProfile'+ { path = Prelude.Nothing,+ tags = Prelude.Nothing,+ instanceProfileName = pInstanceProfileName_+ }++-- | The path to the instance profile. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+createInstanceProfile_path :: Lens.Lens' CreateInstanceProfile (Prelude.Maybe Prelude.Text)+createInstanceProfile_path = Lens.lens (\CreateInstanceProfile' {path} -> path) (\s@CreateInstanceProfile' {} a -> s {path = a} :: CreateInstanceProfile)++-- | A list of tags that you want to attach to the newly created IAM instance+-- profile. Each tag consists of a key name and an associated value. For+-- more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+createInstanceProfile_tags :: Lens.Lens' CreateInstanceProfile (Prelude.Maybe [Tag])+createInstanceProfile_tags = Lens.lens (\CreateInstanceProfile' {tags} -> tags) (\s@CreateInstanceProfile' {} a -> s {tags = a} :: CreateInstanceProfile) Prelude.. Lens.mapping Lens.coerced++-- | The name of the instance profile to create.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+createInstanceProfile_instanceProfileName :: Lens.Lens' CreateInstanceProfile Prelude.Text+createInstanceProfile_instanceProfileName = Lens.lens (\CreateInstanceProfile' {instanceProfileName} -> instanceProfileName) (\s@CreateInstanceProfile' {} a -> s {instanceProfileName = a} :: CreateInstanceProfile)++instance Core.AWSRequest CreateInstanceProfile where+ type+ AWSResponse CreateInstanceProfile =+ CreateInstanceProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateInstanceProfileResult"+ ( \s h x ->+ CreateInstanceProfileResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "InstanceProfile")+ )++instance Prelude.Hashable CreateInstanceProfile where+ hashWithSalt _salt CreateInstanceProfile' {..} =+ _salt+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` instanceProfileName++instance Prelude.NFData CreateInstanceProfile where+ rnf CreateInstanceProfile' {..} =+ Prelude.rnf path+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf instanceProfileName++instance Data.ToHeaders CreateInstanceProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateInstanceProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateInstanceProfile where+ toQuery CreateInstanceProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateInstanceProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Path" Data.=: path,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> tags),+ "InstanceProfileName" Data.=: instanceProfileName+ ]++-- | Contains the response to a successful CreateInstanceProfile request.+--+-- /See:/ 'newCreateInstanceProfileResponse' smart constructor.+data CreateInstanceProfileResponse = CreateInstanceProfileResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing details about the new instance profile.+ instanceProfile :: InstanceProfile+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateInstanceProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createInstanceProfileResponse_httpStatus' - The response's http status code.+--+-- 'instanceProfile', 'createInstanceProfileResponse_instanceProfile' - A structure containing details about the new instance profile.+newCreateInstanceProfileResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'instanceProfile'+ InstanceProfile ->+ CreateInstanceProfileResponse+newCreateInstanceProfileResponse+ pHttpStatus_+ pInstanceProfile_ =+ CreateInstanceProfileResponse'+ { httpStatus =+ pHttpStatus_,+ instanceProfile = pInstanceProfile_+ }++-- | The response's http status code.+createInstanceProfileResponse_httpStatus :: Lens.Lens' CreateInstanceProfileResponse Prelude.Int+createInstanceProfileResponse_httpStatus = Lens.lens (\CreateInstanceProfileResponse' {httpStatus} -> httpStatus) (\s@CreateInstanceProfileResponse' {} a -> s {httpStatus = a} :: CreateInstanceProfileResponse)++-- | A structure containing details about the new instance profile.+createInstanceProfileResponse_instanceProfile :: Lens.Lens' CreateInstanceProfileResponse InstanceProfile+createInstanceProfileResponse_instanceProfile = Lens.lens (\CreateInstanceProfileResponse' {instanceProfile} -> instanceProfile) (\s@CreateInstanceProfileResponse' {} a -> s {instanceProfile = a} :: CreateInstanceProfileResponse)++instance Prelude.NFData CreateInstanceProfileResponse where+ rnf CreateInstanceProfileResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf instanceProfile
+ gen/Amazonka/IAM/CreateLoginProfile.hs view
@@ -0,0 +1,259 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateLoginProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a password for the specified IAM user. A password allows an IAM+-- user to access Amazon Web Services services through the Amazon Web+-- Services Management Console.+--+-- You can use the CLI, the Amazon Web Services API, or the __Users__ page+-- in the IAM console to create a password for any IAM user. Use+-- ChangePassword to update your own existing password in the __My Security+-- Credentials__ page in the Amazon Web Services Management Console.+--+-- For more information about managing passwords, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html Managing passwords>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreateLoginProfile+ ( -- * Creating a Request+ CreateLoginProfile (..),+ newCreateLoginProfile,++ -- * Request Lenses+ createLoginProfile_passwordResetRequired,+ createLoginProfile_userName,+ createLoginProfile_password,++ -- * Destructuring the Response+ CreateLoginProfileResponse (..),+ newCreateLoginProfileResponse,++ -- * Response Lenses+ createLoginProfileResponse_httpStatus,+ createLoginProfileResponse_loginProfile,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateLoginProfile' smart constructor.+data CreateLoginProfile = CreateLoginProfile'+ { -- | Specifies whether the user is required to set a new password on next+ -- sign-in.+ passwordResetRequired :: Prelude.Maybe Prelude.Bool,+ -- | The name of the IAM user to create a password for. The user must already+ -- exist.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The new password for the user.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> that is used to+ -- validate this parameter is a string of characters. That string can+ -- include almost any printable ASCII character from the space (@\\u0020@)+ -- through the end of the ASCII character range (@\\u00FF@). You can also+ -- include the tab (@\\u0009@), line feed (@\\u000A@), and carriage return+ -- (@\\u000D@) characters. Any of these characters are valid in a password.+ -- However, many tools, such as the Amazon Web Services Management Console,+ -- might restrict the ability to type certain characters because they have+ -- special meaning within that tool.+ password :: Data.Sensitive Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateLoginProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'passwordResetRequired', 'createLoginProfile_passwordResetRequired' - Specifies whether the user is required to set a new password on next+-- sign-in.+--+-- 'userName', 'createLoginProfile_userName' - The name of the IAM user to create a password for. The user must already+-- exist.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'password', 'createLoginProfile_password' - The new password for the user.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> that is used to+-- validate this parameter is a string of characters. That string can+-- include almost any printable ASCII character from the space (@\\u0020@)+-- through the end of the ASCII character range (@\\u00FF@). You can also+-- include the tab (@\\u0009@), line feed (@\\u000A@), and carriage return+-- (@\\u000D@) characters. Any of these characters are valid in a password.+-- However, many tools, such as the Amazon Web Services Management Console,+-- might restrict the ability to type certain characters because they have+-- special meaning within that tool.+newCreateLoginProfile ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'password'+ Prelude.Text ->+ CreateLoginProfile+newCreateLoginProfile pUserName_ pPassword_ =+ CreateLoginProfile'+ { passwordResetRequired =+ Prelude.Nothing,+ userName = pUserName_,+ password = Data._Sensitive Lens.# pPassword_+ }++-- | Specifies whether the user is required to set a new password on next+-- sign-in.+createLoginProfile_passwordResetRequired :: Lens.Lens' CreateLoginProfile (Prelude.Maybe Prelude.Bool)+createLoginProfile_passwordResetRequired = Lens.lens (\CreateLoginProfile' {passwordResetRequired} -> passwordResetRequired) (\s@CreateLoginProfile' {} a -> s {passwordResetRequired = a} :: CreateLoginProfile)++-- | The name of the IAM user to create a password for. The user must already+-- exist.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+createLoginProfile_userName :: Lens.Lens' CreateLoginProfile Prelude.Text+createLoginProfile_userName = Lens.lens (\CreateLoginProfile' {userName} -> userName) (\s@CreateLoginProfile' {} a -> s {userName = a} :: CreateLoginProfile)++-- | The new password for the user.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> that is used to+-- validate this parameter is a string of characters. That string can+-- include almost any printable ASCII character from the space (@\\u0020@)+-- through the end of the ASCII character range (@\\u00FF@). You can also+-- include the tab (@\\u0009@), line feed (@\\u000A@), and carriage return+-- (@\\u000D@) characters. Any of these characters are valid in a password.+-- However, many tools, such as the Amazon Web Services Management Console,+-- might restrict the ability to type certain characters because they have+-- special meaning within that tool.+createLoginProfile_password :: Lens.Lens' CreateLoginProfile Prelude.Text+createLoginProfile_password = Lens.lens (\CreateLoginProfile' {password} -> password) (\s@CreateLoginProfile' {} a -> s {password = a} :: CreateLoginProfile) Prelude.. Data._Sensitive++instance Core.AWSRequest CreateLoginProfile where+ type+ AWSResponse CreateLoginProfile =+ CreateLoginProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateLoginProfileResult"+ ( \s h x ->+ CreateLoginProfileResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "LoginProfile")+ )++instance Prelude.Hashable CreateLoginProfile where+ hashWithSalt _salt CreateLoginProfile' {..} =+ _salt+ `Prelude.hashWithSalt` passwordResetRequired+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` password++instance Prelude.NFData CreateLoginProfile where+ rnf CreateLoginProfile' {..} =+ Prelude.rnf passwordResetRequired+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf password++instance Data.ToHeaders CreateLoginProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateLoginProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateLoginProfile where+ toQuery CreateLoginProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateLoginProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PasswordResetRequired"+ Data.=: passwordResetRequired,+ "UserName" Data.=: userName,+ "Password" Data.=: password+ ]++-- | Contains the response to a successful CreateLoginProfile request.+--+-- /See:/ 'newCreateLoginProfileResponse' smart constructor.+data CreateLoginProfileResponse = CreateLoginProfileResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing the user name and password create date.+ loginProfile :: LoginProfile+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateLoginProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createLoginProfileResponse_httpStatus' - The response's http status code.+--+-- 'loginProfile', 'createLoginProfileResponse_loginProfile' - A structure containing the user name and password create date.+newCreateLoginProfileResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'loginProfile'+ LoginProfile ->+ CreateLoginProfileResponse+newCreateLoginProfileResponse+ pHttpStatus_+ pLoginProfile_ =+ CreateLoginProfileResponse'+ { httpStatus =+ pHttpStatus_,+ loginProfile = pLoginProfile_+ }++-- | The response's http status code.+createLoginProfileResponse_httpStatus :: Lens.Lens' CreateLoginProfileResponse Prelude.Int+createLoginProfileResponse_httpStatus = Lens.lens (\CreateLoginProfileResponse' {httpStatus} -> httpStatus) (\s@CreateLoginProfileResponse' {} a -> s {httpStatus = a} :: CreateLoginProfileResponse)++-- | A structure containing the user name and password create date.+createLoginProfileResponse_loginProfile :: Lens.Lens' CreateLoginProfileResponse LoginProfile+createLoginProfileResponse_loginProfile = Lens.lens (\CreateLoginProfileResponse' {loginProfile} -> loginProfile) (\s@CreateLoginProfileResponse' {} a -> s {loginProfile = a} :: CreateLoginProfileResponse)++instance Prelude.NFData CreateLoginProfileResponse where+ rnf CreateLoginProfileResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf loginProfile
+ gen/Amazonka/IAM/CreateOpenIDConnectProvider.hs view
@@ -0,0 +1,435 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateOpenIDConnectProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an IAM entity to describe an identity provider (IdP) that+-- supports <http://openid.net/connect/ OpenID Connect (OIDC)>.+--+-- The OIDC provider that you create with this operation can be used as a+-- principal in a role\'s trust policy. Such a policy establishes a trust+-- relationship between Amazon Web Services and the OIDC provider.+--+-- If you are using an OIDC identity provider from Google, Facebook, or+-- Amazon Cognito, you don\'t need to create a separate IAM identity+-- provider. These OIDC identity providers are already built-in to Amazon+-- Web Services and are available for your use. Instead, you can move+-- directly to creating new roles using your identity provider. To learn+-- more, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_oidc.html Creating a role for web identity or OpenID connect federation>+-- in the /IAM User Guide/.+--+-- When you create the IAM OIDC provider, you specify the following:+--+-- - The URL of the OIDC identity provider (IdP) to trust+--+-- - A list of client IDs (also known as audiences) that identify the+-- application or applications allowed to authenticate using the OIDC+-- provider+--+-- - A list of thumbprints of one or more server certificates that the+-- IdP uses+--+-- You get all of this information from the OIDC IdP you want to use to+-- access Amazon Web Services.+--+-- Amazon Web Services secures communication with some OIDC identity+-- providers (IdPs) through our library of trusted certificate authorities+-- (CAs) instead of using a certificate thumbprint to verify your IdP+-- server certificate. These OIDC IdPs include Google, and those that use+-- an Amazon S3 bucket to host a JSON Web Key Set (JWKS) endpoint. In these+-- cases, your legacy thumbprint remains in your configuration, but is no+-- longer used for validation.+--+-- The trust for the OIDC provider is derived from the IAM provider that+-- this operation creates. Therefore, it is best to limit access to the+-- CreateOpenIDConnectProvider operation to highly privileged users.+module Amazonka.IAM.CreateOpenIDConnectProvider+ ( -- * Creating a Request+ CreateOpenIDConnectProvider (..),+ newCreateOpenIDConnectProvider,++ -- * Request Lenses+ createOpenIDConnectProvider_clientIDList,+ createOpenIDConnectProvider_tags,+ createOpenIDConnectProvider_url,+ createOpenIDConnectProvider_thumbprintList,++ -- * Destructuring the Response+ CreateOpenIDConnectProviderResponse (..),+ newCreateOpenIDConnectProviderResponse,++ -- * Response Lenses+ createOpenIDConnectProviderResponse_openIDConnectProviderArn,+ createOpenIDConnectProviderResponse_tags,+ createOpenIDConnectProviderResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateOpenIDConnectProvider' smart constructor.+data CreateOpenIDConnectProvider = CreateOpenIDConnectProvider'+ { -- | Provides a list of client IDs, also known as audiences. When a mobile or+ -- web app registers with an OpenID Connect provider, they establish a+ -- value that identifies the application. This is the value that\'s sent as+ -- the @client_id@ parameter on OAuth requests.+ --+ -- You can register multiple client IDs with the same provider. For+ -- example, you might have multiple applications that use the same OIDC+ -- provider. You cannot register more than 100 client IDs with a single IAM+ -- OIDC provider.+ --+ -- There is no defined format for a client ID. The+ -- @CreateOpenIDConnectProviderRequest@ operation accepts client IDs up to+ -- 255 characters long.+ clientIDList :: Prelude.Maybe [Prelude.Text],+ -- | A list of tags that you want to attach to the new IAM OpenID Connect+ -- (OIDC) provider. Each tag consists of a key name and an associated+ -- value. For more information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ --+ -- If any one of the tags is invalid or if you exceed the allowed maximum+ -- number of tags, then the entire request fails and the resource is not+ -- created.+ tags :: Prelude.Maybe [Tag],+ -- | The URL of the identity provider. The URL must begin with @https:\/\/@+ -- and should correspond to the @iss@ claim in the provider\'s OpenID+ -- Connect ID tokens. Per the OIDC standard, path components are allowed+ -- but query parameters are not. Typically the URL consists of only a+ -- hostname, like @https:\/\/server.example.org@ or+ -- @https:\/\/example.com@. The URL should not contain a port number.+ --+ -- You cannot register the same provider multiple times in a single Amazon+ -- Web Services account. If you try to submit a URL that has already been+ -- used for an OpenID Connect provider in the Amazon Web Services account,+ -- you will get an error.+ url :: Prelude.Text,+ -- | A list of server certificate thumbprints for the OpenID Connect (OIDC)+ -- identity provider\'s server certificates. Typically this list includes+ -- only one entry. However, IAM lets you have up to five thumbprints for an+ -- OIDC provider. This lets you maintain multiple thumbprints if the+ -- identity provider is rotating certificates.+ --+ -- The server certificate thumbprint is the hex-encoded SHA-1 hash value of+ -- the X.509 certificate used by the domain where the OpenID Connect+ -- provider makes its keys available. It is always a 40-character string.+ --+ -- You must provide at least one thumbprint when creating an IAM OIDC+ -- provider. For example, assume that the OIDC provider is+ -- @server.example.com@ and the provider stores its keys at+ -- https:\/\/keys.server.example.com\/openid-connect. In that case, the+ -- thumbprint string would be the hex-encoded SHA-1 hash value of the+ -- certificate used by @https:\/\/keys.server.example.com.@+ --+ -- For more information about obtaining the OIDC provider thumbprint, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html Obtaining the thumbprint for an OpenID Connect provider>+ -- in the /IAM User Guide/.+ thumbprintList :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateOpenIDConnectProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientIDList', 'createOpenIDConnectProvider_clientIDList' - Provides a list of client IDs, also known as audiences. When a mobile or+-- web app registers with an OpenID Connect provider, they establish a+-- value that identifies the application. This is the value that\'s sent as+-- the @client_id@ parameter on OAuth requests.+--+-- You can register multiple client IDs with the same provider. For+-- example, you might have multiple applications that use the same OIDC+-- provider. You cannot register more than 100 client IDs with a single IAM+-- OIDC provider.+--+-- There is no defined format for a client ID. The+-- @CreateOpenIDConnectProviderRequest@ operation accepts client IDs up to+-- 255 characters long.+--+-- 'tags', 'createOpenIDConnectProvider_tags' - A list of tags that you want to attach to the new IAM OpenID Connect+-- (OIDC) provider. Each tag consists of a key name and an associated+-- value. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+--+-- 'url', 'createOpenIDConnectProvider_url' - The URL of the identity provider. The URL must begin with @https:\/\/@+-- and should correspond to the @iss@ claim in the provider\'s OpenID+-- Connect ID tokens. Per the OIDC standard, path components are allowed+-- but query parameters are not. Typically the URL consists of only a+-- hostname, like @https:\/\/server.example.org@ or+-- @https:\/\/example.com@. The URL should not contain a port number.+--+-- You cannot register the same provider multiple times in a single Amazon+-- Web Services account. If you try to submit a URL that has already been+-- used for an OpenID Connect provider in the Amazon Web Services account,+-- you will get an error.+--+-- 'thumbprintList', 'createOpenIDConnectProvider_thumbprintList' - A list of server certificate thumbprints for the OpenID Connect (OIDC)+-- identity provider\'s server certificates. Typically this list includes+-- only one entry. However, IAM lets you have up to five thumbprints for an+-- OIDC provider. This lets you maintain multiple thumbprints if the+-- identity provider is rotating certificates.+--+-- The server certificate thumbprint is the hex-encoded SHA-1 hash value of+-- the X.509 certificate used by the domain where the OpenID Connect+-- provider makes its keys available. It is always a 40-character string.+--+-- You must provide at least one thumbprint when creating an IAM OIDC+-- provider. For example, assume that the OIDC provider is+-- @server.example.com@ and the provider stores its keys at+-- https:\/\/keys.server.example.com\/openid-connect. In that case, the+-- thumbprint string would be the hex-encoded SHA-1 hash value of the+-- certificate used by @https:\/\/keys.server.example.com.@+--+-- For more information about obtaining the OIDC provider thumbprint, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html Obtaining the thumbprint for an OpenID Connect provider>+-- in the /IAM User Guide/.+newCreateOpenIDConnectProvider ::+ -- | 'url'+ Prelude.Text ->+ CreateOpenIDConnectProvider+newCreateOpenIDConnectProvider pUrl_ =+ CreateOpenIDConnectProvider'+ { clientIDList =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ url = pUrl_,+ thumbprintList = Prelude.mempty+ }++-- | Provides a list of client IDs, also known as audiences. When a mobile or+-- web app registers with an OpenID Connect provider, they establish a+-- value that identifies the application. This is the value that\'s sent as+-- the @client_id@ parameter on OAuth requests.+--+-- You can register multiple client IDs with the same provider. For+-- example, you might have multiple applications that use the same OIDC+-- provider. You cannot register more than 100 client IDs with a single IAM+-- OIDC provider.+--+-- There is no defined format for a client ID. The+-- @CreateOpenIDConnectProviderRequest@ operation accepts client IDs up to+-- 255 characters long.+createOpenIDConnectProvider_clientIDList :: Lens.Lens' CreateOpenIDConnectProvider (Prelude.Maybe [Prelude.Text])+createOpenIDConnectProvider_clientIDList = Lens.lens (\CreateOpenIDConnectProvider' {clientIDList} -> clientIDList) (\s@CreateOpenIDConnectProvider' {} a -> s {clientIDList = a} :: CreateOpenIDConnectProvider) Prelude.. Lens.mapping Lens.coerced++-- | A list of tags that you want to attach to the new IAM OpenID Connect+-- (OIDC) provider. Each tag consists of a key name and an associated+-- value. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+createOpenIDConnectProvider_tags :: Lens.Lens' CreateOpenIDConnectProvider (Prelude.Maybe [Tag])+createOpenIDConnectProvider_tags = Lens.lens (\CreateOpenIDConnectProvider' {tags} -> tags) (\s@CreateOpenIDConnectProvider' {} a -> s {tags = a} :: CreateOpenIDConnectProvider) Prelude.. Lens.mapping Lens.coerced++-- | The URL of the identity provider. The URL must begin with @https:\/\/@+-- and should correspond to the @iss@ claim in the provider\'s OpenID+-- Connect ID tokens. Per the OIDC standard, path components are allowed+-- but query parameters are not. Typically the URL consists of only a+-- hostname, like @https:\/\/server.example.org@ or+-- @https:\/\/example.com@. The URL should not contain a port number.+--+-- You cannot register the same provider multiple times in a single Amazon+-- Web Services account. If you try to submit a URL that has already been+-- used for an OpenID Connect provider in the Amazon Web Services account,+-- you will get an error.+createOpenIDConnectProvider_url :: Lens.Lens' CreateOpenIDConnectProvider Prelude.Text+createOpenIDConnectProvider_url = Lens.lens (\CreateOpenIDConnectProvider' {url} -> url) (\s@CreateOpenIDConnectProvider' {} a -> s {url = a} :: CreateOpenIDConnectProvider)++-- | A list of server certificate thumbprints for the OpenID Connect (OIDC)+-- identity provider\'s server certificates. Typically this list includes+-- only one entry. However, IAM lets you have up to five thumbprints for an+-- OIDC provider. This lets you maintain multiple thumbprints if the+-- identity provider is rotating certificates.+--+-- The server certificate thumbprint is the hex-encoded SHA-1 hash value of+-- the X.509 certificate used by the domain where the OpenID Connect+-- provider makes its keys available. It is always a 40-character string.+--+-- You must provide at least one thumbprint when creating an IAM OIDC+-- provider. For example, assume that the OIDC provider is+-- @server.example.com@ and the provider stores its keys at+-- https:\/\/keys.server.example.com\/openid-connect. In that case, the+-- thumbprint string would be the hex-encoded SHA-1 hash value of the+-- certificate used by @https:\/\/keys.server.example.com.@+--+-- For more information about obtaining the OIDC provider thumbprint, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html Obtaining the thumbprint for an OpenID Connect provider>+-- in the /IAM User Guide/.+createOpenIDConnectProvider_thumbprintList :: Lens.Lens' CreateOpenIDConnectProvider [Prelude.Text]+createOpenIDConnectProvider_thumbprintList = Lens.lens (\CreateOpenIDConnectProvider' {thumbprintList} -> thumbprintList) (\s@CreateOpenIDConnectProvider' {} a -> s {thumbprintList = a} :: CreateOpenIDConnectProvider) Prelude.. Lens.coerced++instance Core.AWSRequest CreateOpenIDConnectProvider where+ type+ AWSResponse CreateOpenIDConnectProvider =+ CreateOpenIDConnectProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateOpenIDConnectProviderResult"+ ( \s h x ->+ CreateOpenIDConnectProviderResponse'+ Prelude.<$> (x Data..@? "OpenIDConnectProviderArn")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateOpenIDConnectProvider where+ hashWithSalt _salt CreateOpenIDConnectProvider' {..} =+ _salt+ `Prelude.hashWithSalt` clientIDList+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` url+ `Prelude.hashWithSalt` thumbprintList++instance Prelude.NFData CreateOpenIDConnectProvider where+ rnf CreateOpenIDConnectProvider' {..} =+ Prelude.rnf clientIDList+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf url+ `Prelude.seq` Prelude.rnf thumbprintList++instance Data.ToHeaders CreateOpenIDConnectProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateOpenIDConnectProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateOpenIDConnectProvider where+ toQuery CreateOpenIDConnectProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "CreateOpenIDConnectProvider" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "ClientIDList"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> clientIDList),+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> tags),+ "Url" Data.=: url,+ "ThumbprintList"+ Data.=: Data.toQueryList "member" thumbprintList+ ]++-- | Contains the response to a successful CreateOpenIDConnectProvider+-- request.+--+-- /See:/ 'newCreateOpenIDConnectProviderResponse' smart constructor.+data CreateOpenIDConnectProviderResponse = CreateOpenIDConnectProviderResponse'+ { -- | The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider+ -- that is created. For more information, see+ -- OpenIDConnectProviderListEntry.+ openIDConnectProviderArn :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that are attached to the new IAM OIDC provider. The+ -- returned list of tags is sorted by tag key. For more information about+ -- tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateOpenIDConnectProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderArn', 'createOpenIDConnectProviderResponse_openIDConnectProviderArn' - The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider+-- that is created. For more information, see+-- OpenIDConnectProviderListEntry.+--+-- 'tags', 'createOpenIDConnectProviderResponse_tags' - A list of tags that are attached to the new IAM OIDC provider. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'httpStatus', 'createOpenIDConnectProviderResponse_httpStatus' - The response's http status code.+newCreateOpenIDConnectProviderResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateOpenIDConnectProviderResponse+newCreateOpenIDConnectProviderResponse pHttpStatus_ =+ CreateOpenIDConnectProviderResponse'+ { openIDConnectProviderArn =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider+-- that is created. For more information, see+-- OpenIDConnectProviderListEntry.+createOpenIDConnectProviderResponse_openIDConnectProviderArn :: Lens.Lens' CreateOpenIDConnectProviderResponse (Prelude.Maybe Prelude.Text)+createOpenIDConnectProviderResponse_openIDConnectProviderArn = Lens.lens (\CreateOpenIDConnectProviderResponse' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@CreateOpenIDConnectProviderResponse' {} a -> s {openIDConnectProviderArn = a} :: CreateOpenIDConnectProviderResponse)++-- | A list of tags that are attached to the new IAM OIDC provider. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+createOpenIDConnectProviderResponse_tags :: Lens.Lens' CreateOpenIDConnectProviderResponse (Prelude.Maybe [Tag])+createOpenIDConnectProviderResponse_tags = Lens.lens (\CreateOpenIDConnectProviderResponse' {tags} -> tags) (\s@CreateOpenIDConnectProviderResponse' {} a -> s {tags = a} :: CreateOpenIDConnectProviderResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createOpenIDConnectProviderResponse_httpStatus :: Lens.Lens' CreateOpenIDConnectProviderResponse Prelude.Int+createOpenIDConnectProviderResponse_httpStatus = Lens.lens (\CreateOpenIDConnectProviderResponse' {httpStatus} -> httpStatus) (\s@CreateOpenIDConnectProviderResponse' {} a -> s {httpStatus = a} :: CreateOpenIDConnectProviderResponse)++instance+ Prelude.NFData+ CreateOpenIDConnectProviderResponse+ where+ rnf CreateOpenIDConnectProviderResponse' {..} =+ Prelude.rnf openIDConnectProviderArn+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/CreatePolicy.hs view
@@ -0,0 +1,417 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreatePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new managed policy for your Amazon Web Services account.+--+-- This operation creates a policy version with a version identifier of+-- @v1@ and sets v1 as the policy\'s default version. For more information+-- about policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+--+-- As a best practice, you can validate your IAM policies. To learn more,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_policy-validator.html Validating IAM policies>+-- in the /IAM User Guide/.+--+-- For more information about managed policies in general, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreatePolicy+ ( -- * Creating a Request+ CreatePolicy (..),+ newCreatePolicy,++ -- * Request Lenses+ createPolicy_description,+ createPolicy_path,+ createPolicy_tags,+ createPolicy_policyName,+ createPolicy_policyDocument,++ -- * Destructuring the Response+ CreatePolicyResponse (..),+ newCreatePolicyResponse,++ -- * Response Lenses+ createPolicyResponse_policy,+ createPolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreatePolicy' smart constructor.+data CreatePolicy = CreatePolicy'+ { -- | A friendly description of the policy.+ --+ -- Typically used to store information about the permissions defined in the+ -- policy. For example, \"Grants access to production DynamoDB tables.\"+ --+ -- The policy description is immutable. After a value is assigned, it+ -- cannot be changed.+ description :: Prelude.Maybe Prelude.Text,+ -- | The path for the policy.+ --+ -- For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/).+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ --+ -- You cannot use an asterisk (*) in the path name.+ path :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that you want to attach to the new IAM customer managed+ -- policy. Each tag consists of a key name and an associated value. For+ -- more information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ --+ -- If any one of the tags is invalid or if you exceed the allowed maximum+ -- number of tags, then the entire request fails and the resource is not+ -- created.+ tags :: Prelude.Maybe [Tag],+ -- | The friendly name of the policy.+ --+ -- IAM user, group, role, and policy names must be unique within the+ -- account. Names are not distinguished by case. For example, you cannot+ -- create resources named both \"MyResource\" and \"myresource\".+ policyName :: Prelude.Text,+ -- | The JSON policy document that you want to use as the content for the new+ -- policy.+ --+ -- You must provide policies in JSON format in IAM. However, for+ -- CloudFormation templates formatted in YAML, you can provide the policy+ -- in JSON or YAML format. CloudFormation always converts a YAML policy to+ -- JSON format before submitting it to IAM.+ --+ -- The maximum length of the policy document that you can pass in this+ -- operation, including whitespace, is listed below. To view the maximum+ -- character counts of a managed policy with no whitespaces, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+ --+ -- To learn more about JSON policy grammar, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html Grammar of the IAM JSON policy language>+ -- in the /IAM User Guide/.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'createPolicy_description' - A friendly description of the policy.+--+-- Typically used to store information about the permissions defined in the+-- policy. For example, \"Grants access to production DynamoDB tables.\"+--+-- The policy description is immutable. After a value is assigned, it+-- cannot be changed.+--+-- 'path', 'createPolicy_path' - The path for the policy.+--+-- For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- You cannot use an asterisk (*) in the path name.+--+-- 'tags', 'createPolicy_tags' - A list of tags that you want to attach to the new IAM customer managed+-- policy. Each tag consists of a key name and an associated value. For+-- more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+--+-- 'policyName', 'createPolicy_policyName' - The friendly name of the policy.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+--+-- 'policyDocument', 'createPolicy_policyDocument' - The JSON policy document that you want to use as the content for the new+-- policy.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- To learn more about JSON policy grammar, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html Grammar of the IAM JSON policy language>+-- in the /IAM User Guide/.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newCreatePolicy ::+ -- | 'policyName'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ CreatePolicy+newCreatePolicy pPolicyName_ pPolicyDocument_ =+ CreatePolicy'+ { description = Prelude.Nothing,+ path = Prelude.Nothing,+ tags = Prelude.Nothing,+ policyName = pPolicyName_,+ policyDocument = pPolicyDocument_+ }++-- | A friendly description of the policy.+--+-- Typically used to store information about the permissions defined in the+-- policy. For example, \"Grants access to production DynamoDB tables.\"+--+-- The policy description is immutable. After a value is assigned, it+-- cannot be changed.+createPolicy_description :: Lens.Lens' CreatePolicy (Prelude.Maybe Prelude.Text)+createPolicy_description = Lens.lens (\CreatePolicy' {description} -> description) (\s@CreatePolicy' {} a -> s {description = a} :: CreatePolicy)++-- | The path for the policy.+--+-- For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- You cannot use an asterisk (*) in the path name.+createPolicy_path :: Lens.Lens' CreatePolicy (Prelude.Maybe Prelude.Text)+createPolicy_path = Lens.lens (\CreatePolicy' {path} -> path) (\s@CreatePolicy' {} a -> s {path = a} :: CreatePolicy)++-- | A list of tags that you want to attach to the new IAM customer managed+-- policy. Each tag consists of a key name and an associated value. For+-- more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+createPolicy_tags :: Lens.Lens' CreatePolicy (Prelude.Maybe [Tag])+createPolicy_tags = Lens.lens (\CreatePolicy' {tags} -> tags) (\s@CreatePolicy' {} a -> s {tags = a} :: CreatePolicy) Prelude.. Lens.mapping Lens.coerced++-- | The friendly name of the policy.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+createPolicy_policyName :: Lens.Lens' CreatePolicy Prelude.Text+createPolicy_policyName = Lens.lens (\CreatePolicy' {policyName} -> policyName) (\s@CreatePolicy' {} a -> s {policyName = a} :: CreatePolicy)++-- | The JSON policy document that you want to use as the content for the new+-- policy.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- To learn more about JSON policy grammar, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html Grammar of the IAM JSON policy language>+-- in the /IAM User Guide/.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+createPolicy_policyDocument :: Lens.Lens' CreatePolicy Prelude.Text+createPolicy_policyDocument = Lens.lens (\CreatePolicy' {policyDocument} -> policyDocument) (\s@CreatePolicy' {} a -> s {policyDocument = a} :: CreatePolicy)++instance Core.AWSRequest CreatePolicy where+ type AWSResponse CreatePolicy = CreatePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreatePolicyResult"+ ( \s h x ->+ CreatePolicyResponse'+ Prelude.<$> (x Data..@? "Policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreatePolicy where+ hashWithSalt _salt CreatePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` policyName+ `Prelude.hashWithSalt` policyDocument++instance Prelude.NFData CreatePolicy where+ rnf CreatePolicy' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyDocument++instance Data.ToHeaders CreatePolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreatePolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery CreatePolicy where+ toQuery CreatePolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreatePolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Description" Data.=: description,+ "Path" Data.=: path,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> tags),+ "PolicyName" Data.=: policyName,+ "PolicyDocument" Data.=: policyDocument+ ]++-- | Contains the response to a successful CreatePolicy request.+--+-- /See:/ 'newCreatePolicyResponse' smart constructor.+data CreatePolicyResponse = CreatePolicyResponse'+ { -- | A structure containing details about the new policy.+ policy :: Prelude.Maybe Policy,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'createPolicyResponse_policy' - A structure containing details about the new policy.+--+-- 'httpStatus', 'createPolicyResponse_httpStatus' - The response's http status code.+newCreatePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreatePolicyResponse+newCreatePolicyResponse pHttpStatus_ =+ CreatePolicyResponse'+ { policy = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure containing details about the new policy.+createPolicyResponse_policy :: Lens.Lens' CreatePolicyResponse (Prelude.Maybe Policy)+createPolicyResponse_policy = Lens.lens (\CreatePolicyResponse' {policy} -> policy) (\s@CreatePolicyResponse' {} a -> s {policy = a} :: CreatePolicyResponse)++-- | The response's http status code.+createPolicyResponse_httpStatus :: Lens.Lens' CreatePolicyResponse Prelude.Int+createPolicyResponse_httpStatus = Lens.lens (\CreatePolicyResponse' {httpStatus} -> httpStatus) (\s@CreatePolicyResponse' {} a -> s {httpStatus = a} :: CreatePolicyResponse)++instance Prelude.NFData CreatePolicyResponse where+ rnf CreatePolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/CreatePolicyVersion.hs view
@@ -0,0 +1,312 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreatePolicyVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new version of the specified managed policy. To update a+-- managed policy, you create a new policy version. A managed policy can+-- have up to five versions. If the policy has five versions, you must+-- delete an existing version using DeletePolicyVersion before you create a+-- new version.+--+-- Optionally, you can set the new version as the policy\'s default+-- version. The default version is the version that is in effect for the+-- IAM users, groups, and roles to which the policy is attached.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreatePolicyVersion+ ( -- * Creating a Request+ CreatePolicyVersion (..),+ newCreatePolicyVersion,++ -- * Request Lenses+ createPolicyVersion_setAsDefault,+ createPolicyVersion_policyArn,+ createPolicyVersion_policyDocument,++ -- * Destructuring the Response+ CreatePolicyVersionResponse (..),+ newCreatePolicyVersionResponse,++ -- * Response Lenses+ createPolicyVersionResponse_policyVersion,+ createPolicyVersionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreatePolicyVersion' smart constructor.+data CreatePolicyVersion = CreatePolicyVersion'+ { -- | Specifies whether to set this version as the policy\'s default version.+ --+ -- When this parameter is @true@, the new policy version becomes the+ -- operative version. That is, it becomes the version that is in effect for+ -- the IAM users, groups, and roles that the policy is attached to.+ --+ -- For more information about managed policy versions, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+ -- in the /IAM User Guide/.+ setAsDefault :: Prelude.Maybe Prelude.Bool,+ -- | The Amazon Resource Name (ARN) of the IAM policy to which you want to+ -- add a new version.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text,+ -- | The JSON policy document that you want to use as the content for this+ -- new version of the policy.+ --+ -- You must provide policies in JSON format in IAM. However, for+ -- CloudFormation templates formatted in YAML, you can provide the policy+ -- in JSON or YAML format. CloudFormation always converts a YAML policy to+ -- JSON format before submitting it to IAM.+ --+ -- The maximum length of the policy document that you can pass in this+ -- operation, including whitespace, is listed below. To view the maximum+ -- character counts of a managed policy with no whitespaces, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePolicyVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'setAsDefault', 'createPolicyVersion_setAsDefault' - Specifies whether to set this version as the policy\'s default version.+--+-- When this parameter is @true@, the new policy version becomes the+-- operative version. That is, it becomes the version that is in effect for+-- the IAM users, groups, and roles that the policy is attached to.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+--+-- 'policyArn', 'createPolicyVersion_policyArn' - The Amazon Resource Name (ARN) of the IAM policy to which you want to+-- add a new version.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'policyDocument', 'createPolicyVersion_policyDocument' - The JSON policy document that you want to use as the content for this+-- new version of the policy.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newCreatePolicyVersion ::+ -- | 'policyArn'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ CreatePolicyVersion+newCreatePolicyVersion pPolicyArn_ pPolicyDocument_ =+ CreatePolicyVersion'+ { setAsDefault =+ Prelude.Nothing,+ policyArn = pPolicyArn_,+ policyDocument = pPolicyDocument_+ }++-- | Specifies whether to set this version as the policy\'s default version.+--+-- When this parameter is @true@, the new policy version becomes the+-- operative version. That is, it becomes the version that is in effect for+-- the IAM users, groups, and roles that the policy is attached to.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+createPolicyVersion_setAsDefault :: Lens.Lens' CreatePolicyVersion (Prelude.Maybe Prelude.Bool)+createPolicyVersion_setAsDefault = Lens.lens (\CreatePolicyVersion' {setAsDefault} -> setAsDefault) (\s@CreatePolicyVersion' {} a -> s {setAsDefault = a} :: CreatePolicyVersion)++-- | The Amazon Resource Name (ARN) of the IAM policy to which you want to+-- add a new version.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+createPolicyVersion_policyArn :: Lens.Lens' CreatePolicyVersion Prelude.Text+createPolicyVersion_policyArn = Lens.lens (\CreatePolicyVersion' {policyArn} -> policyArn) (\s@CreatePolicyVersion' {} a -> s {policyArn = a} :: CreatePolicyVersion)++-- | The JSON policy document that you want to use as the content for this+-- new version of the policy.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+createPolicyVersion_policyDocument :: Lens.Lens' CreatePolicyVersion Prelude.Text+createPolicyVersion_policyDocument = Lens.lens (\CreatePolicyVersion' {policyDocument} -> policyDocument) (\s@CreatePolicyVersion' {} a -> s {policyDocument = a} :: CreatePolicyVersion)++instance Core.AWSRequest CreatePolicyVersion where+ type+ AWSResponse CreatePolicyVersion =+ CreatePolicyVersionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreatePolicyVersionResult"+ ( \s h x ->+ CreatePolicyVersionResponse'+ Prelude.<$> (x Data..@? "PolicyVersion")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreatePolicyVersion where+ hashWithSalt _salt CreatePolicyVersion' {..} =+ _salt+ `Prelude.hashWithSalt` setAsDefault+ `Prelude.hashWithSalt` policyArn+ `Prelude.hashWithSalt` policyDocument++instance Prelude.NFData CreatePolicyVersion where+ rnf CreatePolicyVersion' {..} =+ Prelude.rnf setAsDefault+ `Prelude.seq` Prelude.rnf policyArn+ `Prelude.seq` Prelude.rnf policyDocument++instance Data.ToHeaders CreatePolicyVersion where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreatePolicyVersion where+ toPath = Prelude.const "/"++instance Data.ToQuery CreatePolicyVersion where+ toQuery CreatePolicyVersion' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreatePolicyVersion" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SetAsDefault" Data.=: setAsDefault,+ "PolicyArn" Data.=: policyArn,+ "PolicyDocument" Data.=: policyDocument+ ]++-- | Contains the response to a successful CreatePolicyVersion request.+--+-- /See:/ 'newCreatePolicyVersionResponse' smart constructor.+data CreatePolicyVersionResponse = CreatePolicyVersionResponse'+ { -- | A structure containing details about the new policy version.+ policyVersion :: Prelude.Maybe PolicyVersion,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePolicyVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyVersion', 'createPolicyVersionResponse_policyVersion' - A structure containing details about the new policy version.+--+-- 'httpStatus', 'createPolicyVersionResponse_httpStatus' - The response's http status code.+newCreatePolicyVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreatePolicyVersionResponse+newCreatePolicyVersionResponse pHttpStatus_ =+ CreatePolicyVersionResponse'+ { policyVersion =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure containing details about the new policy version.+createPolicyVersionResponse_policyVersion :: Lens.Lens' CreatePolicyVersionResponse (Prelude.Maybe PolicyVersion)+createPolicyVersionResponse_policyVersion = Lens.lens (\CreatePolicyVersionResponse' {policyVersion} -> policyVersion) (\s@CreatePolicyVersionResponse' {} a -> s {policyVersion = a} :: CreatePolicyVersionResponse)++-- | The response's http status code.+createPolicyVersionResponse_httpStatus :: Lens.Lens' CreatePolicyVersionResponse Prelude.Int+createPolicyVersionResponse_httpStatus = Lens.lens (\CreatePolicyVersionResponse' {httpStatus} -> httpStatus) (\s@CreatePolicyVersionResponse' {} a -> s {httpStatus = a} :: CreatePolicyVersionResponse)++instance Prelude.NFData CreatePolicyVersionResponse where+ rnf CreatePolicyVersionResponse' {..} =+ Prelude.rnf policyVersion+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/CreateRole.hs view
@@ -0,0 +1,438 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new role for your Amazon Web Services account. For more+-- information about roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html IAM roles>.+-- For information about quotas for role names and the number of roles you+-- can create, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreateRole+ ( -- * Creating a Request+ CreateRole (..),+ newCreateRole,++ -- * Request Lenses+ createRole_description,+ createRole_maxSessionDuration,+ createRole_path,+ createRole_permissionsBoundary,+ createRole_tags,+ createRole_roleName,+ createRole_assumeRolePolicyDocument,++ -- * Destructuring the Response+ CreateRoleResponse (..),+ newCreateRoleResponse,++ -- * Response Lenses+ createRoleResponse_httpStatus,+ createRoleResponse_role,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateRole' smart constructor.+data CreateRole = CreateRole'+ { -- | A description of the role.+ description :: Prelude.Maybe Prelude.Text,+ -- | The maximum session duration (in seconds) that you want to set for the+ -- specified role. If you do not specify a value for this setting, the+ -- default value of one hour is applied. This setting can have a value from+ -- 1 hour to 12 hours.+ --+ -- Anyone who assumes the role from the CLI or API can use the+ -- @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter+ -- to request a longer session. The @MaxSessionDuration@ setting determines+ -- the maximum duration that can be requested using the @DurationSeconds@+ -- parameter. If users don\'t specify a value for the @DurationSeconds@+ -- parameter, their security credentials are valid for one hour by default.+ -- This applies when you use the @AssumeRole*@ API operations or the+ -- @assume-role*@ CLI operations but does not apply when you use those+ -- operations to create a console URL. For more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM roles>+ -- in the /IAM User Guide/.+ maxSessionDuration :: Prelude.Maybe Prelude.Natural,+ -- | The path to the role. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+ -- in the /IAM User Guide/.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/).+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ path :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the policy that is used to set the permissions boundary for+ -- the role.+ permissionsBoundary :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that you want to attach to the new role. Each tag+ -- consists of a key name and an associated value. For more information+ -- about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ --+ -- If any one of the tags is invalid or if you exceed the allowed maximum+ -- number of tags, then the entire request fails and the resource is not+ -- created.+ tags :: Prelude.Maybe [Tag],+ -- | The name of the role to create.+ --+ -- IAM user, group, role, and policy names must be unique within the+ -- account. Names are not distinguished by case. For example, you cannot+ -- create resources named both \"MyResource\" and \"myresource\".+ roleName :: Prelude.Text,+ -- | The trust relationship policy document that grants an entity permission+ -- to assume the role.+ --+ -- In IAM, you must provide a JSON policy that has been converted to a+ -- string. However, for CloudFormation templates formatted in YAML, you can+ -- provide the policy in JSON or YAML format. CloudFormation always+ -- converts a YAML policy to JSON format before submitting it to IAM.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ --+ -- Upon success, the response includes the same trust policy in JSON+ -- format.+ assumeRolePolicyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'createRole_description' - A description of the role.+--+-- 'maxSessionDuration', 'createRole_maxSessionDuration' - The maximum session duration (in seconds) that you want to set for the+-- specified role. If you do not specify a value for this setting, the+-- default value of one hour is applied. This setting can have a value from+-- 1 hour to 12 hours.+--+-- Anyone who assumes the role from the CLI or API can use the+-- @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter+-- to request a longer session. The @MaxSessionDuration@ setting determines+-- the maximum duration that can be requested using the @DurationSeconds@+-- parameter. If users don\'t specify a value for the @DurationSeconds@+-- parameter, their security credentials are valid for one hour by default.+-- This applies when you use the @AssumeRole*@ API operations or the+-- @assume-role*@ CLI operations but does not apply when you use those+-- operations to create a console URL. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM roles>+-- in the /IAM User Guide/.+--+-- 'path', 'createRole_path' - The path to the role. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'permissionsBoundary', 'createRole_permissionsBoundary' - The ARN of the policy that is used to set the permissions boundary for+-- the role.+--+-- 'tags', 'createRole_tags' - A list of tags that you want to attach to the new role. Each tag+-- consists of a key name and an associated value. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+--+-- 'roleName', 'createRole_roleName' - The name of the role to create.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+--+-- 'assumeRolePolicyDocument', 'createRole_assumeRolePolicyDocument' - The trust relationship policy document that grants an entity permission+-- to assume the role.+--+-- In IAM, you must provide a JSON policy that has been converted to a+-- string. However, for CloudFormation templates formatted in YAML, you can+-- provide the policy in JSON or YAML format. CloudFormation always+-- converts a YAML policy to JSON format before submitting it to IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- Upon success, the response includes the same trust policy in JSON+-- format.+newCreateRole ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'assumeRolePolicyDocument'+ Prelude.Text ->+ CreateRole+newCreateRole pRoleName_ pAssumeRolePolicyDocument_ =+ CreateRole'+ { description = Prelude.Nothing,+ maxSessionDuration = Prelude.Nothing,+ path = Prelude.Nothing,+ permissionsBoundary = Prelude.Nothing,+ tags = Prelude.Nothing,+ roleName = pRoleName_,+ assumeRolePolicyDocument =+ pAssumeRolePolicyDocument_+ }++-- | A description of the role.+createRole_description :: Lens.Lens' CreateRole (Prelude.Maybe Prelude.Text)+createRole_description = Lens.lens (\CreateRole' {description} -> description) (\s@CreateRole' {} a -> s {description = a} :: CreateRole)++-- | The maximum session duration (in seconds) that you want to set for the+-- specified role. If you do not specify a value for this setting, the+-- default value of one hour is applied. This setting can have a value from+-- 1 hour to 12 hours.+--+-- Anyone who assumes the role from the CLI or API can use the+-- @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter+-- to request a longer session. The @MaxSessionDuration@ setting determines+-- the maximum duration that can be requested using the @DurationSeconds@+-- parameter. If users don\'t specify a value for the @DurationSeconds@+-- parameter, their security credentials are valid for one hour by default.+-- This applies when you use the @AssumeRole*@ API operations or the+-- @assume-role*@ CLI operations but does not apply when you use those+-- operations to create a console URL. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM roles>+-- in the /IAM User Guide/.+createRole_maxSessionDuration :: Lens.Lens' CreateRole (Prelude.Maybe Prelude.Natural)+createRole_maxSessionDuration = Lens.lens (\CreateRole' {maxSessionDuration} -> maxSessionDuration) (\s@CreateRole' {} a -> s {maxSessionDuration = a} :: CreateRole)++-- | The path to the role. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+createRole_path :: Lens.Lens' CreateRole (Prelude.Maybe Prelude.Text)+createRole_path = Lens.lens (\CreateRole' {path} -> path) (\s@CreateRole' {} a -> s {path = a} :: CreateRole)++-- | The ARN of the policy that is used to set the permissions boundary for+-- the role.+createRole_permissionsBoundary :: Lens.Lens' CreateRole (Prelude.Maybe Prelude.Text)+createRole_permissionsBoundary = Lens.lens (\CreateRole' {permissionsBoundary} -> permissionsBoundary) (\s@CreateRole' {} a -> s {permissionsBoundary = a} :: CreateRole)++-- | A list of tags that you want to attach to the new role. Each tag+-- consists of a key name and an associated value. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+createRole_tags :: Lens.Lens' CreateRole (Prelude.Maybe [Tag])+createRole_tags = Lens.lens (\CreateRole' {tags} -> tags) (\s@CreateRole' {} a -> s {tags = a} :: CreateRole) Prelude.. Lens.mapping Lens.coerced++-- | The name of the role to create.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+createRole_roleName :: Lens.Lens' CreateRole Prelude.Text+createRole_roleName = Lens.lens (\CreateRole' {roleName} -> roleName) (\s@CreateRole' {} a -> s {roleName = a} :: CreateRole)++-- | The trust relationship policy document that grants an entity permission+-- to assume the role.+--+-- In IAM, you must provide a JSON policy that has been converted to a+-- string. However, for CloudFormation templates formatted in YAML, you can+-- provide the policy in JSON or YAML format. CloudFormation always+-- converts a YAML policy to JSON format before submitting it to IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- Upon success, the response includes the same trust policy in JSON+-- format.+createRole_assumeRolePolicyDocument :: Lens.Lens' CreateRole Prelude.Text+createRole_assumeRolePolicyDocument = Lens.lens (\CreateRole' {assumeRolePolicyDocument} -> assumeRolePolicyDocument) (\s@CreateRole' {} a -> s {assumeRolePolicyDocument = a} :: CreateRole)++instance Core.AWSRequest CreateRole where+ type AWSResponse CreateRole = CreateRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateRoleResult"+ ( \s h x ->+ CreateRoleResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "Role")+ )++instance Prelude.Hashable CreateRole where+ hashWithSalt _salt CreateRole' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` maxSessionDuration+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` permissionsBoundary+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` assumeRolePolicyDocument++instance Prelude.NFData CreateRole where+ rnf CreateRole' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf maxSessionDuration+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf permissionsBoundary+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf assumeRolePolicyDocument++instance Data.ToHeaders CreateRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateRole where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateRole where+ toQuery CreateRole' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateRole" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Description" Data.=: description,+ "MaxSessionDuration" Data.=: maxSessionDuration,+ "Path" Data.=: path,+ "PermissionsBoundary" Data.=: permissionsBoundary,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> tags),+ "RoleName" Data.=: roleName,+ "AssumeRolePolicyDocument"+ Data.=: assumeRolePolicyDocument+ ]++-- | Contains the response to a successful CreateRole request.+--+-- /See:/ 'newCreateRoleResponse' smart constructor.+data CreateRoleResponse = CreateRoleResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing details about the new role.+ role' :: Role+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createRoleResponse_httpStatus' - The response's http status code.+--+-- 'role'', 'createRoleResponse_role' - A structure containing details about the new role.+newCreateRoleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'role''+ Role ->+ CreateRoleResponse+newCreateRoleResponse pHttpStatus_ pRole_ =+ CreateRoleResponse'+ { httpStatus = pHttpStatus_,+ role' = pRole_+ }++-- | The response's http status code.+createRoleResponse_httpStatus :: Lens.Lens' CreateRoleResponse Prelude.Int+createRoleResponse_httpStatus = Lens.lens (\CreateRoleResponse' {httpStatus} -> httpStatus) (\s@CreateRoleResponse' {} a -> s {httpStatus = a} :: CreateRoleResponse)++-- | A structure containing details about the new role.+createRoleResponse_role :: Lens.Lens' CreateRoleResponse Role+createRoleResponse_role = Lens.lens (\CreateRoleResponse' {role'} -> role') (\s@CreateRoleResponse' {} a -> s {role' = a} :: CreateRoleResponse)++instance Prelude.NFData CreateRoleResponse where+ rnf CreateRoleResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf role'
+ gen/Amazonka/IAM/CreateSAMLProvider.hs view
@@ -0,0 +1,311 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateSAMLProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an IAM resource that describes an identity provider (IdP) that+-- supports SAML 2.0.+--+-- The SAML provider resource that you create with this operation can be+-- used as a principal in an IAM role\'s trust policy. Such a policy can+-- enable federated users who sign in using the SAML IdP to assume the+-- role. You can create an IAM role that supports Web-based single sign-on+-- (SSO) to the Amazon Web Services Management Console or one that supports+-- API access to Amazon Web Services.+--+-- When you create the SAML provider resource, you upload a SAML metadata+-- document that you get from your IdP. That document includes the+-- issuer\'s name, expiration information, and keys that can be used to+-- validate the SAML authentication response (assertions) that the IdP+-- sends. You must generate the metadata document using the identity+-- management software that is used as your organization\'s IdP.+--+-- This operation requires+-- <https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4>.+--+-- For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-saml.html Enabling SAML 2.0 federated users to access the Amazon Web Services Management Console>+-- and+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based federation>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreateSAMLProvider+ ( -- * Creating a Request+ CreateSAMLProvider (..),+ newCreateSAMLProvider,++ -- * Request Lenses+ createSAMLProvider_tags,+ createSAMLProvider_sAMLMetadataDocument,+ createSAMLProvider_name,++ -- * Destructuring the Response+ CreateSAMLProviderResponse (..),+ newCreateSAMLProviderResponse,++ -- * Response Lenses+ createSAMLProviderResponse_sAMLProviderArn,+ createSAMLProviderResponse_tags,+ createSAMLProviderResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateSAMLProvider' smart constructor.+data CreateSAMLProvider = CreateSAMLProvider'+ { -- | A list of tags that you want to attach to the new IAM SAML provider.+ -- Each tag consists of a key name and an associated value. For more+ -- information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ --+ -- If any one of the tags is invalid or if you exceed the allowed maximum+ -- number of tags, then the entire request fails and the resource is not+ -- created.+ tags :: Prelude.Maybe [Tag],+ -- | An XML document generated by an identity provider (IdP) that supports+ -- SAML 2.0. The document includes the issuer\'s name, expiration+ -- information, and keys that can be used to validate the SAML+ -- authentication response (assertions) that are received from the IdP. You+ -- must generate the metadata document using the identity management+ -- software that is used as your organization\'s IdP.+ --+ -- For more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based federation>+ -- in the /IAM User Guide/+ sAMLMetadataDocument :: Prelude.Text,+ -- | The name of the provider to create.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSAMLProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'createSAMLProvider_tags' - A list of tags that you want to attach to the new IAM SAML provider.+-- Each tag consists of a key name and an associated value. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+--+-- 'sAMLMetadataDocument', 'createSAMLProvider_sAMLMetadataDocument' - An XML document generated by an identity provider (IdP) that supports+-- SAML 2.0. The document includes the issuer\'s name, expiration+-- information, and keys that can be used to validate the SAML+-- authentication response (assertions) that are received from the IdP. You+-- must generate the metadata document using the identity management+-- software that is used as your organization\'s IdP.+--+-- For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based federation>+-- in the /IAM User Guide/+--+-- 'name', 'createSAMLProvider_name' - The name of the provider to create.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newCreateSAMLProvider ::+ -- | 'sAMLMetadataDocument'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ CreateSAMLProvider+newCreateSAMLProvider pSAMLMetadataDocument_ pName_ =+ CreateSAMLProvider'+ { tags = Prelude.Nothing,+ sAMLMetadataDocument = pSAMLMetadataDocument_,+ name = pName_+ }++-- | A list of tags that you want to attach to the new IAM SAML provider.+-- Each tag consists of a key name and an associated value. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+createSAMLProvider_tags :: Lens.Lens' CreateSAMLProvider (Prelude.Maybe [Tag])+createSAMLProvider_tags = Lens.lens (\CreateSAMLProvider' {tags} -> tags) (\s@CreateSAMLProvider' {} a -> s {tags = a} :: CreateSAMLProvider) Prelude.. Lens.mapping Lens.coerced++-- | An XML document generated by an identity provider (IdP) that supports+-- SAML 2.0. The document includes the issuer\'s name, expiration+-- information, and keys that can be used to validate the SAML+-- authentication response (assertions) that are received from the IdP. You+-- must generate the metadata document using the identity management+-- software that is used as your organization\'s IdP.+--+-- For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based federation>+-- in the /IAM User Guide/+createSAMLProvider_sAMLMetadataDocument :: Lens.Lens' CreateSAMLProvider Prelude.Text+createSAMLProvider_sAMLMetadataDocument = Lens.lens (\CreateSAMLProvider' {sAMLMetadataDocument} -> sAMLMetadataDocument) (\s@CreateSAMLProvider' {} a -> s {sAMLMetadataDocument = a} :: CreateSAMLProvider)++-- | The name of the provider to create.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+createSAMLProvider_name :: Lens.Lens' CreateSAMLProvider Prelude.Text+createSAMLProvider_name = Lens.lens (\CreateSAMLProvider' {name} -> name) (\s@CreateSAMLProvider' {} a -> s {name = a} :: CreateSAMLProvider)++instance Core.AWSRequest CreateSAMLProvider where+ type+ AWSResponse CreateSAMLProvider =+ CreateSAMLProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateSAMLProviderResult"+ ( \s h x ->+ CreateSAMLProviderResponse'+ Prelude.<$> (x Data..@? "SAMLProviderArn")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateSAMLProvider where+ hashWithSalt _salt CreateSAMLProvider' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` sAMLMetadataDocument+ `Prelude.hashWithSalt` name++instance Prelude.NFData CreateSAMLProvider where+ rnf CreateSAMLProvider' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf sAMLMetadataDocument+ `Prelude.seq` Prelude.rnf name++instance Data.ToHeaders CreateSAMLProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateSAMLProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateSAMLProvider where+ toQuery CreateSAMLProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateSAMLProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> tags),+ "SAMLMetadataDocument" Data.=: sAMLMetadataDocument,+ "Name" Data.=: name+ ]++-- | Contains the response to a successful CreateSAMLProvider request.+--+-- /See:/ 'newCreateSAMLProviderResponse' smart constructor.+data CreateSAMLProviderResponse = CreateSAMLProviderResponse'+ { -- | The Amazon Resource Name (ARN) of the new SAML provider resource in IAM.+ sAMLProviderArn :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that are attached to the new IAM SAML provider. The+ -- returned list of tags is sorted by tag key. For more information about+ -- tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSAMLProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sAMLProviderArn', 'createSAMLProviderResponse_sAMLProviderArn' - The Amazon Resource Name (ARN) of the new SAML provider resource in IAM.+--+-- 'tags', 'createSAMLProviderResponse_tags' - A list of tags that are attached to the new IAM SAML provider. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'httpStatus', 'createSAMLProviderResponse_httpStatus' - The response's http status code.+newCreateSAMLProviderResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateSAMLProviderResponse+newCreateSAMLProviderResponse pHttpStatus_ =+ CreateSAMLProviderResponse'+ { sAMLProviderArn =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the new SAML provider resource in IAM.+createSAMLProviderResponse_sAMLProviderArn :: Lens.Lens' CreateSAMLProviderResponse (Prelude.Maybe Prelude.Text)+createSAMLProviderResponse_sAMLProviderArn = Lens.lens (\CreateSAMLProviderResponse' {sAMLProviderArn} -> sAMLProviderArn) (\s@CreateSAMLProviderResponse' {} a -> s {sAMLProviderArn = a} :: CreateSAMLProviderResponse)++-- | A list of tags that are attached to the new IAM SAML provider. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+createSAMLProviderResponse_tags :: Lens.Lens' CreateSAMLProviderResponse (Prelude.Maybe [Tag])+createSAMLProviderResponse_tags = Lens.lens (\CreateSAMLProviderResponse' {tags} -> tags) (\s@CreateSAMLProviderResponse' {} a -> s {tags = a} :: CreateSAMLProviderResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createSAMLProviderResponse_httpStatus :: Lens.Lens' CreateSAMLProviderResponse Prelude.Int+createSAMLProviderResponse_httpStatus = Lens.lens (\CreateSAMLProviderResponse' {httpStatus} -> httpStatus) (\s@CreateSAMLProviderResponse' {} a -> s {httpStatus = a} :: CreateSAMLProviderResponse)++instance Prelude.NFData CreateSAMLProviderResponse where+ rnf CreateSAMLProviderResponse' {..} =+ Prelude.rnf sAMLProviderArn+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/CreateServiceLinkedRole.hs view
@@ -0,0 +1,253 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateServiceLinkedRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an IAM role that is linked to a specific Amazon Web Services+-- service. The service controls the attached policies and when the role+-- can be deleted. This helps ensure that the service is not broken by an+-- unexpectedly changed or deleted role, which could put your Amazon Web+-- Services resources into an unknown state. Allowing the service to+-- control the role helps improve service stability and proper cleanup when+-- a service and its role are no longer needed. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html Using service-linked roles>+-- in the /IAM User Guide/.+--+-- To attach a policy to this service-linked role, you must make the+-- request using the Amazon Web Services service that depends on this role.+module Amazonka.IAM.CreateServiceLinkedRole+ ( -- * Creating a Request+ CreateServiceLinkedRole (..),+ newCreateServiceLinkedRole,++ -- * Request Lenses+ createServiceLinkedRole_customSuffix,+ createServiceLinkedRole_description,+ createServiceLinkedRole_aWSServiceName,++ -- * Destructuring the Response+ CreateServiceLinkedRoleResponse (..),+ newCreateServiceLinkedRoleResponse,++ -- * Response Lenses+ createServiceLinkedRoleResponse_role,+ createServiceLinkedRoleResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateServiceLinkedRole' smart constructor.+data CreateServiceLinkedRole = CreateServiceLinkedRole'+ { -- | A string that you provide, which is combined with the service-provided+ -- prefix to form the complete role name. If you make multiple requests for+ -- the same service, then you must supply a different @CustomSuffix@ for+ -- each request. Otherwise the request fails with a duplicate role name+ -- error. For example, you could add @-1@ or @-debug@ to the suffix.+ --+ -- Some services do not support the @CustomSuffix@ parameter. If you+ -- provide an optional suffix and the operation fails, try the operation+ -- again without the suffix.+ customSuffix :: Prelude.Maybe Prelude.Text,+ -- | The description of the role.+ description :: Prelude.Maybe Prelude.Text,+ -- | The service principal for the Amazon Web Services service to which this+ -- role is attached. You use a string similar to a URL but without the+ -- http:\/\/ in front. For example: @elasticbeanstalk.amazonaws.com@.+ --+ -- Service principals are unique and case-sensitive. To find the exact+ -- service principal for your service-linked role, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html Amazon Web Services services that work with IAM>+ -- in the /IAM User Guide/. Look for the services that have __Yes__ in the+ -- __Service-Linked Role__ column. Choose the __Yes__ link to view the+ -- service-linked role documentation for that service.+ aWSServiceName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateServiceLinkedRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'customSuffix', 'createServiceLinkedRole_customSuffix' - A string that you provide, which is combined with the service-provided+-- prefix to form the complete role name. If you make multiple requests for+-- the same service, then you must supply a different @CustomSuffix@ for+-- each request. Otherwise the request fails with a duplicate role name+-- error. For example, you could add @-1@ or @-debug@ to the suffix.+--+-- Some services do not support the @CustomSuffix@ parameter. If you+-- provide an optional suffix and the operation fails, try the operation+-- again without the suffix.+--+-- 'description', 'createServiceLinkedRole_description' - The description of the role.+--+-- 'aWSServiceName', 'createServiceLinkedRole_aWSServiceName' - The service principal for the Amazon Web Services service to which this+-- role is attached. You use a string similar to a URL but without the+-- http:\/\/ in front. For example: @elasticbeanstalk.amazonaws.com@.+--+-- Service principals are unique and case-sensitive. To find the exact+-- service principal for your service-linked role, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html Amazon Web Services services that work with IAM>+-- in the /IAM User Guide/. Look for the services that have __Yes__ in the+-- __Service-Linked Role__ column. Choose the __Yes__ link to view the+-- service-linked role documentation for that service.+newCreateServiceLinkedRole ::+ -- | 'aWSServiceName'+ Prelude.Text ->+ CreateServiceLinkedRole+newCreateServiceLinkedRole pAWSServiceName_ =+ CreateServiceLinkedRole'+ { customSuffix =+ Prelude.Nothing,+ description = Prelude.Nothing,+ aWSServiceName = pAWSServiceName_+ }++-- | A string that you provide, which is combined with the service-provided+-- prefix to form the complete role name. If you make multiple requests for+-- the same service, then you must supply a different @CustomSuffix@ for+-- each request. Otherwise the request fails with a duplicate role name+-- error. For example, you could add @-1@ or @-debug@ to the suffix.+--+-- Some services do not support the @CustomSuffix@ parameter. If you+-- provide an optional suffix and the operation fails, try the operation+-- again without the suffix.+createServiceLinkedRole_customSuffix :: Lens.Lens' CreateServiceLinkedRole (Prelude.Maybe Prelude.Text)+createServiceLinkedRole_customSuffix = Lens.lens (\CreateServiceLinkedRole' {customSuffix} -> customSuffix) (\s@CreateServiceLinkedRole' {} a -> s {customSuffix = a} :: CreateServiceLinkedRole)++-- | The description of the role.+createServiceLinkedRole_description :: Lens.Lens' CreateServiceLinkedRole (Prelude.Maybe Prelude.Text)+createServiceLinkedRole_description = Lens.lens (\CreateServiceLinkedRole' {description} -> description) (\s@CreateServiceLinkedRole' {} a -> s {description = a} :: CreateServiceLinkedRole)++-- | The service principal for the Amazon Web Services service to which this+-- role is attached. You use a string similar to a URL but without the+-- http:\/\/ in front. For example: @elasticbeanstalk.amazonaws.com@.+--+-- Service principals are unique and case-sensitive. To find the exact+-- service principal for your service-linked role, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html Amazon Web Services services that work with IAM>+-- in the /IAM User Guide/. Look for the services that have __Yes__ in the+-- __Service-Linked Role__ column. Choose the __Yes__ link to view the+-- service-linked role documentation for that service.+createServiceLinkedRole_aWSServiceName :: Lens.Lens' CreateServiceLinkedRole Prelude.Text+createServiceLinkedRole_aWSServiceName = Lens.lens (\CreateServiceLinkedRole' {aWSServiceName} -> aWSServiceName) (\s@CreateServiceLinkedRole' {} a -> s {aWSServiceName = a} :: CreateServiceLinkedRole)++instance Core.AWSRequest CreateServiceLinkedRole where+ type+ AWSResponse CreateServiceLinkedRole =+ CreateServiceLinkedRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateServiceLinkedRoleResult"+ ( \s h x ->+ CreateServiceLinkedRoleResponse'+ Prelude.<$> (x Data..@? "Role")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateServiceLinkedRole where+ hashWithSalt _salt CreateServiceLinkedRole' {..} =+ _salt+ `Prelude.hashWithSalt` customSuffix+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` aWSServiceName++instance Prelude.NFData CreateServiceLinkedRole where+ rnf CreateServiceLinkedRole' {..} =+ Prelude.rnf customSuffix+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf aWSServiceName++instance Data.ToHeaders CreateServiceLinkedRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateServiceLinkedRole where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateServiceLinkedRole where+ toQuery CreateServiceLinkedRole' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateServiceLinkedRole" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "CustomSuffix" Data.=: customSuffix,+ "Description" Data.=: description,+ "AWSServiceName" Data.=: aWSServiceName+ ]++-- | /See:/ 'newCreateServiceLinkedRoleResponse' smart constructor.+data CreateServiceLinkedRoleResponse = CreateServiceLinkedRoleResponse'+ { -- | A Role object that contains details about the newly created role.+ role' :: Prelude.Maybe Role,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateServiceLinkedRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'role'', 'createServiceLinkedRoleResponse_role' - A Role object that contains details about the newly created role.+--+-- 'httpStatus', 'createServiceLinkedRoleResponse_httpStatus' - The response's http status code.+newCreateServiceLinkedRoleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateServiceLinkedRoleResponse+newCreateServiceLinkedRoleResponse pHttpStatus_ =+ CreateServiceLinkedRoleResponse'+ { role' =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A Role object that contains details about the newly created role.+createServiceLinkedRoleResponse_role :: Lens.Lens' CreateServiceLinkedRoleResponse (Prelude.Maybe Role)+createServiceLinkedRoleResponse_role = Lens.lens (\CreateServiceLinkedRoleResponse' {role'} -> role') (\s@CreateServiceLinkedRoleResponse' {} a -> s {role' = a} :: CreateServiceLinkedRoleResponse)++-- | The response's http status code.+createServiceLinkedRoleResponse_httpStatus :: Lens.Lens' CreateServiceLinkedRoleResponse Prelude.Int+createServiceLinkedRoleResponse_httpStatus = Lens.lens (\CreateServiceLinkedRoleResponse' {httpStatus} -> httpStatus) (\s@CreateServiceLinkedRoleResponse' {} a -> s {httpStatus = a} :: CreateServiceLinkedRoleResponse)++instance+ Prelude.NFData+ CreateServiceLinkedRoleResponse+ where+ rnf CreateServiceLinkedRoleResponse' {..} =+ Prelude.rnf role'+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/CreateServiceSpecificCredential.hs view
@@ -0,0 +1,260 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateServiceSpecificCredential+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Generates a set of credentials consisting of a user name and password+-- that can be used to access the service specified in the request. These+-- credentials are generated by IAM, and can be used only for the specified+-- service.+--+-- You can have a maximum of two sets of service-specific credentials for+-- each supported service per user.+--+-- You can create service-specific credentials for CodeCommit and Amazon+-- Keyspaces (for Apache Cassandra).+--+-- You can reset the password to a new service-generated value by calling+-- ResetServiceSpecificCredential.+--+-- For more information about service-specific credentials, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html Using IAM with CodeCommit: Git credentials, SSH keys, and Amazon Web Services access keys>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreateServiceSpecificCredential+ ( -- * Creating a Request+ CreateServiceSpecificCredential (..),+ newCreateServiceSpecificCredential,++ -- * Request Lenses+ createServiceSpecificCredential_userName,+ createServiceSpecificCredential_serviceName,++ -- * Destructuring the Response+ CreateServiceSpecificCredentialResponse (..),+ newCreateServiceSpecificCredentialResponse,++ -- * Response Lenses+ createServiceSpecificCredentialResponse_serviceSpecificCredential,+ createServiceSpecificCredentialResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateServiceSpecificCredential' smart constructor.+data CreateServiceSpecificCredential = CreateServiceSpecificCredential'+ { -- | The name of the IAM user that is to be associated with the credentials.+ -- The new service-specific credentials have the same permissions as the+ -- associated user except that they can be used only to access the+ -- specified service.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The name of the Amazon Web Services service that is to be associated+ -- with the credentials. The service you specify here is the only service+ -- that can be accessed using these credentials.+ serviceName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateServiceSpecificCredential' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'createServiceSpecificCredential_userName' - The name of the IAM user that is to be associated with the credentials.+-- The new service-specific credentials have the same permissions as the+-- associated user except that they can be used only to access the+-- specified service.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'serviceName', 'createServiceSpecificCredential_serviceName' - The name of the Amazon Web Services service that is to be associated+-- with the credentials. The service you specify here is the only service+-- that can be accessed using these credentials.+newCreateServiceSpecificCredential ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'serviceName'+ Prelude.Text ->+ CreateServiceSpecificCredential+newCreateServiceSpecificCredential+ pUserName_+ pServiceName_ =+ CreateServiceSpecificCredential'+ { userName =+ pUserName_,+ serviceName = pServiceName_+ }++-- | The name of the IAM user that is to be associated with the credentials.+-- The new service-specific credentials have the same permissions as the+-- associated user except that they can be used only to access the+-- specified service.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+createServiceSpecificCredential_userName :: Lens.Lens' CreateServiceSpecificCredential Prelude.Text+createServiceSpecificCredential_userName = Lens.lens (\CreateServiceSpecificCredential' {userName} -> userName) (\s@CreateServiceSpecificCredential' {} a -> s {userName = a} :: CreateServiceSpecificCredential)++-- | The name of the Amazon Web Services service that is to be associated+-- with the credentials. The service you specify here is the only service+-- that can be accessed using these credentials.+createServiceSpecificCredential_serviceName :: Lens.Lens' CreateServiceSpecificCredential Prelude.Text+createServiceSpecificCredential_serviceName = Lens.lens (\CreateServiceSpecificCredential' {serviceName} -> serviceName) (\s@CreateServiceSpecificCredential' {} a -> s {serviceName = a} :: CreateServiceSpecificCredential)++instance+ Core.AWSRequest+ CreateServiceSpecificCredential+ where+ type+ AWSResponse CreateServiceSpecificCredential =+ CreateServiceSpecificCredentialResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateServiceSpecificCredentialResult"+ ( \s h x ->+ CreateServiceSpecificCredentialResponse'+ Prelude.<$> (x Data..@? "ServiceSpecificCredential")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ CreateServiceSpecificCredential+ where+ hashWithSalt+ _salt+ CreateServiceSpecificCredential' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` serviceName++instance+ Prelude.NFData+ CreateServiceSpecificCredential+ where+ rnf CreateServiceSpecificCredential' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf serviceName++instance+ Data.ToHeaders+ CreateServiceSpecificCredential+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateServiceSpecificCredential where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateServiceSpecificCredential where+ toQuery CreateServiceSpecificCredential' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "CreateServiceSpecificCredential" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "ServiceName" Data.=: serviceName+ ]++-- | /See:/ 'newCreateServiceSpecificCredentialResponse' smart constructor.+data CreateServiceSpecificCredentialResponse = CreateServiceSpecificCredentialResponse'+ { -- | A structure that contains information about the newly created+ -- service-specific credential.+ --+ -- This is the only time that the password for this credential set is+ -- available. It cannot be recovered later. Instead, you must reset the+ -- password with ResetServiceSpecificCredential.+ serviceSpecificCredential :: Prelude.Maybe ServiceSpecificCredential,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateServiceSpecificCredentialResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serviceSpecificCredential', 'createServiceSpecificCredentialResponse_serviceSpecificCredential' - A structure that contains information about the newly created+-- service-specific credential.+--+-- This is the only time that the password for this credential set is+-- available. It cannot be recovered later. Instead, you must reset the+-- password with ResetServiceSpecificCredential.+--+-- 'httpStatus', 'createServiceSpecificCredentialResponse_httpStatus' - The response's http status code.+newCreateServiceSpecificCredentialResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateServiceSpecificCredentialResponse+newCreateServiceSpecificCredentialResponse+ pHttpStatus_ =+ CreateServiceSpecificCredentialResponse'+ { serviceSpecificCredential =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure that contains information about the newly created+-- service-specific credential.+--+-- This is the only time that the password for this credential set is+-- available. It cannot be recovered later. Instead, you must reset the+-- password with ResetServiceSpecificCredential.+createServiceSpecificCredentialResponse_serviceSpecificCredential :: Lens.Lens' CreateServiceSpecificCredentialResponse (Prelude.Maybe ServiceSpecificCredential)+createServiceSpecificCredentialResponse_serviceSpecificCredential = Lens.lens (\CreateServiceSpecificCredentialResponse' {serviceSpecificCredential} -> serviceSpecificCredential) (\s@CreateServiceSpecificCredentialResponse' {} a -> s {serviceSpecificCredential = a} :: CreateServiceSpecificCredentialResponse)++-- | The response's http status code.+createServiceSpecificCredentialResponse_httpStatus :: Lens.Lens' CreateServiceSpecificCredentialResponse Prelude.Int+createServiceSpecificCredentialResponse_httpStatus = Lens.lens (\CreateServiceSpecificCredentialResponse' {httpStatus} -> httpStatus) (\s@CreateServiceSpecificCredentialResponse' {} a -> s {httpStatus = a} :: CreateServiceSpecificCredentialResponse)++instance+ Prelude.NFData+ CreateServiceSpecificCredentialResponse+ where+ rnf CreateServiceSpecificCredentialResponse' {..} =+ Prelude.rnf serviceSpecificCredential+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/CreateUser.hs view
@@ -0,0 +1,284 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new IAM user for your Amazon Web Services account.+--+-- For information about quotas for the number of IAM users you can create,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+module Amazonka.IAM.CreateUser+ ( -- * Creating a Request+ CreateUser (..),+ newCreateUser,++ -- * Request Lenses+ createUser_path,+ createUser_permissionsBoundary,+ createUser_tags,+ createUser_userName,++ -- * Destructuring the Response+ CreateUserResponse (..),+ newCreateUserResponse,++ -- * Response Lenses+ createUserResponse_user,+ createUserResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateUser' smart constructor.+data CreateUser = CreateUser'+ { -- | The path for the user name. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/).+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ path :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the policy that is used to set the permissions boundary for+ -- the user.+ permissionsBoundary :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that you want to attach to the new user. Each tag+ -- consists of a key name and an associated value. For more information+ -- about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ --+ -- If any one of the tags is invalid or if you exceed the allowed maximum+ -- number of tags, then the entire request fails and the resource is not+ -- created.+ tags :: Prelude.Maybe [Tag],+ -- | The name of the user to create.+ --+ -- IAM user, group, role, and policy names must be unique within the+ -- account. Names are not distinguished by case. For example, you cannot+ -- create resources named both \"MyResource\" and \"myresource\".+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'path', 'createUser_path' - The path for the user name. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'permissionsBoundary', 'createUser_permissionsBoundary' - The ARN of the policy that is used to set the permissions boundary for+-- the user.+--+-- 'tags', 'createUser_tags' - A list of tags that you want to attach to the new user. Each tag+-- consists of a key name and an associated value. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+--+-- 'userName', 'createUser_userName' - The name of the user to create.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+newCreateUser ::+ -- | 'userName'+ Prelude.Text ->+ CreateUser+newCreateUser pUserName_ =+ CreateUser'+ { path = Prelude.Nothing,+ permissionsBoundary = Prelude.Nothing,+ tags = Prelude.Nothing,+ userName = pUserName_+ }++-- | The path for the user name. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+createUser_path :: Lens.Lens' CreateUser (Prelude.Maybe Prelude.Text)+createUser_path = Lens.lens (\CreateUser' {path} -> path) (\s@CreateUser' {} a -> s {path = a} :: CreateUser)++-- | The ARN of the policy that is used to set the permissions boundary for+-- the user.+createUser_permissionsBoundary :: Lens.Lens' CreateUser (Prelude.Maybe Prelude.Text)+createUser_permissionsBoundary = Lens.lens (\CreateUser' {permissionsBoundary} -> permissionsBoundary) (\s@CreateUser' {} a -> s {permissionsBoundary = a} :: CreateUser)++-- | A list of tags that you want to attach to the new user. Each tag+-- consists of a key name and an associated value. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+createUser_tags :: Lens.Lens' CreateUser (Prelude.Maybe [Tag])+createUser_tags = Lens.lens (\CreateUser' {tags} -> tags) (\s@CreateUser' {} a -> s {tags = a} :: CreateUser) Prelude.. Lens.mapping Lens.coerced++-- | The name of the user to create.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+createUser_userName :: Lens.Lens' CreateUser Prelude.Text+createUser_userName = Lens.lens (\CreateUser' {userName} -> userName) (\s@CreateUser' {} a -> s {userName = a} :: CreateUser)++instance Core.AWSRequest CreateUser where+ type AWSResponse CreateUser = CreateUserResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateUserResult"+ ( \s h x ->+ CreateUserResponse'+ Prelude.<$> (x Data..@? "User")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateUser where+ hashWithSalt _salt CreateUser' {..} =+ _salt+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` permissionsBoundary+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` userName++instance Prelude.NFData CreateUser where+ rnf CreateUser' {..} =+ Prelude.rnf path+ `Prelude.seq` Prelude.rnf permissionsBoundary+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders CreateUser where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateUser where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateUser where+ toQuery CreateUser' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateUser" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Path" Data.=: path,+ "PermissionsBoundary" Data.=: permissionsBoundary,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> tags),+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful CreateUser request.+--+-- /See:/ 'newCreateUserResponse' smart constructor.+data CreateUserResponse = CreateUserResponse'+ { -- | A structure with details about the new IAM user.+ user :: Prelude.Maybe User,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'user', 'createUserResponse_user' - A structure with details about the new IAM user.+--+-- 'httpStatus', 'createUserResponse_httpStatus' - The response's http status code.+newCreateUserResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateUserResponse+newCreateUserResponse pHttpStatus_ =+ CreateUserResponse'+ { user = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure with details about the new IAM user.+createUserResponse_user :: Lens.Lens' CreateUserResponse (Prelude.Maybe User)+createUserResponse_user = Lens.lens (\CreateUserResponse' {user} -> user) (\s@CreateUserResponse' {} a -> s {user = a} :: CreateUserResponse)++-- | The response's http status code.+createUserResponse_httpStatus :: Lens.Lens' CreateUserResponse Prelude.Int+createUserResponse_httpStatus = Lens.lens (\CreateUserResponse' {httpStatus} -> httpStatus) (\s@CreateUserResponse' {} a -> s {httpStatus = a} :: CreateUserResponse)++instance Prelude.NFData CreateUserResponse where+ rnf CreateUserResponse' {..} =+ Prelude.rnf user+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/CreateVirtualMFADevice.hs view
@@ -0,0 +1,299 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.CreateVirtualMFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a new virtual MFA device for the Amazon Web Services account.+-- After creating the virtual MFA, use EnableMFADevice to attach the MFA+-- device to an IAM user. For more information about creating and working+-- with virtual MFA devices, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html Using a virtual MFA device>+-- in the /IAM User Guide/.+--+-- For information about the maximum number of MFA devices you can create,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+--+-- The seed information contained in the QR code and the Base32 string+-- should be treated like any other secret access information. In other+-- words, protect the seed information as you would your Amazon Web+-- Services access keys or your passwords. After you provision your virtual+-- device, you should ensure that the information is destroyed following+-- secure procedures.+module Amazonka.IAM.CreateVirtualMFADevice+ ( -- * Creating a Request+ CreateVirtualMFADevice (..),+ newCreateVirtualMFADevice,++ -- * Request Lenses+ createVirtualMFADevice_path,+ createVirtualMFADevice_tags,+ createVirtualMFADevice_virtualMFADeviceName,++ -- * Destructuring the Response+ CreateVirtualMFADeviceResponse (..),+ newCreateVirtualMFADeviceResponse,++ -- * Response Lenses+ createVirtualMFADeviceResponse_httpStatus,+ createVirtualMFADeviceResponse_virtualMFADevice,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateVirtualMFADevice' smart constructor.+data CreateVirtualMFADevice = CreateVirtualMFADevice'+ { -- | The path for the virtual MFA device. For more information about paths,+ -- see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/).+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ path :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that you want to attach to the new IAM virtual MFA+ -- device. Each tag consists of a key name and an associated value. For+ -- more information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ --+ -- If any one of the tags is invalid or if you exceed the allowed maximum+ -- number of tags, then the entire request fails and the resource is not+ -- created.+ tags :: Prelude.Maybe [Tag],+ -- | The name of the virtual MFA device. Use with path to uniquely identify a+ -- virtual MFA device.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ virtualMFADeviceName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateVirtualMFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'path', 'createVirtualMFADevice_path' - The path for the virtual MFA device. For more information about paths,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'tags', 'createVirtualMFADevice_tags' - A list of tags that you want to attach to the new IAM virtual MFA+-- device. Each tag consists of a key name and an associated value. For+-- more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+--+-- 'virtualMFADeviceName', 'createVirtualMFADevice_virtualMFADeviceName' - The name of the virtual MFA device. Use with path to uniquely identify a+-- virtual MFA device.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newCreateVirtualMFADevice ::+ -- | 'virtualMFADeviceName'+ Prelude.Text ->+ CreateVirtualMFADevice+newCreateVirtualMFADevice pVirtualMFADeviceName_ =+ CreateVirtualMFADevice'+ { path = Prelude.Nothing,+ tags = Prelude.Nothing,+ virtualMFADeviceName = pVirtualMFADeviceName_+ }++-- | The path for the virtual MFA device. For more information about paths,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/).+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+createVirtualMFADevice_path :: Lens.Lens' CreateVirtualMFADevice (Prelude.Maybe Prelude.Text)+createVirtualMFADevice_path = Lens.lens (\CreateVirtualMFADevice' {path} -> path) (\s@CreateVirtualMFADevice' {} a -> s {path = a} :: CreateVirtualMFADevice)++-- | A list of tags that you want to attach to the new IAM virtual MFA+-- device. Each tag consists of a key name and an associated value. For+-- more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+createVirtualMFADevice_tags :: Lens.Lens' CreateVirtualMFADevice (Prelude.Maybe [Tag])+createVirtualMFADevice_tags = Lens.lens (\CreateVirtualMFADevice' {tags} -> tags) (\s@CreateVirtualMFADevice' {} a -> s {tags = a} :: CreateVirtualMFADevice) Prelude.. Lens.mapping Lens.coerced++-- | The name of the virtual MFA device. Use with path to uniquely identify a+-- virtual MFA device.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+createVirtualMFADevice_virtualMFADeviceName :: Lens.Lens' CreateVirtualMFADevice Prelude.Text+createVirtualMFADevice_virtualMFADeviceName = Lens.lens (\CreateVirtualMFADevice' {virtualMFADeviceName} -> virtualMFADeviceName) (\s@CreateVirtualMFADevice' {} a -> s {virtualMFADeviceName = a} :: CreateVirtualMFADevice)++instance Core.AWSRequest CreateVirtualMFADevice where+ type+ AWSResponse CreateVirtualMFADevice =+ CreateVirtualMFADeviceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "CreateVirtualMFADeviceResult"+ ( \s h x ->+ CreateVirtualMFADeviceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "VirtualMFADevice")+ )++instance Prelude.Hashable CreateVirtualMFADevice where+ hashWithSalt _salt CreateVirtualMFADevice' {..} =+ _salt+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` virtualMFADeviceName++instance Prelude.NFData CreateVirtualMFADevice where+ rnf CreateVirtualMFADevice' {..} =+ Prelude.rnf path+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf virtualMFADeviceName++instance Data.ToHeaders CreateVirtualMFADevice where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath CreateVirtualMFADevice where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateVirtualMFADevice where+ toQuery CreateVirtualMFADevice' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("CreateVirtualMFADevice" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Path" Data.=: path,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> tags),+ "VirtualMFADeviceName" Data.=: virtualMFADeviceName+ ]++-- | Contains the response to a successful CreateVirtualMFADevice request.+--+-- /See:/ 'newCreateVirtualMFADeviceResponse' smart constructor.+data CreateVirtualMFADeviceResponse = CreateVirtualMFADeviceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing details about the new virtual MFA device.+ virtualMFADevice :: VirtualMFADevice+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateVirtualMFADeviceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createVirtualMFADeviceResponse_httpStatus' - The response's http status code.+--+-- 'virtualMFADevice', 'createVirtualMFADeviceResponse_virtualMFADevice' - A structure containing details about the new virtual MFA device.+newCreateVirtualMFADeviceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'virtualMFADevice'+ VirtualMFADevice ->+ CreateVirtualMFADeviceResponse+newCreateVirtualMFADeviceResponse+ pHttpStatus_+ pVirtualMFADevice_ =+ CreateVirtualMFADeviceResponse'+ { httpStatus =+ pHttpStatus_,+ virtualMFADevice = pVirtualMFADevice_+ }++-- | The response's http status code.+createVirtualMFADeviceResponse_httpStatus :: Lens.Lens' CreateVirtualMFADeviceResponse Prelude.Int+createVirtualMFADeviceResponse_httpStatus = Lens.lens (\CreateVirtualMFADeviceResponse' {httpStatus} -> httpStatus) (\s@CreateVirtualMFADeviceResponse' {} a -> s {httpStatus = a} :: CreateVirtualMFADeviceResponse)++-- | A structure containing details about the new virtual MFA device.+createVirtualMFADeviceResponse_virtualMFADevice :: Lens.Lens' CreateVirtualMFADeviceResponse VirtualMFADevice+createVirtualMFADeviceResponse_virtualMFADevice = Lens.lens (\CreateVirtualMFADeviceResponse' {virtualMFADevice} -> virtualMFADevice) (\s@CreateVirtualMFADeviceResponse' {} a -> s {virtualMFADevice = a} :: CreateVirtualMFADeviceResponse)++instance+ Prelude.NFData+ CreateVirtualMFADeviceResponse+ where+ rnf CreateVirtualMFADeviceResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf virtualMFADevice
+ gen/Amazonka/IAM/DeactivateMFADevice.hs view
@@ -0,0 +1,179 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeactivateMFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deactivates the specified MFA device and removes it from association+-- with the user name for which it was originally enabled.+--+-- For more information about creating and working with virtual MFA+-- devices, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html Enabling a virtual multi-factor authentication (MFA) device>+-- in the /IAM User Guide/.+module Amazonka.IAM.DeactivateMFADevice+ ( -- * Creating a Request+ DeactivateMFADevice (..),+ newDeactivateMFADevice,++ -- * Request Lenses+ deactivateMFADevice_userName,+ deactivateMFADevice_serialNumber,++ -- * Destructuring the Response+ DeactivateMFADeviceResponse (..),+ newDeactivateMFADeviceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeactivateMFADevice' smart constructor.+data DeactivateMFADevice = DeactivateMFADevice'+ { -- | The name of the user whose MFA device you want to deactivate.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The serial number that uniquely identifies the MFA device. For virtual+ -- MFA devices, the serial number is the device ARN.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: =,.\@:\/-+ serialNumber :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeactivateMFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deactivateMFADevice_userName' - The name of the user whose MFA device you want to deactivate.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'serialNumber', 'deactivateMFADevice_serialNumber' - The serial number that uniquely identifies the MFA device. For virtual+-- MFA devices, the serial number is the device ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: =,.\@:\/-+newDeactivateMFADevice ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'serialNumber'+ Prelude.Text ->+ DeactivateMFADevice+newDeactivateMFADevice pUserName_ pSerialNumber_ =+ DeactivateMFADevice'+ { userName = pUserName_,+ serialNumber = pSerialNumber_+ }++-- | The name of the user whose MFA device you want to deactivate.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deactivateMFADevice_userName :: Lens.Lens' DeactivateMFADevice Prelude.Text+deactivateMFADevice_userName = Lens.lens (\DeactivateMFADevice' {userName} -> userName) (\s@DeactivateMFADevice' {} a -> s {userName = a} :: DeactivateMFADevice)++-- | The serial number that uniquely identifies the MFA device. For virtual+-- MFA devices, the serial number is the device ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: =,.\@:\/-+deactivateMFADevice_serialNumber :: Lens.Lens' DeactivateMFADevice Prelude.Text+deactivateMFADevice_serialNumber = Lens.lens (\DeactivateMFADevice' {serialNumber} -> serialNumber) (\s@DeactivateMFADevice' {} a -> s {serialNumber = a} :: DeactivateMFADevice)++instance Core.AWSRequest DeactivateMFADevice where+ type+ AWSResponse DeactivateMFADevice =+ DeactivateMFADeviceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeactivateMFADeviceResponse'++instance Prelude.Hashable DeactivateMFADevice where+ hashWithSalt _salt DeactivateMFADevice' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` serialNumber++instance Prelude.NFData DeactivateMFADevice where+ rnf DeactivateMFADevice' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf serialNumber++instance Data.ToHeaders DeactivateMFADevice where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeactivateMFADevice where+ toPath = Prelude.const "/"++instance Data.ToQuery DeactivateMFADevice where+ toQuery DeactivateMFADevice' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeactivateMFADevice" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "SerialNumber" Data.=: serialNumber+ ]++-- | /See:/ 'newDeactivateMFADeviceResponse' smart constructor.+data DeactivateMFADeviceResponse = DeactivateMFADeviceResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeactivateMFADeviceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeactivateMFADeviceResponse ::+ DeactivateMFADeviceResponse+newDeactivateMFADeviceResponse =+ DeactivateMFADeviceResponse'++instance Prelude.NFData DeactivateMFADeviceResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteAccessKey.hs view
@@ -0,0 +1,174 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteAccessKey+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the access key pair associated with the specified IAM user.+--+-- If you do not specify a user name, IAM determines the user name+-- implicitly based on the Amazon Web Services access key ID signing the+-- request. This operation works for access keys under the Amazon Web+-- Services account. Consequently, you can use this operation to manage+-- Amazon Web Services account root user credentials even if the Amazon Web+-- Services account has no associated users.+module Amazonka.IAM.DeleteAccessKey+ ( -- * Creating a Request+ DeleteAccessKey (..),+ newDeleteAccessKey,++ -- * Request Lenses+ deleteAccessKey_userName,+ deleteAccessKey_accessKeyId,++ -- * Destructuring the Response+ DeleteAccessKeyResponse (..),+ newDeleteAccessKeyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteAccessKey' smart constructor.+data DeleteAccessKey = DeleteAccessKey'+ { -- | The name of the user whose access key pair you want to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text,+ -- | The access key ID for the access key ID and secret access key you want+ -- to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ accessKeyId :: Core.AccessKey+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAccessKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deleteAccessKey_userName' - The name of the user whose access key pair you want to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'accessKeyId', 'deleteAccessKey_accessKeyId' - The access key ID for the access key ID and secret access key you want+-- to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+newDeleteAccessKey ::+ -- | 'accessKeyId'+ Core.AccessKey ->+ DeleteAccessKey+newDeleteAccessKey pAccessKeyId_ =+ DeleteAccessKey'+ { userName = Prelude.Nothing,+ accessKeyId = pAccessKeyId_+ }++-- | The name of the user whose access key pair you want to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteAccessKey_userName :: Lens.Lens' DeleteAccessKey (Prelude.Maybe Prelude.Text)+deleteAccessKey_userName = Lens.lens (\DeleteAccessKey' {userName} -> userName) (\s@DeleteAccessKey' {} a -> s {userName = a} :: DeleteAccessKey)++-- | The access key ID for the access key ID and secret access key you want+-- to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+deleteAccessKey_accessKeyId :: Lens.Lens' DeleteAccessKey Core.AccessKey+deleteAccessKey_accessKeyId = Lens.lens (\DeleteAccessKey' {accessKeyId} -> accessKeyId) (\s@DeleteAccessKey' {} a -> s {accessKeyId = a} :: DeleteAccessKey)++instance Core.AWSRequest DeleteAccessKey where+ type+ AWSResponse DeleteAccessKey =+ DeleteAccessKeyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteAccessKeyResponse'++instance Prelude.Hashable DeleteAccessKey where+ hashWithSalt _salt DeleteAccessKey' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` accessKeyId++instance Prelude.NFData DeleteAccessKey where+ rnf DeleteAccessKey' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf accessKeyId++instance Data.ToHeaders DeleteAccessKey where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteAccessKey where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteAccessKey where+ toQuery DeleteAccessKey' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteAccessKey" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "AccessKeyId" Data.=: accessKeyId+ ]++-- | /See:/ 'newDeleteAccessKeyResponse' smart constructor.+data DeleteAccessKeyResponse = DeleteAccessKeyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAccessKeyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteAccessKeyResponse ::+ DeleteAccessKeyResponse+newDeleteAccessKeyResponse = DeleteAccessKeyResponse'++instance Prelude.NFData DeleteAccessKeyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteAccountAlias.hs view
@@ -0,0 +1,140 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteAccountAlias+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified Amazon Web Services account alias. For information+-- about using an Amazon Web Services account alias, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html Using an alias for your Amazon Web Services account ID>+-- in the /IAM User Guide/.+module Amazonka.IAM.DeleteAccountAlias+ ( -- * Creating a Request+ DeleteAccountAlias (..),+ newDeleteAccountAlias,++ -- * Request Lenses+ deleteAccountAlias_accountAlias,++ -- * Destructuring the Response+ DeleteAccountAliasResponse (..),+ newDeleteAccountAliasResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteAccountAlias' smart constructor.+data DeleteAccountAlias = DeleteAccountAlias'+ { -- | The name of the account alias to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of lowercase letters, digits, and dashes. You cannot start or+ -- finish with a dash, nor can you have two dashes in a row.+ accountAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAccountAlias' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAlias', 'deleteAccountAlias_accountAlias' - The name of the account alias to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of lowercase letters, digits, and dashes. You cannot start or+-- finish with a dash, nor can you have two dashes in a row.+newDeleteAccountAlias ::+ -- | 'accountAlias'+ Prelude.Text ->+ DeleteAccountAlias+newDeleteAccountAlias pAccountAlias_ =+ DeleteAccountAlias' {accountAlias = pAccountAlias_}++-- | The name of the account alias to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of lowercase letters, digits, and dashes. You cannot start or+-- finish with a dash, nor can you have two dashes in a row.+deleteAccountAlias_accountAlias :: Lens.Lens' DeleteAccountAlias Prelude.Text+deleteAccountAlias_accountAlias = Lens.lens (\DeleteAccountAlias' {accountAlias} -> accountAlias) (\s@DeleteAccountAlias' {} a -> s {accountAlias = a} :: DeleteAccountAlias)++instance Core.AWSRequest DeleteAccountAlias where+ type+ AWSResponse DeleteAccountAlias =+ DeleteAccountAliasResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteAccountAliasResponse'++instance Prelude.Hashable DeleteAccountAlias where+ hashWithSalt _salt DeleteAccountAlias' {..} =+ _salt `Prelude.hashWithSalt` accountAlias++instance Prelude.NFData DeleteAccountAlias where+ rnf DeleteAccountAlias' {..} =+ Prelude.rnf accountAlias++instance Data.ToHeaders DeleteAccountAlias where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteAccountAlias where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteAccountAlias where+ toQuery DeleteAccountAlias' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteAccountAlias" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "AccountAlias" Data.=: accountAlias+ ]++-- | /See:/ 'newDeleteAccountAliasResponse' smart constructor.+data DeleteAccountAliasResponse = DeleteAccountAliasResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAccountAliasResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteAccountAliasResponse ::+ DeleteAccountAliasResponse+newDeleteAccountAliasResponse =+ DeleteAccountAliasResponse'++instance Prelude.NFData DeleteAccountAliasResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteAccountPasswordPolicy.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteAccountPasswordPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the password policy for the Amazon Web Services account. There+-- are no parameters.+module Amazonka.IAM.DeleteAccountPasswordPolicy+ ( -- * Creating a Request+ DeleteAccountPasswordPolicy (..),+ newDeleteAccountPasswordPolicy,++ -- * Destructuring the Response+ DeleteAccountPasswordPolicyResponse (..),+ newDeleteAccountPasswordPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteAccountPasswordPolicy' smart constructor.+data DeleteAccountPasswordPolicy = DeleteAccountPasswordPolicy'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAccountPasswordPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteAccountPasswordPolicy ::+ DeleteAccountPasswordPolicy+newDeleteAccountPasswordPolicy =+ DeleteAccountPasswordPolicy'++instance Core.AWSRequest DeleteAccountPasswordPolicy where+ type+ AWSResponse DeleteAccountPasswordPolicy =+ DeleteAccountPasswordPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteAccountPasswordPolicyResponse'++instance Prelude.Hashable DeleteAccountPasswordPolicy where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData DeleteAccountPasswordPolicy where+ rnf _ = ()++instance Data.ToHeaders DeleteAccountPasswordPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteAccountPasswordPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteAccountPasswordPolicy where+ toQuery =+ Prelude.const+ ( Prelude.mconcat+ [ "Action"+ Data.=: ( "DeleteAccountPasswordPolicy" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString)+ ]+ )++-- | /See:/ 'newDeleteAccountPasswordPolicyResponse' smart constructor.+data DeleteAccountPasswordPolicyResponse = DeleteAccountPasswordPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAccountPasswordPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteAccountPasswordPolicyResponse ::+ DeleteAccountPasswordPolicyResponse+newDeleteAccountPasswordPolicyResponse =+ DeleteAccountPasswordPolicyResponse'++instance+ Prelude.NFData+ DeleteAccountPasswordPolicyResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteGroup.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified IAM group. The group must not contain any users or+-- have any attached policies.+module Amazonka.IAM.DeleteGroup+ ( -- * Creating a Request+ DeleteGroup (..),+ newDeleteGroup,++ -- * Request Lenses+ deleteGroup_groupName,++ -- * Destructuring the Response+ DeleteGroupResponse (..),+ newDeleteGroupResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteGroup' smart constructor.+data DeleteGroup = DeleteGroup'+ { -- | The name of the IAM group to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupName', 'deleteGroup_groupName' - The name of the IAM group to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteGroup ::+ -- | 'groupName'+ Prelude.Text ->+ DeleteGroup+newDeleteGroup pGroupName_ =+ DeleteGroup' {groupName = pGroupName_}++-- | The name of the IAM group to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteGroup_groupName :: Lens.Lens' DeleteGroup Prelude.Text+deleteGroup_groupName = Lens.lens (\DeleteGroup' {groupName} -> groupName) (\s@DeleteGroup' {} a -> s {groupName = a} :: DeleteGroup)++instance Core.AWSRequest DeleteGroup where+ type AWSResponse DeleteGroup = DeleteGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull DeleteGroupResponse'++instance Prelude.Hashable DeleteGroup where+ hashWithSalt _salt DeleteGroup' {..} =+ _salt `Prelude.hashWithSalt` groupName++instance Prelude.NFData DeleteGroup where+ rnf DeleteGroup' {..} = Prelude.rnf groupName++instance Data.ToHeaders DeleteGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteGroup where+ toQuery DeleteGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GroupName" Data.=: groupName+ ]++-- | /See:/ 'newDeleteGroupResponse' smart constructor.+data DeleteGroupResponse = DeleteGroupResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteGroupResponse ::+ DeleteGroupResponse+newDeleteGroupResponse = DeleteGroupResponse'++instance Prelude.NFData DeleteGroupResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteGroupPolicy.hs view
@@ -0,0 +1,180 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteGroupPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified inline policy that is embedded in the specified+-- IAM group.+--+-- A group can also have managed policies attached to it. To detach a+-- managed policy from a group, use DetachGroupPolicy. For more information+-- about policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.DeleteGroupPolicy+ ( -- * Creating a Request+ DeleteGroupPolicy (..),+ newDeleteGroupPolicy,++ -- * Request Lenses+ deleteGroupPolicy_groupName,+ deleteGroupPolicy_policyName,++ -- * Destructuring the Response+ DeleteGroupPolicyResponse (..),+ newDeleteGroupPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteGroupPolicy' smart constructor.+data DeleteGroupPolicy = DeleteGroupPolicy'+ { -- | The name (friendly name, not ARN) identifying the group that the policy+ -- is embedded in.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text,+ -- | The name identifying the policy document to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteGroupPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupName', 'deleteGroupPolicy_groupName' - The name (friendly name, not ARN) identifying the group that the policy+-- is embedded in.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyName', 'deleteGroupPolicy_policyName' - The name identifying the policy document to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteGroupPolicy ::+ -- | 'groupName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ DeleteGroupPolicy+newDeleteGroupPolicy pGroupName_ pPolicyName_ =+ DeleteGroupPolicy'+ { groupName = pGroupName_,+ policyName = pPolicyName_+ }++-- | The name (friendly name, not ARN) identifying the group that the policy+-- is embedded in.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteGroupPolicy_groupName :: Lens.Lens' DeleteGroupPolicy Prelude.Text+deleteGroupPolicy_groupName = Lens.lens (\DeleteGroupPolicy' {groupName} -> groupName) (\s@DeleteGroupPolicy' {} a -> s {groupName = a} :: DeleteGroupPolicy)++-- | The name identifying the policy document to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteGroupPolicy_policyName :: Lens.Lens' DeleteGroupPolicy Prelude.Text+deleteGroupPolicy_policyName = Lens.lens (\DeleteGroupPolicy' {policyName} -> policyName) (\s@DeleteGroupPolicy' {} a -> s {policyName = a} :: DeleteGroupPolicy)++instance Core.AWSRequest DeleteGroupPolicy where+ type+ AWSResponse DeleteGroupPolicy =+ DeleteGroupPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteGroupPolicyResponse'++instance Prelude.Hashable DeleteGroupPolicy where+ hashWithSalt _salt DeleteGroupPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` policyName++instance Prelude.NFData DeleteGroupPolicy where+ rnf DeleteGroupPolicy' {..} =+ Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf policyName++instance Data.ToHeaders DeleteGroupPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteGroupPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteGroupPolicy where+ toQuery DeleteGroupPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteGroupPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GroupName" Data.=: groupName,+ "PolicyName" Data.=: policyName+ ]++-- | /See:/ 'newDeleteGroupPolicyResponse' smart constructor.+data DeleteGroupPolicyResponse = DeleteGroupPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteGroupPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteGroupPolicyResponse ::+ DeleteGroupPolicyResponse+newDeleteGroupPolicyResponse =+ DeleteGroupPolicyResponse'++instance Prelude.NFData DeleteGroupPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteInstanceProfile.hs view
@@ -0,0 +1,149 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteInstanceProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified instance profile. The instance profile must not+-- have an associated role.+--+-- Make sure that you do not have any Amazon EC2 instances running with the+-- instance profile you are about to delete. Deleting a role or instance+-- profile that is associated with a running instance will break any+-- applications running on the instance.+--+-- For more information about instance profiles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About instance profiles>.+module Amazonka.IAM.DeleteInstanceProfile+ ( -- * Creating a Request+ DeleteInstanceProfile (..),+ newDeleteInstanceProfile,++ -- * Request Lenses+ deleteInstanceProfile_instanceProfileName,++ -- * Destructuring the Response+ DeleteInstanceProfileResponse (..),+ newDeleteInstanceProfileResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteInstanceProfile' smart constructor.+data DeleteInstanceProfile = DeleteInstanceProfile'+ { -- | The name of the instance profile to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ instanceProfileName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteInstanceProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceProfileName', 'deleteInstanceProfile_instanceProfileName' - The name of the instance profile to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteInstanceProfile ::+ -- | 'instanceProfileName'+ Prelude.Text ->+ DeleteInstanceProfile+newDeleteInstanceProfile pInstanceProfileName_ =+ DeleteInstanceProfile'+ { instanceProfileName =+ pInstanceProfileName_+ }++-- | The name of the instance profile to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteInstanceProfile_instanceProfileName :: Lens.Lens' DeleteInstanceProfile Prelude.Text+deleteInstanceProfile_instanceProfileName = Lens.lens (\DeleteInstanceProfile' {instanceProfileName} -> instanceProfileName) (\s@DeleteInstanceProfile' {} a -> s {instanceProfileName = a} :: DeleteInstanceProfile)++instance Core.AWSRequest DeleteInstanceProfile where+ type+ AWSResponse DeleteInstanceProfile =+ DeleteInstanceProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteInstanceProfileResponse'++instance Prelude.Hashable DeleteInstanceProfile where+ hashWithSalt _salt DeleteInstanceProfile' {..} =+ _salt `Prelude.hashWithSalt` instanceProfileName++instance Prelude.NFData DeleteInstanceProfile where+ rnf DeleteInstanceProfile' {..} =+ Prelude.rnf instanceProfileName++instance Data.ToHeaders DeleteInstanceProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteInstanceProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteInstanceProfile where+ toQuery DeleteInstanceProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteInstanceProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "InstanceProfileName" Data.=: instanceProfileName+ ]++-- | /See:/ 'newDeleteInstanceProfileResponse' smart constructor.+data DeleteInstanceProfileResponse = DeleteInstanceProfileResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteInstanceProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteInstanceProfileResponse ::+ DeleteInstanceProfileResponse+newDeleteInstanceProfileResponse =+ DeleteInstanceProfileResponse'++instance Prelude.NFData DeleteInstanceProfileResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteLoginProfile.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteLoginProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the password for the specified IAM user, For more information,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_admin-change-user.html Managing passwords for IAM users>.+--+-- You can use the CLI, the Amazon Web Services API, or the __Users__ page+-- in the IAM console to delete a password for any IAM user. You can use+-- ChangePassword to update, but not delete, your own password in the __My+-- Security Credentials__ page in the Amazon Web Services Management+-- Console.+--+-- Deleting a user\'s password does not prevent a user from accessing+-- Amazon Web Services through the command line interface or the API. To+-- prevent all user access, you must also either make any access keys+-- inactive or delete them. For more information about making keys inactive+-- or deleting them, see UpdateAccessKey and DeleteAccessKey.+module Amazonka.IAM.DeleteLoginProfile+ ( -- * Creating a Request+ DeleteLoginProfile (..),+ newDeleteLoginProfile,++ -- * Request Lenses+ deleteLoginProfile_userName,++ -- * Destructuring the Response+ DeleteLoginProfileResponse (..),+ newDeleteLoginProfileResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteLoginProfile' smart constructor.+data DeleteLoginProfile = DeleteLoginProfile'+ { -- | The name of the user whose password you want to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteLoginProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deleteLoginProfile_userName' - The name of the user whose password you want to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteLoginProfile ::+ -- | 'userName'+ Prelude.Text ->+ DeleteLoginProfile+newDeleteLoginProfile pUserName_ =+ DeleteLoginProfile' {userName = pUserName_}++-- | The name of the user whose password you want to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteLoginProfile_userName :: Lens.Lens' DeleteLoginProfile Prelude.Text+deleteLoginProfile_userName = Lens.lens (\DeleteLoginProfile' {userName} -> userName) (\s@DeleteLoginProfile' {} a -> s {userName = a} :: DeleteLoginProfile)++instance Core.AWSRequest DeleteLoginProfile where+ type+ AWSResponse DeleteLoginProfile =+ DeleteLoginProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteLoginProfileResponse'++instance Prelude.Hashable DeleteLoginProfile where+ hashWithSalt _salt DeleteLoginProfile' {..} =+ _salt `Prelude.hashWithSalt` userName++instance Prelude.NFData DeleteLoginProfile where+ rnf DeleteLoginProfile' {..} = Prelude.rnf userName++instance Data.ToHeaders DeleteLoginProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteLoginProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteLoginProfile where+ toQuery DeleteLoginProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteLoginProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newDeleteLoginProfileResponse' smart constructor.+data DeleteLoginProfileResponse = DeleteLoginProfileResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteLoginProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteLoginProfileResponse ::+ DeleteLoginProfileResponse+newDeleteLoginProfileResponse =+ DeleteLoginProfileResponse'++instance Prelude.NFData DeleteLoginProfileResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteOpenIDConnectProvider.hs view
@@ -0,0 +1,148 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteOpenIDConnectProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an OpenID Connect identity provider (IdP) resource object in+-- IAM.+--+-- Deleting an IAM OIDC provider resource does not update any roles that+-- reference the provider as a principal in their trust policies. Any+-- attempt to assume a role that references a deleted provider fails.+--+-- This operation is idempotent; it does not fail or return an error if you+-- call the operation for a provider that does not exist.+module Amazonka.IAM.DeleteOpenIDConnectProvider+ ( -- * Creating a Request+ DeleteOpenIDConnectProvider (..),+ newDeleteOpenIDConnectProvider,++ -- * Request Lenses+ deleteOpenIDConnectProvider_openIDConnectProviderArn,++ -- * Destructuring the Response+ DeleteOpenIDConnectProviderResponse (..),+ newDeleteOpenIDConnectProviderResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteOpenIDConnectProvider' smart constructor.+data DeleteOpenIDConnectProvider = DeleteOpenIDConnectProvider'+ { -- | The Amazon Resource Name (ARN) of the IAM OpenID Connect provider+ -- resource object to delete. You can get a list of OpenID Connect provider+ -- resource ARNs by using the ListOpenIDConnectProviders operation.+ openIDConnectProviderArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteOpenIDConnectProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderArn', 'deleteOpenIDConnectProvider_openIDConnectProviderArn' - The Amazon Resource Name (ARN) of the IAM OpenID Connect provider+-- resource object to delete. You can get a list of OpenID Connect provider+-- resource ARNs by using the ListOpenIDConnectProviders operation.+newDeleteOpenIDConnectProvider ::+ -- | 'openIDConnectProviderArn'+ Prelude.Text ->+ DeleteOpenIDConnectProvider+newDeleteOpenIDConnectProvider+ pOpenIDConnectProviderArn_ =+ DeleteOpenIDConnectProvider'+ { openIDConnectProviderArn =+ pOpenIDConnectProviderArn_+ }++-- | The Amazon Resource Name (ARN) of the IAM OpenID Connect provider+-- resource object to delete. You can get a list of OpenID Connect provider+-- resource ARNs by using the ListOpenIDConnectProviders operation.+deleteOpenIDConnectProvider_openIDConnectProviderArn :: Lens.Lens' DeleteOpenIDConnectProvider Prelude.Text+deleteOpenIDConnectProvider_openIDConnectProviderArn = Lens.lens (\DeleteOpenIDConnectProvider' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@DeleteOpenIDConnectProvider' {} a -> s {openIDConnectProviderArn = a} :: DeleteOpenIDConnectProvider)++instance Core.AWSRequest DeleteOpenIDConnectProvider where+ type+ AWSResponse DeleteOpenIDConnectProvider =+ DeleteOpenIDConnectProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteOpenIDConnectProviderResponse'++instance Prelude.Hashable DeleteOpenIDConnectProvider where+ hashWithSalt _salt DeleteOpenIDConnectProvider' {..} =+ _salt+ `Prelude.hashWithSalt` openIDConnectProviderArn++instance Prelude.NFData DeleteOpenIDConnectProvider where+ rnf DeleteOpenIDConnectProvider' {..} =+ Prelude.rnf openIDConnectProviderArn++instance Data.ToHeaders DeleteOpenIDConnectProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteOpenIDConnectProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteOpenIDConnectProvider where+ toQuery DeleteOpenIDConnectProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DeleteOpenIDConnectProvider" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OpenIDConnectProviderArn"+ Data.=: openIDConnectProviderArn+ ]++-- | /See:/ 'newDeleteOpenIDConnectProviderResponse' smart constructor.+data DeleteOpenIDConnectProviderResponse = DeleteOpenIDConnectProviderResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteOpenIDConnectProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteOpenIDConnectProviderResponse ::+ DeleteOpenIDConnectProviderResponse+newDeleteOpenIDConnectProviderResponse =+ DeleteOpenIDConnectProviderResponse'++instance+ Prelude.NFData+ DeleteOpenIDConnectProviderResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/DeletePolicy.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeletePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified managed policy.+--+-- Before you can delete a managed policy, you must first detach the policy+-- from all users, groups, and roles that it is attached to. In addition,+-- you must delete all the policy\'s versions. The following steps describe+-- the process for deleting a managed policy:+--+-- - Detach the policy from all users, groups, and roles that the policy+-- is attached to, using DetachUserPolicy, DetachGroupPolicy, or+-- DetachRolePolicy. To list all the users, groups, and roles that a+-- policy is attached to, use ListEntitiesForPolicy.+--+-- - Delete all versions of the policy using DeletePolicyVersion. To list+-- the policy\'s versions, use ListPolicyVersions. You cannot use+-- DeletePolicyVersion to delete the version that is marked as the+-- default version. You delete the policy\'s default version in the+-- next step of the process.+--+-- - Delete the policy (this automatically deletes the policy\'s default+-- version) using this operation.+--+-- For information about managed policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.DeletePolicy+ ( -- * Creating a Request+ DeletePolicy (..),+ newDeletePolicy,++ -- * Request Lenses+ deletePolicy_policyArn,++ -- * Destructuring the Response+ DeletePolicyResponse (..),+ newDeletePolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeletePolicy' smart constructor.+data DeletePolicy = DeletePolicy'+ { -- | The Amazon Resource Name (ARN) of the IAM policy you want to delete.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyArn', 'deletePolicy_policyArn' - The Amazon Resource Name (ARN) of the IAM policy you want to delete.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newDeletePolicy ::+ -- | 'policyArn'+ Prelude.Text ->+ DeletePolicy+newDeletePolicy pPolicyArn_ =+ DeletePolicy' {policyArn = pPolicyArn_}++-- | The Amazon Resource Name (ARN) of the IAM policy you want to delete.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+deletePolicy_policyArn :: Lens.Lens' DeletePolicy Prelude.Text+deletePolicy_policyArn = Lens.lens (\DeletePolicy' {policyArn} -> policyArn) (\s@DeletePolicy' {} a -> s {policyArn = a} :: DeletePolicy)++instance Core.AWSRequest DeletePolicy where+ type AWSResponse DeletePolicy = DeletePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull DeletePolicyResponse'++instance Prelude.Hashable DeletePolicy where+ hashWithSalt _salt DeletePolicy' {..} =+ _salt `Prelude.hashWithSalt` policyArn++instance Prelude.NFData DeletePolicy where+ rnf DeletePolicy' {..} = Prelude.rnf policyArn++instance Data.ToHeaders DeletePolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeletePolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery DeletePolicy where+ toQuery DeletePolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeletePolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyArn" Data.=: policyArn+ ]++-- | /See:/ 'newDeletePolicyResponse' smart constructor.+data DeletePolicyResponse = DeletePolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeletePolicyResponse ::+ DeletePolicyResponse+newDeletePolicyResponse = DeletePolicyResponse'++instance Prelude.NFData DeletePolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeletePolicyVersion.hs view
@@ -0,0 +1,194 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeletePolicyVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified version from the specified managed policy.+--+-- You cannot delete the default version from a policy using this+-- operation. To delete the default version from a policy, use+-- DeletePolicy. To find out which version of a policy is marked as the+-- default version, use ListPolicyVersions.+--+-- For information about versions for managed policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.DeletePolicyVersion+ ( -- * Creating a Request+ DeletePolicyVersion (..),+ newDeletePolicyVersion,++ -- * Request Lenses+ deletePolicyVersion_policyArn,+ deletePolicyVersion_versionId,++ -- * Destructuring the Response+ DeletePolicyVersionResponse (..),+ newDeletePolicyVersionResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeletePolicyVersion' smart constructor.+data DeletePolicyVersion = DeletePolicyVersion'+ { -- | The Amazon Resource Name (ARN) of the IAM policy from which you want to+ -- delete a version.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text,+ -- | The policy version to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that consists of the lowercase letter \'v\' followed by one or two+ -- digits, and optionally followed by a period \'.\' and a string of+ -- letters and digits.+ --+ -- For more information about managed policy versions, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+ -- in the /IAM User Guide/.+ versionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePolicyVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyArn', 'deletePolicyVersion_policyArn' - The Amazon Resource Name (ARN) of the IAM policy from which you want to+-- delete a version.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'versionId', 'deletePolicyVersion_versionId' - The policy version to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consists of the lowercase letter \'v\' followed by one or two+-- digits, and optionally followed by a period \'.\' and a string of+-- letters and digits.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+newDeletePolicyVersion ::+ -- | 'policyArn'+ Prelude.Text ->+ -- | 'versionId'+ Prelude.Text ->+ DeletePolicyVersion+newDeletePolicyVersion pPolicyArn_ pVersionId_ =+ DeletePolicyVersion'+ { policyArn = pPolicyArn_,+ versionId = pVersionId_+ }++-- | The Amazon Resource Name (ARN) of the IAM policy from which you want to+-- delete a version.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+deletePolicyVersion_policyArn :: Lens.Lens' DeletePolicyVersion Prelude.Text+deletePolicyVersion_policyArn = Lens.lens (\DeletePolicyVersion' {policyArn} -> policyArn) (\s@DeletePolicyVersion' {} a -> s {policyArn = a} :: DeletePolicyVersion)++-- | The policy version to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consists of the lowercase letter \'v\' followed by one or two+-- digits, and optionally followed by a period \'.\' and a string of+-- letters and digits.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+deletePolicyVersion_versionId :: Lens.Lens' DeletePolicyVersion Prelude.Text+deletePolicyVersion_versionId = Lens.lens (\DeletePolicyVersion' {versionId} -> versionId) (\s@DeletePolicyVersion' {} a -> s {versionId = a} :: DeletePolicyVersion)++instance Core.AWSRequest DeletePolicyVersion where+ type+ AWSResponse DeletePolicyVersion =+ DeletePolicyVersionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeletePolicyVersionResponse'++instance Prelude.Hashable DeletePolicyVersion where+ hashWithSalt _salt DeletePolicyVersion' {..} =+ _salt+ `Prelude.hashWithSalt` policyArn+ `Prelude.hashWithSalt` versionId++instance Prelude.NFData DeletePolicyVersion where+ rnf DeletePolicyVersion' {..} =+ Prelude.rnf policyArn+ `Prelude.seq` Prelude.rnf versionId++instance Data.ToHeaders DeletePolicyVersion where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeletePolicyVersion where+ toPath = Prelude.const "/"++instance Data.ToQuery DeletePolicyVersion where+ toQuery DeletePolicyVersion' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeletePolicyVersion" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyArn" Data.=: policyArn,+ "VersionId" Data.=: versionId+ ]++-- | /See:/ 'newDeletePolicyVersionResponse' smart constructor.+data DeletePolicyVersionResponse = DeletePolicyVersionResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePolicyVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeletePolicyVersionResponse ::+ DeletePolicyVersionResponse+newDeletePolicyVersionResponse =+ DeletePolicyVersionResponse'++instance Prelude.NFData DeletePolicyVersionResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteRole.hs view
@@ -0,0 +1,139 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified role. The role must not have any policies+-- attached. For more information about roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with roles>.+--+-- Make sure that you do not have any Amazon EC2 instances running with the+-- role you are about to delete. Deleting a role or instance profile that+-- is associated with a running instance will break any applications+-- running on the instance.+module Amazonka.IAM.DeleteRole+ ( -- * Creating a Request+ DeleteRole (..),+ newDeleteRole,++ -- * Request Lenses+ deleteRole_roleName,++ -- * Destructuring the Response+ DeleteRoleResponse (..),+ newDeleteRoleResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteRole' smart constructor.+data DeleteRole = DeleteRole'+ { -- | The name of the role to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'deleteRole_roleName' - The name of the role to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteRole ::+ -- | 'roleName'+ Prelude.Text ->+ DeleteRole+newDeleteRole pRoleName_ =+ DeleteRole' {roleName = pRoleName_}++-- | The name of the role to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteRole_roleName :: Lens.Lens' DeleteRole Prelude.Text+deleteRole_roleName = Lens.lens (\DeleteRole' {roleName} -> roleName) (\s@DeleteRole' {} a -> s {roleName = a} :: DeleteRole)++instance Core.AWSRequest DeleteRole where+ type AWSResponse DeleteRole = DeleteRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull DeleteRoleResponse'++instance Prelude.Hashable DeleteRole where+ hashWithSalt _salt DeleteRole' {..} =+ _salt `Prelude.hashWithSalt` roleName++instance Prelude.NFData DeleteRole where+ rnf DeleteRole' {..} = Prelude.rnf roleName++instance Data.ToHeaders DeleteRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteRole where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteRole where+ toQuery DeleteRole' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteRole" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName+ ]++-- | /See:/ 'newDeleteRoleResponse' smart constructor.+data DeleteRoleResponse = DeleteRoleResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteRoleResponse ::+ DeleteRoleResponse+newDeleteRoleResponse = DeleteRoleResponse'++instance Prelude.NFData DeleteRoleResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteRolePermissionsBoundary.hs view
@@ -0,0 +1,144 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteRolePermissionsBoundary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the permissions boundary for the specified IAM role.+--+-- Deleting the permissions boundary for a role might increase its+-- permissions. For example, it might allow anyone who assumes the role to+-- perform all the actions granted in its permissions policies.+module Amazonka.IAM.DeleteRolePermissionsBoundary+ ( -- * Creating a Request+ DeleteRolePermissionsBoundary (..),+ newDeleteRolePermissionsBoundary,++ -- * Request Lenses+ deleteRolePermissionsBoundary_roleName,++ -- * Destructuring the Response+ DeleteRolePermissionsBoundaryResponse (..),+ newDeleteRolePermissionsBoundaryResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteRolePermissionsBoundary' smart constructor.+data DeleteRolePermissionsBoundary = DeleteRolePermissionsBoundary'+ { -- | The name (friendly name, not ARN) of the IAM role from which you want to+ -- remove the permissions boundary.+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRolePermissionsBoundary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'deleteRolePermissionsBoundary_roleName' - The name (friendly name, not ARN) of the IAM role from which you want to+-- remove the permissions boundary.+newDeleteRolePermissionsBoundary ::+ -- | 'roleName'+ Prelude.Text ->+ DeleteRolePermissionsBoundary+newDeleteRolePermissionsBoundary pRoleName_ =+ DeleteRolePermissionsBoundary'+ { roleName =+ pRoleName_+ }++-- | The name (friendly name, not ARN) of the IAM role from which you want to+-- remove the permissions boundary.+deleteRolePermissionsBoundary_roleName :: Lens.Lens' DeleteRolePermissionsBoundary Prelude.Text+deleteRolePermissionsBoundary_roleName = Lens.lens (\DeleteRolePermissionsBoundary' {roleName} -> roleName) (\s@DeleteRolePermissionsBoundary' {} a -> s {roleName = a} :: DeleteRolePermissionsBoundary)++instance+ Core.AWSRequest+ DeleteRolePermissionsBoundary+ where+ type+ AWSResponse DeleteRolePermissionsBoundary =+ DeleteRolePermissionsBoundaryResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteRolePermissionsBoundaryResponse'++instance+ Prelude.Hashable+ DeleteRolePermissionsBoundary+ where+ hashWithSalt _salt DeleteRolePermissionsBoundary' {..} =+ _salt `Prelude.hashWithSalt` roleName++instance Prelude.NFData DeleteRolePermissionsBoundary where+ rnf DeleteRolePermissionsBoundary' {..} =+ Prelude.rnf roleName++instance Data.ToHeaders DeleteRolePermissionsBoundary where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteRolePermissionsBoundary where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteRolePermissionsBoundary where+ toQuery DeleteRolePermissionsBoundary' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DeleteRolePermissionsBoundary" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName+ ]++-- | /See:/ 'newDeleteRolePermissionsBoundaryResponse' smart constructor.+data DeleteRolePermissionsBoundaryResponse = DeleteRolePermissionsBoundaryResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRolePermissionsBoundaryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteRolePermissionsBoundaryResponse ::+ DeleteRolePermissionsBoundaryResponse+newDeleteRolePermissionsBoundaryResponse =+ DeleteRolePermissionsBoundaryResponse'++instance+ Prelude.NFData+ DeleteRolePermissionsBoundaryResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteRolePolicy.hs view
@@ -0,0 +1,180 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteRolePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified inline policy that is embedded in the specified+-- IAM role.+--+-- A role can also have managed policies attached to it. To detach a+-- managed policy from a role, use DetachRolePolicy. For more information+-- about policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.DeleteRolePolicy+ ( -- * Creating a Request+ DeleteRolePolicy (..),+ newDeleteRolePolicy,++ -- * Request Lenses+ deleteRolePolicy_roleName,+ deleteRolePolicy_policyName,++ -- * Destructuring the Response+ DeleteRolePolicyResponse (..),+ newDeleteRolePolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteRolePolicy' smart constructor.+data DeleteRolePolicy = DeleteRolePolicy'+ { -- | The name (friendly name, not ARN) identifying the role that the policy+ -- is embedded in.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text,+ -- | The name of the inline policy to delete from the specified IAM role.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRolePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'deleteRolePolicy_roleName' - The name (friendly name, not ARN) identifying the role that the policy+-- is embedded in.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyName', 'deleteRolePolicy_policyName' - The name of the inline policy to delete from the specified IAM role.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteRolePolicy ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ DeleteRolePolicy+newDeleteRolePolicy pRoleName_ pPolicyName_ =+ DeleteRolePolicy'+ { roleName = pRoleName_,+ policyName = pPolicyName_+ }++-- | The name (friendly name, not ARN) identifying the role that the policy+-- is embedded in.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteRolePolicy_roleName :: Lens.Lens' DeleteRolePolicy Prelude.Text+deleteRolePolicy_roleName = Lens.lens (\DeleteRolePolicy' {roleName} -> roleName) (\s@DeleteRolePolicy' {} a -> s {roleName = a} :: DeleteRolePolicy)++-- | The name of the inline policy to delete from the specified IAM role.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteRolePolicy_policyName :: Lens.Lens' DeleteRolePolicy Prelude.Text+deleteRolePolicy_policyName = Lens.lens (\DeleteRolePolicy' {policyName} -> policyName) (\s@DeleteRolePolicy' {} a -> s {policyName = a} :: DeleteRolePolicy)++instance Core.AWSRequest DeleteRolePolicy where+ type+ AWSResponse DeleteRolePolicy =+ DeleteRolePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteRolePolicyResponse'++instance Prelude.Hashable DeleteRolePolicy where+ hashWithSalt _salt DeleteRolePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` policyName++instance Prelude.NFData DeleteRolePolicy where+ rnf DeleteRolePolicy' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf policyName++instance Data.ToHeaders DeleteRolePolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteRolePolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteRolePolicy where+ toQuery DeleteRolePolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteRolePolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "PolicyName" Data.=: policyName+ ]++-- | /See:/ 'newDeleteRolePolicyResponse' smart constructor.+data DeleteRolePolicyResponse = DeleteRolePolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRolePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteRolePolicyResponse ::+ DeleteRolePolicyResponse+newDeleteRolePolicyResponse =+ DeleteRolePolicyResponse'++instance Prelude.NFData DeleteRolePolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteSAMLProvider.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteSAMLProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a SAML provider resource in IAM.+--+-- Deleting the provider resource from IAM does not update any roles that+-- reference the SAML provider resource\'s ARN as a principal in their+-- trust policies. Any attempt to assume a role that references a+-- non-existent provider resource ARN fails.+--+-- This operation requires+-- <https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4>.+module Amazonka.IAM.DeleteSAMLProvider+ ( -- * Creating a Request+ DeleteSAMLProvider (..),+ newDeleteSAMLProvider,++ -- * Request Lenses+ deleteSAMLProvider_sAMLProviderArn,++ -- * Destructuring the Response+ DeleteSAMLProviderResponse (..),+ newDeleteSAMLProviderResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteSAMLProvider' smart constructor.+data DeleteSAMLProvider = DeleteSAMLProvider'+ { -- | The Amazon Resource Name (ARN) of the SAML provider to delete.+ sAMLProviderArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSAMLProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sAMLProviderArn', 'deleteSAMLProvider_sAMLProviderArn' - The Amazon Resource Name (ARN) of the SAML provider to delete.+newDeleteSAMLProvider ::+ -- | 'sAMLProviderArn'+ Prelude.Text ->+ DeleteSAMLProvider+newDeleteSAMLProvider pSAMLProviderArn_ =+ DeleteSAMLProvider'+ { sAMLProviderArn =+ pSAMLProviderArn_+ }++-- | The Amazon Resource Name (ARN) of the SAML provider to delete.+deleteSAMLProvider_sAMLProviderArn :: Lens.Lens' DeleteSAMLProvider Prelude.Text+deleteSAMLProvider_sAMLProviderArn = Lens.lens (\DeleteSAMLProvider' {sAMLProviderArn} -> sAMLProviderArn) (\s@DeleteSAMLProvider' {} a -> s {sAMLProviderArn = a} :: DeleteSAMLProvider)++instance Core.AWSRequest DeleteSAMLProvider where+ type+ AWSResponse DeleteSAMLProvider =+ DeleteSAMLProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteSAMLProviderResponse'++instance Prelude.Hashable DeleteSAMLProvider where+ hashWithSalt _salt DeleteSAMLProvider' {..} =+ _salt `Prelude.hashWithSalt` sAMLProviderArn++instance Prelude.NFData DeleteSAMLProvider where+ rnf DeleteSAMLProvider' {..} =+ Prelude.rnf sAMLProviderArn++instance Data.ToHeaders DeleteSAMLProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteSAMLProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteSAMLProvider where+ toQuery DeleteSAMLProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteSAMLProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SAMLProviderArn" Data.=: sAMLProviderArn+ ]++-- | /See:/ 'newDeleteSAMLProviderResponse' smart constructor.+data DeleteSAMLProviderResponse = DeleteSAMLProviderResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSAMLProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteSAMLProviderResponse ::+ DeleteSAMLProviderResponse+newDeleteSAMLProviderResponse =+ DeleteSAMLProviderResponse'++instance Prelude.NFData DeleteSAMLProviderResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteSSHPublicKey.hs view
@@ -0,0 +1,174 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteSSHPublicKey+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified SSH public key.+--+-- The SSH public key deleted by this operation is used only for+-- authenticating the associated IAM user to an CodeCommit repository. For+-- more information about using SSH keys to authenticate to an CodeCommit+-- repository, see+-- <https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up CodeCommit for SSH connections>+-- in the /CodeCommit User Guide/.+module Amazonka.IAM.DeleteSSHPublicKey+ ( -- * Creating a Request+ DeleteSSHPublicKey (..),+ newDeleteSSHPublicKey,++ -- * Request Lenses+ deleteSSHPublicKey_userName,+ deleteSSHPublicKey_sSHPublicKeyId,++ -- * Destructuring the Response+ DeleteSSHPublicKeyResponse (..),+ newDeleteSSHPublicKeyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteSSHPublicKey' smart constructor.+data DeleteSSHPublicKey = DeleteSSHPublicKey'+ { -- | The name of the IAM user associated with the SSH public key.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The unique identifier for the SSH public key.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ sSHPublicKeyId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSSHPublicKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deleteSSHPublicKey_userName' - The name of the IAM user associated with the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'sSHPublicKeyId', 'deleteSSHPublicKey_sSHPublicKeyId' - The unique identifier for the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+newDeleteSSHPublicKey ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'sSHPublicKeyId'+ Prelude.Text ->+ DeleteSSHPublicKey+newDeleteSSHPublicKey pUserName_ pSSHPublicKeyId_ =+ DeleteSSHPublicKey'+ { userName = pUserName_,+ sSHPublicKeyId = pSSHPublicKeyId_+ }++-- | The name of the IAM user associated with the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteSSHPublicKey_userName :: Lens.Lens' DeleteSSHPublicKey Prelude.Text+deleteSSHPublicKey_userName = Lens.lens (\DeleteSSHPublicKey' {userName} -> userName) (\s@DeleteSSHPublicKey' {} a -> s {userName = a} :: DeleteSSHPublicKey)++-- | The unique identifier for the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+deleteSSHPublicKey_sSHPublicKeyId :: Lens.Lens' DeleteSSHPublicKey Prelude.Text+deleteSSHPublicKey_sSHPublicKeyId = Lens.lens (\DeleteSSHPublicKey' {sSHPublicKeyId} -> sSHPublicKeyId) (\s@DeleteSSHPublicKey' {} a -> s {sSHPublicKeyId = a} :: DeleteSSHPublicKey)++instance Core.AWSRequest DeleteSSHPublicKey where+ type+ AWSResponse DeleteSSHPublicKey =+ DeleteSSHPublicKeyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteSSHPublicKeyResponse'++instance Prelude.Hashable DeleteSSHPublicKey where+ hashWithSalt _salt DeleteSSHPublicKey' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` sSHPublicKeyId++instance Prelude.NFData DeleteSSHPublicKey where+ rnf DeleteSSHPublicKey' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf sSHPublicKeyId++instance Data.ToHeaders DeleteSSHPublicKey where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteSSHPublicKey where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteSSHPublicKey where+ toQuery DeleteSSHPublicKey' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteSSHPublicKey" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "SSHPublicKeyId" Data.=: sSHPublicKeyId+ ]++-- | /See:/ 'newDeleteSSHPublicKeyResponse' smart constructor.+data DeleteSSHPublicKeyResponse = DeleteSSHPublicKeyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSSHPublicKeyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteSSHPublicKeyResponse ::+ DeleteSSHPublicKeyResponse+newDeleteSSHPublicKeyResponse =+ DeleteSSHPublicKeyResponse'++instance Prelude.NFData DeleteSSHPublicKeyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteServerCertificate.hs view
@@ -0,0 +1,162 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteServerCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified server certificate.+--+-- For more information about working with server certificates, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with server certificates>+-- in the /IAM User Guide/. This topic also includes a list of Amazon Web+-- Services services that can use the server certificates that you manage+-- with IAM.+--+-- If you are using a server certificate with Elastic Load Balancing,+-- deleting the certificate could have implications for your application.+-- If Elastic Load Balancing doesn\'t detect the deletion of bound+-- certificates, it may continue to use the certificates. This could cause+-- Elastic Load Balancing to stop accepting traffic. We recommend that you+-- remove the reference to the certificate from Elastic Load Balancing+-- before using this command to delete the certificate. For more+-- information, see+-- <https://docs.aws.amazon.com/ElasticLoadBalancing/latest/APIReference/API_DeleteLoadBalancerListeners.html DeleteLoadBalancerListeners>+-- in the /Elastic Load Balancing API Reference/.+module Amazonka.IAM.DeleteServerCertificate+ ( -- * Creating a Request+ DeleteServerCertificate (..),+ newDeleteServerCertificate,++ -- * Request Lenses+ deleteServerCertificate_serverCertificateName,++ -- * Destructuring the Response+ DeleteServerCertificateResponse (..),+ newDeleteServerCertificateResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteServerCertificate' smart constructor.+data DeleteServerCertificate = DeleteServerCertificate'+ { -- | The name of the server certificate you want to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serverCertificateName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteServerCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serverCertificateName', 'deleteServerCertificate_serverCertificateName' - The name of the server certificate you want to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteServerCertificate ::+ -- | 'serverCertificateName'+ Prelude.Text ->+ DeleteServerCertificate+newDeleteServerCertificate pServerCertificateName_ =+ DeleteServerCertificate'+ { serverCertificateName =+ pServerCertificateName_+ }++-- | The name of the server certificate you want to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteServerCertificate_serverCertificateName :: Lens.Lens' DeleteServerCertificate Prelude.Text+deleteServerCertificate_serverCertificateName = Lens.lens (\DeleteServerCertificate' {serverCertificateName} -> serverCertificateName) (\s@DeleteServerCertificate' {} a -> s {serverCertificateName = a} :: DeleteServerCertificate)++instance Core.AWSRequest DeleteServerCertificate where+ type+ AWSResponse DeleteServerCertificate =+ DeleteServerCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteServerCertificateResponse'++instance Prelude.Hashable DeleteServerCertificate where+ hashWithSalt _salt DeleteServerCertificate' {..} =+ _salt `Prelude.hashWithSalt` serverCertificateName++instance Prelude.NFData DeleteServerCertificate where+ rnf DeleteServerCertificate' {..} =+ Prelude.rnf serverCertificateName++instance Data.ToHeaders DeleteServerCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteServerCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteServerCertificate where+ toQuery DeleteServerCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteServerCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "ServerCertificateName"+ Data.=: serverCertificateName+ ]++-- | /See:/ 'newDeleteServerCertificateResponse' smart constructor.+data DeleteServerCertificateResponse = DeleteServerCertificateResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteServerCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteServerCertificateResponse ::+ DeleteServerCertificateResponse+newDeleteServerCertificateResponse =+ DeleteServerCertificateResponse'++instance+ Prelude.NFData+ DeleteServerCertificateResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteServiceLinkedRole.hs view
@@ -0,0 +1,192 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteServiceLinkedRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Submits a service-linked role deletion request and returns a+-- @DeletionTaskId@, which you can use to check the status of the deletion.+-- Before you call this operation, confirm that the role has no active+-- sessions and that any resources used by the role in the linked service+-- are deleted. If you call this operation more than once for the same+-- service-linked role and an earlier deletion task is not complete, then+-- the @DeletionTaskId@ of the earlier request is returned.+--+-- If you submit a deletion request for a service-linked role whose linked+-- service is still accessing a resource, then the deletion task fails. If+-- it fails, the GetServiceLinkedRoleDeletionStatus operation returns the+-- reason for the failure, usually including the resources that must be+-- deleted. To delete the service-linked role, you must first remove those+-- resources from the linked service and then submit the deletion request+-- again. Resources are specific to the service that is linked to the role.+-- For more information about removing resources from a service, see the+-- <http://docs.aws.amazon.com/ Amazon Web Services documentation> for your+-- service.+--+-- For more information about service-linked roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role Roles terms and concepts: Amazon Web Services service-linked role>+-- in the /IAM User Guide/.+module Amazonka.IAM.DeleteServiceLinkedRole+ ( -- * Creating a Request+ DeleteServiceLinkedRole (..),+ newDeleteServiceLinkedRole,++ -- * Request Lenses+ deleteServiceLinkedRole_roleName,++ -- * Destructuring the Response+ DeleteServiceLinkedRoleResponse (..),+ newDeleteServiceLinkedRoleResponse,++ -- * Response Lenses+ deleteServiceLinkedRoleResponse_httpStatus,+ deleteServiceLinkedRoleResponse_deletionTaskId,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteServiceLinkedRole' smart constructor.+data DeleteServiceLinkedRole = DeleteServiceLinkedRole'+ { -- | The name of the service-linked role to be deleted.+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteServiceLinkedRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'deleteServiceLinkedRole_roleName' - The name of the service-linked role to be deleted.+newDeleteServiceLinkedRole ::+ -- | 'roleName'+ Prelude.Text ->+ DeleteServiceLinkedRole+newDeleteServiceLinkedRole pRoleName_ =+ DeleteServiceLinkedRole' {roleName = pRoleName_}++-- | The name of the service-linked role to be deleted.+deleteServiceLinkedRole_roleName :: Lens.Lens' DeleteServiceLinkedRole Prelude.Text+deleteServiceLinkedRole_roleName = Lens.lens (\DeleteServiceLinkedRole' {roleName} -> roleName) (\s@DeleteServiceLinkedRole' {} a -> s {roleName = a} :: DeleteServiceLinkedRole)++instance Core.AWSRequest DeleteServiceLinkedRole where+ type+ AWSResponse DeleteServiceLinkedRole =+ DeleteServiceLinkedRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "DeleteServiceLinkedRoleResult"+ ( \s h x ->+ DeleteServiceLinkedRoleResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "DeletionTaskId")+ )++instance Prelude.Hashable DeleteServiceLinkedRole where+ hashWithSalt _salt DeleteServiceLinkedRole' {..} =+ _salt `Prelude.hashWithSalt` roleName++instance Prelude.NFData DeleteServiceLinkedRole where+ rnf DeleteServiceLinkedRole' {..} =+ Prelude.rnf roleName++instance Data.ToHeaders DeleteServiceLinkedRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteServiceLinkedRole where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteServiceLinkedRole where+ toQuery DeleteServiceLinkedRole' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteServiceLinkedRole" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName+ ]++-- | /See:/ 'newDeleteServiceLinkedRoleResponse' smart constructor.+data DeleteServiceLinkedRoleResponse = DeleteServiceLinkedRoleResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The deletion task identifier that you can use to check the status of the+ -- deletion. This identifier is returned in the format+ -- @task\/aws-service-role\/\<service-principal-name>\/\<role-name>\/\<task-uuid>@.+ deletionTaskId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteServiceLinkedRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteServiceLinkedRoleResponse_httpStatus' - The response's http status code.+--+-- 'deletionTaskId', 'deleteServiceLinkedRoleResponse_deletionTaskId' - The deletion task identifier that you can use to check the status of the+-- deletion. This identifier is returned in the format+-- @task\/aws-service-role\/\<service-principal-name>\/\<role-name>\/\<task-uuid>@.+newDeleteServiceLinkedRoleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'deletionTaskId'+ Prelude.Text ->+ DeleteServiceLinkedRoleResponse+newDeleteServiceLinkedRoleResponse+ pHttpStatus_+ pDeletionTaskId_ =+ DeleteServiceLinkedRoleResponse'+ { httpStatus =+ pHttpStatus_,+ deletionTaskId = pDeletionTaskId_+ }++-- | The response's http status code.+deleteServiceLinkedRoleResponse_httpStatus :: Lens.Lens' DeleteServiceLinkedRoleResponse Prelude.Int+deleteServiceLinkedRoleResponse_httpStatus = Lens.lens (\DeleteServiceLinkedRoleResponse' {httpStatus} -> httpStatus) (\s@DeleteServiceLinkedRoleResponse' {} a -> s {httpStatus = a} :: DeleteServiceLinkedRoleResponse)++-- | The deletion task identifier that you can use to check the status of the+-- deletion. This identifier is returned in the format+-- @task\/aws-service-role\/\<service-principal-name>\/\<role-name>\/\<task-uuid>@.+deleteServiceLinkedRoleResponse_deletionTaskId :: Lens.Lens' DeleteServiceLinkedRoleResponse Prelude.Text+deleteServiceLinkedRoleResponse_deletionTaskId = Lens.lens (\DeleteServiceLinkedRoleResponse' {deletionTaskId} -> deletionTaskId) (\s@DeleteServiceLinkedRoleResponse' {} a -> s {deletionTaskId = a} :: DeleteServiceLinkedRoleResponse)++instance+ Prelude.NFData+ DeleteServiceLinkedRoleResponse+ where+ rnf DeleteServiceLinkedRoleResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf deletionTaskId
+ gen/Amazonka/IAM/DeleteServiceSpecificCredential.hs view
@@ -0,0 +1,198 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteServiceSpecificCredential+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified service-specific credential.+module Amazonka.IAM.DeleteServiceSpecificCredential+ ( -- * Creating a Request+ DeleteServiceSpecificCredential (..),+ newDeleteServiceSpecificCredential,++ -- * Request Lenses+ deleteServiceSpecificCredential_userName,+ deleteServiceSpecificCredential_serviceSpecificCredentialId,++ -- * Destructuring the Response+ DeleteServiceSpecificCredentialResponse (..),+ newDeleteServiceSpecificCredentialResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteServiceSpecificCredential' smart constructor.+data DeleteServiceSpecificCredential = DeleteServiceSpecificCredential'+ { -- | The name of the IAM user associated with the service-specific+ -- credential. If this value is not specified, then the operation assumes+ -- the user whose credentials are used to call the operation.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the service-specific credential. You can get+ -- this value by calling ListServiceSpecificCredentials.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ serviceSpecificCredentialId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteServiceSpecificCredential' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deleteServiceSpecificCredential_userName' - The name of the IAM user associated with the service-specific+-- credential. If this value is not specified, then the operation assumes+-- the user whose credentials are used to call the operation.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'serviceSpecificCredentialId', 'deleteServiceSpecificCredential_serviceSpecificCredentialId' - The unique identifier of the service-specific credential. You can get+-- this value by calling ListServiceSpecificCredentials.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+newDeleteServiceSpecificCredential ::+ -- | 'serviceSpecificCredentialId'+ Prelude.Text ->+ DeleteServiceSpecificCredential+newDeleteServiceSpecificCredential+ pServiceSpecificCredentialId_ =+ DeleteServiceSpecificCredential'+ { userName =+ Prelude.Nothing,+ serviceSpecificCredentialId =+ pServiceSpecificCredentialId_+ }++-- | The name of the IAM user associated with the service-specific+-- credential. If this value is not specified, then the operation assumes+-- the user whose credentials are used to call the operation.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteServiceSpecificCredential_userName :: Lens.Lens' DeleteServiceSpecificCredential (Prelude.Maybe Prelude.Text)+deleteServiceSpecificCredential_userName = Lens.lens (\DeleteServiceSpecificCredential' {userName} -> userName) (\s@DeleteServiceSpecificCredential' {} a -> s {userName = a} :: DeleteServiceSpecificCredential)++-- | The unique identifier of the service-specific credential. You can get+-- this value by calling ListServiceSpecificCredentials.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+deleteServiceSpecificCredential_serviceSpecificCredentialId :: Lens.Lens' DeleteServiceSpecificCredential Prelude.Text+deleteServiceSpecificCredential_serviceSpecificCredentialId = Lens.lens (\DeleteServiceSpecificCredential' {serviceSpecificCredentialId} -> serviceSpecificCredentialId) (\s@DeleteServiceSpecificCredential' {} a -> s {serviceSpecificCredentialId = a} :: DeleteServiceSpecificCredential)++instance+ Core.AWSRequest+ DeleteServiceSpecificCredential+ where+ type+ AWSResponse DeleteServiceSpecificCredential =+ DeleteServiceSpecificCredentialResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteServiceSpecificCredentialResponse'++instance+ Prelude.Hashable+ DeleteServiceSpecificCredential+ where+ hashWithSalt+ _salt+ DeleteServiceSpecificCredential' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` serviceSpecificCredentialId++instance+ Prelude.NFData+ DeleteServiceSpecificCredential+ where+ rnf DeleteServiceSpecificCredential' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf serviceSpecificCredentialId++instance+ Data.ToHeaders+ DeleteServiceSpecificCredential+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteServiceSpecificCredential where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteServiceSpecificCredential where+ toQuery DeleteServiceSpecificCredential' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DeleteServiceSpecificCredential" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "ServiceSpecificCredentialId"+ Data.=: serviceSpecificCredentialId+ ]++-- | /See:/ 'newDeleteServiceSpecificCredentialResponse' smart constructor.+data DeleteServiceSpecificCredentialResponse = DeleteServiceSpecificCredentialResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteServiceSpecificCredentialResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteServiceSpecificCredentialResponse ::+ DeleteServiceSpecificCredentialResponse+newDeleteServiceSpecificCredentialResponse =+ DeleteServiceSpecificCredentialResponse'++instance+ Prelude.NFData+ DeleteServiceSpecificCredentialResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteSigningCertificate.hs view
@@ -0,0 +1,177 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteSigningCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a signing certificate associated with the specified IAM user.+--+-- If you do not specify a user name, IAM determines the user name+-- implicitly based on the Amazon Web Services access key ID signing the+-- request. This operation works for access keys under the Amazon Web+-- Services account. Consequently, you can use this operation to manage+-- Amazon Web Services account root user credentials even if the Amazon Web+-- Services account has no associated IAM users.+module Amazonka.IAM.DeleteSigningCertificate+ ( -- * Creating a Request+ DeleteSigningCertificate (..),+ newDeleteSigningCertificate,++ -- * Request Lenses+ deleteSigningCertificate_userName,+ deleteSigningCertificate_certificateId,++ -- * Destructuring the Response+ DeleteSigningCertificateResponse (..),+ newDeleteSigningCertificateResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteSigningCertificate' smart constructor.+data DeleteSigningCertificate = DeleteSigningCertificate'+ { -- | The name of the user the signing certificate belongs to.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text,+ -- | The ID of the signing certificate to delete.+ --+ -- The format of this parameter, as described by its+ -- <http://wikipedia.org/wiki/regex regex> pattern, is a string of+ -- characters that can be upper- or lower-cased letters or digits.+ certificateId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSigningCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deleteSigningCertificate_userName' - The name of the user the signing certificate belongs to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'certificateId', 'deleteSigningCertificate_certificateId' - The ID of the signing certificate to delete.+--+-- The format of this parameter, as described by its+-- <http://wikipedia.org/wiki/regex regex> pattern, is a string of+-- characters that can be upper- or lower-cased letters or digits.+newDeleteSigningCertificate ::+ -- | 'certificateId'+ Prelude.Text ->+ DeleteSigningCertificate+newDeleteSigningCertificate pCertificateId_ =+ DeleteSigningCertificate'+ { userName =+ Prelude.Nothing,+ certificateId = pCertificateId_+ }++-- | The name of the user the signing certificate belongs to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteSigningCertificate_userName :: Lens.Lens' DeleteSigningCertificate (Prelude.Maybe Prelude.Text)+deleteSigningCertificate_userName = Lens.lens (\DeleteSigningCertificate' {userName} -> userName) (\s@DeleteSigningCertificate' {} a -> s {userName = a} :: DeleteSigningCertificate)++-- | The ID of the signing certificate to delete.+--+-- The format of this parameter, as described by its+-- <http://wikipedia.org/wiki/regex regex> pattern, is a string of+-- characters that can be upper- or lower-cased letters or digits.+deleteSigningCertificate_certificateId :: Lens.Lens' DeleteSigningCertificate Prelude.Text+deleteSigningCertificate_certificateId = Lens.lens (\DeleteSigningCertificate' {certificateId} -> certificateId) (\s@DeleteSigningCertificate' {} a -> s {certificateId = a} :: DeleteSigningCertificate)++instance Core.AWSRequest DeleteSigningCertificate where+ type+ AWSResponse DeleteSigningCertificate =+ DeleteSigningCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteSigningCertificateResponse'++instance Prelude.Hashable DeleteSigningCertificate where+ hashWithSalt _salt DeleteSigningCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` certificateId++instance Prelude.NFData DeleteSigningCertificate where+ rnf DeleteSigningCertificate' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf certificateId++instance Data.ToHeaders DeleteSigningCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteSigningCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteSigningCertificate where+ toQuery DeleteSigningCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteSigningCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "CertificateId" Data.=: certificateId+ ]++-- | /See:/ 'newDeleteSigningCertificateResponse' smart constructor.+data DeleteSigningCertificateResponse = DeleteSigningCertificateResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSigningCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteSigningCertificateResponse ::+ DeleteSigningCertificateResponse+newDeleteSigningCertificateResponse =+ DeleteSigningCertificateResponse'++instance+ Prelude.NFData+ DeleteSigningCertificateResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteUser.hs view
@@ -0,0 +1,156 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified IAM user. Unlike the Amazon Web Services+-- Management Console, when you delete a user programmatically, you must+-- delete the items attached to the user manually, or the deletion fails.+-- For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_manage.html#id_users_deleting_cli Deleting an IAM user>.+-- Before attempting to delete a user, remove the following items:+--+-- - Password (DeleteLoginProfile)+--+-- - Access keys (DeleteAccessKey)+--+-- - Signing certificate (DeleteSigningCertificate)+--+-- - SSH public key (DeleteSSHPublicKey)+--+-- - Git credentials (DeleteServiceSpecificCredential)+--+-- - Multi-factor authentication (MFA) device (DeactivateMFADevice,+-- DeleteVirtualMFADevice)+--+-- - Inline policies (DeleteUserPolicy)+--+-- - Attached managed policies (DetachUserPolicy)+--+-- - Group memberships (RemoveUserFromGroup)+module Amazonka.IAM.DeleteUser+ ( -- * Creating a Request+ DeleteUser (..),+ newDeleteUser,++ -- * Request Lenses+ deleteUser_userName,++ -- * Destructuring the Response+ DeleteUserResponse (..),+ newDeleteUserResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteUser' smart constructor.+data DeleteUser = DeleteUser'+ { -- | The name of the user to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deleteUser_userName' - The name of the user to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteUser ::+ -- | 'userName'+ Prelude.Text ->+ DeleteUser+newDeleteUser pUserName_ =+ DeleteUser' {userName = pUserName_}++-- | The name of the user to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteUser_userName :: Lens.Lens' DeleteUser Prelude.Text+deleteUser_userName = Lens.lens (\DeleteUser' {userName} -> userName) (\s@DeleteUser' {} a -> s {userName = a} :: DeleteUser)++instance Core.AWSRequest DeleteUser where+ type AWSResponse DeleteUser = DeleteUserResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull DeleteUserResponse'++instance Prelude.Hashable DeleteUser where+ hashWithSalt _salt DeleteUser' {..} =+ _salt `Prelude.hashWithSalt` userName++instance Prelude.NFData DeleteUser where+ rnf DeleteUser' {..} = Prelude.rnf userName++instance Data.ToHeaders DeleteUser where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteUser where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteUser where+ toQuery DeleteUser' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteUser" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newDeleteUserResponse' smart constructor.+data DeleteUserResponse = DeleteUserResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteUserResponse ::+ DeleteUserResponse+newDeleteUserResponse = DeleteUserResponse'++instance Prelude.NFData DeleteUserResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteUserPermissionsBoundary.hs view
@@ -0,0 +1,144 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteUserPermissionsBoundary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the permissions boundary for the specified IAM user.+--+-- Deleting the permissions boundary for a user might increase its+-- permissions by allowing the user to perform all the actions granted in+-- its permissions policies.+module Amazonka.IAM.DeleteUserPermissionsBoundary+ ( -- * Creating a Request+ DeleteUserPermissionsBoundary (..),+ newDeleteUserPermissionsBoundary,++ -- * Request Lenses+ deleteUserPermissionsBoundary_userName,++ -- * Destructuring the Response+ DeleteUserPermissionsBoundaryResponse (..),+ newDeleteUserPermissionsBoundaryResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteUserPermissionsBoundary' smart constructor.+data DeleteUserPermissionsBoundary = DeleteUserPermissionsBoundary'+ { -- | The name (friendly name, not ARN) of the IAM user from which you want to+ -- remove the permissions boundary.+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteUserPermissionsBoundary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deleteUserPermissionsBoundary_userName' - The name (friendly name, not ARN) of the IAM user from which you want to+-- remove the permissions boundary.+newDeleteUserPermissionsBoundary ::+ -- | 'userName'+ Prelude.Text ->+ DeleteUserPermissionsBoundary+newDeleteUserPermissionsBoundary pUserName_ =+ DeleteUserPermissionsBoundary'+ { userName =+ pUserName_+ }++-- | The name (friendly name, not ARN) of the IAM user from which you want to+-- remove the permissions boundary.+deleteUserPermissionsBoundary_userName :: Lens.Lens' DeleteUserPermissionsBoundary Prelude.Text+deleteUserPermissionsBoundary_userName = Lens.lens (\DeleteUserPermissionsBoundary' {userName} -> userName) (\s@DeleteUserPermissionsBoundary' {} a -> s {userName = a} :: DeleteUserPermissionsBoundary)++instance+ Core.AWSRequest+ DeleteUserPermissionsBoundary+ where+ type+ AWSResponse DeleteUserPermissionsBoundary =+ DeleteUserPermissionsBoundaryResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteUserPermissionsBoundaryResponse'++instance+ Prelude.Hashable+ DeleteUserPermissionsBoundary+ where+ hashWithSalt _salt DeleteUserPermissionsBoundary' {..} =+ _salt `Prelude.hashWithSalt` userName++instance Prelude.NFData DeleteUserPermissionsBoundary where+ rnf DeleteUserPermissionsBoundary' {..} =+ Prelude.rnf userName++instance Data.ToHeaders DeleteUserPermissionsBoundary where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteUserPermissionsBoundary where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteUserPermissionsBoundary where+ toQuery DeleteUserPermissionsBoundary' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "DeleteUserPermissionsBoundary" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newDeleteUserPermissionsBoundaryResponse' smart constructor.+data DeleteUserPermissionsBoundaryResponse = DeleteUserPermissionsBoundaryResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteUserPermissionsBoundaryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteUserPermissionsBoundaryResponse ::+ DeleteUserPermissionsBoundaryResponse+newDeleteUserPermissionsBoundaryResponse =+ DeleteUserPermissionsBoundaryResponse'++instance+ Prelude.NFData+ DeleteUserPermissionsBoundaryResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteUserPolicy.hs view
@@ -0,0 +1,180 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteUserPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified inline policy that is embedded in the specified+-- IAM user.+--+-- A user can also have managed policies attached to it. To detach a+-- managed policy from a user, use DetachUserPolicy. For more information+-- about policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.DeleteUserPolicy+ ( -- * Creating a Request+ DeleteUserPolicy (..),+ newDeleteUserPolicy,++ -- * Request Lenses+ deleteUserPolicy_userName,+ deleteUserPolicy_policyName,++ -- * Destructuring the Response+ DeleteUserPolicyResponse (..),+ newDeleteUserPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteUserPolicy' smart constructor.+data DeleteUserPolicy = DeleteUserPolicy'+ { -- | The name (friendly name, not ARN) identifying the user that the policy+ -- is embedded in.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The name identifying the policy document to delete.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteUserPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'deleteUserPolicy_userName' - The name (friendly name, not ARN) identifying the user that the policy+-- is embedded in.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyName', 'deleteUserPolicy_policyName' - The name identifying the policy document to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newDeleteUserPolicy ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ DeleteUserPolicy+newDeleteUserPolicy pUserName_ pPolicyName_ =+ DeleteUserPolicy'+ { userName = pUserName_,+ policyName = pPolicyName_+ }++-- | The name (friendly name, not ARN) identifying the user that the policy+-- is embedded in.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteUserPolicy_userName :: Lens.Lens' DeleteUserPolicy Prelude.Text+deleteUserPolicy_userName = Lens.lens (\DeleteUserPolicy' {userName} -> userName) (\s@DeleteUserPolicy' {} a -> s {userName = a} :: DeleteUserPolicy)++-- | The name identifying the policy document to delete.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+deleteUserPolicy_policyName :: Lens.Lens' DeleteUserPolicy Prelude.Text+deleteUserPolicy_policyName = Lens.lens (\DeleteUserPolicy' {policyName} -> policyName) (\s@DeleteUserPolicy' {} a -> s {policyName = a} :: DeleteUserPolicy)++instance Core.AWSRequest DeleteUserPolicy where+ type+ AWSResponse DeleteUserPolicy =+ DeleteUserPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DeleteUserPolicyResponse'++instance Prelude.Hashable DeleteUserPolicy where+ hashWithSalt _salt DeleteUserPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` policyName++instance Prelude.NFData DeleteUserPolicy where+ rnf DeleteUserPolicy' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf policyName++instance Data.ToHeaders DeleteUserPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteUserPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteUserPolicy where+ toQuery DeleteUserPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteUserPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "PolicyName" Data.=: policyName+ ]++-- | /See:/ 'newDeleteUserPolicyResponse' smart constructor.+data DeleteUserPolicyResponse = DeleteUserPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteUserPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteUserPolicyResponse ::+ DeleteUserPolicyResponse+newDeleteUserPolicyResponse =+ DeleteUserPolicyResponse'++instance Prelude.NFData DeleteUserPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DeleteVirtualMFADevice.hs view
@@ -0,0 +1,151 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DeleteVirtualMFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a virtual MFA device.+--+-- You must deactivate a user\'s virtual MFA device before you can delete+-- it. For information about deactivating MFA devices, see+-- DeactivateMFADevice.+module Amazonka.IAM.DeleteVirtualMFADevice+ ( -- * Creating a Request+ DeleteVirtualMFADevice (..),+ newDeleteVirtualMFADevice,++ -- * Request Lenses+ deleteVirtualMFADevice_serialNumber,++ -- * Destructuring the Response+ DeleteVirtualMFADeviceResponse (..),+ newDeleteVirtualMFADeviceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteVirtualMFADevice' smart constructor.+data DeleteVirtualMFADevice = DeleteVirtualMFADevice'+ { -- | The serial number that uniquely identifies the MFA device. For virtual+ -- MFA devices, the serial number is the same as the ARN.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: =,.\@:\/-+ serialNumber :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteVirtualMFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serialNumber', 'deleteVirtualMFADevice_serialNumber' - The serial number that uniquely identifies the MFA device. For virtual+-- MFA devices, the serial number is the same as the ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: =,.\@:\/-+newDeleteVirtualMFADevice ::+ -- | 'serialNumber'+ Prelude.Text ->+ DeleteVirtualMFADevice+newDeleteVirtualMFADevice pSerialNumber_ =+ DeleteVirtualMFADevice'+ { serialNumber =+ pSerialNumber_+ }++-- | The serial number that uniquely identifies the MFA device. For virtual+-- MFA devices, the serial number is the same as the ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: =,.\@:\/-+deleteVirtualMFADevice_serialNumber :: Lens.Lens' DeleteVirtualMFADevice Prelude.Text+deleteVirtualMFADevice_serialNumber = Lens.lens (\DeleteVirtualMFADevice' {serialNumber} -> serialNumber) (\s@DeleteVirtualMFADevice' {} a -> s {serialNumber = a} :: DeleteVirtualMFADevice)++instance Core.AWSRequest DeleteVirtualMFADevice where+ type+ AWSResponse DeleteVirtualMFADevice =+ DeleteVirtualMFADeviceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ DeleteVirtualMFADeviceResponse'++instance Prelude.Hashable DeleteVirtualMFADevice where+ hashWithSalt _salt DeleteVirtualMFADevice' {..} =+ _salt `Prelude.hashWithSalt` serialNumber++instance Prelude.NFData DeleteVirtualMFADevice where+ rnf DeleteVirtualMFADevice' {..} =+ Prelude.rnf serialNumber++instance Data.ToHeaders DeleteVirtualMFADevice where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteVirtualMFADevice where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteVirtualMFADevice where+ toQuery DeleteVirtualMFADevice' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DeleteVirtualMFADevice" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SerialNumber" Data.=: serialNumber+ ]++-- | /See:/ 'newDeleteVirtualMFADeviceResponse' smart constructor.+data DeleteVirtualMFADeviceResponse = DeleteVirtualMFADeviceResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteVirtualMFADeviceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDeleteVirtualMFADeviceResponse ::+ DeleteVirtualMFADeviceResponse+newDeleteVirtualMFADeviceResponse =+ DeleteVirtualMFADeviceResponse'++instance+ Prelude.NFData+ DeleteVirtualMFADeviceResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/DetachGroupPolicy.hs view
@@ -0,0 +1,176 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DetachGroupPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified managed policy from the specified IAM group.+--+-- A group can also have inline policies embedded with it. To delete an+-- inline policy, use DeleteGroupPolicy. For information about policies,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.DetachGroupPolicy+ ( -- * Creating a Request+ DetachGroupPolicy (..),+ newDetachGroupPolicy,++ -- * Request Lenses+ detachGroupPolicy_groupName,+ detachGroupPolicy_policyArn,++ -- * Destructuring the Response+ DetachGroupPolicyResponse (..),+ newDetachGroupPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDetachGroupPolicy' smart constructor.+data DetachGroupPolicy = DetachGroupPolicy'+ { -- | The name (friendly name, not ARN) of the IAM group to detach the policy+ -- from.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the IAM policy you want to detach.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachGroupPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupName', 'detachGroupPolicy_groupName' - The name (friendly name, not ARN) of the IAM group to detach the policy+-- from.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyArn', 'detachGroupPolicy_policyArn' - The Amazon Resource Name (ARN) of the IAM policy you want to detach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newDetachGroupPolicy ::+ -- | 'groupName'+ Prelude.Text ->+ -- | 'policyArn'+ Prelude.Text ->+ DetachGroupPolicy+newDetachGroupPolicy pGroupName_ pPolicyArn_ =+ DetachGroupPolicy'+ { groupName = pGroupName_,+ policyArn = pPolicyArn_+ }++-- | The name (friendly name, not ARN) of the IAM group to detach the policy+-- from.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+detachGroupPolicy_groupName :: Lens.Lens' DetachGroupPolicy Prelude.Text+detachGroupPolicy_groupName = Lens.lens (\DetachGroupPolicy' {groupName} -> groupName) (\s@DetachGroupPolicy' {} a -> s {groupName = a} :: DetachGroupPolicy)++-- | The Amazon Resource Name (ARN) of the IAM policy you want to detach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+detachGroupPolicy_policyArn :: Lens.Lens' DetachGroupPolicy Prelude.Text+detachGroupPolicy_policyArn = Lens.lens (\DetachGroupPolicy' {policyArn} -> policyArn) (\s@DetachGroupPolicy' {} a -> s {policyArn = a} :: DetachGroupPolicy)++instance Core.AWSRequest DetachGroupPolicy where+ type+ AWSResponse DetachGroupPolicy =+ DetachGroupPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DetachGroupPolicyResponse'++instance Prelude.Hashable DetachGroupPolicy where+ hashWithSalt _salt DetachGroupPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData DetachGroupPolicy where+ rnf DetachGroupPolicy' {..} =+ Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders DetachGroupPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DetachGroupPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery DetachGroupPolicy where+ toQuery DetachGroupPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DetachGroupPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GroupName" Data.=: groupName,+ "PolicyArn" Data.=: policyArn+ ]++-- | /See:/ 'newDetachGroupPolicyResponse' smart constructor.+data DetachGroupPolicyResponse = DetachGroupPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachGroupPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDetachGroupPolicyResponse ::+ DetachGroupPolicyResponse+newDetachGroupPolicyResponse =+ DetachGroupPolicyResponse'++instance Prelude.NFData DetachGroupPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DetachRolePolicy.hs view
@@ -0,0 +1,175 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DetachRolePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified managed policy from the specified role.+--+-- A role can also have inline policies embedded with it. To delete an+-- inline policy, use DeleteRolePolicy. For information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.DetachRolePolicy+ ( -- * Creating a Request+ DetachRolePolicy (..),+ newDetachRolePolicy,++ -- * Request Lenses+ detachRolePolicy_roleName,+ detachRolePolicy_policyArn,++ -- * Destructuring the Response+ DetachRolePolicyResponse (..),+ newDetachRolePolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDetachRolePolicy' smart constructor.+data DetachRolePolicy = DetachRolePolicy'+ { -- | The name (friendly name, not ARN) of the IAM role to detach the policy+ -- from.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the IAM policy you want to detach.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachRolePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'detachRolePolicy_roleName' - The name (friendly name, not ARN) of the IAM role to detach the policy+-- from.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyArn', 'detachRolePolicy_policyArn' - The Amazon Resource Name (ARN) of the IAM policy you want to detach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newDetachRolePolicy ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'policyArn'+ Prelude.Text ->+ DetachRolePolicy+newDetachRolePolicy pRoleName_ pPolicyArn_ =+ DetachRolePolicy'+ { roleName = pRoleName_,+ policyArn = pPolicyArn_+ }++-- | The name (friendly name, not ARN) of the IAM role to detach the policy+-- from.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+detachRolePolicy_roleName :: Lens.Lens' DetachRolePolicy Prelude.Text+detachRolePolicy_roleName = Lens.lens (\DetachRolePolicy' {roleName} -> roleName) (\s@DetachRolePolicy' {} a -> s {roleName = a} :: DetachRolePolicy)++-- | The Amazon Resource Name (ARN) of the IAM policy you want to detach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+detachRolePolicy_policyArn :: Lens.Lens' DetachRolePolicy Prelude.Text+detachRolePolicy_policyArn = Lens.lens (\DetachRolePolicy' {policyArn} -> policyArn) (\s@DetachRolePolicy' {} a -> s {policyArn = a} :: DetachRolePolicy)++instance Core.AWSRequest DetachRolePolicy where+ type+ AWSResponse DetachRolePolicy =+ DetachRolePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DetachRolePolicyResponse'++instance Prelude.Hashable DetachRolePolicy where+ hashWithSalt _salt DetachRolePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData DetachRolePolicy where+ rnf DetachRolePolicy' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders DetachRolePolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DetachRolePolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery DetachRolePolicy where+ toQuery DetachRolePolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DetachRolePolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "PolicyArn" Data.=: policyArn+ ]++-- | /See:/ 'newDetachRolePolicyResponse' smart constructor.+data DetachRolePolicyResponse = DetachRolePolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachRolePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDetachRolePolicyResponse ::+ DetachRolePolicyResponse+newDetachRolePolicyResponse =+ DetachRolePolicyResponse'++instance Prelude.NFData DetachRolePolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/DetachUserPolicy.hs view
@@ -0,0 +1,175 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.DetachUserPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified managed policy from the specified user.+--+-- A user can also have inline policies embedded with it. To delete an+-- inline policy, use DeleteUserPolicy. For information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.DetachUserPolicy+ ( -- * Creating a Request+ DetachUserPolicy (..),+ newDetachUserPolicy,++ -- * Request Lenses+ detachUserPolicy_userName,+ detachUserPolicy_policyArn,++ -- * Destructuring the Response+ DetachUserPolicyResponse (..),+ newDetachUserPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDetachUserPolicy' smart constructor.+data DetachUserPolicy = DetachUserPolicy'+ { -- | The name (friendly name, not ARN) of the IAM user to detach the policy+ -- from.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the IAM policy you want to detach.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachUserPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'detachUserPolicy_userName' - The name (friendly name, not ARN) of the IAM user to detach the policy+-- from.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyArn', 'detachUserPolicy_policyArn' - The Amazon Resource Name (ARN) of the IAM policy you want to detach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newDetachUserPolicy ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'policyArn'+ Prelude.Text ->+ DetachUserPolicy+newDetachUserPolicy pUserName_ pPolicyArn_ =+ DetachUserPolicy'+ { userName = pUserName_,+ policyArn = pPolicyArn_+ }++-- | The name (friendly name, not ARN) of the IAM user to detach the policy+-- from.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+detachUserPolicy_userName :: Lens.Lens' DetachUserPolicy Prelude.Text+detachUserPolicy_userName = Lens.lens (\DetachUserPolicy' {userName} -> userName) (\s@DetachUserPolicy' {} a -> s {userName = a} :: DetachUserPolicy)++-- | The Amazon Resource Name (ARN) of the IAM policy you want to detach.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+detachUserPolicy_policyArn :: Lens.Lens' DetachUserPolicy Prelude.Text+detachUserPolicy_policyArn = Lens.lens (\DetachUserPolicy' {policyArn} -> policyArn) (\s@DetachUserPolicy' {} a -> s {policyArn = a} :: DetachUserPolicy)++instance Core.AWSRequest DetachUserPolicy where+ type+ AWSResponse DetachUserPolicy =+ DetachUserPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull DetachUserPolicyResponse'++instance Prelude.Hashable DetachUserPolicy where+ hashWithSalt _salt DetachUserPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData DetachUserPolicy where+ rnf DetachUserPolicy' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders DetachUserPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DetachUserPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery DetachUserPolicy where+ toQuery DetachUserPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("DetachUserPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "PolicyArn" Data.=: policyArn+ ]++-- | /See:/ 'newDetachUserPolicyResponse' smart constructor.+data DetachUserPolicyResponse = DetachUserPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachUserPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDetachUserPolicyResponse ::+ DetachUserPolicyResponse+newDetachUserPolicyResponse =+ DetachUserPolicyResponse'++instance Prelude.NFData DetachUserPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/EnableMFADevice.hs view
@@ -0,0 +1,268 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.EnableMFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Enables the specified MFA device and associates it with the specified+-- IAM user. When enabled, the MFA device is required for every subsequent+-- login by the IAM user associated with the device.+module Amazonka.IAM.EnableMFADevice+ ( -- * Creating a Request+ EnableMFADevice (..),+ newEnableMFADevice,++ -- * Request Lenses+ enableMFADevice_userName,+ enableMFADevice_serialNumber,+ enableMFADevice_authenticationCode1,+ enableMFADevice_authenticationCode2,++ -- * Destructuring the Response+ EnableMFADeviceResponse (..),+ newEnableMFADeviceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newEnableMFADevice' smart constructor.+data EnableMFADevice = EnableMFADevice'+ { -- | The name of the IAM user for whom you want to enable the MFA device.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The serial number that uniquely identifies the MFA device. For virtual+ -- MFA devices, the serial number is the device ARN.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: =,.\@:\/-+ serialNumber :: Prelude.Text,+ -- | An authentication code emitted by the device.+ --+ -- The format for this parameter is a string of six digits.+ --+ -- Submit your request immediately after generating the authentication+ -- codes. If you generate the codes and then wait too long to submit the+ -- request, the MFA device successfully associates with the user but the+ -- MFA device becomes out of sync. This happens because time-based one-time+ -- passwords (TOTP) expire after a short period of time. If this happens,+ -- you can+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device>.+ authenticationCode1 :: Prelude.Text,+ -- | A subsequent authentication code emitted by the device.+ --+ -- The format for this parameter is a string of six digits.+ --+ -- Submit your request immediately after generating the authentication+ -- codes. If you generate the codes and then wait too long to submit the+ -- request, the MFA device successfully associates with the user but the+ -- MFA device becomes out of sync. This happens because time-based one-time+ -- passwords (TOTP) expire after a short period of time. If this happens,+ -- you can+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device>.+ authenticationCode2 :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EnableMFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'enableMFADevice_userName' - The name of the IAM user for whom you want to enable the MFA device.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'serialNumber', 'enableMFADevice_serialNumber' - The serial number that uniquely identifies the MFA device. For virtual+-- MFA devices, the serial number is the device ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: =,.\@:\/-+--+-- 'authenticationCode1', 'enableMFADevice_authenticationCode1' - An authentication code emitted by the device.+--+-- The format for this parameter is a string of six digits.+--+-- Submit your request immediately after generating the authentication+-- codes. If you generate the codes and then wait too long to submit the+-- request, the MFA device successfully associates with the user but the+-- MFA device becomes out of sync. This happens because time-based one-time+-- passwords (TOTP) expire after a short period of time. If this happens,+-- you can+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device>.+--+-- 'authenticationCode2', 'enableMFADevice_authenticationCode2' - A subsequent authentication code emitted by the device.+--+-- The format for this parameter is a string of six digits.+--+-- Submit your request immediately after generating the authentication+-- codes. If you generate the codes and then wait too long to submit the+-- request, the MFA device successfully associates with the user but the+-- MFA device becomes out of sync. This happens because time-based one-time+-- passwords (TOTP) expire after a short period of time. If this happens,+-- you can+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device>.+newEnableMFADevice ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'serialNumber'+ Prelude.Text ->+ -- | 'authenticationCode1'+ Prelude.Text ->+ -- | 'authenticationCode2'+ Prelude.Text ->+ EnableMFADevice+newEnableMFADevice+ pUserName_+ pSerialNumber_+ pAuthenticationCode1_+ pAuthenticationCode2_ =+ EnableMFADevice'+ { userName = pUserName_,+ serialNumber = pSerialNumber_,+ authenticationCode1 = pAuthenticationCode1_,+ authenticationCode2 = pAuthenticationCode2_+ }++-- | The name of the IAM user for whom you want to enable the MFA device.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+enableMFADevice_userName :: Lens.Lens' EnableMFADevice Prelude.Text+enableMFADevice_userName = Lens.lens (\EnableMFADevice' {userName} -> userName) (\s@EnableMFADevice' {} a -> s {userName = a} :: EnableMFADevice)++-- | The serial number that uniquely identifies the MFA device. For virtual+-- MFA devices, the serial number is the device ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: =,.\@:\/-+enableMFADevice_serialNumber :: Lens.Lens' EnableMFADevice Prelude.Text+enableMFADevice_serialNumber = Lens.lens (\EnableMFADevice' {serialNumber} -> serialNumber) (\s@EnableMFADevice' {} a -> s {serialNumber = a} :: EnableMFADevice)++-- | An authentication code emitted by the device.+--+-- The format for this parameter is a string of six digits.+--+-- Submit your request immediately after generating the authentication+-- codes. If you generate the codes and then wait too long to submit the+-- request, the MFA device successfully associates with the user but the+-- MFA device becomes out of sync. This happens because time-based one-time+-- passwords (TOTP) expire after a short period of time. If this happens,+-- you can+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device>.+enableMFADevice_authenticationCode1 :: Lens.Lens' EnableMFADevice Prelude.Text+enableMFADevice_authenticationCode1 = Lens.lens (\EnableMFADevice' {authenticationCode1} -> authenticationCode1) (\s@EnableMFADevice' {} a -> s {authenticationCode1 = a} :: EnableMFADevice)++-- | A subsequent authentication code emitted by the device.+--+-- The format for this parameter is a string of six digits.+--+-- Submit your request immediately after generating the authentication+-- codes. If you generate the codes and then wait too long to submit the+-- request, the MFA device successfully associates with the user but the+-- MFA device becomes out of sync. This happens because time-based one-time+-- passwords (TOTP) expire after a short period of time. If this happens,+-- you can+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device>.+enableMFADevice_authenticationCode2 :: Lens.Lens' EnableMFADevice Prelude.Text+enableMFADevice_authenticationCode2 = Lens.lens (\EnableMFADevice' {authenticationCode2} -> authenticationCode2) (\s@EnableMFADevice' {} a -> s {authenticationCode2 = a} :: EnableMFADevice)++instance Core.AWSRequest EnableMFADevice where+ type+ AWSResponse EnableMFADevice =+ EnableMFADeviceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull EnableMFADeviceResponse'++instance Prelude.Hashable EnableMFADevice where+ hashWithSalt _salt EnableMFADevice' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` serialNumber+ `Prelude.hashWithSalt` authenticationCode1+ `Prelude.hashWithSalt` authenticationCode2++instance Prelude.NFData EnableMFADevice where+ rnf EnableMFADevice' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf serialNumber+ `Prelude.seq` Prelude.rnf authenticationCode1+ `Prelude.seq` Prelude.rnf authenticationCode2++instance Data.ToHeaders EnableMFADevice where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath EnableMFADevice where+ toPath = Prelude.const "/"++instance Data.ToQuery EnableMFADevice where+ toQuery EnableMFADevice' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("EnableMFADevice" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "SerialNumber" Data.=: serialNumber,+ "AuthenticationCode1" Data.=: authenticationCode1,+ "AuthenticationCode2" Data.=: authenticationCode2+ ]++-- | /See:/ 'newEnableMFADeviceResponse' smart constructor.+data EnableMFADeviceResponse = EnableMFADeviceResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EnableMFADeviceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newEnableMFADeviceResponse ::+ EnableMFADeviceResponse+newEnableMFADeviceResponse = EnableMFADeviceResponse'++instance Prelude.NFData EnableMFADeviceResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/GenerateCredentialReport.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GenerateCredentialReport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Generates a credential report for the Amazon Web Services account. For+-- more information about the credential report, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Getting credential reports>+-- in the /IAM User Guide/.+module Amazonka.IAM.GenerateCredentialReport+ ( -- * Creating a Request+ GenerateCredentialReport (..),+ newGenerateCredentialReport,++ -- * Destructuring the Response+ GenerateCredentialReportResponse (..),+ newGenerateCredentialReportResponse,++ -- * Response Lenses+ generateCredentialReportResponse_description,+ generateCredentialReportResponse_state,+ generateCredentialReportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGenerateCredentialReport' smart constructor.+data GenerateCredentialReport = GenerateCredentialReport'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GenerateCredentialReport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newGenerateCredentialReport ::+ GenerateCredentialReport+newGenerateCredentialReport =+ GenerateCredentialReport'++instance Core.AWSRequest GenerateCredentialReport where+ type+ AWSResponse GenerateCredentialReport =+ GenerateCredentialReportResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GenerateCredentialReportResult"+ ( \s h x ->+ GenerateCredentialReportResponse'+ Prelude.<$> (x Data..@? "Description")+ Prelude.<*> (x Data..@? "State")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GenerateCredentialReport where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData GenerateCredentialReport where+ rnf _ = ()++instance Data.ToHeaders GenerateCredentialReport where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GenerateCredentialReport where+ toPath = Prelude.const "/"++instance Data.ToQuery GenerateCredentialReport where+ toQuery =+ Prelude.const+ ( Prelude.mconcat+ [ "Action"+ Data.=: ("GenerateCredentialReport" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString)+ ]+ )++-- | Contains the response to a successful GenerateCredentialReport request.+--+-- /See:/ 'newGenerateCredentialReportResponse' smart constructor.+data GenerateCredentialReportResponse = GenerateCredentialReportResponse'+ { -- | Information about the credential report.+ description :: Prelude.Maybe Prelude.Text,+ -- | Information about the state of the credential report.+ state :: Prelude.Maybe ReportStateType,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GenerateCredentialReportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'generateCredentialReportResponse_description' - Information about the credential report.+--+-- 'state', 'generateCredentialReportResponse_state' - Information about the state of the credential report.+--+-- 'httpStatus', 'generateCredentialReportResponse_httpStatus' - The response's http status code.+newGenerateCredentialReportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GenerateCredentialReportResponse+newGenerateCredentialReportResponse pHttpStatus_ =+ GenerateCredentialReportResponse'+ { description =+ Prelude.Nothing,+ state = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the credential report.+generateCredentialReportResponse_description :: Lens.Lens' GenerateCredentialReportResponse (Prelude.Maybe Prelude.Text)+generateCredentialReportResponse_description = Lens.lens (\GenerateCredentialReportResponse' {description} -> description) (\s@GenerateCredentialReportResponse' {} a -> s {description = a} :: GenerateCredentialReportResponse)++-- | Information about the state of the credential report.+generateCredentialReportResponse_state :: Lens.Lens' GenerateCredentialReportResponse (Prelude.Maybe ReportStateType)+generateCredentialReportResponse_state = Lens.lens (\GenerateCredentialReportResponse' {state} -> state) (\s@GenerateCredentialReportResponse' {} a -> s {state = a} :: GenerateCredentialReportResponse)++-- | The response's http status code.+generateCredentialReportResponse_httpStatus :: Lens.Lens' GenerateCredentialReportResponse Prelude.Int+generateCredentialReportResponse_httpStatus = Lens.lens (\GenerateCredentialReportResponse' {httpStatus} -> httpStatus) (\s@GenerateCredentialReportResponse' {} a -> s {httpStatus = a} :: GenerateCredentialReportResponse)++instance+ Prelude.NFData+ GenerateCredentialReportResponse+ where+ rnf GenerateCredentialReportResponse' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GenerateOrganizationsAccessReport.hs view
@@ -0,0 +1,363 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GenerateOrganizationsAccessReport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Generates a report for service last accessed data for Organizations. You+-- can generate a report for any entities (organization root,+-- organizational unit, or account) or policies in your organization.+--+-- To call this operation, you must be signed in using your Organizations+-- management account credentials. You can use your long-term IAM user or+-- root user credentials, or temporary credentials from assuming an IAM+-- role. SCPs must be enabled for your organization root. You must have the+-- required IAM and Organizations permissions. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html Refining permissions using service last accessed data>+-- in the /IAM User Guide/.+--+-- You can generate a service last accessed data report for entities by+-- specifying only the entity\'s path. This data includes a list of+-- services that are allowed by any service control policies (SCPs) that+-- apply to the entity.+--+-- You can generate a service last accessed data report for a policy by+-- specifying an entity\'s path and an optional Organizations policy ID.+-- This data includes a list of services that are allowed by the specified+-- SCP.+--+-- For each service in both report types, the data includes the most recent+-- account activity that the policy allows to account principals in the+-- entity or the entity\'s children. For important information about the+-- data, reporting period, permissions required, troubleshooting, and+-- supported Regions see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html Reducing permissions using service last accessed data>+-- in the /IAM User Guide/.+--+-- The data includes all attempts to access Amazon Web Services, not just+-- the successful ones. This includes all attempts that were made using the+-- Amazon Web Services Management Console, the Amazon Web Services API+-- through any of the SDKs, or any of the command line tools. An unexpected+-- entry in the service last accessed data does not mean that an account+-- has been compromised, because the request might have been denied. Refer+-- to your CloudTrail logs as the authoritative source for information+-- about all API calls and whether they were successful or denied access.+-- For more information,+-- see <https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-integration.html Logging IAM events with CloudTrail>+-- in the /IAM User Guide/.+--+-- This operation returns a @JobId@. Use this parameter in the+-- @ @@GetOrganizationsAccessReport@@ @ operation to check the status of+-- the report generation. To check the status of this request, use the+-- @JobId@ parameter in the @ @@GetOrganizationsAccessReport@@ @ operation+-- and test the @JobStatus@ response parameter. When the job is complete,+-- you can retrieve the report.+--+-- To generate a service last accessed data report for entities, specify an+-- entity path without specifying the optional Organizations policy ID. The+-- type of entity that you specify determines the data returned in the+-- report.+--+-- - __Root__ – When you specify the organizations root as the entity,+-- the resulting report lists all of the services allowed by SCPs that+-- are attached to your root. For each service, the report includes+-- data for all accounts in your organization except the management+-- account, because the management account is not limited by SCPs.+--+-- - __OU__ – When you specify an organizational unit (OU) as the entity,+-- the resulting report lists all of the services allowed by SCPs that+-- are attached to the OU and its parents. For each service, the report+-- includes data for all accounts in the OU or its children. This data+-- excludes the management account, because the management account is+-- not limited by SCPs.+--+-- - __management account__ – When you specify the management account,+-- the resulting report lists all Amazon Web Services services, because+-- the management account is not limited by SCPs. For each service, the+-- report includes data for only the management account.+--+-- - __Account__ – When you specify another account as the entity, the+-- resulting report lists all of the services allowed by SCPs that are+-- attached to the account and its parents. For each service, the+-- report includes data for only the specified account.+--+-- To generate a service last accessed data report for policies, specify an+-- entity path and the optional Organizations policy ID. The type of entity+-- that you specify determines the data returned for each service.+--+-- - __Root__ – When you specify the root entity and a policy ID, the+-- resulting report lists all of the services that are allowed by the+-- specified SCP. For each service, the report includes data for all+-- accounts in your organization to which the SCP applies. This data+-- excludes the management account, because the management account is+-- not limited by SCPs. If the SCP is not attached to any entities in+-- the organization, then the report will return a list of services+-- with no data.+--+-- - __OU__ – When you specify an OU entity and a policy ID, the+-- resulting report lists all of the services that are allowed by the+-- specified SCP. For each service, the report includes data for all+-- accounts in the OU or its children to which the SCP applies. This+-- means that other accounts outside the OU that are affected by the+-- SCP might not be included in the data. This data excludes the+-- management account, because the management account is not limited by+-- SCPs. If the SCP is not attached to the OU or one of its children,+-- the report will return a list of services with no data.+--+-- - __management account__ – When you specify the management account,+-- the resulting report lists all Amazon Web Services services, because+-- the management account is not limited by SCPs. If you specify a+-- policy ID in the CLI or API, the policy is ignored. For each+-- service, the report includes data for only the management account.+--+-- - __Account__ – When you specify another account entity and a policy+-- ID, the resulting report lists all of the services that are allowed+-- by the specified SCP. For each service, the report includes data for+-- only the specified account. This means that other accounts in the+-- organization that are affected by the SCP might not be included in+-- the data. If the SCP is not attached to the account, the report will+-- return a list of services with no data.+--+-- Service last accessed data does not use other policy types when+-- determining whether a principal could access a service. These other+-- policy types include identity-based policies, resource-based policies,+-- access control lists, IAM permissions boundaries, and STS assume role+-- policies. It only applies SCP logic. For more about the evaluation of+-- policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics Evaluating policies>+-- in the /IAM User Guide/.+--+-- For more information about service last accessed data, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html Reducing policy scope by viewing user activity>+-- in the /IAM User Guide/.+module Amazonka.IAM.GenerateOrganizationsAccessReport+ ( -- * Creating a Request+ GenerateOrganizationsAccessReport (..),+ newGenerateOrganizationsAccessReport,++ -- * Request Lenses+ generateOrganizationsAccessReport_organizationsPolicyId,+ generateOrganizationsAccessReport_entityPath,++ -- * Destructuring the Response+ GenerateOrganizationsAccessReportResponse (..),+ newGenerateOrganizationsAccessReportResponse,++ -- * Response Lenses+ generateOrganizationsAccessReportResponse_jobId,+ generateOrganizationsAccessReportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGenerateOrganizationsAccessReport' smart constructor.+data GenerateOrganizationsAccessReport = GenerateOrganizationsAccessReport'+ { -- | The identifier of the Organizations service control policy (SCP). This+ -- parameter is optional.+ --+ -- This ID is used to generate information about when an account principal+ -- that is limited by the SCP attempted to access an Amazon Web Services+ -- service.+ organizationsPolicyId :: Prelude.Maybe Prelude.Text,+ -- | The path of the Organizations entity (root, OU, or account). You can+ -- build an entity path using the known structure of your organization. For+ -- example, assume that your account ID is @123456789012@ and its parent OU+ -- ID is @ou-rge0-awsabcde@. The organization root ID is+ -- @r-f6g7h8i9j0example@ and your organization ID is @o-a1b2c3d4e5@. Your+ -- entity path is+ -- @o-a1b2c3d4e5\/r-f6g7h8i9j0example\/ou-rge0-awsabcde\/123456789012@.+ entityPath :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GenerateOrganizationsAccessReport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'organizationsPolicyId', 'generateOrganizationsAccessReport_organizationsPolicyId' - The identifier of the Organizations service control policy (SCP). This+-- parameter is optional.+--+-- This ID is used to generate information about when an account principal+-- that is limited by the SCP attempted to access an Amazon Web Services+-- service.+--+-- 'entityPath', 'generateOrganizationsAccessReport_entityPath' - The path of the Organizations entity (root, OU, or account). You can+-- build an entity path using the known structure of your organization. For+-- example, assume that your account ID is @123456789012@ and its parent OU+-- ID is @ou-rge0-awsabcde@. The organization root ID is+-- @r-f6g7h8i9j0example@ and your organization ID is @o-a1b2c3d4e5@. Your+-- entity path is+-- @o-a1b2c3d4e5\/r-f6g7h8i9j0example\/ou-rge0-awsabcde\/123456789012@.+newGenerateOrganizationsAccessReport ::+ -- | 'entityPath'+ Prelude.Text ->+ GenerateOrganizationsAccessReport+newGenerateOrganizationsAccessReport pEntityPath_ =+ GenerateOrganizationsAccessReport'+ { organizationsPolicyId =+ Prelude.Nothing,+ entityPath = pEntityPath_+ }++-- | The identifier of the Organizations service control policy (SCP). This+-- parameter is optional.+--+-- This ID is used to generate information about when an account principal+-- that is limited by the SCP attempted to access an Amazon Web Services+-- service.+generateOrganizationsAccessReport_organizationsPolicyId :: Lens.Lens' GenerateOrganizationsAccessReport (Prelude.Maybe Prelude.Text)+generateOrganizationsAccessReport_organizationsPolicyId = Lens.lens (\GenerateOrganizationsAccessReport' {organizationsPolicyId} -> organizationsPolicyId) (\s@GenerateOrganizationsAccessReport' {} a -> s {organizationsPolicyId = a} :: GenerateOrganizationsAccessReport)++-- | The path of the Organizations entity (root, OU, or account). You can+-- build an entity path using the known structure of your organization. For+-- example, assume that your account ID is @123456789012@ and its parent OU+-- ID is @ou-rge0-awsabcde@. The organization root ID is+-- @r-f6g7h8i9j0example@ and your organization ID is @o-a1b2c3d4e5@. Your+-- entity path is+-- @o-a1b2c3d4e5\/r-f6g7h8i9j0example\/ou-rge0-awsabcde\/123456789012@.+generateOrganizationsAccessReport_entityPath :: Lens.Lens' GenerateOrganizationsAccessReport Prelude.Text+generateOrganizationsAccessReport_entityPath = Lens.lens (\GenerateOrganizationsAccessReport' {entityPath} -> entityPath) (\s@GenerateOrganizationsAccessReport' {} a -> s {entityPath = a} :: GenerateOrganizationsAccessReport)++instance+ Core.AWSRequest+ GenerateOrganizationsAccessReport+ where+ type+ AWSResponse GenerateOrganizationsAccessReport =+ GenerateOrganizationsAccessReportResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GenerateOrganizationsAccessReportResult"+ ( \s h x ->+ GenerateOrganizationsAccessReportResponse'+ Prelude.<$> (x Data..@? "JobId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ GenerateOrganizationsAccessReport+ where+ hashWithSalt+ _salt+ GenerateOrganizationsAccessReport' {..} =+ _salt+ `Prelude.hashWithSalt` organizationsPolicyId+ `Prelude.hashWithSalt` entityPath++instance+ Prelude.NFData+ GenerateOrganizationsAccessReport+ where+ rnf GenerateOrganizationsAccessReport' {..} =+ Prelude.rnf organizationsPolicyId+ `Prelude.seq` Prelude.rnf entityPath++instance+ Data.ToHeaders+ GenerateOrganizationsAccessReport+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ GenerateOrganizationsAccessReport+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ GenerateOrganizationsAccessReport+ where+ toQuery GenerateOrganizationsAccessReport' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GenerateOrganizationsAccessReport" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OrganizationsPolicyId"+ Data.=: organizationsPolicyId,+ "EntityPath" Data.=: entityPath+ ]++-- | /See:/ 'newGenerateOrganizationsAccessReportResponse' smart constructor.+data GenerateOrganizationsAccessReportResponse = GenerateOrganizationsAccessReportResponse'+ { -- | The job identifier that you can use in the GetOrganizationsAccessReport+ -- operation.+ jobId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GenerateOrganizationsAccessReportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'jobId', 'generateOrganizationsAccessReportResponse_jobId' - The job identifier that you can use in the GetOrganizationsAccessReport+-- operation.+--+-- 'httpStatus', 'generateOrganizationsAccessReportResponse_httpStatus' - The response's http status code.+newGenerateOrganizationsAccessReportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GenerateOrganizationsAccessReportResponse+newGenerateOrganizationsAccessReportResponse+ pHttpStatus_ =+ GenerateOrganizationsAccessReportResponse'+ { jobId =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The job identifier that you can use in the GetOrganizationsAccessReport+-- operation.+generateOrganizationsAccessReportResponse_jobId :: Lens.Lens' GenerateOrganizationsAccessReportResponse (Prelude.Maybe Prelude.Text)+generateOrganizationsAccessReportResponse_jobId = Lens.lens (\GenerateOrganizationsAccessReportResponse' {jobId} -> jobId) (\s@GenerateOrganizationsAccessReportResponse' {} a -> s {jobId = a} :: GenerateOrganizationsAccessReportResponse)++-- | The response's http status code.+generateOrganizationsAccessReportResponse_httpStatus :: Lens.Lens' GenerateOrganizationsAccessReportResponse Prelude.Int+generateOrganizationsAccessReportResponse_httpStatus = Lens.lens (\GenerateOrganizationsAccessReportResponse' {httpStatus} -> httpStatus) (\s@GenerateOrganizationsAccessReportResponse' {} a -> s {httpStatus = a} :: GenerateOrganizationsAccessReportResponse)++instance+ Prelude.NFData+ GenerateOrganizationsAccessReportResponse+ where+ rnf GenerateOrganizationsAccessReportResponse' {..} =+ Prelude.rnf jobId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GenerateServiceLastAccessedDetails.hs view
@@ -0,0 +1,292 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GenerateServiceLastAccessedDetails+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Generates a report that includes details about when an IAM resource+-- (user, group, role, or policy) was last used in an attempt to access+-- Amazon Web Services services. Recent activity usually appears within+-- four hours. IAM reports activity for at least the last 400 days, or less+-- if your Region began supporting this feature within the last year. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>.+--+-- The service last accessed data includes all attempts to access an Amazon+-- Web Services API, not just the successful ones. This includes all+-- attempts that were made using the Amazon Web Services Management+-- Console, the Amazon Web Services API through any of the SDKs, or any of+-- the command line tools. An unexpected entry in the service last accessed+-- data does not mean that your account has been compromised, because the+-- request might have been denied. Refer to your CloudTrail logs as the+-- authoritative source for information about all API calls and whether+-- they were successful or denied access. For more information,+-- see <https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-integration.html Logging IAM events with CloudTrail>+-- in the /IAM User Guide/.+--+-- The @GenerateServiceLastAccessedDetails@ operation returns a @JobId@.+-- Use this parameter in the following operations to retrieve the following+-- details from your report:+--+-- - GetServiceLastAccessedDetails – Use this operation for users,+-- groups, roles, or policies to list every Amazon Web Services service+-- that the resource could access using permissions policies. For each+-- service, the response includes information about the most recent+-- access attempt.+--+-- The @JobId@ returned by @GenerateServiceLastAccessedDetail@ must be+-- used by the same role within a session, or by the same user when+-- used to call @GetServiceLastAccessedDetail@.+--+-- - GetServiceLastAccessedDetailsWithEntities – Use this operation for+-- groups and policies to list information about the associated+-- entities (users or roles) that attempted to access a specific Amazon+-- Web Services service.+--+-- To check the status of the @GenerateServiceLastAccessedDetails@ request,+-- use the @JobId@ parameter in the same operations and test the+-- @JobStatus@ response parameter.+--+-- For additional information about the permissions policies that allow an+-- identity (user, group, or role) to access specific services, use the+-- ListPoliciesGrantingServiceAccess operation.+--+-- Service last accessed data does not use other policy types when+-- determining whether a resource could access a service. These other+-- policy types include resource-based policies, access control lists,+-- Organizations policies, IAM permissions boundaries, and STS assume role+-- policies. It only applies permissions policy logic. For more about the+-- evaluation of policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics Evaluating policies>+-- in the /IAM User Guide/.+--+-- For more information about service and action last accessed data, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html Reducing permissions using service last accessed data>+-- in the /IAM User Guide/.+module Amazonka.IAM.GenerateServiceLastAccessedDetails+ ( -- * Creating a Request+ GenerateServiceLastAccessedDetails (..),+ newGenerateServiceLastAccessedDetails,++ -- * Request Lenses+ generateServiceLastAccessedDetails_granularity,+ generateServiceLastAccessedDetails_arn,++ -- * Destructuring the Response+ GenerateServiceLastAccessedDetailsResponse (..),+ newGenerateServiceLastAccessedDetailsResponse,++ -- * Response Lenses+ generateServiceLastAccessedDetailsResponse_jobId,+ generateServiceLastAccessedDetailsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGenerateServiceLastAccessedDetails' smart constructor.+data GenerateServiceLastAccessedDetails = GenerateServiceLastAccessedDetails'+ { -- | The level of detail that you want to generate. You can specify whether+ -- you want to generate information about the last attempt to access+ -- services or actions. If you specify service-level granularity, this+ -- operation generates only service data. If you specify action-level+ -- granularity, it generates service and action data. If you don\'t include+ -- this optional parameter, the operation generates service data.+ granularity :: Prelude.Maybe AccessAdvisorUsageGranularityType,+ -- | The ARN of the IAM resource (user, group, role, or managed policy) used+ -- to generate information about when the resource was last used in an+ -- attempt to access an Amazon Web Services service.+ arn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GenerateServiceLastAccessedDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'granularity', 'generateServiceLastAccessedDetails_granularity' - The level of detail that you want to generate. You can specify whether+-- you want to generate information about the last attempt to access+-- services or actions. If you specify service-level granularity, this+-- operation generates only service data. If you specify action-level+-- granularity, it generates service and action data. If you don\'t include+-- this optional parameter, the operation generates service data.+--+-- 'arn', 'generateServiceLastAccessedDetails_arn' - The ARN of the IAM resource (user, group, role, or managed policy) used+-- to generate information about when the resource was last used in an+-- attempt to access an Amazon Web Services service.+newGenerateServiceLastAccessedDetails ::+ -- | 'arn'+ Prelude.Text ->+ GenerateServiceLastAccessedDetails+newGenerateServiceLastAccessedDetails pArn_ =+ GenerateServiceLastAccessedDetails'+ { granularity =+ Prelude.Nothing,+ arn = pArn_+ }++-- | The level of detail that you want to generate. You can specify whether+-- you want to generate information about the last attempt to access+-- services or actions. If you specify service-level granularity, this+-- operation generates only service data. If you specify action-level+-- granularity, it generates service and action data. If you don\'t include+-- this optional parameter, the operation generates service data.+generateServiceLastAccessedDetails_granularity :: Lens.Lens' GenerateServiceLastAccessedDetails (Prelude.Maybe AccessAdvisorUsageGranularityType)+generateServiceLastAccessedDetails_granularity = Lens.lens (\GenerateServiceLastAccessedDetails' {granularity} -> granularity) (\s@GenerateServiceLastAccessedDetails' {} a -> s {granularity = a} :: GenerateServiceLastAccessedDetails)++-- | The ARN of the IAM resource (user, group, role, or managed policy) used+-- to generate information about when the resource was last used in an+-- attempt to access an Amazon Web Services service.+generateServiceLastAccessedDetails_arn :: Lens.Lens' GenerateServiceLastAccessedDetails Prelude.Text+generateServiceLastAccessedDetails_arn = Lens.lens (\GenerateServiceLastAccessedDetails' {arn} -> arn) (\s@GenerateServiceLastAccessedDetails' {} a -> s {arn = a} :: GenerateServiceLastAccessedDetails)++instance+ Core.AWSRequest+ GenerateServiceLastAccessedDetails+ where+ type+ AWSResponse GenerateServiceLastAccessedDetails =+ GenerateServiceLastAccessedDetailsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GenerateServiceLastAccessedDetailsResult"+ ( \s h x ->+ GenerateServiceLastAccessedDetailsResponse'+ Prelude.<$> (x Data..@? "JobId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ GenerateServiceLastAccessedDetails+ where+ hashWithSalt+ _salt+ GenerateServiceLastAccessedDetails' {..} =+ _salt+ `Prelude.hashWithSalt` granularity+ `Prelude.hashWithSalt` arn++instance+ Prelude.NFData+ GenerateServiceLastAccessedDetails+ where+ rnf GenerateServiceLastAccessedDetails' {..} =+ Prelude.rnf granularity+ `Prelude.seq` Prelude.rnf arn++instance+ Data.ToHeaders+ GenerateServiceLastAccessedDetails+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ GenerateServiceLastAccessedDetails+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ GenerateServiceLastAccessedDetails+ where+ toQuery GenerateServiceLastAccessedDetails' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GenerateServiceLastAccessedDetails" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Granularity" Data.=: granularity,+ "Arn" Data.=: arn+ ]++-- | /See:/ 'newGenerateServiceLastAccessedDetailsResponse' smart constructor.+data GenerateServiceLastAccessedDetailsResponse = GenerateServiceLastAccessedDetailsResponse'+ { -- | The @JobId@ that you can use in the GetServiceLastAccessedDetails or+ -- GetServiceLastAccessedDetailsWithEntities operations. The @JobId@+ -- returned by @GenerateServiceLastAccessedDetail@ must be used by the same+ -- role within a session, or by the same user when used to call+ -- @GetServiceLastAccessedDetail@.+ jobId :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GenerateServiceLastAccessedDetailsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'jobId', 'generateServiceLastAccessedDetailsResponse_jobId' - The @JobId@ that you can use in the GetServiceLastAccessedDetails or+-- GetServiceLastAccessedDetailsWithEntities operations. The @JobId@+-- returned by @GenerateServiceLastAccessedDetail@ must be used by the same+-- role within a session, or by the same user when used to call+-- @GetServiceLastAccessedDetail@.+--+-- 'httpStatus', 'generateServiceLastAccessedDetailsResponse_httpStatus' - The response's http status code.+newGenerateServiceLastAccessedDetailsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GenerateServiceLastAccessedDetailsResponse+newGenerateServiceLastAccessedDetailsResponse+ pHttpStatus_ =+ GenerateServiceLastAccessedDetailsResponse'+ { jobId =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The @JobId@ that you can use in the GetServiceLastAccessedDetails or+-- GetServiceLastAccessedDetailsWithEntities operations. The @JobId@+-- returned by @GenerateServiceLastAccessedDetail@ must be used by the same+-- role within a session, or by the same user when used to call+-- @GetServiceLastAccessedDetail@.+generateServiceLastAccessedDetailsResponse_jobId :: Lens.Lens' GenerateServiceLastAccessedDetailsResponse (Prelude.Maybe Prelude.Text)+generateServiceLastAccessedDetailsResponse_jobId = Lens.lens (\GenerateServiceLastAccessedDetailsResponse' {jobId} -> jobId) (\s@GenerateServiceLastAccessedDetailsResponse' {} a -> s {jobId = a} :: GenerateServiceLastAccessedDetailsResponse)++-- | The response's http status code.+generateServiceLastAccessedDetailsResponse_httpStatus :: Lens.Lens' GenerateServiceLastAccessedDetailsResponse Prelude.Int+generateServiceLastAccessedDetailsResponse_httpStatus = Lens.lens (\GenerateServiceLastAccessedDetailsResponse' {httpStatus} -> httpStatus) (\s@GenerateServiceLastAccessedDetailsResponse' {} a -> s {httpStatus = a} :: GenerateServiceLastAccessedDetailsResponse)++instance+ Prelude.NFData+ GenerateServiceLastAccessedDetailsResponse+ where+ rnf GenerateServiceLastAccessedDetailsResponse' {..} =+ Prelude.rnf jobId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetAccessKeyLastUsed.hs view
@@ -0,0 +1,189 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetAccessKeyLastUsed+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about when the specified access key was last used.+-- The information includes the date and time of last use, along with the+-- Amazon Web Services service and Region that were specified in the last+-- request made with that key.+module Amazonka.IAM.GetAccessKeyLastUsed+ ( -- * Creating a Request+ GetAccessKeyLastUsed (..),+ newGetAccessKeyLastUsed,++ -- * Request Lenses+ getAccessKeyLastUsed_accessKeyId,++ -- * Destructuring the Response+ GetAccessKeyLastUsedResponse (..),+ newGetAccessKeyLastUsedResponse,++ -- * Response Lenses+ getAccessKeyLastUsedResponse_accessKeyLastUsed,+ getAccessKeyLastUsedResponse_userName,+ getAccessKeyLastUsedResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetAccessKeyLastUsed' smart constructor.+data GetAccessKeyLastUsed = GetAccessKeyLastUsed'+ { -- | The identifier of an access key.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ accessKeyId :: Core.AccessKey+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAccessKeyLastUsed' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessKeyId', 'getAccessKeyLastUsed_accessKeyId' - The identifier of an access key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+newGetAccessKeyLastUsed ::+ -- | 'accessKeyId'+ Core.AccessKey ->+ GetAccessKeyLastUsed+newGetAccessKeyLastUsed pAccessKeyId_ =+ GetAccessKeyLastUsed' {accessKeyId = pAccessKeyId_}++-- | The identifier of an access key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+getAccessKeyLastUsed_accessKeyId :: Lens.Lens' GetAccessKeyLastUsed Core.AccessKey+getAccessKeyLastUsed_accessKeyId = Lens.lens (\GetAccessKeyLastUsed' {accessKeyId} -> accessKeyId) (\s@GetAccessKeyLastUsed' {} a -> s {accessKeyId = a} :: GetAccessKeyLastUsed)++instance Core.AWSRequest GetAccessKeyLastUsed where+ type+ AWSResponse GetAccessKeyLastUsed =+ GetAccessKeyLastUsedResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetAccessKeyLastUsedResult"+ ( \s h x ->+ GetAccessKeyLastUsedResponse'+ Prelude.<$> (x Data..@? "AccessKeyLastUsed")+ Prelude.<*> (x Data..@? "UserName")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetAccessKeyLastUsed where+ hashWithSalt _salt GetAccessKeyLastUsed' {..} =+ _salt `Prelude.hashWithSalt` accessKeyId++instance Prelude.NFData GetAccessKeyLastUsed where+ rnf GetAccessKeyLastUsed' {..} =+ Prelude.rnf accessKeyId++instance Data.ToHeaders GetAccessKeyLastUsed where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetAccessKeyLastUsed where+ toPath = Prelude.const "/"++instance Data.ToQuery GetAccessKeyLastUsed where+ toQuery GetAccessKeyLastUsed' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetAccessKeyLastUsed" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "AccessKeyId" Data.=: accessKeyId+ ]++-- | Contains the response to a successful GetAccessKeyLastUsed request. It+-- is also returned as a member of the AccessKeyMetaData structure returned+-- by the ListAccessKeys action.+--+-- /See:/ 'newGetAccessKeyLastUsedResponse' smart constructor.+data GetAccessKeyLastUsedResponse = GetAccessKeyLastUsedResponse'+ { -- | Contains information about the last time the access key was used.+ accessKeyLastUsed :: Prelude.Maybe AccessKeyLastUsed,+ -- | The name of the IAM user that owns this access key.+ userName :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAccessKeyLastUsedResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessKeyLastUsed', 'getAccessKeyLastUsedResponse_accessKeyLastUsed' - Contains information about the last time the access key was used.+--+-- 'userName', 'getAccessKeyLastUsedResponse_userName' - The name of the IAM user that owns this access key.+--+-- 'httpStatus', 'getAccessKeyLastUsedResponse_httpStatus' - The response's http status code.+newGetAccessKeyLastUsedResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetAccessKeyLastUsedResponse+newGetAccessKeyLastUsedResponse pHttpStatus_ =+ GetAccessKeyLastUsedResponse'+ { accessKeyLastUsed =+ Prelude.Nothing,+ userName = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Contains information about the last time the access key was used.+getAccessKeyLastUsedResponse_accessKeyLastUsed :: Lens.Lens' GetAccessKeyLastUsedResponse (Prelude.Maybe AccessKeyLastUsed)+getAccessKeyLastUsedResponse_accessKeyLastUsed = Lens.lens (\GetAccessKeyLastUsedResponse' {accessKeyLastUsed} -> accessKeyLastUsed) (\s@GetAccessKeyLastUsedResponse' {} a -> s {accessKeyLastUsed = a} :: GetAccessKeyLastUsedResponse)++-- | The name of the IAM user that owns this access key.+getAccessKeyLastUsedResponse_userName :: Lens.Lens' GetAccessKeyLastUsedResponse (Prelude.Maybe Prelude.Text)+getAccessKeyLastUsedResponse_userName = Lens.lens (\GetAccessKeyLastUsedResponse' {userName} -> userName) (\s@GetAccessKeyLastUsedResponse' {} a -> s {userName = a} :: GetAccessKeyLastUsedResponse)++-- | The response's http status code.+getAccessKeyLastUsedResponse_httpStatus :: Lens.Lens' GetAccessKeyLastUsedResponse Prelude.Int+getAccessKeyLastUsedResponse_httpStatus = Lens.lens (\GetAccessKeyLastUsedResponse' {httpStatus} -> httpStatus) (\s@GetAccessKeyLastUsedResponse' {} a -> s {httpStatus = a} :: GetAccessKeyLastUsedResponse)++instance Prelude.NFData GetAccessKeyLastUsedResponse where+ rnf GetAccessKeyLastUsedResponse' {..} =+ Prelude.rnf accessKeyLastUsed+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetAccountAuthorizationDetails.hs view
@@ -0,0 +1,400 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetAccountAuthorizationDetails+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about all IAM users, groups, roles, and policies+-- in your Amazon Web Services account, including their relationships to+-- one another. Use this operation to obtain a snapshot of the+-- configuration of IAM permissions (users, groups, roles, and policies) in+-- your account.+--+-- Policies returned by this operation are URL-encoded compliant with+-- <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+-- decoding method to convert the policy back to plain JSON text. For+-- example, if you use Java, you can use the @decode@ method of the+-- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+-- SDKs provide similar functionality.+--+-- You can optionally filter the results using the @Filter@ parameter. You+-- can paginate the results using the @MaxItems@ and @Marker@ parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.GetAccountAuthorizationDetails+ ( -- * Creating a Request+ GetAccountAuthorizationDetails (..),+ newGetAccountAuthorizationDetails,++ -- * Request Lenses+ getAccountAuthorizationDetails_filter,+ getAccountAuthorizationDetails_marker,+ getAccountAuthorizationDetails_maxItems,++ -- * Destructuring the Response+ GetAccountAuthorizationDetailsResponse (..),+ newGetAccountAuthorizationDetailsResponse,++ -- * Response Lenses+ getAccountAuthorizationDetailsResponse_groupDetailList,+ getAccountAuthorizationDetailsResponse_isTruncated,+ getAccountAuthorizationDetailsResponse_marker,+ getAccountAuthorizationDetailsResponse_policies,+ getAccountAuthorizationDetailsResponse_roleDetailList,+ getAccountAuthorizationDetailsResponse_userDetailList,+ getAccountAuthorizationDetailsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetAccountAuthorizationDetails' smart constructor.+data GetAccountAuthorizationDetails = GetAccountAuthorizationDetails'+ { -- | A list of entity types used to filter the results. Only the entities+ -- that match the types you specify are included in the output. Use the+ -- value @LocalManagedPolicy@ to include customer managed policies.+ --+ -- The format for this parameter is a comma-separated (if more than one)+ -- list of strings. Each string value in the list must be one of the valid+ -- values listed below.+ filter' :: Prelude.Maybe [EntityType],+ -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAccountAuthorizationDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filter'', 'getAccountAuthorizationDetails_filter' - A list of entity types used to filter the results. Only the entities+-- that match the types you specify are included in the output. Use the+-- value @LocalManagedPolicy@ to include customer managed policies.+--+-- The format for this parameter is a comma-separated (if more than one)+-- list of strings. Each string value in the list must be one of the valid+-- values listed below.+--+-- 'marker', 'getAccountAuthorizationDetails_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'getAccountAuthorizationDetails_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+newGetAccountAuthorizationDetails ::+ GetAccountAuthorizationDetails+newGetAccountAuthorizationDetails =+ GetAccountAuthorizationDetails'+ { filter' =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ maxItems = Prelude.Nothing+ }++-- | A list of entity types used to filter the results. Only the entities+-- that match the types you specify are included in the output. Use the+-- value @LocalManagedPolicy@ to include customer managed policies.+--+-- The format for this parameter is a comma-separated (if more than one)+-- list of strings. Each string value in the list must be one of the valid+-- values listed below.+getAccountAuthorizationDetails_filter :: Lens.Lens' GetAccountAuthorizationDetails (Prelude.Maybe [EntityType])+getAccountAuthorizationDetails_filter = Lens.lens (\GetAccountAuthorizationDetails' {filter'} -> filter') (\s@GetAccountAuthorizationDetails' {} a -> s {filter' = a} :: GetAccountAuthorizationDetails) Prelude.. Lens.mapping Lens.coerced++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+getAccountAuthorizationDetails_marker :: Lens.Lens' GetAccountAuthorizationDetails (Prelude.Maybe Prelude.Text)+getAccountAuthorizationDetails_marker = Lens.lens (\GetAccountAuthorizationDetails' {marker} -> marker) (\s@GetAccountAuthorizationDetails' {} a -> s {marker = a} :: GetAccountAuthorizationDetails)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+getAccountAuthorizationDetails_maxItems :: Lens.Lens' GetAccountAuthorizationDetails (Prelude.Maybe Prelude.Natural)+getAccountAuthorizationDetails_maxItems = Lens.lens (\GetAccountAuthorizationDetails' {maxItems} -> maxItems) (\s@GetAccountAuthorizationDetails' {} a -> s {maxItems = a} :: GetAccountAuthorizationDetails)++instance Core.AWSPager GetAccountAuthorizationDetails where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? getAccountAuthorizationDetailsResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? getAccountAuthorizationDetailsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& getAccountAuthorizationDetails_marker+ Lens..~ rs+ Lens.^? getAccountAuthorizationDetailsResponse_marker+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ GetAccountAuthorizationDetails+ where+ type+ AWSResponse GetAccountAuthorizationDetails =+ GetAccountAuthorizationDetailsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetAccountAuthorizationDetailsResult"+ ( \s h x ->+ GetAccountAuthorizationDetailsResponse'+ Prelude.<$> ( x+ Data..@? "GroupDetailList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "Policies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "RoleDetailList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "UserDetailList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ GetAccountAuthorizationDetails+ where+ hashWithSalt+ _salt+ GetAccountAuthorizationDetails' {..} =+ _salt+ `Prelude.hashWithSalt` filter'+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems++instance+ Prelude.NFData+ GetAccountAuthorizationDetails+ where+ rnf GetAccountAuthorizationDetails' {..} =+ Prelude.rnf filter'+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems++instance+ Data.ToHeaders+ GetAccountAuthorizationDetails+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetAccountAuthorizationDetails where+ toPath = Prelude.const "/"++instance Data.ToQuery GetAccountAuthorizationDetails where+ toQuery GetAccountAuthorizationDetails' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GetAccountAuthorizationDetails" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Filter"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> filter'),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems+ ]++-- | Contains the response to a successful GetAccountAuthorizationDetails+-- request.+--+-- /See:/ 'newGetAccountAuthorizationDetailsResponse' smart constructor.+data GetAccountAuthorizationDetailsResponse = GetAccountAuthorizationDetailsResponse'+ { -- | A list containing information about IAM groups.+ groupDetailList :: Prelude.Maybe [GroupDetail],+ -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | A list containing information about managed policies.+ policies :: Prelude.Maybe [ManagedPolicyDetail],+ -- | A list containing information about IAM roles.+ roleDetailList :: Prelude.Maybe [RoleDetail],+ -- | A list containing information about IAM users.+ userDetailList :: Prelude.Maybe [UserDetail],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAccountAuthorizationDetailsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupDetailList', 'getAccountAuthorizationDetailsResponse_groupDetailList' - A list containing information about IAM groups.+--+-- 'isTruncated', 'getAccountAuthorizationDetailsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'getAccountAuthorizationDetailsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'policies', 'getAccountAuthorizationDetailsResponse_policies' - A list containing information about managed policies.+--+-- 'roleDetailList', 'getAccountAuthorizationDetailsResponse_roleDetailList' - A list containing information about IAM roles.+--+-- 'userDetailList', 'getAccountAuthorizationDetailsResponse_userDetailList' - A list containing information about IAM users.+--+-- 'httpStatus', 'getAccountAuthorizationDetailsResponse_httpStatus' - The response's http status code.+newGetAccountAuthorizationDetailsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetAccountAuthorizationDetailsResponse+newGetAccountAuthorizationDetailsResponse+ pHttpStatus_ =+ GetAccountAuthorizationDetailsResponse'+ { groupDetailList =+ Prelude.Nothing,+ isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing,+ policies = Prelude.Nothing,+ roleDetailList = Prelude.Nothing,+ userDetailList = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list containing information about IAM groups.+getAccountAuthorizationDetailsResponse_groupDetailList :: Lens.Lens' GetAccountAuthorizationDetailsResponse (Prelude.Maybe [GroupDetail])+getAccountAuthorizationDetailsResponse_groupDetailList = Lens.lens (\GetAccountAuthorizationDetailsResponse' {groupDetailList} -> groupDetailList) (\s@GetAccountAuthorizationDetailsResponse' {} a -> s {groupDetailList = a} :: GetAccountAuthorizationDetailsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+getAccountAuthorizationDetailsResponse_isTruncated :: Lens.Lens' GetAccountAuthorizationDetailsResponse (Prelude.Maybe Prelude.Bool)+getAccountAuthorizationDetailsResponse_isTruncated = Lens.lens (\GetAccountAuthorizationDetailsResponse' {isTruncated} -> isTruncated) (\s@GetAccountAuthorizationDetailsResponse' {} a -> s {isTruncated = a} :: GetAccountAuthorizationDetailsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+getAccountAuthorizationDetailsResponse_marker :: Lens.Lens' GetAccountAuthorizationDetailsResponse (Prelude.Maybe Prelude.Text)+getAccountAuthorizationDetailsResponse_marker = Lens.lens (\GetAccountAuthorizationDetailsResponse' {marker} -> marker) (\s@GetAccountAuthorizationDetailsResponse' {} a -> s {marker = a} :: GetAccountAuthorizationDetailsResponse)++-- | A list containing information about managed policies.+getAccountAuthorizationDetailsResponse_policies :: Lens.Lens' GetAccountAuthorizationDetailsResponse (Prelude.Maybe [ManagedPolicyDetail])+getAccountAuthorizationDetailsResponse_policies = Lens.lens (\GetAccountAuthorizationDetailsResponse' {policies} -> policies) (\s@GetAccountAuthorizationDetailsResponse' {} a -> s {policies = a} :: GetAccountAuthorizationDetailsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list containing information about IAM roles.+getAccountAuthorizationDetailsResponse_roleDetailList :: Lens.Lens' GetAccountAuthorizationDetailsResponse (Prelude.Maybe [RoleDetail])+getAccountAuthorizationDetailsResponse_roleDetailList = Lens.lens (\GetAccountAuthorizationDetailsResponse' {roleDetailList} -> roleDetailList) (\s@GetAccountAuthorizationDetailsResponse' {} a -> s {roleDetailList = a} :: GetAccountAuthorizationDetailsResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list containing information about IAM users.+getAccountAuthorizationDetailsResponse_userDetailList :: Lens.Lens' GetAccountAuthorizationDetailsResponse (Prelude.Maybe [UserDetail])+getAccountAuthorizationDetailsResponse_userDetailList = Lens.lens (\GetAccountAuthorizationDetailsResponse' {userDetailList} -> userDetailList) (\s@GetAccountAuthorizationDetailsResponse' {} a -> s {userDetailList = a} :: GetAccountAuthorizationDetailsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getAccountAuthorizationDetailsResponse_httpStatus :: Lens.Lens' GetAccountAuthorizationDetailsResponse Prelude.Int+getAccountAuthorizationDetailsResponse_httpStatus = Lens.lens (\GetAccountAuthorizationDetailsResponse' {httpStatus} -> httpStatus) (\s@GetAccountAuthorizationDetailsResponse' {} a -> s {httpStatus = a} :: GetAccountAuthorizationDetailsResponse)++instance+ Prelude.NFData+ GetAccountAuthorizationDetailsResponse+ where+ rnf GetAccountAuthorizationDetailsResponse' {..} =+ Prelude.rnf groupDetailList+ `Prelude.seq` Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf policies+ `Prelude.seq` Prelude.rnf roleDetailList+ `Prelude.seq` Prelude.rnf userDetailList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetAccountPasswordPolicy.hs view
@@ -0,0 +1,156 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetAccountPasswordPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves the password policy for the Amazon Web Services account. This+-- tells you the complexity requirements and mandatory rotation periods for+-- the IAM user passwords in your account. For more information about using+-- a password policy, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingPasswordPolicies.html Managing an IAM password policy>.+module Amazonka.IAM.GetAccountPasswordPolicy+ ( -- * Creating a Request+ GetAccountPasswordPolicy (..),+ newGetAccountPasswordPolicy,++ -- * Destructuring the Response+ GetAccountPasswordPolicyResponse (..),+ newGetAccountPasswordPolicyResponse,++ -- * Response Lenses+ getAccountPasswordPolicyResponse_httpStatus,+ getAccountPasswordPolicyResponse_passwordPolicy,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetAccountPasswordPolicy' smart constructor.+data GetAccountPasswordPolicy = GetAccountPasswordPolicy'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAccountPasswordPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newGetAccountPasswordPolicy ::+ GetAccountPasswordPolicy+newGetAccountPasswordPolicy =+ GetAccountPasswordPolicy'++instance Core.AWSRequest GetAccountPasswordPolicy where+ type+ AWSResponse GetAccountPasswordPolicy =+ GetAccountPasswordPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetAccountPasswordPolicyResult"+ ( \s h x ->+ GetAccountPasswordPolicyResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "PasswordPolicy")+ )++instance Prelude.Hashable GetAccountPasswordPolicy where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData GetAccountPasswordPolicy where+ rnf _ = ()++instance Data.ToHeaders GetAccountPasswordPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetAccountPasswordPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery GetAccountPasswordPolicy where+ toQuery =+ Prelude.const+ ( Prelude.mconcat+ [ "Action"+ Data.=: ("GetAccountPasswordPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString)+ ]+ )++-- | Contains the response to a successful GetAccountPasswordPolicy request.+--+-- /See:/ 'newGetAccountPasswordPolicyResponse' smart constructor.+data GetAccountPasswordPolicyResponse = GetAccountPasswordPolicyResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure that contains details about the account\'s password policy.+ passwordPolicy :: PasswordPolicy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAccountPasswordPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getAccountPasswordPolicyResponse_httpStatus' - The response's http status code.+--+-- 'passwordPolicy', 'getAccountPasswordPolicyResponse_passwordPolicy' - A structure that contains details about the account\'s password policy.+newGetAccountPasswordPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'passwordPolicy'+ PasswordPolicy ->+ GetAccountPasswordPolicyResponse+newGetAccountPasswordPolicyResponse+ pHttpStatus_+ pPasswordPolicy_ =+ GetAccountPasswordPolicyResponse'+ { httpStatus =+ pHttpStatus_,+ passwordPolicy = pPasswordPolicy_+ }++-- | The response's http status code.+getAccountPasswordPolicyResponse_httpStatus :: Lens.Lens' GetAccountPasswordPolicyResponse Prelude.Int+getAccountPasswordPolicyResponse_httpStatus = Lens.lens (\GetAccountPasswordPolicyResponse' {httpStatus} -> httpStatus) (\s@GetAccountPasswordPolicyResponse' {} a -> s {httpStatus = a} :: GetAccountPasswordPolicyResponse)++-- | A structure that contains details about the account\'s password policy.+getAccountPasswordPolicyResponse_passwordPolicy :: Lens.Lens' GetAccountPasswordPolicyResponse PasswordPolicy+getAccountPasswordPolicyResponse_passwordPolicy = Lens.lens (\GetAccountPasswordPolicyResponse' {passwordPolicy} -> passwordPolicy) (\s@GetAccountPasswordPolicyResponse' {} a -> s {passwordPolicy = a} :: GetAccountPasswordPolicyResponse)++instance+ Prelude.NFData+ GetAccountPasswordPolicyResponse+ where+ rnf GetAccountPasswordPolicyResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf passwordPolicy
+ gen/Amazonka/IAM/GetAccountSummary.hs view
@@ -0,0 +1,156 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetAccountSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about IAM entity usage and IAM quotas in the+-- Amazon Web Services account.+--+-- For information about IAM quotas, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+module Amazonka.IAM.GetAccountSummary+ ( -- * Creating a Request+ GetAccountSummary (..),+ newGetAccountSummary,++ -- * Destructuring the Response+ GetAccountSummaryResponse (..),+ newGetAccountSummaryResponse,++ -- * Response Lenses+ getAccountSummaryResponse_summaryMap,+ getAccountSummaryResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetAccountSummary' smart constructor.+data GetAccountSummary = GetAccountSummary'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAccountSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newGetAccountSummary ::+ GetAccountSummary+newGetAccountSummary = GetAccountSummary'++instance Core.AWSRequest GetAccountSummary where+ type+ AWSResponse GetAccountSummary =+ GetAccountSummaryResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetAccountSummaryResult"+ ( \s h x ->+ GetAccountSummaryResponse'+ Prelude.<$> ( x+ Data..@? "SummaryMap"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLMap "entry" "key" "value")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetAccountSummary where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData GetAccountSummary where+ rnf _ = ()++instance Data.ToHeaders GetAccountSummary where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetAccountSummary where+ toPath = Prelude.const "/"++instance Data.ToQuery GetAccountSummary where+ toQuery =+ Prelude.const+ ( Prelude.mconcat+ [ "Action"+ Data.=: ("GetAccountSummary" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString)+ ]+ )++-- | Contains the response to a successful GetAccountSummary request.+--+-- /See:/ 'newGetAccountSummaryResponse' smart constructor.+data GetAccountSummaryResponse = GetAccountSummaryResponse'+ { -- | A set of key–value pairs containing information about IAM entity usage+ -- and IAM quotas.+ summaryMap :: Prelude.Maybe (Prelude.HashMap SummaryKeyType Prelude.Int),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetAccountSummaryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'summaryMap', 'getAccountSummaryResponse_summaryMap' - A set of key–value pairs containing information about IAM entity usage+-- and IAM quotas.+--+-- 'httpStatus', 'getAccountSummaryResponse_httpStatus' - The response's http status code.+newGetAccountSummaryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetAccountSummaryResponse+newGetAccountSummaryResponse pHttpStatus_ =+ GetAccountSummaryResponse'+ { summaryMap =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A set of key–value pairs containing information about IAM entity usage+-- and IAM quotas.+getAccountSummaryResponse_summaryMap :: Lens.Lens' GetAccountSummaryResponse (Prelude.Maybe (Prelude.HashMap SummaryKeyType Prelude.Int))+getAccountSummaryResponse_summaryMap = Lens.lens (\GetAccountSummaryResponse' {summaryMap} -> summaryMap) (\s@GetAccountSummaryResponse' {} a -> s {summaryMap = a} :: GetAccountSummaryResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getAccountSummaryResponse_httpStatus :: Lens.Lens' GetAccountSummaryResponse Prelude.Int+getAccountSummaryResponse_httpStatus = Lens.lens (\GetAccountSummaryResponse' {httpStatus} -> httpStatus) (\s@GetAccountSummaryResponse' {} a -> s {httpStatus = a} :: GetAccountSummaryResponse)++instance Prelude.NFData GetAccountSummaryResponse where+ rnf GetAccountSummaryResponse' {..} =+ Prelude.rnf summaryMap+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetContextKeysForCustomPolicy.hs view
@@ -0,0 +1,172 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetContextKeysForCustomPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of all of the context keys referenced in the input policies.+-- The policies are supplied as a list of one or more strings. To get the+-- context keys from policies associated with an IAM user, group, or role,+-- use GetContextKeysForPrincipalPolicy.+--+-- Context keys are variables maintained by Amazon Web Services and its+-- services that provide details about the context of an API query request.+-- Context keys can be evaluated by testing against a value specified in an+-- IAM policy. Use @GetContextKeysForCustomPolicy@ to understand what key+-- names and values you must supply when you call SimulateCustomPolicy.+-- Note that all parameters are shown in unencoded form here for clarity+-- but must be URL encoded to be included as a part of a real HTML request.+module Amazonka.IAM.GetContextKeysForCustomPolicy+ ( -- * Creating a Request+ GetContextKeysForCustomPolicy (..),+ newGetContextKeysForCustomPolicy,++ -- * Request Lenses+ getContextKeysForCustomPolicy_policyInputList,++ -- * Destructuring the Response+ GetContextKeysForPolicyResponse (..),+ newGetContextKeysForPolicyResponse,++ -- * Response Lenses+ getContextKeysForPolicyResponse_contextKeyNames,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetContextKeysForCustomPolicy' smart constructor.+data GetContextKeysForCustomPolicy = GetContextKeysForCustomPolicy'+ { -- | A list of policies for which you want the list of context keys+ -- referenced in those policies. Each document is specified as a string+ -- containing the complete, valid JSON text of an IAM policy.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyInputList :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetContextKeysForCustomPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyInputList', 'getContextKeysForCustomPolicy_policyInputList' - A list of policies for which you want the list of context keys+-- referenced in those policies. Each document is specified as a string+-- containing the complete, valid JSON text of an IAM policy.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newGetContextKeysForCustomPolicy ::+ GetContextKeysForCustomPolicy+newGetContextKeysForCustomPolicy =+ GetContextKeysForCustomPolicy'+ { policyInputList =+ Prelude.mempty+ }++-- | A list of policies for which you want the list of context keys+-- referenced in those policies. Each document is specified as a string+-- containing the complete, valid JSON text of an IAM policy.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+getContextKeysForCustomPolicy_policyInputList :: Lens.Lens' GetContextKeysForCustomPolicy [Prelude.Text]+getContextKeysForCustomPolicy_policyInputList = Lens.lens (\GetContextKeysForCustomPolicy' {policyInputList} -> policyInputList) (\s@GetContextKeysForCustomPolicy' {} a -> s {policyInputList = a} :: GetContextKeysForCustomPolicy) Prelude.. Lens.coerced++instance+ Core.AWSRequest+ GetContextKeysForCustomPolicy+ where+ type+ AWSResponse GetContextKeysForCustomPolicy =+ GetContextKeysForPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetContextKeysForCustomPolicyResult"+ (\s h x -> Data.parseXML x)++instance+ Prelude.Hashable+ GetContextKeysForCustomPolicy+ where+ hashWithSalt _salt GetContextKeysForCustomPolicy' {..} =+ _salt `Prelude.hashWithSalt` policyInputList++instance Prelude.NFData GetContextKeysForCustomPolicy where+ rnf GetContextKeysForCustomPolicy' {..} =+ Prelude.rnf policyInputList++instance Data.ToHeaders GetContextKeysForCustomPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetContextKeysForCustomPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery GetContextKeysForCustomPolicy where+ toQuery GetContextKeysForCustomPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GetContextKeysForCustomPolicy" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyInputList"+ Data.=: Data.toQueryList "member" policyInputList+ ]
+ gen/Amazonka/IAM/GetContextKeysForPrincipalPolicy.hs view
@@ -0,0 +1,240 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetContextKeysForPrincipalPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets a list of all of the context keys referenced in all the IAM+-- policies that are attached to the specified IAM entity. The entity can+-- be an IAM user, group, or role. If you specify a user, then the request+-- also includes all of the policies attached to groups that the user is a+-- member of.+--+-- You can optionally include a list of one or more additional policies,+-- specified as strings. If you want to include /only/ a list of policies+-- by string, use GetContextKeysForCustomPolicy instead.+--+-- __Note:__ This operation discloses information about the permissions+-- granted to other users. If you do not want users to see other user\'s+-- permissions, then consider allowing them to use+-- GetContextKeysForCustomPolicy instead.+--+-- Context keys are variables maintained by Amazon Web Services and its+-- services that provide details about the context of an API query request.+-- Context keys can be evaluated by testing against a value in an IAM+-- policy. Use GetContextKeysForPrincipalPolicy to understand what key+-- names and values you must supply when you call SimulatePrincipalPolicy.+module Amazonka.IAM.GetContextKeysForPrincipalPolicy+ ( -- * Creating a Request+ GetContextKeysForPrincipalPolicy (..),+ newGetContextKeysForPrincipalPolicy,++ -- * Request Lenses+ getContextKeysForPrincipalPolicy_policyInputList,+ getContextKeysForPrincipalPolicy_policySourceArn,++ -- * Destructuring the Response+ GetContextKeysForPolicyResponse (..),+ newGetContextKeysForPolicyResponse,++ -- * Response Lenses+ getContextKeysForPolicyResponse_contextKeyNames,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetContextKeysForPrincipalPolicy' smart constructor.+data GetContextKeysForPrincipalPolicy = GetContextKeysForPrincipalPolicy'+ { -- | An optional list of additional policies for which you want the list of+ -- context keys that are referenced.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyInputList :: Prelude.Maybe [Prelude.Text],+ -- | The ARN of a user, group, or role whose policies contain the context+ -- keys that you want listed. If you specify a user, the list includes+ -- context keys that are found in all policies that are attached to the+ -- user. The list also includes all groups that the user is a member of. If+ -- you pick a group or a role, then it includes only those context keys+ -- that are found in policies attached to that entity. Note that all+ -- parameters are shown in unencoded form here for clarity, but must be URL+ -- encoded to be included as a part of a real HTML request.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policySourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetContextKeysForPrincipalPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyInputList', 'getContextKeysForPrincipalPolicy_policyInputList' - An optional list of additional policies for which you want the list of+-- context keys that are referenced.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'policySourceArn', 'getContextKeysForPrincipalPolicy_policySourceArn' - The ARN of a user, group, or role whose policies contain the context+-- keys that you want listed. If you specify a user, the list includes+-- context keys that are found in all policies that are attached to the+-- user. The list also includes all groups that the user is a member of. If+-- you pick a group or a role, then it includes only those context keys+-- that are found in policies attached to that entity. Note that all+-- parameters are shown in unencoded form here for clarity, but must be URL+-- encoded to be included as a part of a real HTML request.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newGetContextKeysForPrincipalPolicy ::+ -- | 'policySourceArn'+ Prelude.Text ->+ GetContextKeysForPrincipalPolicy+newGetContextKeysForPrincipalPolicy pPolicySourceArn_ =+ GetContextKeysForPrincipalPolicy'+ { policyInputList =+ Prelude.Nothing,+ policySourceArn = pPolicySourceArn_+ }++-- | An optional list of additional policies for which you want the list of+-- context keys that are referenced.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+getContextKeysForPrincipalPolicy_policyInputList :: Lens.Lens' GetContextKeysForPrincipalPolicy (Prelude.Maybe [Prelude.Text])+getContextKeysForPrincipalPolicy_policyInputList = Lens.lens (\GetContextKeysForPrincipalPolicy' {policyInputList} -> policyInputList) (\s@GetContextKeysForPrincipalPolicy' {} a -> s {policyInputList = a} :: GetContextKeysForPrincipalPolicy) Prelude.. Lens.mapping Lens.coerced++-- | The ARN of a user, group, or role whose policies contain the context+-- keys that you want listed. If you specify a user, the list includes+-- context keys that are found in all policies that are attached to the+-- user. The list also includes all groups that the user is a member of. If+-- you pick a group or a role, then it includes only those context keys+-- that are found in policies attached to that entity. Note that all+-- parameters are shown in unencoded form here for clarity, but must be URL+-- encoded to be included as a part of a real HTML request.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+getContextKeysForPrincipalPolicy_policySourceArn :: Lens.Lens' GetContextKeysForPrincipalPolicy Prelude.Text+getContextKeysForPrincipalPolicy_policySourceArn = Lens.lens (\GetContextKeysForPrincipalPolicy' {policySourceArn} -> policySourceArn) (\s@GetContextKeysForPrincipalPolicy' {} a -> s {policySourceArn = a} :: GetContextKeysForPrincipalPolicy)++instance+ Core.AWSRequest+ GetContextKeysForPrincipalPolicy+ where+ type+ AWSResponse GetContextKeysForPrincipalPolicy =+ GetContextKeysForPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetContextKeysForPrincipalPolicyResult"+ (\s h x -> Data.parseXML x)++instance+ Prelude.Hashable+ GetContextKeysForPrincipalPolicy+ where+ hashWithSalt+ _salt+ GetContextKeysForPrincipalPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` policyInputList+ `Prelude.hashWithSalt` policySourceArn++instance+ Prelude.NFData+ GetContextKeysForPrincipalPolicy+ where+ rnf GetContextKeysForPrincipalPolicy' {..} =+ Prelude.rnf policyInputList+ `Prelude.seq` Prelude.rnf policySourceArn++instance+ Data.ToHeaders+ GetContextKeysForPrincipalPolicy+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetContextKeysForPrincipalPolicy where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ GetContextKeysForPrincipalPolicy+ where+ toQuery GetContextKeysForPrincipalPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GetContextKeysForPrincipalPolicy" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyInputList"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> policyInputList+ ),+ "PolicySourceArn" Data.=: policySourceArn+ ]
+ gen/Amazonka/IAM/GetCredentialReport.hs view
@@ -0,0 +1,182 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetCredentialReport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a credential report for the Amazon Web Services account. For+-- more information about the credential report, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Getting credential reports>+-- in the /IAM User Guide/.+module Amazonka.IAM.GetCredentialReport+ ( -- * Creating a Request+ GetCredentialReport (..),+ newGetCredentialReport,++ -- * Destructuring the Response+ GetCredentialReportResponse (..),+ newGetCredentialReportResponse,++ -- * Response Lenses+ getCredentialReportResponse_content,+ getCredentialReportResponse_generatedTime,+ getCredentialReportResponse_reportFormat,+ getCredentialReportResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetCredentialReport' smart constructor.+data GetCredentialReport = GetCredentialReport'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetCredentialReport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newGetCredentialReport ::+ GetCredentialReport+newGetCredentialReport = GetCredentialReport'++instance Core.AWSRequest GetCredentialReport where+ type+ AWSResponse GetCredentialReport =+ GetCredentialReportResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetCredentialReportResult"+ ( \s h x ->+ GetCredentialReportResponse'+ Prelude.<$> (x Data..@? "Content")+ Prelude.<*> (x Data..@? "GeneratedTime")+ Prelude.<*> (x Data..@? "ReportFormat")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetCredentialReport where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData GetCredentialReport where+ rnf _ = ()++instance Data.ToHeaders GetCredentialReport where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetCredentialReport where+ toPath = Prelude.const "/"++instance Data.ToQuery GetCredentialReport where+ toQuery =+ Prelude.const+ ( Prelude.mconcat+ [ "Action"+ Data.=: ("GetCredentialReport" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString)+ ]+ )++-- | Contains the response to a successful GetCredentialReport request.+--+-- /See:/ 'newGetCredentialReportResponse' smart constructor.+data GetCredentialReportResponse = GetCredentialReportResponse'+ { -- | Contains the credential report. The report is Base64-encoded.+ content :: Prelude.Maybe Data.Base64,+ -- | The date and time when the credential report was created, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>.+ generatedTime :: Prelude.Maybe Data.ISO8601,+ -- | The format (MIME type) of the credential report.+ reportFormat :: Prelude.Maybe ReportFormatType,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetCredentialReportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'content', 'getCredentialReportResponse_content' - Contains the credential report. The report is Base64-encoded.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+--+-- 'generatedTime', 'getCredentialReportResponse_generatedTime' - The date and time when the credential report was created, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>.+--+-- 'reportFormat', 'getCredentialReportResponse_reportFormat' - The format (MIME type) of the credential report.+--+-- 'httpStatus', 'getCredentialReportResponse_httpStatus' - The response's http status code.+newGetCredentialReportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetCredentialReportResponse+newGetCredentialReportResponse pHttpStatus_ =+ GetCredentialReportResponse'+ { content =+ Prelude.Nothing,+ generatedTime = Prelude.Nothing,+ reportFormat = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Contains the credential report. The report is Base64-encoded.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+getCredentialReportResponse_content :: Lens.Lens' GetCredentialReportResponse (Prelude.Maybe Prelude.ByteString)+getCredentialReportResponse_content = Lens.lens (\GetCredentialReportResponse' {content} -> content) (\s@GetCredentialReportResponse' {} a -> s {content = a} :: GetCredentialReportResponse) Prelude.. Lens.mapping Data._Base64++-- | The date and time when the credential report was created, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>.+getCredentialReportResponse_generatedTime :: Lens.Lens' GetCredentialReportResponse (Prelude.Maybe Prelude.UTCTime)+getCredentialReportResponse_generatedTime = Lens.lens (\GetCredentialReportResponse' {generatedTime} -> generatedTime) (\s@GetCredentialReportResponse' {} a -> s {generatedTime = a} :: GetCredentialReportResponse) Prelude.. Lens.mapping Data._Time++-- | The format (MIME type) of the credential report.+getCredentialReportResponse_reportFormat :: Lens.Lens' GetCredentialReportResponse (Prelude.Maybe ReportFormatType)+getCredentialReportResponse_reportFormat = Lens.lens (\GetCredentialReportResponse' {reportFormat} -> reportFormat) (\s@GetCredentialReportResponse' {} a -> s {reportFormat = a} :: GetCredentialReportResponse)++-- | The response's http status code.+getCredentialReportResponse_httpStatus :: Lens.Lens' GetCredentialReportResponse Prelude.Int+getCredentialReportResponse_httpStatus = Lens.lens (\GetCredentialReportResponse' {httpStatus} -> httpStatus) (\s@GetCredentialReportResponse' {} a -> s {httpStatus = a} :: GetCredentialReportResponse)++instance Prelude.NFData GetCredentialReportResponse where+ rnf GetCredentialReportResponse' {..} =+ Prelude.rnf content+ `Prelude.seq` Prelude.rnf generatedTime+ `Prelude.seq` Prelude.rnf reportFormat+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetGroup.hs view
@@ -0,0 +1,324 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of IAM users that are in the specified IAM group. You can+-- paginate the results using the @MaxItems@ and @Marker@ parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.GetGroup+ ( -- * Creating a Request+ GetGroup (..),+ newGetGroup,++ -- * Request Lenses+ getGroup_marker,+ getGroup_maxItems,+ getGroup_groupName,++ -- * Destructuring the Response+ GetGroupResponse (..),+ newGetGroupResponse,++ -- * Response Lenses+ getGroupResponse_isTruncated,+ getGroupResponse_marker,+ getGroupResponse_httpStatus,+ getGroupResponse_group,+ getGroupResponse_users,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetGroup' smart constructor.+data GetGroup = GetGroup'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the group.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'getGroup_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'getGroup_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'groupName', 'getGroup_groupName' - The name of the group.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetGroup ::+ -- | 'groupName'+ Prelude.Text ->+ GetGroup+newGetGroup pGroupName_ =+ GetGroup'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ groupName = pGroupName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+getGroup_marker :: Lens.Lens' GetGroup (Prelude.Maybe Prelude.Text)+getGroup_marker = Lens.lens (\GetGroup' {marker} -> marker) (\s@GetGroup' {} a -> s {marker = a} :: GetGroup)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+getGroup_maxItems :: Lens.Lens' GetGroup (Prelude.Maybe Prelude.Natural)+getGroup_maxItems = Lens.lens (\GetGroup' {maxItems} -> maxItems) (\s@GetGroup' {} a -> s {maxItems = a} :: GetGroup)++-- | The name of the group.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getGroup_groupName :: Lens.Lens' GetGroup Prelude.Text+getGroup_groupName = Lens.lens (\GetGroup' {groupName} -> groupName) (\s@GetGroup' {} a -> s {groupName = a} :: GetGroup)++instance Core.AWSPager GetGroup where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? getGroupResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? getGroupResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& getGroup_marker+ Lens..~ rs+ Lens.^? getGroupResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest GetGroup where+ type AWSResponse GetGroup = GetGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetGroupResult"+ ( \s h x ->+ GetGroupResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "Group")+ Prelude.<*> ( x+ Data..@? "Users"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable GetGroup where+ hashWithSalt _salt GetGroup' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` groupName++instance Prelude.NFData GetGroup where+ rnf GetGroup' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf groupName++instance Data.ToHeaders GetGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery GetGroup where+ toQuery GetGroup' {..} =+ Prelude.mconcat+ [ "Action" Data.=: ("GetGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "GroupName" Data.=: groupName+ ]++-- | Contains the response to a successful GetGroup request.+--+-- /See:/ 'newGetGroupResponse' smart constructor.+data GetGroupResponse = GetGroupResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure that contains details about the group.+ group' :: Group,+ -- | A list of users in the group.+ users :: [User]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'getGroupResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'getGroupResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'getGroupResponse_httpStatus' - The response's http status code.+--+-- 'group'', 'getGroupResponse_group' - A structure that contains details about the group.+--+-- 'users', 'getGroupResponse_users' - A list of users in the group.+newGetGroupResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'group''+ Group ->+ GetGroupResponse+newGetGroupResponse pHttpStatus_ pGroup_ =+ GetGroupResponse'+ { isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ group' = pGroup_,+ users = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+getGroupResponse_isTruncated :: Lens.Lens' GetGroupResponse (Prelude.Maybe Prelude.Bool)+getGroupResponse_isTruncated = Lens.lens (\GetGroupResponse' {isTruncated} -> isTruncated) (\s@GetGroupResponse' {} a -> s {isTruncated = a} :: GetGroupResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+getGroupResponse_marker :: Lens.Lens' GetGroupResponse (Prelude.Maybe Prelude.Text)+getGroupResponse_marker = Lens.lens (\GetGroupResponse' {marker} -> marker) (\s@GetGroupResponse' {} a -> s {marker = a} :: GetGroupResponse)++-- | The response's http status code.+getGroupResponse_httpStatus :: Lens.Lens' GetGroupResponse Prelude.Int+getGroupResponse_httpStatus = Lens.lens (\GetGroupResponse' {httpStatus} -> httpStatus) (\s@GetGroupResponse' {} a -> s {httpStatus = a} :: GetGroupResponse)++-- | A structure that contains details about the group.+getGroupResponse_group :: Lens.Lens' GetGroupResponse Group+getGroupResponse_group = Lens.lens (\GetGroupResponse' {group'} -> group') (\s@GetGroupResponse' {} a -> s {group' = a} :: GetGroupResponse)++-- | A list of users in the group.+getGroupResponse_users :: Lens.Lens' GetGroupResponse [User]+getGroupResponse_users = Lens.lens (\GetGroupResponse' {users} -> users) (\s@GetGroupResponse' {} a -> s {users = a} :: GetGroupResponse) Prelude.. Lens.coerced++instance Prelude.NFData GetGroupResponse where+ rnf GetGroupResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf group'+ `Prelude.seq` Prelude.rnf users
+ gen/Amazonka/IAM/GetGroupPolicy.hs view
@@ -0,0 +1,273 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetGroupPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves the specified inline policy document that is embedded in the+-- specified IAM group.+--+-- Policies returned by this operation are URL-encoded compliant with+-- <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+-- decoding method to convert the policy back to plain JSON text. For+-- example, if you use Java, you can use the @decode@ method of the+-- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+-- SDKs provide similar functionality.+--+-- An IAM group can also have managed policies attached to it. To retrieve+-- a managed policy document that is attached to a group, use GetPolicy to+-- determine the policy\'s default version, then use GetPolicyVersion to+-- retrieve the policy document.+--+-- For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.GetGroupPolicy+ ( -- * Creating a Request+ GetGroupPolicy (..),+ newGetGroupPolicy,++ -- * Request Lenses+ getGroupPolicy_groupName,+ getGroupPolicy_policyName,++ -- * Destructuring the Response+ GetGroupPolicyResponse (..),+ newGetGroupPolicyResponse,++ -- * Response Lenses+ getGroupPolicyResponse_httpStatus,+ getGroupPolicyResponse_groupName,+ getGroupPolicyResponse_policyName,+ getGroupPolicyResponse_policyDocument,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetGroupPolicy' smart constructor.+data GetGroupPolicy = GetGroupPolicy'+ { -- | The name of the group the policy is associated with.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text,+ -- | The name of the policy document to get.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetGroupPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupName', 'getGroupPolicy_groupName' - The name of the group the policy is associated with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyName', 'getGroupPolicy_policyName' - The name of the policy document to get.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetGroupPolicy ::+ -- | 'groupName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ GetGroupPolicy+newGetGroupPolicy pGroupName_ pPolicyName_ =+ GetGroupPolicy'+ { groupName = pGroupName_,+ policyName = pPolicyName_+ }++-- | The name of the group the policy is associated with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getGroupPolicy_groupName :: Lens.Lens' GetGroupPolicy Prelude.Text+getGroupPolicy_groupName = Lens.lens (\GetGroupPolicy' {groupName} -> groupName) (\s@GetGroupPolicy' {} a -> s {groupName = a} :: GetGroupPolicy)++-- | The name of the policy document to get.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getGroupPolicy_policyName :: Lens.Lens' GetGroupPolicy Prelude.Text+getGroupPolicy_policyName = Lens.lens (\GetGroupPolicy' {policyName} -> policyName) (\s@GetGroupPolicy' {} a -> s {policyName = a} :: GetGroupPolicy)++instance Core.AWSRequest GetGroupPolicy where+ type+ AWSResponse GetGroupPolicy =+ GetGroupPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetGroupPolicyResult"+ ( \s h x ->+ GetGroupPolicyResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "GroupName")+ Prelude.<*> (x Data..@ "PolicyName")+ Prelude.<*> (x Data..@ "PolicyDocument")+ )++instance Prelude.Hashable GetGroupPolicy where+ hashWithSalt _salt GetGroupPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` policyName++instance Prelude.NFData GetGroupPolicy where+ rnf GetGroupPolicy' {..} =+ Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf policyName++instance Data.ToHeaders GetGroupPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetGroupPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery GetGroupPolicy where+ toQuery GetGroupPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetGroupPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GroupName" Data.=: groupName,+ "PolicyName" Data.=: policyName+ ]++-- | Contains the response to a successful GetGroupPolicy request.+--+-- /See:/ 'newGetGroupPolicyResponse' smart constructor.+data GetGroupPolicyResponse = GetGroupPolicyResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The group the policy is associated with.+ groupName :: Prelude.Text,+ -- | The name of the policy.+ policyName :: Prelude.Text,+ -- | The policy document.+ --+ -- IAM stores policies in JSON format. However, resources that were created+ -- using CloudFormation templates can be formatted in YAML. CloudFormation+ -- always converts a YAML policy to JSON format before submitting it to+ -- IAM.+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetGroupPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getGroupPolicyResponse_httpStatus' - The response's http status code.+--+-- 'groupName', 'getGroupPolicyResponse_groupName' - The group the policy is associated with.+--+-- 'policyName', 'getGroupPolicyResponse_policyName' - The name of the policy.+--+-- 'policyDocument', 'getGroupPolicyResponse_policyDocument' - The policy document.+--+-- IAM stores policies in JSON format. However, resources that were created+-- using CloudFormation templates can be formatted in YAML. CloudFormation+-- always converts a YAML policy to JSON format before submitting it to+-- IAM.+newGetGroupPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'groupName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ GetGroupPolicyResponse+newGetGroupPolicyResponse+ pHttpStatus_+ pGroupName_+ pPolicyName_+ pPolicyDocument_ =+ GetGroupPolicyResponse'+ { httpStatus = pHttpStatus_,+ groupName = pGroupName_,+ policyName = pPolicyName_,+ policyDocument = pPolicyDocument_+ }++-- | The response's http status code.+getGroupPolicyResponse_httpStatus :: Lens.Lens' GetGroupPolicyResponse Prelude.Int+getGroupPolicyResponse_httpStatus = Lens.lens (\GetGroupPolicyResponse' {httpStatus} -> httpStatus) (\s@GetGroupPolicyResponse' {} a -> s {httpStatus = a} :: GetGroupPolicyResponse)++-- | The group the policy is associated with.+getGroupPolicyResponse_groupName :: Lens.Lens' GetGroupPolicyResponse Prelude.Text+getGroupPolicyResponse_groupName = Lens.lens (\GetGroupPolicyResponse' {groupName} -> groupName) (\s@GetGroupPolicyResponse' {} a -> s {groupName = a} :: GetGroupPolicyResponse)++-- | The name of the policy.+getGroupPolicyResponse_policyName :: Lens.Lens' GetGroupPolicyResponse Prelude.Text+getGroupPolicyResponse_policyName = Lens.lens (\GetGroupPolicyResponse' {policyName} -> policyName) (\s@GetGroupPolicyResponse' {} a -> s {policyName = a} :: GetGroupPolicyResponse)++-- | The policy document.+--+-- IAM stores policies in JSON format. However, resources that were created+-- using CloudFormation templates can be formatted in YAML. CloudFormation+-- always converts a YAML policy to JSON format before submitting it to+-- IAM.+getGroupPolicyResponse_policyDocument :: Lens.Lens' GetGroupPolicyResponse Prelude.Text+getGroupPolicyResponse_policyDocument = Lens.lens (\GetGroupPolicyResponse' {policyDocument} -> policyDocument) (\s@GetGroupPolicyResponse' {} a -> s {policyDocument = a} :: GetGroupPolicyResponse)++instance Prelude.NFData GetGroupPolicyResponse where+ rnf GetGroupPolicyResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyDocument
+ gen/Amazonka/IAM/GetInstanceProfile.hs view
@@ -0,0 +1,186 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetInstanceProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about the specified instance profile, including+-- the instance profile\'s path, GUID, ARN, and role. For more information+-- about instance profiles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About instance profiles>+-- in the /IAM User Guide/.+module Amazonka.IAM.GetInstanceProfile+ ( -- * Creating a Request+ GetInstanceProfile (..),+ newGetInstanceProfile,++ -- * Request Lenses+ getInstanceProfile_instanceProfileName,++ -- * Destructuring the Response+ GetInstanceProfileResponse (..),+ newGetInstanceProfileResponse,++ -- * Response Lenses+ getInstanceProfileResponse_httpStatus,+ getInstanceProfileResponse_instanceProfile,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetInstanceProfile' smart constructor.+data GetInstanceProfile = GetInstanceProfile'+ { -- | The name of the instance profile to get information about.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ instanceProfileName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetInstanceProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceProfileName', 'getInstanceProfile_instanceProfileName' - The name of the instance profile to get information about.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetInstanceProfile ::+ -- | 'instanceProfileName'+ Prelude.Text ->+ GetInstanceProfile+newGetInstanceProfile pInstanceProfileName_ =+ GetInstanceProfile'+ { instanceProfileName =+ pInstanceProfileName_+ }++-- | The name of the instance profile to get information about.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getInstanceProfile_instanceProfileName :: Lens.Lens' GetInstanceProfile Prelude.Text+getInstanceProfile_instanceProfileName = Lens.lens (\GetInstanceProfile' {instanceProfileName} -> instanceProfileName) (\s@GetInstanceProfile' {} a -> s {instanceProfileName = a} :: GetInstanceProfile)++instance Core.AWSRequest GetInstanceProfile where+ type+ AWSResponse GetInstanceProfile =+ GetInstanceProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetInstanceProfileResult"+ ( \s h x ->+ GetInstanceProfileResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "InstanceProfile")+ )++instance Prelude.Hashable GetInstanceProfile where+ hashWithSalt _salt GetInstanceProfile' {..} =+ _salt `Prelude.hashWithSalt` instanceProfileName++instance Prelude.NFData GetInstanceProfile where+ rnf GetInstanceProfile' {..} =+ Prelude.rnf instanceProfileName++instance Data.ToHeaders GetInstanceProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetInstanceProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery GetInstanceProfile where+ toQuery GetInstanceProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetInstanceProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "InstanceProfileName" Data.=: instanceProfileName+ ]++-- | Contains the response to a successful GetInstanceProfile request.+--+-- /See:/ 'newGetInstanceProfileResponse' smart constructor.+data GetInstanceProfileResponse = GetInstanceProfileResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing details about the instance profile.+ instanceProfile :: InstanceProfile+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetInstanceProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getInstanceProfileResponse_httpStatus' - The response's http status code.+--+-- 'instanceProfile', 'getInstanceProfileResponse_instanceProfile' - A structure containing details about the instance profile.+newGetInstanceProfileResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'instanceProfile'+ InstanceProfile ->+ GetInstanceProfileResponse+newGetInstanceProfileResponse+ pHttpStatus_+ pInstanceProfile_ =+ GetInstanceProfileResponse'+ { httpStatus =+ pHttpStatus_,+ instanceProfile = pInstanceProfile_+ }++-- | The response's http status code.+getInstanceProfileResponse_httpStatus :: Lens.Lens' GetInstanceProfileResponse Prelude.Int+getInstanceProfileResponse_httpStatus = Lens.lens (\GetInstanceProfileResponse' {httpStatus} -> httpStatus) (\s@GetInstanceProfileResponse' {} a -> s {httpStatus = a} :: GetInstanceProfileResponse)++-- | A structure containing details about the instance profile.+getInstanceProfileResponse_instanceProfile :: Lens.Lens' GetInstanceProfileResponse InstanceProfile+getInstanceProfileResponse_instanceProfile = Lens.lens (\GetInstanceProfileResponse' {instanceProfile} -> instanceProfile) (\s@GetInstanceProfileResponse' {} a -> s {instanceProfile = a} :: GetInstanceProfileResponse)++instance Prelude.NFData GetInstanceProfileResponse where+ rnf GetInstanceProfileResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf instanceProfile
+ gen/Amazonka/IAM/GetLoginProfile.hs view
@@ -0,0 +1,193 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetLoginProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves the user name for the specified IAM user. A login profile is+-- created when you create a password for the user to access the Amazon Web+-- Services Management Console. If the user does not exist or does not have+-- a password, the operation returns a 404 (@NoSuchEntity@) error.+--+-- If you create an IAM user with access to the console, the @CreateDate@+-- reflects the date you created the initial password for the user.+--+-- If you create an IAM user with programmatic access, and then later add a+-- password for the user to access the Amazon Web Services Management+-- Console, the @CreateDate@ reflects the initial password creation date. A+-- user with programmatic access does not have a login profile unless you+-- create a password for the user to access the Amazon Web Services+-- Management Console.+module Amazonka.IAM.GetLoginProfile+ ( -- * Creating a Request+ GetLoginProfile (..),+ newGetLoginProfile,++ -- * Request Lenses+ getLoginProfile_userName,++ -- * Destructuring the Response+ GetLoginProfileResponse (..),+ newGetLoginProfileResponse,++ -- * Response Lenses+ getLoginProfileResponse_httpStatus,+ getLoginProfileResponse_loginProfile,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetLoginProfile' smart constructor.+data GetLoginProfile = GetLoginProfile'+ { -- | The name of the user whose login profile you want to retrieve.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLoginProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'getLoginProfile_userName' - The name of the user whose login profile you want to retrieve.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetLoginProfile ::+ -- | 'userName'+ Prelude.Text ->+ GetLoginProfile+newGetLoginProfile pUserName_ =+ GetLoginProfile' {userName = pUserName_}++-- | The name of the user whose login profile you want to retrieve.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getLoginProfile_userName :: Lens.Lens' GetLoginProfile Prelude.Text+getLoginProfile_userName = Lens.lens (\GetLoginProfile' {userName} -> userName) (\s@GetLoginProfile' {} a -> s {userName = a} :: GetLoginProfile)++instance Core.AWSRequest GetLoginProfile where+ type+ AWSResponse GetLoginProfile =+ GetLoginProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetLoginProfileResult"+ ( \s h x ->+ GetLoginProfileResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "LoginProfile")+ )++instance Prelude.Hashable GetLoginProfile where+ hashWithSalt _salt GetLoginProfile' {..} =+ _salt `Prelude.hashWithSalt` userName++instance Prelude.NFData GetLoginProfile where+ rnf GetLoginProfile' {..} = Prelude.rnf userName++instance Data.ToHeaders GetLoginProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetLoginProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery GetLoginProfile where+ toQuery GetLoginProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetLoginProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful GetLoginProfile request.+--+-- /See:/ 'newGetLoginProfileResponse' smart constructor.+data GetLoginProfileResponse = GetLoginProfileResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing the user name and the profile creation date for+ -- the user.+ loginProfile :: LoginProfile+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLoginProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getLoginProfileResponse_httpStatus' - The response's http status code.+--+-- 'loginProfile', 'getLoginProfileResponse_loginProfile' - A structure containing the user name and the profile creation date for+-- the user.+newGetLoginProfileResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'loginProfile'+ LoginProfile ->+ GetLoginProfileResponse+newGetLoginProfileResponse+ pHttpStatus_+ pLoginProfile_ =+ GetLoginProfileResponse'+ { httpStatus = pHttpStatus_,+ loginProfile = pLoginProfile_+ }++-- | The response's http status code.+getLoginProfileResponse_httpStatus :: Lens.Lens' GetLoginProfileResponse Prelude.Int+getLoginProfileResponse_httpStatus = Lens.lens (\GetLoginProfileResponse' {httpStatus} -> httpStatus) (\s@GetLoginProfileResponse' {} a -> s {httpStatus = a} :: GetLoginProfileResponse)++-- | A structure containing the user name and the profile creation date for+-- the user.+getLoginProfileResponse_loginProfile :: Lens.Lens' GetLoginProfileResponse LoginProfile+getLoginProfileResponse_loginProfile = Lens.lens (\GetLoginProfileResponse' {loginProfile} -> loginProfile) (\s@GetLoginProfileResponse' {} a -> s {loginProfile = a} :: GetLoginProfileResponse)++instance Prelude.NFData GetLoginProfileResponse where+ rnf GetLoginProfileResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf loginProfile
+ gen/Amazonka/IAM/GetOpenIDConnectProvider.hs view
@@ -0,0 +1,278 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetOpenIDConnectProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about the specified OpenID Connect (OIDC) provider+-- resource object in IAM.+module Amazonka.IAM.GetOpenIDConnectProvider+ ( -- * Creating a Request+ GetOpenIDConnectProvider (..),+ newGetOpenIDConnectProvider,++ -- * Request Lenses+ getOpenIDConnectProvider_openIDConnectProviderArn,++ -- * Destructuring the Response+ GetOpenIDConnectProviderResponse (..),+ newGetOpenIDConnectProviderResponse,++ -- * Response Lenses+ getOpenIDConnectProviderResponse_clientIDList,+ getOpenIDConnectProviderResponse_createDate,+ getOpenIDConnectProviderResponse_tags,+ getOpenIDConnectProviderResponse_thumbprintList,+ getOpenIDConnectProviderResponse_url,+ getOpenIDConnectProviderResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetOpenIDConnectProvider' smart constructor.+data GetOpenIDConnectProvider = GetOpenIDConnectProvider'+ { -- | The Amazon Resource Name (ARN) of the OIDC provider resource object in+ -- IAM to get information for. You can get a list of OIDC provider resource+ -- ARNs by using the ListOpenIDConnectProviders operation.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ openIDConnectProviderArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetOpenIDConnectProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderArn', 'getOpenIDConnectProvider_openIDConnectProviderArn' - The Amazon Resource Name (ARN) of the OIDC provider resource object in+-- IAM to get information for. You can get a list of OIDC provider resource+-- ARNs by using the ListOpenIDConnectProviders operation.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newGetOpenIDConnectProvider ::+ -- | 'openIDConnectProviderArn'+ Prelude.Text ->+ GetOpenIDConnectProvider+newGetOpenIDConnectProvider+ pOpenIDConnectProviderArn_ =+ GetOpenIDConnectProvider'+ { openIDConnectProviderArn =+ pOpenIDConnectProviderArn_+ }++-- | The Amazon Resource Name (ARN) of the OIDC provider resource object in+-- IAM to get information for. You can get a list of OIDC provider resource+-- ARNs by using the ListOpenIDConnectProviders operation.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+getOpenIDConnectProvider_openIDConnectProviderArn :: Lens.Lens' GetOpenIDConnectProvider Prelude.Text+getOpenIDConnectProvider_openIDConnectProviderArn = Lens.lens (\GetOpenIDConnectProvider' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@GetOpenIDConnectProvider' {} a -> s {openIDConnectProviderArn = a} :: GetOpenIDConnectProvider)++instance Core.AWSRequest GetOpenIDConnectProvider where+ type+ AWSResponse GetOpenIDConnectProvider =+ GetOpenIDConnectProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetOpenIDConnectProviderResult"+ ( \s h x ->+ GetOpenIDConnectProviderResponse'+ Prelude.<$> ( x+ Data..@? "ClientIDList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "CreateDate")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "ThumbprintList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "Url")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetOpenIDConnectProvider where+ hashWithSalt _salt GetOpenIDConnectProvider' {..} =+ _salt+ `Prelude.hashWithSalt` openIDConnectProviderArn++instance Prelude.NFData GetOpenIDConnectProvider where+ rnf GetOpenIDConnectProvider' {..} =+ Prelude.rnf openIDConnectProviderArn++instance Data.ToHeaders GetOpenIDConnectProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetOpenIDConnectProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery GetOpenIDConnectProvider where+ toQuery GetOpenIDConnectProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetOpenIDConnectProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OpenIDConnectProviderArn"+ Data.=: openIDConnectProviderArn+ ]++-- | Contains the response to a successful GetOpenIDConnectProvider request.+--+-- /See:/ 'newGetOpenIDConnectProviderResponse' smart constructor.+data GetOpenIDConnectProviderResponse = GetOpenIDConnectProviderResponse'+ { -- | A list of client IDs (also known as audiences) that are associated with+ -- the specified IAM OIDC provider resource object. For more information,+ -- see CreateOpenIDConnectProvider.+ clientIDList :: Prelude.Maybe [Prelude.Text],+ -- | The date and time when the IAM OIDC provider resource object was created+ -- in the Amazon Web Services account.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | A list of tags that are attached to the specified IAM OIDC provider. The+ -- returned list of tags is sorted by tag key. For more information about+ -- tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | A list of certificate thumbprints that are associated with the specified+ -- IAM OIDC provider resource object. For more information, see+ -- CreateOpenIDConnectProvider.+ thumbprintList :: Prelude.Maybe [Prelude.Text],+ -- | The URL that the IAM OIDC provider resource object is associated with.+ -- For more information, see CreateOpenIDConnectProvider.+ url :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetOpenIDConnectProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientIDList', 'getOpenIDConnectProviderResponse_clientIDList' - A list of client IDs (also known as audiences) that are associated with+-- the specified IAM OIDC provider resource object. For more information,+-- see CreateOpenIDConnectProvider.+--+-- 'createDate', 'getOpenIDConnectProviderResponse_createDate' - The date and time when the IAM OIDC provider resource object was created+-- in the Amazon Web Services account.+--+-- 'tags', 'getOpenIDConnectProviderResponse_tags' - A list of tags that are attached to the specified IAM OIDC provider. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'thumbprintList', 'getOpenIDConnectProviderResponse_thumbprintList' - A list of certificate thumbprints that are associated with the specified+-- IAM OIDC provider resource object. For more information, see+-- CreateOpenIDConnectProvider.+--+-- 'url', 'getOpenIDConnectProviderResponse_url' - The URL that the IAM OIDC provider resource object is associated with.+-- For more information, see CreateOpenIDConnectProvider.+--+-- 'httpStatus', 'getOpenIDConnectProviderResponse_httpStatus' - The response's http status code.+newGetOpenIDConnectProviderResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetOpenIDConnectProviderResponse+newGetOpenIDConnectProviderResponse pHttpStatus_ =+ GetOpenIDConnectProviderResponse'+ { clientIDList =+ Prelude.Nothing,+ createDate = Prelude.Nothing,+ tags = Prelude.Nothing,+ thumbprintList = Prelude.Nothing,+ url = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of client IDs (also known as audiences) that are associated with+-- the specified IAM OIDC provider resource object. For more information,+-- see CreateOpenIDConnectProvider.+getOpenIDConnectProviderResponse_clientIDList :: Lens.Lens' GetOpenIDConnectProviderResponse (Prelude.Maybe [Prelude.Text])+getOpenIDConnectProviderResponse_clientIDList = Lens.lens (\GetOpenIDConnectProviderResponse' {clientIDList} -> clientIDList) (\s@GetOpenIDConnectProviderResponse' {} a -> s {clientIDList = a} :: GetOpenIDConnectProviderResponse) Prelude.. Lens.mapping Lens.coerced++-- | The date and time when the IAM OIDC provider resource object was created+-- in the Amazon Web Services account.+getOpenIDConnectProviderResponse_createDate :: Lens.Lens' GetOpenIDConnectProviderResponse (Prelude.Maybe Prelude.UTCTime)+getOpenIDConnectProviderResponse_createDate = Lens.lens (\GetOpenIDConnectProviderResponse' {createDate} -> createDate) (\s@GetOpenIDConnectProviderResponse' {} a -> s {createDate = a} :: GetOpenIDConnectProviderResponse) Prelude.. Lens.mapping Data._Time++-- | A list of tags that are attached to the specified IAM OIDC provider. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+getOpenIDConnectProviderResponse_tags :: Lens.Lens' GetOpenIDConnectProviderResponse (Prelude.Maybe [Tag])+getOpenIDConnectProviderResponse_tags = Lens.lens (\GetOpenIDConnectProviderResponse' {tags} -> tags) (\s@GetOpenIDConnectProviderResponse' {} a -> s {tags = a} :: GetOpenIDConnectProviderResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of certificate thumbprints that are associated with the specified+-- IAM OIDC provider resource object. For more information, see+-- CreateOpenIDConnectProvider.+getOpenIDConnectProviderResponse_thumbprintList :: Lens.Lens' GetOpenIDConnectProviderResponse (Prelude.Maybe [Prelude.Text])+getOpenIDConnectProviderResponse_thumbprintList = Lens.lens (\GetOpenIDConnectProviderResponse' {thumbprintList} -> thumbprintList) (\s@GetOpenIDConnectProviderResponse' {} a -> s {thumbprintList = a} :: GetOpenIDConnectProviderResponse) Prelude.. Lens.mapping Lens.coerced++-- | The URL that the IAM OIDC provider resource object is associated with.+-- For more information, see CreateOpenIDConnectProvider.+getOpenIDConnectProviderResponse_url :: Lens.Lens' GetOpenIDConnectProviderResponse (Prelude.Maybe Prelude.Text)+getOpenIDConnectProviderResponse_url = Lens.lens (\GetOpenIDConnectProviderResponse' {url} -> url) (\s@GetOpenIDConnectProviderResponse' {} a -> s {url = a} :: GetOpenIDConnectProviderResponse)++-- | The response's http status code.+getOpenIDConnectProviderResponse_httpStatus :: Lens.Lens' GetOpenIDConnectProviderResponse Prelude.Int+getOpenIDConnectProviderResponse_httpStatus = Lens.lens (\GetOpenIDConnectProviderResponse' {httpStatus} -> httpStatus) (\s@GetOpenIDConnectProviderResponse' {} a -> s {httpStatus = a} :: GetOpenIDConnectProviderResponse)++instance+ Prelude.NFData+ GetOpenIDConnectProviderResponse+ where+ rnf GetOpenIDConnectProviderResponse' {..} =+ Prelude.rnf clientIDList+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf thumbprintList+ `Prelude.seq` Prelude.rnf url+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetOrganizationsAccessReport.hs view
@@ -0,0 +1,437 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetOrganizationsAccessReport+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves the service last accessed data report for Organizations that+-- was previously generated using the+-- @ @@GenerateOrganizationsAccessReport@@ @ operation. This operation+-- retrieves the status of your report job and the report contents.+--+-- Depending on the parameters that you passed when you generated the+-- report, the data returned could include different information. For+-- details, see GenerateOrganizationsAccessReport.+--+-- To call this operation, you must be signed in to the management account+-- in your organization. SCPs must be enabled for your organization root.+-- You must have permissions to perform this operation. For more+-- information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html Refining permissions using service last accessed data>+-- in the /IAM User Guide/.+--+-- For each service that principals in an account (root users, IAM users,+-- or IAM roles) could access using SCPs, the operation returns details+-- about the most recent access attempt. If there was no attempt, the+-- service is listed without details about the most recent attempt to+-- access the service. If the operation fails, it returns the reason that+-- it failed.+--+-- By default, the list is sorted by service namespace.+module Amazonka.IAM.GetOrganizationsAccessReport+ ( -- * Creating a Request+ GetOrganizationsAccessReport (..),+ newGetOrganizationsAccessReport,++ -- * Request Lenses+ getOrganizationsAccessReport_marker,+ getOrganizationsAccessReport_maxItems,+ getOrganizationsAccessReport_sortKey,+ getOrganizationsAccessReport_jobId,++ -- * Destructuring the Response+ GetOrganizationsAccessReportResponse (..),+ newGetOrganizationsAccessReportResponse,++ -- * Response Lenses+ getOrganizationsAccessReportResponse_accessDetails,+ getOrganizationsAccessReportResponse_errorDetails,+ getOrganizationsAccessReportResponse_isTruncated,+ getOrganizationsAccessReportResponse_jobCompletionDate,+ getOrganizationsAccessReportResponse_marker,+ getOrganizationsAccessReportResponse_numberOfServicesAccessible,+ getOrganizationsAccessReportResponse_numberOfServicesNotAccessed,+ getOrganizationsAccessReportResponse_httpStatus,+ getOrganizationsAccessReportResponse_jobStatus,+ getOrganizationsAccessReportResponse_jobCreationDate,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetOrganizationsAccessReport' smart constructor.+data GetOrganizationsAccessReport = GetOrganizationsAccessReport'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The key that is used to sort the results. If you choose the namespace+ -- key, the results are returned in alphabetical order. If you choose the+ -- time key, the results are sorted numerically by the date and time.+ sortKey :: Prelude.Maybe SortKeyType,+ -- | The identifier of the request generated by the+ -- GenerateOrganizationsAccessReport operation.+ jobId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetOrganizationsAccessReport' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'getOrganizationsAccessReport_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'getOrganizationsAccessReport_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'sortKey', 'getOrganizationsAccessReport_sortKey' - The key that is used to sort the results. If you choose the namespace+-- key, the results are returned in alphabetical order. If you choose the+-- time key, the results are sorted numerically by the date and time.+--+-- 'jobId', 'getOrganizationsAccessReport_jobId' - The identifier of the request generated by the+-- GenerateOrganizationsAccessReport operation.+newGetOrganizationsAccessReport ::+ -- | 'jobId'+ Prelude.Text ->+ GetOrganizationsAccessReport+newGetOrganizationsAccessReport pJobId_ =+ GetOrganizationsAccessReport'+ { marker =+ Prelude.Nothing,+ maxItems = Prelude.Nothing,+ sortKey = Prelude.Nothing,+ jobId = pJobId_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+getOrganizationsAccessReport_marker :: Lens.Lens' GetOrganizationsAccessReport (Prelude.Maybe Prelude.Text)+getOrganizationsAccessReport_marker = Lens.lens (\GetOrganizationsAccessReport' {marker} -> marker) (\s@GetOrganizationsAccessReport' {} a -> s {marker = a} :: GetOrganizationsAccessReport)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+getOrganizationsAccessReport_maxItems :: Lens.Lens' GetOrganizationsAccessReport (Prelude.Maybe Prelude.Natural)+getOrganizationsAccessReport_maxItems = Lens.lens (\GetOrganizationsAccessReport' {maxItems} -> maxItems) (\s@GetOrganizationsAccessReport' {} a -> s {maxItems = a} :: GetOrganizationsAccessReport)++-- | The key that is used to sort the results. If you choose the namespace+-- key, the results are returned in alphabetical order. If you choose the+-- time key, the results are sorted numerically by the date and time.+getOrganizationsAccessReport_sortKey :: Lens.Lens' GetOrganizationsAccessReport (Prelude.Maybe SortKeyType)+getOrganizationsAccessReport_sortKey = Lens.lens (\GetOrganizationsAccessReport' {sortKey} -> sortKey) (\s@GetOrganizationsAccessReport' {} a -> s {sortKey = a} :: GetOrganizationsAccessReport)++-- | The identifier of the request generated by the+-- GenerateOrganizationsAccessReport operation.+getOrganizationsAccessReport_jobId :: Lens.Lens' GetOrganizationsAccessReport Prelude.Text+getOrganizationsAccessReport_jobId = Lens.lens (\GetOrganizationsAccessReport' {jobId} -> jobId) (\s@GetOrganizationsAccessReport' {} a -> s {jobId = a} :: GetOrganizationsAccessReport)++instance Core.AWSRequest GetOrganizationsAccessReport where+ type+ AWSResponse GetOrganizationsAccessReport =+ GetOrganizationsAccessReportResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetOrganizationsAccessReportResult"+ ( \s h x ->+ GetOrganizationsAccessReportResponse'+ Prelude.<$> ( x+ Data..@? "AccessDetails"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "ErrorDetails")+ Prelude.<*> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "JobCompletionDate")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (x Data..@? "NumberOfServicesAccessible")+ Prelude.<*> (x Data..@? "NumberOfServicesNotAccessed")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "JobStatus")+ Prelude.<*> (x Data..@ "JobCreationDate")+ )++instance+ Prelude.Hashable+ GetOrganizationsAccessReport+ where+ hashWithSalt _salt GetOrganizationsAccessReport' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` sortKey+ `Prelude.hashWithSalt` jobId++instance Prelude.NFData GetOrganizationsAccessReport where+ rnf GetOrganizationsAccessReport' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf sortKey+ `Prelude.seq` Prelude.rnf jobId++instance Data.ToHeaders GetOrganizationsAccessReport where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetOrganizationsAccessReport where+ toPath = Prelude.const "/"++instance Data.ToQuery GetOrganizationsAccessReport where+ toQuery GetOrganizationsAccessReport' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GetOrganizationsAccessReport" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "SortKey" Data.=: sortKey,+ "JobId" Data.=: jobId+ ]++-- | /See:/ 'newGetOrganizationsAccessReportResponse' smart constructor.+data GetOrganizationsAccessReportResponse = GetOrganizationsAccessReportResponse'+ { -- | An object that contains details about the most recent attempt to access+ -- the service.+ accessDetails :: Prelude.Maybe [AccessDetail],+ errorDetails :: Prelude.Maybe ErrorDetails,+ -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- generated report job was completed or failed.+ --+ -- This field is null if the job is still in progress, as indicated by a+ -- job status value of @IN_PROGRESS@.+ jobCompletionDate :: Prelude.Maybe Data.ISO8601,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The number of services that the applicable SCPs allow account principals+ -- to access.+ numberOfServicesAccessible :: Prelude.Maybe Prelude.Int,+ -- | The number of services that account principals are allowed but did not+ -- attempt to access.+ numberOfServicesNotAccessed :: Prelude.Maybe Prelude.Int,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The status of the job.+ jobStatus :: JobStatusType,+ -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- report job was created.+ jobCreationDate :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetOrganizationsAccessReportResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessDetails', 'getOrganizationsAccessReportResponse_accessDetails' - An object that contains details about the most recent attempt to access+-- the service.+--+-- 'errorDetails', 'getOrganizationsAccessReportResponse_errorDetails' - Undocumented member.+--+-- 'isTruncated', 'getOrganizationsAccessReportResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'jobCompletionDate', 'getOrganizationsAccessReportResponse_jobCompletionDate' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- generated report job was completed or failed.+--+-- This field is null if the job is still in progress, as indicated by a+-- job status value of @IN_PROGRESS@.+--+-- 'marker', 'getOrganizationsAccessReportResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'numberOfServicesAccessible', 'getOrganizationsAccessReportResponse_numberOfServicesAccessible' - The number of services that the applicable SCPs allow account principals+-- to access.+--+-- 'numberOfServicesNotAccessed', 'getOrganizationsAccessReportResponse_numberOfServicesNotAccessed' - The number of services that account principals are allowed but did not+-- attempt to access.+--+-- 'httpStatus', 'getOrganizationsAccessReportResponse_httpStatus' - The response's http status code.+--+-- 'jobStatus', 'getOrganizationsAccessReportResponse_jobStatus' - The status of the job.+--+-- 'jobCreationDate', 'getOrganizationsAccessReportResponse_jobCreationDate' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- report job was created.+newGetOrganizationsAccessReportResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'jobStatus'+ JobStatusType ->+ -- | 'jobCreationDate'+ Prelude.UTCTime ->+ GetOrganizationsAccessReportResponse+newGetOrganizationsAccessReportResponse+ pHttpStatus_+ pJobStatus_+ pJobCreationDate_ =+ GetOrganizationsAccessReportResponse'+ { accessDetails =+ Prelude.Nothing,+ errorDetails = Prelude.Nothing,+ isTruncated = Prelude.Nothing,+ jobCompletionDate = Prelude.Nothing,+ marker = Prelude.Nothing,+ numberOfServicesAccessible =+ Prelude.Nothing,+ numberOfServicesNotAccessed =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ jobStatus = pJobStatus_,+ jobCreationDate =+ Data._Time Lens.# pJobCreationDate_+ }++-- | An object that contains details about the most recent attempt to access+-- the service.+getOrganizationsAccessReportResponse_accessDetails :: Lens.Lens' GetOrganizationsAccessReportResponse (Prelude.Maybe [AccessDetail])+getOrganizationsAccessReportResponse_accessDetails = Lens.lens (\GetOrganizationsAccessReportResponse' {accessDetails} -> accessDetails) (\s@GetOrganizationsAccessReportResponse' {} a -> s {accessDetails = a} :: GetOrganizationsAccessReportResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+getOrganizationsAccessReportResponse_errorDetails :: Lens.Lens' GetOrganizationsAccessReportResponse (Prelude.Maybe ErrorDetails)+getOrganizationsAccessReportResponse_errorDetails = Lens.lens (\GetOrganizationsAccessReportResponse' {errorDetails} -> errorDetails) (\s@GetOrganizationsAccessReportResponse' {} a -> s {errorDetails = a} :: GetOrganizationsAccessReportResponse)++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+getOrganizationsAccessReportResponse_isTruncated :: Lens.Lens' GetOrganizationsAccessReportResponse (Prelude.Maybe Prelude.Bool)+getOrganizationsAccessReportResponse_isTruncated = Lens.lens (\GetOrganizationsAccessReportResponse' {isTruncated} -> isTruncated) (\s@GetOrganizationsAccessReportResponse' {} a -> s {isTruncated = a} :: GetOrganizationsAccessReportResponse)++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- generated report job was completed or failed.+--+-- This field is null if the job is still in progress, as indicated by a+-- job status value of @IN_PROGRESS@.+getOrganizationsAccessReportResponse_jobCompletionDate :: Lens.Lens' GetOrganizationsAccessReportResponse (Prelude.Maybe Prelude.UTCTime)+getOrganizationsAccessReportResponse_jobCompletionDate = Lens.lens (\GetOrganizationsAccessReportResponse' {jobCompletionDate} -> jobCompletionDate) (\s@GetOrganizationsAccessReportResponse' {} a -> s {jobCompletionDate = a} :: GetOrganizationsAccessReportResponse) Prelude.. Lens.mapping Data._Time++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+getOrganizationsAccessReportResponse_marker :: Lens.Lens' GetOrganizationsAccessReportResponse (Prelude.Maybe Prelude.Text)+getOrganizationsAccessReportResponse_marker = Lens.lens (\GetOrganizationsAccessReportResponse' {marker} -> marker) (\s@GetOrganizationsAccessReportResponse' {} a -> s {marker = a} :: GetOrganizationsAccessReportResponse)++-- | The number of services that the applicable SCPs allow account principals+-- to access.+getOrganizationsAccessReportResponse_numberOfServicesAccessible :: Lens.Lens' GetOrganizationsAccessReportResponse (Prelude.Maybe Prelude.Int)+getOrganizationsAccessReportResponse_numberOfServicesAccessible = Lens.lens (\GetOrganizationsAccessReportResponse' {numberOfServicesAccessible} -> numberOfServicesAccessible) (\s@GetOrganizationsAccessReportResponse' {} a -> s {numberOfServicesAccessible = a} :: GetOrganizationsAccessReportResponse)++-- | The number of services that account principals are allowed but did not+-- attempt to access.+getOrganizationsAccessReportResponse_numberOfServicesNotAccessed :: Lens.Lens' GetOrganizationsAccessReportResponse (Prelude.Maybe Prelude.Int)+getOrganizationsAccessReportResponse_numberOfServicesNotAccessed = Lens.lens (\GetOrganizationsAccessReportResponse' {numberOfServicesNotAccessed} -> numberOfServicesNotAccessed) (\s@GetOrganizationsAccessReportResponse' {} a -> s {numberOfServicesNotAccessed = a} :: GetOrganizationsAccessReportResponse)++-- | The response's http status code.+getOrganizationsAccessReportResponse_httpStatus :: Lens.Lens' GetOrganizationsAccessReportResponse Prelude.Int+getOrganizationsAccessReportResponse_httpStatus = Lens.lens (\GetOrganizationsAccessReportResponse' {httpStatus} -> httpStatus) (\s@GetOrganizationsAccessReportResponse' {} a -> s {httpStatus = a} :: GetOrganizationsAccessReportResponse)++-- | The status of the job.+getOrganizationsAccessReportResponse_jobStatus :: Lens.Lens' GetOrganizationsAccessReportResponse JobStatusType+getOrganizationsAccessReportResponse_jobStatus = Lens.lens (\GetOrganizationsAccessReportResponse' {jobStatus} -> jobStatus) (\s@GetOrganizationsAccessReportResponse' {} a -> s {jobStatus = a} :: GetOrganizationsAccessReportResponse)++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- report job was created.+getOrganizationsAccessReportResponse_jobCreationDate :: Lens.Lens' GetOrganizationsAccessReportResponse Prelude.UTCTime+getOrganizationsAccessReportResponse_jobCreationDate = Lens.lens (\GetOrganizationsAccessReportResponse' {jobCreationDate} -> jobCreationDate) (\s@GetOrganizationsAccessReportResponse' {} a -> s {jobCreationDate = a} :: GetOrganizationsAccessReportResponse) Prelude.. Data._Time++instance+ Prelude.NFData+ GetOrganizationsAccessReportResponse+ where+ rnf GetOrganizationsAccessReportResponse' {..} =+ Prelude.rnf accessDetails+ `Prelude.seq` Prelude.rnf errorDetails+ `Prelude.seq` Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf jobCompletionDate+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf numberOfServicesAccessible+ `Prelude.seq` Prelude.rnf numberOfServicesNotAccessed+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf jobStatus+ `Prelude.seq` Prelude.rnf jobCreationDate
+ gen/Amazonka/IAM/GetPolicy.hs view
@@ -0,0 +1,185 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about the specified managed policy, including the+-- policy\'s default version and the total number of IAM users, groups, and+-- roles to which the policy is attached. To retrieve the list of the+-- specific users, groups, and roles that the policy is attached to, use+-- ListEntitiesForPolicy. This operation returns metadata about the policy.+-- To retrieve the actual policy document for a specific version of the+-- policy, use GetPolicyVersion.+--+-- This operation retrieves information about managed policies. To retrieve+-- information about an inline policy that is embedded with an IAM user,+-- group, or role, use GetUserPolicy, GetGroupPolicy, or GetRolePolicy.+--+-- For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.GetPolicy+ ( -- * Creating a Request+ GetPolicy (..),+ newGetPolicy,++ -- * Request Lenses+ getPolicy_policyArn,++ -- * Destructuring the Response+ GetPolicyResponse (..),+ newGetPolicyResponse,++ -- * Response Lenses+ getPolicyResponse_policy,+ getPolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetPolicy' smart constructor.+data GetPolicy = GetPolicy'+ { -- | The Amazon Resource Name (ARN) of the managed policy that you want+ -- information about.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyArn', 'getPolicy_policyArn' - The Amazon Resource Name (ARN) of the managed policy that you want+-- information about.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newGetPolicy ::+ -- | 'policyArn'+ Prelude.Text ->+ GetPolicy+newGetPolicy pPolicyArn_ =+ GetPolicy' {policyArn = pPolicyArn_}++-- | The Amazon Resource Name (ARN) of the managed policy that you want+-- information about.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+getPolicy_policyArn :: Lens.Lens' GetPolicy Prelude.Text+getPolicy_policyArn = Lens.lens (\GetPolicy' {policyArn} -> policyArn) (\s@GetPolicy' {} a -> s {policyArn = a} :: GetPolicy)++instance Core.AWSRequest GetPolicy where+ type AWSResponse GetPolicy = GetPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetPolicyResult"+ ( \s h x ->+ GetPolicyResponse'+ Prelude.<$> (x Data..@? "Policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetPolicy where+ hashWithSalt _salt GetPolicy' {..} =+ _salt `Prelude.hashWithSalt` policyArn++instance Prelude.NFData GetPolicy where+ rnf GetPolicy' {..} = Prelude.rnf policyArn++instance Data.ToHeaders GetPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery GetPolicy where+ toQuery GetPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyArn" Data.=: policyArn+ ]++-- | Contains the response to a successful GetPolicy request.+--+-- /See:/ 'newGetPolicyResponse' smart constructor.+data GetPolicyResponse = GetPolicyResponse'+ { -- | A structure containing details about the policy.+ policy :: Prelude.Maybe Policy,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'getPolicyResponse_policy' - A structure containing details about the policy.+--+-- 'httpStatus', 'getPolicyResponse_httpStatus' - The response's http status code.+newGetPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetPolicyResponse+newGetPolicyResponse pHttpStatus_ =+ GetPolicyResponse'+ { policy = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure containing details about the policy.+getPolicyResponse_policy :: Lens.Lens' GetPolicyResponse (Prelude.Maybe Policy)+getPolicyResponse_policy = Lens.lens (\GetPolicyResponse' {policy} -> policy) (\s@GetPolicyResponse' {} a -> s {policy = a} :: GetPolicyResponse)++-- | The response's http status code.+getPolicyResponse_httpStatus :: Lens.Lens' GetPolicyResponse Prelude.Int+getPolicyResponse_httpStatus = Lens.lens (\GetPolicyResponse' {httpStatus} -> httpStatus) (\s@GetPolicyResponse' {} a -> s {httpStatus = a} :: GetPolicyResponse)++instance Prelude.NFData GetPolicyResponse where+ rnf GetPolicyResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetPolicyVersion.hs view
@@ -0,0 +1,233 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetPolicyVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about the specified version of the specified+-- managed policy, including the policy document.+--+-- Policies returned by this operation are URL-encoded compliant with+-- <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+-- decoding method to convert the policy back to plain JSON text. For+-- example, if you use Java, you can use the @decode@ method of the+-- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+-- SDKs provide similar functionality.+--+-- To list the available versions for a policy, use ListPolicyVersions.+--+-- This operation retrieves information about managed policies. To retrieve+-- information about an inline policy that is embedded in a user, group, or+-- role, use GetUserPolicy, GetGroupPolicy, or GetRolePolicy.+--+-- For more information about the types of policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.GetPolicyVersion+ ( -- * Creating a Request+ GetPolicyVersion (..),+ newGetPolicyVersion,++ -- * Request Lenses+ getPolicyVersion_policyArn,+ getPolicyVersion_versionId,++ -- * Destructuring the Response+ GetPolicyVersionResponse (..),+ newGetPolicyVersionResponse,++ -- * Response Lenses+ getPolicyVersionResponse_policyVersion,+ getPolicyVersionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetPolicyVersion' smart constructor.+data GetPolicyVersion = GetPolicyVersion'+ { -- | The Amazon Resource Name (ARN) of the managed policy that you want+ -- information about.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text,+ -- | Identifies the policy version to retrieve.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that consists of the lowercase letter \'v\' followed by one or two+ -- digits, and optionally followed by a period \'.\' and a string of+ -- letters and digits.+ versionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPolicyVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyArn', 'getPolicyVersion_policyArn' - The Amazon Resource Name (ARN) of the managed policy that you want+-- information about.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'versionId', 'getPolicyVersion_versionId' - Identifies the policy version to retrieve.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consists of the lowercase letter \'v\' followed by one or two+-- digits, and optionally followed by a period \'.\' and a string of+-- letters and digits.+newGetPolicyVersion ::+ -- | 'policyArn'+ Prelude.Text ->+ -- | 'versionId'+ Prelude.Text ->+ GetPolicyVersion+newGetPolicyVersion pPolicyArn_ pVersionId_ =+ GetPolicyVersion'+ { policyArn = pPolicyArn_,+ versionId = pVersionId_+ }++-- | The Amazon Resource Name (ARN) of the managed policy that you want+-- information about.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+getPolicyVersion_policyArn :: Lens.Lens' GetPolicyVersion Prelude.Text+getPolicyVersion_policyArn = Lens.lens (\GetPolicyVersion' {policyArn} -> policyArn) (\s@GetPolicyVersion' {} a -> s {policyArn = a} :: GetPolicyVersion)++-- | Identifies the policy version to retrieve.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consists of the lowercase letter \'v\' followed by one or two+-- digits, and optionally followed by a period \'.\' and a string of+-- letters and digits.+getPolicyVersion_versionId :: Lens.Lens' GetPolicyVersion Prelude.Text+getPolicyVersion_versionId = Lens.lens (\GetPolicyVersion' {versionId} -> versionId) (\s@GetPolicyVersion' {} a -> s {versionId = a} :: GetPolicyVersion)++instance Core.AWSRequest GetPolicyVersion where+ type+ AWSResponse GetPolicyVersion =+ GetPolicyVersionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetPolicyVersionResult"+ ( \s h x ->+ GetPolicyVersionResponse'+ Prelude.<$> (x Data..@? "PolicyVersion")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetPolicyVersion where+ hashWithSalt _salt GetPolicyVersion' {..} =+ _salt+ `Prelude.hashWithSalt` policyArn+ `Prelude.hashWithSalt` versionId++instance Prelude.NFData GetPolicyVersion where+ rnf GetPolicyVersion' {..} =+ Prelude.rnf policyArn+ `Prelude.seq` Prelude.rnf versionId++instance Data.ToHeaders GetPolicyVersion where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetPolicyVersion where+ toPath = Prelude.const "/"++instance Data.ToQuery GetPolicyVersion where+ toQuery GetPolicyVersion' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetPolicyVersion" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyArn" Data.=: policyArn,+ "VersionId" Data.=: versionId+ ]++-- | Contains the response to a successful GetPolicyVersion request.+--+-- /See:/ 'newGetPolicyVersionResponse' smart constructor.+data GetPolicyVersionResponse = GetPolicyVersionResponse'+ { -- | A structure containing details about the policy version.+ policyVersion :: Prelude.Maybe PolicyVersion,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPolicyVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyVersion', 'getPolicyVersionResponse_policyVersion' - A structure containing details about the policy version.+--+-- 'httpStatus', 'getPolicyVersionResponse_httpStatus' - The response's http status code.+newGetPolicyVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetPolicyVersionResponse+newGetPolicyVersionResponse pHttpStatus_ =+ GetPolicyVersionResponse'+ { policyVersion =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure containing details about the policy version.+getPolicyVersionResponse_policyVersion :: Lens.Lens' GetPolicyVersionResponse (Prelude.Maybe PolicyVersion)+getPolicyVersionResponse_policyVersion = Lens.lens (\GetPolicyVersionResponse' {policyVersion} -> policyVersion) (\s@GetPolicyVersionResponse' {} a -> s {policyVersion = a} :: GetPolicyVersionResponse)++-- | The response's http status code.+getPolicyVersionResponse_httpStatus :: Lens.Lens' GetPolicyVersionResponse Prelude.Int+getPolicyVersionResponse_httpStatus = Lens.lens (\GetPolicyVersionResponse' {httpStatus} -> httpStatus) (\s@GetPolicyVersionResponse' {} a -> s {httpStatus = a} :: GetPolicyVersionResponse)++instance Prelude.NFData GetPolicyVersionResponse where+ rnf GetPolicyVersionResponse' {..} =+ Prelude.rnf policyVersion+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetRole.hs view
@@ -0,0 +1,182 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about the specified role, including the role\'s+-- path, GUID, ARN, and the role\'s trust policy that grants permission to+-- assume the role. For more information about roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with roles>.+--+-- Policies returned by this operation are URL-encoded compliant with+-- <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+-- decoding method to convert the policy back to plain JSON text. For+-- example, if you use Java, you can use the @decode@ method of the+-- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+-- SDKs provide similar functionality.+module Amazonka.IAM.GetRole+ ( -- * Creating a Request+ GetRole (..),+ newGetRole,++ -- * Request Lenses+ getRole_roleName,++ -- * Destructuring the Response+ GetRoleResponse (..),+ newGetRoleResponse,++ -- * Response Lenses+ getRoleResponse_httpStatus,+ getRoleResponse_role,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetRole' smart constructor.+data GetRole = GetRole'+ { -- | The name of the IAM role to get information about.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'getRole_roleName' - The name of the IAM role to get information about.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetRole ::+ -- | 'roleName'+ Prelude.Text ->+ GetRole+newGetRole pRoleName_ =+ GetRole' {roleName = pRoleName_}++-- | The name of the IAM role to get information about.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getRole_roleName :: Lens.Lens' GetRole Prelude.Text+getRole_roleName = Lens.lens (\GetRole' {roleName} -> roleName) (\s@GetRole' {} a -> s {roleName = a} :: GetRole)++instance Core.AWSRequest GetRole where+ type AWSResponse GetRole = GetRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetRoleResult"+ ( \s h x ->+ GetRoleResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "Role")+ )++instance Prelude.Hashable GetRole where+ hashWithSalt _salt GetRole' {..} =+ _salt `Prelude.hashWithSalt` roleName++instance Prelude.NFData GetRole where+ rnf GetRole' {..} = Prelude.rnf roleName++instance Data.ToHeaders GetRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetRole where+ toPath = Prelude.const "/"++instance Data.ToQuery GetRole where+ toQuery GetRole' {..} =+ Prelude.mconcat+ [ "Action" Data.=: ("GetRole" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName+ ]++-- | Contains the response to a successful GetRole request.+--+-- /See:/ 'newGetRoleResponse' smart constructor.+data GetRoleResponse = GetRoleResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing details about the IAM role.+ role' :: Role+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getRoleResponse_httpStatus' - The response's http status code.+--+-- 'role'', 'getRoleResponse_role' - A structure containing details about the IAM role.+newGetRoleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'role''+ Role ->+ GetRoleResponse+newGetRoleResponse pHttpStatus_ pRole_ =+ GetRoleResponse'+ { httpStatus = pHttpStatus_,+ role' = pRole_+ }++-- | The response's http status code.+getRoleResponse_httpStatus :: Lens.Lens' GetRoleResponse Prelude.Int+getRoleResponse_httpStatus = Lens.lens (\GetRoleResponse' {httpStatus} -> httpStatus) (\s@GetRoleResponse' {} a -> s {httpStatus = a} :: GetRoleResponse)++-- | A structure containing details about the IAM role.+getRoleResponse_role :: Lens.Lens' GetRoleResponse Role+getRoleResponse_role = Lens.lens (\GetRoleResponse' {role'} -> role') (\s@GetRoleResponse' {} a -> s {role' = a} :: GetRoleResponse)++instance Prelude.NFData GetRoleResponse where+ rnf GetRoleResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf role'
+ gen/Amazonka/IAM/GetRolePolicy.hs view
@@ -0,0 +1,276 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetRolePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves the specified inline policy document that is embedded with the+-- specified IAM role.+--+-- Policies returned by this operation are URL-encoded compliant with+-- <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+-- decoding method to convert the policy back to plain JSON text. For+-- example, if you use Java, you can use the @decode@ method of the+-- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+-- SDKs provide similar functionality.+--+-- An IAM role can also have managed policies attached to it. To retrieve a+-- managed policy document that is attached to a role, use GetPolicy to+-- determine the policy\'s default version, then use GetPolicyVersion to+-- retrieve the policy document.+--+-- For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- For more information about roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html Using roles to delegate permissions and federate identities>.+module Amazonka.IAM.GetRolePolicy+ ( -- * Creating a Request+ GetRolePolicy (..),+ newGetRolePolicy,++ -- * Request Lenses+ getRolePolicy_roleName,+ getRolePolicy_policyName,++ -- * Destructuring the Response+ GetRolePolicyResponse (..),+ newGetRolePolicyResponse,++ -- * Response Lenses+ getRolePolicyResponse_httpStatus,+ getRolePolicyResponse_roleName,+ getRolePolicyResponse_policyName,+ getRolePolicyResponse_policyDocument,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetRolePolicy' smart constructor.+data GetRolePolicy = GetRolePolicy'+ { -- | The name of the role associated with the policy.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text,+ -- | The name of the policy document to get.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRolePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'getRolePolicy_roleName' - The name of the role associated with the policy.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyName', 'getRolePolicy_policyName' - The name of the policy document to get.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetRolePolicy ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ GetRolePolicy+newGetRolePolicy pRoleName_ pPolicyName_ =+ GetRolePolicy'+ { roleName = pRoleName_,+ policyName = pPolicyName_+ }++-- | The name of the role associated with the policy.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getRolePolicy_roleName :: Lens.Lens' GetRolePolicy Prelude.Text+getRolePolicy_roleName = Lens.lens (\GetRolePolicy' {roleName} -> roleName) (\s@GetRolePolicy' {} a -> s {roleName = a} :: GetRolePolicy)++-- | The name of the policy document to get.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getRolePolicy_policyName :: Lens.Lens' GetRolePolicy Prelude.Text+getRolePolicy_policyName = Lens.lens (\GetRolePolicy' {policyName} -> policyName) (\s@GetRolePolicy' {} a -> s {policyName = a} :: GetRolePolicy)++instance Core.AWSRequest GetRolePolicy where+ type+ AWSResponse GetRolePolicy =+ GetRolePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetRolePolicyResult"+ ( \s h x ->+ GetRolePolicyResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "RoleName")+ Prelude.<*> (x Data..@ "PolicyName")+ Prelude.<*> (x Data..@ "PolicyDocument")+ )++instance Prelude.Hashable GetRolePolicy where+ hashWithSalt _salt GetRolePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` policyName++instance Prelude.NFData GetRolePolicy where+ rnf GetRolePolicy' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf policyName++instance Data.ToHeaders GetRolePolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetRolePolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery GetRolePolicy where+ toQuery GetRolePolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetRolePolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "PolicyName" Data.=: policyName+ ]++-- | Contains the response to a successful GetRolePolicy request.+--+-- /See:/ 'newGetRolePolicyResponse' smart constructor.+data GetRolePolicyResponse = GetRolePolicyResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The role the policy is associated with.+ roleName :: Prelude.Text,+ -- | The name of the policy.+ policyName :: Prelude.Text,+ -- | The policy document.+ --+ -- IAM stores policies in JSON format. However, resources that were created+ -- using CloudFormation templates can be formatted in YAML. CloudFormation+ -- always converts a YAML policy to JSON format before submitting it to+ -- IAM.+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetRolePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getRolePolicyResponse_httpStatus' - The response's http status code.+--+-- 'roleName', 'getRolePolicyResponse_roleName' - The role the policy is associated with.+--+-- 'policyName', 'getRolePolicyResponse_policyName' - The name of the policy.+--+-- 'policyDocument', 'getRolePolicyResponse_policyDocument' - The policy document.+--+-- IAM stores policies in JSON format. However, resources that were created+-- using CloudFormation templates can be formatted in YAML. CloudFormation+-- always converts a YAML policy to JSON format before submitting it to+-- IAM.+newGetRolePolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'roleName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ GetRolePolicyResponse+newGetRolePolicyResponse+ pHttpStatus_+ pRoleName_+ pPolicyName_+ pPolicyDocument_ =+ GetRolePolicyResponse'+ { httpStatus = pHttpStatus_,+ roleName = pRoleName_,+ policyName = pPolicyName_,+ policyDocument = pPolicyDocument_+ }++-- | The response's http status code.+getRolePolicyResponse_httpStatus :: Lens.Lens' GetRolePolicyResponse Prelude.Int+getRolePolicyResponse_httpStatus = Lens.lens (\GetRolePolicyResponse' {httpStatus} -> httpStatus) (\s@GetRolePolicyResponse' {} a -> s {httpStatus = a} :: GetRolePolicyResponse)++-- | The role the policy is associated with.+getRolePolicyResponse_roleName :: Lens.Lens' GetRolePolicyResponse Prelude.Text+getRolePolicyResponse_roleName = Lens.lens (\GetRolePolicyResponse' {roleName} -> roleName) (\s@GetRolePolicyResponse' {} a -> s {roleName = a} :: GetRolePolicyResponse)++-- | The name of the policy.+getRolePolicyResponse_policyName :: Lens.Lens' GetRolePolicyResponse Prelude.Text+getRolePolicyResponse_policyName = Lens.lens (\GetRolePolicyResponse' {policyName} -> policyName) (\s@GetRolePolicyResponse' {} a -> s {policyName = a} :: GetRolePolicyResponse)++-- | The policy document.+--+-- IAM stores policies in JSON format. However, resources that were created+-- using CloudFormation templates can be formatted in YAML. CloudFormation+-- always converts a YAML policy to JSON format before submitting it to+-- IAM.+getRolePolicyResponse_policyDocument :: Lens.Lens' GetRolePolicyResponse Prelude.Text+getRolePolicyResponse_policyDocument = Lens.lens (\GetRolePolicyResponse' {policyDocument} -> policyDocument) (\s@GetRolePolicyResponse' {} a -> s {policyDocument = a} :: GetRolePolicyResponse)++instance Prelude.NFData GetRolePolicyResponse where+ rnf GetRolePolicyResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyDocument
+ gen/Amazonka/IAM/GetSAMLProvider.hs view
@@ -0,0 +1,237 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetSAMLProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the SAML provider metadocument that was uploaded when the IAM+-- SAML provider resource object was created or updated.+--+-- This operation requires+-- <https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4>.+module Amazonka.IAM.GetSAMLProvider+ ( -- * Creating a Request+ GetSAMLProvider (..),+ newGetSAMLProvider,++ -- * Request Lenses+ getSAMLProvider_sAMLProviderArn,++ -- * Destructuring the Response+ GetSAMLProviderResponse (..),+ newGetSAMLProviderResponse,++ -- * Response Lenses+ getSAMLProviderResponse_createDate,+ getSAMLProviderResponse_sAMLMetadataDocument,+ getSAMLProviderResponse_tags,+ getSAMLProviderResponse_validUntil,+ getSAMLProviderResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetSAMLProvider' smart constructor.+data GetSAMLProvider = GetSAMLProvider'+ { -- | The Amazon Resource Name (ARN) of the SAML provider resource object in+ -- IAM to get information about.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ sAMLProviderArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSAMLProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sAMLProviderArn', 'getSAMLProvider_sAMLProviderArn' - The Amazon Resource Name (ARN) of the SAML provider resource object in+-- IAM to get information about.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newGetSAMLProvider ::+ -- | 'sAMLProviderArn'+ Prelude.Text ->+ GetSAMLProvider+newGetSAMLProvider pSAMLProviderArn_ =+ GetSAMLProvider'+ { sAMLProviderArn =+ pSAMLProviderArn_+ }++-- | The Amazon Resource Name (ARN) of the SAML provider resource object in+-- IAM to get information about.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+getSAMLProvider_sAMLProviderArn :: Lens.Lens' GetSAMLProvider Prelude.Text+getSAMLProvider_sAMLProviderArn = Lens.lens (\GetSAMLProvider' {sAMLProviderArn} -> sAMLProviderArn) (\s@GetSAMLProvider' {} a -> s {sAMLProviderArn = a} :: GetSAMLProvider)++instance Core.AWSRequest GetSAMLProvider where+ type+ AWSResponse GetSAMLProvider =+ GetSAMLProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetSAMLProviderResult"+ ( \s h x ->+ GetSAMLProviderResponse'+ Prelude.<$> (x Data..@? "CreateDate")+ Prelude.<*> (x Data..@? "SAMLMetadataDocument")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "ValidUntil")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetSAMLProvider where+ hashWithSalt _salt GetSAMLProvider' {..} =+ _salt `Prelude.hashWithSalt` sAMLProviderArn++instance Prelude.NFData GetSAMLProvider where+ rnf GetSAMLProvider' {..} =+ Prelude.rnf sAMLProviderArn++instance Data.ToHeaders GetSAMLProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetSAMLProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery GetSAMLProvider where+ toQuery GetSAMLProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetSAMLProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SAMLProviderArn" Data.=: sAMLProviderArn+ ]++-- | Contains the response to a successful GetSAMLProvider request.+--+-- /See:/ 'newGetSAMLProviderResponse' smart constructor.+data GetSAMLProviderResponse = GetSAMLProviderResponse'+ { -- | The date and time when the SAML provider was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | The XML metadata document that includes information about an identity+ -- provider.+ sAMLMetadataDocument :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that are attached to the specified IAM SAML provider. The+ -- returned list of tags is sorted by tag key. For more information about+ -- tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The expiration date and time for the SAML provider.+ validUntil :: Prelude.Maybe Data.ISO8601,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSAMLProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createDate', 'getSAMLProviderResponse_createDate' - The date and time when the SAML provider was created.+--+-- 'sAMLMetadataDocument', 'getSAMLProviderResponse_sAMLMetadataDocument' - The XML metadata document that includes information about an identity+-- provider.+--+-- 'tags', 'getSAMLProviderResponse_tags' - A list of tags that are attached to the specified IAM SAML provider. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'validUntil', 'getSAMLProviderResponse_validUntil' - The expiration date and time for the SAML provider.+--+-- 'httpStatus', 'getSAMLProviderResponse_httpStatus' - The response's http status code.+newGetSAMLProviderResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetSAMLProviderResponse+newGetSAMLProviderResponse pHttpStatus_ =+ GetSAMLProviderResponse'+ { createDate =+ Prelude.Nothing,+ sAMLMetadataDocument = Prelude.Nothing,+ tags = Prelude.Nothing,+ validUntil = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The date and time when the SAML provider was created.+getSAMLProviderResponse_createDate :: Lens.Lens' GetSAMLProviderResponse (Prelude.Maybe Prelude.UTCTime)+getSAMLProviderResponse_createDate = Lens.lens (\GetSAMLProviderResponse' {createDate} -> createDate) (\s@GetSAMLProviderResponse' {} a -> s {createDate = a} :: GetSAMLProviderResponse) Prelude.. Lens.mapping Data._Time++-- | The XML metadata document that includes information about an identity+-- provider.+getSAMLProviderResponse_sAMLMetadataDocument :: Lens.Lens' GetSAMLProviderResponse (Prelude.Maybe Prelude.Text)+getSAMLProviderResponse_sAMLMetadataDocument = Lens.lens (\GetSAMLProviderResponse' {sAMLMetadataDocument} -> sAMLMetadataDocument) (\s@GetSAMLProviderResponse' {} a -> s {sAMLMetadataDocument = a} :: GetSAMLProviderResponse)++-- | A list of tags that are attached to the specified IAM SAML provider. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+getSAMLProviderResponse_tags :: Lens.Lens' GetSAMLProviderResponse (Prelude.Maybe [Tag])+getSAMLProviderResponse_tags = Lens.lens (\GetSAMLProviderResponse' {tags} -> tags) (\s@GetSAMLProviderResponse' {} a -> s {tags = a} :: GetSAMLProviderResponse) Prelude.. Lens.mapping Lens.coerced++-- | The expiration date and time for the SAML provider.+getSAMLProviderResponse_validUntil :: Lens.Lens' GetSAMLProviderResponse (Prelude.Maybe Prelude.UTCTime)+getSAMLProviderResponse_validUntil = Lens.lens (\GetSAMLProviderResponse' {validUntil} -> validUntil) (\s@GetSAMLProviderResponse' {} a -> s {validUntil = a} :: GetSAMLProviderResponse) Prelude.. Lens.mapping Data._Time++-- | The response's http status code.+getSAMLProviderResponse_httpStatus :: Lens.Lens' GetSAMLProviderResponse Prelude.Int+getSAMLProviderResponse_httpStatus = Lens.lens (\GetSAMLProviderResponse' {httpStatus} -> httpStatus) (\s@GetSAMLProviderResponse' {} a -> s {httpStatus = a} :: GetSAMLProviderResponse)++instance Prelude.NFData GetSAMLProviderResponse where+ rnf GetSAMLProviderResponse' {..} =+ Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf sAMLMetadataDocument+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf validUntil+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetSSHPublicKey.hs view
@@ -0,0 +1,237 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetSSHPublicKey+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves the specified SSH public key, including metadata about the+-- key.+--+-- The SSH public key retrieved by this operation is used only for+-- authenticating the associated IAM user to an CodeCommit repository. For+-- more information about using SSH keys to authenticate to an CodeCommit+-- repository, see+-- <https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up CodeCommit for SSH connections>+-- in the /CodeCommit User Guide/.+module Amazonka.IAM.GetSSHPublicKey+ ( -- * Creating a Request+ GetSSHPublicKey (..),+ newGetSSHPublicKey,++ -- * Request Lenses+ getSSHPublicKey_userName,+ getSSHPublicKey_sSHPublicKeyId,+ getSSHPublicKey_encoding,++ -- * Destructuring the Response+ GetSSHPublicKeyResponse (..),+ newGetSSHPublicKeyResponse,++ -- * Response Lenses+ getSSHPublicKeyResponse_sSHPublicKey,+ getSSHPublicKeyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetSSHPublicKey' smart constructor.+data GetSSHPublicKey = GetSSHPublicKey'+ { -- | The name of the IAM user associated with the SSH public key.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The unique identifier for the SSH public key.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ sSHPublicKeyId :: Prelude.Text,+ -- | Specifies the public key encoding format to use in the response. To+ -- retrieve the public key in ssh-rsa format, use @SSH@. To retrieve the+ -- public key in PEM format, use @PEM@.+ encoding :: EncodingType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSSHPublicKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'getSSHPublicKey_userName' - The name of the IAM user associated with the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'sSHPublicKeyId', 'getSSHPublicKey_sSHPublicKeyId' - The unique identifier for the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+--+-- 'encoding', 'getSSHPublicKey_encoding' - Specifies the public key encoding format to use in the response. To+-- retrieve the public key in ssh-rsa format, use @SSH@. To retrieve the+-- public key in PEM format, use @PEM@.+newGetSSHPublicKey ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'sSHPublicKeyId'+ Prelude.Text ->+ -- | 'encoding'+ EncodingType ->+ GetSSHPublicKey+newGetSSHPublicKey+ pUserName_+ pSSHPublicKeyId_+ pEncoding_ =+ GetSSHPublicKey'+ { userName = pUserName_,+ sSHPublicKeyId = pSSHPublicKeyId_,+ encoding = pEncoding_+ }++-- | The name of the IAM user associated with the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getSSHPublicKey_userName :: Lens.Lens' GetSSHPublicKey Prelude.Text+getSSHPublicKey_userName = Lens.lens (\GetSSHPublicKey' {userName} -> userName) (\s@GetSSHPublicKey' {} a -> s {userName = a} :: GetSSHPublicKey)++-- | The unique identifier for the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+getSSHPublicKey_sSHPublicKeyId :: Lens.Lens' GetSSHPublicKey Prelude.Text+getSSHPublicKey_sSHPublicKeyId = Lens.lens (\GetSSHPublicKey' {sSHPublicKeyId} -> sSHPublicKeyId) (\s@GetSSHPublicKey' {} a -> s {sSHPublicKeyId = a} :: GetSSHPublicKey)++-- | Specifies the public key encoding format to use in the response. To+-- retrieve the public key in ssh-rsa format, use @SSH@. To retrieve the+-- public key in PEM format, use @PEM@.+getSSHPublicKey_encoding :: Lens.Lens' GetSSHPublicKey EncodingType+getSSHPublicKey_encoding = Lens.lens (\GetSSHPublicKey' {encoding} -> encoding) (\s@GetSSHPublicKey' {} a -> s {encoding = a} :: GetSSHPublicKey)++instance Core.AWSRequest GetSSHPublicKey where+ type+ AWSResponse GetSSHPublicKey =+ GetSSHPublicKeyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetSSHPublicKeyResult"+ ( \s h x ->+ GetSSHPublicKeyResponse'+ Prelude.<$> (x Data..@? "SSHPublicKey")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetSSHPublicKey where+ hashWithSalt _salt GetSSHPublicKey' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` sSHPublicKeyId+ `Prelude.hashWithSalt` encoding++instance Prelude.NFData GetSSHPublicKey where+ rnf GetSSHPublicKey' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf sSHPublicKeyId+ `Prelude.seq` Prelude.rnf encoding++instance Data.ToHeaders GetSSHPublicKey where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetSSHPublicKey where+ toPath = Prelude.const "/"++instance Data.ToQuery GetSSHPublicKey where+ toQuery GetSSHPublicKey' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetSSHPublicKey" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "SSHPublicKeyId" Data.=: sSHPublicKeyId,+ "Encoding" Data.=: encoding+ ]++-- | Contains the response to a successful GetSSHPublicKey request.+--+-- /See:/ 'newGetSSHPublicKeyResponse' smart constructor.+data GetSSHPublicKeyResponse = GetSSHPublicKeyResponse'+ { -- | A structure containing details about the SSH public key.+ sSHPublicKey :: Prelude.Maybe SSHPublicKey,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSSHPublicKeyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sSHPublicKey', 'getSSHPublicKeyResponse_sSHPublicKey' - A structure containing details about the SSH public key.+--+-- 'httpStatus', 'getSSHPublicKeyResponse_httpStatus' - The response's http status code.+newGetSSHPublicKeyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetSSHPublicKeyResponse+newGetSSHPublicKeyResponse pHttpStatus_ =+ GetSSHPublicKeyResponse'+ { sSHPublicKey =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure containing details about the SSH public key.+getSSHPublicKeyResponse_sSHPublicKey :: Lens.Lens' GetSSHPublicKeyResponse (Prelude.Maybe SSHPublicKey)+getSSHPublicKeyResponse_sSHPublicKey = Lens.lens (\GetSSHPublicKeyResponse' {sSHPublicKey} -> sSHPublicKey) (\s@GetSSHPublicKeyResponse' {} a -> s {sSHPublicKey = a} :: GetSSHPublicKeyResponse)++-- | The response's http status code.+getSSHPublicKeyResponse_httpStatus :: Lens.Lens' GetSSHPublicKeyResponse Prelude.Int+getSSHPublicKeyResponse_httpStatus = Lens.lens (\GetSSHPublicKeyResponse' {httpStatus} -> httpStatus) (\s@GetSSHPublicKeyResponse' {} a -> s {httpStatus = a} :: GetSSHPublicKeyResponse)++instance Prelude.NFData GetSSHPublicKeyResponse where+ rnf GetSSHPublicKeyResponse' {..} =+ Prelude.rnf sSHPublicKey+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/GetServerCertificate.hs view
@@ -0,0 +1,193 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetServerCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about the specified server certificate stored in+-- IAM.+--+-- For more information about working with server certificates, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with server certificates>+-- in the /IAM User Guide/. This topic includes a list of Amazon Web+-- Services services that can use the server certificates that you manage+-- with IAM.+module Amazonka.IAM.GetServerCertificate+ ( -- * Creating a Request+ GetServerCertificate (..),+ newGetServerCertificate,++ -- * Request Lenses+ getServerCertificate_serverCertificateName,++ -- * Destructuring the Response+ GetServerCertificateResponse (..),+ newGetServerCertificateResponse,++ -- * Response Lenses+ getServerCertificateResponse_httpStatus,+ getServerCertificateResponse_serverCertificate,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetServerCertificate' smart constructor.+data GetServerCertificate = GetServerCertificate'+ { -- | The name of the server certificate you want to retrieve information+ -- about.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serverCertificateName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServerCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serverCertificateName', 'getServerCertificate_serverCertificateName' - The name of the server certificate you want to retrieve information+-- about.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetServerCertificate ::+ -- | 'serverCertificateName'+ Prelude.Text ->+ GetServerCertificate+newGetServerCertificate pServerCertificateName_ =+ GetServerCertificate'+ { serverCertificateName =+ pServerCertificateName_+ }++-- | The name of the server certificate you want to retrieve information+-- about.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getServerCertificate_serverCertificateName :: Lens.Lens' GetServerCertificate Prelude.Text+getServerCertificate_serverCertificateName = Lens.lens (\GetServerCertificate' {serverCertificateName} -> serverCertificateName) (\s@GetServerCertificate' {} a -> s {serverCertificateName = a} :: GetServerCertificate)++instance Core.AWSRequest GetServerCertificate where+ type+ AWSResponse GetServerCertificate =+ GetServerCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetServerCertificateResult"+ ( \s h x ->+ GetServerCertificateResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "ServerCertificate")+ )++instance Prelude.Hashable GetServerCertificate where+ hashWithSalt _salt GetServerCertificate' {..} =+ _salt `Prelude.hashWithSalt` serverCertificateName++instance Prelude.NFData GetServerCertificate where+ rnf GetServerCertificate' {..} =+ Prelude.rnf serverCertificateName++instance Data.ToHeaders GetServerCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetServerCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery GetServerCertificate where+ toQuery GetServerCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetServerCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "ServerCertificateName"+ Data.=: serverCertificateName+ ]++-- | Contains the response to a successful GetServerCertificate request.+--+-- /See:/ 'newGetServerCertificateResponse' smart constructor.+data GetServerCertificateResponse = GetServerCertificateResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing details about the server certificate.+ serverCertificate :: ServerCertificate+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServerCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getServerCertificateResponse_httpStatus' - The response's http status code.+--+-- 'serverCertificate', 'getServerCertificateResponse_serverCertificate' - A structure containing details about the server certificate.+newGetServerCertificateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'serverCertificate'+ ServerCertificate ->+ GetServerCertificateResponse+newGetServerCertificateResponse+ pHttpStatus_+ pServerCertificate_ =+ GetServerCertificateResponse'+ { httpStatus =+ pHttpStatus_,+ serverCertificate = pServerCertificate_+ }++-- | The response's http status code.+getServerCertificateResponse_httpStatus :: Lens.Lens' GetServerCertificateResponse Prelude.Int+getServerCertificateResponse_httpStatus = Lens.lens (\GetServerCertificateResponse' {httpStatus} -> httpStatus) (\s@GetServerCertificateResponse' {} a -> s {httpStatus = a} :: GetServerCertificateResponse)++-- | A structure containing details about the server certificate.+getServerCertificateResponse_serverCertificate :: Lens.Lens' GetServerCertificateResponse ServerCertificate+getServerCertificateResponse_serverCertificate = Lens.lens (\GetServerCertificateResponse' {serverCertificate} -> serverCertificate) (\s@GetServerCertificateResponse' {} a -> s {serverCertificate = a} :: GetServerCertificateResponse)++instance Prelude.NFData GetServerCertificateResponse where+ rnf GetServerCertificateResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf serverCertificate
+ gen/Amazonka/IAM/GetServiceLastAccessedDetails.hs view
@@ -0,0 +1,450 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetServiceLastAccessedDetails+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a service last accessed report that was created using the+-- @GenerateServiceLastAccessedDetails@ operation. You can use the @JobId@+-- parameter in @GetServiceLastAccessedDetails@ to retrieve the status of+-- your report job. When the report is complete, you can retrieve the+-- generated report. The report includes a list of Amazon Web Services+-- services that the resource (user, group, role, or managed policy) can+-- access.+--+-- Service last accessed data does not use other policy types when+-- determining whether a resource could access a service. These other+-- policy types include resource-based policies, access control lists,+-- Organizations policies, IAM permissions boundaries, and STS assume role+-- policies. It only applies permissions policy logic. For more about the+-- evaluation of policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics Evaluating policies>+-- in the /IAM User Guide/.+--+-- For each service that the resource could access using permissions+-- policies, the operation returns details about the most recent access+-- attempt. If there was no attempt, the service is listed without details+-- about the most recent attempt to access the service. If the operation+-- fails, the @GetServiceLastAccessedDetails@ operation returns the reason+-- that it failed.+--+-- The @GetServiceLastAccessedDetails@ operation returns a list of+-- services. This list includes the number of entities that have attempted+-- to access the service and the date and time of the last attempt. It also+-- returns the ARN of the following entity, depending on the resource ARN+-- that you used to generate the report:+--+-- - __User__ – Returns the user ARN that you used to generate the report+--+-- - __Group__ – Returns the ARN of the group member (user) that last+-- attempted to access the service+--+-- - __Role__ – Returns the role ARN that you used to generate the report+--+-- - __Policy__ – Returns the ARN of the user or role that last used the+-- policy to attempt to access the service+--+-- By default, the list is sorted by service namespace.+--+-- If you specified @ACTION_LEVEL@ granularity when you generated the+-- report, this operation returns service and action last accessed data.+-- This includes the most recent access attempt for each tracked action+-- within a service. Otherwise, this operation returns only service data.+--+-- For more information about service and action last accessed data, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html Reducing permissions using service last accessed data>+-- in the /IAM User Guide/.+module Amazonka.IAM.GetServiceLastAccessedDetails+ ( -- * Creating a Request+ GetServiceLastAccessedDetails (..),+ newGetServiceLastAccessedDetails,++ -- * Request Lenses+ getServiceLastAccessedDetails_marker,+ getServiceLastAccessedDetails_maxItems,+ getServiceLastAccessedDetails_jobId,++ -- * Destructuring the Response+ GetServiceLastAccessedDetailsResponse (..),+ newGetServiceLastAccessedDetailsResponse,++ -- * Response Lenses+ getServiceLastAccessedDetailsResponse_error,+ getServiceLastAccessedDetailsResponse_isTruncated,+ getServiceLastAccessedDetailsResponse_jobType,+ getServiceLastAccessedDetailsResponse_marker,+ getServiceLastAccessedDetailsResponse_httpStatus,+ getServiceLastAccessedDetailsResponse_jobStatus,+ getServiceLastAccessedDetailsResponse_jobCreationDate,+ getServiceLastAccessedDetailsResponse_servicesLastAccessed,+ getServiceLastAccessedDetailsResponse_jobCompletionDate,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetServiceLastAccessedDetails' smart constructor.+data GetServiceLastAccessedDetails = GetServiceLastAccessedDetails'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The ID of the request generated by the+ -- GenerateServiceLastAccessedDetails operation. The @JobId@ returned by+ -- @GenerateServiceLastAccessedDetail@ must be used by the same role within+ -- a session, or by the same user when used to call+ -- @GetServiceLastAccessedDetail@.+ jobId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServiceLastAccessedDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'getServiceLastAccessedDetails_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'getServiceLastAccessedDetails_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'jobId', 'getServiceLastAccessedDetails_jobId' - The ID of the request generated by the+-- GenerateServiceLastAccessedDetails operation. The @JobId@ returned by+-- @GenerateServiceLastAccessedDetail@ must be used by the same role within+-- a session, or by the same user when used to call+-- @GetServiceLastAccessedDetail@.+newGetServiceLastAccessedDetails ::+ -- | 'jobId'+ Prelude.Text ->+ GetServiceLastAccessedDetails+newGetServiceLastAccessedDetails pJobId_ =+ GetServiceLastAccessedDetails'+ { marker =+ Prelude.Nothing,+ maxItems = Prelude.Nothing,+ jobId = pJobId_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+getServiceLastAccessedDetails_marker :: Lens.Lens' GetServiceLastAccessedDetails (Prelude.Maybe Prelude.Text)+getServiceLastAccessedDetails_marker = Lens.lens (\GetServiceLastAccessedDetails' {marker} -> marker) (\s@GetServiceLastAccessedDetails' {} a -> s {marker = a} :: GetServiceLastAccessedDetails)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+getServiceLastAccessedDetails_maxItems :: Lens.Lens' GetServiceLastAccessedDetails (Prelude.Maybe Prelude.Natural)+getServiceLastAccessedDetails_maxItems = Lens.lens (\GetServiceLastAccessedDetails' {maxItems} -> maxItems) (\s@GetServiceLastAccessedDetails' {} a -> s {maxItems = a} :: GetServiceLastAccessedDetails)++-- | The ID of the request generated by the+-- GenerateServiceLastAccessedDetails operation. The @JobId@ returned by+-- @GenerateServiceLastAccessedDetail@ must be used by the same role within+-- a session, or by the same user when used to call+-- @GetServiceLastAccessedDetail@.+getServiceLastAccessedDetails_jobId :: Lens.Lens' GetServiceLastAccessedDetails Prelude.Text+getServiceLastAccessedDetails_jobId = Lens.lens (\GetServiceLastAccessedDetails' {jobId} -> jobId) (\s@GetServiceLastAccessedDetails' {} a -> s {jobId = a} :: GetServiceLastAccessedDetails)++instance+ Core.AWSRequest+ GetServiceLastAccessedDetails+ where+ type+ AWSResponse GetServiceLastAccessedDetails =+ GetServiceLastAccessedDetailsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetServiceLastAccessedDetailsResult"+ ( \s h x ->+ GetServiceLastAccessedDetailsResponse'+ Prelude.<$> (x Data..@? "Error")+ Prelude.<*> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "JobType")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "JobStatus")+ Prelude.<*> (x Data..@ "JobCreationDate")+ Prelude.<*> ( x+ Data..@? "ServicesLastAccessed"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ Prelude.<*> (x Data..@ "JobCompletionDate")+ )++instance+ Prelude.Hashable+ GetServiceLastAccessedDetails+ where+ hashWithSalt _salt GetServiceLastAccessedDetails' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` jobId++instance Prelude.NFData GetServiceLastAccessedDetails where+ rnf GetServiceLastAccessedDetails' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf jobId++instance Data.ToHeaders GetServiceLastAccessedDetails where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetServiceLastAccessedDetails where+ toPath = Prelude.const "/"++instance Data.ToQuery GetServiceLastAccessedDetails where+ toQuery GetServiceLastAccessedDetails' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GetServiceLastAccessedDetails" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "JobId" Data.=: jobId+ ]++-- | /See:/ 'newGetServiceLastAccessedDetailsResponse' smart constructor.+data GetServiceLastAccessedDetailsResponse = GetServiceLastAccessedDetailsResponse'+ { -- | An object that contains details about the reason the operation failed.+ error :: Prelude.Maybe ErrorDetails,+ -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | The type of job. Service jobs return information about when each service+ -- was last accessed. Action jobs also include information about when+ -- tracked actions within the service were last accessed.+ jobType :: Prelude.Maybe AccessAdvisorUsageGranularityType,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The status of the job.+ jobStatus :: JobStatusType,+ -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- report job was created.+ jobCreationDate :: Data.ISO8601,+ -- | A @ServiceLastAccessed@ object that contains details about the most+ -- recent attempt to access the service.+ servicesLastAccessed :: [ServiceLastAccessed],+ -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- generated report job was completed or failed.+ --+ -- This field is null if the job is still in progress, as indicated by a+ -- job status value of @IN_PROGRESS@.+ jobCompletionDate :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServiceLastAccessedDetailsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'error', 'getServiceLastAccessedDetailsResponse_error' - An object that contains details about the reason the operation failed.+--+-- 'isTruncated', 'getServiceLastAccessedDetailsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'jobType', 'getServiceLastAccessedDetailsResponse_jobType' - The type of job. Service jobs return information about when each service+-- was last accessed. Action jobs also include information about when+-- tracked actions within the service were last accessed.+--+-- 'marker', 'getServiceLastAccessedDetailsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'getServiceLastAccessedDetailsResponse_httpStatus' - The response's http status code.+--+-- 'jobStatus', 'getServiceLastAccessedDetailsResponse_jobStatus' - The status of the job.+--+-- 'jobCreationDate', 'getServiceLastAccessedDetailsResponse_jobCreationDate' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- report job was created.+--+-- 'servicesLastAccessed', 'getServiceLastAccessedDetailsResponse_servicesLastAccessed' - A @ServiceLastAccessed@ object that contains details about the most+-- recent attempt to access the service.+--+-- 'jobCompletionDate', 'getServiceLastAccessedDetailsResponse_jobCompletionDate' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- generated report job was completed or failed.+--+-- This field is null if the job is still in progress, as indicated by a+-- job status value of @IN_PROGRESS@.+newGetServiceLastAccessedDetailsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'jobStatus'+ JobStatusType ->+ -- | 'jobCreationDate'+ Prelude.UTCTime ->+ -- | 'jobCompletionDate'+ Prelude.UTCTime ->+ GetServiceLastAccessedDetailsResponse+newGetServiceLastAccessedDetailsResponse+ pHttpStatus_+ pJobStatus_+ pJobCreationDate_+ pJobCompletionDate_ =+ GetServiceLastAccessedDetailsResponse'+ { error =+ Prelude.Nothing,+ isTruncated = Prelude.Nothing,+ jobType = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ jobStatus = pJobStatus_,+ jobCreationDate =+ Data._Time+ Lens.# pJobCreationDate_,+ servicesLastAccessed =+ Prelude.mempty,+ jobCompletionDate =+ Data._Time+ Lens.# pJobCompletionDate_+ }++-- | An object that contains details about the reason the operation failed.+getServiceLastAccessedDetailsResponse_error :: Lens.Lens' GetServiceLastAccessedDetailsResponse (Prelude.Maybe ErrorDetails)+getServiceLastAccessedDetailsResponse_error = Lens.lens (\GetServiceLastAccessedDetailsResponse' {error} -> error) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {error = a} :: GetServiceLastAccessedDetailsResponse)++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+getServiceLastAccessedDetailsResponse_isTruncated :: Lens.Lens' GetServiceLastAccessedDetailsResponse (Prelude.Maybe Prelude.Bool)+getServiceLastAccessedDetailsResponse_isTruncated = Lens.lens (\GetServiceLastAccessedDetailsResponse' {isTruncated} -> isTruncated) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {isTruncated = a} :: GetServiceLastAccessedDetailsResponse)++-- | The type of job. Service jobs return information about when each service+-- was last accessed. Action jobs also include information about when+-- tracked actions within the service were last accessed.+getServiceLastAccessedDetailsResponse_jobType :: Lens.Lens' GetServiceLastAccessedDetailsResponse (Prelude.Maybe AccessAdvisorUsageGranularityType)+getServiceLastAccessedDetailsResponse_jobType = Lens.lens (\GetServiceLastAccessedDetailsResponse' {jobType} -> jobType) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {jobType = a} :: GetServiceLastAccessedDetailsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+getServiceLastAccessedDetailsResponse_marker :: Lens.Lens' GetServiceLastAccessedDetailsResponse (Prelude.Maybe Prelude.Text)+getServiceLastAccessedDetailsResponse_marker = Lens.lens (\GetServiceLastAccessedDetailsResponse' {marker} -> marker) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {marker = a} :: GetServiceLastAccessedDetailsResponse)++-- | The response's http status code.+getServiceLastAccessedDetailsResponse_httpStatus :: Lens.Lens' GetServiceLastAccessedDetailsResponse Prelude.Int+getServiceLastAccessedDetailsResponse_httpStatus = Lens.lens (\GetServiceLastAccessedDetailsResponse' {httpStatus} -> httpStatus) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {httpStatus = a} :: GetServiceLastAccessedDetailsResponse)++-- | The status of the job.+getServiceLastAccessedDetailsResponse_jobStatus :: Lens.Lens' GetServiceLastAccessedDetailsResponse JobStatusType+getServiceLastAccessedDetailsResponse_jobStatus = Lens.lens (\GetServiceLastAccessedDetailsResponse' {jobStatus} -> jobStatus) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {jobStatus = a} :: GetServiceLastAccessedDetailsResponse)++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- report job was created.+getServiceLastAccessedDetailsResponse_jobCreationDate :: Lens.Lens' GetServiceLastAccessedDetailsResponse Prelude.UTCTime+getServiceLastAccessedDetailsResponse_jobCreationDate = Lens.lens (\GetServiceLastAccessedDetailsResponse' {jobCreationDate} -> jobCreationDate) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {jobCreationDate = a} :: GetServiceLastAccessedDetailsResponse) Prelude.. Data._Time++-- | A @ServiceLastAccessed@ object that contains details about the most+-- recent attempt to access the service.+getServiceLastAccessedDetailsResponse_servicesLastAccessed :: Lens.Lens' GetServiceLastAccessedDetailsResponse [ServiceLastAccessed]+getServiceLastAccessedDetailsResponse_servicesLastAccessed = Lens.lens (\GetServiceLastAccessedDetailsResponse' {servicesLastAccessed} -> servicesLastAccessed) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {servicesLastAccessed = a} :: GetServiceLastAccessedDetailsResponse) Prelude.. Lens.coerced++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- generated report job was completed or failed.+--+-- This field is null if the job is still in progress, as indicated by a+-- job status value of @IN_PROGRESS@.+getServiceLastAccessedDetailsResponse_jobCompletionDate :: Lens.Lens' GetServiceLastAccessedDetailsResponse Prelude.UTCTime+getServiceLastAccessedDetailsResponse_jobCompletionDate = Lens.lens (\GetServiceLastAccessedDetailsResponse' {jobCompletionDate} -> jobCompletionDate) (\s@GetServiceLastAccessedDetailsResponse' {} a -> s {jobCompletionDate = a} :: GetServiceLastAccessedDetailsResponse) Prelude.. Data._Time++instance+ Prelude.NFData+ GetServiceLastAccessedDetailsResponse+ where+ rnf GetServiceLastAccessedDetailsResponse' {..} =+ Prelude.rnf error+ `Prelude.seq` Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf jobType+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf jobStatus+ `Prelude.seq` Prelude.rnf jobCreationDate+ `Prelude.seq` Prelude.rnf servicesLastAccessed+ `Prelude.seq` Prelude.rnf jobCompletionDate
+ gen/Amazonka/IAM/GetServiceLastAccessedDetailsWithEntities.hs view
@@ -0,0 +1,469 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- After you generate a group or policy report using the+-- @GenerateServiceLastAccessedDetails@ operation, you can use the @JobId@+-- parameter in @GetServiceLastAccessedDetailsWithEntities@. This operation+-- retrieves the status of your report job and a list of entities that+-- could have used group or policy permissions to access the specified+-- service.+--+-- - __Group__ – For a group report, this operation returns a list of+-- users in the group that could have used the group’s policies in an+-- attempt to access the service.+--+-- - __Policy__ – For a policy report, this operation returns a list of+-- entities (users or roles) that could have used the policy in an+-- attempt to access the service.+--+-- You can also use this operation for user or role reports to retrieve+-- details about those entities.+--+-- If the operation fails, the @GetServiceLastAccessedDetailsWithEntities@+-- operation returns the reason that it failed.+--+-- By default, the list of associated entities is sorted by date, with the+-- most recent access listed first.+module Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities+ ( -- * Creating a Request+ GetServiceLastAccessedDetailsWithEntities (..),+ newGetServiceLastAccessedDetailsWithEntities,++ -- * Request Lenses+ getServiceLastAccessedDetailsWithEntities_marker,+ getServiceLastAccessedDetailsWithEntities_maxItems,+ getServiceLastAccessedDetailsWithEntities_jobId,+ getServiceLastAccessedDetailsWithEntities_serviceNamespace,++ -- * Destructuring the Response+ GetServiceLastAccessedDetailsWithEntitiesResponse (..),+ newGetServiceLastAccessedDetailsWithEntitiesResponse,++ -- * Response Lenses+ getServiceLastAccessedDetailsWithEntitiesResponse_error,+ getServiceLastAccessedDetailsWithEntitiesResponse_isTruncated,+ getServiceLastAccessedDetailsWithEntitiesResponse_marker,+ getServiceLastAccessedDetailsWithEntitiesResponse_httpStatus,+ getServiceLastAccessedDetailsWithEntitiesResponse_jobStatus,+ getServiceLastAccessedDetailsWithEntitiesResponse_jobCreationDate,+ getServiceLastAccessedDetailsWithEntitiesResponse_jobCompletionDate,+ getServiceLastAccessedDetailsWithEntitiesResponse_entityDetailsList,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetServiceLastAccessedDetailsWithEntities' smart constructor.+data GetServiceLastAccessedDetailsWithEntities = GetServiceLastAccessedDetailsWithEntities'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The ID of the request generated by the+ -- @GenerateServiceLastAccessedDetails@ operation.+ jobId :: Prelude.Text,+ -- | The service namespace for an Amazon Web Services service. Provide the+ -- service namespace to learn when the IAM entity last attempted to access+ -- the specified service.+ --+ -- To learn the service namespace for a service, see+ -- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+ -- in the /IAM User Guide/. Choose the name of the service to view details+ -- for that service. In the first paragraph, find the service prefix. For+ -- example, @(service prefix: a4b)@. For more information about service+ -- namespaces, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+ -- in the /Amazon Web Services General Reference/.+ serviceNamespace :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServiceLastAccessedDetailsWithEntities' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'getServiceLastAccessedDetailsWithEntities_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'getServiceLastAccessedDetailsWithEntities_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'jobId', 'getServiceLastAccessedDetailsWithEntities_jobId' - The ID of the request generated by the+-- @GenerateServiceLastAccessedDetails@ operation.+--+-- 'serviceNamespace', 'getServiceLastAccessedDetailsWithEntities_serviceNamespace' - The service namespace for an Amazon Web Services service. Provide the+-- service namespace to learn when the IAM entity last attempted to access+-- the specified service.+--+-- To learn the service namespace for a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /IAM User Guide/. Choose the name of the service to view details+-- for that service. In the first paragraph, find the service prefix. For+-- example, @(service prefix: a4b)@. For more information about service+-- namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+-- in the /Amazon Web Services General Reference/.+newGetServiceLastAccessedDetailsWithEntities ::+ -- | 'jobId'+ Prelude.Text ->+ -- | 'serviceNamespace'+ Prelude.Text ->+ GetServiceLastAccessedDetailsWithEntities+newGetServiceLastAccessedDetailsWithEntities+ pJobId_+ pServiceNamespace_ =+ GetServiceLastAccessedDetailsWithEntities'+ { marker =+ Prelude.Nothing,+ maxItems = Prelude.Nothing,+ jobId = pJobId_,+ serviceNamespace =+ pServiceNamespace_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+getServiceLastAccessedDetailsWithEntities_marker :: Lens.Lens' GetServiceLastAccessedDetailsWithEntities (Prelude.Maybe Prelude.Text)+getServiceLastAccessedDetailsWithEntities_marker = Lens.lens (\GetServiceLastAccessedDetailsWithEntities' {marker} -> marker) (\s@GetServiceLastAccessedDetailsWithEntities' {} a -> s {marker = a} :: GetServiceLastAccessedDetailsWithEntities)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+getServiceLastAccessedDetailsWithEntities_maxItems :: Lens.Lens' GetServiceLastAccessedDetailsWithEntities (Prelude.Maybe Prelude.Natural)+getServiceLastAccessedDetailsWithEntities_maxItems = Lens.lens (\GetServiceLastAccessedDetailsWithEntities' {maxItems} -> maxItems) (\s@GetServiceLastAccessedDetailsWithEntities' {} a -> s {maxItems = a} :: GetServiceLastAccessedDetailsWithEntities)++-- | The ID of the request generated by the+-- @GenerateServiceLastAccessedDetails@ operation.+getServiceLastAccessedDetailsWithEntities_jobId :: Lens.Lens' GetServiceLastAccessedDetailsWithEntities Prelude.Text+getServiceLastAccessedDetailsWithEntities_jobId = Lens.lens (\GetServiceLastAccessedDetailsWithEntities' {jobId} -> jobId) (\s@GetServiceLastAccessedDetailsWithEntities' {} a -> s {jobId = a} :: GetServiceLastAccessedDetailsWithEntities)++-- | The service namespace for an Amazon Web Services service. Provide the+-- service namespace to learn when the IAM entity last attempted to access+-- the specified service.+--+-- To learn the service namespace for a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /IAM User Guide/. Choose the name of the service to view details+-- for that service. In the first paragraph, find the service prefix. For+-- example, @(service prefix: a4b)@. For more information about service+-- namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+-- in the /Amazon Web Services General Reference/.+getServiceLastAccessedDetailsWithEntities_serviceNamespace :: Lens.Lens' GetServiceLastAccessedDetailsWithEntities Prelude.Text+getServiceLastAccessedDetailsWithEntities_serviceNamespace = Lens.lens (\GetServiceLastAccessedDetailsWithEntities' {serviceNamespace} -> serviceNamespace) (\s@GetServiceLastAccessedDetailsWithEntities' {} a -> s {serviceNamespace = a} :: GetServiceLastAccessedDetailsWithEntities)++instance+ Core.AWSRequest+ GetServiceLastAccessedDetailsWithEntities+ where+ type+ AWSResponse+ GetServiceLastAccessedDetailsWithEntities =+ GetServiceLastAccessedDetailsWithEntitiesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetServiceLastAccessedDetailsWithEntitiesResult"+ ( \s h x ->+ GetServiceLastAccessedDetailsWithEntitiesResponse'+ Prelude.<$> (x Data..@? "Error")+ Prelude.<*> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "JobStatus")+ Prelude.<*> (x Data..@ "JobCreationDate")+ Prelude.<*> (x Data..@ "JobCompletionDate")+ Prelude.<*> ( x+ Data..@? "EntityDetailsList"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance+ Prelude.Hashable+ GetServiceLastAccessedDetailsWithEntities+ where+ hashWithSalt+ _salt+ GetServiceLastAccessedDetailsWithEntities' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` jobId+ `Prelude.hashWithSalt` serviceNamespace++instance+ Prelude.NFData+ GetServiceLastAccessedDetailsWithEntities+ where+ rnf GetServiceLastAccessedDetailsWithEntities' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf jobId+ `Prelude.seq` Prelude.rnf serviceNamespace++instance+ Data.ToHeaders+ GetServiceLastAccessedDetailsWithEntities+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ GetServiceLastAccessedDetailsWithEntities+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ GetServiceLastAccessedDetailsWithEntities+ where+ toQuery+ GetServiceLastAccessedDetailsWithEntities' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GetServiceLastAccessedDetailsWithEntities" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "JobId" Data.=: jobId,+ "ServiceNamespace" Data.=: serviceNamespace+ ]++-- | /See:/ 'newGetServiceLastAccessedDetailsWithEntitiesResponse' smart constructor.+data GetServiceLastAccessedDetailsWithEntitiesResponse = GetServiceLastAccessedDetailsWithEntitiesResponse'+ { -- | An object that contains details about the reason the operation failed.+ error :: Prelude.Maybe ErrorDetails,+ -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The status of the job.+ jobStatus :: JobStatusType,+ -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- report job was created.+ jobCreationDate :: Data.ISO8601,+ -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- generated report job was completed or failed.+ --+ -- This field is null if the job is still in progress, as indicated by a+ -- job status value of @IN_PROGRESS@.+ jobCompletionDate :: Data.ISO8601,+ -- | An @EntityDetailsList@ object that contains details about when an IAM+ -- entity (user or role) used group or policy permissions in an attempt to+ -- access the specified Amazon Web Services service.+ entityDetailsList :: [EntityDetails]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServiceLastAccessedDetailsWithEntitiesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'error', 'getServiceLastAccessedDetailsWithEntitiesResponse_error' - An object that contains details about the reason the operation failed.+--+-- 'isTruncated', 'getServiceLastAccessedDetailsWithEntitiesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'getServiceLastAccessedDetailsWithEntitiesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'getServiceLastAccessedDetailsWithEntitiesResponse_httpStatus' - The response's http status code.+--+-- 'jobStatus', 'getServiceLastAccessedDetailsWithEntitiesResponse_jobStatus' - The status of the job.+--+-- 'jobCreationDate', 'getServiceLastAccessedDetailsWithEntitiesResponse_jobCreationDate' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- report job was created.+--+-- 'jobCompletionDate', 'getServiceLastAccessedDetailsWithEntitiesResponse_jobCompletionDate' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- generated report job was completed or failed.+--+-- This field is null if the job is still in progress, as indicated by a+-- job status value of @IN_PROGRESS@.+--+-- 'entityDetailsList', 'getServiceLastAccessedDetailsWithEntitiesResponse_entityDetailsList' - An @EntityDetailsList@ object that contains details about when an IAM+-- entity (user or role) used group or policy permissions in an attempt to+-- access the specified Amazon Web Services service.+newGetServiceLastAccessedDetailsWithEntitiesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'jobStatus'+ JobStatusType ->+ -- | 'jobCreationDate'+ Prelude.UTCTime ->+ -- | 'jobCompletionDate'+ Prelude.UTCTime ->+ GetServiceLastAccessedDetailsWithEntitiesResponse+newGetServiceLastAccessedDetailsWithEntitiesResponse+ pHttpStatus_+ pJobStatus_+ pJobCreationDate_+ pJobCompletionDate_ =+ GetServiceLastAccessedDetailsWithEntitiesResponse'+ { error =+ Prelude.Nothing,+ isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus =+ pHttpStatus_,+ jobStatus = pJobStatus_,+ jobCreationDate =+ Data._Time+ Lens.# pJobCreationDate_,+ jobCompletionDate =+ Data._Time+ Lens.# pJobCompletionDate_,+ entityDetailsList =+ Prelude.mempty+ }++-- | An object that contains details about the reason the operation failed.+getServiceLastAccessedDetailsWithEntitiesResponse_error :: Lens.Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Prelude.Maybe ErrorDetails)+getServiceLastAccessedDetailsWithEntitiesResponse_error = Lens.lens (\GetServiceLastAccessedDetailsWithEntitiesResponse' {error} -> error) (\s@GetServiceLastAccessedDetailsWithEntitiesResponse' {} a -> s {error = a} :: GetServiceLastAccessedDetailsWithEntitiesResponse)++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+getServiceLastAccessedDetailsWithEntitiesResponse_isTruncated :: Lens.Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Prelude.Maybe Prelude.Bool)+getServiceLastAccessedDetailsWithEntitiesResponse_isTruncated = Lens.lens (\GetServiceLastAccessedDetailsWithEntitiesResponse' {isTruncated} -> isTruncated) (\s@GetServiceLastAccessedDetailsWithEntitiesResponse' {} a -> s {isTruncated = a} :: GetServiceLastAccessedDetailsWithEntitiesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+getServiceLastAccessedDetailsWithEntitiesResponse_marker :: Lens.Lens' GetServiceLastAccessedDetailsWithEntitiesResponse (Prelude.Maybe Prelude.Text)+getServiceLastAccessedDetailsWithEntitiesResponse_marker = Lens.lens (\GetServiceLastAccessedDetailsWithEntitiesResponse' {marker} -> marker) (\s@GetServiceLastAccessedDetailsWithEntitiesResponse' {} a -> s {marker = a} :: GetServiceLastAccessedDetailsWithEntitiesResponse)++-- | The response's http status code.+getServiceLastAccessedDetailsWithEntitiesResponse_httpStatus :: Lens.Lens' GetServiceLastAccessedDetailsWithEntitiesResponse Prelude.Int+getServiceLastAccessedDetailsWithEntitiesResponse_httpStatus = Lens.lens (\GetServiceLastAccessedDetailsWithEntitiesResponse' {httpStatus} -> httpStatus) (\s@GetServiceLastAccessedDetailsWithEntitiesResponse' {} a -> s {httpStatus = a} :: GetServiceLastAccessedDetailsWithEntitiesResponse)++-- | The status of the job.+getServiceLastAccessedDetailsWithEntitiesResponse_jobStatus :: Lens.Lens' GetServiceLastAccessedDetailsWithEntitiesResponse JobStatusType+getServiceLastAccessedDetailsWithEntitiesResponse_jobStatus = Lens.lens (\GetServiceLastAccessedDetailsWithEntitiesResponse' {jobStatus} -> jobStatus) (\s@GetServiceLastAccessedDetailsWithEntitiesResponse' {} a -> s {jobStatus = a} :: GetServiceLastAccessedDetailsWithEntitiesResponse)++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- report job was created.+getServiceLastAccessedDetailsWithEntitiesResponse_jobCreationDate :: Lens.Lens' GetServiceLastAccessedDetailsWithEntitiesResponse Prelude.UTCTime+getServiceLastAccessedDetailsWithEntitiesResponse_jobCreationDate = Lens.lens (\GetServiceLastAccessedDetailsWithEntitiesResponse' {jobCreationDate} -> jobCreationDate) (\s@GetServiceLastAccessedDetailsWithEntitiesResponse' {} a -> s {jobCreationDate = a} :: GetServiceLastAccessedDetailsWithEntitiesResponse) Prelude.. Data._Time++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- generated report job was completed or failed.+--+-- This field is null if the job is still in progress, as indicated by a+-- job status value of @IN_PROGRESS@.+getServiceLastAccessedDetailsWithEntitiesResponse_jobCompletionDate :: Lens.Lens' GetServiceLastAccessedDetailsWithEntitiesResponse Prelude.UTCTime+getServiceLastAccessedDetailsWithEntitiesResponse_jobCompletionDate = Lens.lens (\GetServiceLastAccessedDetailsWithEntitiesResponse' {jobCompletionDate} -> jobCompletionDate) (\s@GetServiceLastAccessedDetailsWithEntitiesResponse' {} a -> s {jobCompletionDate = a} :: GetServiceLastAccessedDetailsWithEntitiesResponse) Prelude.. Data._Time++-- | An @EntityDetailsList@ object that contains details about when an IAM+-- entity (user or role) used group or policy permissions in an attempt to+-- access the specified Amazon Web Services service.+getServiceLastAccessedDetailsWithEntitiesResponse_entityDetailsList :: Lens.Lens' GetServiceLastAccessedDetailsWithEntitiesResponse [EntityDetails]+getServiceLastAccessedDetailsWithEntitiesResponse_entityDetailsList = Lens.lens (\GetServiceLastAccessedDetailsWithEntitiesResponse' {entityDetailsList} -> entityDetailsList) (\s@GetServiceLastAccessedDetailsWithEntitiesResponse' {} a -> s {entityDetailsList = a} :: GetServiceLastAccessedDetailsWithEntitiesResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ GetServiceLastAccessedDetailsWithEntitiesResponse+ where+ rnf+ GetServiceLastAccessedDetailsWithEntitiesResponse' {..} =+ Prelude.rnf error+ `Prelude.seq` Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf jobStatus+ `Prelude.seq` Prelude.rnf jobCreationDate+ `Prelude.seq` Prelude.rnf jobCompletionDate+ `Prelude.seq` Prelude.rnf entityDetailsList
+ gen/Amazonka/IAM/GetServiceLinkedRoleDeletionStatus.hs view
@@ -0,0 +1,214 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetServiceLinkedRoleDeletionStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves the status of your service-linked role deletion. After you use+-- DeleteServiceLinkedRole to submit a service-linked role for deletion,+-- you can use the @DeletionTaskId@ parameter in+-- @GetServiceLinkedRoleDeletionStatus@ to check the status of the+-- deletion. If the deletion fails, this operation returns the reason that+-- it failed, if that information is returned by the service.+module Amazonka.IAM.GetServiceLinkedRoleDeletionStatus+ ( -- * Creating a Request+ GetServiceLinkedRoleDeletionStatus (..),+ newGetServiceLinkedRoleDeletionStatus,++ -- * Request Lenses+ getServiceLinkedRoleDeletionStatus_deletionTaskId,++ -- * Destructuring the Response+ GetServiceLinkedRoleDeletionStatusResponse (..),+ newGetServiceLinkedRoleDeletionStatusResponse,++ -- * Response Lenses+ getServiceLinkedRoleDeletionStatusResponse_reason,+ getServiceLinkedRoleDeletionStatusResponse_httpStatus,+ getServiceLinkedRoleDeletionStatusResponse_status,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetServiceLinkedRoleDeletionStatus' smart constructor.+data GetServiceLinkedRoleDeletionStatus = GetServiceLinkedRoleDeletionStatus'+ { -- | The deletion task identifier. This identifier is returned by the+ -- DeleteServiceLinkedRole operation in the format+ -- @task\/aws-service-role\/\<service-principal-name>\/\<role-name>\/\<task-uuid>@.+ deletionTaskId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServiceLinkedRoleDeletionStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'deletionTaskId', 'getServiceLinkedRoleDeletionStatus_deletionTaskId' - The deletion task identifier. This identifier is returned by the+-- DeleteServiceLinkedRole operation in the format+-- @task\/aws-service-role\/\<service-principal-name>\/\<role-name>\/\<task-uuid>@.+newGetServiceLinkedRoleDeletionStatus ::+ -- | 'deletionTaskId'+ Prelude.Text ->+ GetServiceLinkedRoleDeletionStatus+newGetServiceLinkedRoleDeletionStatus+ pDeletionTaskId_ =+ GetServiceLinkedRoleDeletionStatus'+ { deletionTaskId =+ pDeletionTaskId_+ }++-- | The deletion task identifier. This identifier is returned by the+-- DeleteServiceLinkedRole operation in the format+-- @task\/aws-service-role\/\<service-principal-name>\/\<role-name>\/\<task-uuid>@.+getServiceLinkedRoleDeletionStatus_deletionTaskId :: Lens.Lens' GetServiceLinkedRoleDeletionStatus Prelude.Text+getServiceLinkedRoleDeletionStatus_deletionTaskId = Lens.lens (\GetServiceLinkedRoleDeletionStatus' {deletionTaskId} -> deletionTaskId) (\s@GetServiceLinkedRoleDeletionStatus' {} a -> s {deletionTaskId = a} :: GetServiceLinkedRoleDeletionStatus)++instance+ Core.AWSRequest+ GetServiceLinkedRoleDeletionStatus+ where+ type+ AWSResponse GetServiceLinkedRoleDeletionStatus =+ GetServiceLinkedRoleDeletionStatusResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetServiceLinkedRoleDeletionStatusResult"+ ( \s h x ->+ GetServiceLinkedRoleDeletionStatusResponse'+ Prelude.<$> (x Data..@? "Reason")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "Status")+ )++instance+ Prelude.Hashable+ GetServiceLinkedRoleDeletionStatus+ where+ hashWithSalt+ _salt+ GetServiceLinkedRoleDeletionStatus' {..} =+ _salt `Prelude.hashWithSalt` deletionTaskId++instance+ Prelude.NFData+ GetServiceLinkedRoleDeletionStatus+ where+ rnf GetServiceLinkedRoleDeletionStatus' {..} =+ Prelude.rnf deletionTaskId++instance+ Data.ToHeaders+ GetServiceLinkedRoleDeletionStatus+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ GetServiceLinkedRoleDeletionStatus+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ GetServiceLinkedRoleDeletionStatus+ where+ toQuery GetServiceLinkedRoleDeletionStatus' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "GetServiceLinkedRoleDeletionStatus" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "DeletionTaskId" Data.=: deletionTaskId+ ]++-- | /See:/ 'newGetServiceLinkedRoleDeletionStatusResponse' smart constructor.+data GetServiceLinkedRoleDeletionStatusResponse = GetServiceLinkedRoleDeletionStatusResponse'+ { -- | An object that contains details about the reason the deletion failed.+ reason :: Prelude.Maybe DeletionTaskFailureReasonType,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The status of the deletion.+ status :: DeletionTaskStatusType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetServiceLinkedRoleDeletionStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'reason', 'getServiceLinkedRoleDeletionStatusResponse_reason' - An object that contains details about the reason the deletion failed.+--+-- 'httpStatus', 'getServiceLinkedRoleDeletionStatusResponse_httpStatus' - The response's http status code.+--+-- 'status', 'getServiceLinkedRoleDeletionStatusResponse_status' - The status of the deletion.+newGetServiceLinkedRoleDeletionStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'status'+ DeletionTaskStatusType ->+ GetServiceLinkedRoleDeletionStatusResponse+newGetServiceLinkedRoleDeletionStatusResponse+ pHttpStatus_+ pStatus_ =+ GetServiceLinkedRoleDeletionStatusResponse'+ { reason =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ status = pStatus_+ }++-- | An object that contains details about the reason the deletion failed.+getServiceLinkedRoleDeletionStatusResponse_reason :: Lens.Lens' GetServiceLinkedRoleDeletionStatusResponse (Prelude.Maybe DeletionTaskFailureReasonType)+getServiceLinkedRoleDeletionStatusResponse_reason = Lens.lens (\GetServiceLinkedRoleDeletionStatusResponse' {reason} -> reason) (\s@GetServiceLinkedRoleDeletionStatusResponse' {} a -> s {reason = a} :: GetServiceLinkedRoleDeletionStatusResponse)++-- | The response's http status code.+getServiceLinkedRoleDeletionStatusResponse_httpStatus :: Lens.Lens' GetServiceLinkedRoleDeletionStatusResponse Prelude.Int+getServiceLinkedRoleDeletionStatusResponse_httpStatus = Lens.lens (\GetServiceLinkedRoleDeletionStatusResponse' {httpStatus} -> httpStatus) (\s@GetServiceLinkedRoleDeletionStatusResponse' {} a -> s {httpStatus = a} :: GetServiceLinkedRoleDeletionStatusResponse)++-- | The status of the deletion.+getServiceLinkedRoleDeletionStatusResponse_status :: Lens.Lens' GetServiceLinkedRoleDeletionStatusResponse DeletionTaskStatusType+getServiceLinkedRoleDeletionStatusResponse_status = Lens.lens (\GetServiceLinkedRoleDeletionStatusResponse' {status} -> status) (\s@GetServiceLinkedRoleDeletionStatusResponse' {} a -> s {status = a} :: GetServiceLinkedRoleDeletionStatusResponse)++instance+ Prelude.NFData+ GetServiceLinkedRoleDeletionStatusResponse+ where+ rnf GetServiceLinkedRoleDeletionStatusResponse' {..} =+ Prelude.rnf reason+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/IAM/GetUser.hs view
@@ -0,0 +1,234 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves information about the specified IAM user, including the+-- user\'s creation date, path, unique ID, and ARN.+--+-- If you do not specify a user name, IAM determines the user name+-- implicitly based on the Amazon Web Services access key ID used to sign+-- the request to this operation.+module Amazonka.IAM.GetUser+ ( -- * Creating a Request+ GetUser (..),+ newGetUser,++ -- * Request Lenses+ getUser_userName,++ -- * Destructuring the Response+ GetUserResponse (..),+ newGetUserResponse,++ -- * Response Lenses+ getUserResponse_httpStatus,+ getUserResponse_user,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetUser' smart constructor.+data GetUser = GetUser'+ { -- | The name of the user to get information about.+ --+ -- This parameter is optional. If it is not included, it defaults to the+ -- user making the request. This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'getUser_userName' - The name of the user to get information about.+--+-- This parameter is optional. If it is not included, it defaults to the+-- user making the request. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetUser ::+ GetUser+newGetUser = GetUser' {userName = Prelude.Nothing}++-- | The name of the user to get information about.+--+-- This parameter is optional. If it is not included, it defaults to the+-- user making the request. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getUser_userName :: Lens.Lens' GetUser (Prelude.Maybe Prelude.Text)+getUser_userName = Lens.lens (\GetUser' {userName} -> userName) (\s@GetUser' {} a -> s {userName = a} :: GetUser)++instance Core.AWSRequest GetUser where+ type AWSResponse GetUser = GetUserResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetUserResult"+ ( \s h x ->+ GetUserResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "User")+ )++instance Prelude.Hashable GetUser where+ hashWithSalt _salt GetUser' {..} =+ _salt `Prelude.hashWithSalt` userName++instance Prelude.NFData GetUser where+ rnf GetUser' {..} = Prelude.rnf userName++instance Data.ToHeaders GetUser where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetUser where+ toPath = Prelude.const "/"++instance Data.ToQuery GetUser where+ toQuery GetUser' {..} =+ Prelude.mconcat+ [ "Action" Data.=: ("GetUser" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful GetUser request.+--+-- /See:/ 'newGetUserResponse' smart constructor.+data GetUserResponse = GetUserResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A structure containing details about the IAM user.+ --+ -- Due to a service issue, password last used data does not include+ -- password use from May 3, 2018 22:50 PDT to May 23, 2018 14:08 PDT. This+ -- affects+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_finding-unused.html last sign-in>+ -- dates shown in the IAM console and password last used dates in the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html IAM credential report>,+ -- and returned by this operation. If users signed in during the affected+ -- time, the password last used date that is returned is the date the user+ -- last signed in before May 3, 2018. For users that signed in after May+ -- 23, 2018 14:08 PDT, the returned password last used date is accurate.+ --+ -- You can use password last used information to identify unused+ -- credentials for deletion. For example, you might delete users who did+ -- not sign in to Amazon Web Services in the last 90 days. In cases like+ -- this, we recommend that you adjust your evaluation window to include+ -- dates after May 23, 2018. Alternatively, if your users use access keys+ -- to access Amazon Web Services programmatically you can refer to access+ -- key last used information because it is accurate for all dates.+ user :: User+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getUserResponse_httpStatus' - The response's http status code.+--+-- 'user', 'getUserResponse_user' - A structure containing details about the IAM user.+--+-- Due to a service issue, password last used data does not include+-- password use from May 3, 2018 22:50 PDT to May 23, 2018 14:08 PDT. This+-- affects+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_finding-unused.html last sign-in>+-- dates shown in the IAM console and password last used dates in the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html IAM credential report>,+-- and returned by this operation. If users signed in during the affected+-- time, the password last used date that is returned is the date the user+-- last signed in before May 3, 2018. For users that signed in after May+-- 23, 2018 14:08 PDT, the returned password last used date is accurate.+--+-- You can use password last used information to identify unused+-- credentials for deletion. For example, you might delete users who did+-- not sign in to Amazon Web Services in the last 90 days. In cases like+-- this, we recommend that you adjust your evaluation window to include+-- dates after May 23, 2018. Alternatively, if your users use access keys+-- to access Amazon Web Services programmatically you can refer to access+-- key last used information because it is accurate for all dates.+newGetUserResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'user'+ User ->+ GetUserResponse+newGetUserResponse pHttpStatus_ pUser_ =+ GetUserResponse'+ { httpStatus = pHttpStatus_,+ user = pUser_+ }++-- | The response's http status code.+getUserResponse_httpStatus :: Lens.Lens' GetUserResponse Prelude.Int+getUserResponse_httpStatus = Lens.lens (\GetUserResponse' {httpStatus} -> httpStatus) (\s@GetUserResponse' {} a -> s {httpStatus = a} :: GetUserResponse)++-- | A structure containing details about the IAM user.+--+-- Due to a service issue, password last used data does not include+-- password use from May 3, 2018 22:50 PDT to May 23, 2018 14:08 PDT. This+-- affects+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_finding-unused.html last sign-in>+-- dates shown in the IAM console and password last used dates in the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html IAM credential report>,+-- and returned by this operation. If users signed in during the affected+-- time, the password last used date that is returned is the date the user+-- last signed in before May 3, 2018. For users that signed in after May+-- 23, 2018 14:08 PDT, the returned password last used date is accurate.+--+-- You can use password last used information to identify unused+-- credentials for deletion. For example, you might delete users who did+-- not sign in to Amazon Web Services in the last 90 days. In cases like+-- this, we recommend that you adjust your evaluation window to include+-- dates after May 23, 2018. Alternatively, if your users use access keys+-- to access Amazon Web Services programmatically you can refer to access+-- key last used information because it is accurate for all dates.+getUserResponse_user :: Lens.Lens' GetUserResponse User+getUserResponse_user = Lens.lens (\GetUserResponse' {user} -> user) (\s@GetUserResponse' {} a -> s {user = a} :: GetUserResponse)++instance Prelude.NFData GetUserResponse where+ rnf GetUserResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf user
+ gen/Amazonka/IAM/GetUserPolicy.hs view
@@ -0,0 +1,273 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.GetUserPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves the specified inline policy document that is embedded in the+-- specified IAM user.+--+-- Policies returned by this operation are URL-encoded compliant with+-- <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+-- decoding method to convert the policy back to plain JSON text. For+-- example, if you use Java, you can use the @decode@ method of the+-- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+-- SDKs provide similar functionality.+--+-- An IAM user can also have managed policies attached to it. To retrieve a+-- managed policy document that is attached to a user, use GetPolicy to+-- determine the policy\'s default version. Then use GetPolicyVersion to+-- retrieve the policy document.+--+-- For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.GetUserPolicy+ ( -- * Creating a Request+ GetUserPolicy (..),+ newGetUserPolicy,++ -- * Request Lenses+ getUserPolicy_userName,+ getUserPolicy_policyName,++ -- * Destructuring the Response+ GetUserPolicyResponse (..),+ newGetUserPolicyResponse,++ -- * Response Lenses+ getUserPolicyResponse_httpStatus,+ getUserPolicyResponse_userName,+ getUserPolicyResponse_policyName,+ getUserPolicyResponse_policyDocument,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetUserPolicy' smart constructor.+data GetUserPolicy = GetUserPolicy'+ { -- | The name of the user who the policy is associated with.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The name of the policy document to get.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetUserPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'getUserPolicy_userName' - The name of the user who the policy is associated with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyName', 'getUserPolicy_policyName' - The name of the policy document to get.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newGetUserPolicy ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ GetUserPolicy+newGetUserPolicy pUserName_ pPolicyName_ =+ GetUserPolicy'+ { userName = pUserName_,+ policyName = pPolicyName_+ }++-- | The name of the user who the policy is associated with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getUserPolicy_userName :: Lens.Lens' GetUserPolicy Prelude.Text+getUserPolicy_userName = Lens.lens (\GetUserPolicy' {userName} -> userName) (\s@GetUserPolicy' {} a -> s {userName = a} :: GetUserPolicy)++-- | The name of the policy document to get.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+getUserPolicy_policyName :: Lens.Lens' GetUserPolicy Prelude.Text+getUserPolicy_policyName = Lens.lens (\GetUserPolicy' {policyName} -> policyName) (\s@GetUserPolicy' {} a -> s {policyName = a} :: GetUserPolicy)++instance Core.AWSRequest GetUserPolicy where+ type+ AWSResponse GetUserPolicy =+ GetUserPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "GetUserPolicyResult"+ ( \s h x ->+ GetUserPolicyResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "PolicyName")+ Prelude.<*> (x Data..@ "PolicyDocument")+ )++instance Prelude.Hashable GetUserPolicy where+ hashWithSalt _salt GetUserPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` policyName++instance Prelude.NFData GetUserPolicy where+ rnf GetUserPolicy' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf policyName++instance Data.ToHeaders GetUserPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetUserPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery GetUserPolicy where+ toQuery GetUserPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("GetUserPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "PolicyName" Data.=: policyName+ ]++-- | Contains the response to a successful GetUserPolicy request.+--+-- /See:/ 'newGetUserPolicyResponse' smart constructor.+data GetUserPolicyResponse = GetUserPolicyResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The user the policy is associated with.+ userName :: Prelude.Text,+ -- | The name of the policy.+ policyName :: Prelude.Text,+ -- | The policy document.+ --+ -- IAM stores policies in JSON format. However, resources that were created+ -- using CloudFormation templates can be formatted in YAML. CloudFormation+ -- always converts a YAML policy to JSON format before submitting it to+ -- IAM.+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetUserPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'getUserPolicyResponse_httpStatus' - The response's http status code.+--+-- 'userName', 'getUserPolicyResponse_userName' - The user the policy is associated with.+--+-- 'policyName', 'getUserPolicyResponse_policyName' - The name of the policy.+--+-- 'policyDocument', 'getUserPolicyResponse_policyDocument' - The policy document.+--+-- IAM stores policies in JSON format. However, resources that were created+-- using CloudFormation templates can be formatted in YAML. CloudFormation+-- always converts a YAML policy to JSON format before submitting it to+-- IAM.+newGetUserPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'userName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ GetUserPolicyResponse+newGetUserPolicyResponse+ pHttpStatus_+ pUserName_+ pPolicyName_+ pPolicyDocument_ =+ GetUserPolicyResponse'+ { httpStatus = pHttpStatus_,+ userName = pUserName_,+ policyName = pPolicyName_,+ policyDocument = pPolicyDocument_+ }++-- | The response's http status code.+getUserPolicyResponse_httpStatus :: Lens.Lens' GetUserPolicyResponse Prelude.Int+getUserPolicyResponse_httpStatus = Lens.lens (\GetUserPolicyResponse' {httpStatus} -> httpStatus) (\s@GetUserPolicyResponse' {} a -> s {httpStatus = a} :: GetUserPolicyResponse)++-- | The user the policy is associated with.+getUserPolicyResponse_userName :: Lens.Lens' GetUserPolicyResponse Prelude.Text+getUserPolicyResponse_userName = Lens.lens (\GetUserPolicyResponse' {userName} -> userName) (\s@GetUserPolicyResponse' {} a -> s {userName = a} :: GetUserPolicyResponse)++-- | The name of the policy.+getUserPolicyResponse_policyName :: Lens.Lens' GetUserPolicyResponse Prelude.Text+getUserPolicyResponse_policyName = Lens.lens (\GetUserPolicyResponse' {policyName} -> policyName) (\s@GetUserPolicyResponse' {} a -> s {policyName = a} :: GetUserPolicyResponse)++-- | The policy document.+--+-- IAM stores policies in JSON format. However, resources that were created+-- using CloudFormation templates can be formatted in YAML. CloudFormation+-- always converts a YAML policy to JSON format before submitting it to+-- IAM.+getUserPolicyResponse_policyDocument :: Lens.Lens' GetUserPolicyResponse Prelude.Text+getUserPolicyResponse_policyDocument = Lens.lens (\GetUserPolicyResponse' {policyDocument} -> policyDocument) (\s@GetUserPolicyResponse' {} a -> s {policyDocument = a} :: GetUserPolicyResponse)++instance Prelude.NFData GetUserPolicyResponse where+ rnf GetUserPolicyResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyDocument
+ gen/Amazonka/IAM/Lens.hs view
@@ -0,0 +1,1568 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Lens+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Lens+ ( -- * Operations++ -- ** AddClientIDToOpenIDConnectProvider+ addClientIDToOpenIDConnectProvider_openIDConnectProviderArn,+ addClientIDToOpenIDConnectProvider_clientID,++ -- ** AddRoleToInstanceProfile+ addRoleToInstanceProfile_instanceProfileName,+ addRoleToInstanceProfile_roleName,++ -- ** AddUserToGroup+ addUserToGroup_groupName,+ addUserToGroup_userName,++ -- ** AttachGroupPolicy+ attachGroupPolicy_groupName,+ attachGroupPolicy_policyArn,++ -- ** AttachRolePolicy+ attachRolePolicy_roleName,+ attachRolePolicy_policyArn,++ -- ** AttachUserPolicy+ attachUserPolicy_userName,+ attachUserPolicy_policyArn,++ -- ** ChangePassword+ changePassword_oldPassword,+ changePassword_newPassword,++ -- ** CreateAccessKey+ createAccessKey_userName,+ createAccessKeyResponse_httpStatus,+ createAccessKeyResponse_accessKey,++ -- ** CreateAccountAlias+ createAccountAlias_accountAlias,++ -- ** CreateGroup+ createGroup_path,+ createGroup_groupName,+ createGroupResponse_httpStatus,+ createGroupResponse_group,++ -- ** CreateInstanceProfile+ createInstanceProfile_path,+ createInstanceProfile_tags,+ createInstanceProfile_instanceProfileName,+ createInstanceProfileResponse_httpStatus,+ createInstanceProfileResponse_instanceProfile,++ -- ** CreateLoginProfile+ createLoginProfile_passwordResetRequired,+ createLoginProfile_userName,+ createLoginProfile_password,+ createLoginProfileResponse_httpStatus,+ createLoginProfileResponse_loginProfile,++ -- ** CreateOpenIDConnectProvider+ createOpenIDConnectProvider_clientIDList,+ createOpenIDConnectProvider_tags,+ createOpenIDConnectProvider_url,+ createOpenIDConnectProvider_thumbprintList,+ createOpenIDConnectProviderResponse_openIDConnectProviderArn,+ createOpenIDConnectProviderResponse_tags,+ createOpenIDConnectProviderResponse_httpStatus,++ -- ** CreatePolicy+ createPolicy_description,+ createPolicy_path,+ createPolicy_tags,+ createPolicy_policyName,+ createPolicy_policyDocument,+ createPolicyResponse_policy,+ createPolicyResponse_httpStatus,++ -- ** CreatePolicyVersion+ createPolicyVersion_setAsDefault,+ createPolicyVersion_policyArn,+ createPolicyVersion_policyDocument,+ createPolicyVersionResponse_policyVersion,+ createPolicyVersionResponse_httpStatus,++ -- ** CreateRole+ createRole_description,+ createRole_maxSessionDuration,+ createRole_path,+ createRole_permissionsBoundary,+ createRole_tags,+ createRole_roleName,+ createRole_assumeRolePolicyDocument,+ createRoleResponse_httpStatus,+ createRoleResponse_role,++ -- ** CreateSAMLProvider+ createSAMLProvider_tags,+ createSAMLProvider_sAMLMetadataDocument,+ createSAMLProvider_name,+ createSAMLProviderResponse_sAMLProviderArn,+ createSAMLProviderResponse_tags,+ createSAMLProviderResponse_httpStatus,++ -- ** CreateServiceLinkedRole+ createServiceLinkedRole_customSuffix,+ createServiceLinkedRole_description,+ createServiceLinkedRole_aWSServiceName,+ createServiceLinkedRoleResponse_role,+ createServiceLinkedRoleResponse_httpStatus,++ -- ** CreateServiceSpecificCredential+ createServiceSpecificCredential_userName,+ createServiceSpecificCredential_serviceName,+ createServiceSpecificCredentialResponse_serviceSpecificCredential,+ createServiceSpecificCredentialResponse_httpStatus,++ -- ** CreateUser+ createUser_path,+ createUser_permissionsBoundary,+ createUser_tags,+ createUser_userName,+ createUserResponse_user,+ createUserResponse_httpStatus,++ -- ** CreateVirtualMFADevice+ createVirtualMFADevice_path,+ createVirtualMFADevice_tags,+ createVirtualMFADevice_virtualMFADeviceName,+ createVirtualMFADeviceResponse_httpStatus,+ createVirtualMFADeviceResponse_virtualMFADevice,++ -- ** DeactivateMFADevice+ deactivateMFADevice_userName,+ deactivateMFADevice_serialNumber,++ -- ** DeleteAccessKey+ deleteAccessKey_userName,+ deleteAccessKey_accessKeyId,++ -- ** DeleteAccountAlias+ deleteAccountAlias_accountAlias,++ -- ** DeleteAccountPasswordPolicy++ -- ** DeleteGroup+ deleteGroup_groupName,++ -- ** DeleteGroupPolicy+ deleteGroupPolicy_groupName,+ deleteGroupPolicy_policyName,++ -- ** DeleteInstanceProfile+ deleteInstanceProfile_instanceProfileName,++ -- ** DeleteLoginProfile+ deleteLoginProfile_userName,++ -- ** DeleteOpenIDConnectProvider+ deleteOpenIDConnectProvider_openIDConnectProviderArn,++ -- ** DeletePolicy+ deletePolicy_policyArn,++ -- ** DeletePolicyVersion+ deletePolicyVersion_policyArn,+ deletePolicyVersion_versionId,++ -- ** DeleteRole+ deleteRole_roleName,++ -- ** DeleteRolePermissionsBoundary+ deleteRolePermissionsBoundary_roleName,++ -- ** DeleteRolePolicy+ deleteRolePolicy_roleName,+ deleteRolePolicy_policyName,++ -- ** DeleteSAMLProvider+ deleteSAMLProvider_sAMLProviderArn,++ -- ** DeleteSSHPublicKey+ deleteSSHPublicKey_userName,+ deleteSSHPublicKey_sSHPublicKeyId,++ -- ** DeleteServerCertificate+ deleteServerCertificate_serverCertificateName,++ -- ** DeleteServiceLinkedRole+ deleteServiceLinkedRole_roleName,+ deleteServiceLinkedRoleResponse_httpStatus,+ deleteServiceLinkedRoleResponse_deletionTaskId,++ -- ** DeleteServiceSpecificCredential+ deleteServiceSpecificCredential_userName,+ deleteServiceSpecificCredential_serviceSpecificCredentialId,++ -- ** DeleteSigningCertificate+ deleteSigningCertificate_userName,+ deleteSigningCertificate_certificateId,++ -- ** DeleteUser+ deleteUser_userName,++ -- ** DeleteUserPermissionsBoundary+ deleteUserPermissionsBoundary_userName,++ -- ** DeleteUserPolicy+ deleteUserPolicy_userName,+ deleteUserPolicy_policyName,++ -- ** DeleteVirtualMFADevice+ deleteVirtualMFADevice_serialNumber,++ -- ** DetachGroupPolicy+ detachGroupPolicy_groupName,+ detachGroupPolicy_policyArn,++ -- ** DetachRolePolicy+ detachRolePolicy_roleName,+ detachRolePolicy_policyArn,++ -- ** DetachUserPolicy+ detachUserPolicy_userName,+ detachUserPolicy_policyArn,++ -- ** EnableMFADevice+ enableMFADevice_userName,+ enableMFADevice_serialNumber,+ enableMFADevice_authenticationCode1,+ enableMFADevice_authenticationCode2,++ -- ** GenerateCredentialReport+ generateCredentialReportResponse_description,+ generateCredentialReportResponse_state,+ generateCredentialReportResponse_httpStatus,++ -- ** GenerateOrganizationsAccessReport+ generateOrganizationsAccessReport_organizationsPolicyId,+ generateOrganizationsAccessReport_entityPath,+ generateOrganizationsAccessReportResponse_jobId,+ generateOrganizationsAccessReportResponse_httpStatus,++ -- ** GenerateServiceLastAccessedDetails+ generateServiceLastAccessedDetails_granularity,+ generateServiceLastAccessedDetails_arn,+ generateServiceLastAccessedDetailsResponse_jobId,+ generateServiceLastAccessedDetailsResponse_httpStatus,++ -- ** GetAccessKeyLastUsed+ getAccessKeyLastUsed_accessKeyId,+ getAccessKeyLastUsedResponse_accessKeyLastUsed,+ getAccessKeyLastUsedResponse_userName,+ getAccessKeyLastUsedResponse_httpStatus,++ -- ** GetAccountAuthorizationDetails+ getAccountAuthorizationDetails_filter,+ getAccountAuthorizationDetails_marker,+ getAccountAuthorizationDetails_maxItems,+ getAccountAuthorizationDetailsResponse_groupDetailList,+ getAccountAuthorizationDetailsResponse_isTruncated,+ getAccountAuthorizationDetailsResponse_marker,+ getAccountAuthorizationDetailsResponse_policies,+ getAccountAuthorizationDetailsResponse_roleDetailList,+ getAccountAuthorizationDetailsResponse_userDetailList,+ getAccountAuthorizationDetailsResponse_httpStatus,++ -- ** GetAccountPasswordPolicy+ getAccountPasswordPolicyResponse_httpStatus,+ getAccountPasswordPolicyResponse_passwordPolicy,++ -- ** GetAccountSummary+ getAccountSummaryResponse_summaryMap,+ getAccountSummaryResponse_httpStatus,++ -- ** GetContextKeysForCustomPolicy+ getContextKeysForCustomPolicy_policyInputList,+ getContextKeysForPolicyResponse_contextKeyNames,++ -- ** GetContextKeysForPrincipalPolicy+ getContextKeysForPrincipalPolicy_policyInputList,+ getContextKeysForPrincipalPolicy_policySourceArn,+ getContextKeysForPolicyResponse_contextKeyNames,++ -- ** GetCredentialReport+ getCredentialReportResponse_content,+ getCredentialReportResponse_generatedTime,+ getCredentialReportResponse_reportFormat,+ getCredentialReportResponse_httpStatus,++ -- ** GetGroup+ getGroup_marker,+ getGroup_maxItems,+ getGroup_groupName,+ getGroupResponse_isTruncated,+ getGroupResponse_marker,+ getGroupResponse_httpStatus,+ getGroupResponse_group,+ getGroupResponse_users,++ -- ** GetGroupPolicy+ getGroupPolicy_groupName,+ getGroupPolicy_policyName,+ getGroupPolicyResponse_httpStatus,+ getGroupPolicyResponse_groupName,+ getGroupPolicyResponse_policyName,+ getGroupPolicyResponse_policyDocument,++ -- ** GetInstanceProfile+ getInstanceProfile_instanceProfileName,+ getInstanceProfileResponse_httpStatus,+ getInstanceProfileResponse_instanceProfile,++ -- ** GetLoginProfile+ getLoginProfile_userName,+ getLoginProfileResponse_httpStatus,+ getLoginProfileResponse_loginProfile,++ -- ** GetOpenIDConnectProvider+ getOpenIDConnectProvider_openIDConnectProviderArn,+ getOpenIDConnectProviderResponse_clientIDList,+ getOpenIDConnectProviderResponse_createDate,+ getOpenIDConnectProviderResponse_tags,+ getOpenIDConnectProviderResponse_thumbprintList,+ getOpenIDConnectProviderResponse_url,+ getOpenIDConnectProviderResponse_httpStatus,++ -- ** GetOrganizationsAccessReport+ getOrganizationsAccessReport_marker,+ getOrganizationsAccessReport_maxItems,+ getOrganizationsAccessReport_sortKey,+ getOrganizationsAccessReport_jobId,+ getOrganizationsAccessReportResponse_accessDetails,+ getOrganizationsAccessReportResponse_errorDetails,+ getOrganizationsAccessReportResponse_isTruncated,+ getOrganizationsAccessReportResponse_jobCompletionDate,+ getOrganizationsAccessReportResponse_marker,+ getOrganizationsAccessReportResponse_numberOfServicesAccessible,+ getOrganizationsAccessReportResponse_numberOfServicesNotAccessed,+ getOrganizationsAccessReportResponse_httpStatus,+ getOrganizationsAccessReportResponse_jobStatus,+ getOrganizationsAccessReportResponse_jobCreationDate,++ -- ** GetPolicy+ getPolicy_policyArn,+ getPolicyResponse_policy,+ getPolicyResponse_httpStatus,++ -- ** GetPolicyVersion+ getPolicyVersion_policyArn,+ getPolicyVersion_versionId,+ getPolicyVersionResponse_policyVersion,+ getPolicyVersionResponse_httpStatus,++ -- ** GetRole+ getRole_roleName,+ getRoleResponse_httpStatus,+ getRoleResponse_role,++ -- ** GetRolePolicy+ getRolePolicy_roleName,+ getRolePolicy_policyName,+ getRolePolicyResponse_httpStatus,+ getRolePolicyResponse_roleName,+ getRolePolicyResponse_policyName,+ getRolePolicyResponse_policyDocument,++ -- ** GetSAMLProvider+ getSAMLProvider_sAMLProviderArn,+ getSAMLProviderResponse_createDate,+ getSAMLProviderResponse_sAMLMetadataDocument,+ getSAMLProviderResponse_tags,+ getSAMLProviderResponse_validUntil,+ getSAMLProviderResponse_httpStatus,++ -- ** GetSSHPublicKey+ getSSHPublicKey_userName,+ getSSHPublicKey_sSHPublicKeyId,+ getSSHPublicKey_encoding,+ getSSHPublicKeyResponse_sSHPublicKey,+ getSSHPublicKeyResponse_httpStatus,++ -- ** GetServerCertificate+ getServerCertificate_serverCertificateName,+ getServerCertificateResponse_httpStatus,+ getServerCertificateResponse_serverCertificate,++ -- ** GetServiceLastAccessedDetails+ getServiceLastAccessedDetails_marker,+ getServiceLastAccessedDetails_maxItems,+ getServiceLastAccessedDetails_jobId,+ getServiceLastAccessedDetailsResponse_error,+ getServiceLastAccessedDetailsResponse_isTruncated,+ getServiceLastAccessedDetailsResponse_jobType,+ getServiceLastAccessedDetailsResponse_marker,+ getServiceLastAccessedDetailsResponse_httpStatus,+ getServiceLastAccessedDetailsResponse_jobStatus,+ getServiceLastAccessedDetailsResponse_jobCreationDate,+ getServiceLastAccessedDetailsResponse_servicesLastAccessed,+ getServiceLastAccessedDetailsResponse_jobCompletionDate,++ -- ** GetServiceLastAccessedDetailsWithEntities+ getServiceLastAccessedDetailsWithEntities_marker,+ getServiceLastAccessedDetailsWithEntities_maxItems,+ getServiceLastAccessedDetailsWithEntities_jobId,+ getServiceLastAccessedDetailsWithEntities_serviceNamespace,+ getServiceLastAccessedDetailsWithEntitiesResponse_error,+ getServiceLastAccessedDetailsWithEntitiesResponse_isTruncated,+ getServiceLastAccessedDetailsWithEntitiesResponse_marker,+ getServiceLastAccessedDetailsWithEntitiesResponse_httpStatus,+ getServiceLastAccessedDetailsWithEntitiesResponse_jobStatus,+ getServiceLastAccessedDetailsWithEntitiesResponse_jobCreationDate,+ getServiceLastAccessedDetailsWithEntitiesResponse_jobCompletionDate,+ getServiceLastAccessedDetailsWithEntitiesResponse_entityDetailsList,++ -- ** GetServiceLinkedRoleDeletionStatus+ getServiceLinkedRoleDeletionStatus_deletionTaskId,+ getServiceLinkedRoleDeletionStatusResponse_reason,+ getServiceLinkedRoleDeletionStatusResponse_httpStatus,+ getServiceLinkedRoleDeletionStatusResponse_status,++ -- ** GetUser+ getUser_userName,+ getUserResponse_httpStatus,+ getUserResponse_user,++ -- ** GetUserPolicy+ getUserPolicy_userName,+ getUserPolicy_policyName,+ getUserPolicyResponse_httpStatus,+ getUserPolicyResponse_userName,+ getUserPolicyResponse_policyName,+ getUserPolicyResponse_policyDocument,++ -- ** ListAccessKeys+ listAccessKeys_marker,+ listAccessKeys_maxItems,+ listAccessKeys_userName,+ listAccessKeysResponse_isTruncated,+ listAccessKeysResponse_marker,+ listAccessKeysResponse_httpStatus,+ listAccessKeysResponse_accessKeyMetadata,++ -- ** ListAccountAliases+ listAccountAliases_marker,+ listAccountAliases_maxItems,+ listAccountAliasesResponse_isTruncated,+ listAccountAliasesResponse_marker,+ listAccountAliasesResponse_httpStatus,+ listAccountAliasesResponse_accountAliases,++ -- ** ListAttachedGroupPolicies+ listAttachedGroupPolicies_marker,+ listAttachedGroupPolicies_maxItems,+ listAttachedGroupPolicies_pathPrefix,+ listAttachedGroupPolicies_groupName,+ listAttachedGroupPoliciesResponse_attachedPolicies,+ listAttachedGroupPoliciesResponse_isTruncated,+ listAttachedGroupPoliciesResponse_marker,+ listAttachedGroupPoliciesResponse_httpStatus,++ -- ** ListAttachedRolePolicies+ listAttachedRolePolicies_marker,+ listAttachedRolePolicies_maxItems,+ listAttachedRolePolicies_pathPrefix,+ listAttachedRolePolicies_roleName,+ listAttachedRolePoliciesResponse_attachedPolicies,+ listAttachedRolePoliciesResponse_isTruncated,+ listAttachedRolePoliciesResponse_marker,+ listAttachedRolePoliciesResponse_httpStatus,++ -- ** ListAttachedUserPolicies+ listAttachedUserPolicies_marker,+ listAttachedUserPolicies_maxItems,+ listAttachedUserPolicies_pathPrefix,+ listAttachedUserPolicies_userName,+ listAttachedUserPoliciesResponse_attachedPolicies,+ listAttachedUserPoliciesResponse_isTruncated,+ listAttachedUserPoliciesResponse_marker,+ listAttachedUserPoliciesResponse_httpStatus,++ -- ** ListEntitiesForPolicy+ listEntitiesForPolicy_entityFilter,+ listEntitiesForPolicy_marker,+ listEntitiesForPolicy_maxItems,+ listEntitiesForPolicy_pathPrefix,+ listEntitiesForPolicy_policyUsageFilter,+ listEntitiesForPolicy_policyArn,+ listEntitiesForPolicyResponse_isTruncated,+ listEntitiesForPolicyResponse_marker,+ listEntitiesForPolicyResponse_policyGroups,+ listEntitiesForPolicyResponse_policyRoles,+ listEntitiesForPolicyResponse_policyUsers,+ listEntitiesForPolicyResponse_httpStatus,++ -- ** ListGroupPolicies+ listGroupPolicies_marker,+ listGroupPolicies_maxItems,+ listGroupPolicies_groupName,+ listGroupPoliciesResponse_isTruncated,+ listGroupPoliciesResponse_marker,+ listGroupPoliciesResponse_httpStatus,+ listGroupPoliciesResponse_policyNames,++ -- ** ListGroups+ listGroups_marker,+ listGroups_maxItems,+ listGroups_pathPrefix,+ listGroupsResponse_isTruncated,+ listGroupsResponse_marker,+ listGroupsResponse_httpStatus,+ listGroupsResponse_groups,++ -- ** ListGroupsForUser+ listGroupsForUser_marker,+ listGroupsForUser_maxItems,+ listGroupsForUser_userName,+ listGroupsForUserResponse_isTruncated,+ listGroupsForUserResponse_marker,+ listGroupsForUserResponse_httpStatus,+ listGroupsForUserResponse_groups,++ -- ** ListInstanceProfileTags+ listInstanceProfileTags_marker,+ listInstanceProfileTags_maxItems,+ listInstanceProfileTags_instanceProfileName,+ listInstanceProfileTagsResponse_isTruncated,+ listInstanceProfileTagsResponse_marker,+ listInstanceProfileTagsResponse_httpStatus,+ listInstanceProfileTagsResponse_tags,++ -- ** ListInstanceProfiles+ listInstanceProfiles_marker,+ listInstanceProfiles_maxItems,+ listInstanceProfiles_pathPrefix,+ listInstanceProfilesResponse_isTruncated,+ listInstanceProfilesResponse_marker,+ listInstanceProfilesResponse_httpStatus,+ listInstanceProfilesResponse_instanceProfiles,++ -- ** ListInstanceProfilesForRole+ listInstanceProfilesForRole_marker,+ listInstanceProfilesForRole_maxItems,+ listInstanceProfilesForRole_roleName,+ listInstanceProfilesForRoleResponse_isTruncated,+ listInstanceProfilesForRoleResponse_marker,+ listInstanceProfilesForRoleResponse_httpStatus,+ listInstanceProfilesForRoleResponse_instanceProfiles,++ -- ** ListMFADeviceTags+ listMFADeviceTags_marker,+ listMFADeviceTags_maxItems,+ listMFADeviceTags_serialNumber,+ listMFADeviceTagsResponse_isTruncated,+ listMFADeviceTagsResponse_marker,+ listMFADeviceTagsResponse_httpStatus,+ listMFADeviceTagsResponse_tags,++ -- ** ListMFADevices+ listMFADevices_marker,+ listMFADevices_maxItems,+ listMFADevices_userName,+ listMFADevicesResponse_isTruncated,+ listMFADevicesResponse_marker,+ listMFADevicesResponse_httpStatus,+ listMFADevicesResponse_mfaDevices,++ -- ** ListOpenIDConnectProviderTags+ listOpenIDConnectProviderTags_marker,+ listOpenIDConnectProviderTags_maxItems,+ listOpenIDConnectProviderTags_openIDConnectProviderArn,+ listOpenIDConnectProviderTagsResponse_isTruncated,+ listOpenIDConnectProviderTagsResponse_marker,+ listOpenIDConnectProviderTagsResponse_httpStatus,+ listOpenIDConnectProviderTagsResponse_tags,++ -- ** ListOpenIDConnectProviders+ listOpenIDConnectProvidersResponse_openIDConnectProviderList,+ listOpenIDConnectProvidersResponse_httpStatus,++ -- ** ListPolicies+ listPolicies_marker,+ listPolicies_maxItems,+ listPolicies_onlyAttached,+ listPolicies_pathPrefix,+ listPolicies_policyUsageFilter,+ listPolicies_scope,+ listPoliciesResponse_isTruncated,+ listPoliciesResponse_marker,+ listPoliciesResponse_policies,+ listPoliciesResponse_httpStatus,++ -- ** ListPoliciesGrantingServiceAccess+ listPoliciesGrantingServiceAccess_marker,+ listPoliciesGrantingServiceAccess_arn,+ listPoliciesGrantingServiceAccess_serviceNamespaces,+ listPoliciesGrantingServiceAccessResponse_isTruncated,+ listPoliciesGrantingServiceAccessResponse_marker,+ listPoliciesGrantingServiceAccessResponse_httpStatus,+ listPoliciesGrantingServiceAccessResponse_policiesGrantingServiceAccess,++ -- ** ListPolicyTags+ listPolicyTags_marker,+ listPolicyTags_maxItems,+ listPolicyTags_policyArn,+ listPolicyTagsResponse_isTruncated,+ listPolicyTagsResponse_marker,+ listPolicyTagsResponse_httpStatus,+ listPolicyTagsResponse_tags,++ -- ** ListPolicyVersions+ listPolicyVersions_marker,+ listPolicyVersions_maxItems,+ listPolicyVersions_policyArn,+ listPolicyVersionsResponse_isTruncated,+ listPolicyVersionsResponse_marker,+ listPolicyVersionsResponse_versions,+ listPolicyVersionsResponse_httpStatus,++ -- ** ListRolePolicies+ listRolePolicies_marker,+ listRolePolicies_maxItems,+ listRolePolicies_roleName,+ listRolePoliciesResponse_isTruncated,+ listRolePoliciesResponse_marker,+ listRolePoliciesResponse_httpStatus,+ listRolePoliciesResponse_policyNames,++ -- ** ListRoleTags+ listRoleTags_marker,+ listRoleTags_maxItems,+ listRoleTags_roleName,+ listRoleTagsResponse_isTruncated,+ listRoleTagsResponse_marker,+ listRoleTagsResponse_httpStatus,+ listRoleTagsResponse_tags,++ -- ** ListRoles+ listRoles_marker,+ listRoles_maxItems,+ listRoles_pathPrefix,+ listRolesResponse_isTruncated,+ listRolesResponse_marker,+ listRolesResponse_httpStatus,+ listRolesResponse_roles,++ -- ** ListSAMLProviderTags+ listSAMLProviderTags_marker,+ listSAMLProviderTags_maxItems,+ listSAMLProviderTags_sAMLProviderArn,+ listSAMLProviderTagsResponse_isTruncated,+ listSAMLProviderTagsResponse_marker,+ listSAMLProviderTagsResponse_httpStatus,+ listSAMLProviderTagsResponse_tags,++ -- ** ListSAMLProviders+ listSAMLProvidersResponse_sAMLProviderList,+ listSAMLProvidersResponse_httpStatus,++ -- ** ListSSHPublicKeys+ listSSHPublicKeys_marker,+ listSSHPublicKeys_maxItems,+ listSSHPublicKeys_userName,+ listSSHPublicKeysResponse_isTruncated,+ listSSHPublicKeysResponse_marker,+ listSSHPublicKeysResponse_sSHPublicKeys,+ listSSHPublicKeysResponse_httpStatus,++ -- ** ListServerCertificateTags+ listServerCertificateTags_marker,+ listServerCertificateTags_maxItems,+ listServerCertificateTags_serverCertificateName,+ listServerCertificateTagsResponse_isTruncated,+ listServerCertificateTagsResponse_marker,+ listServerCertificateTagsResponse_httpStatus,+ listServerCertificateTagsResponse_tags,++ -- ** ListServerCertificates+ listServerCertificates_marker,+ listServerCertificates_maxItems,+ listServerCertificates_pathPrefix,+ listServerCertificatesResponse_isTruncated,+ listServerCertificatesResponse_marker,+ listServerCertificatesResponse_httpStatus,+ listServerCertificatesResponse_serverCertificateMetadataList,++ -- ** ListServiceSpecificCredentials+ listServiceSpecificCredentials_serviceName,+ listServiceSpecificCredentials_userName,+ listServiceSpecificCredentialsResponse_serviceSpecificCredentials,+ listServiceSpecificCredentialsResponse_httpStatus,++ -- ** ListSigningCertificates+ listSigningCertificates_marker,+ listSigningCertificates_maxItems,+ listSigningCertificates_userName,+ listSigningCertificatesResponse_isTruncated,+ listSigningCertificatesResponse_marker,+ listSigningCertificatesResponse_httpStatus,+ listSigningCertificatesResponse_certificates,++ -- ** ListUserPolicies+ listUserPolicies_marker,+ listUserPolicies_maxItems,+ listUserPolicies_userName,+ listUserPoliciesResponse_isTruncated,+ listUserPoliciesResponse_marker,+ listUserPoliciesResponse_httpStatus,+ listUserPoliciesResponse_policyNames,++ -- ** ListUserTags+ listUserTags_marker,+ listUserTags_maxItems,+ listUserTags_userName,+ listUserTagsResponse_isTruncated,+ listUserTagsResponse_marker,+ listUserTagsResponse_httpStatus,+ listUserTagsResponse_tags,++ -- ** ListUsers+ listUsers_marker,+ listUsers_maxItems,+ listUsers_pathPrefix,+ listUsersResponse_isTruncated,+ listUsersResponse_marker,+ listUsersResponse_httpStatus,+ listUsersResponse_users,++ -- ** ListVirtualMFADevices+ listVirtualMFADevices_assignmentStatus,+ listVirtualMFADevices_marker,+ listVirtualMFADevices_maxItems,+ listVirtualMFADevicesResponse_isTruncated,+ listVirtualMFADevicesResponse_marker,+ listVirtualMFADevicesResponse_httpStatus,+ listVirtualMFADevicesResponse_virtualMFADevices,++ -- ** PutGroupPolicy+ putGroupPolicy_groupName,+ putGroupPolicy_policyName,+ putGroupPolicy_policyDocument,++ -- ** PutRolePermissionsBoundary+ putRolePermissionsBoundary_roleName,+ putRolePermissionsBoundary_permissionsBoundary,++ -- ** PutRolePolicy+ putRolePolicy_roleName,+ putRolePolicy_policyName,+ putRolePolicy_policyDocument,++ -- ** PutUserPermissionsBoundary+ putUserPermissionsBoundary_userName,+ putUserPermissionsBoundary_permissionsBoundary,++ -- ** PutUserPolicy+ putUserPolicy_userName,+ putUserPolicy_policyName,+ putUserPolicy_policyDocument,++ -- ** RemoveClientIDFromOpenIDConnectProvider+ removeClientIDFromOpenIDConnectProvider_openIDConnectProviderArn,+ removeClientIDFromOpenIDConnectProvider_clientID,++ -- ** RemoveRoleFromInstanceProfile+ removeRoleFromInstanceProfile_instanceProfileName,+ removeRoleFromInstanceProfile_roleName,++ -- ** RemoveUserFromGroup+ removeUserFromGroup_groupName,+ removeUserFromGroup_userName,++ -- ** ResetServiceSpecificCredential+ resetServiceSpecificCredential_userName,+ resetServiceSpecificCredential_serviceSpecificCredentialId,+ resetServiceSpecificCredentialResponse_serviceSpecificCredential,+ resetServiceSpecificCredentialResponse_httpStatus,++ -- ** ResyncMFADevice+ resyncMFADevice_userName,+ resyncMFADevice_serialNumber,+ resyncMFADevice_authenticationCode1,+ resyncMFADevice_authenticationCode2,++ -- ** SetDefaultPolicyVersion+ setDefaultPolicyVersion_policyArn,+ setDefaultPolicyVersion_versionId,++ -- ** SetSecurityTokenServicePreferences+ setSecurityTokenServicePreferences_globalEndpointTokenVersion,++ -- ** SimulateCustomPolicy+ simulateCustomPolicy_callerArn,+ simulateCustomPolicy_contextEntries,+ simulateCustomPolicy_marker,+ simulateCustomPolicy_maxItems,+ simulateCustomPolicy_permissionsBoundaryPolicyInputList,+ simulateCustomPolicy_resourceArns,+ simulateCustomPolicy_resourceHandlingOption,+ simulateCustomPolicy_resourceOwner,+ simulateCustomPolicy_resourcePolicy,+ simulateCustomPolicy_policyInputList,+ simulateCustomPolicy_actionNames,+ simulatePolicyResponse_evaluationResults,+ simulatePolicyResponse_isTruncated,+ simulatePolicyResponse_marker,++ -- ** SimulatePrincipalPolicy+ simulatePrincipalPolicy_callerArn,+ simulatePrincipalPolicy_contextEntries,+ simulatePrincipalPolicy_marker,+ simulatePrincipalPolicy_maxItems,+ simulatePrincipalPolicy_permissionsBoundaryPolicyInputList,+ simulatePrincipalPolicy_policyInputList,+ simulatePrincipalPolicy_resourceArns,+ simulatePrincipalPolicy_resourceHandlingOption,+ simulatePrincipalPolicy_resourceOwner,+ simulatePrincipalPolicy_resourcePolicy,+ simulatePrincipalPolicy_policySourceArn,+ simulatePrincipalPolicy_actionNames,+ simulatePolicyResponse_evaluationResults,+ simulatePolicyResponse_isTruncated,+ simulatePolicyResponse_marker,++ -- ** TagInstanceProfile+ tagInstanceProfile_instanceProfileName,+ tagInstanceProfile_tags,++ -- ** TagMFADevice+ tagMFADevice_serialNumber,+ tagMFADevice_tags,++ -- ** TagOpenIDConnectProvider+ tagOpenIDConnectProvider_openIDConnectProviderArn,+ tagOpenIDConnectProvider_tags,++ -- ** TagPolicy+ tagPolicy_policyArn,+ tagPolicy_tags,++ -- ** TagRole+ tagRole_roleName,+ tagRole_tags,++ -- ** TagSAMLProvider+ tagSAMLProvider_sAMLProviderArn,+ tagSAMLProvider_tags,++ -- ** TagServerCertificate+ tagServerCertificate_serverCertificateName,+ tagServerCertificate_tags,++ -- ** TagUser+ tagUser_userName,+ tagUser_tags,++ -- ** UntagInstanceProfile+ untagInstanceProfile_instanceProfileName,+ untagInstanceProfile_tagKeys,++ -- ** UntagMFADevice+ untagMFADevice_serialNumber,+ untagMFADevice_tagKeys,++ -- ** UntagOpenIDConnectProvider+ untagOpenIDConnectProvider_openIDConnectProviderArn,+ untagOpenIDConnectProvider_tagKeys,++ -- ** UntagPolicy+ untagPolicy_policyArn,+ untagPolicy_tagKeys,++ -- ** UntagRole+ untagRole_roleName,+ untagRole_tagKeys,++ -- ** UntagSAMLProvider+ untagSAMLProvider_sAMLProviderArn,+ untagSAMLProvider_tagKeys,++ -- ** UntagServerCertificate+ untagServerCertificate_serverCertificateName,+ untagServerCertificate_tagKeys,++ -- ** UntagUser+ untagUser_userName,+ untagUser_tagKeys,++ -- ** UpdateAccessKey+ updateAccessKey_userName,+ updateAccessKey_accessKeyId,+ updateAccessKey_status,++ -- ** UpdateAccountPasswordPolicy+ updateAccountPasswordPolicy_allowUsersToChangePassword,+ updateAccountPasswordPolicy_hardExpiry,+ updateAccountPasswordPolicy_maxPasswordAge,+ updateAccountPasswordPolicy_minimumPasswordLength,+ updateAccountPasswordPolicy_passwordReusePrevention,+ updateAccountPasswordPolicy_requireLowercaseCharacters,+ updateAccountPasswordPolicy_requireNumbers,+ updateAccountPasswordPolicy_requireSymbols,+ updateAccountPasswordPolicy_requireUppercaseCharacters,++ -- ** UpdateAssumeRolePolicy+ updateAssumeRolePolicy_roleName,+ updateAssumeRolePolicy_policyDocument,++ -- ** UpdateGroup+ updateGroup_newGroupName,+ updateGroup_newPath,+ updateGroup_groupName,++ -- ** UpdateLoginProfile+ updateLoginProfile_password,+ updateLoginProfile_passwordResetRequired,+ updateLoginProfile_userName,++ -- ** UpdateOpenIDConnectProviderThumbprint+ updateOpenIDConnectProviderThumbprint_openIDConnectProviderArn,+ updateOpenIDConnectProviderThumbprint_thumbprintList,++ -- ** UpdateRole+ updateRole_description,+ updateRole_maxSessionDuration,+ updateRole_roleName,+ updateRoleResponse_httpStatus,++ -- ** UpdateRoleDescription+ updateRoleDescription_roleName,+ updateRoleDescription_description,+ updateRoleDescriptionResponse_role,+ updateRoleDescriptionResponse_httpStatus,++ -- ** UpdateSAMLProvider+ updateSAMLProvider_sAMLMetadataDocument,+ updateSAMLProvider_sAMLProviderArn,+ updateSAMLProviderResponse_sAMLProviderArn,+ updateSAMLProviderResponse_httpStatus,++ -- ** UpdateSSHPublicKey+ updateSSHPublicKey_userName,+ updateSSHPublicKey_sSHPublicKeyId,+ updateSSHPublicKey_status,++ -- ** UpdateServerCertificate+ updateServerCertificate_newPath,+ updateServerCertificate_newServerCertificateName,+ updateServerCertificate_serverCertificateName,++ -- ** UpdateServiceSpecificCredential+ updateServiceSpecificCredential_userName,+ updateServiceSpecificCredential_serviceSpecificCredentialId,+ updateServiceSpecificCredential_status,++ -- ** UpdateSigningCertificate+ updateSigningCertificate_userName,+ updateSigningCertificate_certificateId,+ updateSigningCertificate_status,++ -- ** UpdateUser+ updateUser_newPath,+ updateUser_newUserName,+ updateUser_userName,++ -- ** UploadSSHPublicKey+ uploadSSHPublicKey_userName,+ uploadSSHPublicKey_sSHPublicKeyBody,+ uploadSSHPublicKeyResponse_sSHPublicKey,+ uploadSSHPublicKeyResponse_httpStatus,++ -- ** UploadServerCertificate+ uploadServerCertificate_certificateChain,+ uploadServerCertificate_path,+ uploadServerCertificate_tags,+ uploadServerCertificate_serverCertificateName,+ uploadServerCertificate_certificateBody,+ uploadServerCertificate_privateKey,+ uploadServerCertificateResponse_serverCertificateMetadata,+ uploadServerCertificateResponse_tags,+ uploadServerCertificateResponse_httpStatus,++ -- ** UploadSigningCertificate+ uploadSigningCertificate_userName,+ uploadSigningCertificate_certificateBody,+ uploadSigningCertificateResponse_httpStatus,+ uploadSigningCertificateResponse_certificate,++ -- * Types++ -- ** AccessDetail+ accessDetail_entityPath,+ accessDetail_lastAuthenticatedTime,+ accessDetail_region,+ accessDetail_totalAuthenticatedEntities,+ accessDetail_serviceName,+ accessDetail_serviceNamespace,++ -- ** AccessKeyInfo+ accessKeyInfo_createDate,+ accessKeyInfo_userName,+ accessKeyInfo_accessKeyId,+ accessKeyInfo_status,+ accessKeyInfo_secretAccessKey,++ -- ** AccessKeyLastUsed+ accessKeyLastUsed_lastUsedDate,+ accessKeyLastUsed_serviceName,+ accessKeyLastUsed_region,++ -- ** AccessKeyMetadata+ accessKeyMetadata_accessKeyId,+ accessKeyMetadata_createDate,+ accessKeyMetadata_status,+ accessKeyMetadata_userName,++ -- ** AttachedPermissionsBoundary+ attachedPermissionsBoundary_permissionsBoundaryArn,+ attachedPermissionsBoundary_permissionsBoundaryType,++ -- ** AttachedPolicy+ attachedPolicy_policyArn,+ attachedPolicy_policyName,++ -- ** ContextEntry+ contextEntry_contextKeyName,+ contextEntry_contextKeyType,+ contextEntry_contextKeyValues,++ -- ** DeletionTaskFailureReasonType+ deletionTaskFailureReasonType_reason,+ deletionTaskFailureReasonType_roleUsageList,++ -- ** EntityDetails+ entityDetails_lastAuthenticated,+ entityDetails_entityInfo,++ -- ** EntityInfo+ entityInfo_path,+ entityInfo_arn,+ entityInfo_name,+ entityInfo_type,+ entityInfo_id,++ -- ** ErrorDetails+ errorDetails_message,+ errorDetails_code,++ -- ** EvaluationResult+ evaluationResult_evalDecisionDetails,+ evaluationResult_evalResourceName,+ evaluationResult_matchedStatements,+ evaluationResult_missingContextValues,+ evaluationResult_organizationsDecisionDetail,+ evaluationResult_permissionsBoundaryDecisionDetail,+ evaluationResult_resourceSpecificResults,+ evaluationResult_evalActionName,+ evaluationResult_evalDecision,++ -- ** GetContextKeysForPolicyResponse+ getContextKeysForPolicyResponse_contextKeyNames,++ -- ** Group+ group_path,+ group_groupName,+ group_groupId,+ group_arn,+ group_createDate,++ -- ** GroupDetail+ groupDetail_arn,+ groupDetail_attachedManagedPolicies,+ groupDetail_createDate,+ groupDetail_groupId,+ groupDetail_groupName,+ groupDetail_groupPolicyList,+ groupDetail_path,++ -- ** InstanceProfile+ instanceProfile_tags,+ instanceProfile_path,+ instanceProfile_instanceProfileName,+ instanceProfile_instanceProfileId,+ instanceProfile_arn,+ instanceProfile_createDate,+ instanceProfile_roles,++ -- ** ListPoliciesGrantingServiceAccessEntry+ listPoliciesGrantingServiceAccessEntry_policies,+ listPoliciesGrantingServiceAccessEntry_serviceNamespace,++ -- ** LoginProfile+ loginProfile_passwordResetRequired,+ loginProfile_userName,+ loginProfile_createDate,++ -- ** MFADevice+ mfaDevice_userName,+ mfaDevice_serialNumber,+ mfaDevice_enableDate,++ -- ** ManagedPolicyDetail+ managedPolicyDetail_arn,+ managedPolicyDetail_attachmentCount,+ managedPolicyDetail_createDate,+ managedPolicyDetail_defaultVersionId,+ managedPolicyDetail_description,+ managedPolicyDetail_isAttachable,+ managedPolicyDetail_path,+ managedPolicyDetail_permissionsBoundaryUsageCount,+ managedPolicyDetail_policyId,+ managedPolicyDetail_policyName,+ managedPolicyDetail_policyVersionList,+ managedPolicyDetail_updateDate,++ -- ** OpenIDConnectProviderListEntry+ openIDConnectProviderListEntry_arn,++ -- ** OrganizationsDecisionDetail+ organizationsDecisionDetail_allowedByOrganizations,++ -- ** PasswordPolicy+ passwordPolicy_allowUsersToChangePassword,+ passwordPolicy_expirePasswords,+ passwordPolicy_hardExpiry,+ passwordPolicy_maxPasswordAge,+ passwordPolicy_minimumPasswordLength,+ passwordPolicy_passwordReusePrevention,+ passwordPolicy_requireLowercaseCharacters,+ passwordPolicy_requireNumbers,+ passwordPolicy_requireSymbols,+ passwordPolicy_requireUppercaseCharacters,++ -- ** PermissionsBoundaryDecisionDetail+ permissionsBoundaryDecisionDetail_allowedByPermissionsBoundary,++ -- ** Policy+ policy_arn,+ policy_attachmentCount,+ policy_createDate,+ policy_defaultVersionId,+ policy_description,+ policy_isAttachable,+ policy_path,+ policy_permissionsBoundaryUsageCount,+ policy_policyId,+ policy_policyName,+ policy_tags,+ policy_updateDate,++ -- ** PolicyDetail+ policyDetail_policyDocument,+ policyDetail_policyName,++ -- ** PolicyGrantingServiceAccess+ policyGrantingServiceAccess_entityName,+ policyGrantingServiceAccess_entityType,+ policyGrantingServiceAccess_policyArn,+ policyGrantingServiceAccess_policyName,+ policyGrantingServiceAccess_policyType,++ -- ** PolicyGroup+ policyGroup_groupId,+ policyGroup_groupName,++ -- ** PolicyRole+ policyRole_roleId,+ policyRole_roleName,++ -- ** PolicyUser+ policyUser_userId,+ policyUser_userName,++ -- ** PolicyVersion+ policyVersion_createDate,+ policyVersion_document,+ policyVersion_isDefaultVersion,+ policyVersion_versionId,++ -- ** Position+ position_column,+ position_line,++ -- ** ResourceSpecificResult+ resourceSpecificResult_evalDecisionDetails,+ resourceSpecificResult_matchedStatements,+ resourceSpecificResult_missingContextValues,+ resourceSpecificResult_permissionsBoundaryDecisionDetail,+ resourceSpecificResult_evalResourceName,+ resourceSpecificResult_evalResourceDecision,++ -- ** Role+ role_assumeRolePolicyDocument,+ role_description,+ role_maxSessionDuration,+ role_permissionsBoundary,+ role_roleLastUsed,+ role_tags,+ role_path,+ role_roleName,+ role_roleId,+ role_arn,+ role_createDate,++ -- ** RoleDetail+ roleDetail_arn,+ roleDetail_assumeRolePolicyDocument,+ roleDetail_attachedManagedPolicies,+ roleDetail_createDate,+ roleDetail_instanceProfileList,+ roleDetail_path,+ roleDetail_permissionsBoundary,+ roleDetail_roleId,+ roleDetail_roleLastUsed,+ roleDetail_roleName,+ roleDetail_rolePolicyList,+ roleDetail_tags,++ -- ** RoleLastUsed+ roleLastUsed_lastUsedDate,+ roleLastUsed_region,++ -- ** RoleUsageType+ roleUsageType_region,+ roleUsageType_resources,++ -- ** SAMLProviderListEntry+ sAMLProviderListEntry_arn,+ sAMLProviderListEntry_createDate,+ sAMLProviderListEntry_validUntil,++ -- ** SSHPublicKey+ sSHPublicKey_uploadDate,+ sSHPublicKey_userName,+ sSHPublicKey_sSHPublicKeyId,+ sSHPublicKey_fingerprint,+ sSHPublicKey_sSHPublicKeyBody,+ sSHPublicKey_status,++ -- ** SSHPublicKeyMetadata+ sSHPublicKeyMetadata_userName,+ sSHPublicKeyMetadata_sSHPublicKeyId,+ sSHPublicKeyMetadata_status,+ sSHPublicKeyMetadata_uploadDate,++ -- ** ServerCertificate+ serverCertificate_certificateChain,+ serverCertificate_tags,+ serverCertificate_serverCertificateMetadata,+ serverCertificate_certificateBody,++ -- ** ServerCertificateMetadata+ serverCertificateMetadata_expiration,+ serverCertificateMetadata_uploadDate,+ serverCertificateMetadata_path,+ serverCertificateMetadata_serverCertificateName,+ serverCertificateMetadata_serverCertificateId,+ serverCertificateMetadata_arn,++ -- ** ServiceLastAccessed+ serviceLastAccessed_lastAuthenticated,+ serviceLastAccessed_lastAuthenticatedEntity,+ serviceLastAccessed_lastAuthenticatedRegion,+ serviceLastAccessed_totalAuthenticatedEntities,+ serviceLastAccessed_trackedActionsLastAccessed,+ serviceLastAccessed_serviceName,+ serviceLastAccessed_serviceNamespace,++ -- ** ServiceSpecificCredential+ serviceSpecificCredential_createDate,+ serviceSpecificCredential_serviceName,+ serviceSpecificCredential_serviceUserName,+ serviceSpecificCredential_servicePassword,+ serviceSpecificCredential_serviceSpecificCredentialId,+ serviceSpecificCredential_userName,+ serviceSpecificCredential_status,++ -- ** ServiceSpecificCredentialMetadata+ serviceSpecificCredentialMetadata_userName,+ serviceSpecificCredentialMetadata_status,+ serviceSpecificCredentialMetadata_serviceUserName,+ serviceSpecificCredentialMetadata_createDate,+ serviceSpecificCredentialMetadata_serviceSpecificCredentialId,+ serviceSpecificCredentialMetadata_serviceName,++ -- ** SigningCertificate+ signingCertificate_uploadDate,+ signingCertificate_userName,+ signingCertificate_certificateId,+ signingCertificate_certificateBody,+ signingCertificate_status,++ -- ** SimulatePolicyResponse+ simulatePolicyResponse_evaluationResults,+ simulatePolicyResponse_isTruncated,+ simulatePolicyResponse_marker,++ -- ** Statement+ statement_endPosition,+ statement_sourcePolicyId,+ statement_sourcePolicyType,+ statement_startPosition,++ -- ** Tag+ tag_key,+ tag_value,++ -- ** TrackedActionLastAccessed+ trackedActionLastAccessed_actionName,+ trackedActionLastAccessed_lastAccessedEntity,+ trackedActionLastAccessed_lastAccessedRegion,+ trackedActionLastAccessed_lastAccessedTime,++ -- ** User+ user_passwordLastUsed,+ user_path,+ user_permissionsBoundary,+ user_tags,+ user_userName,+ user_userId,+ user_arn,+ user_createDate,++ -- ** UserDetail+ userDetail_arn,+ userDetail_attachedManagedPolicies,+ userDetail_createDate,+ userDetail_groupList,+ userDetail_path,+ userDetail_permissionsBoundary,+ userDetail_tags,+ userDetail_userId,+ userDetail_userName,+ userDetail_userPolicyList,++ -- ** VirtualMFADevice+ virtualMFADevice_base32StringSeed,+ virtualMFADevice_enableDate,+ virtualMFADevice_qRCodePNG,+ virtualMFADevice_tags,+ virtualMFADevice_user,+ virtualMFADevice_serialNumber,+ )+where++import Amazonka.IAM.AddClientIDToOpenIDConnectProvider+import Amazonka.IAM.AddRoleToInstanceProfile+import Amazonka.IAM.AddUserToGroup+import Amazonka.IAM.AttachGroupPolicy+import Amazonka.IAM.AttachRolePolicy+import Amazonka.IAM.AttachUserPolicy+import Amazonka.IAM.ChangePassword+import Amazonka.IAM.CreateAccessKey+import Amazonka.IAM.CreateAccountAlias+import Amazonka.IAM.CreateGroup+import Amazonka.IAM.CreateInstanceProfile+import Amazonka.IAM.CreateLoginProfile+import Amazonka.IAM.CreateOpenIDConnectProvider+import Amazonka.IAM.CreatePolicy+import Amazonka.IAM.CreatePolicyVersion+import Amazonka.IAM.CreateRole+import Amazonka.IAM.CreateSAMLProvider+import Amazonka.IAM.CreateServiceLinkedRole+import Amazonka.IAM.CreateServiceSpecificCredential+import Amazonka.IAM.CreateUser+import Amazonka.IAM.CreateVirtualMFADevice+import Amazonka.IAM.DeactivateMFADevice+import Amazonka.IAM.DeleteAccessKey+import Amazonka.IAM.DeleteAccountAlias+import Amazonka.IAM.DeleteAccountPasswordPolicy+import Amazonka.IAM.DeleteGroup+import Amazonka.IAM.DeleteGroupPolicy+import Amazonka.IAM.DeleteInstanceProfile+import Amazonka.IAM.DeleteLoginProfile+import Amazonka.IAM.DeleteOpenIDConnectProvider+import Amazonka.IAM.DeletePolicy+import Amazonka.IAM.DeletePolicyVersion+import Amazonka.IAM.DeleteRole+import Amazonka.IAM.DeleteRolePermissionsBoundary+import Amazonka.IAM.DeleteRolePolicy+import Amazonka.IAM.DeleteSAMLProvider+import Amazonka.IAM.DeleteSSHPublicKey+import Amazonka.IAM.DeleteServerCertificate+import Amazonka.IAM.DeleteServiceLinkedRole+import Amazonka.IAM.DeleteServiceSpecificCredential+import Amazonka.IAM.DeleteSigningCertificate+import Amazonka.IAM.DeleteUser+import Amazonka.IAM.DeleteUserPermissionsBoundary+import Amazonka.IAM.DeleteUserPolicy+import Amazonka.IAM.DeleteVirtualMFADevice+import Amazonka.IAM.DetachGroupPolicy+import Amazonka.IAM.DetachRolePolicy+import Amazonka.IAM.DetachUserPolicy+import Amazonka.IAM.EnableMFADevice+import Amazonka.IAM.GenerateCredentialReport+import Amazonka.IAM.GenerateOrganizationsAccessReport+import Amazonka.IAM.GenerateServiceLastAccessedDetails+import Amazonka.IAM.GetAccessKeyLastUsed+import Amazonka.IAM.GetAccountAuthorizationDetails+import Amazonka.IAM.GetAccountPasswordPolicy+import Amazonka.IAM.GetAccountSummary+import Amazonka.IAM.GetContextKeysForCustomPolicy+import Amazonka.IAM.GetContextKeysForPrincipalPolicy+import Amazonka.IAM.GetCredentialReport+import Amazonka.IAM.GetGroup+import Amazonka.IAM.GetGroupPolicy+import Amazonka.IAM.GetInstanceProfile+import Amazonka.IAM.GetLoginProfile+import Amazonka.IAM.GetOpenIDConnectProvider+import Amazonka.IAM.GetOrganizationsAccessReport+import Amazonka.IAM.GetPolicy+import Amazonka.IAM.GetPolicyVersion+import Amazonka.IAM.GetRole+import Amazonka.IAM.GetRolePolicy+import Amazonka.IAM.GetSAMLProvider+import Amazonka.IAM.GetSSHPublicKey+import Amazonka.IAM.GetServerCertificate+import Amazonka.IAM.GetServiceLastAccessedDetails+import Amazonka.IAM.GetServiceLastAccessedDetailsWithEntities+import Amazonka.IAM.GetServiceLinkedRoleDeletionStatus+import Amazonka.IAM.GetUser+import Amazonka.IAM.GetUserPolicy+import Amazonka.IAM.ListAccessKeys+import Amazonka.IAM.ListAccountAliases+import Amazonka.IAM.ListAttachedGroupPolicies+import Amazonka.IAM.ListAttachedRolePolicies+import Amazonka.IAM.ListAttachedUserPolicies+import Amazonka.IAM.ListEntitiesForPolicy+import Amazonka.IAM.ListGroupPolicies+import Amazonka.IAM.ListGroups+import Amazonka.IAM.ListGroupsForUser+import Amazonka.IAM.ListInstanceProfileTags+import Amazonka.IAM.ListInstanceProfiles+import Amazonka.IAM.ListInstanceProfilesForRole+import Amazonka.IAM.ListMFADeviceTags+import Amazonka.IAM.ListMFADevices+import Amazonka.IAM.ListOpenIDConnectProviderTags+import Amazonka.IAM.ListOpenIDConnectProviders+import Amazonka.IAM.ListPolicies+import Amazonka.IAM.ListPoliciesGrantingServiceAccess+import Amazonka.IAM.ListPolicyTags+import Amazonka.IAM.ListPolicyVersions+import Amazonka.IAM.ListRolePolicies+import Amazonka.IAM.ListRoleTags+import Amazonka.IAM.ListRoles+import Amazonka.IAM.ListSAMLProviderTags+import Amazonka.IAM.ListSAMLProviders+import Amazonka.IAM.ListSSHPublicKeys+import Amazonka.IAM.ListServerCertificateTags+import Amazonka.IAM.ListServerCertificates+import Amazonka.IAM.ListServiceSpecificCredentials+import Amazonka.IAM.ListSigningCertificates+import Amazonka.IAM.ListUserPolicies+import Amazonka.IAM.ListUserTags+import Amazonka.IAM.ListUsers+import Amazonka.IAM.ListVirtualMFADevices+import Amazonka.IAM.PutGroupPolicy+import Amazonka.IAM.PutRolePermissionsBoundary+import Amazonka.IAM.PutRolePolicy+import Amazonka.IAM.PutUserPermissionsBoundary+import Amazonka.IAM.PutUserPolicy+import Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider+import Amazonka.IAM.RemoveRoleFromInstanceProfile+import Amazonka.IAM.RemoveUserFromGroup+import Amazonka.IAM.ResetServiceSpecificCredential+import Amazonka.IAM.ResyncMFADevice+import Amazonka.IAM.SetDefaultPolicyVersion+import Amazonka.IAM.SetSecurityTokenServicePreferences+import Amazonka.IAM.SimulateCustomPolicy+import Amazonka.IAM.SimulatePrincipalPolicy+import Amazonka.IAM.TagInstanceProfile+import Amazonka.IAM.TagMFADevice+import Amazonka.IAM.TagOpenIDConnectProvider+import Amazonka.IAM.TagPolicy+import Amazonka.IAM.TagRole+import Amazonka.IAM.TagSAMLProvider+import Amazonka.IAM.TagServerCertificate+import Amazonka.IAM.TagUser+import Amazonka.IAM.Types.AccessDetail+import Amazonka.IAM.Types.AccessKeyInfo+import Amazonka.IAM.Types.AccessKeyLastUsed+import Amazonka.IAM.Types.AccessKeyMetadata+import Amazonka.IAM.Types.AttachedPermissionsBoundary+import Amazonka.IAM.Types.AttachedPolicy+import Amazonka.IAM.Types.ContextEntry+import Amazonka.IAM.Types.DeletionTaskFailureReasonType+import Amazonka.IAM.Types.EntityDetails+import Amazonka.IAM.Types.EntityInfo+import Amazonka.IAM.Types.ErrorDetails+import Amazonka.IAM.Types.EvaluationResult+import Amazonka.IAM.Types.GetContextKeysForPolicyResponse+import Amazonka.IAM.Types.Group+import Amazonka.IAM.Types.GroupDetail+import Amazonka.IAM.Types.InstanceProfile+import Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry+import Amazonka.IAM.Types.LoginProfile+import Amazonka.IAM.Types.MFADevice+import Amazonka.IAM.Types.ManagedPolicyDetail+import Amazonka.IAM.Types.OpenIDConnectProviderListEntry+import Amazonka.IAM.Types.OrganizationsDecisionDetail+import Amazonka.IAM.Types.PasswordPolicy+import Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail+import Amazonka.IAM.Types.Policy+import Amazonka.IAM.Types.PolicyDetail+import Amazonka.IAM.Types.PolicyGrantingServiceAccess+import Amazonka.IAM.Types.PolicyGroup+import Amazonka.IAM.Types.PolicyRole+import Amazonka.IAM.Types.PolicyUser+import Amazonka.IAM.Types.PolicyVersion+import Amazonka.IAM.Types.Position+import Amazonka.IAM.Types.ResourceSpecificResult+import Amazonka.IAM.Types.Role+import Amazonka.IAM.Types.RoleDetail+import Amazonka.IAM.Types.RoleLastUsed+import Amazonka.IAM.Types.RoleUsageType+import Amazonka.IAM.Types.SAMLProviderListEntry+import Amazonka.IAM.Types.SSHPublicKey+import Amazonka.IAM.Types.SSHPublicKeyMetadata+import Amazonka.IAM.Types.ServerCertificate+import Amazonka.IAM.Types.ServerCertificateMetadata+import Amazonka.IAM.Types.ServiceLastAccessed+import Amazonka.IAM.Types.ServiceSpecificCredential+import Amazonka.IAM.Types.ServiceSpecificCredentialMetadata+import Amazonka.IAM.Types.SigningCertificate+import Amazonka.IAM.Types.SimulatePolicyResponse+import Amazonka.IAM.Types.Statement+import Amazonka.IAM.Types.Tag+import Amazonka.IAM.Types.TrackedActionLastAccessed+import Amazonka.IAM.Types.User+import Amazonka.IAM.Types.UserDetail+import Amazonka.IAM.Types.VirtualMFADevice+import Amazonka.IAM.UntagInstanceProfile+import Amazonka.IAM.UntagMFADevice+import Amazonka.IAM.UntagOpenIDConnectProvider+import Amazonka.IAM.UntagPolicy+import Amazonka.IAM.UntagRole+import Amazonka.IAM.UntagSAMLProvider+import Amazonka.IAM.UntagServerCertificate+import Amazonka.IAM.UntagUser+import Amazonka.IAM.UpdateAccessKey+import Amazonka.IAM.UpdateAccountPasswordPolicy+import Amazonka.IAM.UpdateAssumeRolePolicy+import Amazonka.IAM.UpdateGroup+import Amazonka.IAM.UpdateLoginProfile+import Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint+import Amazonka.IAM.UpdateRole+import Amazonka.IAM.UpdateRoleDescription+import Amazonka.IAM.UpdateSAMLProvider+import Amazonka.IAM.UpdateSSHPublicKey+import Amazonka.IAM.UpdateServerCertificate+import Amazonka.IAM.UpdateServiceSpecificCredential+import Amazonka.IAM.UpdateSigningCertificate+import Amazonka.IAM.UpdateUser+import Amazonka.IAM.UploadSSHPublicKey+import Amazonka.IAM.UploadServerCertificate+import Amazonka.IAM.UploadSigningCertificate
+ gen/Amazonka/IAM/ListAccessKeys.hs view
@@ -0,0 +1,328 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListAccessKeys+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about the access key IDs associated with the+-- specified IAM user. If there is none, the operation returns an empty+-- list.+--+-- Although each user is limited to a small number of keys, you can still+-- paginate the results using the @MaxItems@ and @Marker@ parameters.+--+-- If the @UserName@ is not specified, the user name is determined+-- implicitly based on the Amazon Web Services access key ID used to sign+-- the request. If a temporary access key is used, then @UserName@ is+-- required. If a long-term key is assigned to the user, then @UserName@ is+-- not required. This operation works for access keys under the Amazon Web+-- Services account. Consequently, you can use this operation to manage+-- Amazon Web Services account root user credentials even if the Amazon Web+-- Services account has no associated users.+--+-- To ensure the security of your Amazon Web Services account, the secret+-- access key is accessible only during key and user creation.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListAccessKeys+ ( -- * Creating a Request+ ListAccessKeys (..),+ newListAccessKeys,++ -- * Request Lenses+ listAccessKeys_marker,+ listAccessKeys_maxItems,+ listAccessKeys_userName,++ -- * Destructuring the Response+ ListAccessKeysResponse (..),+ newListAccessKeysResponse,++ -- * Response Lenses+ listAccessKeysResponse_isTruncated,+ listAccessKeysResponse_marker,+ listAccessKeysResponse_httpStatus,+ listAccessKeysResponse_accessKeyMetadata,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListAccessKeys' smart constructor.+data ListAccessKeys = ListAccessKeys'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the user.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAccessKeys' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listAccessKeys_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listAccessKeys_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'userName', 'listAccessKeys_userName' - The name of the user.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListAccessKeys ::+ ListAccessKeys+newListAccessKeys =+ ListAccessKeys'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ userName = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listAccessKeys_marker :: Lens.Lens' ListAccessKeys (Prelude.Maybe Prelude.Text)+listAccessKeys_marker = Lens.lens (\ListAccessKeys' {marker} -> marker) (\s@ListAccessKeys' {} a -> s {marker = a} :: ListAccessKeys)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listAccessKeys_maxItems :: Lens.Lens' ListAccessKeys (Prelude.Maybe Prelude.Natural)+listAccessKeys_maxItems = Lens.lens (\ListAccessKeys' {maxItems} -> maxItems) (\s@ListAccessKeys' {} a -> s {maxItems = a} :: ListAccessKeys)++-- | The name of the user.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listAccessKeys_userName :: Lens.Lens' ListAccessKeys (Prelude.Maybe Prelude.Text)+listAccessKeys_userName = Lens.lens (\ListAccessKeys' {userName} -> userName) (\s@ListAccessKeys' {} a -> s {userName = a} :: ListAccessKeys)++instance Core.AWSPager ListAccessKeys where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAccessKeysResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listAccessKeysResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAccessKeys_marker+ Lens..~ rs+ Lens.^? listAccessKeysResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListAccessKeys where+ type+ AWSResponse ListAccessKeys =+ ListAccessKeysResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListAccessKeysResult"+ ( \s h x ->+ ListAccessKeysResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "AccessKeyMetadata"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListAccessKeys where+ hashWithSalt _salt ListAccessKeys' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` userName++instance Prelude.NFData ListAccessKeys where+ rnf ListAccessKeys' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders ListAccessKeys where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListAccessKeys where+ toPath = Prelude.const "/"++instance Data.ToQuery ListAccessKeys where+ toQuery ListAccessKeys' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListAccessKeys" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful ListAccessKeys request.+--+-- /See:/ 'newListAccessKeysResponse' smart constructor.+data ListAccessKeysResponse = ListAccessKeysResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of objects containing metadata about the access keys.+ accessKeyMetadata :: [AccessKeyMetadata]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAccessKeysResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listAccessKeysResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listAccessKeysResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listAccessKeysResponse_httpStatus' - The response's http status code.+--+-- 'accessKeyMetadata', 'listAccessKeysResponse_accessKeyMetadata' - A list of objects containing metadata about the access keys.+newListAccessKeysResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAccessKeysResponse+newListAccessKeysResponse pHttpStatus_ =+ ListAccessKeysResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ accessKeyMetadata = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listAccessKeysResponse_isTruncated :: Lens.Lens' ListAccessKeysResponse (Prelude.Maybe Prelude.Bool)+listAccessKeysResponse_isTruncated = Lens.lens (\ListAccessKeysResponse' {isTruncated} -> isTruncated) (\s@ListAccessKeysResponse' {} a -> s {isTruncated = a} :: ListAccessKeysResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listAccessKeysResponse_marker :: Lens.Lens' ListAccessKeysResponse (Prelude.Maybe Prelude.Text)+listAccessKeysResponse_marker = Lens.lens (\ListAccessKeysResponse' {marker} -> marker) (\s@ListAccessKeysResponse' {} a -> s {marker = a} :: ListAccessKeysResponse)++-- | The response's http status code.+listAccessKeysResponse_httpStatus :: Lens.Lens' ListAccessKeysResponse Prelude.Int+listAccessKeysResponse_httpStatus = Lens.lens (\ListAccessKeysResponse' {httpStatus} -> httpStatus) (\s@ListAccessKeysResponse' {} a -> s {httpStatus = a} :: ListAccessKeysResponse)++-- | A list of objects containing metadata about the access keys.+listAccessKeysResponse_accessKeyMetadata :: Lens.Lens' ListAccessKeysResponse [AccessKeyMetadata]+listAccessKeysResponse_accessKeyMetadata = Lens.lens (\ListAccessKeysResponse' {accessKeyMetadata} -> accessKeyMetadata) (\s@ListAccessKeysResponse' {} a -> s {accessKeyMetadata = a} :: ListAccessKeysResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListAccessKeysResponse where+ rnf ListAccessKeysResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf accessKeyMetadata
+ gen/Amazonka/IAM/ListAccountAliases.hs view
@@ -0,0 +1,290 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListAccountAliases+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the account alias associated with the Amazon Web Services account+-- (Note: you can have only one). For information about using an Amazon Web+-- Services account alias, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html Using an alias for your Amazon Web Services account ID>+-- in the /IAM User Guide/.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListAccountAliases+ ( -- * Creating a Request+ ListAccountAliases (..),+ newListAccountAliases,++ -- * Request Lenses+ listAccountAliases_marker,+ listAccountAliases_maxItems,++ -- * Destructuring the Response+ ListAccountAliasesResponse (..),+ newListAccountAliasesResponse,++ -- * Response Lenses+ listAccountAliasesResponse_isTruncated,+ listAccountAliasesResponse_marker,+ listAccountAliasesResponse_httpStatus,+ listAccountAliasesResponse_accountAliases,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListAccountAliases' smart constructor.+data ListAccountAliases = ListAccountAliases'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAccountAliases' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listAccountAliases_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listAccountAliases_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+newListAccountAliases ::+ ListAccountAliases+newListAccountAliases =+ ListAccountAliases'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listAccountAliases_marker :: Lens.Lens' ListAccountAliases (Prelude.Maybe Prelude.Text)+listAccountAliases_marker = Lens.lens (\ListAccountAliases' {marker} -> marker) (\s@ListAccountAliases' {} a -> s {marker = a} :: ListAccountAliases)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listAccountAliases_maxItems :: Lens.Lens' ListAccountAliases (Prelude.Maybe Prelude.Natural)+listAccountAliases_maxItems = Lens.lens (\ListAccountAliases' {maxItems} -> maxItems) (\s@ListAccountAliases' {} a -> s {maxItems = a} :: ListAccountAliases)++instance Core.AWSPager ListAccountAliases where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAccountAliasesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listAccountAliasesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAccountAliases_marker+ Lens..~ rs+ Lens.^? listAccountAliasesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListAccountAliases where+ type+ AWSResponse ListAccountAliases =+ ListAccountAliasesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListAccountAliasesResult"+ ( \s h x ->+ ListAccountAliasesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "AccountAliases"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListAccountAliases where+ hashWithSalt _salt ListAccountAliases' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems++instance Prelude.NFData ListAccountAliases where+ rnf ListAccountAliases' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems++instance Data.ToHeaders ListAccountAliases where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListAccountAliases where+ toPath = Prelude.const "/"++instance Data.ToQuery ListAccountAliases where+ toQuery ListAccountAliases' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListAccountAliases" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems+ ]++-- | Contains the response to a successful ListAccountAliases request.+--+-- /See:/ 'newListAccountAliasesResponse' smart constructor.+data ListAccountAliasesResponse = ListAccountAliasesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of aliases associated with the account. Amazon Web Services+ -- supports only one alias per account.+ accountAliases :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAccountAliasesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listAccountAliasesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listAccountAliasesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listAccountAliasesResponse_httpStatus' - The response's http status code.+--+-- 'accountAliases', 'listAccountAliasesResponse_accountAliases' - A list of aliases associated with the account. Amazon Web Services+-- supports only one alias per account.+newListAccountAliasesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAccountAliasesResponse+newListAccountAliasesResponse pHttpStatus_ =+ ListAccountAliasesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ accountAliases = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listAccountAliasesResponse_isTruncated :: Lens.Lens' ListAccountAliasesResponse (Prelude.Maybe Prelude.Bool)+listAccountAliasesResponse_isTruncated = Lens.lens (\ListAccountAliasesResponse' {isTruncated} -> isTruncated) (\s@ListAccountAliasesResponse' {} a -> s {isTruncated = a} :: ListAccountAliasesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listAccountAliasesResponse_marker :: Lens.Lens' ListAccountAliasesResponse (Prelude.Maybe Prelude.Text)+listAccountAliasesResponse_marker = Lens.lens (\ListAccountAliasesResponse' {marker} -> marker) (\s@ListAccountAliasesResponse' {} a -> s {marker = a} :: ListAccountAliasesResponse)++-- | The response's http status code.+listAccountAliasesResponse_httpStatus :: Lens.Lens' ListAccountAliasesResponse Prelude.Int+listAccountAliasesResponse_httpStatus = Lens.lens (\ListAccountAliasesResponse' {httpStatus} -> httpStatus) (\s@ListAccountAliasesResponse' {} a -> s {httpStatus = a} :: ListAccountAliasesResponse)++-- | A list of aliases associated with the account. Amazon Web Services+-- supports only one alias per account.+listAccountAliasesResponse_accountAliases :: Lens.Lens' ListAccountAliasesResponse [Prelude.Text]+listAccountAliasesResponse_accountAliases = Lens.lens (\ListAccountAliasesResponse' {accountAliases} -> accountAliases) (\s@ListAccountAliasesResponse' {} a -> s {accountAliases = a} :: ListAccountAliasesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListAccountAliasesResponse where+ rnf ListAccountAliasesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf accountAliases
+ gen/Amazonka/IAM/ListAttachedGroupPolicies.hs view
@@ -0,0 +1,375 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListAttachedGroupPolicies+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all managed policies that are attached to the specified IAM group.+--+-- An IAM group can also have inline policies embedded with it. To list the+-- inline policies for a group, use ListGroupPolicies. For information+-- about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters. You can use the @PathPrefix@ parameter to limit the list of+-- policies to only those matching the specified path prefix. If there are+-- no policies attached to the specified group (or none that match the+-- specified path prefix), the operation returns an empty list.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListAttachedGroupPolicies+ ( -- * Creating a Request+ ListAttachedGroupPolicies (..),+ newListAttachedGroupPolicies,++ -- * Request Lenses+ listAttachedGroupPolicies_marker,+ listAttachedGroupPolicies_maxItems,+ listAttachedGroupPolicies_pathPrefix,+ listAttachedGroupPolicies_groupName,++ -- * Destructuring the Response+ ListAttachedGroupPoliciesResponse (..),+ newListAttachedGroupPoliciesResponse,++ -- * Response Lenses+ listAttachedGroupPoliciesResponse_attachedPolicies,+ listAttachedGroupPoliciesResponse_isTruncated,+ listAttachedGroupPoliciesResponse_marker,+ listAttachedGroupPoliciesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListAttachedGroupPolicies' smart constructor.+data ListAttachedGroupPolicies = ListAttachedGroupPolicies'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. This parameter is optional.+ -- If it is not included, it defaults to a slash (\/), listing all+ -- policies.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text,+ -- | The name (friendly name, not ARN) of the group to list attached policies+ -- for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAttachedGroupPolicies' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listAttachedGroupPolicies_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listAttachedGroupPolicies_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listAttachedGroupPolicies_pathPrefix' - The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- policies.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'groupName', 'listAttachedGroupPolicies_groupName' - The name (friendly name, not ARN) of the group to list attached policies+-- for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListAttachedGroupPolicies ::+ -- | 'groupName'+ Prelude.Text ->+ ListAttachedGroupPolicies+newListAttachedGroupPolicies pGroupName_ =+ ListAttachedGroupPolicies'+ { marker =+ Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing,+ groupName = pGroupName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listAttachedGroupPolicies_marker :: Lens.Lens' ListAttachedGroupPolicies (Prelude.Maybe Prelude.Text)+listAttachedGroupPolicies_marker = Lens.lens (\ListAttachedGroupPolicies' {marker} -> marker) (\s@ListAttachedGroupPolicies' {} a -> s {marker = a} :: ListAttachedGroupPolicies)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listAttachedGroupPolicies_maxItems :: Lens.Lens' ListAttachedGroupPolicies (Prelude.Maybe Prelude.Natural)+listAttachedGroupPolicies_maxItems = Lens.lens (\ListAttachedGroupPolicies' {maxItems} -> maxItems) (\s@ListAttachedGroupPolicies' {} a -> s {maxItems = a} :: ListAttachedGroupPolicies)++-- | The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- policies.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+listAttachedGroupPolicies_pathPrefix :: Lens.Lens' ListAttachedGroupPolicies (Prelude.Maybe Prelude.Text)+listAttachedGroupPolicies_pathPrefix = Lens.lens (\ListAttachedGroupPolicies' {pathPrefix} -> pathPrefix) (\s@ListAttachedGroupPolicies' {} a -> s {pathPrefix = a} :: ListAttachedGroupPolicies)++-- | The name (friendly name, not ARN) of the group to list attached policies+-- for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listAttachedGroupPolicies_groupName :: Lens.Lens' ListAttachedGroupPolicies Prelude.Text+listAttachedGroupPolicies_groupName = Lens.lens (\ListAttachedGroupPolicies' {groupName} -> groupName) (\s@ListAttachedGroupPolicies' {} a -> s {groupName = a} :: ListAttachedGroupPolicies)++instance Core.AWSPager ListAttachedGroupPolicies where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAttachedGroupPoliciesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listAttachedGroupPoliciesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAttachedGroupPolicies_marker+ Lens..~ rs+ Lens.^? listAttachedGroupPoliciesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListAttachedGroupPolicies where+ type+ AWSResponse ListAttachedGroupPolicies =+ ListAttachedGroupPoliciesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListAttachedGroupPoliciesResult"+ ( \s h x ->+ ListAttachedGroupPoliciesResponse'+ Prelude.<$> ( x+ Data..@? "AttachedPolicies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListAttachedGroupPolicies where+ hashWithSalt _salt ListAttachedGroupPolicies' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix+ `Prelude.hashWithSalt` groupName++instance Prelude.NFData ListAttachedGroupPolicies where+ rnf ListAttachedGroupPolicies' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix+ `Prelude.seq` Prelude.rnf groupName++instance Data.ToHeaders ListAttachedGroupPolicies where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListAttachedGroupPolicies where+ toPath = Prelude.const "/"++instance Data.ToQuery ListAttachedGroupPolicies where+ toQuery ListAttachedGroupPolicies' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListAttachedGroupPolicies" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix,+ "GroupName" Data.=: groupName+ ]++-- | Contains the response to a successful ListAttachedGroupPolicies request.+--+-- /See:/ 'newListAttachedGroupPoliciesResponse' smart constructor.+data ListAttachedGroupPoliciesResponse = ListAttachedGroupPoliciesResponse'+ { -- | A list of the attached policies.+ attachedPolicies :: Prelude.Maybe [AttachedPolicy],+ -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAttachedGroupPoliciesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attachedPolicies', 'listAttachedGroupPoliciesResponse_attachedPolicies' - A list of the attached policies.+--+-- 'isTruncated', 'listAttachedGroupPoliciesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listAttachedGroupPoliciesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listAttachedGroupPoliciesResponse_httpStatus' - The response's http status code.+newListAttachedGroupPoliciesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAttachedGroupPoliciesResponse+newListAttachedGroupPoliciesResponse pHttpStatus_ =+ ListAttachedGroupPoliciesResponse'+ { attachedPolicies =+ Prelude.Nothing,+ isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of the attached policies.+listAttachedGroupPoliciesResponse_attachedPolicies :: Lens.Lens' ListAttachedGroupPoliciesResponse (Prelude.Maybe [AttachedPolicy])+listAttachedGroupPoliciesResponse_attachedPolicies = Lens.lens (\ListAttachedGroupPoliciesResponse' {attachedPolicies} -> attachedPolicies) (\s@ListAttachedGroupPoliciesResponse' {} a -> s {attachedPolicies = a} :: ListAttachedGroupPoliciesResponse) Prelude.. Lens.mapping Lens.coerced++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listAttachedGroupPoliciesResponse_isTruncated :: Lens.Lens' ListAttachedGroupPoliciesResponse (Prelude.Maybe Prelude.Bool)+listAttachedGroupPoliciesResponse_isTruncated = Lens.lens (\ListAttachedGroupPoliciesResponse' {isTruncated} -> isTruncated) (\s@ListAttachedGroupPoliciesResponse' {} a -> s {isTruncated = a} :: ListAttachedGroupPoliciesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listAttachedGroupPoliciesResponse_marker :: Lens.Lens' ListAttachedGroupPoliciesResponse (Prelude.Maybe Prelude.Text)+listAttachedGroupPoliciesResponse_marker = Lens.lens (\ListAttachedGroupPoliciesResponse' {marker} -> marker) (\s@ListAttachedGroupPoliciesResponse' {} a -> s {marker = a} :: ListAttachedGroupPoliciesResponse)++-- | The response's http status code.+listAttachedGroupPoliciesResponse_httpStatus :: Lens.Lens' ListAttachedGroupPoliciesResponse Prelude.Int+listAttachedGroupPoliciesResponse_httpStatus = Lens.lens (\ListAttachedGroupPoliciesResponse' {httpStatus} -> httpStatus) (\s@ListAttachedGroupPoliciesResponse' {} a -> s {httpStatus = a} :: ListAttachedGroupPoliciesResponse)++instance+ Prelude.NFData+ ListAttachedGroupPoliciesResponse+ where+ rnf ListAttachedGroupPoliciesResponse' {..} =+ Prelude.rnf attachedPolicies+ `Prelude.seq` Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListAttachedRolePolicies.hs view
@@ -0,0 +1,374 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListAttachedRolePolicies+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all managed policies that are attached to the specified IAM role.+--+-- An IAM role can also have inline policies embedded with it. To list the+-- inline policies for a role, use ListRolePolicies. For information about+-- policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters. You can use the @PathPrefix@ parameter to limit the list of+-- policies to only those matching the specified path prefix. If there are+-- no policies attached to the specified role (or none that match the+-- specified path prefix), the operation returns an empty list.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListAttachedRolePolicies+ ( -- * Creating a Request+ ListAttachedRolePolicies (..),+ newListAttachedRolePolicies,++ -- * Request Lenses+ listAttachedRolePolicies_marker,+ listAttachedRolePolicies_maxItems,+ listAttachedRolePolicies_pathPrefix,+ listAttachedRolePolicies_roleName,++ -- * Destructuring the Response+ ListAttachedRolePoliciesResponse (..),+ newListAttachedRolePoliciesResponse,++ -- * Response Lenses+ listAttachedRolePoliciesResponse_attachedPolicies,+ listAttachedRolePoliciesResponse_isTruncated,+ listAttachedRolePoliciesResponse_marker,+ listAttachedRolePoliciesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListAttachedRolePolicies' smart constructor.+data ListAttachedRolePolicies = ListAttachedRolePolicies'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. This parameter is optional.+ -- If it is not included, it defaults to a slash (\/), listing all+ -- policies.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text,+ -- | The name (friendly name, not ARN) of the role to list attached policies+ -- for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAttachedRolePolicies' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listAttachedRolePolicies_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listAttachedRolePolicies_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listAttachedRolePolicies_pathPrefix' - The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- policies.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'roleName', 'listAttachedRolePolicies_roleName' - The name (friendly name, not ARN) of the role to list attached policies+-- for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListAttachedRolePolicies ::+ -- | 'roleName'+ Prelude.Text ->+ ListAttachedRolePolicies+newListAttachedRolePolicies pRoleName_ =+ ListAttachedRolePolicies'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing,+ roleName = pRoleName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listAttachedRolePolicies_marker :: Lens.Lens' ListAttachedRolePolicies (Prelude.Maybe Prelude.Text)+listAttachedRolePolicies_marker = Lens.lens (\ListAttachedRolePolicies' {marker} -> marker) (\s@ListAttachedRolePolicies' {} a -> s {marker = a} :: ListAttachedRolePolicies)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listAttachedRolePolicies_maxItems :: Lens.Lens' ListAttachedRolePolicies (Prelude.Maybe Prelude.Natural)+listAttachedRolePolicies_maxItems = Lens.lens (\ListAttachedRolePolicies' {maxItems} -> maxItems) (\s@ListAttachedRolePolicies' {} a -> s {maxItems = a} :: ListAttachedRolePolicies)++-- | The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- policies.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+listAttachedRolePolicies_pathPrefix :: Lens.Lens' ListAttachedRolePolicies (Prelude.Maybe Prelude.Text)+listAttachedRolePolicies_pathPrefix = Lens.lens (\ListAttachedRolePolicies' {pathPrefix} -> pathPrefix) (\s@ListAttachedRolePolicies' {} a -> s {pathPrefix = a} :: ListAttachedRolePolicies)++-- | The name (friendly name, not ARN) of the role to list attached policies+-- for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listAttachedRolePolicies_roleName :: Lens.Lens' ListAttachedRolePolicies Prelude.Text+listAttachedRolePolicies_roleName = Lens.lens (\ListAttachedRolePolicies' {roleName} -> roleName) (\s@ListAttachedRolePolicies' {} a -> s {roleName = a} :: ListAttachedRolePolicies)++instance Core.AWSPager ListAttachedRolePolicies where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAttachedRolePoliciesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listAttachedRolePoliciesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAttachedRolePolicies_marker+ Lens..~ rs+ Lens.^? listAttachedRolePoliciesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListAttachedRolePolicies where+ type+ AWSResponse ListAttachedRolePolicies =+ ListAttachedRolePoliciesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListAttachedRolePoliciesResult"+ ( \s h x ->+ ListAttachedRolePoliciesResponse'+ Prelude.<$> ( x+ Data..@? "AttachedPolicies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListAttachedRolePolicies where+ hashWithSalt _salt ListAttachedRolePolicies' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix+ `Prelude.hashWithSalt` roleName++instance Prelude.NFData ListAttachedRolePolicies where+ rnf ListAttachedRolePolicies' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix+ `Prelude.seq` Prelude.rnf roleName++instance Data.ToHeaders ListAttachedRolePolicies where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListAttachedRolePolicies where+ toPath = Prelude.const "/"++instance Data.ToQuery ListAttachedRolePolicies where+ toQuery ListAttachedRolePolicies' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListAttachedRolePolicies" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix,+ "RoleName" Data.=: roleName+ ]++-- | Contains the response to a successful ListAttachedRolePolicies request.+--+-- /See:/ 'newListAttachedRolePoliciesResponse' smart constructor.+data ListAttachedRolePoliciesResponse = ListAttachedRolePoliciesResponse'+ { -- | A list of the attached policies.+ attachedPolicies :: Prelude.Maybe [AttachedPolicy],+ -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAttachedRolePoliciesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attachedPolicies', 'listAttachedRolePoliciesResponse_attachedPolicies' - A list of the attached policies.+--+-- 'isTruncated', 'listAttachedRolePoliciesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listAttachedRolePoliciesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listAttachedRolePoliciesResponse_httpStatus' - The response's http status code.+newListAttachedRolePoliciesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAttachedRolePoliciesResponse+newListAttachedRolePoliciesResponse pHttpStatus_ =+ ListAttachedRolePoliciesResponse'+ { attachedPolicies =+ Prelude.Nothing,+ isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of the attached policies.+listAttachedRolePoliciesResponse_attachedPolicies :: Lens.Lens' ListAttachedRolePoliciesResponse (Prelude.Maybe [AttachedPolicy])+listAttachedRolePoliciesResponse_attachedPolicies = Lens.lens (\ListAttachedRolePoliciesResponse' {attachedPolicies} -> attachedPolicies) (\s@ListAttachedRolePoliciesResponse' {} a -> s {attachedPolicies = a} :: ListAttachedRolePoliciesResponse) Prelude.. Lens.mapping Lens.coerced++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listAttachedRolePoliciesResponse_isTruncated :: Lens.Lens' ListAttachedRolePoliciesResponse (Prelude.Maybe Prelude.Bool)+listAttachedRolePoliciesResponse_isTruncated = Lens.lens (\ListAttachedRolePoliciesResponse' {isTruncated} -> isTruncated) (\s@ListAttachedRolePoliciesResponse' {} a -> s {isTruncated = a} :: ListAttachedRolePoliciesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listAttachedRolePoliciesResponse_marker :: Lens.Lens' ListAttachedRolePoliciesResponse (Prelude.Maybe Prelude.Text)+listAttachedRolePoliciesResponse_marker = Lens.lens (\ListAttachedRolePoliciesResponse' {marker} -> marker) (\s@ListAttachedRolePoliciesResponse' {} a -> s {marker = a} :: ListAttachedRolePoliciesResponse)++-- | The response's http status code.+listAttachedRolePoliciesResponse_httpStatus :: Lens.Lens' ListAttachedRolePoliciesResponse Prelude.Int+listAttachedRolePoliciesResponse_httpStatus = Lens.lens (\ListAttachedRolePoliciesResponse' {httpStatus} -> httpStatus) (\s@ListAttachedRolePoliciesResponse' {} a -> s {httpStatus = a} :: ListAttachedRolePoliciesResponse)++instance+ Prelude.NFData+ ListAttachedRolePoliciesResponse+ where+ rnf ListAttachedRolePoliciesResponse' {..} =+ Prelude.rnf attachedPolicies+ `Prelude.seq` Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListAttachedUserPolicies.hs view
@@ -0,0 +1,374 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListAttachedUserPolicies+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all managed policies that are attached to the specified IAM user.+--+-- An IAM user can also have inline policies embedded with it. To list the+-- inline policies for a user, use ListUserPolicies. For information about+-- policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters. You can use the @PathPrefix@ parameter to limit the list of+-- policies to only those matching the specified path prefix. If there are+-- no policies attached to the specified group (or none that match the+-- specified path prefix), the operation returns an empty list.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListAttachedUserPolicies+ ( -- * Creating a Request+ ListAttachedUserPolicies (..),+ newListAttachedUserPolicies,++ -- * Request Lenses+ listAttachedUserPolicies_marker,+ listAttachedUserPolicies_maxItems,+ listAttachedUserPolicies_pathPrefix,+ listAttachedUserPolicies_userName,++ -- * Destructuring the Response+ ListAttachedUserPoliciesResponse (..),+ newListAttachedUserPoliciesResponse,++ -- * Response Lenses+ listAttachedUserPoliciesResponse_attachedPolicies,+ listAttachedUserPoliciesResponse_isTruncated,+ listAttachedUserPoliciesResponse_marker,+ listAttachedUserPoliciesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListAttachedUserPolicies' smart constructor.+data ListAttachedUserPolicies = ListAttachedUserPolicies'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. This parameter is optional.+ -- If it is not included, it defaults to a slash (\/), listing all+ -- policies.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text,+ -- | The name (friendly name, not ARN) of the user to list attached policies+ -- for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAttachedUserPolicies' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listAttachedUserPolicies_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listAttachedUserPolicies_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listAttachedUserPolicies_pathPrefix' - The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- policies.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'userName', 'listAttachedUserPolicies_userName' - The name (friendly name, not ARN) of the user to list attached policies+-- for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListAttachedUserPolicies ::+ -- | 'userName'+ Prelude.Text ->+ ListAttachedUserPolicies+newListAttachedUserPolicies pUserName_ =+ ListAttachedUserPolicies'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing,+ userName = pUserName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listAttachedUserPolicies_marker :: Lens.Lens' ListAttachedUserPolicies (Prelude.Maybe Prelude.Text)+listAttachedUserPolicies_marker = Lens.lens (\ListAttachedUserPolicies' {marker} -> marker) (\s@ListAttachedUserPolicies' {} a -> s {marker = a} :: ListAttachedUserPolicies)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listAttachedUserPolicies_maxItems :: Lens.Lens' ListAttachedUserPolicies (Prelude.Maybe Prelude.Natural)+listAttachedUserPolicies_maxItems = Lens.lens (\ListAttachedUserPolicies' {maxItems} -> maxItems) (\s@ListAttachedUserPolicies' {} a -> s {maxItems = a} :: ListAttachedUserPolicies)++-- | The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- policies.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+listAttachedUserPolicies_pathPrefix :: Lens.Lens' ListAttachedUserPolicies (Prelude.Maybe Prelude.Text)+listAttachedUserPolicies_pathPrefix = Lens.lens (\ListAttachedUserPolicies' {pathPrefix} -> pathPrefix) (\s@ListAttachedUserPolicies' {} a -> s {pathPrefix = a} :: ListAttachedUserPolicies)++-- | The name (friendly name, not ARN) of the user to list attached policies+-- for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listAttachedUserPolicies_userName :: Lens.Lens' ListAttachedUserPolicies Prelude.Text+listAttachedUserPolicies_userName = Lens.lens (\ListAttachedUserPolicies' {userName} -> userName) (\s@ListAttachedUserPolicies' {} a -> s {userName = a} :: ListAttachedUserPolicies)++instance Core.AWSPager ListAttachedUserPolicies where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAttachedUserPoliciesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listAttachedUserPoliciesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAttachedUserPolicies_marker+ Lens..~ rs+ Lens.^? listAttachedUserPoliciesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListAttachedUserPolicies where+ type+ AWSResponse ListAttachedUserPolicies =+ ListAttachedUserPoliciesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListAttachedUserPoliciesResult"+ ( \s h x ->+ ListAttachedUserPoliciesResponse'+ Prelude.<$> ( x+ Data..@? "AttachedPolicies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListAttachedUserPolicies where+ hashWithSalt _salt ListAttachedUserPolicies' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix+ `Prelude.hashWithSalt` userName++instance Prelude.NFData ListAttachedUserPolicies where+ rnf ListAttachedUserPolicies' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders ListAttachedUserPolicies where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListAttachedUserPolicies where+ toPath = Prelude.const "/"++instance Data.ToQuery ListAttachedUserPolicies where+ toQuery ListAttachedUserPolicies' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListAttachedUserPolicies" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix,+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful ListAttachedUserPolicies request.+--+-- /See:/ 'newListAttachedUserPoliciesResponse' smart constructor.+data ListAttachedUserPoliciesResponse = ListAttachedUserPoliciesResponse'+ { -- | A list of the attached policies.+ attachedPolicies :: Prelude.Maybe [AttachedPolicy],+ -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAttachedUserPoliciesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attachedPolicies', 'listAttachedUserPoliciesResponse_attachedPolicies' - A list of the attached policies.+--+-- 'isTruncated', 'listAttachedUserPoliciesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listAttachedUserPoliciesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listAttachedUserPoliciesResponse_httpStatus' - The response's http status code.+newListAttachedUserPoliciesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAttachedUserPoliciesResponse+newListAttachedUserPoliciesResponse pHttpStatus_ =+ ListAttachedUserPoliciesResponse'+ { attachedPolicies =+ Prelude.Nothing,+ isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of the attached policies.+listAttachedUserPoliciesResponse_attachedPolicies :: Lens.Lens' ListAttachedUserPoliciesResponse (Prelude.Maybe [AttachedPolicy])+listAttachedUserPoliciesResponse_attachedPolicies = Lens.lens (\ListAttachedUserPoliciesResponse' {attachedPolicies} -> attachedPolicies) (\s@ListAttachedUserPoliciesResponse' {} a -> s {attachedPolicies = a} :: ListAttachedUserPoliciesResponse) Prelude.. Lens.mapping Lens.coerced++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listAttachedUserPoliciesResponse_isTruncated :: Lens.Lens' ListAttachedUserPoliciesResponse (Prelude.Maybe Prelude.Bool)+listAttachedUserPoliciesResponse_isTruncated = Lens.lens (\ListAttachedUserPoliciesResponse' {isTruncated} -> isTruncated) (\s@ListAttachedUserPoliciesResponse' {} a -> s {isTruncated = a} :: ListAttachedUserPoliciesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listAttachedUserPoliciesResponse_marker :: Lens.Lens' ListAttachedUserPoliciesResponse (Prelude.Maybe Prelude.Text)+listAttachedUserPoliciesResponse_marker = Lens.lens (\ListAttachedUserPoliciesResponse' {marker} -> marker) (\s@ListAttachedUserPoliciesResponse' {} a -> s {marker = a} :: ListAttachedUserPoliciesResponse)++-- | The response's http status code.+listAttachedUserPoliciesResponse_httpStatus :: Lens.Lens' ListAttachedUserPoliciesResponse Prelude.Int+listAttachedUserPoliciesResponse_httpStatus = Lens.lens (\ListAttachedUserPoliciesResponse' {httpStatus} -> httpStatus) (\s@ListAttachedUserPoliciesResponse' {} a -> s {httpStatus = a} :: ListAttachedUserPoliciesResponse)++instance+ Prelude.NFData+ ListAttachedUserPoliciesResponse+ where+ rnf ListAttachedUserPoliciesResponse' {..} =+ Prelude.rnf attachedPolicies+ `Prelude.seq` Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListEntitiesForPolicy.hs view
@@ -0,0 +1,466 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListEntitiesForPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all IAM users, groups, and roles that the specified managed policy+-- is attached to.+--+-- You can use the optional @EntityFilter@ parameter to limit the results+-- to a particular type of entity (users, groups, or roles). For example,+-- to list only the roles that are attached to the specified policy, set+-- @EntityFilter@ to @Role@.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListEntitiesForPolicy+ ( -- * Creating a Request+ ListEntitiesForPolicy (..),+ newListEntitiesForPolicy,++ -- * Request Lenses+ listEntitiesForPolicy_entityFilter,+ listEntitiesForPolicy_marker,+ listEntitiesForPolicy_maxItems,+ listEntitiesForPolicy_pathPrefix,+ listEntitiesForPolicy_policyUsageFilter,+ listEntitiesForPolicy_policyArn,++ -- * Destructuring the Response+ ListEntitiesForPolicyResponse (..),+ newListEntitiesForPolicyResponse,++ -- * Response Lenses+ listEntitiesForPolicyResponse_isTruncated,+ listEntitiesForPolicyResponse_marker,+ listEntitiesForPolicyResponse_policyGroups,+ listEntitiesForPolicyResponse_policyRoles,+ listEntitiesForPolicyResponse_policyUsers,+ listEntitiesForPolicyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListEntitiesForPolicy' smart constructor.+data ListEntitiesForPolicy = ListEntitiesForPolicy'+ { -- | The entity type to use for filtering the results.+ --+ -- For example, when @EntityFilter@ is @Role@, only the roles that are+ -- attached to the specified policy are returned. This parameter is+ -- optional. If it is not included, all attached entities (users, groups,+ -- and roles) are returned. The argument for this parameter must be one of+ -- the valid values listed below.+ entityFilter :: Prelude.Maybe EntityType,+ -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. This parameter is optional.+ -- If it is not included, it defaults to a slash (\/), listing all+ -- entities.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text,+ -- | The policy usage method to use for filtering the results.+ --+ -- To list only permissions policies,+ -- set @PolicyUsageFilter@ to @PermissionsPolicy@. To list only the+ -- policies used to set permissions boundaries, set the value+ -- to @PermissionsBoundary@.+ --+ -- This parameter is optional. If it is not included, all policies are+ -- returned.+ policyUsageFilter :: Prelude.Maybe PolicyUsageType,+ -- | The Amazon Resource Name (ARN) of the IAM policy for which you want the+ -- versions.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEntitiesForPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entityFilter', 'listEntitiesForPolicy_entityFilter' - The entity type to use for filtering the results.+--+-- For example, when @EntityFilter@ is @Role@, only the roles that are+-- attached to the specified policy are returned. This parameter is+-- optional. If it is not included, all attached entities (users, groups,+-- and roles) are returned. The argument for this parameter must be one of+-- the valid values listed below.+--+-- 'marker', 'listEntitiesForPolicy_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listEntitiesForPolicy_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listEntitiesForPolicy_pathPrefix' - The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- entities.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'policyUsageFilter', 'listEntitiesForPolicy_policyUsageFilter' - The policy usage method to use for filtering the results.+--+-- To list only permissions policies,+-- set @PolicyUsageFilter@ to @PermissionsPolicy@. To list only the+-- policies used to set permissions boundaries, set the value+-- to @PermissionsBoundary@.+--+-- This parameter is optional. If it is not included, all policies are+-- returned.+--+-- 'policyArn', 'listEntitiesForPolicy_policyArn' - The Amazon Resource Name (ARN) of the IAM policy for which you want the+-- versions.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newListEntitiesForPolicy ::+ -- | 'policyArn'+ Prelude.Text ->+ ListEntitiesForPolicy+newListEntitiesForPolicy pPolicyArn_ =+ ListEntitiesForPolicy'+ { entityFilter =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing,+ policyUsageFilter = Prelude.Nothing,+ policyArn = pPolicyArn_+ }++-- | The entity type to use for filtering the results.+--+-- For example, when @EntityFilter@ is @Role@, only the roles that are+-- attached to the specified policy are returned. This parameter is+-- optional. If it is not included, all attached entities (users, groups,+-- and roles) are returned. The argument for this parameter must be one of+-- the valid values listed below.+listEntitiesForPolicy_entityFilter :: Lens.Lens' ListEntitiesForPolicy (Prelude.Maybe EntityType)+listEntitiesForPolicy_entityFilter = Lens.lens (\ListEntitiesForPolicy' {entityFilter} -> entityFilter) (\s@ListEntitiesForPolicy' {} a -> s {entityFilter = a} :: ListEntitiesForPolicy)++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listEntitiesForPolicy_marker :: Lens.Lens' ListEntitiesForPolicy (Prelude.Maybe Prelude.Text)+listEntitiesForPolicy_marker = Lens.lens (\ListEntitiesForPolicy' {marker} -> marker) (\s@ListEntitiesForPolicy' {} a -> s {marker = a} :: ListEntitiesForPolicy)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listEntitiesForPolicy_maxItems :: Lens.Lens' ListEntitiesForPolicy (Prelude.Maybe Prelude.Natural)+listEntitiesForPolicy_maxItems = Lens.lens (\ListEntitiesForPolicy' {maxItems} -> maxItems) (\s@ListEntitiesForPolicy' {} a -> s {maxItems = a} :: ListEntitiesForPolicy)++-- | The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- entities.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+listEntitiesForPolicy_pathPrefix :: Lens.Lens' ListEntitiesForPolicy (Prelude.Maybe Prelude.Text)+listEntitiesForPolicy_pathPrefix = Lens.lens (\ListEntitiesForPolicy' {pathPrefix} -> pathPrefix) (\s@ListEntitiesForPolicy' {} a -> s {pathPrefix = a} :: ListEntitiesForPolicy)++-- | The policy usage method to use for filtering the results.+--+-- To list only permissions policies,+-- set @PolicyUsageFilter@ to @PermissionsPolicy@. To list only the+-- policies used to set permissions boundaries, set the value+-- to @PermissionsBoundary@.+--+-- This parameter is optional. If it is not included, all policies are+-- returned.+listEntitiesForPolicy_policyUsageFilter :: Lens.Lens' ListEntitiesForPolicy (Prelude.Maybe PolicyUsageType)+listEntitiesForPolicy_policyUsageFilter = Lens.lens (\ListEntitiesForPolicy' {policyUsageFilter} -> policyUsageFilter) (\s@ListEntitiesForPolicy' {} a -> s {policyUsageFilter = a} :: ListEntitiesForPolicy)++-- | The Amazon Resource Name (ARN) of the IAM policy for which you want the+-- versions.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+listEntitiesForPolicy_policyArn :: Lens.Lens' ListEntitiesForPolicy Prelude.Text+listEntitiesForPolicy_policyArn = Lens.lens (\ListEntitiesForPolicy' {policyArn} -> policyArn) (\s@ListEntitiesForPolicy' {} a -> s {policyArn = a} :: ListEntitiesForPolicy)++instance Core.AWSPager ListEntitiesForPolicy where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listEntitiesForPolicyResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listEntitiesForPolicyResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listEntitiesForPolicy_marker+ Lens..~ rs+ Lens.^? listEntitiesForPolicyResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListEntitiesForPolicy where+ type+ AWSResponse ListEntitiesForPolicy =+ ListEntitiesForPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListEntitiesForPolicyResult"+ ( \s h x ->+ ListEntitiesForPolicyResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "PolicyGroups"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "PolicyRoles"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "PolicyUsers"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListEntitiesForPolicy where+ hashWithSalt _salt ListEntitiesForPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` entityFilter+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix+ `Prelude.hashWithSalt` policyUsageFilter+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData ListEntitiesForPolicy where+ rnf ListEntitiesForPolicy' {..} =+ Prelude.rnf entityFilter+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix+ `Prelude.seq` Prelude.rnf policyUsageFilter+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders ListEntitiesForPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListEntitiesForPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery ListEntitiesForPolicy where+ toQuery ListEntitiesForPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListEntitiesForPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "EntityFilter" Data.=: entityFilter,+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix,+ "PolicyUsageFilter" Data.=: policyUsageFilter,+ "PolicyArn" Data.=: policyArn+ ]++-- | Contains the response to a successful ListEntitiesForPolicy request.+--+-- /See:/ 'newListEntitiesForPolicyResponse' smart constructor.+data ListEntitiesForPolicyResponse = ListEntitiesForPolicyResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | A list of IAM groups that the policy is attached to.+ policyGroups :: Prelude.Maybe [PolicyGroup],+ -- | A list of IAM roles that the policy is attached to.+ policyRoles :: Prelude.Maybe [PolicyRole],+ -- | A list of IAM users that the policy is attached to.+ policyUsers :: Prelude.Maybe [PolicyUser],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListEntitiesForPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listEntitiesForPolicyResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listEntitiesForPolicyResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'policyGroups', 'listEntitiesForPolicyResponse_policyGroups' - A list of IAM groups that the policy is attached to.+--+-- 'policyRoles', 'listEntitiesForPolicyResponse_policyRoles' - A list of IAM roles that the policy is attached to.+--+-- 'policyUsers', 'listEntitiesForPolicyResponse_policyUsers' - A list of IAM users that the policy is attached to.+--+-- 'httpStatus', 'listEntitiesForPolicyResponse_httpStatus' - The response's http status code.+newListEntitiesForPolicyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListEntitiesForPolicyResponse+newListEntitiesForPolicyResponse pHttpStatus_ =+ ListEntitiesForPolicyResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ policyGroups = Prelude.Nothing,+ policyRoles = Prelude.Nothing,+ policyUsers = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listEntitiesForPolicyResponse_isTruncated :: Lens.Lens' ListEntitiesForPolicyResponse (Prelude.Maybe Prelude.Bool)+listEntitiesForPolicyResponse_isTruncated = Lens.lens (\ListEntitiesForPolicyResponse' {isTruncated} -> isTruncated) (\s@ListEntitiesForPolicyResponse' {} a -> s {isTruncated = a} :: ListEntitiesForPolicyResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listEntitiesForPolicyResponse_marker :: Lens.Lens' ListEntitiesForPolicyResponse (Prelude.Maybe Prelude.Text)+listEntitiesForPolicyResponse_marker = Lens.lens (\ListEntitiesForPolicyResponse' {marker} -> marker) (\s@ListEntitiesForPolicyResponse' {} a -> s {marker = a} :: ListEntitiesForPolicyResponse)++-- | A list of IAM groups that the policy is attached to.+listEntitiesForPolicyResponse_policyGroups :: Lens.Lens' ListEntitiesForPolicyResponse (Prelude.Maybe [PolicyGroup])+listEntitiesForPolicyResponse_policyGroups = Lens.lens (\ListEntitiesForPolicyResponse' {policyGroups} -> policyGroups) (\s@ListEntitiesForPolicyResponse' {} a -> s {policyGroups = a} :: ListEntitiesForPolicyResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of IAM roles that the policy is attached to.+listEntitiesForPolicyResponse_policyRoles :: Lens.Lens' ListEntitiesForPolicyResponse (Prelude.Maybe [PolicyRole])+listEntitiesForPolicyResponse_policyRoles = Lens.lens (\ListEntitiesForPolicyResponse' {policyRoles} -> policyRoles) (\s@ListEntitiesForPolicyResponse' {} a -> s {policyRoles = a} :: ListEntitiesForPolicyResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of IAM users that the policy is attached to.+listEntitiesForPolicyResponse_policyUsers :: Lens.Lens' ListEntitiesForPolicyResponse (Prelude.Maybe [PolicyUser])+listEntitiesForPolicyResponse_policyUsers = Lens.lens (\ListEntitiesForPolicyResponse' {policyUsers} -> policyUsers) (\s@ListEntitiesForPolicyResponse' {} a -> s {policyUsers = a} :: ListEntitiesForPolicyResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listEntitiesForPolicyResponse_httpStatus :: Lens.Lens' ListEntitiesForPolicyResponse Prelude.Int+listEntitiesForPolicyResponse_httpStatus = Lens.lens (\ListEntitiesForPolicyResponse' {httpStatus} -> httpStatus) (\s@ListEntitiesForPolicyResponse' {} a -> s {httpStatus = a} :: ListEntitiesForPolicyResponse)++instance Prelude.NFData ListEntitiesForPolicyResponse where+ rnf ListEntitiesForPolicyResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf policyGroups+ `Prelude.seq` Prelude.rnf policyRoles+ `Prelude.seq` Prelude.rnf policyUsers+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListGroupPolicies.hs view
@@ -0,0 +1,339 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListGroupPolicies+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the names of the inline policies that are embedded in the+-- specified IAM group.+--+-- An IAM group can also have managed policies attached to it. To list the+-- managed policies that are attached to a group, use+-- ListAttachedGroupPolicies. For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters. If there are no inline policies embedded with the specified+-- group, the operation returns an empty list.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListGroupPolicies+ ( -- * Creating a Request+ ListGroupPolicies (..),+ newListGroupPolicies,++ -- * Request Lenses+ listGroupPolicies_marker,+ listGroupPolicies_maxItems,+ listGroupPolicies_groupName,++ -- * Destructuring the Response+ ListGroupPoliciesResponse (..),+ newListGroupPoliciesResponse,++ -- * Response Lenses+ listGroupPoliciesResponse_isTruncated,+ listGroupPoliciesResponse_marker,+ listGroupPoliciesResponse_httpStatus,+ listGroupPoliciesResponse_policyNames,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListGroupPolicies' smart constructor.+data ListGroupPolicies = ListGroupPolicies'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the group to list policies for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListGroupPolicies' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listGroupPolicies_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listGroupPolicies_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'groupName', 'listGroupPolicies_groupName' - The name of the group to list policies for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListGroupPolicies ::+ -- | 'groupName'+ Prelude.Text ->+ ListGroupPolicies+newListGroupPolicies pGroupName_ =+ ListGroupPolicies'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ groupName = pGroupName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listGroupPolicies_marker :: Lens.Lens' ListGroupPolicies (Prelude.Maybe Prelude.Text)+listGroupPolicies_marker = Lens.lens (\ListGroupPolicies' {marker} -> marker) (\s@ListGroupPolicies' {} a -> s {marker = a} :: ListGroupPolicies)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listGroupPolicies_maxItems :: Lens.Lens' ListGroupPolicies (Prelude.Maybe Prelude.Natural)+listGroupPolicies_maxItems = Lens.lens (\ListGroupPolicies' {maxItems} -> maxItems) (\s@ListGroupPolicies' {} a -> s {maxItems = a} :: ListGroupPolicies)++-- | The name of the group to list policies for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listGroupPolicies_groupName :: Lens.Lens' ListGroupPolicies Prelude.Text+listGroupPolicies_groupName = Lens.lens (\ListGroupPolicies' {groupName} -> groupName) (\s@ListGroupPolicies' {} a -> s {groupName = a} :: ListGroupPolicies)++instance Core.AWSPager ListGroupPolicies where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listGroupPoliciesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listGroupPoliciesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listGroupPolicies_marker+ Lens..~ rs+ Lens.^? listGroupPoliciesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListGroupPolicies where+ type+ AWSResponse ListGroupPolicies =+ ListGroupPoliciesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListGroupPoliciesResult"+ ( \s h x ->+ ListGroupPoliciesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "PolicyNames"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListGroupPolicies where+ hashWithSalt _salt ListGroupPolicies' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` groupName++instance Prelude.NFData ListGroupPolicies where+ rnf ListGroupPolicies' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf groupName++instance Data.ToHeaders ListGroupPolicies where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListGroupPolicies where+ toPath = Prelude.const "/"++instance Data.ToQuery ListGroupPolicies where+ toQuery ListGroupPolicies' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListGroupPolicies" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "GroupName" Data.=: groupName+ ]++-- | Contains the response to a successful ListGroupPolicies request.+--+-- /See:/ 'newListGroupPoliciesResponse' smart constructor.+data ListGroupPoliciesResponse = ListGroupPoliciesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of policy names.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyNames :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListGroupPoliciesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listGroupPoliciesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listGroupPoliciesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listGroupPoliciesResponse_httpStatus' - The response's http status code.+--+-- 'policyNames', 'listGroupPoliciesResponse_policyNames' - A list of policy names.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListGroupPoliciesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListGroupPoliciesResponse+newListGroupPoliciesResponse pHttpStatus_ =+ ListGroupPoliciesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ policyNames = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listGroupPoliciesResponse_isTruncated :: Lens.Lens' ListGroupPoliciesResponse (Prelude.Maybe Prelude.Bool)+listGroupPoliciesResponse_isTruncated = Lens.lens (\ListGroupPoliciesResponse' {isTruncated} -> isTruncated) (\s@ListGroupPoliciesResponse' {} a -> s {isTruncated = a} :: ListGroupPoliciesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listGroupPoliciesResponse_marker :: Lens.Lens' ListGroupPoliciesResponse (Prelude.Maybe Prelude.Text)+listGroupPoliciesResponse_marker = Lens.lens (\ListGroupPoliciesResponse' {marker} -> marker) (\s@ListGroupPoliciesResponse' {} a -> s {marker = a} :: ListGroupPoliciesResponse)++-- | The response's http status code.+listGroupPoliciesResponse_httpStatus :: Lens.Lens' ListGroupPoliciesResponse Prelude.Int+listGroupPoliciesResponse_httpStatus = Lens.lens (\ListGroupPoliciesResponse' {httpStatus} -> httpStatus) (\s@ListGroupPoliciesResponse' {} a -> s {httpStatus = a} :: ListGroupPoliciesResponse)++-- | A list of policy names.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listGroupPoliciesResponse_policyNames :: Lens.Lens' ListGroupPoliciesResponse [Prelude.Text]+listGroupPoliciesResponse_policyNames = Lens.lens (\ListGroupPoliciesResponse' {policyNames} -> policyNames) (\s@ListGroupPoliciesResponse' {} a -> s {policyNames = a} :: ListGroupPoliciesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListGroupPoliciesResponse where+ rnf ListGroupPoliciesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf policyNames
+ gen/Amazonka/IAM/ListGroups.hs view
@@ -0,0 +1,329 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListGroups+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the IAM groups that have the specified path prefix.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListGroups+ ( -- * Creating a Request+ ListGroups (..),+ newListGroups,++ -- * Request Lenses+ listGroups_marker,+ listGroups_maxItems,+ listGroups_pathPrefix,++ -- * Destructuring the Response+ ListGroupsResponse (..),+ newListGroupsResponse,++ -- * Response Lenses+ listGroupsResponse_isTruncated,+ listGroupsResponse_marker,+ listGroupsResponse_httpStatus,+ listGroupsResponse_groups,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListGroups' smart constructor.+data ListGroups = ListGroups'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. For example, the prefix+ -- @\/division_abc\/subdivision_xyz\/@ gets all groups whose path starts+ -- with @\/division_abc\/subdivision_xyz\/@.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/), listing all groups. This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListGroups' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listGroups_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listGroups_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listGroups_pathPrefix' - The path prefix for filtering the results. For example, the prefix+-- @\/division_abc\/subdivision_xyz\/@ gets all groups whose path starts+-- with @\/division_abc\/subdivision_xyz\/@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all groups. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+newListGroups ::+ ListGroups+newListGroups =+ ListGroups'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listGroups_marker :: Lens.Lens' ListGroups (Prelude.Maybe Prelude.Text)+listGroups_marker = Lens.lens (\ListGroups' {marker} -> marker) (\s@ListGroups' {} a -> s {marker = a} :: ListGroups)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listGroups_maxItems :: Lens.Lens' ListGroups (Prelude.Maybe Prelude.Natural)+listGroups_maxItems = Lens.lens (\ListGroups' {maxItems} -> maxItems) (\s@ListGroups' {} a -> s {maxItems = a} :: ListGroups)++-- | The path prefix for filtering the results. For example, the prefix+-- @\/division_abc\/subdivision_xyz\/@ gets all groups whose path starts+-- with @\/division_abc\/subdivision_xyz\/@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all groups. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+listGroups_pathPrefix :: Lens.Lens' ListGroups (Prelude.Maybe Prelude.Text)+listGroups_pathPrefix = Lens.lens (\ListGroups' {pathPrefix} -> pathPrefix) (\s@ListGroups' {} a -> s {pathPrefix = a} :: ListGroups)++instance Core.AWSPager ListGroups where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listGroupsResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listGroupsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listGroups_marker+ Lens..~ rs+ Lens.^? listGroupsResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListGroups where+ type AWSResponse ListGroups = ListGroupsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListGroupsResult"+ ( \s h x ->+ ListGroupsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Groups"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListGroups where+ hashWithSalt _salt ListGroups' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix++instance Prelude.NFData ListGroups where+ rnf ListGroups' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix++instance Data.ToHeaders ListGroups where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListGroups where+ toPath = Prelude.const "/"++instance Data.ToQuery ListGroups where+ toQuery ListGroups' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListGroups" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix+ ]++-- | Contains the response to a successful ListGroups request.+--+-- /See:/ 'newListGroupsResponse' smart constructor.+data ListGroupsResponse = ListGroupsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of groups.+ groups :: [Group]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListGroupsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listGroupsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listGroupsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listGroupsResponse_httpStatus' - The response's http status code.+--+-- 'groups', 'listGroupsResponse_groups' - A list of groups.+newListGroupsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListGroupsResponse+newListGroupsResponse pHttpStatus_ =+ ListGroupsResponse'+ { isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ groups = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listGroupsResponse_isTruncated :: Lens.Lens' ListGroupsResponse (Prelude.Maybe Prelude.Bool)+listGroupsResponse_isTruncated = Lens.lens (\ListGroupsResponse' {isTruncated} -> isTruncated) (\s@ListGroupsResponse' {} a -> s {isTruncated = a} :: ListGroupsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listGroupsResponse_marker :: Lens.Lens' ListGroupsResponse (Prelude.Maybe Prelude.Text)+listGroupsResponse_marker = Lens.lens (\ListGroupsResponse' {marker} -> marker) (\s@ListGroupsResponse' {} a -> s {marker = a} :: ListGroupsResponse)++-- | The response's http status code.+listGroupsResponse_httpStatus :: Lens.Lens' ListGroupsResponse Prelude.Int+listGroupsResponse_httpStatus = Lens.lens (\ListGroupsResponse' {httpStatus} -> httpStatus) (\s@ListGroupsResponse' {} a -> s {httpStatus = a} :: ListGroupsResponse)++-- | A list of groups.+listGroupsResponse_groups :: Lens.Lens' ListGroupsResponse [Group]+listGroupsResponse_groups = Lens.lens (\ListGroupsResponse' {groups} -> groups) (\s@ListGroupsResponse' {} a -> s {groups = a} :: ListGroupsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListGroupsResponse where+ rnf ListGroupsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf groups
+ gen/Amazonka/IAM/ListGroupsForUser.hs view
@@ -0,0 +1,316 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListGroupsForUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the IAM groups that the specified IAM user belongs to.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListGroupsForUser+ ( -- * Creating a Request+ ListGroupsForUser (..),+ newListGroupsForUser,++ -- * Request Lenses+ listGroupsForUser_marker,+ listGroupsForUser_maxItems,+ listGroupsForUser_userName,++ -- * Destructuring the Response+ ListGroupsForUserResponse (..),+ newListGroupsForUserResponse,++ -- * Response Lenses+ listGroupsForUserResponse_isTruncated,+ listGroupsForUserResponse_marker,+ listGroupsForUserResponse_httpStatus,+ listGroupsForUserResponse_groups,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListGroupsForUser' smart constructor.+data ListGroupsForUser = ListGroupsForUser'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the user to list groups for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListGroupsForUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listGroupsForUser_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listGroupsForUser_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'userName', 'listGroupsForUser_userName' - The name of the user to list groups for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListGroupsForUser ::+ -- | 'userName'+ Prelude.Text ->+ ListGroupsForUser+newListGroupsForUser pUserName_ =+ ListGroupsForUser'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ userName = pUserName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listGroupsForUser_marker :: Lens.Lens' ListGroupsForUser (Prelude.Maybe Prelude.Text)+listGroupsForUser_marker = Lens.lens (\ListGroupsForUser' {marker} -> marker) (\s@ListGroupsForUser' {} a -> s {marker = a} :: ListGroupsForUser)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listGroupsForUser_maxItems :: Lens.Lens' ListGroupsForUser (Prelude.Maybe Prelude.Natural)+listGroupsForUser_maxItems = Lens.lens (\ListGroupsForUser' {maxItems} -> maxItems) (\s@ListGroupsForUser' {} a -> s {maxItems = a} :: ListGroupsForUser)++-- | The name of the user to list groups for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listGroupsForUser_userName :: Lens.Lens' ListGroupsForUser Prelude.Text+listGroupsForUser_userName = Lens.lens (\ListGroupsForUser' {userName} -> userName) (\s@ListGroupsForUser' {} a -> s {userName = a} :: ListGroupsForUser)++instance Core.AWSPager ListGroupsForUser where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listGroupsForUserResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listGroupsForUserResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listGroupsForUser_marker+ Lens..~ rs+ Lens.^? listGroupsForUserResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListGroupsForUser where+ type+ AWSResponse ListGroupsForUser =+ ListGroupsForUserResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListGroupsForUserResult"+ ( \s h x ->+ ListGroupsForUserResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Groups"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListGroupsForUser where+ hashWithSalt _salt ListGroupsForUser' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` userName++instance Prelude.NFData ListGroupsForUser where+ rnf ListGroupsForUser' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders ListGroupsForUser where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListGroupsForUser where+ toPath = Prelude.const "/"++instance Data.ToQuery ListGroupsForUser where+ toQuery ListGroupsForUser' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListGroupsForUser" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful ListGroupsForUser request.+--+-- /See:/ 'newListGroupsForUserResponse' smart constructor.+data ListGroupsForUserResponse = ListGroupsForUserResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of groups.+ groups :: [Group]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListGroupsForUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listGroupsForUserResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listGroupsForUserResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listGroupsForUserResponse_httpStatus' - The response's http status code.+--+-- 'groups', 'listGroupsForUserResponse_groups' - A list of groups.+newListGroupsForUserResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListGroupsForUserResponse+newListGroupsForUserResponse pHttpStatus_ =+ ListGroupsForUserResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ groups = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listGroupsForUserResponse_isTruncated :: Lens.Lens' ListGroupsForUserResponse (Prelude.Maybe Prelude.Bool)+listGroupsForUserResponse_isTruncated = Lens.lens (\ListGroupsForUserResponse' {isTruncated} -> isTruncated) (\s@ListGroupsForUserResponse' {} a -> s {isTruncated = a} :: ListGroupsForUserResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listGroupsForUserResponse_marker :: Lens.Lens' ListGroupsForUserResponse (Prelude.Maybe Prelude.Text)+listGroupsForUserResponse_marker = Lens.lens (\ListGroupsForUserResponse' {marker} -> marker) (\s@ListGroupsForUserResponse' {} a -> s {marker = a} :: ListGroupsForUserResponse)++-- | The response's http status code.+listGroupsForUserResponse_httpStatus :: Lens.Lens' ListGroupsForUserResponse Prelude.Int+listGroupsForUserResponse_httpStatus = Lens.lens (\ListGroupsForUserResponse' {httpStatus} -> httpStatus) (\s@ListGroupsForUserResponse' {} a -> s {httpStatus = a} :: ListGroupsForUserResponse)++-- | A list of groups.+listGroupsForUserResponse_groups :: Lens.Lens' ListGroupsForUserResponse [Group]+listGroupsForUserResponse_groups = Lens.lens (\ListGroupsForUserResponse' {groups} -> groups) (\s@ListGroupsForUserResponse' {} a -> s {groups = a} :: ListGroupsForUserResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListGroupsForUserResponse where+ rnf ListGroupsForUserResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf groups
+ gen/Amazonka/IAM/ListInstanceProfileTags.hs view
@@ -0,0 +1,303 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListInstanceProfileTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified IAM instance profile.+-- The returned list of tags is sorted by tag key. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.ListInstanceProfileTags+ ( -- * Creating a Request+ ListInstanceProfileTags (..),+ newListInstanceProfileTags,++ -- * Request Lenses+ listInstanceProfileTags_marker,+ listInstanceProfileTags_maxItems,+ listInstanceProfileTags_instanceProfileName,++ -- * Destructuring the Response+ ListInstanceProfileTagsResponse (..),+ newListInstanceProfileTagsResponse,++ -- * Response Lenses+ listInstanceProfileTagsResponse_isTruncated,+ listInstanceProfileTagsResponse_marker,+ listInstanceProfileTagsResponse_httpStatus,+ listInstanceProfileTagsResponse_tags,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListInstanceProfileTags' smart constructor.+data ListInstanceProfileTags = ListInstanceProfileTags'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the IAM instance profile whose tags you want to see.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ instanceProfileName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstanceProfileTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listInstanceProfileTags_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listInstanceProfileTags_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'instanceProfileName', 'listInstanceProfileTags_instanceProfileName' - The name of the IAM instance profile whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListInstanceProfileTags ::+ -- | 'instanceProfileName'+ Prelude.Text ->+ ListInstanceProfileTags+newListInstanceProfileTags pInstanceProfileName_ =+ ListInstanceProfileTags'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ instanceProfileName = pInstanceProfileName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listInstanceProfileTags_marker :: Lens.Lens' ListInstanceProfileTags (Prelude.Maybe Prelude.Text)+listInstanceProfileTags_marker = Lens.lens (\ListInstanceProfileTags' {marker} -> marker) (\s@ListInstanceProfileTags' {} a -> s {marker = a} :: ListInstanceProfileTags)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listInstanceProfileTags_maxItems :: Lens.Lens' ListInstanceProfileTags (Prelude.Maybe Prelude.Natural)+listInstanceProfileTags_maxItems = Lens.lens (\ListInstanceProfileTags' {maxItems} -> maxItems) (\s@ListInstanceProfileTags' {} a -> s {maxItems = a} :: ListInstanceProfileTags)++-- | The name of the IAM instance profile whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listInstanceProfileTags_instanceProfileName :: Lens.Lens' ListInstanceProfileTags Prelude.Text+listInstanceProfileTags_instanceProfileName = Lens.lens (\ListInstanceProfileTags' {instanceProfileName} -> instanceProfileName) (\s@ListInstanceProfileTags' {} a -> s {instanceProfileName = a} :: ListInstanceProfileTags)++instance Core.AWSRequest ListInstanceProfileTags where+ type+ AWSResponse ListInstanceProfileTags =+ ListInstanceProfileTagsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListInstanceProfileTagsResult"+ ( \s h x ->+ ListInstanceProfileTagsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListInstanceProfileTags where+ hashWithSalt _salt ListInstanceProfileTags' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` instanceProfileName++instance Prelude.NFData ListInstanceProfileTags where+ rnf ListInstanceProfileTags' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf instanceProfileName++instance Data.ToHeaders ListInstanceProfileTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListInstanceProfileTags where+ toPath = Prelude.const "/"++instance Data.ToQuery ListInstanceProfileTags where+ toQuery ListInstanceProfileTags' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListInstanceProfileTags" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "InstanceProfileName" Data.=: instanceProfileName+ ]++-- | /See:/ 'newListInstanceProfileTagsResponse' smart constructor.+data ListInstanceProfileTagsResponse = ListInstanceProfileTagsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of tags that are currently attached to the IAM instance+ -- profile. Each tag consists of a key name and an associated value. If no+ -- tags are attached to the specified resource, the response contains an+ -- empty list.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstanceProfileTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listInstanceProfileTagsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listInstanceProfileTagsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listInstanceProfileTagsResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listInstanceProfileTagsResponse_tags' - The list of tags that are currently attached to the IAM instance+-- profile. Each tag consists of a key name and an associated value. If no+-- tags are attached to the specified resource, the response contains an+-- empty list.+newListInstanceProfileTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListInstanceProfileTagsResponse+newListInstanceProfileTagsResponse pHttpStatus_ =+ ListInstanceProfileTagsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ tags = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listInstanceProfileTagsResponse_isTruncated :: Lens.Lens' ListInstanceProfileTagsResponse (Prelude.Maybe Prelude.Bool)+listInstanceProfileTagsResponse_isTruncated = Lens.lens (\ListInstanceProfileTagsResponse' {isTruncated} -> isTruncated) (\s@ListInstanceProfileTagsResponse' {} a -> s {isTruncated = a} :: ListInstanceProfileTagsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listInstanceProfileTagsResponse_marker :: Lens.Lens' ListInstanceProfileTagsResponse (Prelude.Maybe Prelude.Text)+listInstanceProfileTagsResponse_marker = Lens.lens (\ListInstanceProfileTagsResponse' {marker} -> marker) (\s@ListInstanceProfileTagsResponse' {} a -> s {marker = a} :: ListInstanceProfileTagsResponse)++-- | The response's http status code.+listInstanceProfileTagsResponse_httpStatus :: Lens.Lens' ListInstanceProfileTagsResponse Prelude.Int+listInstanceProfileTagsResponse_httpStatus = Lens.lens (\ListInstanceProfileTagsResponse' {httpStatus} -> httpStatus) (\s@ListInstanceProfileTagsResponse' {} a -> s {httpStatus = a} :: ListInstanceProfileTagsResponse)++-- | The list of tags that are currently attached to the IAM instance+-- profile. Each tag consists of a key name and an associated value. If no+-- tags are attached to the specified resource, the response contains an+-- empty list.+listInstanceProfileTagsResponse_tags :: Lens.Lens' ListInstanceProfileTagsResponse [Tag]+listInstanceProfileTagsResponse_tags = Lens.lens (\ListInstanceProfileTagsResponse' {tags} -> tags) (\s@ListInstanceProfileTagsResponse' {} a -> s {tags = a} :: ListInstanceProfileTagsResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ ListInstanceProfileTagsResponse+ where+ rnf ListInstanceProfileTagsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/ListInstanceProfiles.hs view
@@ -0,0 +1,340 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListInstanceProfiles+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the instance profiles that have the specified path prefix. If+-- there are none, the operation returns an empty list. For more+-- information about instance profiles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About instance profiles>.+--+-- IAM resource-listing operations return a subset of the available+-- attributes for the resource. For example, this operation does not return+-- tags, even though they are an attribute of the returned object. To view+-- all of the information for an instance profile, see GetInstanceProfile.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListInstanceProfiles+ ( -- * Creating a Request+ ListInstanceProfiles (..),+ newListInstanceProfiles,++ -- * Request Lenses+ listInstanceProfiles_marker,+ listInstanceProfiles_maxItems,+ listInstanceProfiles_pathPrefix,++ -- * Destructuring the Response+ ListInstanceProfilesResponse (..),+ newListInstanceProfilesResponse,++ -- * Response Lenses+ listInstanceProfilesResponse_isTruncated,+ listInstanceProfilesResponse_marker,+ listInstanceProfilesResponse_httpStatus,+ listInstanceProfilesResponse_instanceProfiles,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListInstanceProfiles' smart constructor.+data ListInstanceProfiles = ListInstanceProfiles'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. For example, the prefix+ -- @\/application_abc\/component_xyz\/@ gets all instance profiles whose+ -- path starts with @\/application_abc\/component_xyz\/@.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/), listing all instance profiles. This parameter allows+ -- (through its <http://wikipedia.org/wiki/regex regex pattern>) a string+ -- of characters consisting of either a forward slash (\/) by itself or a+ -- string that must begin and end with forward slashes. In addition, it can+ -- contain any ASCII character from the ! (@\\u0021@) through the DEL+ -- character (@\\u007F@), including most punctuation characters, digits,+ -- and upper and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstanceProfiles' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listInstanceProfiles_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listInstanceProfiles_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listInstanceProfiles_pathPrefix' - The path prefix for filtering the results. For example, the prefix+-- @\/application_abc\/component_xyz\/@ gets all instance profiles whose+-- path starts with @\/application_abc\/component_xyz\/@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all instance profiles. This parameter allows+-- (through its <http://wikipedia.org/wiki/regex regex pattern>) a string+-- of characters consisting of either a forward slash (\/) by itself or a+-- string that must begin and end with forward slashes. In addition, it can+-- contain any ASCII character from the ! (@\\u0021@) through the DEL+-- character (@\\u007F@), including most punctuation characters, digits,+-- and upper and lowercased letters.+newListInstanceProfiles ::+ ListInstanceProfiles+newListInstanceProfiles =+ ListInstanceProfiles'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listInstanceProfiles_marker :: Lens.Lens' ListInstanceProfiles (Prelude.Maybe Prelude.Text)+listInstanceProfiles_marker = Lens.lens (\ListInstanceProfiles' {marker} -> marker) (\s@ListInstanceProfiles' {} a -> s {marker = a} :: ListInstanceProfiles)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listInstanceProfiles_maxItems :: Lens.Lens' ListInstanceProfiles (Prelude.Maybe Prelude.Natural)+listInstanceProfiles_maxItems = Lens.lens (\ListInstanceProfiles' {maxItems} -> maxItems) (\s@ListInstanceProfiles' {} a -> s {maxItems = a} :: ListInstanceProfiles)++-- | The path prefix for filtering the results. For example, the prefix+-- @\/application_abc\/component_xyz\/@ gets all instance profiles whose+-- path starts with @\/application_abc\/component_xyz\/@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all instance profiles. This parameter allows+-- (through its <http://wikipedia.org/wiki/regex regex pattern>) a string+-- of characters consisting of either a forward slash (\/) by itself or a+-- string that must begin and end with forward slashes. In addition, it can+-- contain any ASCII character from the ! (@\\u0021@) through the DEL+-- character (@\\u007F@), including most punctuation characters, digits,+-- and upper and lowercased letters.+listInstanceProfiles_pathPrefix :: Lens.Lens' ListInstanceProfiles (Prelude.Maybe Prelude.Text)+listInstanceProfiles_pathPrefix = Lens.lens (\ListInstanceProfiles' {pathPrefix} -> pathPrefix) (\s@ListInstanceProfiles' {} a -> s {pathPrefix = a} :: ListInstanceProfiles)++instance Core.AWSPager ListInstanceProfiles where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listInstanceProfilesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listInstanceProfilesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listInstanceProfiles_marker+ Lens..~ rs+ Lens.^? listInstanceProfilesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListInstanceProfiles where+ type+ AWSResponse ListInstanceProfiles =+ ListInstanceProfilesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListInstanceProfilesResult"+ ( \s h x ->+ ListInstanceProfilesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "InstanceProfiles"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListInstanceProfiles where+ hashWithSalt _salt ListInstanceProfiles' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix++instance Prelude.NFData ListInstanceProfiles where+ rnf ListInstanceProfiles' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix++instance Data.ToHeaders ListInstanceProfiles where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListInstanceProfiles where+ toPath = Prelude.const "/"++instance Data.ToQuery ListInstanceProfiles where+ toQuery ListInstanceProfiles' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListInstanceProfiles" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix+ ]++-- | Contains the response to a successful ListInstanceProfiles request.+--+-- /See:/ 'newListInstanceProfilesResponse' smart constructor.+data ListInstanceProfilesResponse = ListInstanceProfilesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of instance profiles.+ instanceProfiles :: [InstanceProfile]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstanceProfilesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listInstanceProfilesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listInstanceProfilesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listInstanceProfilesResponse_httpStatus' - The response's http status code.+--+-- 'instanceProfiles', 'listInstanceProfilesResponse_instanceProfiles' - A list of instance profiles.+newListInstanceProfilesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListInstanceProfilesResponse+newListInstanceProfilesResponse pHttpStatus_ =+ ListInstanceProfilesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ instanceProfiles = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listInstanceProfilesResponse_isTruncated :: Lens.Lens' ListInstanceProfilesResponse (Prelude.Maybe Prelude.Bool)+listInstanceProfilesResponse_isTruncated = Lens.lens (\ListInstanceProfilesResponse' {isTruncated} -> isTruncated) (\s@ListInstanceProfilesResponse' {} a -> s {isTruncated = a} :: ListInstanceProfilesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listInstanceProfilesResponse_marker :: Lens.Lens' ListInstanceProfilesResponse (Prelude.Maybe Prelude.Text)+listInstanceProfilesResponse_marker = Lens.lens (\ListInstanceProfilesResponse' {marker} -> marker) (\s@ListInstanceProfilesResponse' {} a -> s {marker = a} :: ListInstanceProfilesResponse)++-- | The response's http status code.+listInstanceProfilesResponse_httpStatus :: Lens.Lens' ListInstanceProfilesResponse Prelude.Int+listInstanceProfilesResponse_httpStatus = Lens.lens (\ListInstanceProfilesResponse' {httpStatus} -> httpStatus) (\s@ListInstanceProfilesResponse' {} a -> s {httpStatus = a} :: ListInstanceProfilesResponse)++-- | A list of instance profiles.+listInstanceProfilesResponse_instanceProfiles :: Lens.Lens' ListInstanceProfilesResponse [InstanceProfile]+listInstanceProfilesResponse_instanceProfiles = Lens.lens (\ListInstanceProfilesResponse' {instanceProfiles} -> instanceProfiles) (\s@ListInstanceProfilesResponse' {} a -> s {instanceProfiles = a} :: ListInstanceProfilesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListInstanceProfilesResponse where+ rnf ListInstanceProfilesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf instanceProfiles
+ gen/Amazonka/IAM/ListInstanceProfilesForRole.hs view
@@ -0,0 +1,326 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListInstanceProfilesForRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the instance profiles that have the specified associated IAM role.+-- If there are none, the operation returns an empty list. For more+-- information about instance profiles, go to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About instance profiles>.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListInstanceProfilesForRole+ ( -- * Creating a Request+ ListInstanceProfilesForRole (..),+ newListInstanceProfilesForRole,++ -- * Request Lenses+ listInstanceProfilesForRole_marker,+ listInstanceProfilesForRole_maxItems,+ listInstanceProfilesForRole_roleName,++ -- * Destructuring the Response+ ListInstanceProfilesForRoleResponse (..),+ newListInstanceProfilesForRoleResponse,++ -- * Response Lenses+ listInstanceProfilesForRoleResponse_isTruncated,+ listInstanceProfilesForRoleResponse_marker,+ listInstanceProfilesForRoleResponse_httpStatus,+ listInstanceProfilesForRoleResponse_instanceProfiles,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListInstanceProfilesForRole' smart constructor.+data ListInstanceProfilesForRole = ListInstanceProfilesForRole'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the role to list instance profiles for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstanceProfilesForRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listInstanceProfilesForRole_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listInstanceProfilesForRole_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'roleName', 'listInstanceProfilesForRole_roleName' - The name of the role to list instance profiles for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListInstanceProfilesForRole ::+ -- | 'roleName'+ Prelude.Text ->+ ListInstanceProfilesForRole+newListInstanceProfilesForRole pRoleName_ =+ ListInstanceProfilesForRole'+ { marker =+ Prelude.Nothing,+ maxItems = Prelude.Nothing,+ roleName = pRoleName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listInstanceProfilesForRole_marker :: Lens.Lens' ListInstanceProfilesForRole (Prelude.Maybe Prelude.Text)+listInstanceProfilesForRole_marker = Lens.lens (\ListInstanceProfilesForRole' {marker} -> marker) (\s@ListInstanceProfilesForRole' {} a -> s {marker = a} :: ListInstanceProfilesForRole)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listInstanceProfilesForRole_maxItems :: Lens.Lens' ListInstanceProfilesForRole (Prelude.Maybe Prelude.Natural)+listInstanceProfilesForRole_maxItems = Lens.lens (\ListInstanceProfilesForRole' {maxItems} -> maxItems) (\s@ListInstanceProfilesForRole' {} a -> s {maxItems = a} :: ListInstanceProfilesForRole)++-- | The name of the role to list instance profiles for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listInstanceProfilesForRole_roleName :: Lens.Lens' ListInstanceProfilesForRole Prelude.Text+listInstanceProfilesForRole_roleName = Lens.lens (\ListInstanceProfilesForRole' {roleName} -> roleName) (\s@ListInstanceProfilesForRole' {} a -> s {roleName = a} :: ListInstanceProfilesForRole)++instance Core.AWSPager ListInstanceProfilesForRole where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listInstanceProfilesForRoleResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listInstanceProfilesForRoleResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listInstanceProfilesForRole_marker+ Lens..~ rs+ Lens.^? listInstanceProfilesForRoleResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListInstanceProfilesForRole where+ type+ AWSResponse ListInstanceProfilesForRole =+ ListInstanceProfilesForRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListInstanceProfilesForRoleResult"+ ( \s h x ->+ ListInstanceProfilesForRoleResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "InstanceProfiles"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListInstanceProfilesForRole where+ hashWithSalt _salt ListInstanceProfilesForRole' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` roleName++instance Prelude.NFData ListInstanceProfilesForRole where+ rnf ListInstanceProfilesForRole' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf roleName++instance Data.ToHeaders ListInstanceProfilesForRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListInstanceProfilesForRole where+ toPath = Prelude.const "/"++instance Data.ToQuery ListInstanceProfilesForRole where+ toQuery ListInstanceProfilesForRole' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ListInstanceProfilesForRole" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "RoleName" Data.=: roleName+ ]++-- | Contains the response to a successful ListInstanceProfilesForRole+-- request.+--+-- /See:/ 'newListInstanceProfilesForRoleResponse' smart constructor.+data ListInstanceProfilesForRoleResponse = ListInstanceProfilesForRoleResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of instance profiles.+ instanceProfiles :: [InstanceProfile]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstanceProfilesForRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listInstanceProfilesForRoleResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listInstanceProfilesForRoleResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listInstanceProfilesForRoleResponse_httpStatus' - The response's http status code.+--+-- 'instanceProfiles', 'listInstanceProfilesForRoleResponse_instanceProfiles' - A list of instance profiles.+newListInstanceProfilesForRoleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListInstanceProfilesForRoleResponse+newListInstanceProfilesForRoleResponse pHttpStatus_ =+ ListInstanceProfilesForRoleResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ instanceProfiles = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listInstanceProfilesForRoleResponse_isTruncated :: Lens.Lens' ListInstanceProfilesForRoleResponse (Prelude.Maybe Prelude.Bool)+listInstanceProfilesForRoleResponse_isTruncated = Lens.lens (\ListInstanceProfilesForRoleResponse' {isTruncated} -> isTruncated) (\s@ListInstanceProfilesForRoleResponse' {} a -> s {isTruncated = a} :: ListInstanceProfilesForRoleResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listInstanceProfilesForRoleResponse_marker :: Lens.Lens' ListInstanceProfilesForRoleResponse (Prelude.Maybe Prelude.Text)+listInstanceProfilesForRoleResponse_marker = Lens.lens (\ListInstanceProfilesForRoleResponse' {marker} -> marker) (\s@ListInstanceProfilesForRoleResponse' {} a -> s {marker = a} :: ListInstanceProfilesForRoleResponse)++-- | The response's http status code.+listInstanceProfilesForRoleResponse_httpStatus :: Lens.Lens' ListInstanceProfilesForRoleResponse Prelude.Int+listInstanceProfilesForRoleResponse_httpStatus = Lens.lens (\ListInstanceProfilesForRoleResponse' {httpStatus} -> httpStatus) (\s@ListInstanceProfilesForRoleResponse' {} a -> s {httpStatus = a} :: ListInstanceProfilesForRoleResponse)++-- | A list of instance profiles.+listInstanceProfilesForRoleResponse_instanceProfiles :: Lens.Lens' ListInstanceProfilesForRoleResponse [InstanceProfile]+listInstanceProfilesForRoleResponse_instanceProfiles = Lens.lens (\ListInstanceProfilesForRoleResponse' {instanceProfiles} -> instanceProfiles) (\s@ListInstanceProfilesForRoleResponse' {} a -> s {instanceProfiles = a} :: ListInstanceProfilesForRoleResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ ListInstanceProfilesForRoleResponse+ where+ rnf ListInstanceProfilesForRoleResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf instanceProfiles
+ gen/Amazonka/IAM/ListMFADeviceTags.hs view
@@ -0,0 +1,303 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListMFADeviceTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified IAM virtual+-- multi-factor authentication (MFA) device. The returned list of tags is+-- sorted by tag key. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.ListMFADeviceTags+ ( -- * Creating a Request+ ListMFADeviceTags (..),+ newListMFADeviceTags,++ -- * Request Lenses+ listMFADeviceTags_marker,+ listMFADeviceTags_maxItems,+ listMFADeviceTags_serialNumber,++ -- * Destructuring the Response+ ListMFADeviceTagsResponse (..),+ newListMFADeviceTagsResponse,++ -- * Response Lenses+ listMFADeviceTagsResponse_isTruncated,+ listMFADeviceTagsResponse_marker,+ listMFADeviceTagsResponse_httpStatus,+ listMFADeviceTagsResponse_tags,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListMFADeviceTags' smart constructor.+data ListMFADeviceTags = ListMFADeviceTags'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The unique identifier for the IAM virtual MFA device whose tags you want+ -- to see. For virtual MFA devices, the serial number is the same as the+ -- ARN.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serialNumber :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListMFADeviceTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listMFADeviceTags_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listMFADeviceTags_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'serialNumber', 'listMFADeviceTags_serialNumber' - The unique identifier for the IAM virtual MFA device whose tags you want+-- to see. For virtual MFA devices, the serial number is the same as the+-- ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListMFADeviceTags ::+ -- | 'serialNumber'+ Prelude.Text ->+ ListMFADeviceTags+newListMFADeviceTags pSerialNumber_ =+ ListMFADeviceTags'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ serialNumber = pSerialNumber_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listMFADeviceTags_marker :: Lens.Lens' ListMFADeviceTags (Prelude.Maybe Prelude.Text)+listMFADeviceTags_marker = Lens.lens (\ListMFADeviceTags' {marker} -> marker) (\s@ListMFADeviceTags' {} a -> s {marker = a} :: ListMFADeviceTags)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listMFADeviceTags_maxItems :: Lens.Lens' ListMFADeviceTags (Prelude.Maybe Prelude.Natural)+listMFADeviceTags_maxItems = Lens.lens (\ListMFADeviceTags' {maxItems} -> maxItems) (\s@ListMFADeviceTags' {} a -> s {maxItems = a} :: ListMFADeviceTags)++-- | The unique identifier for the IAM virtual MFA device whose tags you want+-- to see. For virtual MFA devices, the serial number is the same as the+-- ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listMFADeviceTags_serialNumber :: Lens.Lens' ListMFADeviceTags Prelude.Text+listMFADeviceTags_serialNumber = Lens.lens (\ListMFADeviceTags' {serialNumber} -> serialNumber) (\s@ListMFADeviceTags' {} a -> s {serialNumber = a} :: ListMFADeviceTags)++instance Core.AWSRequest ListMFADeviceTags where+ type+ AWSResponse ListMFADeviceTags =+ ListMFADeviceTagsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListMFADeviceTagsResult"+ ( \s h x ->+ ListMFADeviceTagsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListMFADeviceTags where+ hashWithSalt _salt ListMFADeviceTags' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` serialNumber++instance Prelude.NFData ListMFADeviceTags where+ rnf ListMFADeviceTags' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf serialNumber++instance Data.ToHeaders ListMFADeviceTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListMFADeviceTags where+ toPath = Prelude.const "/"++instance Data.ToQuery ListMFADeviceTags where+ toQuery ListMFADeviceTags' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListMFADeviceTags" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "SerialNumber" Data.=: serialNumber+ ]++-- | /See:/ 'newListMFADeviceTagsResponse' smart constructor.+data ListMFADeviceTagsResponse = ListMFADeviceTagsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of tags that are currently attached to the virtual MFA device.+ -- Each tag consists of a key name and an associated value. If no tags are+ -- attached to the specified resource, the response contains an empty list.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListMFADeviceTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listMFADeviceTagsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listMFADeviceTagsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listMFADeviceTagsResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listMFADeviceTagsResponse_tags' - The list of tags that are currently attached to the virtual MFA device.+-- Each tag consists of a key name and an associated value. If no tags are+-- attached to the specified resource, the response contains an empty list.+newListMFADeviceTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListMFADeviceTagsResponse+newListMFADeviceTagsResponse pHttpStatus_ =+ ListMFADeviceTagsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ tags = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listMFADeviceTagsResponse_isTruncated :: Lens.Lens' ListMFADeviceTagsResponse (Prelude.Maybe Prelude.Bool)+listMFADeviceTagsResponse_isTruncated = Lens.lens (\ListMFADeviceTagsResponse' {isTruncated} -> isTruncated) (\s@ListMFADeviceTagsResponse' {} a -> s {isTruncated = a} :: ListMFADeviceTagsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listMFADeviceTagsResponse_marker :: Lens.Lens' ListMFADeviceTagsResponse (Prelude.Maybe Prelude.Text)+listMFADeviceTagsResponse_marker = Lens.lens (\ListMFADeviceTagsResponse' {marker} -> marker) (\s@ListMFADeviceTagsResponse' {} a -> s {marker = a} :: ListMFADeviceTagsResponse)++-- | The response's http status code.+listMFADeviceTagsResponse_httpStatus :: Lens.Lens' ListMFADeviceTagsResponse Prelude.Int+listMFADeviceTagsResponse_httpStatus = Lens.lens (\ListMFADeviceTagsResponse' {httpStatus} -> httpStatus) (\s@ListMFADeviceTagsResponse' {} a -> s {httpStatus = a} :: ListMFADeviceTagsResponse)++-- | The list of tags that are currently attached to the virtual MFA device.+-- Each tag consists of a key name and an associated value. If no tags are+-- attached to the specified resource, the response contains an empty list.+listMFADeviceTagsResponse_tags :: Lens.Lens' ListMFADeviceTagsResponse [Tag]+listMFADeviceTagsResponse_tags = Lens.lens (\ListMFADeviceTagsResponse' {tags} -> tags) (\s@ListMFADeviceTagsResponse' {} a -> s {tags = a} :: ListMFADeviceTagsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListMFADeviceTagsResponse where+ rnf ListMFADeviceTagsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/ListMFADevices.hs view
@@ -0,0 +1,318 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListMFADevices+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the MFA devices for an IAM user. If the request includes a IAM+-- user name, then this operation lists all the MFA devices associated with+-- the specified user. If you do not specify a user name, IAM determines+-- the user name implicitly based on the Amazon Web Services access key ID+-- signing the request for this operation.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListMFADevices+ ( -- * Creating a Request+ ListMFADevices (..),+ newListMFADevices,++ -- * Request Lenses+ listMFADevices_marker,+ listMFADevices_maxItems,+ listMFADevices_userName,++ -- * Destructuring the Response+ ListMFADevicesResponse (..),+ newListMFADevicesResponse,++ -- * Response Lenses+ listMFADevicesResponse_isTruncated,+ listMFADevicesResponse_marker,+ listMFADevicesResponse_httpStatus,+ listMFADevicesResponse_mfaDevices,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListMFADevices' smart constructor.+data ListMFADevices = ListMFADevices'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the user whose MFA devices you want to list.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListMFADevices' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listMFADevices_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listMFADevices_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'userName', 'listMFADevices_userName' - The name of the user whose MFA devices you want to list.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListMFADevices ::+ ListMFADevices+newListMFADevices =+ ListMFADevices'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ userName = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listMFADevices_marker :: Lens.Lens' ListMFADevices (Prelude.Maybe Prelude.Text)+listMFADevices_marker = Lens.lens (\ListMFADevices' {marker} -> marker) (\s@ListMFADevices' {} a -> s {marker = a} :: ListMFADevices)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listMFADevices_maxItems :: Lens.Lens' ListMFADevices (Prelude.Maybe Prelude.Natural)+listMFADevices_maxItems = Lens.lens (\ListMFADevices' {maxItems} -> maxItems) (\s@ListMFADevices' {} a -> s {maxItems = a} :: ListMFADevices)++-- | The name of the user whose MFA devices you want to list.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listMFADevices_userName :: Lens.Lens' ListMFADevices (Prelude.Maybe Prelude.Text)+listMFADevices_userName = Lens.lens (\ListMFADevices' {userName} -> userName) (\s@ListMFADevices' {} a -> s {userName = a} :: ListMFADevices)++instance Core.AWSPager ListMFADevices where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listMFADevicesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listMFADevicesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listMFADevices_marker+ Lens..~ rs+ Lens.^? listMFADevicesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListMFADevices where+ type+ AWSResponse ListMFADevices =+ ListMFADevicesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListMFADevicesResult"+ ( \s h x ->+ ListMFADevicesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "MFADevices"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListMFADevices where+ hashWithSalt _salt ListMFADevices' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` userName++instance Prelude.NFData ListMFADevices where+ rnf ListMFADevices' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders ListMFADevices where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListMFADevices where+ toPath = Prelude.const "/"++instance Data.ToQuery ListMFADevices where+ toQuery ListMFADevices' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListMFADevices" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful ListMFADevices request.+--+-- /See:/ 'newListMFADevicesResponse' smart constructor.+data ListMFADevicesResponse = ListMFADevicesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of MFA devices.+ mfaDevices :: [MFADevice]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListMFADevicesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listMFADevicesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listMFADevicesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listMFADevicesResponse_httpStatus' - The response's http status code.+--+-- 'mfaDevices', 'listMFADevicesResponse_mfaDevices' - A list of MFA devices.+newListMFADevicesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListMFADevicesResponse+newListMFADevicesResponse pHttpStatus_ =+ ListMFADevicesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ mfaDevices = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listMFADevicesResponse_isTruncated :: Lens.Lens' ListMFADevicesResponse (Prelude.Maybe Prelude.Bool)+listMFADevicesResponse_isTruncated = Lens.lens (\ListMFADevicesResponse' {isTruncated} -> isTruncated) (\s@ListMFADevicesResponse' {} a -> s {isTruncated = a} :: ListMFADevicesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listMFADevicesResponse_marker :: Lens.Lens' ListMFADevicesResponse (Prelude.Maybe Prelude.Text)+listMFADevicesResponse_marker = Lens.lens (\ListMFADevicesResponse' {marker} -> marker) (\s@ListMFADevicesResponse' {} a -> s {marker = a} :: ListMFADevicesResponse)++-- | The response's http status code.+listMFADevicesResponse_httpStatus :: Lens.Lens' ListMFADevicesResponse Prelude.Int+listMFADevicesResponse_httpStatus = Lens.lens (\ListMFADevicesResponse' {httpStatus} -> httpStatus) (\s@ListMFADevicesResponse' {} a -> s {httpStatus = a} :: ListMFADevicesResponse)++-- | A list of MFA devices.+listMFADevicesResponse_mfaDevices :: Lens.Lens' ListMFADevicesResponse [MFADevice]+listMFADevicesResponse_mfaDevices = Lens.lens (\ListMFADevicesResponse' {mfaDevices} -> mfaDevices) (\s@ListMFADevicesResponse' {} a -> s {mfaDevices = a} :: ListMFADevicesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListMFADevicesResponse where+ rnf ListMFADevicesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf mfaDevices
+ gen/Amazonka/IAM/ListOpenIDConnectProviderTags.hs view
@@ -0,0 +1,321 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListOpenIDConnectProviderTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified OpenID Connect+-- (OIDC)-compatible identity provider. The returned list of tags is sorted+-- by tag key. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html About web identity federation>.+--+-- For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.ListOpenIDConnectProviderTags+ ( -- * Creating a Request+ ListOpenIDConnectProviderTags (..),+ newListOpenIDConnectProviderTags,++ -- * Request Lenses+ listOpenIDConnectProviderTags_marker,+ listOpenIDConnectProviderTags_maxItems,+ listOpenIDConnectProviderTags_openIDConnectProviderArn,++ -- * Destructuring the Response+ ListOpenIDConnectProviderTagsResponse (..),+ newListOpenIDConnectProviderTagsResponse,++ -- * Response Lenses+ listOpenIDConnectProviderTagsResponse_isTruncated,+ listOpenIDConnectProviderTagsResponse_marker,+ listOpenIDConnectProviderTagsResponse_httpStatus,+ listOpenIDConnectProviderTagsResponse_tags,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListOpenIDConnectProviderTags' smart constructor.+data ListOpenIDConnectProviderTags = ListOpenIDConnectProviderTags'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The ARN of the OpenID Connect (OIDC) identity provider whose tags you+ -- want to see.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ openIDConnectProviderArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListOpenIDConnectProviderTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listOpenIDConnectProviderTags_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listOpenIDConnectProviderTags_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'openIDConnectProviderArn', 'listOpenIDConnectProviderTags_openIDConnectProviderArn' - The ARN of the OpenID Connect (OIDC) identity provider whose tags you+-- want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListOpenIDConnectProviderTags ::+ -- | 'openIDConnectProviderArn'+ Prelude.Text ->+ ListOpenIDConnectProviderTags+newListOpenIDConnectProviderTags+ pOpenIDConnectProviderArn_ =+ ListOpenIDConnectProviderTags'+ { marker =+ Prelude.Nothing,+ maxItems = Prelude.Nothing,+ openIDConnectProviderArn =+ pOpenIDConnectProviderArn_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listOpenIDConnectProviderTags_marker :: Lens.Lens' ListOpenIDConnectProviderTags (Prelude.Maybe Prelude.Text)+listOpenIDConnectProviderTags_marker = Lens.lens (\ListOpenIDConnectProviderTags' {marker} -> marker) (\s@ListOpenIDConnectProviderTags' {} a -> s {marker = a} :: ListOpenIDConnectProviderTags)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listOpenIDConnectProviderTags_maxItems :: Lens.Lens' ListOpenIDConnectProviderTags (Prelude.Maybe Prelude.Natural)+listOpenIDConnectProviderTags_maxItems = Lens.lens (\ListOpenIDConnectProviderTags' {maxItems} -> maxItems) (\s@ListOpenIDConnectProviderTags' {} a -> s {maxItems = a} :: ListOpenIDConnectProviderTags)++-- | The ARN of the OpenID Connect (OIDC) identity provider whose tags you+-- want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listOpenIDConnectProviderTags_openIDConnectProviderArn :: Lens.Lens' ListOpenIDConnectProviderTags Prelude.Text+listOpenIDConnectProviderTags_openIDConnectProviderArn = Lens.lens (\ListOpenIDConnectProviderTags' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@ListOpenIDConnectProviderTags' {} a -> s {openIDConnectProviderArn = a} :: ListOpenIDConnectProviderTags)++instance+ Core.AWSRequest+ ListOpenIDConnectProviderTags+ where+ type+ AWSResponse ListOpenIDConnectProviderTags =+ ListOpenIDConnectProviderTagsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListOpenIDConnectProviderTagsResult"+ ( \s h x ->+ ListOpenIDConnectProviderTagsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance+ Prelude.Hashable+ ListOpenIDConnectProviderTags+ where+ hashWithSalt _salt ListOpenIDConnectProviderTags' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` openIDConnectProviderArn++instance Prelude.NFData ListOpenIDConnectProviderTags where+ rnf ListOpenIDConnectProviderTags' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf openIDConnectProviderArn++instance Data.ToHeaders ListOpenIDConnectProviderTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListOpenIDConnectProviderTags where+ toPath = Prelude.const "/"++instance Data.ToQuery ListOpenIDConnectProviderTags where+ toQuery ListOpenIDConnectProviderTags' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ListOpenIDConnectProviderTags" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "OpenIDConnectProviderArn"+ Data.=: openIDConnectProviderArn+ ]++-- | /See:/ 'newListOpenIDConnectProviderTagsResponse' smart constructor.+data ListOpenIDConnectProviderTagsResponse = ListOpenIDConnectProviderTagsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of tags that are currently attached to the OpenID Connect+ -- (OIDC) identity provider. Each tag consists of a key name and an+ -- associated value. If no tags are attached to the specified resource, the+ -- response contains an empty list.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListOpenIDConnectProviderTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listOpenIDConnectProviderTagsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listOpenIDConnectProviderTagsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listOpenIDConnectProviderTagsResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listOpenIDConnectProviderTagsResponse_tags' - The list of tags that are currently attached to the OpenID Connect+-- (OIDC) identity provider. Each tag consists of a key name and an+-- associated value. If no tags are attached to the specified resource, the+-- response contains an empty list.+newListOpenIDConnectProviderTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListOpenIDConnectProviderTagsResponse+newListOpenIDConnectProviderTagsResponse pHttpStatus_ =+ ListOpenIDConnectProviderTagsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ tags = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listOpenIDConnectProviderTagsResponse_isTruncated :: Lens.Lens' ListOpenIDConnectProviderTagsResponse (Prelude.Maybe Prelude.Bool)+listOpenIDConnectProviderTagsResponse_isTruncated = Lens.lens (\ListOpenIDConnectProviderTagsResponse' {isTruncated} -> isTruncated) (\s@ListOpenIDConnectProviderTagsResponse' {} a -> s {isTruncated = a} :: ListOpenIDConnectProviderTagsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listOpenIDConnectProviderTagsResponse_marker :: Lens.Lens' ListOpenIDConnectProviderTagsResponse (Prelude.Maybe Prelude.Text)+listOpenIDConnectProviderTagsResponse_marker = Lens.lens (\ListOpenIDConnectProviderTagsResponse' {marker} -> marker) (\s@ListOpenIDConnectProviderTagsResponse' {} a -> s {marker = a} :: ListOpenIDConnectProviderTagsResponse)++-- | The response's http status code.+listOpenIDConnectProviderTagsResponse_httpStatus :: Lens.Lens' ListOpenIDConnectProviderTagsResponse Prelude.Int+listOpenIDConnectProviderTagsResponse_httpStatus = Lens.lens (\ListOpenIDConnectProviderTagsResponse' {httpStatus} -> httpStatus) (\s@ListOpenIDConnectProviderTagsResponse' {} a -> s {httpStatus = a} :: ListOpenIDConnectProviderTagsResponse)++-- | The list of tags that are currently attached to the OpenID Connect+-- (OIDC) identity provider. Each tag consists of a key name and an+-- associated value. If no tags are attached to the specified resource, the+-- response contains an empty list.+listOpenIDConnectProviderTagsResponse_tags :: Lens.Lens' ListOpenIDConnectProviderTagsResponse [Tag]+listOpenIDConnectProviderTagsResponse_tags = Lens.lens (\ListOpenIDConnectProviderTagsResponse' {tags} -> tags) (\s@ListOpenIDConnectProviderTagsResponse' {} a -> s {tags = a} :: ListOpenIDConnectProviderTagsResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ ListOpenIDConnectProviderTagsResponse+ where+ rnf ListOpenIDConnectProviderTagsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/ListOpenIDConnectProviders.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListOpenIDConnectProviders+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists information about the IAM OpenID Connect (OIDC) provider resource+-- objects defined in the Amazon Web Services account.+--+-- IAM resource-listing operations return a subset of the available+-- attributes for the resource. For example, this operation does not return+-- tags, even though they are an attribute of the returned object. To view+-- all of the information for an OIDC provider, see+-- GetOpenIDConnectProvider.+module Amazonka.IAM.ListOpenIDConnectProviders+ ( -- * Creating a Request+ ListOpenIDConnectProviders (..),+ newListOpenIDConnectProviders,++ -- * Destructuring the Response+ ListOpenIDConnectProvidersResponse (..),+ newListOpenIDConnectProvidersResponse,++ -- * Response Lenses+ listOpenIDConnectProvidersResponse_openIDConnectProviderList,+ listOpenIDConnectProvidersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListOpenIDConnectProviders' smart constructor.+data ListOpenIDConnectProviders = ListOpenIDConnectProviders'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListOpenIDConnectProviders' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newListOpenIDConnectProviders ::+ ListOpenIDConnectProviders+newListOpenIDConnectProviders =+ ListOpenIDConnectProviders'++instance Core.AWSRequest ListOpenIDConnectProviders where+ type+ AWSResponse ListOpenIDConnectProviders =+ ListOpenIDConnectProvidersResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListOpenIDConnectProvidersResult"+ ( \s h x ->+ ListOpenIDConnectProvidersResponse'+ Prelude.<$> ( x+ Data..@? "OpenIDConnectProviderList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListOpenIDConnectProviders where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData ListOpenIDConnectProviders where+ rnf _ = ()++instance Data.ToHeaders ListOpenIDConnectProviders where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListOpenIDConnectProviders where+ toPath = Prelude.const "/"++instance Data.ToQuery ListOpenIDConnectProviders where+ toQuery =+ Prelude.const+ ( Prelude.mconcat+ [ "Action"+ Data.=: ("ListOpenIDConnectProviders" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString)+ ]+ )++-- | Contains the response to a successful ListOpenIDConnectProviders+-- request.+--+-- /See:/ 'newListOpenIDConnectProvidersResponse' smart constructor.+data ListOpenIDConnectProvidersResponse = ListOpenIDConnectProvidersResponse'+ { -- | The list of IAM OIDC provider resource objects defined in the Amazon Web+ -- Services account.+ openIDConnectProviderList :: Prelude.Maybe [OpenIDConnectProviderListEntry],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListOpenIDConnectProvidersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderList', 'listOpenIDConnectProvidersResponse_openIDConnectProviderList' - The list of IAM OIDC provider resource objects defined in the Amazon Web+-- Services account.+--+-- 'httpStatus', 'listOpenIDConnectProvidersResponse_httpStatus' - The response's http status code.+newListOpenIDConnectProvidersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListOpenIDConnectProvidersResponse+newListOpenIDConnectProvidersResponse pHttpStatus_ =+ ListOpenIDConnectProvidersResponse'+ { openIDConnectProviderList =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of IAM OIDC provider resource objects defined in the Amazon Web+-- Services account.+listOpenIDConnectProvidersResponse_openIDConnectProviderList :: Lens.Lens' ListOpenIDConnectProvidersResponse (Prelude.Maybe [OpenIDConnectProviderListEntry])+listOpenIDConnectProvidersResponse_openIDConnectProviderList = Lens.lens (\ListOpenIDConnectProvidersResponse' {openIDConnectProviderList} -> openIDConnectProviderList) (\s@ListOpenIDConnectProvidersResponse' {} a -> s {openIDConnectProviderList = a} :: ListOpenIDConnectProvidersResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listOpenIDConnectProvidersResponse_httpStatus :: Lens.Lens' ListOpenIDConnectProvidersResponse Prelude.Int+listOpenIDConnectProvidersResponse_httpStatus = Lens.lens (\ListOpenIDConnectProvidersResponse' {httpStatus} -> httpStatus) (\s@ListOpenIDConnectProvidersResponse' {} a -> s {httpStatus = a} :: ListOpenIDConnectProvidersResponse)++instance+ Prelude.NFData+ ListOpenIDConnectProvidersResponse+ where+ rnf ListOpenIDConnectProvidersResponse' {..} =+ Prelude.rnf openIDConnectProviderList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListPolicies.hs view
@@ -0,0 +1,437 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListPolicies+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the managed policies that are available in your Amazon Web+-- Services account, including your own customer-defined managed policies+-- and all Amazon Web Services managed policies.+--+-- You can filter the list of policies that is returned using the optional+-- @OnlyAttached@, @Scope@, and @PathPrefix@ parameters. For example, to+-- list only the customer managed policies in your Amazon Web Services+-- account, set @Scope@ to @Local@. To list only Amazon Web Services+-- managed policies, set @Scope@ to @AWS@.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- For more information about managed policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- IAM resource-listing operations return a subset of the available+-- attributes for the resource. For example, this operation does not return+-- tags, even though they are an attribute of the returned object. To view+-- all of the information for a customer manged policy, see GetPolicy.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListPolicies+ ( -- * Creating a Request+ ListPolicies (..),+ newListPolicies,++ -- * Request Lenses+ listPolicies_marker,+ listPolicies_maxItems,+ listPolicies_onlyAttached,+ listPolicies_pathPrefix,+ listPolicies_policyUsageFilter,+ listPolicies_scope,++ -- * Destructuring the Response+ ListPoliciesResponse (..),+ newListPoliciesResponse,++ -- * Response Lenses+ listPoliciesResponse_isTruncated,+ listPoliciesResponse_marker,+ listPoliciesResponse_policies,+ listPoliciesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListPolicies' smart constructor.+data ListPolicies = ListPolicies'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | A flag to filter the results to only the attached policies.+ --+ -- When @OnlyAttached@ is @true@, the returned list contains only the+ -- policies that are attached to an IAM user, group, or role. When+ -- @OnlyAttached@ is @false@, or when the parameter is not included, all+ -- policies are returned.+ onlyAttached :: Prelude.Maybe Prelude.Bool,+ -- | The path prefix for filtering the results. This parameter is optional.+ -- If it is not included, it defaults to a slash (\/), listing all+ -- policies. This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text,+ -- | The policy usage method to use for filtering the results.+ --+ -- To list only permissions policies,+ -- set @PolicyUsageFilter@ to @PermissionsPolicy@. To list only the+ -- policies used to set permissions boundaries, set the value+ -- to @PermissionsBoundary@.+ --+ -- This parameter is optional. If it is not included, all policies are+ -- returned.+ policyUsageFilter :: Prelude.Maybe PolicyUsageType,+ -- | The scope to use for filtering the results.+ --+ -- To list only Amazon Web Services managed policies, set @Scope@ to @AWS@.+ -- To list only the customer managed policies in your Amazon Web Services+ -- account, set @Scope@ to @Local@.+ --+ -- This parameter is optional. If it is not included, or if it is set to+ -- @All@, all policies are returned.+ scope :: Prelude.Maybe PolicyScopeType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPolicies' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listPolicies_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listPolicies_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'onlyAttached', 'listPolicies_onlyAttached' - A flag to filter the results to only the attached policies.+--+-- When @OnlyAttached@ is @true@, the returned list contains only the+-- policies that are attached to an IAM user, group, or role. When+-- @OnlyAttached@ is @false@, or when the parameter is not included, all+-- policies are returned.+--+-- 'pathPrefix', 'listPolicies_pathPrefix' - The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- policies. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'policyUsageFilter', 'listPolicies_policyUsageFilter' - The policy usage method to use for filtering the results.+--+-- To list only permissions policies,+-- set @PolicyUsageFilter@ to @PermissionsPolicy@. To list only the+-- policies used to set permissions boundaries, set the value+-- to @PermissionsBoundary@.+--+-- This parameter is optional. If it is not included, all policies are+-- returned.+--+-- 'scope', 'listPolicies_scope' - The scope to use for filtering the results.+--+-- To list only Amazon Web Services managed policies, set @Scope@ to @AWS@.+-- To list only the customer managed policies in your Amazon Web Services+-- account, set @Scope@ to @Local@.+--+-- This parameter is optional. If it is not included, or if it is set to+-- @All@, all policies are returned.+newListPolicies ::+ ListPolicies+newListPolicies =+ ListPolicies'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ onlyAttached = Prelude.Nothing,+ pathPrefix = Prelude.Nothing,+ policyUsageFilter = Prelude.Nothing,+ scope = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listPolicies_marker :: Lens.Lens' ListPolicies (Prelude.Maybe Prelude.Text)+listPolicies_marker = Lens.lens (\ListPolicies' {marker} -> marker) (\s@ListPolicies' {} a -> s {marker = a} :: ListPolicies)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listPolicies_maxItems :: Lens.Lens' ListPolicies (Prelude.Maybe Prelude.Natural)+listPolicies_maxItems = Lens.lens (\ListPolicies' {maxItems} -> maxItems) (\s@ListPolicies' {} a -> s {maxItems = a} :: ListPolicies)++-- | A flag to filter the results to only the attached policies.+--+-- When @OnlyAttached@ is @true@, the returned list contains only the+-- policies that are attached to an IAM user, group, or role. When+-- @OnlyAttached@ is @false@, or when the parameter is not included, all+-- policies are returned.+listPolicies_onlyAttached :: Lens.Lens' ListPolicies (Prelude.Maybe Prelude.Bool)+listPolicies_onlyAttached = Lens.lens (\ListPolicies' {onlyAttached} -> onlyAttached) (\s@ListPolicies' {} a -> s {onlyAttached = a} :: ListPolicies)++-- | The path prefix for filtering the results. This parameter is optional.+-- If it is not included, it defaults to a slash (\/), listing all+-- policies. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+listPolicies_pathPrefix :: Lens.Lens' ListPolicies (Prelude.Maybe Prelude.Text)+listPolicies_pathPrefix = Lens.lens (\ListPolicies' {pathPrefix} -> pathPrefix) (\s@ListPolicies' {} a -> s {pathPrefix = a} :: ListPolicies)++-- | The policy usage method to use for filtering the results.+--+-- To list only permissions policies,+-- set @PolicyUsageFilter@ to @PermissionsPolicy@. To list only the+-- policies used to set permissions boundaries, set the value+-- to @PermissionsBoundary@.+--+-- This parameter is optional. If it is not included, all policies are+-- returned.+listPolicies_policyUsageFilter :: Lens.Lens' ListPolicies (Prelude.Maybe PolicyUsageType)+listPolicies_policyUsageFilter = Lens.lens (\ListPolicies' {policyUsageFilter} -> policyUsageFilter) (\s@ListPolicies' {} a -> s {policyUsageFilter = a} :: ListPolicies)++-- | The scope to use for filtering the results.+--+-- To list only Amazon Web Services managed policies, set @Scope@ to @AWS@.+-- To list only the customer managed policies in your Amazon Web Services+-- account, set @Scope@ to @Local@.+--+-- This parameter is optional. If it is not included, or if it is set to+-- @All@, all policies are returned.+listPolicies_scope :: Lens.Lens' ListPolicies (Prelude.Maybe PolicyScopeType)+listPolicies_scope = Lens.lens (\ListPolicies' {scope} -> scope) (\s@ListPolicies' {} a -> s {scope = a} :: ListPolicies)++instance Core.AWSPager ListPolicies where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPoliciesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listPoliciesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPolicies_marker+ Lens..~ rs+ Lens.^? listPoliciesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListPolicies where+ type AWSResponse ListPolicies = ListPoliciesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListPoliciesResult"+ ( \s h x ->+ ListPoliciesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "Policies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPolicies where+ hashWithSalt _salt ListPolicies' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` onlyAttached+ `Prelude.hashWithSalt` pathPrefix+ `Prelude.hashWithSalt` policyUsageFilter+ `Prelude.hashWithSalt` scope++instance Prelude.NFData ListPolicies where+ rnf ListPolicies' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf onlyAttached+ `Prelude.seq` Prelude.rnf pathPrefix+ `Prelude.seq` Prelude.rnf policyUsageFilter+ `Prelude.seq` Prelude.rnf scope++instance Data.ToHeaders ListPolicies where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListPolicies where+ toPath = Prelude.const "/"++instance Data.ToQuery ListPolicies where+ toQuery ListPolicies' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListPolicies" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "OnlyAttached" Data.=: onlyAttached,+ "PathPrefix" Data.=: pathPrefix,+ "PolicyUsageFilter" Data.=: policyUsageFilter,+ "Scope" Data.=: scope+ ]++-- | Contains the response to a successful ListPolicies request.+--+-- /See:/ 'newListPoliciesResponse' smart constructor.+data ListPoliciesResponse = ListPoliciesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | A list of policies.+ policies :: Prelude.Maybe [Policy],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPoliciesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listPoliciesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listPoliciesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'policies', 'listPoliciesResponse_policies' - A list of policies.+--+-- 'httpStatus', 'listPoliciesResponse_httpStatus' - The response's http status code.+newListPoliciesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPoliciesResponse+newListPoliciesResponse pHttpStatus_ =+ ListPoliciesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ policies = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listPoliciesResponse_isTruncated :: Lens.Lens' ListPoliciesResponse (Prelude.Maybe Prelude.Bool)+listPoliciesResponse_isTruncated = Lens.lens (\ListPoliciesResponse' {isTruncated} -> isTruncated) (\s@ListPoliciesResponse' {} a -> s {isTruncated = a} :: ListPoliciesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listPoliciesResponse_marker :: Lens.Lens' ListPoliciesResponse (Prelude.Maybe Prelude.Text)+listPoliciesResponse_marker = Lens.lens (\ListPoliciesResponse' {marker} -> marker) (\s@ListPoliciesResponse' {} a -> s {marker = a} :: ListPoliciesResponse)++-- | A list of policies.+listPoliciesResponse_policies :: Lens.Lens' ListPoliciesResponse (Prelude.Maybe [Policy])+listPoliciesResponse_policies = Lens.lens (\ListPoliciesResponse' {policies} -> policies) (\s@ListPoliciesResponse' {} a -> s {policies = a} :: ListPoliciesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPoliciesResponse_httpStatus :: Lens.Lens' ListPoliciesResponse Prelude.Int+listPoliciesResponse_httpStatus = Lens.lens (\ListPoliciesResponse' {httpStatus} -> httpStatus) (\s@ListPoliciesResponse' {} a -> s {httpStatus = a} :: ListPoliciesResponse)++instance Prelude.NFData ListPoliciesResponse where+ rnf ListPoliciesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf policies+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListPoliciesGrantingServiceAccess.hs view
@@ -0,0 +1,353 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListPoliciesGrantingServiceAccess+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves a list of policies that the IAM identity (user, group, or+-- role) can use to access each specified service.+--+-- This operation does not use other policy types when determining whether+-- a resource could access a service. These other policy types include+-- resource-based policies, access control lists, Organizations policies,+-- IAM permissions boundaries, and STS assume role policies. It only+-- applies permissions policy logic. For more about the evaluation of+-- policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics Evaluating policies>+-- in the /IAM User Guide/.+--+-- The list of policies returned by the operation depends on the ARN of the+-- identity that you provide.+--+-- - __User__ – The list of policies includes the managed and inline+-- policies that are attached to the user directly. The list also+-- includes any additional managed and inline policies that are+-- attached to the group to which the user belongs.+--+-- - __Group__ – The list of policies includes only the managed and+-- inline policies that are attached to the group directly. Policies+-- that are attached to the group’s user are not included.+--+-- - __Role__ – The list of policies includes only the managed and inline+-- policies that are attached to the role.+--+-- For each managed policy, this operation returns the ARN and policy name.+-- For each inline policy, it returns the policy name and the entity to+-- which it is attached. Inline policies do not have an ARN. For more+-- information about these policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- Policies that are attached to users and roles as permissions boundaries+-- are not returned. To view which managed policy is currently used to set+-- the permissions boundary for a user or role, use the GetUser or GetRole+-- operations.+module Amazonka.IAM.ListPoliciesGrantingServiceAccess+ ( -- * Creating a Request+ ListPoliciesGrantingServiceAccess (..),+ newListPoliciesGrantingServiceAccess,++ -- * Request Lenses+ listPoliciesGrantingServiceAccess_marker,+ listPoliciesGrantingServiceAccess_arn,+ listPoliciesGrantingServiceAccess_serviceNamespaces,++ -- * Destructuring the Response+ ListPoliciesGrantingServiceAccessResponse (..),+ newListPoliciesGrantingServiceAccessResponse,++ -- * Response Lenses+ listPoliciesGrantingServiceAccessResponse_isTruncated,+ listPoliciesGrantingServiceAccessResponse_marker,+ listPoliciesGrantingServiceAccessResponse_httpStatus,+ listPoliciesGrantingServiceAccessResponse_policiesGrantingServiceAccess,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListPoliciesGrantingServiceAccess' smart constructor.+data ListPoliciesGrantingServiceAccess = ListPoliciesGrantingServiceAccess'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM identity (user, group, or role) whose policies you+ -- want to list.+ arn :: Prelude.Text,+ -- | The service namespace for the Amazon Web Services services whose+ -- policies you want to list.+ --+ -- To learn the service namespace for a service, see+ -- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+ -- in the /IAM User Guide/. Choose the name of the service to view details+ -- for that service. In the first paragraph, find the service prefix. For+ -- example, @(service prefix: a4b)@. For more information about service+ -- namespaces, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+ -- in the /Amazon Web Services General Reference/.+ serviceNamespaces :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPoliciesGrantingServiceAccess' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listPoliciesGrantingServiceAccess_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'arn', 'listPoliciesGrantingServiceAccess_arn' - The ARN of the IAM identity (user, group, or role) whose policies you+-- want to list.+--+-- 'serviceNamespaces', 'listPoliciesGrantingServiceAccess_serviceNamespaces' - The service namespace for the Amazon Web Services services whose+-- policies you want to list.+--+-- To learn the service namespace for a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /IAM User Guide/. Choose the name of the service to view details+-- for that service. In the first paragraph, find the service prefix. For+-- example, @(service prefix: a4b)@. For more information about service+-- namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+-- in the /Amazon Web Services General Reference/.+newListPoliciesGrantingServiceAccess ::+ -- | 'arn'+ Prelude.Text ->+ -- | 'serviceNamespaces'+ Prelude.NonEmpty Prelude.Text ->+ ListPoliciesGrantingServiceAccess+newListPoliciesGrantingServiceAccess+ pArn_+ pServiceNamespaces_ =+ ListPoliciesGrantingServiceAccess'+ { marker =+ Prelude.Nothing,+ arn = pArn_,+ serviceNamespaces =+ Lens.coerced+ Lens.# pServiceNamespaces_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listPoliciesGrantingServiceAccess_marker :: Lens.Lens' ListPoliciesGrantingServiceAccess (Prelude.Maybe Prelude.Text)+listPoliciesGrantingServiceAccess_marker = Lens.lens (\ListPoliciesGrantingServiceAccess' {marker} -> marker) (\s@ListPoliciesGrantingServiceAccess' {} a -> s {marker = a} :: ListPoliciesGrantingServiceAccess)++-- | The ARN of the IAM identity (user, group, or role) whose policies you+-- want to list.+listPoliciesGrantingServiceAccess_arn :: Lens.Lens' ListPoliciesGrantingServiceAccess Prelude.Text+listPoliciesGrantingServiceAccess_arn = Lens.lens (\ListPoliciesGrantingServiceAccess' {arn} -> arn) (\s@ListPoliciesGrantingServiceAccess' {} a -> s {arn = a} :: ListPoliciesGrantingServiceAccess)++-- | The service namespace for the Amazon Web Services services whose+-- policies you want to list.+--+-- To learn the service namespace for a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /IAM User Guide/. Choose the name of the service to view details+-- for that service. In the first paragraph, find the service prefix. For+-- example, @(service prefix: a4b)@. For more information about service+-- namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+-- in the /Amazon Web Services General Reference/.+listPoliciesGrantingServiceAccess_serviceNamespaces :: Lens.Lens' ListPoliciesGrantingServiceAccess (Prelude.NonEmpty Prelude.Text)+listPoliciesGrantingServiceAccess_serviceNamespaces = Lens.lens (\ListPoliciesGrantingServiceAccess' {serviceNamespaces} -> serviceNamespaces) (\s@ListPoliciesGrantingServiceAccess' {} a -> s {serviceNamespaces = a} :: ListPoliciesGrantingServiceAccess) Prelude.. Lens.coerced++instance+ Core.AWSRequest+ ListPoliciesGrantingServiceAccess+ where+ type+ AWSResponse ListPoliciesGrantingServiceAccess =+ ListPoliciesGrantingServiceAccessResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListPoliciesGrantingServiceAccessResult"+ ( \s h x ->+ ListPoliciesGrantingServiceAccessResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "PoliciesGrantingServiceAccess"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance+ Prelude.Hashable+ ListPoliciesGrantingServiceAccess+ where+ hashWithSalt+ _salt+ ListPoliciesGrantingServiceAccess' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` serviceNamespaces++instance+ Prelude.NFData+ ListPoliciesGrantingServiceAccess+ where+ rnf ListPoliciesGrantingServiceAccess' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf serviceNamespaces++instance+ Data.ToHeaders+ ListPoliciesGrantingServiceAccess+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ ListPoliciesGrantingServiceAccess+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ListPoliciesGrantingServiceAccess+ where+ toQuery ListPoliciesGrantingServiceAccess' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ListPoliciesGrantingServiceAccess" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "Arn" Data.=: arn,+ "ServiceNamespaces"+ Data.=: Data.toQueryList "member" serviceNamespaces+ ]++-- | /See:/ 'newListPoliciesGrantingServiceAccessResponse' smart constructor.+data ListPoliciesGrantingServiceAccessResponse = ListPoliciesGrantingServiceAccessResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. We+ -- recommend that you check @IsTruncated@ after every call to ensure that+ -- you receive all your results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A @ListPoliciesGrantingServiceAccess@ object that contains details about+ -- the permissions policies attached to the specified identity (user,+ -- group, or role).+ policiesGrantingServiceAccess :: [ListPoliciesGrantingServiceAccessEntry]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPoliciesGrantingServiceAccessResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listPoliciesGrantingServiceAccessResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. We+-- recommend that you check @IsTruncated@ after every call to ensure that+-- you receive all your results.+--+-- 'marker', 'listPoliciesGrantingServiceAccessResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listPoliciesGrantingServiceAccessResponse_httpStatus' - The response's http status code.+--+-- 'policiesGrantingServiceAccess', 'listPoliciesGrantingServiceAccessResponse_policiesGrantingServiceAccess' - A @ListPoliciesGrantingServiceAccess@ object that contains details about+-- the permissions policies attached to the specified identity (user,+-- group, or role).+newListPoliciesGrantingServiceAccessResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPoliciesGrantingServiceAccessResponse+newListPoliciesGrantingServiceAccessResponse+ pHttpStatus_ =+ ListPoliciesGrantingServiceAccessResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ policiesGrantingServiceAccess =+ Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. We+-- recommend that you check @IsTruncated@ after every call to ensure that+-- you receive all your results.+listPoliciesGrantingServiceAccessResponse_isTruncated :: Lens.Lens' ListPoliciesGrantingServiceAccessResponse (Prelude.Maybe Prelude.Bool)+listPoliciesGrantingServiceAccessResponse_isTruncated = Lens.lens (\ListPoliciesGrantingServiceAccessResponse' {isTruncated} -> isTruncated) (\s@ListPoliciesGrantingServiceAccessResponse' {} a -> s {isTruncated = a} :: ListPoliciesGrantingServiceAccessResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listPoliciesGrantingServiceAccessResponse_marker :: Lens.Lens' ListPoliciesGrantingServiceAccessResponse (Prelude.Maybe Prelude.Text)+listPoliciesGrantingServiceAccessResponse_marker = Lens.lens (\ListPoliciesGrantingServiceAccessResponse' {marker} -> marker) (\s@ListPoliciesGrantingServiceAccessResponse' {} a -> s {marker = a} :: ListPoliciesGrantingServiceAccessResponse)++-- | The response's http status code.+listPoliciesGrantingServiceAccessResponse_httpStatus :: Lens.Lens' ListPoliciesGrantingServiceAccessResponse Prelude.Int+listPoliciesGrantingServiceAccessResponse_httpStatus = Lens.lens (\ListPoliciesGrantingServiceAccessResponse' {httpStatus} -> httpStatus) (\s@ListPoliciesGrantingServiceAccessResponse' {} a -> s {httpStatus = a} :: ListPoliciesGrantingServiceAccessResponse)++-- | A @ListPoliciesGrantingServiceAccess@ object that contains details about+-- the permissions policies attached to the specified identity (user,+-- group, or role).+listPoliciesGrantingServiceAccessResponse_policiesGrantingServiceAccess :: Lens.Lens' ListPoliciesGrantingServiceAccessResponse [ListPoliciesGrantingServiceAccessEntry]+listPoliciesGrantingServiceAccessResponse_policiesGrantingServiceAccess = Lens.lens (\ListPoliciesGrantingServiceAccessResponse' {policiesGrantingServiceAccess} -> policiesGrantingServiceAccess) (\s@ListPoliciesGrantingServiceAccessResponse' {} a -> s {policiesGrantingServiceAccess = a} :: ListPoliciesGrantingServiceAccessResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ ListPoliciesGrantingServiceAccessResponse+ where+ rnf ListPoliciesGrantingServiceAccessResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf policiesGrantingServiceAccess
+ gen/Amazonka/IAM/ListPolicyTags.hs view
@@ -0,0 +1,300 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListPolicyTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified IAM customer managed+-- policy. The returned list of tags is sorted by tag key. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.ListPolicyTags+ ( -- * Creating a Request+ ListPolicyTags (..),+ newListPolicyTags,++ -- * Request Lenses+ listPolicyTags_marker,+ listPolicyTags_maxItems,+ listPolicyTags_policyArn,++ -- * Destructuring the Response+ ListPolicyTagsResponse (..),+ newListPolicyTagsResponse,++ -- * Response Lenses+ listPolicyTagsResponse_isTruncated,+ listPolicyTagsResponse_marker,+ listPolicyTagsResponse_httpStatus,+ listPolicyTagsResponse_tags,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListPolicyTags' smart constructor.+data ListPolicyTags = ListPolicyTags'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The ARN of the IAM customer managed policy whose tags you want to see.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPolicyTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listPolicyTags_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listPolicyTags_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'policyArn', 'listPolicyTags_policyArn' - The ARN of the IAM customer managed policy whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListPolicyTags ::+ -- | 'policyArn'+ Prelude.Text ->+ ListPolicyTags+newListPolicyTags pPolicyArn_ =+ ListPolicyTags'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ policyArn = pPolicyArn_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listPolicyTags_marker :: Lens.Lens' ListPolicyTags (Prelude.Maybe Prelude.Text)+listPolicyTags_marker = Lens.lens (\ListPolicyTags' {marker} -> marker) (\s@ListPolicyTags' {} a -> s {marker = a} :: ListPolicyTags)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listPolicyTags_maxItems :: Lens.Lens' ListPolicyTags (Prelude.Maybe Prelude.Natural)+listPolicyTags_maxItems = Lens.lens (\ListPolicyTags' {maxItems} -> maxItems) (\s@ListPolicyTags' {} a -> s {maxItems = a} :: ListPolicyTags)++-- | The ARN of the IAM customer managed policy whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listPolicyTags_policyArn :: Lens.Lens' ListPolicyTags Prelude.Text+listPolicyTags_policyArn = Lens.lens (\ListPolicyTags' {policyArn} -> policyArn) (\s@ListPolicyTags' {} a -> s {policyArn = a} :: ListPolicyTags)++instance Core.AWSRequest ListPolicyTags where+ type+ AWSResponse ListPolicyTags =+ ListPolicyTagsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListPolicyTagsResult"+ ( \s h x ->+ ListPolicyTagsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListPolicyTags where+ hashWithSalt _salt ListPolicyTags' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData ListPolicyTags where+ rnf ListPolicyTags' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders ListPolicyTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListPolicyTags where+ toPath = Prelude.const "/"++instance Data.ToQuery ListPolicyTags where+ toQuery ListPolicyTags' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListPolicyTags" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PolicyArn" Data.=: policyArn+ ]++-- | /See:/ 'newListPolicyTagsResponse' smart constructor.+data ListPolicyTagsResponse = ListPolicyTagsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of tags that are currently attached to the IAM customer managed+ -- policy. Each tag consists of a key name and an associated value. If no+ -- tags are attached to the specified resource, the response contains an+ -- empty list.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPolicyTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listPolicyTagsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listPolicyTagsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listPolicyTagsResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listPolicyTagsResponse_tags' - The list of tags that are currently attached to the IAM customer managed+-- policy. Each tag consists of a key name and an associated value. If no+-- tags are attached to the specified resource, the response contains an+-- empty list.+newListPolicyTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPolicyTagsResponse+newListPolicyTagsResponse pHttpStatus_ =+ ListPolicyTagsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ tags = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listPolicyTagsResponse_isTruncated :: Lens.Lens' ListPolicyTagsResponse (Prelude.Maybe Prelude.Bool)+listPolicyTagsResponse_isTruncated = Lens.lens (\ListPolicyTagsResponse' {isTruncated} -> isTruncated) (\s@ListPolicyTagsResponse' {} a -> s {isTruncated = a} :: ListPolicyTagsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listPolicyTagsResponse_marker :: Lens.Lens' ListPolicyTagsResponse (Prelude.Maybe Prelude.Text)+listPolicyTagsResponse_marker = Lens.lens (\ListPolicyTagsResponse' {marker} -> marker) (\s@ListPolicyTagsResponse' {} a -> s {marker = a} :: ListPolicyTagsResponse)++-- | The response's http status code.+listPolicyTagsResponse_httpStatus :: Lens.Lens' ListPolicyTagsResponse Prelude.Int+listPolicyTagsResponse_httpStatus = Lens.lens (\ListPolicyTagsResponse' {httpStatus} -> httpStatus) (\s@ListPolicyTagsResponse' {} a -> s {httpStatus = a} :: ListPolicyTagsResponse)++-- | The list of tags that are currently attached to the IAM customer managed+-- policy. Each tag consists of a key name and an associated value. If no+-- tags are attached to the specified resource, the response contains an+-- empty list.+listPolicyTagsResponse_tags :: Lens.Lens' ListPolicyTagsResponse [Tag]+listPolicyTagsResponse_tags = Lens.lens (\ListPolicyTagsResponse' {tags} -> tags) (\s@ListPolicyTagsResponse' {} a -> s {tags = a} :: ListPolicyTagsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListPolicyTagsResponse where+ rnf ListPolicyTagsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/ListPolicyVersions.hs view
@@ -0,0 +1,331 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListPolicyVersions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists information about the versions of the specified managed policy,+-- including the version that is currently set as the policy\'s default+-- version.+--+-- For more information about managed policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListPolicyVersions+ ( -- * Creating a Request+ ListPolicyVersions (..),+ newListPolicyVersions,++ -- * Request Lenses+ listPolicyVersions_marker,+ listPolicyVersions_maxItems,+ listPolicyVersions_policyArn,++ -- * Destructuring the Response+ ListPolicyVersionsResponse (..),+ newListPolicyVersionsResponse,++ -- * Response Lenses+ listPolicyVersionsResponse_isTruncated,+ listPolicyVersionsResponse_marker,+ listPolicyVersionsResponse_versions,+ listPolicyVersionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListPolicyVersions' smart constructor.+data ListPolicyVersions = ListPolicyVersions'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The Amazon Resource Name (ARN) of the IAM policy for which you want the+ -- versions.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPolicyVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listPolicyVersions_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listPolicyVersions_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'policyArn', 'listPolicyVersions_policyArn' - The Amazon Resource Name (ARN) of the IAM policy for which you want the+-- versions.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newListPolicyVersions ::+ -- | 'policyArn'+ Prelude.Text ->+ ListPolicyVersions+newListPolicyVersions pPolicyArn_ =+ ListPolicyVersions'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ policyArn = pPolicyArn_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listPolicyVersions_marker :: Lens.Lens' ListPolicyVersions (Prelude.Maybe Prelude.Text)+listPolicyVersions_marker = Lens.lens (\ListPolicyVersions' {marker} -> marker) (\s@ListPolicyVersions' {} a -> s {marker = a} :: ListPolicyVersions)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listPolicyVersions_maxItems :: Lens.Lens' ListPolicyVersions (Prelude.Maybe Prelude.Natural)+listPolicyVersions_maxItems = Lens.lens (\ListPolicyVersions' {maxItems} -> maxItems) (\s@ListPolicyVersions' {} a -> s {maxItems = a} :: ListPolicyVersions)++-- | The Amazon Resource Name (ARN) of the IAM policy for which you want the+-- versions.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+listPolicyVersions_policyArn :: Lens.Lens' ListPolicyVersions Prelude.Text+listPolicyVersions_policyArn = Lens.lens (\ListPolicyVersions' {policyArn} -> policyArn) (\s@ListPolicyVersions' {} a -> s {policyArn = a} :: ListPolicyVersions)++instance Core.AWSPager ListPolicyVersions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPolicyVersionsResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listPolicyVersionsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPolicyVersions_marker+ Lens..~ rs+ Lens.^? listPolicyVersionsResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListPolicyVersions where+ type+ AWSResponse ListPolicyVersions =+ ListPolicyVersionsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListPolicyVersionsResult"+ ( \s h x ->+ ListPolicyVersionsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "Versions"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPolicyVersions where+ hashWithSalt _salt ListPolicyVersions' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` policyArn++instance Prelude.NFData ListPolicyVersions where+ rnf ListPolicyVersions' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf policyArn++instance Data.ToHeaders ListPolicyVersions where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListPolicyVersions where+ toPath = Prelude.const "/"++instance Data.ToQuery ListPolicyVersions where+ toQuery ListPolicyVersions' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListPolicyVersions" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PolicyArn" Data.=: policyArn+ ]++-- | Contains the response to a successful ListPolicyVersions request.+--+-- /See:/ 'newListPolicyVersionsResponse' smart constructor.+data ListPolicyVersionsResponse = ListPolicyVersionsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | A list of policy versions.+ --+ -- For more information about managed policy versions, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+ -- in the /IAM User Guide/.+ versions :: Prelude.Maybe [PolicyVersion],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPolicyVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listPolicyVersionsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listPolicyVersionsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'versions', 'listPolicyVersionsResponse_versions' - A list of policy versions.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+--+-- 'httpStatus', 'listPolicyVersionsResponse_httpStatus' - The response's http status code.+newListPolicyVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPolicyVersionsResponse+newListPolicyVersionsResponse pHttpStatus_ =+ ListPolicyVersionsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ versions = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listPolicyVersionsResponse_isTruncated :: Lens.Lens' ListPolicyVersionsResponse (Prelude.Maybe Prelude.Bool)+listPolicyVersionsResponse_isTruncated = Lens.lens (\ListPolicyVersionsResponse' {isTruncated} -> isTruncated) (\s@ListPolicyVersionsResponse' {} a -> s {isTruncated = a} :: ListPolicyVersionsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listPolicyVersionsResponse_marker :: Lens.Lens' ListPolicyVersionsResponse (Prelude.Maybe Prelude.Text)+listPolicyVersionsResponse_marker = Lens.lens (\ListPolicyVersionsResponse' {marker} -> marker) (\s@ListPolicyVersionsResponse' {} a -> s {marker = a} :: ListPolicyVersionsResponse)++-- | A list of policy versions.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+listPolicyVersionsResponse_versions :: Lens.Lens' ListPolicyVersionsResponse (Prelude.Maybe [PolicyVersion])+listPolicyVersionsResponse_versions = Lens.lens (\ListPolicyVersionsResponse' {versions} -> versions) (\s@ListPolicyVersionsResponse' {} a -> s {versions = a} :: ListPolicyVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPolicyVersionsResponse_httpStatus :: Lens.Lens' ListPolicyVersionsResponse Prelude.Int+listPolicyVersionsResponse_httpStatus = Lens.lens (\ListPolicyVersionsResponse' {httpStatus} -> httpStatus) (\s@ListPolicyVersionsResponse' {} a -> s {httpStatus = a} :: ListPolicyVersionsResponse)++instance Prelude.NFData ListPolicyVersionsResponse where+ rnf ListPolicyVersionsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf versions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListRolePolicies.hs view
@@ -0,0 +1,324 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListRolePolicies+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the names of the inline policies that are embedded in the+-- specified IAM role.+--+-- An IAM role can also have managed policies attached to it. To list the+-- managed policies that are attached to a role, use+-- ListAttachedRolePolicies. For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters. If there are no inline policies embedded with the specified+-- role, the operation returns an empty list.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListRolePolicies+ ( -- * Creating a Request+ ListRolePolicies (..),+ newListRolePolicies,++ -- * Request Lenses+ listRolePolicies_marker,+ listRolePolicies_maxItems,+ listRolePolicies_roleName,++ -- * Destructuring the Response+ ListRolePoliciesResponse (..),+ newListRolePoliciesResponse,++ -- * Response Lenses+ listRolePoliciesResponse_isTruncated,+ listRolePoliciesResponse_marker,+ listRolePoliciesResponse_httpStatus,+ listRolePoliciesResponse_policyNames,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListRolePolicies' smart constructor.+data ListRolePolicies = ListRolePolicies'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the role to list policies for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRolePolicies' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listRolePolicies_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listRolePolicies_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'roleName', 'listRolePolicies_roleName' - The name of the role to list policies for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListRolePolicies ::+ -- | 'roleName'+ Prelude.Text ->+ ListRolePolicies+newListRolePolicies pRoleName_ =+ ListRolePolicies'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ roleName = pRoleName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listRolePolicies_marker :: Lens.Lens' ListRolePolicies (Prelude.Maybe Prelude.Text)+listRolePolicies_marker = Lens.lens (\ListRolePolicies' {marker} -> marker) (\s@ListRolePolicies' {} a -> s {marker = a} :: ListRolePolicies)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listRolePolicies_maxItems :: Lens.Lens' ListRolePolicies (Prelude.Maybe Prelude.Natural)+listRolePolicies_maxItems = Lens.lens (\ListRolePolicies' {maxItems} -> maxItems) (\s@ListRolePolicies' {} a -> s {maxItems = a} :: ListRolePolicies)++-- | The name of the role to list policies for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listRolePolicies_roleName :: Lens.Lens' ListRolePolicies Prelude.Text+listRolePolicies_roleName = Lens.lens (\ListRolePolicies' {roleName} -> roleName) (\s@ListRolePolicies' {} a -> s {roleName = a} :: ListRolePolicies)++instance Core.AWSPager ListRolePolicies where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listRolePoliciesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listRolePoliciesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listRolePolicies_marker+ Lens..~ rs+ Lens.^? listRolePoliciesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListRolePolicies where+ type+ AWSResponse ListRolePolicies =+ ListRolePoliciesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListRolePoliciesResult"+ ( \s h x ->+ ListRolePoliciesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "PolicyNames"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListRolePolicies where+ hashWithSalt _salt ListRolePolicies' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` roleName++instance Prelude.NFData ListRolePolicies where+ rnf ListRolePolicies' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf roleName++instance Data.ToHeaders ListRolePolicies where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListRolePolicies where+ toPath = Prelude.const "/"++instance Data.ToQuery ListRolePolicies where+ toQuery ListRolePolicies' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListRolePolicies" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "RoleName" Data.=: roleName+ ]++-- | Contains the response to a successful ListRolePolicies request.+--+-- /See:/ 'newListRolePoliciesResponse' smart constructor.+data ListRolePoliciesResponse = ListRolePoliciesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of policy names.+ policyNames :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRolePoliciesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listRolePoliciesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listRolePoliciesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listRolePoliciesResponse_httpStatus' - The response's http status code.+--+-- 'policyNames', 'listRolePoliciesResponse_policyNames' - A list of policy names.+newListRolePoliciesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRolePoliciesResponse+newListRolePoliciesResponse pHttpStatus_ =+ ListRolePoliciesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ policyNames = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listRolePoliciesResponse_isTruncated :: Lens.Lens' ListRolePoliciesResponse (Prelude.Maybe Prelude.Bool)+listRolePoliciesResponse_isTruncated = Lens.lens (\ListRolePoliciesResponse' {isTruncated} -> isTruncated) (\s@ListRolePoliciesResponse' {} a -> s {isTruncated = a} :: ListRolePoliciesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listRolePoliciesResponse_marker :: Lens.Lens' ListRolePoliciesResponse (Prelude.Maybe Prelude.Text)+listRolePoliciesResponse_marker = Lens.lens (\ListRolePoliciesResponse' {marker} -> marker) (\s@ListRolePoliciesResponse' {} a -> s {marker = a} :: ListRolePoliciesResponse)++-- | The response's http status code.+listRolePoliciesResponse_httpStatus :: Lens.Lens' ListRolePoliciesResponse Prelude.Int+listRolePoliciesResponse_httpStatus = Lens.lens (\ListRolePoliciesResponse' {httpStatus} -> httpStatus) (\s@ListRolePoliciesResponse' {} a -> s {httpStatus = a} :: ListRolePoliciesResponse)++-- | A list of policy names.+listRolePoliciesResponse_policyNames :: Lens.Lens' ListRolePoliciesResponse [Prelude.Text]+listRolePoliciesResponse_policyNames = Lens.lens (\ListRolePoliciesResponse' {policyNames} -> policyNames) (\s@ListRolePoliciesResponse' {} a -> s {policyNames = a} :: ListRolePoliciesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListRolePoliciesResponse where+ rnf ListRolePoliciesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf policyNames
+ gen/Amazonka/IAM/ListRoleTags.hs view
@@ -0,0 +1,295 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListRoleTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified role. The returned+-- list of tags is sorted by tag key. For more information about tagging,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.ListRoleTags+ ( -- * Creating a Request+ ListRoleTags (..),+ newListRoleTags,++ -- * Request Lenses+ listRoleTags_marker,+ listRoleTags_maxItems,+ listRoleTags_roleName,++ -- * Destructuring the Response+ ListRoleTagsResponse (..),+ newListRoleTagsResponse,++ -- * Response Lenses+ listRoleTagsResponse_isTruncated,+ listRoleTagsResponse_marker,+ listRoleTagsResponse_httpStatus,+ listRoleTagsResponse_tags,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListRoleTags' smart constructor.+data ListRoleTags = ListRoleTags'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the IAM role for which you want to see the list of tags.+ --+ -- This parameter accepts (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that consist of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRoleTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listRoleTags_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listRoleTags_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'roleName', 'listRoleTags_roleName' - The name of the IAM role for which you want to see the list of tags.+--+-- This parameter accepts (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consist of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListRoleTags ::+ -- | 'roleName'+ Prelude.Text ->+ ListRoleTags+newListRoleTags pRoleName_ =+ ListRoleTags'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ roleName = pRoleName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listRoleTags_marker :: Lens.Lens' ListRoleTags (Prelude.Maybe Prelude.Text)+listRoleTags_marker = Lens.lens (\ListRoleTags' {marker} -> marker) (\s@ListRoleTags' {} a -> s {marker = a} :: ListRoleTags)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listRoleTags_maxItems :: Lens.Lens' ListRoleTags (Prelude.Maybe Prelude.Natural)+listRoleTags_maxItems = Lens.lens (\ListRoleTags' {maxItems} -> maxItems) (\s@ListRoleTags' {} a -> s {maxItems = a} :: ListRoleTags)++-- | The name of the IAM role for which you want to see the list of tags.+--+-- This parameter accepts (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consist of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listRoleTags_roleName :: Lens.Lens' ListRoleTags Prelude.Text+listRoleTags_roleName = Lens.lens (\ListRoleTags' {roleName} -> roleName) (\s@ListRoleTags' {} a -> s {roleName = a} :: ListRoleTags)++instance Core.AWSRequest ListRoleTags where+ type AWSResponse ListRoleTags = ListRoleTagsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListRoleTagsResult"+ ( \s h x ->+ ListRoleTagsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListRoleTags where+ hashWithSalt _salt ListRoleTags' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` roleName++instance Prelude.NFData ListRoleTags where+ rnf ListRoleTags' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf roleName++instance Data.ToHeaders ListRoleTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListRoleTags where+ toPath = Prelude.const "/"++instance Data.ToQuery ListRoleTags where+ toQuery ListRoleTags' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListRoleTags" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "RoleName" Data.=: roleName+ ]++-- | /See:/ 'newListRoleTagsResponse' smart constructor.+data ListRoleTagsResponse = ListRoleTagsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of tags that are currently attached to the role. Each tag+ -- consists of a key name and an associated value. If no tags are attached+ -- to the specified resource, the response contains an empty list.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRoleTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listRoleTagsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listRoleTagsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listRoleTagsResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listRoleTagsResponse_tags' - The list of tags that are currently attached to the role. Each tag+-- consists of a key name and an associated value. If no tags are attached+-- to the specified resource, the response contains an empty list.+newListRoleTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRoleTagsResponse+newListRoleTagsResponse pHttpStatus_ =+ ListRoleTagsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ tags = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listRoleTagsResponse_isTruncated :: Lens.Lens' ListRoleTagsResponse (Prelude.Maybe Prelude.Bool)+listRoleTagsResponse_isTruncated = Lens.lens (\ListRoleTagsResponse' {isTruncated} -> isTruncated) (\s@ListRoleTagsResponse' {} a -> s {isTruncated = a} :: ListRoleTagsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listRoleTagsResponse_marker :: Lens.Lens' ListRoleTagsResponse (Prelude.Maybe Prelude.Text)+listRoleTagsResponse_marker = Lens.lens (\ListRoleTagsResponse' {marker} -> marker) (\s@ListRoleTagsResponse' {} a -> s {marker = a} :: ListRoleTagsResponse)++-- | The response's http status code.+listRoleTagsResponse_httpStatus :: Lens.Lens' ListRoleTagsResponse Prelude.Int+listRoleTagsResponse_httpStatus = Lens.lens (\ListRoleTagsResponse' {httpStatus} -> httpStatus) (\s@ListRoleTagsResponse' {} a -> s {httpStatus = a} :: ListRoleTagsResponse)++-- | The list of tags that are currently attached to the role. Each tag+-- consists of a key name and an associated value. If no tags are attached+-- to the specified resource, the response contains an empty list.+listRoleTagsResponse_tags :: Lens.Lens' ListRoleTagsResponse [Tag]+listRoleTagsResponse_tags = Lens.lens (\ListRoleTagsResponse' {tags} -> tags) (\s@ListRoleTagsResponse' {} a -> s {tags = a} :: ListRoleTagsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListRoleTagsResponse where+ rnf ListRoleTagsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/ListRoles.hs view
@@ -0,0 +1,337 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListRoles+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the IAM roles that have the specified path prefix. If there are+-- none, the operation returns an empty list. For more information about+-- roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with roles>.+--+-- IAM resource-listing operations return a subset of the available+-- attributes for the resource. For example, this operation does not return+-- tags, even though they are an attribute of the returned object. To view+-- all of the information for a role, see GetRole.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListRoles+ ( -- * Creating a Request+ ListRoles (..),+ newListRoles,++ -- * Request Lenses+ listRoles_marker,+ listRoles_maxItems,+ listRoles_pathPrefix,++ -- * Destructuring the Response+ ListRolesResponse (..),+ newListRolesResponse,++ -- * Response Lenses+ listRolesResponse_isTruncated,+ listRolesResponse_marker,+ listRolesResponse_httpStatus,+ listRolesResponse_roles,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListRoles' smart constructor.+data ListRoles = ListRoles'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. For example, the prefix+ -- @\/application_abc\/component_xyz\/@ gets all roles whose path starts+ -- with @\/application_abc\/component_xyz\/@.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/), listing all roles. This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRoles' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listRoles_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listRoles_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listRoles_pathPrefix' - The path prefix for filtering the results. For example, the prefix+-- @\/application_abc\/component_xyz\/@ gets all roles whose path starts+-- with @\/application_abc\/component_xyz\/@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all roles. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+newListRoles ::+ ListRoles+newListRoles =+ ListRoles'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listRoles_marker :: Lens.Lens' ListRoles (Prelude.Maybe Prelude.Text)+listRoles_marker = Lens.lens (\ListRoles' {marker} -> marker) (\s@ListRoles' {} a -> s {marker = a} :: ListRoles)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listRoles_maxItems :: Lens.Lens' ListRoles (Prelude.Maybe Prelude.Natural)+listRoles_maxItems = Lens.lens (\ListRoles' {maxItems} -> maxItems) (\s@ListRoles' {} a -> s {maxItems = a} :: ListRoles)++-- | The path prefix for filtering the results. For example, the prefix+-- @\/application_abc\/component_xyz\/@ gets all roles whose path starts+-- with @\/application_abc\/component_xyz\/@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all roles. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+listRoles_pathPrefix :: Lens.Lens' ListRoles (Prelude.Maybe Prelude.Text)+listRoles_pathPrefix = Lens.lens (\ListRoles' {pathPrefix} -> pathPrefix) (\s@ListRoles' {} a -> s {pathPrefix = a} :: ListRoles)++instance Core.AWSPager ListRoles where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listRolesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listRolesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listRoles_marker+ Lens..~ rs+ Lens.^? listRolesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListRoles where+ type AWSResponse ListRoles = ListRolesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListRolesResult"+ ( \s h x ->+ ListRolesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Roles"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListRoles where+ hashWithSalt _salt ListRoles' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix++instance Prelude.NFData ListRoles where+ rnf ListRoles' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix++instance Data.ToHeaders ListRoles where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListRoles where+ toPath = Prelude.const "/"++instance Data.ToQuery ListRoles where+ toQuery ListRoles' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListRoles" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix+ ]++-- | Contains the response to a successful ListRoles request.+--+-- /See:/ 'newListRolesResponse' smart constructor.+data ListRolesResponse = ListRolesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of roles.+ roles :: [Role]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRolesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listRolesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listRolesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listRolesResponse_httpStatus' - The response's http status code.+--+-- 'roles', 'listRolesResponse_roles' - A list of roles.+newListRolesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRolesResponse+newListRolesResponse pHttpStatus_ =+ ListRolesResponse'+ { isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ roles = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listRolesResponse_isTruncated :: Lens.Lens' ListRolesResponse (Prelude.Maybe Prelude.Bool)+listRolesResponse_isTruncated = Lens.lens (\ListRolesResponse' {isTruncated} -> isTruncated) (\s@ListRolesResponse' {} a -> s {isTruncated = a} :: ListRolesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listRolesResponse_marker :: Lens.Lens' ListRolesResponse (Prelude.Maybe Prelude.Text)+listRolesResponse_marker = Lens.lens (\ListRolesResponse' {marker} -> marker) (\s@ListRolesResponse' {} a -> s {marker = a} :: ListRolesResponse)++-- | The response's http status code.+listRolesResponse_httpStatus :: Lens.Lens' ListRolesResponse Prelude.Int+listRolesResponse_httpStatus = Lens.lens (\ListRolesResponse' {httpStatus} -> httpStatus) (\s@ListRolesResponse' {} a -> s {httpStatus = a} :: ListRolesResponse)++-- | A list of roles.+listRolesResponse_roles :: Lens.Lens' ListRolesResponse [Role]+listRolesResponse_roles = Lens.lens (\ListRolesResponse' {roles} -> roles) (\s@ListRolesResponse' {} a -> s {roles = a} :: ListRolesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListRolesResponse where+ rnf ListRolesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf roles
+ gen/Amazonka/IAM/ListSAMLProviderTags.hs view
@@ -0,0 +1,306 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListSAMLProviderTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified Security Assertion+-- Markup Language (SAML) identity provider. The returned list of tags is+-- sorted by tag key. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based federation>.+--+-- For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.ListSAMLProviderTags+ ( -- * Creating a Request+ ListSAMLProviderTags (..),+ newListSAMLProviderTags,++ -- * Request Lenses+ listSAMLProviderTags_marker,+ listSAMLProviderTags_maxItems,+ listSAMLProviderTags_sAMLProviderArn,++ -- * Destructuring the Response+ ListSAMLProviderTagsResponse (..),+ newListSAMLProviderTagsResponse,++ -- * Response Lenses+ listSAMLProviderTagsResponse_isTruncated,+ listSAMLProviderTagsResponse_marker,+ listSAMLProviderTagsResponse_httpStatus,+ listSAMLProviderTagsResponse_tags,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSAMLProviderTags' smart constructor.+data ListSAMLProviderTags = ListSAMLProviderTags'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The ARN of the Security Assertion Markup Language (SAML) identity+ -- provider whose tags you want to see.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ sAMLProviderArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSAMLProviderTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listSAMLProviderTags_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listSAMLProviderTags_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'sAMLProviderArn', 'listSAMLProviderTags_sAMLProviderArn' - The ARN of the Security Assertion Markup Language (SAML) identity+-- provider whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListSAMLProviderTags ::+ -- | 'sAMLProviderArn'+ Prelude.Text ->+ ListSAMLProviderTags+newListSAMLProviderTags pSAMLProviderArn_ =+ ListSAMLProviderTags'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ sAMLProviderArn = pSAMLProviderArn_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listSAMLProviderTags_marker :: Lens.Lens' ListSAMLProviderTags (Prelude.Maybe Prelude.Text)+listSAMLProviderTags_marker = Lens.lens (\ListSAMLProviderTags' {marker} -> marker) (\s@ListSAMLProviderTags' {} a -> s {marker = a} :: ListSAMLProviderTags)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listSAMLProviderTags_maxItems :: Lens.Lens' ListSAMLProviderTags (Prelude.Maybe Prelude.Natural)+listSAMLProviderTags_maxItems = Lens.lens (\ListSAMLProviderTags' {maxItems} -> maxItems) (\s@ListSAMLProviderTags' {} a -> s {maxItems = a} :: ListSAMLProviderTags)++-- | The ARN of the Security Assertion Markup Language (SAML) identity+-- provider whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listSAMLProviderTags_sAMLProviderArn :: Lens.Lens' ListSAMLProviderTags Prelude.Text+listSAMLProviderTags_sAMLProviderArn = Lens.lens (\ListSAMLProviderTags' {sAMLProviderArn} -> sAMLProviderArn) (\s@ListSAMLProviderTags' {} a -> s {sAMLProviderArn = a} :: ListSAMLProviderTags)++instance Core.AWSRequest ListSAMLProviderTags where+ type+ AWSResponse ListSAMLProviderTags =+ ListSAMLProviderTagsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListSAMLProviderTagsResult"+ ( \s h x ->+ ListSAMLProviderTagsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListSAMLProviderTags where+ hashWithSalt _salt ListSAMLProviderTags' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` sAMLProviderArn++instance Prelude.NFData ListSAMLProviderTags where+ rnf ListSAMLProviderTags' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf sAMLProviderArn++instance Data.ToHeaders ListSAMLProviderTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListSAMLProviderTags where+ toPath = Prelude.const "/"++instance Data.ToQuery ListSAMLProviderTags where+ toQuery ListSAMLProviderTags' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListSAMLProviderTags" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "SAMLProviderArn" Data.=: sAMLProviderArn+ ]++-- | /See:/ 'newListSAMLProviderTagsResponse' smart constructor.+data ListSAMLProviderTagsResponse = ListSAMLProviderTagsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of tags that are currently attached to the Security Assertion+ -- Markup Language (SAML) identity provider. Each tag consists of a key+ -- name and an associated value. If no tags are attached to the specified+ -- resource, the response contains an empty list.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSAMLProviderTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listSAMLProviderTagsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listSAMLProviderTagsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listSAMLProviderTagsResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listSAMLProviderTagsResponse_tags' - The list of tags that are currently attached to the Security Assertion+-- Markup Language (SAML) identity provider. Each tag consists of a key+-- name and an associated value. If no tags are attached to the specified+-- resource, the response contains an empty list.+newListSAMLProviderTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSAMLProviderTagsResponse+newListSAMLProviderTagsResponse pHttpStatus_ =+ ListSAMLProviderTagsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ tags = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listSAMLProviderTagsResponse_isTruncated :: Lens.Lens' ListSAMLProviderTagsResponse (Prelude.Maybe Prelude.Bool)+listSAMLProviderTagsResponse_isTruncated = Lens.lens (\ListSAMLProviderTagsResponse' {isTruncated} -> isTruncated) (\s@ListSAMLProviderTagsResponse' {} a -> s {isTruncated = a} :: ListSAMLProviderTagsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listSAMLProviderTagsResponse_marker :: Lens.Lens' ListSAMLProviderTagsResponse (Prelude.Maybe Prelude.Text)+listSAMLProviderTagsResponse_marker = Lens.lens (\ListSAMLProviderTagsResponse' {marker} -> marker) (\s@ListSAMLProviderTagsResponse' {} a -> s {marker = a} :: ListSAMLProviderTagsResponse)++-- | The response's http status code.+listSAMLProviderTagsResponse_httpStatus :: Lens.Lens' ListSAMLProviderTagsResponse Prelude.Int+listSAMLProviderTagsResponse_httpStatus = Lens.lens (\ListSAMLProviderTagsResponse' {httpStatus} -> httpStatus) (\s@ListSAMLProviderTagsResponse' {} a -> s {httpStatus = a} :: ListSAMLProviderTagsResponse)++-- | The list of tags that are currently attached to the Security Assertion+-- Markup Language (SAML) identity provider. Each tag consists of a key+-- name and an associated value. If no tags are attached to the specified+-- resource, the response contains an empty list.+listSAMLProviderTagsResponse_tags :: Lens.Lens' ListSAMLProviderTagsResponse [Tag]+listSAMLProviderTagsResponse_tags = Lens.lens (\ListSAMLProviderTagsResponse' {tags} -> tags) (\s@ListSAMLProviderTagsResponse' {} a -> s {tags = a} :: ListSAMLProviderTagsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListSAMLProviderTagsResponse where+ rnf ListSAMLProviderTagsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/ListSAMLProviders.hs view
@@ -0,0 +1,158 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListSAMLProviders+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the SAML provider resource objects defined in IAM in the account.+-- IAM resource-listing operations return a subset of the available+-- attributes for the resource. For example, this operation does not return+-- tags, even though they are an attribute of the returned object. To view+-- all of the information for a SAML provider, see GetSAMLProvider.+--+-- This operation requires+-- <https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4>.+module Amazonka.IAM.ListSAMLProviders+ ( -- * Creating a Request+ ListSAMLProviders (..),+ newListSAMLProviders,++ -- * Destructuring the Response+ ListSAMLProvidersResponse (..),+ newListSAMLProvidersResponse,++ -- * Response Lenses+ listSAMLProvidersResponse_sAMLProviderList,+ listSAMLProvidersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSAMLProviders' smart constructor.+data ListSAMLProviders = ListSAMLProviders'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSAMLProviders' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newListSAMLProviders ::+ ListSAMLProviders+newListSAMLProviders = ListSAMLProviders'++instance Core.AWSRequest ListSAMLProviders where+ type+ AWSResponse ListSAMLProviders =+ ListSAMLProvidersResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListSAMLProvidersResult"+ ( \s h x ->+ ListSAMLProvidersResponse'+ Prelude.<$> ( x+ Data..@? "SAMLProviderList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSAMLProviders where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData ListSAMLProviders where+ rnf _ = ()++instance Data.ToHeaders ListSAMLProviders where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListSAMLProviders where+ toPath = Prelude.const "/"++instance Data.ToQuery ListSAMLProviders where+ toQuery =+ Prelude.const+ ( Prelude.mconcat+ [ "Action"+ Data.=: ("ListSAMLProviders" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString)+ ]+ )++-- | Contains the response to a successful ListSAMLProviders request.+--+-- /See:/ 'newListSAMLProvidersResponse' smart constructor.+data ListSAMLProvidersResponse = ListSAMLProvidersResponse'+ { -- | The list of SAML provider resource objects defined in IAM for this+ -- Amazon Web Services account.+ sAMLProviderList :: Prelude.Maybe [SAMLProviderListEntry],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSAMLProvidersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sAMLProviderList', 'listSAMLProvidersResponse_sAMLProviderList' - The list of SAML provider resource objects defined in IAM for this+-- Amazon Web Services account.+--+-- 'httpStatus', 'listSAMLProvidersResponse_httpStatus' - The response's http status code.+newListSAMLProvidersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSAMLProvidersResponse+newListSAMLProvidersResponse pHttpStatus_ =+ ListSAMLProvidersResponse'+ { sAMLProviderList =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of SAML provider resource objects defined in IAM for this+-- Amazon Web Services account.+listSAMLProvidersResponse_sAMLProviderList :: Lens.Lens' ListSAMLProvidersResponse (Prelude.Maybe [SAMLProviderListEntry])+listSAMLProvidersResponse_sAMLProviderList = Lens.lens (\ListSAMLProvidersResponse' {sAMLProviderList} -> sAMLProviderList) (\s@ListSAMLProvidersResponse' {} a -> s {sAMLProviderList = a} :: ListSAMLProvidersResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSAMLProvidersResponse_httpStatus :: Lens.Lens' ListSAMLProvidersResponse Prelude.Int+listSAMLProvidersResponse_httpStatus = Lens.lens (\ListSAMLProvidersResponse' {httpStatus} -> httpStatus) (\s@ListSAMLProvidersResponse' {} a -> s {httpStatus = a} :: ListSAMLProvidersResponse)++instance Prelude.NFData ListSAMLProvidersResponse where+ rnf ListSAMLProvidersResponse' {..} =+ Prelude.rnf sAMLProviderList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListSSHPublicKeys.hs view
@@ -0,0 +1,328 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListSSHPublicKeys+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about the SSH public keys associated with the+-- specified IAM user. If none exists, the operation returns an empty list.+--+-- The SSH public keys returned by this operation are used only for+-- authenticating the IAM user to an CodeCommit repository. For more+-- information about using SSH keys to authenticate to an CodeCommit+-- repository, see+-- <https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up CodeCommit for SSH connections>+-- in the /CodeCommit User Guide/.+--+-- Although each user is limited to a small number of keys, you can still+-- paginate the results using the @MaxItems@ and @Marker@ parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListSSHPublicKeys+ ( -- * Creating a Request+ ListSSHPublicKeys (..),+ newListSSHPublicKeys,++ -- * Request Lenses+ listSSHPublicKeys_marker,+ listSSHPublicKeys_maxItems,+ listSSHPublicKeys_userName,++ -- * Destructuring the Response+ ListSSHPublicKeysResponse (..),+ newListSSHPublicKeysResponse,++ -- * Response Lenses+ listSSHPublicKeysResponse_isTruncated,+ listSSHPublicKeysResponse_marker,+ listSSHPublicKeysResponse_sSHPublicKeys,+ listSSHPublicKeysResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSSHPublicKeys' smart constructor.+data ListSSHPublicKeys = ListSSHPublicKeys'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the IAM user to list SSH public keys for. If none is+ -- specified, the @UserName@ field is determined implicitly based on the+ -- Amazon Web Services access key used to sign the request.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSSHPublicKeys' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listSSHPublicKeys_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listSSHPublicKeys_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'userName', 'listSSHPublicKeys_userName' - The name of the IAM user to list SSH public keys for. If none is+-- specified, the @UserName@ field is determined implicitly based on the+-- Amazon Web Services access key used to sign the request.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListSSHPublicKeys ::+ ListSSHPublicKeys+newListSSHPublicKeys =+ ListSSHPublicKeys'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ userName = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listSSHPublicKeys_marker :: Lens.Lens' ListSSHPublicKeys (Prelude.Maybe Prelude.Text)+listSSHPublicKeys_marker = Lens.lens (\ListSSHPublicKeys' {marker} -> marker) (\s@ListSSHPublicKeys' {} a -> s {marker = a} :: ListSSHPublicKeys)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listSSHPublicKeys_maxItems :: Lens.Lens' ListSSHPublicKeys (Prelude.Maybe Prelude.Natural)+listSSHPublicKeys_maxItems = Lens.lens (\ListSSHPublicKeys' {maxItems} -> maxItems) (\s@ListSSHPublicKeys' {} a -> s {maxItems = a} :: ListSSHPublicKeys)++-- | The name of the IAM user to list SSH public keys for. If none is+-- specified, the @UserName@ field is determined implicitly based on the+-- Amazon Web Services access key used to sign the request.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listSSHPublicKeys_userName :: Lens.Lens' ListSSHPublicKeys (Prelude.Maybe Prelude.Text)+listSSHPublicKeys_userName = Lens.lens (\ListSSHPublicKeys' {userName} -> userName) (\s@ListSSHPublicKeys' {} a -> s {userName = a} :: ListSSHPublicKeys)++instance Core.AWSPager ListSSHPublicKeys where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listSSHPublicKeysResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listSSHPublicKeysResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listSSHPublicKeys_marker+ Lens..~ rs+ Lens.^? listSSHPublicKeysResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListSSHPublicKeys where+ type+ AWSResponse ListSSHPublicKeys =+ ListSSHPublicKeysResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListSSHPublicKeysResult"+ ( \s h x ->+ ListSSHPublicKeysResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> ( x+ Data..@? "SSHPublicKeys"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSSHPublicKeys where+ hashWithSalt _salt ListSSHPublicKeys' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` userName++instance Prelude.NFData ListSSHPublicKeys where+ rnf ListSSHPublicKeys' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders ListSSHPublicKeys where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListSSHPublicKeys where+ toPath = Prelude.const "/"++instance Data.ToQuery ListSSHPublicKeys where+ toQuery ListSSHPublicKeys' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListSSHPublicKeys" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful ListSSHPublicKeys request.+--+-- /See:/ 'newListSSHPublicKeysResponse' smart constructor.+data ListSSHPublicKeysResponse = ListSSHPublicKeysResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | A list of the SSH public keys assigned to IAM user.+ sSHPublicKeys :: Prelude.Maybe [SSHPublicKeyMetadata],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSSHPublicKeysResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listSSHPublicKeysResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listSSHPublicKeysResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'sSHPublicKeys', 'listSSHPublicKeysResponse_sSHPublicKeys' - A list of the SSH public keys assigned to IAM user.+--+-- 'httpStatus', 'listSSHPublicKeysResponse_httpStatus' - The response's http status code.+newListSSHPublicKeysResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSSHPublicKeysResponse+newListSSHPublicKeysResponse pHttpStatus_ =+ ListSSHPublicKeysResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ sSHPublicKeys = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listSSHPublicKeysResponse_isTruncated :: Lens.Lens' ListSSHPublicKeysResponse (Prelude.Maybe Prelude.Bool)+listSSHPublicKeysResponse_isTruncated = Lens.lens (\ListSSHPublicKeysResponse' {isTruncated} -> isTruncated) (\s@ListSSHPublicKeysResponse' {} a -> s {isTruncated = a} :: ListSSHPublicKeysResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listSSHPublicKeysResponse_marker :: Lens.Lens' ListSSHPublicKeysResponse (Prelude.Maybe Prelude.Text)+listSSHPublicKeysResponse_marker = Lens.lens (\ListSSHPublicKeysResponse' {marker} -> marker) (\s@ListSSHPublicKeysResponse' {} a -> s {marker = a} :: ListSSHPublicKeysResponse)++-- | A list of the SSH public keys assigned to IAM user.+listSSHPublicKeysResponse_sSHPublicKeys :: Lens.Lens' ListSSHPublicKeysResponse (Prelude.Maybe [SSHPublicKeyMetadata])+listSSHPublicKeysResponse_sSHPublicKeys = Lens.lens (\ListSSHPublicKeysResponse' {sSHPublicKeys} -> sSHPublicKeys) (\s@ListSSHPublicKeysResponse' {} a -> s {sSHPublicKeys = a} :: ListSSHPublicKeysResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSSHPublicKeysResponse_httpStatus :: Lens.Lens' ListSSHPublicKeysResponse Prelude.Int+listSSHPublicKeysResponse_httpStatus = Lens.lens (\ListSSHPublicKeysResponse' {httpStatus} -> httpStatus) (\s@ListSSHPublicKeysResponse' {} a -> s {httpStatus = a} :: ListSSHPublicKeysResponse)++instance Prelude.NFData ListSSHPublicKeysResponse where+ rnf ListSSHPublicKeysResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf sSHPublicKeys+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListServerCertificateTags.hs view
@@ -0,0 +1,312 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListServerCertificateTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified IAM server+-- certificate. The returned list of tags is sorted by tag key. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- For certificates in a Region supported by Certificate Manager (ACM), we+-- recommend that you don\'t use IAM server certificates. Instead, use ACM+-- to provision, manage, and deploy your server certificates. For more+-- information about IAM server certificates,+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with server certificates>+-- in the /IAM User Guide/.+module Amazonka.IAM.ListServerCertificateTags+ ( -- * Creating a Request+ ListServerCertificateTags (..),+ newListServerCertificateTags,++ -- * Request Lenses+ listServerCertificateTags_marker,+ listServerCertificateTags_maxItems,+ listServerCertificateTags_serverCertificateName,++ -- * Destructuring the Response+ ListServerCertificateTagsResponse (..),+ newListServerCertificateTagsResponse,++ -- * Response Lenses+ listServerCertificateTagsResponse_isTruncated,+ listServerCertificateTagsResponse_marker,+ listServerCertificateTagsResponse_httpStatus,+ listServerCertificateTagsResponse_tags,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListServerCertificateTags' smart constructor.+data ListServerCertificateTags = ListServerCertificateTags'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the IAM server certificate whose tags you want to see.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serverCertificateName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListServerCertificateTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listServerCertificateTags_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listServerCertificateTags_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'serverCertificateName', 'listServerCertificateTags_serverCertificateName' - The name of the IAM server certificate whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListServerCertificateTags ::+ -- | 'serverCertificateName'+ Prelude.Text ->+ ListServerCertificateTags+newListServerCertificateTags pServerCertificateName_ =+ ListServerCertificateTags'+ { marker =+ Prelude.Nothing,+ maxItems = Prelude.Nothing,+ serverCertificateName = pServerCertificateName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listServerCertificateTags_marker :: Lens.Lens' ListServerCertificateTags (Prelude.Maybe Prelude.Text)+listServerCertificateTags_marker = Lens.lens (\ListServerCertificateTags' {marker} -> marker) (\s@ListServerCertificateTags' {} a -> s {marker = a} :: ListServerCertificateTags)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listServerCertificateTags_maxItems :: Lens.Lens' ListServerCertificateTags (Prelude.Maybe Prelude.Natural)+listServerCertificateTags_maxItems = Lens.lens (\ListServerCertificateTags' {maxItems} -> maxItems) (\s@ListServerCertificateTags' {} a -> s {maxItems = a} :: ListServerCertificateTags)++-- | The name of the IAM server certificate whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listServerCertificateTags_serverCertificateName :: Lens.Lens' ListServerCertificateTags Prelude.Text+listServerCertificateTags_serverCertificateName = Lens.lens (\ListServerCertificateTags' {serverCertificateName} -> serverCertificateName) (\s@ListServerCertificateTags' {} a -> s {serverCertificateName = a} :: ListServerCertificateTags)++instance Core.AWSRequest ListServerCertificateTags where+ type+ AWSResponse ListServerCertificateTags =+ ListServerCertificateTagsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListServerCertificateTagsResult"+ ( \s h x ->+ ListServerCertificateTagsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListServerCertificateTags where+ hashWithSalt _salt ListServerCertificateTags' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` serverCertificateName++instance Prelude.NFData ListServerCertificateTags where+ rnf ListServerCertificateTags' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf serverCertificateName++instance Data.ToHeaders ListServerCertificateTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListServerCertificateTags where+ toPath = Prelude.const "/"++instance Data.ToQuery ListServerCertificateTags where+ toQuery ListServerCertificateTags' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListServerCertificateTags" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "ServerCertificateName"+ Data.=: serverCertificateName+ ]++-- | /See:/ 'newListServerCertificateTagsResponse' smart constructor.+data ListServerCertificateTagsResponse = ListServerCertificateTagsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of tags that are currently attached to the IAM server+ -- certificate. Each tag consists of a key name and an associated value. If+ -- no tags are attached to the specified resource, the response contains an+ -- empty list.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListServerCertificateTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listServerCertificateTagsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listServerCertificateTagsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listServerCertificateTagsResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listServerCertificateTagsResponse_tags' - The list of tags that are currently attached to the IAM server+-- certificate. Each tag consists of a key name and an associated value. If+-- no tags are attached to the specified resource, the response contains an+-- empty list.+newListServerCertificateTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListServerCertificateTagsResponse+newListServerCertificateTagsResponse pHttpStatus_ =+ ListServerCertificateTagsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ tags = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listServerCertificateTagsResponse_isTruncated :: Lens.Lens' ListServerCertificateTagsResponse (Prelude.Maybe Prelude.Bool)+listServerCertificateTagsResponse_isTruncated = Lens.lens (\ListServerCertificateTagsResponse' {isTruncated} -> isTruncated) (\s@ListServerCertificateTagsResponse' {} a -> s {isTruncated = a} :: ListServerCertificateTagsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listServerCertificateTagsResponse_marker :: Lens.Lens' ListServerCertificateTagsResponse (Prelude.Maybe Prelude.Text)+listServerCertificateTagsResponse_marker = Lens.lens (\ListServerCertificateTagsResponse' {marker} -> marker) (\s@ListServerCertificateTagsResponse' {} a -> s {marker = a} :: ListServerCertificateTagsResponse)++-- | The response's http status code.+listServerCertificateTagsResponse_httpStatus :: Lens.Lens' ListServerCertificateTagsResponse Prelude.Int+listServerCertificateTagsResponse_httpStatus = Lens.lens (\ListServerCertificateTagsResponse' {httpStatus} -> httpStatus) (\s@ListServerCertificateTagsResponse' {} a -> s {httpStatus = a} :: ListServerCertificateTagsResponse)++-- | The list of tags that are currently attached to the IAM server+-- certificate. Each tag consists of a key name and an associated value. If+-- no tags are attached to the specified resource, the response contains an+-- empty list.+listServerCertificateTagsResponse_tags :: Lens.Lens' ListServerCertificateTagsResponse [Tag]+listServerCertificateTagsResponse_tags = Lens.lens (\ListServerCertificateTagsResponse' {tags} -> tags) (\s@ListServerCertificateTagsResponse' {} a -> s {tags = a} :: ListServerCertificateTagsResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ ListServerCertificateTagsResponse+ where+ rnf ListServerCertificateTagsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/ListServerCertificates.hs view
@@ -0,0 +1,349 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListServerCertificates+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the server certificates stored in IAM that have the specified path+-- prefix. If none exist, the operation returns an empty list.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- For more information about working with server certificates, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with server certificates>+-- in the /IAM User Guide/. This topic also includes a list of Amazon Web+-- Services services that can use the server certificates that you manage+-- with IAM.+--+-- IAM resource-listing operations return a subset of the available+-- attributes for the resource. For example, this operation does not return+-- tags, even though they are an attribute of the returned object. To view+-- all of the information for a servercertificate, see+-- GetServerCertificate.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListServerCertificates+ ( -- * Creating a Request+ ListServerCertificates (..),+ newListServerCertificates,++ -- * Request Lenses+ listServerCertificates_marker,+ listServerCertificates_maxItems,+ listServerCertificates_pathPrefix,++ -- * Destructuring the Response+ ListServerCertificatesResponse (..),+ newListServerCertificatesResponse,++ -- * Response Lenses+ listServerCertificatesResponse_isTruncated,+ listServerCertificatesResponse_marker,+ listServerCertificatesResponse_httpStatus,+ listServerCertificatesResponse_serverCertificateMetadataList,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListServerCertificates' smart constructor.+data ListServerCertificates = ListServerCertificates'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. For example:+ -- @\/company\/servercerts@ would get all server certificates for which the+ -- path starts with @\/company\/servercerts@.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/), listing all server certificates. This parameter allows+ -- (through its <http://wikipedia.org/wiki/regex regex pattern>) a string+ -- of characters consisting of either a forward slash (\/) by itself or a+ -- string that must begin and end with forward slashes. In addition, it can+ -- contain any ASCII character from the ! (@\\u0021@) through the DEL+ -- character (@\\u007F@), including most punctuation characters, digits,+ -- and upper and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListServerCertificates' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listServerCertificates_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listServerCertificates_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listServerCertificates_pathPrefix' - The path prefix for filtering the results. For example:+-- @\/company\/servercerts@ would get all server certificates for which the+-- path starts with @\/company\/servercerts@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all server certificates. This parameter allows+-- (through its <http://wikipedia.org/wiki/regex regex pattern>) a string+-- of characters consisting of either a forward slash (\/) by itself or a+-- string that must begin and end with forward slashes. In addition, it can+-- contain any ASCII character from the ! (@\\u0021@) through the DEL+-- character (@\\u007F@), including most punctuation characters, digits,+-- and upper and lowercased letters.+newListServerCertificates ::+ ListServerCertificates+newListServerCertificates =+ ListServerCertificates'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listServerCertificates_marker :: Lens.Lens' ListServerCertificates (Prelude.Maybe Prelude.Text)+listServerCertificates_marker = Lens.lens (\ListServerCertificates' {marker} -> marker) (\s@ListServerCertificates' {} a -> s {marker = a} :: ListServerCertificates)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listServerCertificates_maxItems :: Lens.Lens' ListServerCertificates (Prelude.Maybe Prelude.Natural)+listServerCertificates_maxItems = Lens.lens (\ListServerCertificates' {maxItems} -> maxItems) (\s@ListServerCertificates' {} a -> s {maxItems = a} :: ListServerCertificates)++-- | The path prefix for filtering the results. For example:+-- @\/company\/servercerts@ would get all server certificates for which the+-- path starts with @\/company\/servercerts@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all server certificates. This parameter allows+-- (through its <http://wikipedia.org/wiki/regex regex pattern>) a string+-- of characters consisting of either a forward slash (\/) by itself or a+-- string that must begin and end with forward slashes. In addition, it can+-- contain any ASCII character from the ! (@\\u0021@) through the DEL+-- character (@\\u007F@), including most punctuation characters, digits,+-- and upper and lowercased letters.+listServerCertificates_pathPrefix :: Lens.Lens' ListServerCertificates (Prelude.Maybe Prelude.Text)+listServerCertificates_pathPrefix = Lens.lens (\ListServerCertificates' {pathPrefix} -> pathPrefix) (\s@ListServerCertificates' {} a -> s {pathPrefix = a} :: ListServerCertificates)++instance Core.AWSPager ListServerCertificates where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listServerCertificatesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listServerCertificatesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listServerCertificates_marker+ Lens..~ rs+ Lens.^? listServerCertificatesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListServerCertificates where+ type+ AWSResponse ListServerCertificates =+ ListServerCertificatesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListServerCertificatesResult"+ ( \s h x ->+ ListServerCertificatesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "ServerCertificateMetadataList"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListServerCertificates where+ hashWithSalt _salt ListServerCertificates' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix++instance Prelude.NFData ListServerCertificates where+ rnf ListServerCertificates' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix++instance Data.ToHeaders ListServerCertificates where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListServerCertificates where+ toPath = Prelude.const "/"++instance Data.ToQuery ListServerCertificates where+ toQuery ListServerCertificates' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListServerCertificates" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix+ ]++-- | Contains the response to a successful ListServerCertificates request.+--+-- /See:/ 'newListServerCertificatesResponse' smart constructor.+data ListServerCertificatesResponse = ListServerCertificatesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of server certificates.+ serverCertificateMetadataList :: [ServerCertificateMetadata]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListServerCertificatesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listServerCertificatesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listServerCertificatesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listServerCertificatesResponse_httpStatus' - The response's http status code.+--+-- 'serverCertificateMetadataList', 'listServerCertificatesResponse_serverCertificateMetadataList' - A list of server certificates.+newListServerCertificatesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListServerCertificatesResponse+newListServerCertificatesResponse pHttpStatus_ =+ ListServerCertificatesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ serverCertificateMetadataList =+ Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listServerCertificatesResponse_isTruncated :: Lens.Lens' ListServerCertificatesResponse (Prelude.Maybe Prelude.Bool)+listServerCertificatesResponse_isTruncated = Lens.lens (\ListServerCertificatesResponse' {isTruncated} -> isTruncated) (\s@ListServerCertificatesResponse' {} a -> s {isTruncated = a} :: ListServerCertificatesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listServerCertificatesResponse_marker :: Lens.Lens' ListServerCertificatesResponse (Prelude.Maybe Prelude.Text)+listServerCertificatesResponse_marker = Lens.lens (\ListServerCertificatesResponse' {marker} -> marker) (\s@ListServerCertificatesResponse' {} a -> s {marker = a} :: ListServerCertificatesResponse)++-- | The response's http status code.+listServerCertificatesResponse_httpStatus :: Lens.Lens' ListServerCertificatesResponse Prelude.Int+listServerCertificatesResponse_httpStatus = Lens.lens (\ListServerCertificatesResponse' {httpStatus} -> httpStatus) (\s@ListServerCertificatesResponse' {} a -> s {httpStatus = a} :: ListServerCertificatesResponse)++-- | A list of server certificates.+listServerCertificatesResponse_serverCertificateMetadataList :: Lens.Lens' ListServerCertificatesResponse [ServerCertificateMetadata]+listServerCertificatesResponse_serverCertificateMetadataList = Lens.lens (\ListServerCertificatesResponse' {serverCertificateMetadataList} -> serverCertificateMetadataList) (\s@ListServerCertificatesResponse' {} a -> s {serverCertificateMetadataList = a} :: ListServerCertificatesResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ ListServerCertificatesResponse+ where+ rnf ListServerCertificatesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf serverCertificateMetadataList
+ gen/Amazonka/IAM/ListServiceSpecificCredentials.hs view
@@ -0,0 +1,234 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListServiceSpecificCredentials+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about the service-specific credentials associated+-- with the specified IAM user. If none exists, the operation returns an+-- empty list. The service-specific credentials returned by this operation+-- are used only for authenticating the IAM user to a specific service. For+-- more information about using service-specific credentials to+-- authenticate to an Amazon Web Services service, see+-- <https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html Set up service-specific credentials>+-- in the CodeCommit User Guide.+module Amazonka.IAM.ListServiceSpecificCredentials+ ( -- * Creating a Request+ ListServiceSpecificCredentials (..),+ newListServiceSpecificCredentials,++ -- * Request Lenses+ listServiceSpecificCredentials_serviceName,+ listServiceSpecificCredentials_userName,++ -- * Destructuring the Response+ ListServiceSpecificCredentialsResponse (..),+ newListServiceSpecificCredentialsResponse,++ -- * Response Lenses+ listServiceSpecificCredentialsResponse_serviceSpecificCredentials,+ listServiceSpecificCredentialsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListServiceSpecificCredentials' smart constructor.+data ListServiceSpecificCredentials = ListServiceSpecificCredentials'+ { -- | Filters the returned results to only those for the specified Amazon Web+ -- Services service. If not specified, then Amazon Web Services returns+ -- service-specific credentials for all services.+ serviceName :: Prelude.Maybe Prelude.Text,+ -- | The name of the user whose service-specific credentials you want+ -- information about. If this value is not specified, then the operation+ -- assumes the user whose credentials are used to call the operation.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListServiceSpecificCredentials' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serviceName', 'listServiceSpecificCredentials_serviceName' - Filters the returned results to only those for the specified Amazon Web+-- Services service. If not specified, then Amazon Web Services returns+-- service-specific credentials for all services.+--+-- 'userName', 'listServiceSpecificCredentials_userName' - The name of the user whose service-specific credentials you want+-- information about. If this value is not specified, then the operation+-- assumes the user whose credentials are used to call the operation.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListServiceSpecificCredentials ::+ ListServiceSpecificCredentials+newListServiceSpecificCredentials =+ ListServiceSpecificCredentials'+ { serviceName =+ Prelude.Nothing,+ userName = Prelude.Nothing+ }++-- | Filters the returned results to only those for the specified Amazon Web+-- Services service. If not specified, then Amazon Web Services returns+-- service-specific credentials for all services.+listServiceSpecificCredentials_serviceName :: Lens.Lens' ListServiceSpecificCredentials (Prelude.Maybe Prelude.Text)+listServiceSpecificCredentials_serviceName = Lens.lens (\ListServiceSpecificCredentials' {serviceName} -> serviceName) (\s@ListServiceSpecificCredentials' {} a -> s {serviceName = a} :: ListServiceSpecificCredentials)++-- | The name of the user whose service-specific credentials you want+-- information about. If this value is not specified, then the operation+-- assumes the user whose credentials are used to call the operation.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listServiceSpecificCredentials_userName :: Lens.Lens' ListServiceSpecificCredentials (Prelude.Maybe Prelude.Text)+listServiceSpecificCredentials_userName = Lens.lens (\ListServiceSpecificCredentials' {userName} -> userName) (\s@ListServiceSpecificCredentials' {} a -> s {userName = a} :: ListServiceSpecificCredentials)++instance+ Core.AWSRequest+ ListServiceSpecificCredentials+ where+ type+ AWSResponse ListServiceSpecificCredentials =+ ListServiceSpecificCredentialsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListServiceSpecificCredentialsResult"+ ( \s h x ->+ ListServiceSpecificCredentialsResponse'+ Prelude.<$> ( x+ Data..@? "ServiceSpecificCredentials"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListServiceSpecificCredentials+ where+ hashWithSalt+ _salt+ ListServiceSpecificCredentials' {..} =+ _salt+ `Prelude.hashWithSalt` serviceName+ `Prelude.hashWithSalt` userName++instance+ Prelude.NFData+ ListServiceSpecificCredentials+ where+ rnf ListServiceSpecificCredentials' {..} =+ Prelude.rnf serviceName+ `Prelude.seq` Prelude.rnf userName++instance+ Data.ToHeaders+ ListServiceSpecificCredentials+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListServiceSpecificCredentials where+ toPath = Prelude.const "/"++instance Data.ToQuery ListServiceSpecificCredentials where+ toQuery ListServiceSpecificCredentials' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ListServiceSpecificCredentials" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "ServiceName" Data.=: serviceName,+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newListServiceSpecificCredentialsResponse' smart constructor.+data ListServiceSpecificCredentialsResponse = ListServiceSpecificCredentialsResponse'+ { -- | A list of structures that each contain details about a service-specific+ -- credential.+ serviceSpecificCredentials :: Prelude.Maybe [ServiceSpecificCredentialMetadata],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListServiceSpecificCredentialsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serviceSpecificCredentials', 'listServiceSpecificCredentialsResponse_serviceSpecificCredentials' - A list of structures that each contain details about a service-specific+-- credential.+--+-- 'httpStatus', 'listServiceSpecificCredentialsResponse_httpStatus' - The response's http status code.+newListServiceSpecificCredentialsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListServiceSpecificCredentialsResponse+newListServiceSpecificCredentialsResponse+ pHttpStatus_ =+ ListServiceSpecificCredentialsResponse'+ { serviceSpecificCredentials =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of structures that each contain details about a service-specific+-- credential.+listServiceSpecificCredentialsResponse_serviceSpecificCredentials :: Lens.Lens' ListServiceSpecificCredentialsResponse (Prelude.Maybe [ServiceSpecificCredentialMetadata])+listServiceSpecificCredentialsResponse_serviceSpecificCredentials = Lens.lens (\ListServiceSpecificCredentialsResponse' {serviceSpecificCredentials} -> serviceSpecificCredentials) (\s@ListServiceSpecificCredentialsResponse' {} a -> s {serviceSpecificCredentials = a} :: ListServiceSpecificCredentialsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listServiceSpecificCredentialsResponse_httpStatus :: Lens.Lens' ListServiceSpecificCredentialsResponse Prelude.Int+listServiceSpecificCredentialsResponse_httpStatus = Lens.lens (\ListServiceSpecificCredentialsResponse' {httpStatus} -> httpStatus) (\s@ListServiceSpecificCredentialsResponse' {} a -> s {httpStatus = a} :: ListServiceSpecificCredentialsResponse)++instance+ Prelude.NFData+ ListServiceSpecificCredentialsResponse+ where+ rnf ListServiceSpecificCredentialsResponse' {..} =+ Prelude.rnf serviceSpecificCredentials+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ListSigningCertificates.hs view
@@ -0,0 +1,326 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListSigningCertificates+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about the signing certificates associated with the+-- specified IAM user. If none exists, the operation returns an empty list.+--+-- Although each user is limited to a small number of signing certificates,+-- you can still paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- If the @UserName@ field is not specified, the user name is determined+-- implicitly based on the Amazon Web Services access key ID used to sign+-- the request for this operation. This operation works for access keys+-- under the Amazon Web Services account. Consequently, you can use this+-- operation to manage Amazon Web Services account root user credentials+-- even if the Amazon Web Services account has no associated users.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListSigningCertificates+ ( -- * Creating a Request+ ListSigningCertificates (..),+ newListSigningCertificates,++ -- * Request Lenses+ listSigningCertificates_marker,+ listSigningCertificates_maxItems,+ listSigningCertificates_userName,++ -- * Destructuring the Response+ ListSigningCertificatesResponse (..),+ newListSigningCertificatesResponse,++ -- * Response Lenses+ listSigningCertificatesResponse_isTruncated,+ listSigningCertificatesResponse_marker,+ listSigningCertificatesResponse_httpStatus,+ listSigningCertificatesResponse_certificates,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSigningCertificates' smart constructor.+data ListSigningCertificates = ListSigningCertificates'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the IAM user whose signing certificates you want to examine.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSigningCertificates' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listSigningCertificates_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listSigningCertificates_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'userName', 'listSigningCertificates_userName' - The name of the IAM user whose signing certificates you want to examine.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListSigningCertificates ::+ ListSigningCertificates+newListSigningCertificates =+ ListSigningCertificates'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ userName = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listSigningCertificates_marker :: Lens.Lens' ListSigningCertificates (Prelude.Maybe Prelude.Text)+listSigningCertificates_marker = Lens.lens (\ListSigningCertificates' {marker} -> marker) (\s@ListSigningCertificates' {} a -> s {marker = a} :: ListSigningCertificates)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listSigningCertificates_maxItems :: Lens.Lens' ListSigningCertificates (Prelude.Maybe Prelude.Natural)+listSigningCertificates_maxItems = Lens.lens (\ListSigningCertificates' {maxItems} -> maxItems) (\s@ListSigningCertificates' {} a -> s {maxItems = a} :: ListSigningCertificates)++-- | The name of the IAM user whose signing certificates you want to examine.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listSigningCertificates_userName :: Lens.Lens' ListSigningCertificates (Prelude.Maybe Prelude.Text)+listSigningCertificates_userName = Lens.lens (\ListSigningCertificates' {userName} -> userName) (\s@ListSigningCertificates' {} a -> s {userName = a} :: ListSigningCertificates)++instance Core.AWSPager ListSigningCertificates where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listSigningCertificatesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listSigningCertificatesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listSigningCertificates_marker+ Lens..~ rs+ Lens.^? listSigningCertificatesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListSigningCertificates where+ type+ AWSResponse ListSigningCertificates =+ ListSigningCertificatesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListSigningCertificatesResult"+ ( \s h x ->+ ListSigningCertificatesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Certificates"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListSigningCertificates where+ hashWithSalt _salt ListSigningCertificates' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` userName++instance Prelude.NFData ListSigningCertificates where+ rnf ListSigningCertificates' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders ListSigningCertificates where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListSigningCertificates where+ toPath = Prelude.const "/"++instance Data.ToQuery ListSigningCertificates where+ toQuery ListSigningCertificates' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListSigningCertificates" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful ListSigningCertificates request.+--+-- /See:/ 'newListSigningCertificatesResponse' smart constructor.+data ListSigningCertificatesResponse = ListSigningCertificatesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of the user\'s signing certificate information.+ certificates :: [SigningCertificate]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSigningCertificatesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listSigningCertificatesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listSigningCertificatesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listSigningCertificatesResponse_httpStatus' - The response's http status code.+--+-- 'certificates', 'listSigningCertificatesResponse_certificates' - A list of the user\'s signing certificate information.+newListSigningCertificatesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSigningCertificatesResponse+newListSigningCertificatesResponse pHttpStatus_ =+ ListSigningCertificatesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ certificates = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listSigningCertificatesResponse_isTruncated :: Lens.Lens' ListSigningCertificatesResponse (Prelude.Maybe Prelude.Bool)+listSigningCertificatesResponse_isTruncated = Lens.lens (\ListSigningCertificatesResponse' {isTruncated} -> isTruncated) (\s@ListSigningCertificatesResponse' {} a -> s {isTruncated = a} :: ListSigningCertificatesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listSigningCertificatesResponse_marker :: Lens.Lens' ListSigningCertificatesResponse (Prelude.Maybe Prelude.Text)+listSigningCertificatesResponse_marker = Lens.lens (\ListSigningCertificatesResponse' {marker} -> marker) (\s@ListSigningCertificatesResponse' {} a -> s {marker = a} :: ListSigningCertificatesResponse)++-- | The response's http status code.+listSigningCertificatesResponse_httpStatus :: Lens.Lens' ListSigningCertificatesResponse Prelude.Int+listSigningCertificatesResponse_httpStatus = Lens.lens (\ListSigningCertificatesResponse' {httpStatus} -> httpStatus) (\s@ListSigningCertificatesResponse' {} a -> s {httpStatus = a} :: ListSigningCertificatesResponse)++-- | A list of the user\'s signing certificate information.+listSigningCertificatesResponse_certificates :: Lens.Lens' ListSigningCertificatesResponse [SigningCertificate]+listSigningCertificatesResponse_certificates = Lens.lens (\ListSigningCertificatesResponse' {certificates} -> certificates) (\s@ListSigningCertificatesResponse' {} a -> s {certificates = a} :: ListSigningCertificatesResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ ListSigningCertificatesResponse+ where+ rnf ListSigningCertificatesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf certificates
+ gen/Amazonka/IAM/ListUserPolicies.hs view
@@ -0,0 +1,324 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListUserPolicies+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the names of the inline policies embedded in the specified IAM+-- user.+--+-- An IAM user can also have managed policies attached to it. To list the+-- managed policies that are attached to a user, use+-- ListAttachedUserPolicies. For more information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters. If there are no inline policies embedded with the specified+-- user, the operation returns an empty list.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListUserPolicies+ ( -- * Creating a Request+ ListUserPolicies (..),+ newListUserPolicies,++ -- * Request Lenses+ listUserPolicies_marker,+ listUserPolicies_maxItems,+ listUserPolicies_userName,++ -- * Destructuring the Response+ ListUserPoliciesResponse (..),+ newListUserPoliciesResponse,++ -- * Response Lenses+ listUserPoliciesResponse_isTruncated,+ listUserPoliciesResponse_marker,+ listUserPoliciesResponse_httpStatus,+ listUserPoliciesResponse_policyNames,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListUserPolicies' smart constructor.+data ListUserPolicies = ListUserPolicies'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the user to list policies for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListUserPolicies' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listUserPolicies_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listUserPolicies_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'userName', 'listUserPolicies_userName' - The name of the user to list policies for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListUserPolicies ::+ -- | 'userName'+ Prelude.Text ->+ ListUserPolicies+newListUserPolicies pUserName_ =+ ListUserPolicies'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ userName = pUserName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listUserPolicies_marker :: Lens.Lens' ListUserPolicies (Prelude.Maybe Prelude.Text)+listUserPolicies_marker = Lens.lens (\ListUserPolicies' {marker} -> marker) (\s@ListUserPolicies' {} a -> s {marker = a} :: ListUserPolicies)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listUserPolicies_maxItems :: Lens.Lens' ListUserPolicies (Prelude.Maybe Prelude.Natural)+listUserPolicies_maxItems = Lens.lens (\ListUserPolicies' {maxItems} -> maxItems) (\s@ListUserPolicies' {} a -> s {maxItems = a} :: ListUserPolicies)++-- | The name of the user to list policies for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listUserPolicies_userName :: Lens.Lens' ListUserPolicies Prelude.Text+listUserPolicies_userName = Lens.lens (\ListUserPolicies' {userName} -> userName) (\s@ListUserPolicies' {} a -> s {userName = a} :: ListUserPolicies)++instance Core.AWSPager ListUserPolicies where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listUserPoliciesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listUserPoliciesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listUserPolicies_marker+ Lens..~ rs+ Lens.^? listUserPoliciesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListUserPolicies where+ type+ AWSResponse ListUserPolicies =+ ListUserPoliciesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListUserPoliciesResult"+ ( \s h x ->+ ListUserPoliciesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "PolicyNames"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListUserPolicies where+ hashWithSalt _salt ListUserPolicies' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` userName++instance Prelude.NFData ListUserPolicies where+ rnf ListUserPolicies' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders ListUserPolicies where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListUserPolicies where+ toPath = Prelude.const "/"++instance Data.ToQuery ListUserPolicies where+ toQuery ListUserPolicies' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListUserPolicies" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "UserName" Data.=: userName+ ]++-- | Contains the response to a successful ListUserPolicies request.+--+-- /See:/ 'newListUserPoliciesResponse' smart constructor.+data ListUserPoliciesResponse = ListUserPoliciesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of policy names.+ policyNames :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListUserPoliciesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listUserPoliciesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listUserPoliciesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listUserPoliciesResponse_httpStatus' - The response's http status code.+--+-- 'policyNames', 'listUserPoliciesResponse_policyNames' - A list of policy names.+newListUserPoliciesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListUserPoliciesResponse+newListUserPoliciesResponse pHttpStatus_ =+ ListUserPoliciesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ policyNames = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listUserPoliciesResponse_isTruncated :: Lens.Lens' ListUserPoliciesResponse (Prelude.Maybe Prelude.Bool)+listUserPoliciesResponse_isTruncated = Lens.lens (\ListUserPoliciesResponse' {isTruncated} -> isTruncated) (\s@ListUserPoliciesResponse' {} a -> s {isTruncated = a} :: ListUserPoliciesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listUserPoliciesResponse_marker :: Lens.Lens' ListUserPoliciesResponse (Prelude.Maybe Prelude.Text)+listUserPoliciesResponse_marker = Lens.lens (\ListUserPoliciesResponse' {marker} -> marker) (\s@ListUserPoliciesResponse' {} a -> s {marker = a} :: ListUserPoliciesResponse)++-- | The response's http status code.+listUserPoliciesResponse_httpStatus :: Lens.Lens' ListUserPoliciesResponse Prelude.Int+listUserPoliciesResponse_httpStatus = Lens.lens (\ListUserPoliciesResponse' {httpStatus} -> httpStatus) (\s@ListUserPoliciesResponse' {} a -> s {httpStatus = a} :: ListUserPoliciesResponse)++-- | A list of policy names.+listUserPoliciesResponse_policyNames :: Lens.Lens' ListUserPoliciesResponse [Prelude.Text]+listUserPoliciesResponse_policyNames = Lens.lens (\ListUserPoliciesResponse' {policyNames} -> policyNames) (\s@ListUserPoliciesResponse' {} a -> s {policyNames = a} :: ListUserPoliciesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListUserPoliciesResponse where+ rnf ListUserPoliciesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf policyNames
+ gen/Amazonka/IAM/ListUserTags.hs view
@@ -0,0 +1,319 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListUserTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified IAM user. The returned+-- list of tags is sorted by tag key. For more information about tagging,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListUserTags+ ( -- * Creating a Request+ ListUserTags (..),+ newListUserTags,++ -- * Request Lenses+ listUserTags_marker,+ listUserTags_maxItems,+ listUserTags_userName,++ -- * Destructuring the Response+ ListUserTagsResponse (..),+ newListUserTagsResponse,++ -- * Response Lenses+ listUserTagsResponse_isTruncated,+ listUserTagsResponse_marker,+ listUserTagsResponse_httpStatus,+ listUserTagsResponse_tags,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListUserTags' smart constructor.+data ListUserTags = ListUserTags'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The name of the IAM user whose tags you want to see.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListUserTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listUserTags_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listUserTags_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'userName', 'listUserTags_userName' - The name of the IAM user whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newListUserTags ::+ -- | 'userName'+ Prelude.Text ->+ ListUserTags+newListUserTags pUserName_ =+ ListUserTags'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ userName = pUserName_+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listUserTags_marker :: Lens.Lens' ListUserTags (Prelude.Maybe Prelude.Text)+listUserTags_marker = Lens.lens (\ListUserTags' {marker} -> marker) (\s@ListUserTags' {} a -> s {marker = a} :: ListUserTags)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listUserTags_maxItems :: Lens.Lens' ListUserTags (Prelude.Maybe Prelude.Natural)+listUserTags_maxItems = Lens.lens (\ListUserTags' {maxItems} -> maxItems) (\s@ListUserTags' {} a -> s {maxItems = a} :: ListUserTags)++-- | The name of the IAM user whose tags you want to see.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+listUserTags_userName :: Lens.Lens' ListUserTags Prelude.Text+listUserTags_userName = Lens.lens (\ListUserTags' {userName} -> userName) (\s@ListUserTags' {} a -> s {userName = a} :: ListUserTags)++instance Core.AWSPager ListUserTags where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listUserTagsResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listUserTagsResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listUserTags_marker+ Lens..~ rs+ Lens.^? listUserTagsResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListUserTags where+ type AWSResponse ListUserTags = ListUserTagsResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListUserTagsResult"+ ( \s h x ->+ ListUserTagsResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListUserTags where+ hashWithSalt _salt ListUserTags' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` userName++instance Prelude.NFData ListUserTags where+ rnf ListUserTags' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders ListUserTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListUserTags where+ toPath = Prelude.const "/"++instance Data.ToQuery ListUserTags where+ toQuery ListUserTags' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListUserTags" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newListUserTagsResponse' smart constructor.+data ListUserTagsResponse = ListUserTagsResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of tags that are currently attached to the user. Each tag+ -- consists of a key name and an associated value. If no tags are attached+ -- to the specified resource, the response contains an empty list.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListUserTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listUserTagsResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listUserTagsResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listUserTagsResponse_httpStatus' - The response's http status code.+--+-- 'tags', 'listUserTagsResponse_tags' - The list of tags that are currently attached to the user. Each tag+-- consists of a key name and an associated value. If no tags are attached+-- to the specified resource, the response contains an empty list.+newListUserTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListUserTagsResponse+newListUserTagsResponse pHttpStatus_ =+ ListUserTagsResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ tags = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listUserTagsResponse_isTruncated :: Lens.Lens' ListUserTagsResponse (Prelude.Maybe Prelude.Bool)+listUserTagsResponse_isTruncated = Lens.lens (\ListUserTagsResponse' {isTruncated} -> isTruncated) (\s@ListUserTagsResponse' {} a -> s {isTruncated = a} :: ListUserTagsResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listUserTagsResponse_marker :: Lens.Lens' ListUserTagsResponse (Prelude.Maybe Prelude.Text)+listUserTagsResponse_marker = Lens.lens (\ListUserTagsResponse' {marker} -> marker) (\s@ListUserTagsResponse' {} a -> s {marker = a} :: ListUserTagsResponse)++-- | The response's http status code.+listUserTagsResponse_httpStatus :: Lens.Lens' ListUserTagsResponse Prelude.Int+listUserTagsResponse_httpStatus = Lens.lens (\ListUserTagsResponse' {httpStatus} -> httpStatus) (\s@ListUserTagsResponse' {} a -> s {httpStatus = a} :: ListUserTagsResponse)++-- | The list of tags that are currently attached to the user. Each tag+-- consists of a key name and an associated value. If no tags are attached+-- to the specified resource, the response contains an empty list.+listUserTagsResponse_tags :: Lens.Lens' ListUserTagsResponse [Tag]+listUserTagsResponse_tags = Lens.lens (\ListUserTagsResponse' {tags} -> tags) (\s@ListUserTagsResponse' {} a -> s {tags = a} :: ListUserTagsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListUserTagsResponse where+ rnf ListUserTagsResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/ListUsers.hs view
@@ -0,0 +1,337 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListUsers+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the IAM users that have the specified path prefix. If no path+-- prefix is specified, the operation returns all users in the Amazon Web+-- Services account. If there are none, the operation returns an empty+-- list.+--+-- IAM resource-listing operations return a subset of the available+-- attributes for the resource. For example, this operation does not return+-- tags, even though they are an attribute of the returned object. To view+-- all of the information for a user, see GetUser.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListUsers+ ( -- * Creating a Request+ ListUsers (..),+ newListUsers,++ -- * Request Lenses+ listUsers_marker,+ listUsers_maxItems,+ listUsers_pathPrefix,++ -- * Destructuring the Response+ ListUsersResponse (..),+ newListUsersResponse,++ -- * Response Lenses+ listUsersResponse_isTruncated,+ listUsersResponse_marker,+ listUsersResponse_httpStatus,+ listUsersResponse_users,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListUsers' smart constructor.+data ListUsers = ListUsers'+ { -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The path prefix for filtering the results. For example:+ -- @\/division_abc\/subdivision_xyz\/@, which would get all user names+ -- whose path starts with @\/division_abc\/subdivision_xyz\/@.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/), listing all user names. This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ pathPrefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListUsers' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'marker', 'listUsers_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listUsers_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'pathPrefix', 'listUsers_pathPrefix' - The path prefix for filtering the results. For example:+-- @\/division_abc\/subdivision_xyz\/@, which would get all user names+-- whose path starts with @\/division_abc\/subdivision_xyz\/@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all user names. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+newListUsers ::+ ListUsers+newListUsers =+ ListUsers'+ { marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ pathPrefix = Prelude.Nothing+ }++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listUsers_marker :: Lens.Lens' ListUsers (Prelude.Maybe Prelude.Text)+listUsers_marker = Lens.lens (\ListUsers' {marker} -> marker) (\s@ListUsers' {} a -> s {marker = a} :: ListUsers)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listUsers_maxItems :: Lens.Lens' ListUsers (Prelude.Maybe Prelude.Natural)+listUsers_maxItems = Lens.lens (\ListUsers' {maxItems} -> maxItems) (\s@ListUsers' {} a -> s {maxItems = a} :: ListUsers)++-- | The path prefix for filtering the results. For example:+-- @\/division_abc\/subdivision_xyz\/@, which would get all user names+-- whose path starts with @\/division_abc\/subdivision_xyz\/@.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/), listing all user names. This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+listUsers_pathPrefix :: Lens.Lens' ListUsers (Prelude.Maybe Prelude.Text)+listUsers_pathPrefix = Lens.lens (\ListUsers' {pathPrefix} -> pathPrefix) (\s@ListUsers' {} a -> s {pathPrefix = a} :: ListUsers)++instance Core.AWSPager ListUsers where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listUsersResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listUsersResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listUsers_marker+ Lens..~ rs+ Lens.^? listUsersResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListUsers where+ type AWSResponse ListUsers = ListUsersResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListUsersResult"+ ( \s h x ->+ ListUsersResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "Users"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListUsers where+ hashWithSalt _salt ListUsers' {..} =+ _salt+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` pathPrefix++instance Prelude.NFData ListUsers where+ rnf ListUsers' {..} =+ Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf pathPrefix++instance Data.ToHeaders ListUsers where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListUsers where+ toPath = Prelude.const "/"++instance Data.ToQuery ListUsers where+ toQuery ListUsers' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListUsers" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PathPrefix" Data.=: pathPrefix+ ]++-- | Contains the response to a successful ListUsers request.+--+-- /See:/ 'newListUsersResponse' smart constructor.+data ListUsersResponse = ListUsersResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of users.+ users :: [User]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListUsersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listUsersResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listUsersResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listUsersResponse_httpStatus' - The response's http status code.+--+-- 'users', 'listUsersResponse_users' - A list of users.+newListUsersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListUsersResponse+newListUsersResponse pHttpStatus_ =+ ListUsersResponse'+ { isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ users = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listUsersResponse_isTruncated :: Lens.Lens' ListUsersResponse (Prelude.Maybe Prelude.Bool)+listUsersResponse_isTruncated = Lens.lens (\ListUsersResponse' {isTruncated} -> isTruncated) (\s@ListUsersResponse' {} a -> s {isTruncated = a} :: ListUsersResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listUsersResponse_marker :: Lens.Lens' ListUsersResponse (Prelude.Maybe Prelude.Text)+listUsersResponse_marker = Lens.lens (\ListUsersResponse' {marker} -> marker) (\s@ListUsersResponse' {} a -> s {marker = a} :: ListUsersResponse)++-- | The response's http status code.+listUsersResponse_httpStatus :: Lens.Lens' ListUsersResponse Prelude.Int+listUsersResponse_httpStatus = Lens.lens (\ListUsersResponse' {httpStatus} -> httpStatus) (\s@ListUsersResponse' {} a -> s {httpStatus = a} :: ListUsersResponse)++-- | A list of users.+listUsersResponse_users :: Lens.Lens' ListUsersResponse [User]+listUsersResponse_users = Lens.lens (\ListUsersResponse' {users} -> users) (\s@ListUsersResponse' {} a -> s {users = a} :: ListUsersResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListUsersResponse where+ rnf ListUsersResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf users
+ gen/Amazonka/IAM/ListVirtualMFADevices.hs view
@@ -0,0 +1,317 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ListVirtualMFADevices+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the virtual MFA devices defined in the Amazon Web Services account+-- by assignment status. If you do not specify an assignment status, the+-- operation returns a list of all virtual MFA devices. Assignment status+-- can be @Assigned@, @Unassigned@, or @Any@.+--+-- IAM resource-listing operations return a subset of the available+-- attributes for the resource. For example, this operation does not return+-- tags, even though they are an attribute of the returned object. To view+-- tag information for a virtual MFA device, see ListMFADeviceTags.+--+-- You can paginate the results using the @MaxItems@ and @Marker@+-- parameters.+--+-- This operation returns paginated results.+module Amazonka.IAM.ListVirtualMFADevices+ ( -- * Creating a Request+ ListVirtualMFADevices (..),+ newListVirtualMFADevices,++ -- * Request Lenses+ listVirtualMFADevices_assignmentStatus,+ listVirtualMFADevices_marker,+ listVirtualMFADevices_maxItems,++ -- * Destructuring the Response+ ListVirtualMFADevicesResponse (..),+ newListVirtualMFADevicesResponse,++ -- * Response Lenses+ listVirtualMFADevicesResponse_isTruncated,+ listVirtualMFADevicesResponse_marker,+ listVirtualMFADevicesResponse_httpStatus,+ listVirtualMFADevicesResponse_virtualMFADevices,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListVirtualMFADevices' smart constructor.+data ListVirtualMFADevices = ListVirtualMFADevices'+ { -- | The status (@Unassigned@ or @Assigned@) of the devices to list. If you+ -- do not specify an @AssignmentStatus@, the operation defaults to @Any@,+ -- which lists both assigned and unassigned virtual MFA devices.,+ assignmentStatus :: Prelude.Maybe AssignmentStatusType,+ -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVirtualMFADevices' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assignmentStatus', 'listVirtualMFADevices_assignmentStatus' - The status (@Unassigned@ or @Assigned@) of the devices to list. If you+-- do not specify an @AssignmentStatus@, the operation defaults to @Any@,+-- which lists both assigned and unassigned virtual MFA devices.,+--+-- 'marker', 'listVirtualMFADevices_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'listVirtualMFADevices_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+newListVirtualMFADevices ::+ ListVirtualMFADevices+newListVirtualMFADevices =+ ListVirtualMFADevices'+ { assignmentStatus =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ maxItems = Prelude.Nothing+ }++-- | The status (@Unassigned@ or @Assigned@) of the devices to list. If you+-- do not specify an @AssignmentStatus@, the operation defaults to @Any@,+-- which lists both assigned and unassigned virtual MFA devices.,+listVirtualMFADevices_assignmentStatus :: Lens.Lens' ListVirtualMFADevices (Prelude.Maybe AssignmentStatusType)+listVirtualMFADevices_assignmentStatus = Lens.lens (\ListVirtualMFADevices' {assignmentStatus} -> assignmentStatus) (\s@ListVirtualMFADevices' {} a -> s {assignmentStatus = a} :: ListVirtualMFADevices)++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+listVirtualMFADevices_marker :: Lens.Lens' ListVirtualMFADevices (Prelude.Maybe Prelude.Text)+listVirtualMFADevices_marker = Lens.lens (\ListVirtualMFADevices' {marker} -> marker) (\s@ListVirtualMFADevices' {} a -> s {marker = a} :: ListVirtualMFADevices)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+listVirtualMFADevices_maxItems :: Lens.Lens' ListVirtualMFADevices (Prelude.Maybe Prelude.Natural)+listVirtualMFADevices_maxItems = Lens.lens (\ListVirtualMFADevices' {maxItems} -> maxItems) (\s@ListVirtualMFADevices' {} a -> s {maxItems = a} :: ListVirtualMFADevices)++instance Core.AWSPager ListVirtualMFADevices where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listVirtualMFADevicesResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? listVirtualMFADevicesResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listVirtualMFADevices_marker+ Lens..~ rs+ Lens.^? listVirtualMFADevicesResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest ListVirtualMFADevices where+ type+ AWSResponse ListVirtualMFADevices =+ ListVirtualMFADevicesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ListVirtualMFADevicesResult"+ ( \s h x ->+ ListVirtualMFADevicesResponse'+ Prelude.<$> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..@? "VirtualMFADevices"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )+ )++instance Prelude.Hashable ListVirtualMFADevices where+ hashWithSalt _salt ListVirtualMFADevices' {..} =+ _salt+ `Prelude.hashWithSalt` assignmentStatus+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems++instance Prelude.NFData ListVirtualMFADevices where+ rnf ListVirtualMFADevices' {..} =+ Prelude.rnf assignmentStatus+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems++instance Data.ToHeaders ListVirtualMFADevices where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListVirtualMFADevices where+ toPath = Prelude.const "/"++instance Data.ToQuery ListVirtualMFADevices where+ toQuery ListVirtualMFADevices' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ListVirtualMFADevices" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "AssignmentStatus" Data.=: assignmentStatus,+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems+ ]++-- | Contains the response to a successful ListVirtualMFADevices request.+--+-- /See:/ 'newListVirtualMFADevicesResponse' smart constructor.+data ListVirtualMFADevicesResponse = ListVirtualMFADevicesResponse'+ { -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The list of virtual MFA devices in the current account that match the+ -- @AssignmentStatus@ value that was passed in the request.+ virtualMFADevices :: [VirtualMFADevice]+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVirtualMFADevicesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'isTruncated', 'listVirtualMFADevicesResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'listVirtualMFADevicesResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+--+-- 'httpStatus', 'listVirtualMFADevicesResponse_httpStatus' - The response's http status code.+--+-- 'virtualMFADevices', 'listVirtualMFADevicesResponse_virtualMFADevices' - The list of virtual MFA devices in the current account that match the+-- @AssignmentStatus@ value that was passed in the request.+newListVirtualMFADevicesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListVirtualMFADevicesResponse+newListVirtualMFADevicesResponse pHttpStatus_ =+ ListVirtualMFADevicesResponse'+ { isTruncated =+ Prelude.Nothing,+ marker = Prelude.Nothing,+ httpStatus = pHttpStatus_,+ virtualMFADevices = Prelude.mempty+ }++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+listVirtualMFADevicesResponse_isTruncated :: Lens.Lens' ListVirtualMFADevicesResponse (Prelude.Maybe Prelude.Bool)+listVirtualMFADevicesResponse_isTruncated = Lens.lens (\ListVirtualMFADevicesResponse' {isTruncated} -> isTruncated) (\s@ListVirtualMFADevicesResponse' {} a -> s {isTruncated = a} :: ListVirtualMFADevicesResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+listVirtualMFADevicesResponse_marker :: Lens.Lens' ListVirtualMFADevicesResponse (Prelude.Maybe Prelude.Text)+listVirtualMFADevicesResponse_marker = Lens.lens (\ListVirtualMFADevicesResponse' {marker} -> marker) (\s@ListVirtualMFADevicesResponse' {} a -> s {marker = a} :: ListVirtualMFADevicesResponse)++-- | The response's http status code.+listVirtualMFADevicesResponse_httpStatus :: Lens.Lens' ListVirtualMFADevicesResponse Prelude.Int+listVirtualMFADevicesResponse_httpStatus = Lens.lens (\ListVirtualMFADevicesResponse' {httpStatus} -> httpStatus) (\s@ListVirtualMFADevicesResponse' {} a -> s {httpStatus = a} :: ListVirtualMFADevicesResponse)++-- | The list of virtual MFA devices in the current account that match the+-- @AssignmentStatus@ value that was passed in the request.+listVirtualMFADevicesResponse_virtualMFADevices :: Lens.Lens' ListVirtualMFADevicesResponse [VirtualMFADevice]+listVirtualMFADevicesResponse_virtualMFADevices = Lens.lens (\ListVirtualMFADevicesResponse' {virtualMFADevices} -> virtualMFADevices) (\s@ListVirtualMFADevicesResponse' {} a -> s {virtualMFADevices = a} :: ListVirtualMFADevicesResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListVirtualMFADevicesResponse where+ rnf ListVirtualMFADevicesResponse' {..} =+ Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf virtualMFADevices
+ gen/Amazonka/IAM/PutGroupPolicy.hs view
@@ -0,0 +1,256 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.PutGroupPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds or updates an inline policy document that is embedded in the+-- specified IAM group.+--+-- A user can also have managed policies attached to it. To attach a+-- managed policy to a group, use AttachGroupPolicy. To create a new+-- managed policy, use CreatePolicy. For information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- For information about the maximum number of inline policies that you can+-- embed in a group, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+--+-- Because policy documents can be large, you should use POST rather than+-- GET when calling @PutGroupPolicy@. For general information about using+-- the Query API with IAM, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html Making query requests>+-- in the /IAM User Guide/.+module Amazonka.IAM.PutGroupPolicy+ ( -- * Creating a Request+ PutGroupPolicy (..),+ newPutGroupPolicy,++ -- * Request Lenses+ putGroupPolicy_groupName,+ putGroupPolicy_policyName,+ putGroupPolicy_policyDocument,++ -- * Destructuring the Response+ PutGroupPolicyResponse (..),+ newPutGroupPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutGroupPolicy' smart constructor.+data PutGroupPolicy = PutGroupPolicy'+ { -- | The name of the group to associate the policy with.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-.+ groupName :: Prelude.Text,+ -- | The name of the policy document.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text,+ -- | The policy document.+ --+ -- You must provide policies in JSON format in IAM. However, for+ -- CloudFormation templates formatted in YAML, you can provide the policy+ -- in JSON or YAML format. CloudFormation always converts a YAML policy to+ -- JSON format before submitting it to = IAM.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutGroupPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupName', 'putGroupPolicy_groupName' - The name of the group to associate the policy with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-.+--+-- 'policyName', 'putGroupPolicy_policyName' - The name of the policy document.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyDocument', 'putGroupPolicy_policyDocument' - The policy document.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to = IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newPutGroupPolicy ::+ -- | 'groupName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ PutGroupPolicy+newPutGroupPolicy+ pGroupName_+ pPolicyName_+ pPolicyDocument_ =+ PutGroupPolicy'+ { groupName = pGroupName_,+ policyName = pPolicyName_,+ policyDocument = pPolicyDocument_+ }++-- | The name of the group to associate the policy with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-.+putGroupPolicy_groupName :: Lens.Lens' PutGroupPolicy Prelude.Text+putGroupPolicy_groupName = Lens.lens (\PutGroupPolicy' {groupName} -> groupName) (\s@PutGroupPolicy' {} a -> s {groupName = a} :: PutGroupPolicy)++-- | The name of the policy document.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+putGroupPolicy_policyName :: Lens.Lens' PutGroupPolicy Prelude.Text+putGroupPolicy_policyName = Lens.lens (\PutGroupPolicy' {policyName} -> policyName) (\s@PutGroupPolicy' {} a -> s {policyName = a} :: PutGroupPolicy)++-- | The policy document.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to = IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+putGroupPolicy_policyDocument :: Lens.Lens' PutGroupPolicy Prelude.Text+putGroupPolicy_policyDocument = Lens.lens (\PutGroupPolicy' {policyDocument} -> policyDocument) (\s@PutGroupPolicy' {} a -> s {policyDocument = a} :: PutGroupPolicy)++instance Core.AWSRequest PutGroupPolicy where+ type+ AWSResponse PutGroupPolicy =+ PutGroupPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull PutGroupPolicyResponse'++instance Prelude.Hashable PutGroupPolicy where+ hashWithSalt _salt PutGroupPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` policyName+ `Prelude.hashWithSalt` policyDocument++instance Prelude.NFData PutGroupPolicy where+ rnf PutGroupPolicy' {..} =+ Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyDocument++instance Data.ToHeaders PutGroupPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath PutGroupPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery PutGroupPolicy where+ toQuery PutGroupPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("PutGroupPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GroupName" Data.=: groupName,+ "PolicyName" Data.=: policyName,+ "PolicyDocument" Data.=: policyDocument+ ]++-- | /See:/ 'newPutGroupPolicyResponse' smart constructor.+data PutGroupPolicyResponse = PutGroupPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutGroupPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newPutGroupPolicyResponse ::+ PutGroupPolicyResponse+newPutGroupPolicyResponse = PutGroupPolicyResponse'++instance Prelude.NFData PutGroupPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/PutRolePermissionsBoundary.hs view
@@ -0,0 +1,165 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.PutRolePermissionsBoundary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds or updates the policy that is specified as the IAM role\'s+-- permissions boundary. You can use an Amazon Web Services managed policy+-- or a customer managed policy to set the boundary for a role. Use the+-- boundary to control the maximum permissions that the role can have.+-- Setting a permissions boundary is an advanced feature that can affect+-- the permissions for the role.+--+-- You cannot set the boundary for a service-linked role.+--+-- Policies used as permissions boundaries do not provide permissions. You+-- must also attach a permissions policy to the role. To learn how the+-- effective permissions for a role are evaluated, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html IAM JSON policy evaluation logic>+-- in the IAM User Guide.+module Amazonka.IAM.PutRolePermissionsBoundary+ ( -- * Creating a Request+ PutRolePermissionsBoundary (..),+ newPutRolePermissionsBoundary,++ -- * Request Lenses+ putRolePermissionsBoundary_roleName,+ putRolePermissionsBoundary_permissionsBoundary,++ -- * Destructuring the Response+ PutRolePermissionsBoundaryResponse (..),+ newPutRolePermissionsBoundaryResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutRolePermissionsBoundary' smart constructor.+data PutRolePermissionsBoundary = PutRolePermissionsBoundary'+ { -- | The name (friendly name, not ARN) of the IAM role for which you want to+ -- set the permissions boundary.+ roleName :: Prelude.Text,+ -- | The ARN of the policy that is used to set the permissions boundary for+ -- the role.+ permissionsBoundary :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutRolePermissionsBoundary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'putRolePermissionsBoundary_roleName' - The name (friendly name, not ARN) of the IAM role for which you want to+-- set the permissions boundary.+--+-- 'permissionsBoundary', 'putRolePermissionsBoundary_permissionsBoundary' - The ARN of the policy that is used to set the permissions boundary for+-- the role.+newPutRolePermissionsBoundary ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'permissionsBoundary'+ Prelude.Text ->+ PutRolePermissionsBoundary+newPutRolePermissionsBoundary+ pRoleName_+ pPermissionsBoundary_ =+ PutRolePermissionsBoundary'+ { roleName = pRoleName_,+ permissionsBoundary = pPermissionsBoundary_+ }++-- | The name (friendly name, not ARN) of the IAM role for which you want to+-- set the permissions boundary.+putRolePermissionsBoundary_roleName :: Lens.Lens' PutRolePermissionsBoundary Prelude.Text+putRolePermissionsBoundary_roleName = Lens.lens (\PutRolePermissionsBoundary' {roleName} -> roleName) (\s@PutRolePermissionsBoundary' {} a -> s {roleName = a} :: PutRolePermissionsBoundary)++-- | The ARN of the policy that is used to set the permissions boundary for+-- the role.+putRolePermissionsBoundary_permissionsBoundary :: Lens.Lens' PutRolePermissionsBoundary Prelude.Text+putRolePermissionsBoundary_permissionsBoundary = Lens.lens (\PutRolePermissionsBoundary' {permissionsBoundary} -> permissionsBoundary) (\s@PutRolePermissionsBoundary' {} a -> s {permissionsBoundary = a} :: PutRolePermissionsBoundary)++instance Core.AWSRequest PutRolePermissionsBoundary where+ type+ AWSResponse PutRolePermissionsBoundary =+ PutRolePermissionsBoundaryResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ PutRolePermissionsBoundaryResponse'++instance Prelude.Hashable PutRolePermissionsBoundary where+ hashWithSalt _salt PutRolePermissionsBoundary' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` permissionsBoundary++instance Prelude.NFData PutRolePermissionsBoundary where+ rnf PutRolePermissionsBoundary' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf permissionsBoundary++instance Data.ToHeaders PutRolePermissionsBoundary where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath PutRolePermissionsBoundary where+ toPath = Prelude.const "/"++instance Data.ToQuery PutRolePermissionsBoundary where+ toQuery PutRolePermissionsBoundary' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("PutRolePermissionsBoundary" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "PermissionsBoundary" Data.=: permissionsBoundary+ ]++-- | /See:/ 'newPutRolePermissionsBoundaryResponse' smart constructor.+data PutRolePermissionsBoundaryResponse = PutRolePermissionsBoundaryResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutRolePermissionsBoundaryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newPutRolePermissionsBoundaryResponse ::+ PutRolePermissionsBoundaryResponse+newPutRolePermissionsBoundaryResponse =+ PutRolePermissionsBoundaryResponse'++instance+ Prelude.NFData+ PutRolePermissionsBoundaryResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/PutRolePolicy.hs view
@@ -0,0 +1,263 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.PutRolePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds or updates an inline policy document that is embedded in the+-- specified IAM role.+--+-- When you embed an inline policy in a role, the inline policy is used as+-- part of the role\'s access (permissions) policy. The role\'s trust+-- policy is created at the same time as the role, using CreateRole. You+-- can update a role\'s trust policy using UpdateAssumeRolePolicy. For more+-- information about IAM roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html Using roles to delegate permissions and federate identities>.+--+-- A role can also have a managed policy attached to it. To attach a+-- managed policy to a role, use AttachRolePolicy. To create a new managed+-- policy, use CreatePolicy. For information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- For information about the maximum number of inline policies that you can+-- embed with a role, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+--+-- Because policy documents can be large, you should use POST rather than+-- GET when calling @PutRolePolicy@. For general information about using+-- the Query API with IAM, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html Making query requests>+-- in the /IAM User Guide/.+module Amazonka.IAM.PutRolePolicy+ ( -- * Creating a Request+ PutRolePolicy (..),+ newPutRolePolicy,++ -- * Request Lenses+ putRolePolicy_roleName,+ putRolePolicy_policyName,+ putRolePolicy_policyDocument,++ -- * Destructuring the Response+ PutRolePolicyResponse (..),+ newPutRolePolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutRolePolicy' smart constructor.+data PutRolePolicy = PutRolePolicy'+ { -- | The name of the role to associate the policy with.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text,+ -- | The name of the policy document.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text,+ -- | The policy document.+ --+ -- You must provide policies in JSON format in IAM. However, for+ -- CloudFormation templates formatted in YAML, you can provide the policy+ -- in JSON or YAML format. CloudFormation always converts a YAML policy to+ -- JSON format before submitting it to IAM.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutRolePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'putRolePolicy_roleName' - The name of the role to associate the policy with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyName', 'putRolePolicy_policyName' - The name of the policy document.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyDocument', 'putRolePolicy_policyDocument' - The policy document.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newPutRolePolicy ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ PutRolePolicy+newPutRolePolicy+ pRoleName_+ pPolicyName_+ pPolicyDocument_ =+ PutRolePolicy'+ { roleName = pRoleName_,+ policyName = pPolicyName_,+ policyDocument = pPolicyDocument_+ }++-- | The name of the role to associate the policy with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+putRolePolicy_roleName :: Lens.Lens' PutRolePolicy Prelude.Text+putRolePolicy_roleName = Lens.lens (\PutRolePolicy' {roleName} -> roleName) (\s@PutRolePolicy' {} a -> s {roleName = a} :: PutRolePolicy)++-- | The name of the policy document.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+putRolePolicy_policyName :: Lens.Lens' PutRolePolicy Prelude.Text+putRolePolicy_policyName = Lens.lens (\PutRolePolicy' {policyName} -> policyName) (\s@PutRolePolicy' {} a -> s {policyName = a} :: PutRolePolicy)++-- | The policy document.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+putRolePolicy_policyDocument :: Lens.Lens' PutRolePolicy Prelude.Text+putRolePolicy_policyDocument = Lens.lens (\PutRolePolicy' {policyDocument} -> policyDocument) (\s@PutRolePolicy' {} a -> s {policyDocument = a} :: PutRolePolicy)++instance Core.AWSRequest PutRolePolicy where+ type+ AWSResponse PutRolePolicy =+ PutRolePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull PutRolePolicyResponse'++instance Prelude.Hashable PutRolePolicy where+ hashWithSalt _salt PutRolePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` policyName+ `Prelude.hashWithSalt` policyDocument++instance Prelude.NFData PutRolePolicy where+ rnf PutRolePolicy' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyDocument++instance Data.ToHeaders PutRolePolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath PutRolePolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery PutRolePolicy where+ toQuery PutRolePolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("PutRolePolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "PolicyName" Data.=: policyName,+ "PolicyDocument" Data.=: policyDocument+ ]++-- | /See:/ 'newPutRolePolicyResponse' smart constructor.+data PutRolePolicyResponse = PutRolePolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutRolePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newPutRolePolicyResponse ::+ PutRolePolicyResponse+newPutRolePolicyResponse = PutRolePolicyResponse'++instance Prelude.NFData PutRolePolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/PutUserPermissionsBoundary.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.PutUserPermissionsBoundary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds or updates the policy that is specified as the IAM user\'s+-- permissions boundary. You can use an Amazon Web Services managed policy+-- or a customer managed policy to set the boundary for a user. Use the+-- boundary to control the maximum permissions that the user can have.+-- Setting a permissions boundary is an advanced feature that can affect+-- the permissions for the user.+--+-- Policies that are used as permissions boundaries do not provide+-- permissions. You must also attach a permissions policy to the user. To+-- learn how the effective permissions for a user are evaluated, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html IAM JSON policy evaluation logic>+-- in the IAM User Guide.+module Amazonka.IAM.PutUserPermissionsBoundary+ ( -- * Creating a Request+ PutUserPermissionsBoundary (..),+ newPutUserPermissionsBoundary,++ -- * Request Lenses+ putUserPermissionsBoundary_userName,+ putUserPermissionsBoundary_permissionsBoundary,++ -- * Destructuring the Response+ PutUserPermissionsBoundaryResponse (..),+ newPutUserPermissionsBoundaryResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutUserPermissionsBoundary' smart constructor.+data PutUserPermissionsBoundary = PutUserPermissionsBoundary'+ { -- | The name (friendly name, not ARN) of the IAM user for which you want to+ -- set the permissions boundary.+ userName :: Prelude.Text,+ -- | The ARN of the policy that is used to set the permissions boundary for+ -- the user.+ permissionsBoundary :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutUserPermissionsBoundary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'putUserPermissionsBoundary_userName' - The name (friendly name, not ARN) of the IAM user for which you want to+-- set the permissions boundary.+--+-- 'permissionsBoundary', 'putUserPermissionsBoundary_permissionsBoundary' - The ARN of the policy that is used to set the permissions boundary for+-- the user.+newPutUserPermissionsBoundary ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'permissionsBoundary'+ Prelude.Text ->+ PutUserPermissionsBoundary+newPutUserPermissionsBoundary+ pUserName_+ pPermissionsBoundary_ =+ PutUserPermissionsBoundary'+ { userName = pUserName_,+ permissionsBoundary = pPermissionsBoundary_+ }++-- | The name (friendly name, not ARN) of the IAM user for which you want to+-- set the permissions boundary.+putUserPermissionsBoundary_userName :: Lens.Lens' PutUserPermissionsBoundary Prelude.Text+putUserPermissionsBoundary_userName = Lens.lens (\PutUserPermissionsBoundary' {userName} -> userName) (\s@PutUserPermissionsBoundary' {} a -> s {userName = a} :: PutUserPermissionsBoundary)++-- | The ARN of the policy that is used to set the permissions boundary for+-- the user.+putUserPermissionsBoundary_permissionsBoundary :: Lens.Lens' PutUserPermissionsBoundary Prelude.Text+putUserPermissionsBoundary_permissionsBoundary = Lens.lens (\PutUserPermissionsBoundary' {permissionsBoundary} -> permissionsBoundary) (\s@PutUserPermissionsBoundary' {} a -> s {permissionsBoundary = a} :: PutUserPermissionsBoundary)++instance Core.AWSRequest PutUserPermissionsBoundary where+ type+ AWSResponse PutUserPermissionsBoundary =+ PutUserPermissionsBoundaryResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ PutUserPermissionsBoundaryResponse'++instance Prelude.Hashable PutUserPermissionsBoundary where+ hashWithSalt _salt PutUserPermissionsBoundary' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` permissionsBoundary++instance Prelude.NFData PutUserPermissionsBoundary where+ rnf PutUserPermissionsBoundary' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf permissionsBoundary++instance Data.ToHeaders PutUserPermissionsBoundary where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath PutUserPermissionsBoundary where+ toPath = Prelude.const "/"++instance Data.ToQuery PutUserPermissionsBoundary where+ toQuery PutUserPermissionsBoundary' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("PutUserPermissionsBoundary" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "PermissionsBoundary" Data.=: permissionsBoundary+ ]++-- | /See:/ 'newPutUserPermissionsBoundaryResponse' smart constructor.+data PutUserPermissionsBoundaryResponse = PutUserPermissionsBoundaryResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutUserPermissionsBoundaryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newPutUserPermissionsBoundaryResponse ::+ PutUserPermissionsBoundaryResponse+newPutUserPermissionsBoundaryResponse =+ PutUserPermissionsBoundaryResponse'++instance+ Prelude.NFData+ PutUserPermissionsBoundaryResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/PutUserPolicy.hs view
@@ -0,0 +1,256 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.PutUserPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds or updates an inline policy document that is embedded in the+-- specified IAM user.+--+-- An IAM user can also have a managed policy attached to it. To attach a+-- managed policy to a user, use AttachUserPolicy. To create a new managed+-- policy, use CreatePolicy. For information about policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- For information about the maximum number of inline policies that you can+-- embed in a user, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+--+-- Because policy documents can be large, you should use POST rather than+-- GET when calling @PutUserPolicy@. For general information about using+-- the Query API with IAM, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html Making query requests>+-- in the /IAM User Guide/.+module Amazonka.IAM.PutUserPolicy+ ( -- * Creating a Request+ PutUserPolicy (..),+ newPutUserPolicy,++ -- * Request Lenses+ putUserPolicy_userName,+ putUserPolicy_policyName,+ putUserPolicy_policyDocument,++ -- * Destructuring the Response+ PutUserPolicyResponse (..),+ newPutUserPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutUserPolicy' smart constructor.+data PutUserPolicy = PutUserPolicy'+ { -- | The name of the user to associate the policy with.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The name of the policy document.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyName :: Prelude.Text,+ -- | The policy document.+ --+ -- You must provide policies in JSON format in IAM. However, for+ -- CloudFormation templates formatted in YAML, you can provide the policy+ -- in JSON or YAML format. CloudFormation always converts a YAML policy to+ -- JSON format before submitting it to IAM.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutUserPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'putUserPolicy_userName' - The name of the user to associate the policy with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyName', 'putUserPolicy_policyName' - The name of the policy document.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyDocument', 'putUserPolicy_policyDocument' - The policy document.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newPutUserPolicy ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'policyName'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ PutUserPolicy+newPutUserPolicy+ pUserName_+ pPolicyName_+ pPolicyDocument_ =+ PutUserPolicy'+ { userName = pUserName_,+ policyName = pPolicyName_,+ policyDocument = pPolicyDocument_+ }++-- | The name of the user to associate the policy with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+putUserPolicy_userName :: Lens.Lens' PutUserPolicy Prelude.Text+putUserPolicy_userName = Lens.lens (\PutUserPolicy' {userName} -> userName) (\s@PutUserPolicy' {} a -> s {userName = a} :: PutUserPolicy)++-- | The name of the policy document.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+putUserPolicy_policyName :: Lens.Lens' PutUserPolicy Prelude.Text+putUserPolicy_policyName = Lens.lens (\PutUserPolicy' {policyName} -> policyName) (\s@PutUserPolicy' {} a -> s {policyName = a} :: PutUserPolicy)++-- | The policy document.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+putUserPolicy_policyDocument :: Lens.Lens' PutUserPolicy Prelude.Text+putUserPolicy_policyDocument = Lens.lens (\PutUserPolicy' {policyDocument} -> policyDocument) (\s@PutUserPolicy' {} a -> s {policyDocument = a} :: PutUserPolicy)++instance Core.AWSRequest PutUserPolicy where+ type+ AWSResponse PutUserPolicy =+ PutUserPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull PutUserPolicyResponse'++instance Prelude.Hashable PutUserPolicy where+ hashWithSalt _salt PutUserPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` policyName+ `Prelude.hashWithSalt` policyDocument++instance Prelude.NFData PutUserPolicy where+ rnf PutUserPolicy' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyDocument++instance Data.ToHeaders PutUserPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath PutUserPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery PutUserPolicy where+ toQuery PutUserPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("PutUserPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "PolicyName" Data.=: policyName,+ "PolicyDocument" Data.=: policyDocument+ ]++-- | /See:/ 'newPutUserPolicyResponse' smart constructor.+data PutUserPolicyResponse = PutUserPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutUserPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newPutUserPolicyResponse ::+ PutUserPolicyResponse+newPutUserPolicyResponse = PutUserPolicyResponse'++instance Prelude.NFData PutUserPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/RemoveClientIDFromOpenIDConnectProvider.hs view
@@ -0,0 +1,200 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified client ID (also known as audience) from the list+-- of client IDs registered for the specified IAM OpenID Connect (OIDC)+-- provider resource object.+--+-- This operation is idempotent; it does not fail or return an error if you+-- try to remove a client ID that does not exist.+module Amazonka.IAM.RemoveClientIDFromOpenIDConnectProvider+ ( -- * Creating a Request+ RemoveClientIDFromOpenIDConnectProvider (..),+ newRemoveClientIDFromOpenIDConnectProvider,++ -- * Request Lenses+ removeClientIDFromOpenIDConnectProvider_openIDConnectProviderArn,+ removeClientIDFromOpenIDConnectProvider_clientID,++ -- * Destructuring the Response+ RemoveClientIDFromOpenIDConnectProviderResponse (..),+ newRemoveClientIDFromOpenIDConnectProviderResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRemoveClientIDFromOpenIDConnectProvider' smart constructor.+data RemoveClientIDFromOpenIDConnectProvider = RemoveClientIDFromOpenIDConnectProvider'+ { -- | The Amazon Resource Name (ARN) of the IAM OIDC provider resource to+ -- remove the client ID from. You can get a list of OIDC provider ARNs by+ -- using the ListOpenIDConnectProviders operation.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ openIDConnectProviderArn :: Prelude.Text,+ -- | The client ID (also known as audience) to remove from the IAM OIDC+ -- provider resource. For more information about client IDs, see+ -- CreateOpenIDConnectProvider.+ clientID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveClientIDFromOpenIDConnectProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderArn', 'removeClientIDFromOpenIDConnectProvider_openIDConnectProviderArn' - The Amazon Resource Name (ARN) of the IAM OIDC provider resource to+-- remove the client ID from. You can get a list of OIDC provider ARNs by+-- using the ListOpenIDConnectProviders operation.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'clientID', 'removeClientIDFromOpenIDConnectProvider_clientID' - The client ID (also known as audience) to remove from the IAM OIDC+-- provider resource. For more information about client IDs, see+-- CreateOpenIDConnectProvider.+newRemoveClientIDFromOpenIDConnectProvider ::+ -- | 'openIDConnectProviderArn'+ Prelude.Text ->+ -- | 'clientID'+ Prelude.Text ->+ RemoveClientIDFromOpenIDConnectProvider+newRemoveClientIDFromOpenIDConnectProvider+ pOpenIDConnectProviderArn_+ pClientID_ =+ RemoveClientIDFromOpenIDConnectProvider'+ { openIDConnectProviderArn =+ pOpenIDConnectProviderArn_,+ clientID = pClientID_+ }++-- | The Amazon Resource Name (ARN) of the IAM OIDC provider resource to+-- remove the client ID from. You can get a list of OIDC provider ARNs by+-- using the ListOpenIDConnectProviders operation.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+removeClientIDFromOpenIDConnectProvider_openIDConnectProviderArn :: Lens.Lens' RemoveClientIDFromOpenIDConnectProvider Prelude.Text+removeClientIDFromOpenIDConnectProvider_openIDConnectProviderArn = Lens.lens (\RemoveClientIDFromOpenIDConnectProvider' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@RemoveClientIDFromOpenIDConnectProvider' {} a -> s {openIDConnectProviderArn = a} :: RemoveClientIDFromOpenIDConnectProvider)++-- | The client ID (also known as audience) to remove from the IAM OIDC+-- provider resource. For more information about client IDs, see+-- CreateOpenIDConnectProvider.+removeClientIDFromOpenIDConnectProvider_clientID :: Lens.Lens' RemoveClientIDFromOpenIDConnectProvider Prelude.Text+removeClientIDFromOpenIDConnectProvider_clientID = Lens.lens (\RemoveClientIDFromOpenIDConnectProvider' {clientID} -> clientID) (\s@RemoveClientIDFromOpenIDConnectProvider' {} a -> s {clientID = a} :: RemoveClientIDFromOpenIDConnectProvider)++instance+ Core.AWSRequest+ RemoveClientIDFromOpenIDConnectProvider+ where+ type+ AWSResponse+ RemoveClientIDFromOpenIDConnectProvider =+ RemoveClientIDFromOpenIDConnectProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ RemoveClientIDFromOpenIDConnectProviderResponse'++instance+ Prelude.Hashable+ RemoveClientIDFromOpenIDConnectProvider+ where+ hashWithSalt+ _salt+ RemoveClientIDFromOpenIDConnectProvider' {..} =+ _salt+ `Prelude.hashWithSalt` openIDConnectProviderArn+ `Prelude.hashWithSalt` clientID++instance+ Prelude.NFData+ RemoveClientIDFromOpenIDConnectProvider+ where+ rnf RemoveClientIDFromOpenIDConnectProvider' {..} =+ Prelude.rnf openIDConnectProviderArn+ `Prelude.seq` Prelude.rnf clientID++instance+ Data.ToHeaders+ RemoveClientIDFromOpenIDConnectProvider+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ RemoveClientIDFromOpenIDConnectProvider+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ RemoveClientIDFromOpenIDConnectProvider+ where+ toQuery RemoveClientIDFromOpenIDConnectProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "RemoveClientIDFromOpenIDConnectProvider" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OpenIDConnectProviderArn"+ Data.=: openIDConnectProviderArn,+ "ClientID" Data.=: clientID+ ]++-- | /See:/ 'newRemoveClientIDFromOpenIDConnectProviderResponse' smart constructor.+data RemoveClientIDFromOpenIDConnectProviderResponse = RemoveClientIDFromOpenIDConnectProviderResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveClientIDFromOpenIDConnectProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newRemoveClientIDFromOpenIDConnectProviderResponse ::+ RemoveClientIDFromOpenIDConnectProviderResponse+newRemoveClientIDFromOpenIDConnectProviderResponse =+ RemoveClientIDFromOpenIDConnectProviderResponse'++instance+ Prelude.NFData+ RemoveClientIDFromOpenIDConnectProviderResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/RemoveRoleFromInstanceProfile.hs view
@@ -0,0 +1,195 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.RemoveRoleFromInstanceProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified IAM role from the specified EC2 instance profile.+--+-- Make sure that you do not have any Amazon EC2 instances running with the+-- role you are about to remove from the instance profile. Removing a role+-- from an instance profile that is associated with a running instance+-- might break any applications running on the instance.+--+-- For more information about IAM roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with roles>.+-- For more information about instance profiles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About instance profiles>.+module Amazonka.IAM.RemoveRoleFromInstanceProfile+ ( -- * Creating a Request+ RemoveRoleFromInstanceProfile (..),+ newRemoveRoleFromInstanceProfile,++ -- * Request Lenses+ removeRoleFromInstanceProfile_instanceProfileName,+ removeRoleFromInstanceProfile_roleName,++ -- * Destructuring the Response+ RemoveRoleFromInstanceProfileResponse (..),+ newRemoveRoleFromInstanceProfileResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRemoveRoleFromInstanceProfile' smart constructor.+data RemoveRoleFromInstanceProfile = RemoveRoleFromInstanceProfile'+ { -- | The name of the instance profile to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ instanceProfileName :: Prelude.Text,+ -- | The name of the role to remove.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveRoleFromInstanceProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceProfileName', 'removeRoleFromInstanceProfile_instanceProfileName' - The name of the instance profile to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'roleName', 'removeRoleFromInstanceProfile_roleName' - The name of the role to remove.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newRemoveRoleFromInstanceProfile ::+ -- | 'instanceProfileName'+ Prelude.Text ->+ -- | 'roleName'+ Prelude.Text ->+ RemoveRoleFromInstanceProfile+newRemoveRoleFromInstanceProfile+ pInstanceProfileName_+ pRoleName_ =+ RemoveRoleFromInstanceProfile'+ { instanceProfileName =+ pInstanceProfileName_,+ roleName = pRoleName_+ }++-- | The name of the instance profile to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+removeRoleFromInstanceProfile_instanceProfileName :: Lens.Lens' RemoveRoleFromInstanceProfile Prelude.Text+removeRoleFromInstanceProfile_instanceProfileName = Lens.lens (\RemoveRoleFromInstanceProfile' {instanceProfileName} -> instanceProfileName) (\s@RemoveRoleFromInstanceProfile' {} a -> s {instanceProfileName = a} :: RemoveRoleFromInstanceProfile)++-- | The name of the role to remove.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+removeRoleFromInstanceProfile_roleName :: Lens.Lens' RemoveRoleFromInstanceProfile Prelude.Text+removeRoleFromInstanceProfile_roleName = Lens.lens (\RemoveRoleFromInstanceProfile' {roleName} -> roleName) (\s@RemoveRoleFromInstanceProfile' {} a -> s {roleName = a} :: RemoveRoleFromInstanceProfile)++instance+ Core.AWSRequest+ RemoveRoleFromInstanceProfile+ where+ type+ AWSResponse RemoveRoleFromInstanceProfile =+ RemoveRoleFromInstanceProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ RemoveRoleFromInstanceProfileResponse'++instance+ Prelude.Hashable+ RemoveRoleFromInstanceProfile+ where+ hashWithSalt _salt RemoveRoleFromInstanceProfile' {..} =+ _salt+ `Prelude.hashWithSalt` instanceProfileName+ `Prelude.hashWithSalt` roleName++instance Prelude.NFData RemoveRoleFromInstanceProfile where+ rnf RemoveRoleFromInstanceProfile' {..} =+ Prelude.rnf instanceProfileName+ `Prelude.seq` Prelude.rnf roleName++instance Data.ToHeaders RemoveRoleFromInstanceProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath RemoveRoleFromInstanceProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery RemoveRoleFromInstanceProfile where+ toQuery RemoveRoleFromInstanceProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "RemoveRoleFromInstanceProfile" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "InstanceProfileName" Data.=: instanceProfileName,+ "RoleName" Data.=: roleName+ ]++-- | /See:/ 'newRemoveRoleFromInstanceProfileResponse' smart constructor.+data RemoveRoleFromInstanceProfileResponse = RemoveRoleFromInstanceProfileResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveRoleFromInstanceProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newRemoveRoleFromInstanceProfileResponse ::+ RemoveRoleFromInstanceProfileResponse+newRemoveRoleFromInstanceProfileResponse =+ RemoveRoleFromInstanceProfileResponse'++instance+ Prelude.NFData+ RemoveRoleFromInstanceProfileResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/RemoveUserFromGroup.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.RemoveUserFromGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified user from the specified group.+module Amazonka.IAM.RemoveUserFromGroup+ ( -- * Creating a Request+ RemoveUserFromGroup (..),+ newRemoveUserFromGroup,++ -- * Request Lenses+ removeUserFromGroup_groupName,+ removeUserFromGroup_userName,++ -- * Destructuring the Response+ RemoveUserFromGroupResponse (..),+ newRemoveUserFromGroupResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRemoveUserFromGroup' smart constructor.+data RemoveUserFromGroup = RemoveUserFromGroup'+ { -- | The name of the group to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text,+ -- | The name of the user to remove.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveUserFromGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupName', 'removeUserFromGroup_groupName' - The name of the group to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'userName', 'removeUserFromGroup_userName' - The name of the user to remove.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newRemoveUserFromGroup ::+ -- | 'groupName'+ Prelude.Text ->+ -- | 'userName'+ Prelude.Text ->+ RemoveUserFromGroup+newRemoveUserFromGroup pGroupName_ pUserName_ =+ RemoveUserFromGroup'+ { groupName = pGroupName_,+ userName = pUserName_+ }++-- | The name of the group to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+removeUserFromGroup_groupName :: Lens.Lens' RemoveUserFromGroup Prelude.Text+removeUserFromGroup_groupName = Lens.lens (\RemoveUserFromGroup' {groupName} -> groupName) (\s@RemoveUserFromGroup' {} a -> s {groupName = a} :: RemoveUserFromGroup)++-- | The name of the user to remove.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+removeUserFromGroup_userName :: Lens.Lens' RemoveUserFromGroup Prelude.Text+removeUserFromGroup_userName = Lens.lens (\RemoveUserFromGroup' {userName} -> userName) (\s@RemoveUserFromGroup' {} a -> s {userName = a} :: RemoveUserFromGroup)++instance Core.AWSRequest RemoveUserFromGroup where+ type+ AWSResponse RemoveUserFromGroup =+ RemoveUserFromGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull RemoveUserFromGroupResponse'++instance Prelude.Hashable RemoveUserFromGroup where+ hashWithSalt _salt RemoveUserFromGroup' {..} =+ _salt+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` userName++instance Prelude.NFData RemoveUserFromGroup where+ rnf RemoveUserFromGroup' {..} =+ Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders RemoveUserFromGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath RemoveUserFromGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery RemoveUserFromGroup where+ toQuery RemoveUserFromGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("RemoveUserFromGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GroupName" Data.=: groupName,+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newRemoveUserFromGroupResponse' smart constructor.+data RemoveUserFromGroupResponse = RemoveUserFromGroupResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveUserFromGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newRemoveUserFromGroupResponse ::+ RemoveUserFromGroupResponse+newRemoveUserFromGroupResponse =+ RemoveUserFromGroupResponse'++instance Prelude.NFData RemoveUserFromGroupResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/ResetServiceSpecificCredential.hs view
@@ -0,0 +1,246 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ResetServiceSpecificCredential+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Resets the password for a service-specific credential. The new password+-- is Amazon Web Services generated and cryptographically strong. It cannot+-- be configured by the user. Resetting the password immediately+-- invalidates the previous password associated with this user.+module Amazonka.IAM.ResetServiceSpecificCredential+ ( -- * Creating a Request+ ResetServiceSpecificCredential (..),+ newResetServiceSpecificCredential,++ -- * Request Lenses+ resetServiceSpecificCredential_userName,+ resetServiceSpecificCredential_serviceSpecificCredentialId,++ -- * Destructuring the Response+ ResetServiceSpecificCredentialResponse (..),+ newResetServiceSpecificCredentialResponse,++ -- * Response Lenses+ resetServiceSpecificCredentialResponse_serviceSpecificCredential,+ resetServiceSpecificCredentialResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newResetServiceSpecificCredential' smart constructor.+data ResetServiceSpecificCredential = ResetServiceSpecificCredential'+ { -- | The name of the IAM user associated with the service-specific+ -- credential. If this value is not specified, then the operation assumes+ -- the user whose credentials are used to call the operation.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the service-specific credential.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ serviceSpecificCredentialId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResetServiceSpecificCredential' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'resetServiceSpecificCredential_userName' - The name of the IAM user associated with the service-specific+-- credential. If this value is not specified, then the operation assumes+-- the user whose credentials are used to call the operation.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'serviceSpecificCredentialId', 'resetServiceSpecificCredential_serviceSpecificCredentialId' - The unique identifier of the service-specific credential.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+newResetServiceSpecificCredential ::+ -- | 'serviceSpecificCredentialId'+ Prelude.Text ->+ ResetServiceSpecificCredential+newResetServiceSpecificCredential+ pServiceSpecificCredentialId_ =+ ResetServiceSpecificCredential'+ { userName =+ Prelude.Nothing,+ serviceSpecificCredentialId =+ pServiceSpecificCredentialId_+ }++-- | The name of the IAM user associated with the service-specific+-- credential. If this value is not specified, then the operation assumes+-- the user whose credentials are used to call the operation.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+resetServiceSpecificCredential_userName :: Lens.Lens' ResetServiceSpecificCredential (Prelude.Maybe Prelude.Text)+resetServiceSpecificCredential_userName = Lens.lens (\ResetServiceSpecificCredential' {userName} -> userName) (\s@ResetServiceSpecificCredential' {} a -> s {userName = a} :: ResetServiceSpecificCredential)++-- | The unique identifier of the service-specific credential.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+resetServiceSpecificCredential_serviceSpecificCredentialId :: Lens.Lens' ResetServiceSpecificCredential Prelude.Text+resetServiceSpecificCredential_serviceSpecificCredentialId = Lens.lens (\ResetServiceSpecificCredential' {serviceSpecificCredentialId} -> serviceSpecificCredentialId) (\s@ResetServiceSpecificCredential' {} a -> s {serviceSpecificCredentialId = a} :: ResetServiceSpecificCredential)++instance+ Core.AWSRequest+ ResetServiceSpecificCredential+ where+ type+ AWSResponse ResetServiceSpecificCredential =+ ResetServiceSpecificCredentialResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "ResetServiceSpecificCredentialResult"+ ( \s h x ->+ ResetServiceSpecificCredentialResponse'+ Prelude.<$> (x Data..@? "ServiceSpecificCredential")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ResetServiceSpecificCredential+ where+ hashWithSalt+ _salt+ ResetServiceSpecificCredential' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` serviceSpecificCredentialId++instance+ Prelude.NFData+ ResetServiceSpecificCredential+ where+ rnf ResetServiceSpecificCredential' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf serviceSpecificCredentialId++instance+ Data.ToHeaders+ ResetServiceSpecificCredential+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ResetServiceSpecificCredential where+ toPath = Prelude.const "/"++instance Data.ToQuery ResetServiceSpecificCredential where+ toQuery ResetServiceSpecificCredential' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "ResetServiceSpecificCredential" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "ServiceSpecificCredentialId"+ Data.=: serviceSpecificCredentialId+ ]++-- | /See:/ 'newResetServiceSpecificCredentialResponse' smart constructor.+data ResetServiceSpecificCredentialResponse = ResetServiceSpecificCredentialResponse'+ { -- | A structure with details about the updated service-specific credential,+ -- including the new password.+ --+ -- This is the __only__ time that you can access the password. You cannot+ -- recover the password later, but you can reset it again.+ serviceSpecificCredential :: Prelude.Maybe ServiceSpecificCredential,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResetServiceSpecificCredentialResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serviceSpecificCredential', 'resetServiceSpecificCredentialResponse_serviceSpecificCredential' - A structure with details about the updated service-specific credential,+-- including the new password.+--+-- This is the __only__ time that you can access the password. You cannot+-- recover the password later, but you can reset it again.+--+-- 'httpStatus', 'resetServiceSpecificCredentialResponse_httpStatus' - The response's http status code.+newResetServiceSpecificCredentialResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ResetServiceSpecificCredentialResponse+newResetServiceSpecificCredentialResponse+ pHttpStatus_ =+ ResetServiceSpecificCredentialResponse'+ { serviceSpecificCredential =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure with details about the updated service-specific credential,+-- including the new password.+--+-- This is the __only__ time that you can access the password. You cannot+-- recover the password later, but you can reset it again.+resetServiceSpecificCredentialResponse_serviceSpecificCredential :: Lens.Lens' ResetServiceSpecificCredentialResponse (Prelude.Maybe ServiceSpecificCredential)+resetServiceSpecificCredentialResponse_serviceSpecificCredential = Lens.lens (\ResetServiceSpecificCredentialResponse' {serviceSpecificCredential} -> serviceSpecificCredential) (\s@ResetServiceSpecificCredentialResponse' {} a -> s {serviceSpecificCredential = a} :: ResetServiceSpecificCredentialResponse)++-- | The response's http status code.+resetServiceSpecificCredentialResponse_httpStatus :: Lens.Lens' ResetServiceSpecificCredentialResponse Prelude.Int+resetServiceSpecificCredentialResponse_httpStatus = Lens.lens (\ResetServiceSpecificCredentialResponse' {httpStatus} -> httpStatus) (\s@ResetServiceSpecificCredentialResponse' {} a -> s {httpStatus = a} :: ResetServiceSpecificCredentialResponse)++instance+ Prelude.NFData+ ResetServiceSpecificCredentialResponse+ where+ rnf ResetServiceSpecificCredentialResponse' {..} =+ Prelude.rnf serviceSpecificCredential+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/ResyncMFADevice.hs view
@@ -0,0 +1,221 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.ResyncMFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Synchronizes the specified MFA device with its IAM resource object on+-- the Amazon Web Services servers.+--+-- For more information about creating and working with virtual MFA+-- devices, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html Using a virtual MFA device>+-- in the /IAM User Guide/.+module Amazonka.IAM.ResyncMFADevice+ ( -- * Creating a Request+ ResyncMFADevice (..),+ newResyncMFADevice,++ -- * Request Lenses+ resyncMFADevice_userName,+ resyncMFADevice_serialNumber,+ resyncMFADevice_authenticationCode1,+ resyncMFADevice_authenticationCode2,++ -- * Destructuring the Response+ ResyncMFADeviceResponse (..),+ newResyncMFADeviceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newResyncMFADevice' smart constructor.+data ResyncMFADevice = ResyncMFADevice'+ { -- | The name of the user whose MFA device you want to resynchronize.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | Serial number that uniquely identifies the MFA device.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serialNumber :: Prelude.Text,+ -- | An authentication code emitted by the device.+ --+ -- The format for this parameter is a sequence of six digits.+ authenticationCode1 :: Prelude.Text,+ -- | A subsequent authentication code emitted by the device.+ --+ -- The format for this parameter is a sequence of six digits.+ authenticationCode2 :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResyncMFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'resyncMFADevice_userName' - The name of the user whose MFA device you want to resynchronize.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'serialNumber', 'resyncMFADevice_serialNumber' - Serial number that uniquely identifies the MFA device.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'authenticationCode1', 'resyncMFADevice_authenticationCode1' - An authentication code emitted by the device.+--+-- The format for this parameter is a sequence of six digits.+--+-- 'authenticationCode2', 'resyncMFADevice_authenticationCode2' - A subsequent authentication code emitted by the device.+--+-- The format for this parameter is a sequence of six digits.+newResyncMFADevice ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'serialNumber'+ Prelude.Text ->+ -- | 'authenticationCode1'+ Prelude.Text ->+ -- | 'authenticationCode2'+ Prelude.Text ->+ ResyncMFADevice+newResyncMFADevice+ pUserName_+ pSerialNumber_+ pAuthenticationCode1_+ pAuthenticationCode2_ =+ ResyncMFADevice'+ { userName = pUserName_,+ serialNumber = pSerialNumber_,+ authenticationCode1 = pAuthenticationCode1_,+ authenticationCode2 = pAuthenticationCode2_+ }++-- | The name of the user whose MFA device you want to resynchronize.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+resyncMFADevice_userName :: Lens.Lens' ResyncMFADevice Prelude.Text+resyncMFADevice_userName = Lens.lens (\ResyncMFADevice' {userName} -> userName) (\s@ResyncMFADevice' {} a -> s {userName = a} :: ResyncMFADevice)++-- | Serial number that uniquely identifies the MFA device.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+resyncMFADevice_serialNumber :: Lens.Lens' ResyncMFADevice Prelude.Text+resyncMFADevice_serialNumber = Lens.lens (\ResyncMFADevice' {serialNumber} -> serialNumber) (\s@ResyncMFADevice' {} a -> s {serialNumber = a} :: ResyncMFADevice)++-- | An authentication code emitted by the device.+--+-- The format for this parameter is a sequence of six digits.+resyncMFADevice_authenticationCode1 :: Lens.Lens' ResyncMFADevice Prelude.Text+resyncMFADevice_authenticationCode1 = Lens.lens (\ResyncMFADevice' {authenticationCode1} -> authenticationCode1) (\s@ResyncMFADevice' {} a -> s {authenticationCode1 = a} :: ResyncMFADevice)++-- | A subsequent authentication code emitted by the device.+--+-- The format for this parameter is a sequence of six digits.+resyncMFADevice_authenticationCode2 :: Lens.Lens' ResyncMFADevice Prelude.Text+resyncMFADevice_authenticationCode2 = Lens.lens (\ResyncMFADevice' {authenticationCode2} -> authenticationCode2) (\s@ResyncMFADevice' {} a -> s {authenticationCode2 = a} :: ResyncMFADevice)++instance Core.AWSRequest ResyncMFADevice where+ type+ AWSResponse ResyncMFADevice =+ ResyncMFADeviceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull ResyncMFADeviceResponse'++instance Prelude.Hashable ResyncMFADevice where+ hashWithSalt _salt ResyncMFADevice' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` serialNumber+ `Prelude.hashWithSalt` authenticationCode1+ `Prelude.hashWithSalt` authenticationCode2++instance Prelude.NFData ResyncMFADevice where+ rnf ResyncMFADevice' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf serialNumber+ `Prelude.seq` Prelude.rnf authenticationCode1+ `Prelude.seq` Prelude.rnf authenticationCode2++instance Data.ToHeaders ResyncMFADevice where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ResyncMFADevice where+ toPath = Prelude.const "/"++instance Data.ToQuery ResyncMFADevice where+ toQuery ResyncMFADevice' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("ResyncMFADevice" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "SerialNumber" Data.=: serialNumber,+ "AuthenticationCode1" Data.=: authenticationCode1,+ "AuthenticationCode2" Data.=: authenticationCode2+ ]++-- | /See:/ 'newResyncMFADeviceResponse' smart constructor.+data ResyncMFADeviceResponse = ResyncMFADeviceResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResyncMFADeviceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newResyncMFADeviceResponse ::+ ResyncMFADeviceResponse+newResyncMFADeviceResponse = ResyncMFADeviceResponse'++instance Prelude.NFData ResyncMFADeviceResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/SetDefaultPolicyVersion.hs view
@@ -0,0 +1,180 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.SetDefaultPolicyVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets the specified version of the specified policy as the policy\'s+-- default (operative) version.+--+-- This operation affects all users, groups, and roles that the policy is+-- attached to. To list the users, groups, and roles that the policy is+-- attached to, use ListEntitiesForPolicy.+--+-- For information about managed policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+module Amazonka.IAM.SetDefaultPolicyVersion+ ( -- * Creating a Request+ SetDefaultPolicyVersion (..),+ newSetDefaultPolicyVersion,++ -- * Request Lenses+ setDefaultPolicyVersion_policyArn,+ setDefaultPolicyVersion_versionId,++ -- * Destructuring the Response+ SetDefaultPolicyVersionResponse (..),+ newSetDefaultPolicyVersionResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newSetDefaultPolicyVersion' smart constructor.+data SetDefaultPolicyVersion = SetDefaultPolicyVersion'+ { -- | The Amazon Resource Name (ARN) of the IAM policy whose default version+ -- you want to set.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policyArn :: Prelude.Text,+ -- | The version of the policy to set as the default (operative) version.+ --+ -- For more information about managed policy versions, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+ -- in the /IAM User Guide/.+ versionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SetDefaultPolicyVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyArn', 'setDefaultPolicyVersion_policyArn' - The Amazon Resource Name (ARN) of the IAM policy whose default version+-- you want to set.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'versionId', 'setDefaultPolicyVersion_versionId' - The version of the policy to set as the default (operative) version.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+newSetDefaultPolicyVersion ::+ -- | 'policyArn'+ Prelude.Text ->+ -- | 'versionId'+ Prelude.Text ->+ SetDefaultPolicyVersion+newSetDefaultPolicyVersion pPolicyArn_ pVersionId_ =+ SetDefaultPolicyVersion'+ { policyArn = pPolicyArn_,+ versionId = pVersionId_+ }++-- | The Amazon Resource Name (ARN) of the IAM policy whose default version+-- you want to set.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+setDefaultPolicyVersion_policyArn :: Lens.Lens' SetDefaultPolicyVersion Prelude.Text+setDefaultPolicyVersion_policyArn = Lens.lens (\SetDefaultPolicyVersion' {policyArn} -> policyArn) (\s@SetDefaultPolicyVersion' {} a -> s {policyArn = a} :: SetDefaultPolicyVersion)++-- | The version of the policy to set as the default (operative) version.+--+-- For more information about managed policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+setDefaultPolicyVersion_versionId :: Lens.Lens' SetDefaultPolicyVersion Prelude.Text+setDefaultPolicyVersion_versionId = Lens.lens (\SetDefaultPolicyVersion' {versionId} -> versionId) (\s@SetDefaultPolicyVersion' {} a -> s {versionId = a} :: SetDefaultPolicyVersion)++instance Core.AWSRequest SetDefaultPolicyVersion where+ type+ AWSResponse SetDefaultPolicyVersion =+ SetDefaultPolicyVersionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ SetDefaultPolicyVersionResponse'++instance Prelude.Hashable SetDefaultPolicyVersion where+ hashWithSalt _salt SetDefaultPolicyVersion' {..} =+ _salt+ `Prelude.hashWithSalt` policyArn+ `Prelude.hashWithSalt` versionId++instance Prelude.NFData SetDefaultPolicyVersion where+ rnf SetDefaultPolicyVersion' {..} =+ Prelude.rnf policyArn+ `Prelude.seq` Prelude.rnf versionId++instance Data.ToHeaders SetDefaultPolicyVersion where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath SetDefaultPolicyVersion where+ toPath = Prelude.const "/"++instance Data.ToQuery SetDefaultPolicyVersion where+ toQuery SetDefaultPolicyVersion' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("SetDefaultPolicyVersion" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyArn" Data.=: policyArn,+ "VersionId" Data.=: versionId+ ]++-- | /See:/ 'newSetDefaultPolicyVersionResponse' smart constructor.+data SetDefaultPolicyVersionResponse = SetDefaultPolicyVersionResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SetDefaultPolicyVersionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newSetDefaultPolicyVersionResponse ::+ SetDefaultPolicyVersionResponse+newSetDefaultPolicyVersionResponse =+ SetDefaultPolicyVersionResponse'++instance+ Prelude.NFData+ SetDefaultPolicyVersionResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/SetSecurityTokenServicePreferences.hs view
@@ -0,0 +1,206 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.SetSecurityTokenServicePreferences+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets the specified version of the global endpoint token as the token+-- version used for the Amazon Web Services account.+--+-- By default, Security Token Service (STS) is available as a global+-- service, and all STS requests go to a single endpoint at+-- @https:\/\/sts.amazonaws.com@. Amazon Web Services recommends using+-- Regional STS endpoints to reduce latency, build in redundancy, and+-- increase session token availability. For information about Regional+-- endpoints for STS, see+-- <https://docs.aws.amazon.com/general/latest/gr/sts.html Security Token Service endpoints and quotas>+-- in the /Amazon Web Services General Reference/.+--+-- If you make an STS call to the global endpoint, the resulting session+-- tokens might be valid in some Regions but not others. It depends on the+-- version that is set in this operation. Version 1 tokens are valid only+-- in Amazon Web Services Regions that are available by default. These+-- tokens do not work in manually enabled Regions, such as Asia Pacific+-- (Hong Kong). Version 2 tokens are valid in all Regions. However, version+-- 2 tokens are longer and might affect systems where you temporarily store+-- tokens. For information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html Activating and deactivating STS in an Amazon Web Services Region>+-- in the /IAM User Guide/.+--+-- To view the current session token version, see the+-- @GlobalEndpointTokenVersion@ entry in the response of the+-- GetAccountSummary operation.+module Amazonka.IAM.SetSecurityTokenServicePreferences+ ( -- * Creating a Request+ SetSecurityTokenServicePreferences (..),+ newSetSecurityTokenServicePreferences,++ -- * Request Lenses+ setSecurityTokenServicePreferences_globalEndpointTokenVersion,++ -- * Destructuring the Response+ SetSecurityTokenServicePreferencesResponse (..),+ newSetSecurityTokenServicePreferencesResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newSetSecurityTokenServicePreferences' smart constructor.+data SetSecurityTokenServicePreferences = SetSecurityTokenServicePreferences'+ { -- | The version of the global endpoint token. Version 1 tokens are valid+ -- only in Amazon Web Services Regions that are available by default. These+ -- tokens do not work in manually enabled Regions, such as Asia Pacific+ -- (Hong Kong). Version 2 tokens are valid in all Regions. However, version+ -- 2 tokens are longer and might affect systems where you temporarily store+ -- tokens.+ --+ -- For information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html Activating and deactivating STS in an Amazon Web Services Region>+ -- in the /IAM User Guide/.+ globalEndpointTokenVersion :: GlobalEndpointTokenVersion+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SetSecurityTokenServicePreferences' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'globalEndpointTokenVersion', 'setSecurityTokenServicePreferences_globalEndpointTokenVersion' - The version of the global endpoint token. Version 1 tokens are valid+-- only in Amazon Web Services Regions that are available by default. These+-- tokens do not work in manually enabled Regions, such as Asia Pacific+-- (Hong Kong). Version 2 tokens are valid in all Regions. However, version+-- 2 tokens are longer and might affect systems where you temporarily store+-- tokens.+--+-- For information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html Activating and deactivating STS in an Amazon Web Services Region>+-- in the /IAM User Guide/.+newSetSecurityTokenServicePreferences ::+ -- | 'globalEndpointTokenVersion'+ GlobalEndpointTokenVersion ->+ SetSecurityTokenServicePreferences+newSetSecurityTokenServicePreferences+ pGlobalEndpointTokenVersion_ =+ SetSecurityTokenServicePreferences'+ { globalEndpointTokenVersion =+ pGlobalEndpointTokenVersion_+ }++-- | The version of the global endpoint token. Version 1 tokens are valid+-- only in Amazon Web Services Regions that are available by default. These+-- tokens do not work in manually enabled Regions, such as Asia Pacific+-- (Hong Kong). Version 2 tokens are valid in all Regions. However, version+-- 2 tokens are longer and might affect systems where you temporarily store+-- tokens.+--+-- For information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html Activating and deactivating STS in an Amazon Web Services Region>+-- in the /IAM User Guide/.+setSecurityTokenServicePreferences_globalEndpointTokenVersion :: Lens.Lens' SetSecurityTokenServicePreferences GlobalEndpointTokenVersion+setSecurityTokenServicePreferences_globalEndpointTokenVersion = Lens.lens (\SetSecurityTokenServicePreferences' {globalEndpointTokenVersion} -> globalEndpointTokenVersion) (\s@SetSecurityTokenServicePreferences' {} a -> s {globalEndpointTokenVersion = a} :: SetSecurityTokenServicePreferences)++instance+ Core.AWSRequest+ SetSecurityTokenServicePreferences+ where+ type+ AWSResponse SetSecurityTokenServicePreferences =+ SetSecurityTokenServicePreferencesResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ SetSecurityTokenServicePreferencesResponse'++instance+ Prelude.Hashable+ SetSecurityTokenServicePreferences+ where+ hashWithSalt+ _salt+ SetSecurityTokenServicePreferences' {..} =+ _salt+ `Prelude.hashWithSalt` globalEndpointTokenVersion++instance+ Prelude.NFData+ SetSecurityTokenServicePreferences+ where+ rnf SetSecurityTokenServicePreferences' {..} =+ Prelude.rnf globalEndpointTokenVersion++instance+ Data.ToHeaders+ SetSecurityTokenServicePreferences+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ SetSecurityTokenServicePreferences+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ SetSecurityTokenServicePreferences+ where+ toQuery SetSecurityTokenServicePreferences' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "SetSecurityTokenServicePreferences" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "GlobalEndpointTokenVersion"+ Data.=: globalEndpointTokenVersion+ ]++-- | /See:/ 'newSetSecurityTokenServicePreferencesResponse' smart constructor.+data SetSecurityTokenServicePreferencesResponse = SetSecurityTokenServicePreferencesResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SetSecurityTokenServicePreferencesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newSetSecurityTokenServicePreferencesResponse ::+ SetSecurityTokenServicePreferencesResponse+newSetSecurityTokenServicePreferencesResponse =+ SetSecurityTokenServicePreferencesResponse'++instance+ Prelude.NFData+ SetSecurityTokenServicePreferencesResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/SimulateCustomPolicy.hs view
@@ -0,0 +1,777 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.SimulateCustomPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Simulate how a set of IAM policies and optionally a resource-based+-- policy works with a list of API operations and Amazon Web Services+-- resources to determine the policies\' effective permissions. The+-- policies are provided as strings.+--+-- The simulation does not perform the API operations; it only checks the+-- authorization to determine if the simulated policies allow or deny the+-- operations. You can simulate resources that don\'t exist in your+-- account.+--+-- If you want to simulate existing policies that are attached to an IAM+-- user, group, or role, use SimulatePrincipalPolicy instead.+--+-- Context keys are variables that are maintained by Amazon Web Services+-- and its services and which provide details about the context of an API+-- query request. You can use the @Condition@ element of an IAM policy to+-- evaluate context keys. To get the list of context keys that the policies+-- require for correct simulation, use GetContextKeysForCustomPolicy.+--+-- If the output is long, you can use @MaxItems@ and @Marker@ parameters to+-- paginate the results.+--+-- For more information about using the policy simulator, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_testing-policies.html Testing IAM policies with the IAM policy simulator>+-- in the /IAM User Guide/.+--+-- This operation returns paginated results.+module Amazonka.IAM.SimulateCustomPolicy+ ( -- * Creating a Request+ SimulateCustomPolicy (..),+ newSimulateCustomPolicy,++ -- * Request Lenses+ simulateCustomPolicy_callerArn,+ simulateCustomPolicy_contextEntries,+ simulateCustomPolicy_marker,+ simulateCustomPolicy_maxItems,+ simulateCustomPolicy_permissionsBoundaryPolicyInputList,+ simulateCustomPolicy_resourceArns,+ simulateCustomPolicy_resourceHandlingOption,+ simulateCustomPolicy_resourceOwner,+ simulateCustomPolicy_resourcePolicy,+ simulateCustomPolicy_policyInputList,+ simulateCustomPolicy_actionNames,++ -- * Destructuring the Response+ SimulatePolicyResponse (..),+ newSimulatePolicyResponse,++ -- * Response Lenses+ simulatePolicyResponse_evaluationResults,+ simulatePolicyResponse_isTruncated,+ simulatePolicyResponse_marker,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newSimulateCustomPolicy' smart constructor.+data SimulateCustomPolicy = SimulateCustomPolicy'+ { -- | The ARN of the IAM user that you want to use as the simulated caller of+ -- the API operations. @CallerArn@ is required if you include a+ -- @ResourcePolicy@ so that the policy\'s @Principal@ element has a value+ -- to use in evaluating the policy.+ --+ -- You can specify only the ARN of an IAM user. You cannot specify the ARN+ -- of an assumed role, federated user, or a service principal.+ callerArn :: Prelude.Maybe Prelude.Text,+ -- | A list of context keys and corresponding values for the simulation to+ -- use. Whenever a context key is evaluated in one of the simulated IAM+ -- permissions policies, the corresponding value is supplied.+ contextEntries :: Prelude.Maybe [ContextEntry],+ -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The IAM permissions boundary policy to simulate. The permissions+ -- boundary sets the maximum permissions that an IAM entity can have. You+ -- can input only one permissions boundary when you pass a policy to this+ -- operation. For more information about permissions boundaries, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM entities>+ -- in the /IAM User Guide/. The policy input is specified as a string that+ -- contains the complete, valid JSON text of a permissions boundary policy.+ --+ -- The maximum length of the policy document that you can pass in this+ -- operation, including whitespace, is listed below. To view the maximum+ -- character counts of a managed policy with no whitespaces, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ permissionsBoundaryPolicyInputList :: Prelude.Maybe [Prelude.Text],+ -- | A list of ARNs of Amazon Web Services resources to include in the+ -- simulation. If this parameter is not provided, then the value defaults+ -- to @*@ (all resources). Each API in the @ActionNames@ parameter is+ -- evaluated for each resource in this list. The simulation determines the+ -- access result (allowed or denied) of each combination and reports it in+ -- the response. You can simulate resources that don\'t exist in your+ -- account.+ --+ -- The simulation does not automatically retrieve policies for the+ -- specified resources. If you want to include a resource policy in the+ -- simulation, then you must include the policy as a string in the+ -- @ResourcePolicy@ parameter.+ --+ -- If you include a @ResourcePolicy@, then it must be applicable to all of+ -- the resources included in the simulation or you receive an invalid input+ -- error.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ resourceArns :: Prelude.Maybe [Prelude.Text],+ -- | Specifies the type of simulation to run. Different API operations that+ -- support resource-based policies require different combinations of+ -- resources. By specifying the type of simulation to run, you enable the+ -- policy simulator to enforce the presence of the required resources to+ -- ensure reliable simulation results. If your simulation does not match+ -- one of the following scenarios, then you can omit this parameter. The+ -- following list shows each of the supported scenario values and the+ -- resources that you must define to run the simulation.+ --+ -- Each of the EC2 scenarios requires that you specify instance, image, and+ -- security group resources. If your scenario includes an EBS volume, then+ -- you must specify that volume as a resource. If the EC2 scenario includes+ -- VPC, then you must supply the network interface resource. If it includes+ -- an IP subnet, then you must specify the subnet resource. For more+ -- information on the EC2 scenario options, see+ -- <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported platforms>+ -- in the /Amazon EC2 User Guide/.+ --+ -- - __EC2-VPC-InstanceStore__+ --+ -- instance, image, security group, network interface+ --+ -- - __EC2-VPC-InstanceStore-Subnet__+ --+ -- instance, image, security group, network interface, subnet+ --+ -- - __EC2-VPC-EBS__+ --+ -- instance, image, security group, network interface, volume+ --+ -- - __EC2-VPC-EBS-Subnet__+ --+ -- instance, image, security group, network interface, subnet, volume+ resourceHandlingOption :: Prelude.Maybe Prelude.Text,+ -- | An ARN representing the Amazon Web Services account ID that specifies+ -- the owner of any simulated resource that does not identify its owner in+ -- the resource ARN. Examples of resource ARNs include an S3 bucket or+ -- object. If @ResourceOwner@ is specified, it is also used as the account+ -- owner of any @ResourcePolicy@ included in the simulation. If the+ -- @ResourceOwner@ parameter is not specified, then the owner of the+ -- resources and the resource policy defaults to the account of the+ -- identity provided in @CallerArn@. This parameter is required only if you+ -- specify a resource-based policy and account that owns the resource is+ -- different from the account that owns the simulated calling user+ -- @CallerArn@.+ --+ -- The ARN for an account uses the following syntax:+ -- @arn:aws:iam::@/@AWS-account-ID@/@:root@. For example, to represent the+ -- account with the 112233445566 ID, use the following ARN:+ -- @arn:aws:iam::112233445566-ID:root@.+ resourceOwner :: Prelude.Maybe Prelude.Text,+ -- | A resource-based policy to include in the simulation provided as a+ -- string. Each resource in the simulation is treated as if it had this+ -- policy attached. You can include only one resource-based policy in a+ -- simulation.+ --+ -- The maximum length of the policy document that you can pass in this+ -- operation, including whitespace, is listed below. To view the maximum+ -- character counts of a managed policy with no whitespaces, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ resourcePolicy :: Prelude.Maybe Prelude.Text,+ -- | A list of policy documents to include in the simulation. Each document+ -- is specified as a string containing the complete, valid JSON text of an+ -- IAM policy. Do not include any resource-based policies in this+ -- parameter. Any resource-based policy must be submitted with the+ -- @ResourcePolicy@ parameter. The policies cannot be \"scope-down\"+ -- policies, such as you could include in a call to+ -- <https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html GetFederationToken>+ -- or one of the+ -- <https://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html AssumeRole>+ -- API operations. In other words, do not use policies designed to restrict+ -- what a user can do while using the temporary credentials.+ --+ -- The maximum length of the policy document that you can pass in this+ -- operation, including whitespace, is listed below. To view the maximum+ -- character counts of a managed policy with no whitespaces, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyInputList :: [Prelude.Text],+ -- | A list of names of API operations to evaluate in the simulation. Each+ -- operation is evaluated against each resource. Each operation must+ -- include the service identifier, such as @iam:CreateUser@. This operation+ -- does not support using wildcards (*) in an action name.+ actionNames :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulateCustomPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'callerArn', 'simulateCustomPolicy_callerArn' - The ARN of the IAM user that you want to use as the simulated caller of+-- the API operations. @CallerArn@ is required if you include a+-- @ResourcePolicy@ so that the policy\'s @Principal@ element has a value+-- to use in evaluating the policy.+--+-- You can specify only the ARN of an IAM user. You cannot specify the ARN+-- of an assumed role, federated user, or a service principal.+--+-- 'contextEntries', 'simulateCustomPolicy_contextEntries' - A list of context keys and corresponding values for the simulation to+-- use. Whenever a context key is evaluated in one of the simulated IAM+-- permissions policies, the corresponding value is supplied.+--+-- 'marker', 'simulateCustomPolicy_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'simulateCustomPolicy_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'permissionsBoundaryPolicyInputList', 'simulateCustomPolicy_permissionsBoundaryPolicyInputList' - The IAM permissions boundary policy to simulate. The permissions+-- boundary sets the maximum permissions that an IAM entity can have. You+-- can input only one permissions boundary when you pass a policy to this+-- operation. For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM entities>+-- in the /IAM User Guide/. The policy input is specified as a string that+-- contains the complete, valid JSON text of a permissions boundary policy.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'resourceArns', 'simulateCustomPolicy_resourceArns' - A list of ARNs of Amazon Web Services resources to include in the+-- simulation. If this parameter is not provided, then the value defaults+-- to @*@ (all resources). Each API in the @ActionNames@ parameter is+-- evaluated for each resource in this list. The simulation determines the+-- access result (allowed or denied) of each combination and reports it in+-- the response. You can simulate resources that don\'t exist in your+-- account.+--+-- The simulation does not automatically retrieve policies for the+-- specified resources. If you want to include a resource policy in the+-- simulation, then you must include the policy as a string in the+-- @ResourcePolicy@ parameter.+--+-- If you include a @ResourcePolicy@, then it must be applicable to all of+-- the resources included in the simulation or you receive an invalid input+-- error.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'resourceHandlingOption', 'simulateCustomPolicy_resourceHandlingOption' - Specifies the type of simulation to run. Different API operations that+-- support resource-based policies require different combinations of+-- resources. By specifying the type of simulation to run, you enable the+-- policy simulator to enforce the presence of the required resources to+-- ensure reliable simulation results. If your simulation does not match+-- one of the following scenarios, then you can omit this parameter. The+-- following list shows each of the supported scenario values and the+-- resources that you must define to run the simulation.+--+-- Each of the EC2 scenarios requires that you specify instance, image, and+-- security group resources. If your scenario includes an EBS volume, then+-- you must specify that volume as a resource. If the EC2 scenario includes+-- VPC, then you must supply the network interface resource. If it includes+-- an IP subnet, then you must specify the subnet resource. For more+-- information on the EC2 scenario options, see+-- <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported platforms>+-- in the /Amazon EC2 User Guide/.+--+-- - __EC2-VPC-InstanceStore__+--+-- instance, image, security group, network interface+--+-- - __EC2-VPC-InstanceStore-Subnet__+--+-- instance, image, security group, network interface, subnet+--+-- - __EC2-VPC-EBS__+--+-- instance, image, security group, network interface, volume+--+-- - __EC2-VPC-EBS-Subnet__+--+-- instance, image, security group, network interface, subnet, volume+--+-- 'resourceOwner', 'simulateCustomPolicy_resourceOwner' - An ARN representing the Amazon Web Services account ID that specifies+-- the owner of any simulated resource that does not identify its owner in+-- the resource ARN. Examples of resource ARNs include an S3 bucket or+-- object. If @ResourceOwner@ is specified, it is also used as the account+-- owner of any @ResourcePolicy@ included in the simulation. If the+-- @ResourceOwner@ parameter is not specified, then the owner of the+-- resources and the resource policy defaults to the account of the+-- identity provided in @CallerArn@. This parameter is required only if you+-- specify a resource-based policy and account that owns the resource is+-- different from the account that owns the simulated calling user+-- @CallerArn@.+--+-- The ARN for an account uses the following syntax:+-- @arn:aws:iam::@/@AWS-account-ID@/@:root@. For example, to represent the+-- account with the 112233445566 ID, use the following ARN:+-- @arn:aws:iam::112233445566-ID:root@.+--+-- 'resourcePolicy', 'simulateCustomPolicy_resourcePolicy' - A resource-based policy to include in the simulation provided as a+-- string. Each resource in the simulation is treated as if it had this+-- policy attached. You can include only one resource-based policy in a+-- simulation.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'policyInputList', 'simulateCustomPolicy_policyInputList' - A list of policy documents to include in the simulation. Each document+-- is specified as a string containing the complete, valid JSON text of an+-- IAM policy. Do not include any resource-based policies in this+-- parameter. Any resource-based policy must be submitted with the+-- @ResourcePolicy@ parameter. The policies cannot be \"scope-down\"+-- policies, such as you could include in a call to+-- <https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html GetFederationToken>+-- or one of the+-- <https://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html AssumeRole>+-- API operations. In other words, do not use policies designed to restrict+-- what a user can do while using the temporary credentials.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'actionNames', 'simulateCustomPolicy_actionNames' - A list of names of API operations to evaluate in the simulation. Each+-- operation is evaluated against each resource. Each operation must+-- include the service identifier, such as @iam:CreateUser@. This operation+-- does not support using wildcards (*) in an action name.+newSimulateCustomPolicy ::+ SimulateCustomPolicy+newSimulateCustomPolicy =+ SimulateCustomPolicy'+ { callerArn = Prelude.Nothing,+ contextEntries = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ permissionsBoundaryPolicyInputList = Prelude.Nothing,+ resourceArns = Prelude.Nothing,+ resourceHandlingOption = Prelude.Nothing,+ resourceOwner = Prelude.Nothing,+ resourcePolicy = Prelude.Nothing,+ policyInputList = Prelude.mempty,+ actionNames = Prelude.mempty+ }++-- | The ARN of the IAM user that you want to use as the simulated caller of+-- the API operations. @CallerArn@ is required if you include a+-- @ResourcePolicy@ so that the policy\'s @Principal@ element has a value+-- to use in evaluating the policy.+--+-- You can specify only the ARN of an IAM user. You cannot specify the ARN+-- of an assumed role, federated user, or a service principal.+simulateCustomPolicy_callerArn :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe Prelude.Text)+simulateCustomPolicy_callerArn = Lens.lens (\SimulateCustomPolicy' {callerArn} -> callerArn) (\s@SimulateCustomPolicy' {} a -> s {callerArn = a} :: SimulateCustomPolicy)++-- | A list of context keys and corresponding values for the simulation to+-- use. Whenever a context key is evaluated in one of the simulated IAM+-- permissions policies, the corresponding value is supplied.+simulateCustomPolicy_contextEntries :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe [ContextEntry])+simulateCustomPolicy_contextEntries = Lens.lens (\SimulateCustomPolicy' {contextEntries} -> contextEntries) (\s@SimulateCustomPolicy' {} a -> s {contextEntries = a} :: SimulateCustomPolicy) Prelude.. Lens.mapping Lens.coerced++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+simulateCustomPolicy_marker :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe Prelude.Text)+simulateCustomPolicy_marker = Lens.lens (\SimulateCustomPolicy' {marker} -> marker) (\s@SimulateCustomPolicy' {} a -> s {marker = a} :: SimulateCustomPolicy)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+simulateCustomPolicy_maxItems :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe Prelude.Natural)+simulateCustomPolicy_maxItems = Lens.lens (\SimulateCustomPolicy' {maxItems} -> maxItems) (\s@SimulateCustomPolicy' {} a -> s {maxItems = a} :: SimulateCustomPolicy)++-- | The IAM permissions boundary policy to simulate. The permissions+-- boundary sets the maximum permissions that an IAM entity can have. You+-- can input only one permissions boundary when you pass a policy to this+-- operation. For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM entities>+-- in the /IAM User Guide/. The policy input is specified as a string that+-- contains the complete, valid JSON text of a permissions boundary policy.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+simulateCustomPolicy_permissionsBoundaryPolicyInputList :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe [Prelude.Text])+simulateCustomPolicy_permissionsBoundaryPolicyInputList = Lens.lens (\SimulateCustomPolicy' {permissionsBoundaryPolicyInputList} -> permissionsBoundaryPolicyInputList) (\s@SimulateCustomPolicy' {} a -> s {permissionsBoundaryPolicyInputList = a} :: SimulateCustomPolicy) Prelude.. Lens.mapping Lens.coerced++-- | A list of ARNs of Amazon Web Services resources to include in the+-- simulation. If this parameter is not provided, then the value defaults+-- to @*@ (all resources). Each API in the @ActionNames@ parameter is+-- evaluated for each resource in this list. The simulation determines the+-- access result (allowed or denied) of each combination and reports it in+-- the response. You can simulate resources that don\'t exist in your+-- account.+--+-- The simulation does not automatically retrieve policies for the+-- specified resources. If you want to include a resource policy in the+-- simulation, then you must include the policy as a string in the+-- @ResourcePolicy@ parameter.+--+-- If you include a @ResourcePolicy@, then it must be applicable to all of+-- the resources included in the simulation or you receive an invalid input+-- error.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+simulateCustomPolicy_resourceArns :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe [Prelude.Text])+simulateCustomPolicy_resourceArns = Lens.lens (\SimulateCustomPolicy' {resourceArns} -> resourceArns) (\s@SimulateCustomPolicy' {} a -> s {resourceArns = a} :: SimulateCustomPolicy) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the type of simulation to run. Different API operations that+-- support resource-based policies require different combinations of+-- resources. By specifying the type of simulation to run, you enable the+-- policy simulator to enforce the presence of the required resources to+-- ensure reliable simulation results. If your simulation does not match+-- one of the following scenarios, then you can omit this parameter. The+-- following list shows each of the supported scenario values and the+-- resources that you must define to run the simulation.+--+-- Each of the EC2 scenarios requires that you specify instance, image, and+-- security group resources. If your scenario includes an EBS volume, then+-- you must specify that volume as a resource. If the EC2 scenario includes+-- VPC, then you must supply the network interface resource. If it includes+-- an IP subnet, then you must specify the subnet resource. For more+-- information on the EC2 scenario options, see+-- <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported platforms>+-- in the /Amazon EC2 User Guide/.+--+-- - __EC2-VPC-InstanceStore__+--+-- instance, image, security group, network interface+--+-- - __EC2-VPC-InstanceStore-Subnet__+--+-- instance, image, security group, network interface, subnet+--+-- - __EC2-VPC-EBS__+--+-- instance, image, security group, network interface, volume+--+-- - __EC2-VPC-EBS-Subnet__+--+-- instance, image, security group, network interface, subnet, volume+simulateCustomPolicy_resourceHandlingOption :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe Prelude.Text)+simulateCustomPolicy_resourceHandlingOption = Lens.lens (\SimulateCustomPolicy' {resourceHandlingOption} -> resourceHandlingOption) (\s@SimulateCustomPolicy' {} a -> s {resourceHandlingOption = a} :: SimulateCustomPolicy)++-- | An ARN representing the Amazon Web Services account ID that specifies+-- the owner of any simulated resource that does not identify its owner in+-- the resource ARN. Examples of resource ARNs include an S3 bucket or+-- object. If @ResourceOwner@ is specified, it is also used as the account+-- owner of any @ResourcePolicy@ included in the simulation. If the+-- @ResourceOwner@ parameter is not specified, then the owner of the+-- resources and the resource policy defaults to the account of the+-- identity provided in @CallerArn@. This parameter is required only if you+-- specify a resource-based policy and account that owns the resource is+-- different from the account that owns the simulated calling user+-- @CallerArn@.+--+-- The ARN for an account uses the following syntax:+-- @arn:aws:iam::@/@AWS-account-ID@/@:root@. For example, to represent the+-- account with the 112233445566 ID, use the following ARN:+-- @arn:aws:iam::112233445566-ID:root@.+simulateCustomPolicy_resourceOwner :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe Prelude.Text)+simulateCustomPolicy_resourceOwner = Lens.lens (\SimulateCustomPolicy' {resourceOwner} -> resourceOwner) (\s@SimulateCustomPolicy' {} a -> s {resourceOwner = a} :: SimulateCustomPolicy)++-- | A resource-based policy to include in the simulation provided as a+-- string. Each resource in the simulation is treated as if it had this+-- policy attached. You can include only one resource-based policy in a+-- simulation.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+simulateCustomPolicy_resourcePolicy :: Lens.Lens' SimulateCustomPolicy (Prelude.Maybe Prelude.Text)+simulateCustomPolicy_resourcePolicy = Lens.lens (\SimulateCustomPolicy' {resourcePolicy} -> resourcePolicy) (\s@SimulateCustomPolicy' {} a -> s {resourcePolicy = a} :: SimulateCustomPolicy)++-- | A list of policy documents to include in the simulation. Each document+-- is specified as a string containing the complete, valid JSON text of an+-- IAM policy. Do not include any resource-based policies in this+-- parameter. Any resource-based policy must be submitted with the+-- @ResourcePolicy@ parameter. The policies cannot be \"scope-down\"+-- policies, such as you could include in a call to+-- <https://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html GetFederationToken>+-- or one of the+-- <https://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html AssumeRole>+-- API operations. In other words, do not use policies designed to restrict+-- what a user can do while using the temporary credentials.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+simulateCustomPolicy_policyInputList :: Lens.Lens' SimulateCustomPolicy [Prelude.Text]+simulateCustomPolicy_policyInputList = Lens.lens (\SimulateCustomPolicy' {policyInputList} -> policyInputList) (\s@SimulateCustomPolicy' {} a -> s {policyInputList = a} :: SimulateCustomPolicy) Prelude.. Lens.coerced++-- | A list of names of API operations to evaluate in the simulation. Each+-- operation is evaluated against each resource. Each operation must+-- include the service identifier, such as @iam:CreateUser@. This operation+-- does not support using wildcards (*) in an action name.+simulateCustomPolicy_actionNames :: Lens.Lens' SimulateCustomPolicy [Prelude.Text]+simulateCustomPolicy_actionNames = Lens.lens (\SimulateCustomPolicy' {actionNames} -> actionNames) (\s@SimulateCustomPolicy' {} a -> s {actionNames = a} :: SimulateCustomPolicy) Prelude.. Lens.coerced++instance Core.AWSPager SimulateCustomPolicy where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? simulatePolicyResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? simulatePolicyResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& simulateCustomPolicy_marker+ Lens..~ rs+ Lens.^? simulatePolicyResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest SimulateCustomPolicy where+ type+ AWSResponse SimulateCustomPolicy =+ SimulatePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "SimulateCustomPolicyResult"+ (\s h x -> Data.parseXML x)++instance Prelude.Hashable SimulateCustomPolicy where+ hashWithSalt _salt SimulateCustomPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` callerArn+ `Prelude.hashWithSalt` contextEntries+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` permissionsBoundaryPolicyInputList+ `Prelude.hashWithSalt` resourceArns+ `Prelude.hashWithSalt` resourceHandlingOption+ `Prelude.hashWithSalt` resourceOwner+ `Prelude.hashWithSalt` resourcePolicy+ `Prelude.hashWithSalt` policyInputList+ `Prelude.hashWithSalt` actionNames++instance Prelude.NFData SimulateCustomPolicy where+ rnf SimulateCustomPolicy' {..} =+ Prelude.rnf callerArn+ `Prelude.seq` Prelude.rnf contextEntries+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf permissionsBoundaryPolicyInputList+ `Prelude.seq` Prelude.rnf resourceArns+ `Prelude.seq` Prelude.rnf resourceHandlingOption+ `Prelude.seq` Prelude.rnf resourceOwner+ `Prelude.seq` Prelude.rnf resourcePolicy+ `Prelude.seq` Prelude.rnf policyInputList+ `Prelude.seq` Prelude.rnf actionNames++instance Data.ToHeaders SimulateCustomPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath SimulateCustomPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery SimulateCustomPolicy where+ toQuery SimulateCustomPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("SimulateCustomPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "CallerArn" Data.=: callerArn,+ "ContextEntries"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> contextEntries+ ),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PermissionsBoundaryPolicyInputList"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> permissionsBoundaryPolicyInputList+ ),+ "ResourceArns"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> resourceArns),+ "ResourceHandlingOption"+ Data.=: resourceHandlingOption,+ "ResourceOwner" Data.=: resourceOwner,+ "ResourcePolicy" Data.=: resourcePolicy,+ "PolicyInputList"+ Data.=: Data.toQueryList "member" policyInputList,+ "ActionNames"+ Data.=: Data.toQueryList "member" actionNames+ ]
+ gen/Amazonka/IAM/SimulatePrincipalPolicy.hs view
@@ -0,0 +1,826 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.SimulatePrincipalPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Simulate how a set of IAM policies attached to an IAM entity works with+-- a list of API operations and Amazon Web Services resources to determine+-- the policies\' effective permissions. The entity can be an IAM user,+-- group, or role. If you specify a user, then the simulation also includes+-- all of the policies that are attached to groups that the user belongs+-- to. You can simulate resources that don\'t exist in your account.+--+-- You can optionally include a list of one or more additional policies+-- specified as strings to include in the simulation. If you want to+-- simulate only policies specified as strings, use SimulateCustomPolicy+-- instead.+--+-- You can also optionally include one resource-based policy to be+-- evaluated with each of the resources included in the simulation.+--+-- The simulation does not perform the API operations; it only checks the+-- authorization to determine if the simulated policies allow or deny the+-- operations.+--+-- __Note:__ This operation discloses information about the permissions+-- granted to other users. If you do not want users to see other user\'s+-- permissions, then consider allowing them to use SimulateCustomPolicy+-- instead.+--+-- Context keys are variables maintained by Amazon Web Services and its+-- services that provide details about the context of an API query request.+-- You can use the @Condition@ element of an IAM policy to evaluate context+-- keys. To get the list of context keys that the policies require for+-- correct simulation, use GetContextKeysForPrincipalPolicy.+--+-- If the output is long, you can use the @MaxItems@ and @Marker@+-- parameters to paginate the results.+--+-- For more information about using the policy simulator, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_testing-policies.html Testing IAM policies with the IAM policy simulator>+-- in the /IAM User Guide/.+--+-- This operation returns paginated results.+module Amazonka.IAM.SimulatePrincipalPolicy+ ( -- * Creating a Request+ SimulatePrincipalPolicy (..),+ newSimulatePrincipalPolicy,++ -- * Request Lenses+ simulatePrincipalPolicy_callerArn,+ simulatePrincipalPolicy_contextEntries,+ simulatePrincipalPolicy_marker,+ simulatePrincipalPolicy_maxItems,+ simulatePrincipalPolicy_permissionsBoundaryPolicyInputList,+ simulatePrincipalPolicy_policyInputList,+ simulatePrincipalPolicy_resourceArns,+ simulatePrincipalPolicy_resourceHandlingOption,+ simulatePrincipalPolicy_resourceOwner,+ simulatePrincipalPolicy_resourcePolicy,+ simulatePrincipalPolicy_policySourceArn,+ simulatePrincipalPolicy_actionNames,++ -- * Destructuring the Response+ SimulatePolicyResponse (..),+ newSimulatePolicyResponse,++ -- * Response Lenses+ simulatePolicyResponse_evaluationResults,+ simulatePolicyResponse_isTruncated,+ simulatePolicyResponse_marker,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newSimulatePrincipalPolicy' smart constructor.+data SimulatePrincipalPolicy = SimulatePrincipalPolicy'+ { -- | The ARN of the IAM user that you want to specify as the simulated caller+ -- of the API operations. If you do not specify a @CallerArn@, it defaults+ -- to the ARN of the user that you specify in @PolicySourceArn@, if you+ -- specified a user. If you include both a @PolicySourceArn@ (for example,+ -- @arn:aws:iam::123456789012:user\/David@) and a @CallerArn@ (for example,+ -- @arn:aws:iam::123456789012:user\/Bob@), the result is that you simulate+ -- calling the API operations as Bob, as if Bob had David\'s policies.+ --+ -- You can specify only the ARN of an IAM user. You cannot specify the ARN+ -- of an assumed role, federated user, or a service principal.+ --+ -- @CallerArn@ is required if you include a @ResourcePolicy@ and the+ -- @PolicySourceArn@ is not the ARN for an IAM user. This is required so+ -- that the resource-based policy\'s @Principal@ element has a value to use+ -- in evaluating the policy.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ callerArn :: Prelude.Maybe Prelude.Text,+ -- | A list of context keys and corresponding values for the simulation to+ -- use. Whenever a context key is evaluated in one of the simulated IAM+ -- permissions policies, the corresponding value is supplied.+ contextEntries :: Prelude.Maybe [ContextEntry],+ -- | Use this parameter only when paginating results and only after you+ -- receive a response indicating that the results are truncated. Set it to+ -- the value of the @Marker@ element in the response that you received to+ -- indicate where the next call should start.+ marker :: Prelude.Maybe Prelude.Text,+ -- | Use this only when paginating results to indicate the maximum number of+ -- items you want in the response. If additional items exist beyond the+ -- maximum you specify, the @IsTruncated@ response element is @true@.+ --+ -- If you do not include this parameter, the number of items defaults to+ -- 100. Note that IAM might return fewer results, even when there are more+ -- results available. In that case, the @IsTruncated@ response element+ -- returns @true@, and @Marker@ contains a value to include in the+ -- subsequent call that tells the service where to continue from.+ maxItems :: Prelude.Maybe Prelude.Natural,+ -- | The IAM permissions boundary policy to simulate. The permissions+ -- boundary sets the maximum permissions that the entity can have. You can+ -- input only one permissions boundary when you pass a policy to this+ -- operation. An IAM entity can only have one permissions boundary in+ -- effect at a time. For example, if a permissions boundary is attached to+ -- an entity and you pass in a different permissions boundary policy using+ -- this parameter, then the new permissions boundary policy is used for the+ -- simulation. For more information about permissions boundaries, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM entities>+ -- in the /IAM User Guide/. The policy input is specified as a string+ -- containing the complete, valid JSON text of a permissions boundary+ -- policy.+ --+ -- The maximum length of the policy document that you can pass in this+ -- operation, including whitespace, is listed below. To view the maximum+ -- character counts of a managed policy with no whitespaces, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ permissionsBoundaryPolicyInputList :: Prelude.Maybe [Prelude.Text],+ -- | An optional list of additional policy documents to include in the+ -- simulation. Each document is specified as a string containing the+ -- complete, valid JSON text of an IAM policy.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyInputList :: Prelude.Maybe [Prelude.Text],+ -- | A list of ARNs of Amazon Web Services resources to include in the+ -- simulation. If this parameter is not provided, then the value defaults+ -- to @*@ (all resources). Each API in the @ActionNames@ parameter is+ -- evaluated for each resource in this list. The simulation determines the+ -- access result (allowed or denied) of each combination and reports it in+ -- the response. You can simulate resources that don\'t exist in your+ -- account.+ --+ -- The simulation does not automatically retrieve policies for the+ -- specified resources. If you want to include a resource policy in the+ -- simulation, then you must include the policy as a string in the+ -- @ResourcePolicy@ parameter.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ resourceArns :: Prelude.Maybe [Prelude.Text],+ -- | Specifies the type of simulation to run. Different API operations that+ -- support resource-based policies require different combinations of+ -- resources. By specifying the type of simulation to run, you enable the+ -- policy simulator to enforce the presence of the required resources to+ -- ensure reliable simulation results. If your simulation does not match+ -- one of the following scenarios, then you can omit this parameter. The+ -- following list shows each of the supported scenario values and the+ -- resources that you must define to run the simulation.+ --+ -- Each of the EC2 scenarios requires that you specify instance, image, and+ -- security group resources. If your scenario includes an EBS volume, then+ -- you must specify that volume as a resource. If the EC2 scenario includes+ -- VPC, then you must supply the network interface resource. If it includes+ -- an IP subnet, then you must specify the subnet resource. For more+ -- information on the EC2 scenario options, see+ -- <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported platforms>+ -- in the /Amazon EC2 User Guide/.+ --+ -- - __EC2-VPC-InstanceStore__+ --+ -- instance, image, security group, network interface+ --+ -- - __EC2-VPC-InstanceStore-Subnet__+ --+ -- instance, image, security group, network interface, subnet+ --+ -- - __EC2-VPC-EBS__+ --+ -- instance, image, security group, network interface, volume+ --+ -- - __EC2-VPC-EBS-Subnet__+ --+ -- instance, image, security group, network interface, subnet, volume+ resourceHandlingOption :: Prelude.Maybe Prelude.Text,+ -- | An Amazon Web Services account ID that specifies the owner of any+ -- simulated resource that does not identify its owner in the resource ARN.+ -- Examples of resource ARNs include an S3 bucket or object. If+ -- @ResourceOwner@ is specified, it is also used as the account owner of+ -- any @ResourcePolicy@ included in the simulation. If the @ResourceOwner@+ -- parameter is not specified, then the owner of the resources and the+ -- resource policy defaults to the account of the identity provided in+ -- @CallerArn@. This parameter is required only if you specify a+ -- resource-based policy and account that owns the resource is different+ -- from the account that owns the simulated calling user @CallerArn@.+ resourceOwner :: Prelude.Maybe Prelude.Text,+ -- | A resource-based policy to include in the simulation provided as a+ -- string. Each resource in the simulation is treated as if it had this+ -- policy attached. You can include only one resource-based policy in a+ -- simulation.+ --+ -- The maximum length of the policy document that you can pass in this+ -- operation, including whitespace, is listed below. To view the maximum+ -- character counts of a managed policy with no whitespaces, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ resourcePolicy :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of a user, group, or role whose policies+ -- you want to include in the simulation. If you specify a user, group, or+ -- role, the simulation includes all policies that are associated with that+ -- entity. If you specify a user, the simulation also includes all policies+ -- that are attached to any groups the user belongs to.+ --+ -- The maximum length of the policy document that you can pass in this+ -- operation, including whitespace, is listed below. To view the maximum+ -- character counts of a managed policy with no whitespaces, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ policySourceArn :: Prelude.Text,+ -- | A list of names of API operations to evaluate in the simulation. Each+ -- operation is evaluated for each resource. Each operation must include+ -- the service identifier, such as @iam:CreateUser@.+ actionNames :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulatePrincipalPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'callerArn', 'simulatePrincipalPolicy_callerArn' - The ARN of the IAM user that you want to specify as the simulated caller+-- of the API operations. If you do not specify a @CallerArn@, it defaults+-- to the ARN of the user that you specify in @PolicySourceArn@, if you+-- specified a user. If you include both a @PolicySourceArn@ (for example,+-- @arn:aws:iam::123456789012:user\/David@) and a @CallerArn@ (for example,+-- @arn:aws:iam::123456789012:user\/Bob@), the result is that you simulate+-- calling the API operations as Bob, as if Bob had David\'s policies.+--+-- You can specify only the ARN of an IAM user. You cannot specify the ARN+-- of an assumed role, federated user, or a service principal.+--+-- @CallerArn@ is required if you include a @ResourcePolicy@ and the+-- @PolicySourceArn@ is not the ARN for an IAM user. This is required so+-- that the resource-based policy\'s @Principal@ element has a value to use+-- in evaluating the policy.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'contextEntries', 'simulatePrincipalPolicy_contextEntries' - A list of context keys and corresponding values for the simulation to+-- use. Whenever a context key is evaluated in one of the simulated IAM+-- permissions policies, the corresponding value is supplied.+--+-- 'marker', 'simulatePrincipalPolicy_marker' - Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+--+-- 'maxItems', 'simulatePrincipalPolicy_maxItems' - Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+--+-- 'permissionsBoundaryPolicyInputList', 'simulatePrincipalPolicy_permissionsBoundaryPolicyInputList' - The IAM permissions boundary policy to simulate. The permissions+-- boundary sets the maximum permissions that the entity can have. You can+-- input only one permissions boundary when you pass a policy to this+-- operation. An IAM entity can only have one permissions boundary in+-- effect at a time. For example, if a permissions boundary is attached to+-- an entity and you pass in a different permissions boundary policy using+-- this parameter, then the new permissions boundary policy is used for the+-- simulation. For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM entities>+-- in the /IAM User Guide/. The policy input is specified as a string+-- containing the complete, valid JSON text of a permissions boundary+-- policy.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'policyInputList', 'simulatePrincipalPolicy_policyInputList' - An optional list of additional policy documents to include in the+-- simulation. Each document is specified as a string containing the+-- complete, valid JSON text of an IAM policy.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'resourceArns', 'simulatePrincipalPolicy_resourceArns' - A list of ARNs of Amazon Web Services resources to include in the+-- simulation. If this parameter is not provided, then the value defaults+-- to @*@ (all resources). Each API in the @ActionNames@ parameter is+-- evaluated for each resource in this list. The simulation determines the+-- access result (allowed or denied) of each combination and reports it in+-- the response. You can simulate resources that don\'t exist in your+-- account.+--+-- The simulation does not automatically retrieve policies for the+-- specified resources. If you want to include a resource policy in the+-- simulation, then you must include the policy as a string in the+-- @ResourcePolicy@ parameter.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'resourceHandlingOption', 'simulatePrincipalPolicy_resourceHandlingOption' - Specifies the type of simulation to run. Different API operations that+-- support resource-based policies require different combinations of+-- resources. By specifying the type of simulation to run, you enable the+-- policy simulator to enforce the presence of the required resources to+-- ensure reliable simulation results. If your simulation does not match+-- one of the following scenarios, then you can omit this parameter. The+-- following list shows each of the supported scenario values and the+-- resources that you must define to run the simulation.+--+-- Each of the EC2 scenarios requires that you specify instance, image, and+-- security group resources. If your scenario includes an EBS volume, then+-- you must specify that volume as a resource. If the EC2 scenario includes+-- VPC, then you must supply the network interface resource. If it includes+-- an IP subnet, then you must specify the subnet resource. For more+-- information on the EC2 scenario options, see+-- <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported platforms>+-- in the /Amazon EC2 User Guide/.+--+-- - __EC2-VPC-InstanceStore__+--+-- instance, image, security group, network interface+--+-- - __EC2-VPC-InstanceStore-Subnet__+--+-- instance, image, security group, network interface, subnet+--+-- - __EC2-VPC-EBS__+--+-- instance, image, security group, network interface, volume+--+-- - __EC2-VPC-EBS-Subnet__+--+-- instance, image, security group, network interface, subnet, volume+--+-- 'resourceOwner', 'simulatePrincipalPolicy_resourceOwner' - An Amazon Web Services account ID that specifies the owner of any+-- simulated resource that does not identify its owner in the resource ARN.+-- Examples of resource ARNs include an S3 bucket or object. If+-- @ResourceOwner@ is specified, it is also used as the account owner of+-- any @ResourcePolicy@ included in the simulation. If the @ResourceOwner@+-- parameter is not specified, then the owner of the resources and the+-- resource policy defaults to the account of the identity provided in+-- @CallerArn@. This parameter is required only if you specify a+-- resource-based policy and account that owns the resource is different+-- from the account that owns the simulated calling user @CallerArn@.+--+-- 'resourcePolicy', 'simulatePrincipalPolicy_resourcePolicy' - A resource-based policy to include in the simulation provided as a+-- string. Each resource in the simulation is treated as if it had this+-- policy attached. You can include only one resource-based policy in a+-- simulation.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'policySourceArn', 'simulatePrincipalPolicy_policySourceArn' - The Amazon Resource Name (ARN) of a user, group, or role whose policies+-- you want to include in the simulation. If you specify a user, group, or+-- role, the simulation includes all policies that are associated with that+-- entity. If you specify a user, the simulation also includes all policies+-- that are attached to any groups the user belongs to.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'actionNames', 'simulatePrincipalPolicy_actionNames' - A list of names of API operations to evaluate in the simulation. Each+-- operation is evaluated for each resource. Each operation must include+-- the service identifier, such as @iam:CreateUser@.+newSimulatePrincipalPolicy ::+ -- | 'policySourceArn'+ Prelude.Text ->+ SimulatePrincipalPolicy+newSimulatePrincipalPolicy pPolicySourceArn_ =+ SimulatePrincipalPolicy'+ { callerArn =+ Prelude.Nothing,+ contextEntries = Prelude.Nothing,+ marker = Prelude.Nothing,+ maxItems = Prelude.Nothing,+ permissionsBoundaryPolicyInputList =+ Prelude.Nothing,+ policyInputList = Prelude.Nothing,+ resourceArns = Prelude.Nothing,+ resourceHandlingOption = Prelude.Nothing,+ resourceOwner = Prelude.Nothing,+ resourcePolicy = Prelude.Nothing,+ policySourceArn = pPolicySourceArn_,+ actionNames = Prelude.mempty+ }++-- | The ARN of the IAM user that you want to specify as the simulated caller+-- of the API operations. If you do not specify a @CallerArn@, it defaults+-- to the ARN of the user that you specify in @PolicySourceArn@, if you+-- specified a user. If you include both a @PolicySourceArn@ (for example,+-- @arn:aws:iam::123456789012:user\/David@) and a @CallerArn@ (for example,+-- @arn:aws:iam::123456789012:user\/Bob@), the result is that you simulate+-- calling the API operations as Bob, as if Bob had David\'s policies.+--+-- You can specify only the ARN of an IAM user. You cannot specify the ARN+-- of an assumed role, federated user, or a service principal.+--+-- @CallerArn@ is required if you include a @ResourcePolicy@ and the+-- @PolicySourceArn@ is not the ARN for an IAM user. This is required so+-- that the resource-based policy\'s @Principal@ element has a value to use+-- in evaluating the policy.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+simulatePrincipalPolicy_callerArn :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe Prelude.Text)+simulatePrincipalPolicy_callerArn = Lens.lens (\SimulatePrincipalPolicy' {callerArn} -> callerArn) (\s@SimulatePrincipalPolicy' {} a -> s {callerArn = a} :: SimulatePrincipalPolicy)++-- | A list of context keys and corresponding values for the simulation to+-- use. Whenever a context key is evaluated in one of the simulated IAM+-- permissions policies, the corresponding value is supplied.+simulatePrincipalPolicy_contextEntries :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe [ContextEntry])+simulatePrincipalPolicy_contextEntries = Lens.lens (\SimulatePrincipalPolicy' {contextEntries} -> contextEntries) (\s@SimulatePrincipalPolicy' {} a -> s {contextEntries = a} :: SimulatePrincipalPolicy) Prelude.. Lens.mapping Lens.coerced++-- | Use this parameter only when paginating results and only after you+-- receive a response indicating that the results are truncated. Set it to+-- the value of the @Marker@ element in the response that you received to+-- indicate where the next call should start.+simulatePrincipalPolicy_marker :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe Prelude.Text)+simulatePrincipalPolicy_marker = Lens.lens (\SimulatePrincipalPolicy' {marker} -> marker) (\s@SimulatePrincipalPolicy' {} a -> s {marker = a} :: SimulatePrincipalPolicy)++-- | Use this only when paginating results to indicate the maximum number of+-- items you want in the response. If additional items exist beyond the+-- maximum you specify, the @IsTruncated@ response element is @true@.+--+-- If you do not include this parameter, the number of items defaults to+-- 100. Note that IAM might return fewer results, even when there are more+-- results available. In that case, the @IsTruncated@ response element+-- returns @true@, and @Marker@ contains a value to include in the+-- subsequent call that tells the service where to continue from.+simulatePrincipalPolicy_maxItems :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe Prelude.Natural)+simulatePrincipalPolicy_maxItems = Lens.lens (\SimulatePrincipalPolicy' {maxItems} -> maxItems) (\s@SimulatePrincipalPolicy' {} a -> s {maxItems = a} :: SimulatePrincipalPolicy)++-- | The IAM permissions boundary policy to simulate. The permissions+-- boundary sets the maximum permissions that the entity can have. You can+-- input only one permissions boundary when you pass a policy to this+-- operation. An IAM entity can only have one permissions boundary in+-- effect at a time. For example, if a permissions boundary is attached to+-- an entity and you pass in a different permissions boundary policy using+-- this parameter, then the new permissions boundary policy is used for the+-- simulation. For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM entities>+-- in the /IAM User Guide/. The policy input is specified as a string+-- containing the complete, valid JSON text of a permissions boundary+-- policy.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+simulatePrincipalPolicy_permissionsBoundaryPolicyInputList :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe [Prelude.Text])+simulatePrincipalPolicy_permissionsBoundaryPolicyInputList = Lens.lens (\SimulatePrincipalPolicy' {permissionsBoundaryPolicyInputList} -> permissionsBoundaryPolicyInputList) (\s@SimulatePrincipalPolicy' {} a -> s {permissionsBoundaryPolicyInputList = a} :: SimulatePrincipalPolicy) Prelude.. Lens.mapping Lens.coerced++-- | An optional list of additional policy documents to include in the+-- simulation. Each document is specified as a string containing the+-- complete, valid JSON text of an IAM policy.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+simulatePrincipalPolicy_policyInputList :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe [Prelude.Text])+simulatePrincipalPolicy_policyInputList = Lens.lens (\SimulatePrincipalPolicy' {policyInputList} -> policyInputList) (\s@SimulatePrincipalPolicy' {} a -> s {policyInputList = a} :: SimulatePrincipalPolicy) Prelude.. Lens.mapping Lens.coerced++-- | A list of ARNs of Amazon Web Services resources to include in the+-- simulation. If this parameter is not provided, then the value defaults+-- to @*@ (all resources). Each API in the @ActionNames@ parameter is+-- evaluated for each resource in this list. The simulation determines the+-- access result (allowed or denied) of each combination and reports it in+-- the response. You can simulate resources that don\'t exist in your+-- account.+--+-- The simulation does not automatically retrieve policies for the+-- specified resources. If you want to include a resource policy in the+-- simulation, then you must include the policy as a string in the+-- @ResourcePolicy@ parameter.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+simulatePrincipalPolicy_resourceArns :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe [Prelude.Text])+simulatePrincipalPolicy_resourceArns = Lens.lens (\SimulatePrincipalPolicy' {resourceArns} -> resourceArns) (\s@SimulatePrincipalPolicy' {} a -> s {resourceArns = a} :: SimulatePrincipalPolicy) Prelude.. Lens.mapping Lens.coerced++-- | Specifies the type of simulation to run. Different API operations that+-- support resource-based policies require different combinations of+-- resources. By specifying the type of simulation to run, you enable the+-- policy simulator to enforce the presence of the required resources to+-- ensure reliable simulation results. If your simulation does not match+-- one of the following scenarios, then you can omit this parameter. The+-- following list shows each of the supported scenario values and the+-- resources that you must define to run the simulation.+--+-- Each of the EC2 scenarios requires that you specify instance, image, and+-- security group resources. If your scenario includes an EBS volume, then+-- you must specify that volume as a resource. If the EC2 scenario includes+-- VPC, then you must supply the network interface resource. If it includes+-- an IP subnet, then you must specify the subnet resource. For more+-- information on the EC2 scenario options, see+-- <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported platforms>+-- in the /Amazon EC2 User Guide/.+--+-- - __EC2-VPC-InstanceStore__+--+-- instance, image, security group, network interface+--+-- - __EC2-VPC-InstanceStore-Subnet__+--+-- instance, image, security group, network interface, subnet+--+-- - __EC2-VPC-EBS__+--+-- instance, image, security group, network interface, volume+--+-- - __EC2-VPC-EBS-Subnet__+--+-- instance, image, security group, network interface, subnet, volume+simulatePrincipalPolicy_resourceHandlingOption :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe Prelude.Text)+simulatePrincipalPolicy_resourceHandlingOption = Lens.lens (\SimulatePrincipalPolicy' {resourceHandlingOption} -> resourceHandlingOption) (\s@SimulatePrincipalPolicy' {} a -> s {resourceHandlingOption = a} :: SimulatePrincipalPolicy)++-- | An Amazon Web Services account ID that specifies the owner of any+-- simulated resource that does not identify its owner in the resource ARN.+-- Examples of resource ARNs include an S3 bucket or object. If+-- @ResourceOwner@ is specified, it is also used as the account owner of+-- any @ResourcePolicy@ included in the simulation. If the @ResourceOwner@+-- parameter is not specified, then the owner of the resources and the+-- resource policy defaults to the account of the identity provided in+-- @CallerArn@. This parameter is required only if you specify a+-- resource-based policy and account that owns the resource is different+-- from the account that owns the simulated calling user @CallerArn@.+simulatePrincipalPolicy_resourceOwner :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe Prelude.Text)+simulatePrincipalPolicy_resourceOwner = Lens.lens (\SimulatePrincipalPolicy' {resourceOwner} -> resourceOwner) (\s@SimulatePrincipalPolicy' {} a -> s {resourceOwner = a} :: SimulatePrincipalPolicy)++-- | A resource-based policy to include in the simulation provided as a+-- string. Each resource in the simulation is treated as if it had this+-- policy attached. You can include only one resource-based policy in a+-- simulation.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+simulatePrincipalPolicy_resourcePolicy :: Lens.Lens' SimulatePrincipalPolicy (Prelude.Maybe Prelude.Text)+simulatePrincipalPolicy_resourcePolicy = Lens.lens (\SimulatePrincipalPolicy' {resourcePolicy} -> resourcePolicy) (\s@SimulatePrincipalPolicy' {} a -> s {resourcePolicy = a} :: SimulatePrincipalPolicy)++-- | The Amazon Resource Name (ARN) of a user, group, or role whose policies+-- you want to include in the simulation. If you specify a user, group, or+-- role, the simulation includes all policies that are associated with that+-- entity. If you specify a user, the simulation also includes all policies+-- that are attached to any groups the user belongs to.+--+-- The maximum length of the policy document that you can pass in this+-- operation, including whitespace, is listed below. To view the maximum+-- character counts of a managed policy with no whitespaces, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html#reference_iam-quotas-entity-length IAM and STS character quotas>.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+simulatePrincipalPolicy_policySourceArn :: Lens.Lens' SimulatePrincipalPolicy Prelude.Text+simulatePrincipalPolicy_policySourceArn = Lens.lens (\SimulatePrincipalPolicy' {policySourceArn} -> policySourceArn) (\s@SimulatePrincipalPolicy' {} a -> s {policySourceArn = a} :: SimulatePrincipalPolicy)++-- | A list of names of API operations to evaluate in the simulation. Each+-- operation is evaluated for each resource. Each operation must include+-- the service identifier, such as @iam:CreateUser@.+simulatePrincipalPolicy_actionNames :: Lens.Lens' SimulatePrincipalPolicy [Prelude.Text]+simulatePrincipalPolicy_actionNames = Lens.lens (\SimulatePrincipalPolicy' {actionNames} -> actionNames) (\s@SimulatePrincipalPolicy' {} a -> s {actionNames = a} :: SimulatePrincipalPolicy) Prelude.. Lens.coerced++instance Core.AWSPager SimulatePrincipalPolicy where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? simulatePolicyResponse_isTruncated+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.isNothing+ ( rs+ Lens.^? simulatePolicyResponse_marker+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& simulatePrincipalPolicy_marker+ Lens..~ rs+ Lens.^? simulatePolicyResponse_marker+ Prelude.. Lens._Just++instance Core.AWSRequest SimulatePrincipalPolicy where+ type+ AWSResponse SimulatePrincipalPolicy =+ SimulatePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "SimulatePrincipalPolicyResult"+ (\s h x -> Data.parseXML x)++instance Prelude.Hashable SimulatePrincipalPolicy where+ hashWithSalt _salt SimulatePrincipalPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` callerArn+ `Prelude.hashWithSalt` contextEntries+ `Prelude.hashWithSalt` marker+ `Prelude.hashWithSalt` maxItems+ `Prelude.hashWithSalt` permissionsBoundaryPolicyInputList+ `Prelude.hashWithSalt` policyInputList+ `Prelude.hashWithSalt` resourceArns+ `Prelude.hashWithSalt` resourceHandlingOption+ `Prelude.hashWithSalt` resourceOwner+ `Prelude.hashWithSalt` resourcePolicy+ `Prelude.hashWithSalt` policySourceArn+ `Prelude.hashWithSalt` actionNames++instance Prelude.NFData SimulatePrincipalPolicy where+ rnf SimulatePrincipalPolicy' {..} =+ Prelude.rnf callerArn+ `Prelude.seq` Prelude.rnf contextEntries+ `Prelude.seq` Prelude.rnf marker+ `Prelude.seq` Prelude.rnf maxItems+ `Prelude.seq` Prelude.rnf permissionsBoundaryPolicyInputList+ `Prelude.seq` Prelude.rnf policyInputList+ `Prelude.seq` Prelude.rnf resourceArns+ `Prelude.seq` Prelude.rnf resourceHandlingOption+ `Prelude.seq` Prelude.rnf resourceOwner+ `Prelude.seq` Prelude.rnf resourcePolicy+ `Prelude.seq` Prelude.rnf policySourceArn+ `Prelude.seq` Prelude.rnf actionNames++instance Data.ToHeaders SimulatePrincipalPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath SimulatePrincipalPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery SimulatePrincipalPolicy where+ toQuery SimulatePrincipalPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("SimulatePrincipalPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "CallerArn" Data.=: callerArn,+ "ContextEntries"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> contextEntries+ ),+ "Marker" Data.=: marker,+ "MaxItems" Data.=: maxItems,+ "PermissionsBoundaryPolicyInputList"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> permissionsBoundaryPolicyInputList+ ),+ "PolicyInputList"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> policyInputList+ ),+ "ResourceArns"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> resourceArns),+ "ResourceHandlingOption"+ Data.=: resourceHandlingOption,+ "ResourceOwner" Data.=: resourceOwner,+ "ResourcePolicy" Data.=: resourcePolicy,+ "PolicySourceArn" Data.=: policySourceArn,+ "ActionNames"+ Data.=: Data.toQueryList "member" actionNames+ ]
+ gen/Amazonka/IAM/TagInstanceProfile.hs view
@@ -0,0 +1,187 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.TagInstanceProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to an IAM instance profile. If a tag with the same+-- key name already exists, then that tag is overwritten with the new+-- value.+--+-- Each tag consists of a key name and an associated value. By assigning+-- tags to your resources, you can do the following:+--+-- - __Administrative grouping and discovery__ - Attach tags to resources+-- to aid in organization and search. For example, you could search for+-- all resources with the key name /Project/ and the value+-- /MyImportantProject/. Or search for all resources with the key name+-- /Cost Center/ and the value /41200/.+--+-- - __Access control__ - Include tags in IAM user-based and+-- resource-based policies. You can use tags to restrict access to only+-- an IAM instance profile that has a specified tag attached. For+-- examples of policies that show how to use tags to control access,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html Control access using IAM tags>+-- in the /IAM User Guide/.+--+-- - If any one of the tags is invalid or if you exceed the allowed+-- maximum number of tags, then the entire request fails and the+-- resource is not created. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- - Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+module Amazonka.IAM.TagInstanceProfile+ ( -- * Creating a Request+ TagInstanceProfile (..),+ newTagInstanceProfile,++ -- * Request Lenses+ tagInstanceProfile_instanceProfileName,+ tagInstanceProfile_tags,++ -- * Destructuring the Response+ TagInstanceProfileResponse (..),+ newTagInstanceProfileResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagInstanceProfile' smart constructor.+data TagInstanceProfile = TagInstanceProfile'+ { -- | The name of the IAM instance profile to which you want to add tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ instanceProfileName :: Prelude.Text,+ -- | The list of tags that you want to attach to the IAM instance profile.+ -- Each tag consists of a key name and an associated value.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagInstanceProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceProfileName', 'tagInstanceProfile_instanceProfileName' - The name of the IAM instance profile to which you want to add tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tags', 'tagInstanceProfile_tags' - The list of tags that you want to attach to the IAM instance profile.+-- Each tag consists of a key name and an associated value.+newTagInstanceProfile ::+ -- | 'instanceProfileName'+ Prelude.Text ->+ TagInstanceProfile+newTagInstanceProfile pInstanceProfileName_ =+ TagInstanceProfile'+ { instanceProfileName =+ pInstanceProfileName_,+ tags = Prelude.mempty+ }++-- | The name of the IAM instance profile to which you want to add tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+tagInstanceProfile_instanceProfileName :: Lens.Lens' TagInstanceProfile Prelude.Text+tagInstanceProfile_instanceProfileName = Lens.lens (\TagInstanceProfile' {instanceProfileName} -> instanceProfileName) (\s@TagInstanceProfile' {} a -> s {instanceProfileName = a} :: TagInstanceProfile)++-- | The list of tags that you want to attach to the IAM instance profile.+-- Each tag consists of a key name and an associated value.+tagInstanceProfile_tags :: Lens.Lens' TagInstanceProfile [Tag]+tagInstanceProfile_tags = Lens.lens (\TagInstanceProfile' {tags} -> tags) (\s@TagInstanceProfile' {} a -> s {tags = a} :: TagInstanceProfile) Prelude.. Lens.coerced++instance Core.AWSRequest TagInstanceProfile where+ type+ AWSResponse TagInstanceProfile =+ TagInstanceProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull TagInstanceProfileResponse'++instance Prelude.Hashable TagInstanceProfile where+ hashWithSalt _salt TagInstanceProfile' {..} =+ _salt+ `Prelude.hashWithSalt` instanceProfileName+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagInstanceProfile where+ rnf TagInstanceProfile' {..} =+ Prelude.rnf instanceProfileName+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagInstanceProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath TagInstanceProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery TagInstanceProfile where+ toQuery TagInstanceProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("TagInstanceProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "InstanceProfileName" Data.=: instanceProfileName,+ "Tags" Data.=: Data.toQueryList "member" tags+ ]++-- | /See:/ 'newTagInstanceProfileResponse' smart constructor.+data TagInstanceProfileResponse = TagInstanceProfileResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagInstanceProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newTagInstanceProfileResponse ::+ TagInstanceProfileResponse+newTagInstanceProfileResponse =+ TagInstanceProfileResponse'++instance Prelude.NFData TagInstanceProfileResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/TagMFADevice.hs view
@@ -0,0 +1,188 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.TagMFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to an IAM virtual multi-factor authentication+-- (MFA) device. If a tag with the same key name already exists, then that+-- tag is overwritten with the new value.+--+-- A tag consists of a key name and an associated value. By assigning tags+-- to your resources, you can do the following:+--+-- - __Administrative grouping and discovery__ - Attach tags to resources+-- to aid in organization and search. For example, you could search for+-- all resources with the key name /Project/ and the value+-- /MyImportantProject/. Or search for all resources with the key name+-- /Cost Center/ and the value /41200/.+--+-- - __Access control__ - Include tags in IAM user-based and+-- resource-based policies. You can use tags to restrict access to only+-- an IAM virtual MFA device that has a specified tag attached. For+-- examples of policies that show how to use tags to control access,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html Control access using IAM tags>+-- in the /IAM User Guide/.+--+-- - If any one of the tags is invalid or if you exceed the allowed+-- maximum number of tags, then the entire request fails and the+-- resource is not created. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- - Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+module Amazonka.IAM.TagMFADevice+ ( -- * Creating a Request+ TagMFADevice (..),+ newTagMFADevice,++ -- * Request Lenses+ tagMFADevice_serialNumber,+ tagMFADevice_tags,++ -- * Destructuring the Response+ TagMFADeviceResponse (..),+ newTagMFADeviceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagMFADevice' smart constructor.+data TagMFADevice = TagMFADevice'+ { -- | The unique identifier for the IAM virtual MFA device to which you want+ -- to add tags. For virtual MFA devices, the serial number is the same as+ -- the ARN.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serialNumber :: Prelude.Text,+ -- | The list of tags that you want to attach to the IAM virtual MFA device.+ -- Each tag consists of a key name and an associated value.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagMFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serialNumber', 'tagMFADevice_serialNumber' - The unique identifier for the IAM virtual MFA device to which you want+-- to add tags. For virtual MFA devices, the serial number is the same as+-- the ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tags', 'tagMFADevice_tags' - The list of tags that you want to attach to the IAM virtual MFA device.+-- Each tag consists of a key name and an associated value.+newTagMFADevice ::+ -- | 'serialNumber'+ Prelude.Text ->+ TagMFADevice+newTagMFADevice pSerialNumber_ =+ TagMFADevice'+ { serialNumber = pSerialNumber_,+ tags = Prelude.mempty+ }++-- | The unique identifier for the IAM virtual MFA device to which you want+-- to add tags. For virtual MFA devices, the serial number is the same as+-- the ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+tagMFADevice_serialNumber :: Lens.Lens' TagMFADevice Prelude.Text+tagMFADevice_serialNumber = Lens.lens (\TagMFADevice' {serialNumber} -> serialNumber) (\s@TagMFADevice' {} a -> s {serialNumber = a} :: TagMFADevice)++-- | The list of tags that you want to attach to the IAM virtual MFA device.+-- Each tag consists of a key name and an associated value.+tagMFADevice_tags :: Lens.Lens' TagMFADevice [Tag]+tagMFADevice_tags = Lens.lens (\TagMFADevice' {tags} -> tags) (\s@TagMFADevice' {} a -> s {tags = a} :: TagMFADevice) Prelude.. Lens.coerced++instance Core.AWSRequest TagMFADevice where+ type AWSResponse TagMFADevice = TagMFADeviceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull TagMFADeviceResponse'++instance Prelude.Hashable TagMFADevice where+ hashWithSalt _salt TagMFADevice' {..} =+ _salt+ `Prelude.hashWithSalt` serialNumber+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagMFADevice where+ rnf TagMFADevice' {..} =+ Prelude.rnf serialNumber+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagMFADevice where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath TagMFADevice where+ toPath = Prelude.const "/"++instance Data.ToQuery TagMFADevice where+ toQuery TagMFADevice' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("TagMFADevice" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SerialNumber" Data.=: serialNumber,+ "Tags" Data.=: Data.toQueryList "member" tags+ ]++-- | /See:/ 'newTagMFADeviceResponse' smart constructor.+data TagMFADeviceResponse = TagMFADeviceResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagMFADeviceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newTagMFADeviceResponse ::+ TagMFADeviceResponse+newTagMFADeviceResponse = TagMFADeviceResponse'++instance Prelude.NFData TagMFADeviceResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/TagOpenIDConnectProvider.hs view
@@ -0,0 +1,197 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.TagOpenIDConnectProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to an OpenID Connect (OIDC)-compatible identity+-- provider. For more information about these providers, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html About web identity federation>.+-- If a tag with the same key name already exists, then that tag is+-- overwritten with the new value.+--+-- A tag consists of a key name and an associated value. By assigning tags+-- to your resources, you can do the following:+--+-- - __Administrative grouping and discovery__ - Attach tags to resources+-- to aid in organization and search. For example, you could search for+-- all resources with the key name /Project/ and the value+-- /MyImportantProject/. Or search for all resources with the key name+-- /Cost Center/ and the value /41200/.+--+-- - __Access control__ - Include tags in IAM user-based and+-- resource-based policies. You can use tags to restrict access to only+-- an OIDC provider that has a specified tag attached. For examples of+-- policies that show how to use tags to control access, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html Control access using IAM tags>+-- in the /IAM User Guide/.+--+-- - If any one of the tags is invalid or if you exceed the allowed+-- maximum number of tags, then the entire request fails and the+-- resource is not created. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- - Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+module Amazonka.IAM.TagOpenIDConnectProvider+ ( -- * Creating a Request+ TagOpenIDConnectProvider (..),+ newTagOpenIDConnectProvider,++ -- * Request Lenses+ tagOpenIDConnectProvider_openIDConnectProviderArn,+ tagOpenIDConnectProvider_tags,++ -- * Destructuring the Response+ TagOpenIDConnectProviderResponse (..),+ newTagOpenIDConnectProviderResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagOpenIDConnectProvider' smart constructor.+data TagOpenIDConnectProvider = TagOpenIDConnectProvider'+ { -- | The ARN of the OIDC identity provider in IAM to which you want to add+ -- tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ openIDConnectProviderArn :: Prelude.Text,+ -- | The list of tags that you want to attach to the OIDC identity provider+ -- in IAM. Each tag consists of a key name and an associated value.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagOpenIDConnectProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderArn', 'tagOpenIDConnectProvider_openIDConnectProviderArn' - The ARN of the OIDC identity provider in IAM to which you want to add+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tags', 'tagOpenIDConnectProvider_tags' - The list of tags that you want to attach to the OIDC identity provider+-- in IAM. Each tag consists of a key name and an associated value.+newTagOpenIDConnectProvider ::+ -- | 'openIDConnectProviderArn'+ Prelude.Text ->+ TagOpenIDConnectProvider+newTagOpenIDConnectProvider+ pOpenIDConnectProviderArn_ =+ TagOpenIDConnectProvider'+ { openIDConnectProviderArn =+ pOpenIDConnectProviderArn_,+ tags = Prelude.mempty+ }++-- | The ARN of the OIDC identity provider in IAM to which you want to add+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+tagOpenIDConnectProvider_openIDConnectProviderArn :: Lens.Lens' TagOpenIDConnectProvider Prelude.Text+tagOpenIDConnectProvider_openIDConnectProviderArn = Lens.lens (\TagOpenIDConnectProvider' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@TagOpenIDConnectProvider' {} a -> s {openIDConnectProviderArn = a} :: TagOpenIDConnectProvider)++-- | The list of tags that you want to attach to the OIDC identity provider+-- in IAM. Each tag consists of a key name and an associated value.+tagOpenIDConnectProvider_tags :: Lens.Lens' TagOpenIDConnectProvider [Tag]+tagOpenIDConnectProvider_tags = Lens.lens (\TagOpenIDConnectProvider' {tags} -> tags) (\s@TagOpenIDConnectProvider' {} a -> s {tags = a} :: TagOpenIDConnectProvider) Prelude.. Lens.coerced++instance Core.AWSRequest TagOpenIDConnectProvider where+ type+ AWSResponse TagOpenIDConnectProvider =+ TagOpenIDConnectProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ TagOpenIDConnectProviderResponse'++instance Prelude.Hashable TagOpenIDConnectProvider where+ hashWithSalt _salt TagOpenIDConnectProvider' {..} =+ _salt+ `Prelude.hashWithSalt` openIDConnectProviderArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagOpenIDConnectProvider where+ rnf TagOpenIDConnectProvider' {..} =+ Prelude.rnf openIDConnectProviderArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagOpenIDConnectProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath TagOpenIDConnectProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery TagOpenIDConnectProvider where+ toQuery TagOpenIDConnectProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("TagOpenIDConnectProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OpenIDConnectProviderArn"+ Data.=: openIDConnectProviderArn,+ "Tags" Data.=: Data.toQueryList "member" tags+ ]++-- | /See:/ 'newTagOpenIDConnectProviderResponse' smart constructor.+data TagOpenIDConnectProviderResponse = TagOpenIDConnectProviderResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagOpenIDConnectProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newTagOpenIDConnectProviderResponse ::+ TagOpenIDConnectProviderResponse+newTagOpenIDConnectProviderResponse =+ TagOpenIDConnectProviderResponse'++instance+ Prelude.NFData+ TagOpenIDConnectProviderResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/TagPolicy.hs view
@@ -0,0 +1,185 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.TagPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to an IAM customer managed policy. If a tag with+-- the same key name already exists, then that tag is overwritten with the+-- new value.+--+-- A tag consists of a key name and an associated value. By assigning tags+-- to your resources, you can do the following:+--+-- - __Administrative grouping and discovery__ - Attach tags to resources+-- to aid in organization and search. For example, you could search for+-- all resources with the key name /Project/ and the value+-- /MyImportantProject/. Or search for all resources with the key name+-- /Cost Center/ and the value /41200/.+--+-- - __Access control__ - Include tags in IAM user-based and+-- resource-based policies. You can use tags to restrict access to only+-- an IAM customer managed policy that has a specified tag attached.+-- For examples of policies that show how to use tags to control+-- access, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html Control access using IAM tags>+-- in the /IAM User Guide/.+--+-- - If any one of the tags is invalid or if you exceed the allowed+-- maximum number of tags, then the entire request fails and the+-- resource is not created. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- - Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+module Amazonka.IAM.TagPolicy+ ( -- * Creating a Request+ TagPolicy (..),+ newTagPolicy,++ -- * Request Lenses+ tagPolicy_policyArn,+ tagPolicy_tags,++ -- * Destructuring the Response+ TagPolicyResponse (..),+ newTagPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagPolicy' smart constructor.+data TagPolicy = TagPolicy'+ { -- | The ARN of the IAM customer managed policy to which you want to add+ -- tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyArn :: Prelude.Text,+ -- | The list of tags that you want to attach to the IAM customer managed+ -- policy. Each tag consists of a key name and an associated value.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyArn', 'tagPolicy_policyArn' - The ARN of the IAM customer managed policy to which you want to add+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tags', 'tagPolicy_tags' - The list of tags that you want to attach to the IAM customer managed+-- policy. Each tag consists of a key name and an associated value.+newTagPolicy ::+ -- | 'policyArn'+ Prelude.Text ->+ TagPolicy+newTagPolicy pPolicyArn_ =+ TagPolicy'+ { policyArn = pPolicyArn_,+ tags = Prelude.mempty+ }++-- | The ARN of the IAM customer managed policy to which you want to add+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+tagPolicy_policyArn :: Lens.Lens' TagPolicy Prelude.Text+tagPolicy_policyArn = Lens.lens (\TagPolicy' {policyArn} -> policyArn) (\s@TagPolicy' {} a -> s {policyArn = a} :: TagPolicy)++-- | The list of tags that you want to attach to the IAM customer managed+-- policy. Each tag consists of a key name and an associated value.+tagPolicy_tags :: Lens.Lens' TagPolicy [Tag]+tagPolicy_tags = Lens.lens (\TagPolicy' {tags} -> tags) (\s@TagPolicy' {} a -> s {tags = a} :: TagPolicy) Prelude.. Lens.coerced++instance Core.AWSRequest TagPolicy where+ type AWSResponse TagPolicy = TagPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull TagPolicyResponse'++instance Prelude.Hashable TagPolicy where+ hashWithSalt _salt TagPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` policyArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagPolicy where+ rnf TagPolicy' {..} =+ Prelude.rnf policyArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath TagPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery TagPolicy where+ toQuery TagPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("TagPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyArn" Data.=: policyArn,+ "Tags" Data.=: Data.toQueryList "member" tags+ ]++-- | /See:/ 'newTagPolicyResponse' smart constructor.+data TagPolicyResponse = TagPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newTagPolicyResponse ::+ TagPolicyResponse+newTagPolicyResponse = TagPolicyResponse'++instance Prelude.NFData TagPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/TagRole.hs view
@@ -0,0 +1,188 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.TagRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to an IAM role. The role can be a regular role or+-- a service-linked role. If a tag with the same key name already exists,+-- then that tag is overwritten with the new value.+--+-- A tag consists of a key name and an associated value. By assigning tags+-- to your resources, you can do the following:+--+-- - __Administrative grouping and discovery__ - Attach tags to resources+-- to aid in organization and search. For example, you could search for+-- all resources with the key name /Project/ and the value+-- /MyImportantProject/. Or search for all resources with the key name+-- /Cost Center/ and the value /41200/.+--+-- - __Access control__ - Include tags in IAM user-based and+-- resource-based policies. You can use tags to restrict access to only+-- an IAM role that has a specified tag attached. You can also restrict+-- access to only those resources that have a certain tag attached. For+-- examples of policies that show how to use tags to control access,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html Control access using IAM tags>+-- in the /IAM User Guide/.+--+-- - __Cost allocation__ - Use tags to help track which individuals and+-- teams are using which Amazon Web Services resources.+--+-- - If any one of the tags is invalid or if you exceed the allowed+-- maximum number of tags, then the entire request fails and the+-- resource is not created. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- - Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+--+-- For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM identities>+-- in the /IAM User Guide/.+module Amazonka.IAM.TagRole+ ( -- * Creating a Request+ TagRole (..),+ newTagRole,++ -- * Request Lenses+ tagRole_roleName,+ tagRole_tags,++ -- * Destructuring the Response+ TagRoleResponse (..),+ newTagRoleResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagRole' smart constructor.+data TagRole = TagRole'+ { -- | The name of the IAM role to which you want to add tags.+ --+ -- This parameter accepts (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that consist of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text,+ -- | The list of tags that you want to attach to the IAM role. Each tag+ -- consists of a key name and an associated value.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'tagRole_roleName' - The name of the IAM role to which you want to add tags.+--+-- This parameter accepts (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consist of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tags', 'tagRole_tags' - The list of tags that you want to attach to the IAM role. Each tag+-- consists of a key name and an associated value.+newTagRole ::+ -- | 'roleName'+ Prelude.Text ->+ TagRole+newTagRole pRoleName_ =+ TagRole'+ { roleName = pRoleName_,+ tags = Prelude.mempty+ }++-- | The name of the IAM role to which you want to add tags.+--+-- This parameter accepts (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consist of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+tagRole_roleName :: Lens.Lens' TagRole Prelude.Text+tagRole_roleName = Lens.lens (\TagRole' {roleName} -> roleName) (\s@TagRole' {} a -> s {roleName = a} :: TagRole)++-- | The list of tags that you want to attach to the IAM role. Each tag+-- consists of a key name and an associated value.+tagRole_tags :: Lens.Lens' TagRole [Tag]+tagRole_tags = Lens.lens (\TagRole' {tags} -> tags) (\s@TagRole' {} a -> s {tags = a} :: TagRole) Prelude.. Lens.coerced++instance Core.AWSRequest TagRole where+ type AWSResponse TagRole = TagRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull TagRoleResponse'++instance Prelude.Hashable TagRole where+ hashWithSalt _salt TagRole' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagRole where+ rnf TagRole' {..} =+ Prelude.rnf roleName `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath TagRole where+ toPath = Prelude.const "/"++instance Data.ToQuery TagRole where+ toQuery TagRole' {..} =+ Prelude.mconcat+ [ "Action" Data.=: ("TagRole" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "Tags" Data.=: Data.toQueryList "member" tags+ ]++-- | /See:/ 'newTagRoleResponse' smart constructor.+data TagRoleResponse = TagRoleResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newTagRoleResponse ::+ TagRoleResponse+newTagRoleResponse = TagRoleResponse'++instance Prelude.NFData TagRoleResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/TagSAMLProvider.hs view
@@ -0,0 +1,191 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.TagSAMLProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to a Security Assertion Markup Language (SAML)+-- identity provider. For more information about these providers, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based federation>+-- . If a tag with the same key name already exists, then that tag is+-- overwritten with the new value.+--+-- A tag consists of a key name and an associated value. By assigning tags+-- to your resources, you can do the following:+--+-- - __Administrative grouping and discovery__ - Attach tags to resources+-- to aid in organization and search. For example, you could search for+-- all resources with the key name /Project/ and the value+-- /MyImportantProject/. Or search for all resources with the key name+-- /Cost Center/ and the value /41200/.+--+-- - __Access control__ - Include tags in IAM user-based and+-- resource-based policies. You can use tags to restrict access to only+-- a SAML identity provider that has a specified tag attached. For+-- examples of policies that show how to use tags to control access,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html Control access using IAM tags>+-- in the /IAM User Guide/.+--+-- - If any one of the tags is invalid or if you exceed the allowed+-- maximum number of tags, then the entire request fails and the+-- resource is not created. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- - Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+module Amazonka.IAM.TagSAMLProvider+ ( -- * Creating a Request+ TagSAMLProvider (..),+ newTagSAMLProvider,++ -- * Request Lenses+ tagSAMLProvider_sAMLProviderArn,+ tagSAMLProvider_tags,++ -- * Destructuring the Response+ TagSAMLProviderResponse (..),+ newTagSAMLProviderResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagSAMLProvider' smart constructor.+data TagSAMLProvider = TagSAMLProvider'+ { -- | The ARN of the SAML identity provider in IAM to which you want to add+ -- tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ sAMLProviderArn :: Prelude.Text,+ -- | The list of tags that you want to attach to the SAML identity provider+ -- in IAM. Each tag consists of a key name and an associated value.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagSAMLProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sAMLProviderArn', 'tagSAMLProvider_sAMLProviderArn' - The ARN of the SAML identity provider in IAM to which you want to add+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tags', 'tagSAMLProvider_tags' - The list of tags that you want to attach to the SAML identity provider+-- in IAM. Each tag consists of a key name and an associated value.+newTagSAMLProvider ::+ -- | 'sAMLProviderArn'+ Prelude.Text ->+ TagSAMLProvider+newTagSAMLProvider pSAMLProviderArn_ =+ TagSAMLProvider'+ { sAMLProviderArn =+ pSAMLProviderArn_,+ tags = Prelude.mempty+ }++-- | The ARN of the SAML identity provider in IAM to which you want to add+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+tagSAMLProvider_sAMLProviderArn :: Lens.Lens' TagSAMLProvider Prelude.Text+tagSAMLProvider_sAMLProviderArn = Lens.lens (\TagSAMLProvider' {sAMLProviderArn} -> sAMLProviderArn) (\s@TagSAMLProvider' {} a -> s {sAMLProviderArn = a} :: TagSAMLProvider)++-- | The list of tags that you want to attach to the SAML identity provider+-- in IAM. Each tag consists of a key name and an associated value.+tagSAMLProvider_tags :: Lens.Lens' TagSAMLProvider [Tag]+tagSAMLProvider_tags = Lens.lens (\TagSAMLProvider' {tags} -> tags) (\s@TagSAMLProvider' {} a -> s {tags = a} :: TagSAMLProvider) Prelude.. Lens.coerced++instance Core.AWSRequest TagSAMLProvider where+ type+ AWSResponse TagSAMLProvider =+ TagSAMLProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull TagSAMLProviderResponse'++instance Prelude.Hashable TagSAMLProvider where+ hashWithSalt _salt TagSAMLProvider' {..} =+ _salt+ `Prelude.hashWithSalt` sAMLProviderArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagSAMLProvider where+ rnf TagSAMLProvider' {..} =+ Prelude.rnf sAMLProviderArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagSAMLProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath TagSAMLProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery TagSAMLProvider where+ toQuery TagSAMLProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("TagSAMLProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SAMLProviderArn" Data.=: sAMLProviderArn,+ "Tags" Data.=: Data.toQueryList "member" tags+ ]++-- | /See:/ 'newTagSAMLProviderResponse' smart constructor.+data TagSAMLProviderResponse = TagSAMLProviderResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagSAMLProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newTagSAMLProviderResponse ::+ TagSAMLProviderResponse+newTagSAMLProviderResponse = TagSAMLProviderResponse'++instance Prelude.NFData TagSAMLProviderResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/TagServerCertificate.hs view
@@ -0,0 +1,197 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.TagServerCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to an IAM server certificate. If a tag with the+-- same key name already exists, then that tag is overwritten with the new+-- value.+--+-- For certificates in a Region supported by Certificate Manager (ACM), we+-- recommend that you don\'t use IAM server certificates. Instead, use ACM+-- to provision, manage, and deploy your server certificates. For more+-- information about IAM server certificates,+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with server certificates>+-- in the /IAM User Guide/.+--+-- A tag consists of a key name and an associated value. By assigning tags+-- to your resources, you can do the following:+--+-- - __Administrative grouping and discovery__ - Attach tags to resources+-- to aid in organization and search. For example, you could search for+-- all resources with the key name /Project/ and the value+-- /MyImportantProject/. Or search for all resources with the key name+-- /Cost Center/ and the value /41200/.+--+-- - __Access control__ - Include tags in IAM user-based and+-- resource-based policies. You can use tags to restrict access to only+-- a server certificate that has a specified tag attached. For examples+-- of policies that show how to use tags to control access, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html Control access using IAM tags>+-- in the /IAM User Guide/.+--+-- - __Cost allocation__ - Use tags to help track which individuals and+-- teams are using which Amazon Web Services resources.+--+-- - If any one of the tags is invalid or if you exceed the allowed+-- maximum number of tags, then the entire request fails and the+-- resource is not created. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- - Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+module Amazonka.IAM.TagServerCertificate+ ( -- * Creating a Request+ TagServerCertificate (..),+ newTagServerCertificate,++ -- * Request Lenses+ tagServerCertificate_serverCertificateName,+ tagServerCertificate_tags,++ -- * Destructuring the Response+ TagServerCertificateResponse (..),+ newTagServerCertificateResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagServerCertificate' smart constructor.+data TagServerCertificate = TagServerCertificate'+ { -- | The name of the IAM server certificate to which you want to add tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serverCertificateName :: Prelude.Text,+ -- | The list of tags that you want to attach to the IAM server certificate.+ -- Each tag consists of a key name and an associated value.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagServerCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serverCertificateName', 'tagServerCertificate_serverCertificateName' - The name of the IAM server certificate to which you want to add tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tags', 'tagServerCertificate_tags' - The list of tags that you want to attach to the IAM server certificate.+-- Each tag consists of a key name and an associated value.+newTagServerCertificate ::+ -- | 'serverCertificateName'+ Prelude.Text ->+ TagServerCertificate+newTagServerCertificate pServerCertificateName_ =+ TagServerCertificate'+ { serverCertificateName =+ pServerCertificateName_,+ tags = Prelude.mempty+ }++-- | The name of the IAM server certificate to which you want to add tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+tagServerCertificate_serverCertificateName :: Lens.Lens' TagServerCertificate Prelude.Text+tagServerCertificate_serverCertificateName = Lens.lens (\TagServerCertificate' {serverCertificateName} -> serverCertificateName) (\s@TagServerCertificate' {} a -> s {serverCertificateName = a} :: TagServerCertificate)++-- | The list of tags that you want to attach to the IAM server certificate.+-- Each tag consists of a key name and an associated value.+tagServerCertificate_tags :: Lens.Lens' TagServerCertificate [Tag]+tagServerCertificate_tags = Lens.lens (\TagServerCertificate' {tags} -> tags) (\s@TagServerCertificate' {} a -> s {tags = a} :: TagServerCertificate) Prelude.. Lens.coerced++instance Core.AWSRequest TagServerCertificate where+ type+ AWSResponse TagServerCertificate =+ TagServerCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull TagServerCertificateResponse'++instance Prelude.Hashable TagServerCertificate where+ hashWithSalt _salt TagServerCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` serverCertificateName+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagServerCertificate where+ rnf TagServerCertificate' {..} =+ Prelude.rnf serverCertificateName+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagServerCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath TagServerCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery TagServerCertificate where+ toQuery TagServerCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("TagServerCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "ServerCertificateName"+ Data.=: serverCertificateName,+ "Tags" Data.=: Data.toQueryList "member" tags+ ]++-- | /See:/ 'newTagServerCertificateResponse' smart constructor.+data TagServerCertificateResponse = TagServerCertificateResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagServerCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newTagServerCertificateResponse ::+ TagServerCertificateResponse+newTagServerCertificateResponse =+ TagServerCertificateResponse'++instance Prelude.NFData TagServerCertificateResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/TagUser.hs view
@@ -0,0 +1,187 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.TagUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tags to an IAM user. If a tag with the same key name+-- already exists, then that tag is overwritten with the new value.+--+-- A tag consists of a key name and an associated value. By assigning tags+-- to your resources, you can do the following:+--+-- - __Administrative grouping and discovery__ - Attach tags to resources+-- to aid in organization and search. For example, you could search for+-- all resources with the key name /Project/ and the value+-- /MyImportantProject/. Or search for all resources with the key name+-- /Cost Center/ and the value /41200/.+--+-- - __Access control__ - Include tags in IAM user-based and+-- resource-based policies. You can use tags to restrict access to only+-- an IAM requesting user that has a specified tag attached. You can+-- also restrict access to only those resources that have a certain tag+-- attached. For examples of policies that show how to use tags to+-- control access, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html Control access using IAM tags>+-- in the /IAM User Guide/.+--+-- - __Cost allocation__ - Use tags to help track which individuals and+-- teams are using which Amazon Web Services resources.+--+-- - If any one of the tags is invalid or if you exceed the allowed+-- maximum number of tags, then the entire request fails and the+-- resource is not created. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- - Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+--+-- For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM identities>+-- in the /IAM User Guide/.+module Amazonka.IAM.TagUser+ ( -- * Creating a Request+ TagUser (..),+ newTagUser,++ -- * Request Lenses+ tagUser_userName,+ tagUser_tags,++ -- * Destructuring the Response+ TagUserResponse (..),+ newTagUserResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagUser' smart constructor.+data TagUser = TagUser'+ { -- | The name of the IAM user to which you want to add tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The list of tags that you want to attach to the IAM user. Each tag+ -- consists of a key name and an associated value.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'tagUser_userName' - The name of the IAM user to which you want to add tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tags', 'tagUser_tags' - The list of tags that you want to attach to the IAM user. Each tag+-- consists of a key name and an associated value.+newTagUser ::+ -- | 'userName'+ Prelude.Text ->+ TagUser+newTagUser pUserName_ =+ TagUser'+ { userName = pUserName_,+ tags = Prelude.mempty+ }++-- | The name of the IAM user to which you want to add tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+tagUser_userName :: Lens.Lens' TagUser Prelude.Text+tagUser_userName = Lens.lens (\TagUser' {userName} -> userName) (\s@TagUser' {} a -> s {userName = a} :: TagUser)++-- | The list of tags that you want to attach to the IAM user. Each tag+-- consists of a key name and an associated value.+tagUser_tags :: Lens.Lens' TagUser [Tag]+tagUser_tags = Lens.lens (\TagUser' {tags} -> tags) (\s@TagUser' {} a -> s {tags = a} :: TagUser) Prelude.. Lens.coerced++instance Core.AWSRequest TagUser where+ type AWSResponse TagUser = TagUserResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull TagUserResponse'++instance Prelude.Hashable TagUser where+ hashWithSalt _salt TagUser' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagUser where+ rnf TagUser' {..} =+ Prelude.rnf userName `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagUser where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath TagUser where+ toPath = Prelude.const "/"++instance Data.ToQuery TagUser where+ toQuery TagUser' {..} =+ Prelude.mconcat+ [ "Action" Data.=: ("TagUser" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "Tags" Data.=: Data.toQueryList "member" tags+ ]++-- | /See:/ 'newTagUserResponse' smart constructor.+data TagUserResponse = TagUserResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newTagUserResponse ::+ TagUserResponse+newTagUserResponse = TagUserResponse'++instance Prelude.NFData TagUserResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/Types.hs view
@@ -0,0 +1,970 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _ConcurrentModificationException,+ _CredentialReportExpiredException,+ _CredentialReportNotPresentException,+ _CredentialReportNotReadyException,+ _DeleteConflictException,+ _DuplicateCertificateException,+ _DuplicateSSHPublicKeyException,+ _EntityAlreadyExistsException,+ _EntityTemporarilyUnmodifiableException,+ _InvalidAuthenticationCodeException,+ _InvalidCertificateException,+ _InvalidInputException,+ _InvalidPublicKeyException,+ _InvalidUserTypeException,+ _KeyPairMismatchException,+ _LimitExceededException,+ _MalformedCertificateException,+ _MalformedPolicyDocumentException,+ _NoSuchEntityException,+ _PasswordPolicyViolationException,+ _PolicyEvaluationException,+ _PolicyNotAttachableException,+ _ReportGenerationLimitExceededException,+ _ServiceFailureException,+ _ServiceNotSupportedException,+ _UnmodifiableEntityException,+ _UnrecognizedPublicKeyEncodingException,++ -- * AccessAdvisorUsageGranularityType+ AccessAdvisorUsageGranularityType (..),++ -- * AssignmentStatusType+ AssignmentStatusType (..),++ -- * ContextKeyTypeEnum+ ContextKeyTypeEnum (..),++ -- * DeletionTaskStatusType+ DeletionTaskStatusType (..),++ -- * EncodingType+ EncodingType (..),++ -- * EntityType+ EntityType (..),++ -- * GlobalEndpointTokenVersion+ GlobalEndpointTokenVersion (..),++ -- * JobStatusType+ JobStatusType (..),++ -- * PermissionsBoundaryAttachmentType+ PermissionsBoundaryAttachmentType (..),++ -- * PolicyEvaluationDecisionType+ PolicyEvaluationDecisionType (..),++ -- * PolicyOwnerEntityType+ PolicyOwnerEntityType (..),++ -- * PolicyScopeType+ PolicyScopeType (..),++ -- * PolicySourceType+ PolicySourceType (..),++ -- * PolicyType+ PolicyType (..),++ -- * PolicyUsageType+ PolicyUsageType (..),++ -- * ReportFormatType+ ReportFormatType (..),++ -- * ReportStateType+ ReportStateType (..),++ -- * SortKeyType+ SortKeyType (..),++ -- * StatusType+ StatusType (..),++ -- * SummaryKeyType+ SummaryKeyType (..),++ -- * AccessDetail+ AccessDetail (..),+ newAccessDetail,+ accessDetail_entityPath,+ accessDetail_lastAuthenticatedTime,+ accessDetail_region,+ accessDetail_totalAuthenticatedEntities,+ accessDetail_serviceName,+ accessDetail_serviceNamespace,++ -- * AccessKeyInfo+ AccessKeyInfo (..),+ newAccessKeyInfo,+ accessKeyInfo_createDate,+ accessKeyInfo_userName,+ accessKeyInfo_accessKeyId,+ accessKeyInfo_status,+ accessKeyInfo_secretAccessKey,++ -- * AccessKeyLastUsed+ AccessKeyLastUsed (..),+ newAccessKeyLastUsed,+ accessKeyLastUsed_lastUsedDate,+ accessKeyLastUsed_serviceName,+ accessKeyLastUsed_region,++ -- * AccessKeyMetadata+ AccessKeyMetadata (..),+ newAccessKeyMetadata,+ accessKeyMetadata_accessKeyId,+ accessKeyMetadata_createDate,+ accessKeyMetadata_status,+ accessKeyMetadata_userName,++ -- * AttachedPermissionsBoundary+ AttachedPermissionsBoundary (..),+ newAttachedPermissionsBoundary,+ attachedPermissionsBoundary_permissionsBoundaryArn,+ attachedPermissionsBoundary_permissionsBoundaryType,++ -- * AttachedPolicy+ AttachedPolicy (..),+ newAttachedPolicy,+ attachedPolicy_policyArn,+ attachedPolicy_policyName,++ -- * ContextEntry+ ContextEntry (..),+ newContextEntry,+ contextEntry_contextKeyName,+ contextEntry_contextKeyType,+ contextEntry_contextKeyValues,++ -- * DeletionTaskFailureReasonType+ DeletionTaskFailureReasonType (..),+ newDeletionTaskFailureReasonType,+ deletionTaskFailureReasonType_reason,+ deletionTaskFailureReasonType_roleUsageList,++ -- * EntityDetails+ EntityDetails (..),+ newEntityDetails,+ entityDetails_lastAuthenticated,+ entityDetails_entityInfo,++ -- * EntityInfo+ EntityInfo (..),+ newEntityInfo,+ entityInfo_path,+ entityInfo_arn,+ entityInfo_name,+ entityInfo_type,+ entityInfo_id,++ -- * ErrorDetails+ ErrorDetails (..),+ newErrorDetails,+ errorDetails_message,+ errorDetails_code,++ -- * EvaluationResult+ EvaluationResult (..),+ newEvaluationResult,+ evaluationResult_evalDecisionDetails,+ evaluationResult_evalResourceName,+ evaluationResult_matchedStatements,+ evaluationResult_missingContextValues,+ evaluationResult_organizationsDecisionDetail,+ evaluationResult_permissionsBoundaryDecisionDetail,+ evaluationResult_resourceSpecificResults,+ evaluationResult_evalActionName,+ evaluationResult_evalDecision,++ -- * GetContextKeysForPolicyResponse+ GetContextKeysForPolicyResponse (..),+ newGetContextKeysForPolicyResponse,+ getContextKeysForPolicyResponse_contextKeyNames,++ -- * Group+ Group (..),+ newGroup,+ group_path,+ group_groupName,+ group_groupId,+ group_arn,+ group_createDate,++ -- * GroupDetail+ GroupDetail (..),+ newGroupDetail,+ groupDetail_arn,+ groupDetail_attachedManagedPolicies,+ groupDetail_createDate,+ groupDetail_groupId,+ groupDetail_groupName,+ groupDetail_groupPolicyList,+ groupDetail_path,++ -- * InstanceProfile+ InstanceProfile (..),+ newInstanceProfile,+ instanceProfile_tags,+ instanceProfile_path,+ instanceProfile_instanceProfileName,+ instanceProfile_instanceProfileId,+ instanceProfile_arn,+ instanceProfile_createDate,+ instanceProfile_roles,++ -- * ListPoliciesGrantingServiceAccessEntry+ ListPoliciesGrantingServiceAccessEntry (..),+ newListPoliciesGrantingServiceAccessEntry,+ listPoliciesGrantingServiceAccessEntry_policies,+ listPoliciesGrantingServiceAccessEntry_serviceNamespace,++ -- * LoginProfile+ LoginProfile (..),+ newLoginProfile,+ loginProfile_passwordResetRequired,+ loginProfile_userName,+ loginProfile_createDate,++ -- * MFADevice+ MFADevice (..),+ newMFADevice,+ mfaDevice_userName,+ mfaDevice_serialNumber,+ mfaDevice_enableDate,++ -- * ManagedPolicyDetail+ ManagedPolicyDetail (..),+ newManagedPolicyDetail,+ managedPolicyDetail_arn,+ managedPolicyDetail_attachmentCount,+ managedPolicyDetail_createDate,+ managedPolicyDetail_defaultVersionId,+ managedPolicyDetail_description,+ managedPolicyDetail_isAttachable,+ managedPolicyDetail_path,+ managedPolicyDetail_permissionsBoundaryUsageCount,+ managedPolicyDetail_policyId,+ managedPolicyDetail_policyName,+ managedPolicyDetail_policyVersionList,+ managedPolicyDetail_updateDate,++ -- * OpenIDConnectProviderListEntry+ OpenIDConnectProviderListEntry (..),+ newOpenIDConnectProviderListEntry,+ openIDConnectProviderListEntry_arn,++ -- * OrganizationsDecisionDetail+ OrganizationsDecisionDetail (..),+ newOrganizationsDecisionDetail,+ organizationsDecisionDetail_allowedByOrganizations,++ -- * PasswordPolicy+ PasswordPolicy (..),+ newPasswordPolicy,+ passwordPolicy_allowUsersToChangePassword,+ passwordPolicy_expirePasswords,+ passwordPolicy_hardExpiry,+ passwordPolicy_maxPasswordAge,+ passwordPolicy_minimumPasswordLength,+ passwordPolicy_passwordReusePrevention,+ passwordPolicy_requireLowercaseCharacters,+ passwordPolicy_requireNumbers,+ passwordPolicy_requireSymbols,+ passwordPolicy_requireUppercaseCharacters,++ -- * PermissionsBoundaryDecisionDetail+ PermissionsBoundaryDecisionDetail (..),+ newPermissionsBoundaryDecisionDetail,+ permissionsBoundaryDecisionDetail_allowedByPermissionsBoundary,++ -- * Policy+ Policy (..),+ newPolicy,+ policy_arn,+ policy_attachmentCount,+ policy_createDate,+ policy_defaultVersionId,+ policy_description,+ policy_isAttachable,+ policy_path,+ policy_permissionsBoundaryUsageCount,+ policy_policyId,+ policy_policyName,+ policy_tags,+ policy_updateDate,++ -- * PolicyDetail+ PolicyDetail (..),+ newPolicyDetail,+ policyDetail_policyDocument,+ policyDetail_policyName,++ -- * PolicyGrantingServiceAccess+ PolicyGrantingServiceAccess (..),+ newPolicyGrantingServiceAccess,+ policyGrantingServiceAccess_entityName,+ policyGrantingServiceAccess_entityType,+ policyGrantingServiceAccess_policyArn,+ policyGrantingServiceAccess_policyName,+ policyGrantingServiceAccess_policyType,++ -- * PolicyGroup+ PolicyGroup (..),+ newPolicyGroup,+ policyGroup_groupId,+ policyGroup_groupName,++ -- * PolicyRole+ PolicyRole (..),+ newPolicyRole,+ policyRole_roleId,+ policyRole_roleName,++ -- * PolicyUser+ PolicyUser (..),+ newPolicyUser,+ policyUser_userId,+ policyUser_userName,++ -- * PolicyVersion+ PolicyVersion (..),+ newPolicyVersion,+ policyVersion_createDate,+ policyVersion_document,+ policyVersion_isDefaultVersion,+ policyVersion_versionId,++ -- * Position+ Position (..),+ newPosition,+ position_column,+ position_line,++ -- * ResourceSpecificResult+ ResourceSpecificResult (..),+ newResourceSpecificResult,+ resourceSpecificResult_evalDecisionDetails,+ resourceSpecificResult_matchedStatements,+ resourceSpecificResult_missingContextValues,+ resourceSpecificResult_permissionsBoundaryDecisionDetail,+ resourceSpecificResult_evalResourceName,+ resourceSpecificResult_evalResourceDecision,++ -- * Role+ Role (..),+ newRole,+ role_assumeRolePolicyDocument,+ role_description,+ role_maxSessionDuration,+ role_permissionsBoundary,+ role_roleLastUsed,+ role_tags,+ role_path,+ role_roleName,+ role_roleId,+ role_arn,+ role_createDate,++ -- * RoleDetail+ RoleDetail (..),+ newRoleDetail,+ roleDetail_arn,+ roleDetail_assumeRolePolicyDocument,+ roleDetail_attachedManagedPolicies,+ roleDetail_createDate,+ roleDetail_instanceProfileList,+ roleDetail_path,+ roleDetail_permissionsBoundary,+ roleDetail_roleId,+ roleDetail_roleLastUsed,+ roleDetail_roleName,+ roleDetail_rolePolicyList,+ roleDetail_tags,++ -- * RoleLastUsed+ RoleLastUsed (..),+ newRoleLastUsed,+ roleLastUsed_lastUsedDate,+ roleLastUsed_region,++ -- * RoleUsageType+ RoleUsageType (..),+ newRoleUsageType,+ roleUsageType_region,+ roleUsageType_resources,++ -- * SAMLProviderListEntry+ SAMLProviderListEntry (..),+ newSAMLProviderListEntry,+ sAMLProviderListEntry_arn,+ sAMLProviderListEntry_createDate,+ sAMLProviderListEntry_validUntil,++ -- * SSHPublicKey+ SSHPublicKey (..),+ newSSHPublicKey,+ sSHPublicKey_uploadDate,+ sSHPublicKey_userName,+ sSHPublicKey_sSHPublicKeyId,+ sSHPublicKey_fingerprint,+ sSHPublicKey_sSHPublicKeyBody,+ sSHPublicKey_status,++ -- * SSHPublicKeyMetadata+ SSHPublicKeyMetadata (..),+ newSSHPublicKeyMetadata,+ sSHPublicKeyMetadata_userName,+ sSHPublicKeyMetadata_sSHPublicKeyId,+ sSHPublicKeyMetadata_status,+ sSHPublicKeyMetadata_uploadDate,++ -- * ServerCertificate+ ServerCertificate (..),+ newServerCertificate,+ serverCertificate_certificateChain,+ serverCertificate_tags,+ serverCertificate_serverCertificateMetadata,+ serverCertificate_certificateBody,++ -- * ServerCertificateMetadata+ ServerCertificateMetadata (..),+ newServerCertificateMetadata,+ serverCertificateMetadata_expiration,+ serverCertificateMetadata_uploadDate,+ serverCertificateMetadata_path,+ serverCertificateMetadata_serverCertificateName,+ serverCertificateMetadata_serverCertificateId,+ serverCertificateMetadata_arn,++ -- * ServiceLastAccessed+ ServiceLastAccessed (..),+ newServiceLastAccessed,+ serviceLastAccessed_lastAuthenticated,+ serviceLastAccessed_lastAuthenticatedEntity,+ serviceLastAccessed_lastAuthenticatedRegion,+ serviceLastAccessed_totalAuthenticatedEntities,+ serviceLastAccessed_trackedActionsLastAccessed,+ serviceLastAccessed_serviceName,+ serviceLastAccessed_serviceNamespace,++ -- * ServiceSpecificCredential+ ServiceSpecificCredential (..),+ newServiceSpecificCredential,+ serviceSpecificCredential_createDate,+ serviceSpecificCredential_serviceName,+ serviceSpecificCredential_serviceUserName,+ serviceSpecificCredential_servicePassword,+ serviceSpecificCredential_serviceSpecificCredentialId,+ serviceSpecificCredential_userName,+ serviceSpecificCredential_status,++ -- * ServiceSpecificCredentialMetadata+ ServiceSpecificCredentialMetadata (..),+ newServiceSpecificCredentialMetadata,+ serviceSpecificCredentialMetadata_userName,+ serviceSpecificCredentialMetadata_status,+ serviceSpecificCredentialMetadata_serviceUserName,+ serviceSpecificCredentialMetadata_createDate,+ serviceSpecificCredentialMetadata_serviceSpecificCredentialId,+ serviceSpecificCredentialMetadata_serviceName,++ -- * SigningCertificate+ SigningCertificate (..),+ newSigningCertificate,+ signingCertificate_uploadDate,+ signingCertificate_userName,+ signingCertificate_certificateId,+ signingCertificate_certificateBody,+ signingCertificate_status,++ -- * SimulatePolicyResponse+ SimulatePolicyResponse (..),+ newSimulatePolicyResponse,+ simulatePolicyResponse_evaluationResults,+ simulatePolicyResponse_isTruncated,+ simulatePolicyResponse_marker,++ -- * Statement+ Statement (..),+ newStatement,+ statement_endPosition,+ statement_sourcePolicyId,+ statement_sourcePolicyType,+ statement_startPosition,++ -- * Tag+ Tag (..),+ newTag,+ tag_key,+ tag_value,++ -- * TrackedActionLastAccessed+ TrackedActionLastAccessed (..),+ newTrackedActionLastAccessed,+ trackedActionLastAccessed_actionName,+ trackedActionLastAccessed_lastAccessedEntity,+ trackedActionLastAccessed_lastAccessedRegion,+ trackedActionLastAccessed_lastAccessedTime,++ -- * User+ User (..),+ newUser,+ user_passwordLastUsed,+ user_path,+ user_permissionsBoundary,+ user_tags,+ user_userName,+ user_userId,+ user_arn,+ user_createDate,++ -- * UserDetail+ UserDetail (..),+ newUserDetail,+ userDetail_arn,+ userDetail_attachedManagedPolicies,+ userDetail_createDate,+ userDetail_groupList,+ userDetail_path,+ userDetail_permissionsBoundary,+ userDetail_tags,+ userDetail_userId,+ userDetail_userName,+ userDetail_userPolicyList,++ -- * VirtualMFADevice+ VirtualMFADevice (..),+ newVirtualMFADevice,+ virtualMFADevice_base32StringSeed,+ virtualMFADevice_enableDate,+ virtualMFADevice_qRCodePNG,+ virtualMFADevice_tags,+ virtualMFADevice_user,+ virtualMFADevice_serialNumber,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.IAM.Types.AccessAdvisorUsageGranularityType+import Amazonka.IAM.Types.AccessDetail+import Amazonka.IAM.Types.AccessKeyInfo+import Amazonka.IAM.Types.AccessKeyLastUsed+import Amazonka.IAM.Types.AccessKeyMetadata+import Amazonka.IAM.Types.AssignmentStatusType+import Amazonka.IAM.Types.AttachedPermissionsBoundary+import Amazonka.IAM.Types.AttachedPolicy+import Amazonka.IAM.Types.ContextEntry+import Amazonka.IAM.Types.ContextKeyTypeEnum+import Amazonka.IAM.Types.DeletionTaskFailureReasonType+import Amazonka.IAM.Types.DeletionTaskStatusType+import Amazonka.IAM.Types.EncodingType+import Amazonka.IAM.Types.EntityDetails+import Amazonka.IAM.Types.EntityInfo+import Amazonka.IAM.Types.EntityType+import Amazonka.IAM.Types.ErrorDetails+import Amazonka.IAM.Types.EvaluationResult+import Amazonka.IAM.Types.GetContextKeysForPolicyResponse+import Amazonka.IAM.Types.GlobalEndpointTokenVersion+import Amazonka.IAM.Types.Group+import Amazonka.IAM.Types.GroupDetail+import Amazonka.IAM.Types.InstanceProfile+import Amazonka.IAM.Types.JobStatusType+import Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry+import Amazonka.IAM.Types.LoginProfile+import Amazonka.IAM.Types.MFADevice+import Amazonka.IAM.Types.ManagedPolicyDetail+import Amazonka.IAM.Types.OpenIDConnectProviderListEntry+import Amazonka.IAM.Types.OrganizationsDecisionDetail+import Amazonka.IAM.Types.PasswordPolicy+import Amazonka.IAM.Types.PermissionsBoundaryAttachmentType+import Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail+import Amazonka.IAM.Types.Policy+import Amazonka.IAM.Types.PolicyDetail+import Amazonka.IAM.Types.PolicyEvaluationDecisionType+import Amazonka.IAM.Types.PolicyGrantingServiceAccess+import Amazonka.IAM.Types.PolicyGroup+import Amazonka.IAM.Types.PolicyOwnerEntityType+import Amazonka.IAM.Types.PolicyRole+import Amazonka.IAM.Types.PolicyScopeType+import Amazonka.IAM.Types.PolicySourceType+import Amazonka.IAM.Types.PolicyType+import Amazonka.IAM.Types.PolicyUsageType+import Amazonka.IAM.Types.PolicyUser+import Amazonka.IAM.Types.PolicyVersion+import Amazonka.IAM.Types.Position+import Amazonka.IAM.Types.ReportFormatType+import Amazonka.IAM.Types.ReportStateType+import Amazonka.IAM.Types.ResourceSpecificResult+import Amazonka.IAM.Types.Role+import Amazonka.IAM.Types.RoleDetail+import Amazonka.IAM.Types.RoleLastUsed+import Amazonka.IAM.Types.RoleUsageType+import Amazonka.IAM.Types.SAMLProviderListEntry+import Amazonka.IAM.Types.SSHPublicKey+import Amazonka.IAM.Types.SSHPublicKeyMetadata+import Amazonka.IAM.Types.ServerCertificate+import Amazonka.IAM.Types.ServerCertificateMetadata+import Amazonka.IAM.Types.ServiceLastAccessed+import Amazonka.IAM.Types.ServiceSpecificCredential+import Amazonka.IAM.Types.ServiceSpecificCredentialMetadata+import Amazonka.IAM.Types.SigningCertificate+import Amazonka.IAM.Types.SimulatePolicyResponse+import Amazonka.IAM.Types.SortKeyType+import Amazonka.IAM.Types.Statement+import Amazonka.IAM.Types.StatusType+import Amazonka.IAM.Types.SummaryKeyType+import Amazonka.IAM.Types.Tag+import Amazonka.IAM.Types.TrackedActionLastAccessed+import Amazonka.IAM.Types.User+import Amazonka.IAM.Types.UserDetail+import Amazonka.IAM.Types.VirtualMFADevice+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2010-05-08@ of the Amazon Identity and Access Management SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "IAM",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "iam",+ Core.signingName = "iam",+ Core.version = "2010-05-08",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseXMLError "IAM",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | The request was rejected because multiple requests to change this object+-- were submitted simultaneously. Wait a few minutes and submit your+-- request again.+_ConcurrentModificationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConcurrentModificationException =+ Core._MatchServiceError+ defaultService+ "ConcurrentModification"+ Prelude.. Core.hasStatus 409++-- | The request was rejected because the most recent credential report has+-- expired. To generate a new credential report, use+-- GenerateCredentialReport. For more information about credential report+-- expiration, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Getting credential reports>+-- in the /IAM User Guide/.+_CredentialReportExpiredException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_CredentialReportExpiredException =+ Core._MatchServiceError+ defaultService+ "ReportExpired"+ Prelude.. Core.hasStatus 410++-- | The request was rejected because the credential report does not exist.+-- To generate a credential report, use GenerateCredentialReport.+_CredentialReportNotPresentException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_CredentialReportNotPresentException =+ Core._MatchServiceError+ defaultService+ "ReportNotPresent"+ Prelude.. Core.hasStatus 410++-- | The request was rejected because the credential report is still being+-- generated.+_CredentialReportNotReadyException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_CredentialReportNotReadyException =+ Core._MatchServiceError+ defaultService+ "ReportInProgress"+ Prelude.. Core.hasStatus 404++-- | The request was rejected because it attempted to delete a resource that+-- has attached subordinate entities. The error message describes these+-- entities.+_DeleteConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DeleteConflictException =+ Core._MatchServiceError+ defaultService+ "DeleteConflict"+ Prelude.. Core.hasStatus 409++-- | The request was rejected because the same certificate is associated with+-- an IAM user in the account.+_DuplicateCertificateException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DuplicateCertificateException =+ Core._MatchServiceError+ defaultService+ "DuplicateCertificate"+ Prelude.. Core.hasStatus 409++-- | The request was rejected because the SSH public key is already+-- associated with the specified IAM user.+_DuplicateSSHPublicKeyException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DuplicateSSHPublicKeyException =+ Core._MatchServiceError+ defaultService+ "DuplicateSSHPublicKey"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because it attempted to create a resource that+-- already exists.+_EntityAlreadyExistsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_EntityAlreadyExistsException =+ Core._MatchServiceError+ defaultService+ "EntityAlreadyExists"+ Prelude.. Core.hasStatus 409++-- | The request was rejected because it referenced an entity that is+-- temporarily unmodifiable, such as a user name that was deleted and then+-- recreated. The error indicates that the request is likely to succeed if+-- you try again after waiting several minutes. The error message describes+-- the entity.+_EntityTemporarilyUnmodifiableException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_EntityTemporarilyUnmodifiableException =+ Core._MatchServiceError+ defaultService+ "EntityTemporarilyUnmodifiable"+ Prelude.. Core.hasStatus 409++-- | The request was rejected because the authentication code was not+-- recognized. The error message describes the specific error.+_InvalidAuthenticationCodeException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidAuthenticationCodeException =+ Core._MatchServiceError+ defaultService+ "InvalidAuthenticationCode"+ Prelude.. Core.hasStatus 403++-- | The request was rejected because the certificate is invalid.+_InvalidCertificateException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidCertificateException =+ Core._MatchServiceError+ defaultService+ "InvalidCertificate"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because an invalid or out-of-range value was+-- supplied for an input parameter.+_InvalidInputException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidInputException =+ Core._MatchServiceError+ defaultService+ "InvalidInput"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because the public key is malformed or+-- otherwise invalid.+_InvalidPublicKeyException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidPublicKeyException =+ Core._MatchServiceError+ defaultService+ "InvalidPublicKey"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because the type of user for the transaction+-- was incorrect.+_InvalidUserTypeException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidUserTypeException =+ Core._MatchServiceError+ defaultService+ "InvalidUserType"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because the public key certificate and the+-- private key do not match.+_KeyPairMismatchException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_KeyPairMismatchException =+ Core._MatchServiceError+ defaultService+ "KeyPairMismatch"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because it attempted to create resources beyond+-- the current Amazon Web Services account limits. The error message+-- describes the limit exceeded.+_LimitExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_LimitExceededException =+ Core._MatchServiceError+ defaultService+ "LimitExceeded"+ Prelude.. Core.hasStatus 409++-- | The request was rejected because the certificate was malformed or+-- expired. The error message describes the specific error.+_MalformedCertificateException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_MalformedCertificateException =+ Core._MatchServiceError+ defaultService+ "MalformedCertificate"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because the policy document was malformed. The+-- error message describes the specific error.+_MalformedPolicyDocumentException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_MalformedPolicyDocumentException =+ Core._MatchServiceError+ defaultService+ "MalformedPolicyDocument"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because it referenced a resource entity that+-- does not exist. The error message describes the resource.+_NoSuchEntityException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_NoSuchEntityException =+ Core._MatchServiceError+ defaultService+ "NoSuchEntity"+ Prelude.. Core.hasStatus 404++-- | The request was rejected because the provided password did not meet the+-- requirements imposed by the account password policy.+_PasswordPolicyViolationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_PasswordPolicyViolationException =+ Core._MatchServiceError+ defaultService+ "PasswordPolicyViolation"+ Prelude.. Core.hasStatus 400++-- | The request failed because a provided policy could not be successfully+-- evaluated. An additional detailed message indicates the source of the+-- failure.+_PolicyEvaluationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_PolicyEvaluationException =+ Core._MatchServiceError+ defaultService+ "PolicyEvaluation"+ Prelude.. Core.hasStatus 500++-- | The request failed because Amazon Web Services service role policies can+-- only be attached to the service-linked role for that service.+_PolicyNotAttachableException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_PolicyNotAttachableException =+ Core._MatchServiceError+ defaultService+ "PolicyNotAttachable"+ Prelude.. Core.hasStatus 400++-- | The request failed because the maximum number of concurrent requests for+-- this account are already running.+_ReportGenerationLimitExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ReportGenerationLimitExceededException =+ Core._MatchServiceError+ defaultService+ "ReportGenerationLimitExceeded"+ Prelude.. Core.hasStatus 409++-- | The request processing has failed because of an unknown error, exception+-- or failure.+_ServiceFailureException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceFailureException =+ Core._MatchServiceError+ defaultService+ "ServiceFailure"+ Prelude.. Core.hasStatus 500++-- | The specified service does not support service-specific credentials.+_ServiceNotSupportedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceNotSupportedException =+ Core._MatchServiceError+ defaultService+ "NotSupportedService"+ Prelude.. Core.hasStatus 404++-- | The request was rejected because only the service that depends on the+-- service-linked role can modify or delete the role on your behalf. The+-- error message includes the name of the service that depends on this+-- service-linked role. You must request the change through that service.+_UnmodifiableEntityException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnmodifiableEntityException =+ Core._MatchServiceError+ defaultService+ "UnmodifiableEntity"+ Prelude.. Core.hasStatus 400++-- | The request was rejected because the public key encoding format is+-- unsupported or unrecognized.+_UnrecognizedPublicKeyEncodingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnrecognizedPublicKeyEncodingException =+ Core._MatchServiceError+ defaultService+ "UnrecognizedPublicKeyEncoding"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/IAM/Types/AccessAdvisorUsageGranularityType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.AccessAdvisorUsageGranularityType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.AccessAdvisorUsageGranularityType+ ( AccessAdvisorUsageGranularityType+ ( ..,+ AccessAdvisorUsageGranularityType_ACTION_LEVEL,+ AccessAdvisorUsageGranularityType_SERVICE_LEVEL+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AccessAdvisorUsageGranularityType = AccessAdvisorUsageGranularityType'+ { fromAccessAdvisorUsageGranularityType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern AccessAdvisorUsageGranularityType_ACTION_LEVEL :: AccessAdvisorUsageGranularityType+pattern AccessAdvisorUsageGranularityType_ACTION_LEVEL = AccessAdvisorUsageGranularityType' "ACTION_LEVEL"++pattern AccessAdvisorUsageGranularityType_SERVICE_LEVEL :: AccessAdvisorUsageGranularityType+pattern AccessAdvisorUsageGranularityType_SERVICE_LEVEL = AccessAdvisorUsageGranularityType' "SERVICE_LEVEL"++{-# COMPLETE+ AccessAdvisorUsageGranularityType_ACTION_LEVEL,+ AccessAdvisorUsageGranularityType_SERVICE_LEVEL,+ AccessAdvisorUsageGranularityType'+ #-}
+ gen/Amazonka/IAM/Types/AccessDetail.hs view
@@ -0,0 +1,228 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.AccessDetail+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.AccessDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that contains details about when a principal in the reported+-- Organizations entity last attempted to access an Amazon Web Services+-- service. A principal can be an IAM user, an IAM role, or the Amazon Web+-- Services account root user within the reported Organizations entity.+--+-- This data type is a response element in the GetOrganizationsAccessReport+-- operation.+--+-- /See:/ 'newAccessDetail' smart constructor.+data AccessDetail = AccessDetail'+ { -- | The path of the Organizations entity (root, organizational unit, or+ -- account) from which an authenticated principal last attempted to access+ -- the service. Amazon Web Services does not report unauthenticated+ -- requests.+ --+ -- This field is null if no principals (IAM users, IAM roles, or root+ -- users) in the reported Organizations entity attempted to access the+ -- service within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ entityPath :: Prelude.Maybe Prelude.Text,+ -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+ -- authenticated principal most recently attempted to access the service.+ -- Amazon Web Services does not report unauthenticated requests.+ --+ -- This field is null if no principals in the reported Organizations entity+ -- attempted to access the service within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ lastAuthenticatedTime :: Prelude.Maybe Data.ISO8601,+ -- | The Region where the last service access attempt occurred.+ --+ -- This field is null if no principals in the reported Organizations entity+ -- attempted to access the service within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ region :: Prelude.Maybe Prelude.Text,+ -- | The number of accounts with authenticated principals (root users, IAM+ -- users, and IAM roles) that attempted to access the service in the+ -- tracking period.+ totalAuthenticatedEntities :: Prelude.Maybe Prelude.Int,+ -- | The name of the service in which access was attempted.+ serviceName :: Prelude.Text,+ -- | The namespace of the service in which access was attempted.+ --+ -- To learn the service namespace of a service, see+ -- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+ -- in the /Service Authorization Reference/. Choose the name of the service+ -- to view details for that service. In the first paragraph, find the+ -- service prefix. For example, @(service prefix: a4b)@. For more+ -- information about service namespaces, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+ -- in the /Amazon Web Services General Reference/.+ serviceNamespace :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccessDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entityPath', 'accessDetail_entityPath' - The path of the Organizations entity (root, organizational unit, or+-- account) from which an authenticated principal last attempted to access+-- the service. Amazon Web Services does not report unauthenticated+-- requests.+--+-- This field is null if no principals (IAM users, IAM roles, or root+-- users) in the reported Organizations entity attempted to access the+-- service within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'lastAuthenticatedTime', 'accessDetail_lastAuthenticatedTime' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+-- authenticated principal most recently attempted to access the service.+-- Amazon Web Services does not report unauthenticated requests.+--+-- This field is null if no principals in the reported Organizations entity+-- attempted to access the service within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'region', 'accessDetail_region' - The Region where the last service access attempt occurred.+--+-- This field is null if no principals in the reported Organizations entity+-- attempted to access the service within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'totalAuthenticatedEntities', 'accessDetail_totalAuthenticatedEntities' - The number of accounts with authenticated principals (root users, IAM+-- users, and IAM roles) that attempted to access the service in the+-- tracking period.+--+-- 'serviceName', 'accessDetail_serviceName' - The name of the service in which access was attempted.+--+-- 'serviceNamespace', 'accessDetail_serviceNamespace' - The namespace of the service in which access was attempted.+--+-- To learn the service namespace of a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /Service Authorization Reference/. Choose the name of the service+-- to view details for that service. In the first paragraph, find the+-- service prefix. For example, @(service prefix: a4b)@. For more+-- information about service namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+-- in the /Amazon Web Services General Reference/.+newAccessDetail ::+ -- | 'serviceName'+ Prelude.Text ->+ -- | 'serviceNamespace'+ Prelude.Text ->+ AccessDetail+newAccessDetail pServiceName_ pServiceNamespace_ =+ AccessDetail'+ { entityPath = Prelude.Nothing,+ lastAuthenticatedTime = Prelude.Nothing,+ region = Prelude.Nothing,+ totalAuthenticatedEntities = Prelude.Nothing,+ serviceName = pServiceName_,+ serviceNamespace = pServiceNamespace_+ }++-- | The path of the Organizations entity (root, organizational unit, or+-- account) from which an authenticated principal last attempted to access+-- the service. Amazon Web Services does not report unauthenticated+-- requests.+--+-- This field is null if no principals (IAM users, IAM roles, or root+-- users) in the reported Organizations entity attempted to access the+-- service within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+accessDetail_entityPath :: Lens.Lens' AccessDetail (Prelude.Maybe Prelude.Text)+accessDetail_entityPath = Lens.lens (\AccessDetail' {entityPath} -> entityPath) (\s@AccessDetail' {} a -> s {entityPath = a} :: AccessDetail)++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+-- authenticated principal most recently attempted to access the service.+-- Amazon Web Services does not report unauthenticated requests.+--+-- This field is null if no principals in the reported Organizations entity+-- attempted to access the service within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+accessDetail_lastAuthenticatedTime :: Lens.Lens' AccessDetail (Prelude.Maybe Prelude.UTCTime)+accessDetail_lastAuthenticatedTime = Lens.lens (\AccessDetail' {lastAuthenticatedTime} -> lastAuthenticatedTime) (\s@AccessDetail' {} a -> s {lastAuthenticatedTime = a} :: AccessDetail) Prelude.. Lens.mapping Data._Time++-- | The Region where the last service access attempt occurred.+--+-- This field is null if no principals in the reported Organizations entity+-- attempted to access the service within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+accessDetail_region :: Lens.Lens' AccessDetail (Prelude.Maybe Prelude.Text)+accessDetail_region = Lens.lens (\AccessDetail' {region} -> region) (\s@AccessDetail' {} a -> s {region = a} :: AccessDetail)++-- | The number of accounts with authenticated principals (root users, IAM+-- users, and IAM roles) that attempted to access the service in the+-- tracking period.+accessDetail_totalAuthenticatedEntities :: Lens.Lens' AccessDetail (Prelude.Maybe Prelude.Int)+accessDetail_totalAuthenticatedEntities = Lens.lens (\AccessDetail' {totalAuthenticatedEntities} -> totalAuthenticatedEntities) (\s@AccessDetail' {} a -> s {totalAuthenticatedEntities = a} :: AccessDetail)++-- | The name of the service in which access was attempted.+accessDetail_serviceName :: Lens.Lens' AccessDetail Prelude.Text+accessDetail_serviceName = Lens.lens (\AccessDetail' {serviceName} -> serviceName) (\s@AccessDetail' {} a -> s {serviceName = a} :: AccessDetail)++-- | The namespace of the service in which access was attempted.+--+-- To learn the service namespace of a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /Service Authorization Reference/. Choose the name of the service+-- to view details for that service. In the first paragraph, find the+-- service prefix. For example, @(service prefix: a4b)@. For more+-- information about service namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+-- in the /Amazon Web Services General Reference/.+accessDetail_serviceNamespace :: Lens.Lens' AccessDetail Prelude.Text+accessDetail_serviceNamespace = Lens.lens (\AccessDetail' {serviceNamespace} -> serviceNamespace) (\s@AccessDetail' {} a -> s {serviceNamespace = a} :: AccessDetail)++instance Data.FromXML AccessDetail where+ parseXML x =+ AccessDetail'+ Prelude.<$> (x Data..@? "EntityPath")+ Prelude.<*> (x Data..@? "LastAuthenticatedTime")+ Prelude.<*> (x Data..@? "Region")+ Prelude.<*> (x Data..@? "TotalAuthenticatedEntities")+ Prelude.<*> (x Data..@ "ServiceName")+ Prelude.<*> (x Data..@ "ServiceNamespace")++instance Prelude.Hashable AccessDetail where+ hashWithSalt _salt AccessDetail' {..} =+ _salt+ `Prelude.hashWithSalt` entityPath+ `Prelude.hashWithSalt` lastAuthenticatedTime+ `Prelude.hashWithSalt` region+ `Prelude.hashWithSalt` totalAuthenticatedEntities+ `Prelude.hashWithSalt` serviceName+ `Prelude.hashWithSalt` serviceNamespace++instance Prelude.NFData AccessDetail where+ rnf AccessDetail' {..} =+ Prelude.rnf entityPath+ `Prelude.seq` Prelude.rnf lastAuthenticatedTime+ `Prelude.seq` Prelude.rnf region+ `Prelude.seq` Prelude.rnf totalAuthenticatedEntities+ `Prelude.seq` Prelude.rnf serviceName+ `Prelude.seq` Prelude.rnf serviceNamespace
+ gen/Amazonka/IAM/Types/AccessKeyInfo.hs view
@@ -0,0 +1,141 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.AccessKeyInfo+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.AccessKeyInfo where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.StatusType+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an Amazon Web Services access key.+--+-- This data type is used as a response element in the CreateAccessKey and+-- ListAccessKeys operations.+--+-- The @SecretAccessKey@ value is returned only in response to+-- CreateAccessKey. You can get a secret access key only when you first+-- create an access key; you cannot recover the secret access key later. If+-- you lose a secret access key, you must create a new access key.+--+-- /See:/ 'newAccessKeyInfo' smart constructor.+data AccessKeyInfo = AccessKeyInfo'+ { -- | The date when the access key was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | The name of the IAM user that the access key is associated with.+ userName :: Prelude.Text,+ -- | The ID for this access key.+ accessKeyId :: Core.AccessKey,+ -- | The status of the access key. @Active@ means that the key is valid for+ -- API calls, while @Inactive@ means it is not.+ status :: StatusType,+ -- | The secret key used to sign requests.+ secretAccessKey :: Data.Sensitive Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccessKeyInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createDate', 'accessKeyInfo_createDate' - The date when the access key was created.+--+-- 'userName', 'accessKeyInfo_userName' - The name of the IAM user that the access key is associated with.+--+-- 'accessKeyId', 'accessKeyInfo_accessKeyId' - The ID for this access key.+--+-- 'status', 'accessKeyInfo_status' - The status of the access key. @Active@ means that the key is valid for+-- API calls, while @Inactive@ means it is not.+--+-- 'secretAccessKey', 'accessKeyInfo_secretAccessKey' - The secret key used to sign requests.+newAccessKeyInfo ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'accessKeyId'+ Core.AccessKey ->+ -- | 'status'+ StatusType ->+ -- | 'secretAccessKey'+ Prelude.Text ->+ AccessKeyInfo+newAccessKeyInfo+ pUserName_+ pAccessKeyId_+ pStatus_+ pSecretAccessKey_ =+ AccessKeyInfo'+ { createDate = Prelude.Nothing,+ userName = pUserName_,+ accessKeyId = pAccessKeyId_,+ status = pStatus_,+ secretAccessKey =+ Data._Sensitive Lens.# pSecretAccessKey_+ }++-- | The date when the access key was created.+accessKeyInfo_createDate :: Lens.Lens' AccessKeyInfo (Prelude.Maybe Prelude.UTCTime)+accessKeyInfo_createDate = Lens.lens (\AccessKeyInfo' {createDate} -> createDate) (\s@AccessKeyInfo' {} a -> s {createDate = a} :: AccessKeyInfo) Prelude.. Lens.mapping Data._Time++-- | The name of the IAM user that the access key is associated with.+accessKeyInfo_userName :: Lens.Lens' AccessKeyInfo Prelude.Text+accessKeyInfo_userName = Lens.lens (\AccessKeyInfo' {userName} -> userName) (\s@AccessKeyInfo' {} a -> s {userName = a} :: AccessKeyInfo)++-- | The ID for this access key.+accessKeyInfo_accessKeyId :: Lens.Lens' AccessKeyInfo Core.AccessKey+accessKeyInfo_accessKeyId = Lens.lens (\AccessKeyInfo' {accessKeyId} -> accessKeyId) (\s@AccessKeyInfo' {} a -> s {accessKeyId = a} :: AccessKeyInfo)++-- | The status of the access key. @Active@ means that the key is valid for+-- API calls, while @Inactive@ means it is not.+accessKeyInfo_status :: Lens.Lens' AccessKeyInfo StatusType+accessKeyInfo_status = Lens.lens (\AccessKeyInfo' {status} -> status) (\s@AccessKeyInfo' {} a -> s {status = a} :: AccessKeyInfo)++-- | The secret key used to sign requests.+accessKeyInfo_secretAccessKey :: Lens.Lens' AccessKeyInfo Prelude.Text+accessKeyInfo_secretAccessKey = Lens.lens (\AccessKeyInfo' {secretAccessKey} -> secretAccessKey) (\s@AccessKeyInfo' {} a -> s {secretAccessKey = a} :: AccessKeyInfo) Prelude.. Data._Sensitive++instance Data.FromXML AccessKeyInfo where+ parseXML x =+ AccessKeyInfo'+ Prelude.<$> (x Data..@? "CreateDate")+ Prelude.<*> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "AccessKeyId")+ Prelude.<*> (x Data..@ "Status")+ Prelude.<*> (x Data..@ "SecretAccessKey")++instance Prelude.Hashable AccessKeyInfo where+ hashWithSalt _salt AccessKeyInfo' {..} =+ _salt+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` accessKeyId+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` secretAccessKey++instance Prelude.NFData AccessKeyInfo where+ rnf AccessKeyInfo' {..} =+ Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf accessKeyId+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf secretAccessKey
+ gen/Amazonka/IAM/Types/AccessKeyLastUsed.hs view
@@ -0,0 +1,200 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.AccessKeyLastUsed+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.AccessKeyLastUsed where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about the last time an Amazon Web Services access+-- key was used since IAM began tracking this information on April 22,+-- 2015.+--+-- This data type is used as a response element in the GetAccessKeyLastUsed+-- operation.+--+-- /See:/ 'newAccessKeyLastUsed' smart constructor.+data AccessKeyLastUsed = AccessKeyLastUsed'+ { -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- access key was most recently used. This field is null in the following+ -- situations:+ --+ -- - The user does not have an access key.+ --+ -- - An access key exists but has not been used since IAM began tracking+ -- this information.+ --+ -- - There is no sign-in data associated with the user.+ lastUsedDate :: Data.ISO8601,+ -- | The name of the Amazon Web Services service with which this access key+ -- was most recently used. The value of this field is \"N\/A\" in the+ -- following situations:+ --+ -- - The user does not have an access key.+ --+ -- - An access key exists but has not been used since IAM started+ -- tracking this information.+ --+ -- - There is no sign-in data associated with the user.+ serviceName :: Prelude.Text,+ -- | The Amazon Web Services Region where this access key was most recently+ -- used. The value for this field is \"N\/A\" in the following situations:+ --+ -- - The user does not have an access key.+ --+ -- - An access key exists but has not been used since IAM began tracking+ -- this information.+ --+ -- - There is no sign-in data associated with the user.+ --+ -- For more information about Amazon Web Services Regions, see+ -- <https://docs.aws.amazon.com/general/latest/gr/rande.html Regions and endpoints>+ -- in the Amazon Web Services General Reference.+ region :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccessKeyLastUsed' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lastUsedDate', 'accessKeyLastUsed_lastUsedDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- access key was most recently used. This field is null in the following+-- situations:+--+-- - The user does not have an access key.+--+-- - An access key exists but has not been used since IAM began tracking+-- this information.+--+-- - There is no sign-in data associated with the user.+--+-- 'serviceName', 'accessKeyLastUsed_serviceName' - The name of the Amazon Web Services service with which this access key+-- was most recently used. The value of this field is \"N\/A\" in the+-- following situations:+--+-- - The user does not have an access key.+--+-- - An access key exists but has not been used since IAM started+-- tracking this information.+--+-- - There is no sign-in data associated with the user.+--+-- 'region', 'accessKeyLastUsed_region' - The Amazon Web Services Region where this access key was most recently+-- used. The value for this field is \"N\/A\" in the following situations:+--+-- - The user does not have an access key.+--+-- - An access key exists but has not been used since IAM began tracking+-- this information.+--+-- - There is no sign-in data associated with the user.+--+-- For more information about Amazon Web Services Regions, see+-- <https://docs.aws.amazon.com/general/latest/gr/rande.html Regions and endpoints>+-- in the Amazon Web Services General Reference.+newAccessKeyLastUsed ::+ -- | 'lastUsedDate'+ Prelude.UTCTime ->+ -- | 'serviceName'+ Prelude.Text ->+ -- | 'region'+ Prelude.Text ->+ AccessKeyLastUsed+newAccessKeyLastUsed+ pLastUsedDate_+ pServiceName_+ pRegion_ =+ AccessKeyLastUsed'+ { lastUsedDate =+ Data._Time Lens.# pLastUsedDate_,+ serviceName = pServiceName_,+ region = pRegion_+ }++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- access key was most recently used. This field is null in the following+-- situations:+--+-- - The user does not have an access key.+--+-- - An access key exists but has not been used since IAM began tracking+-- this information.+--+-- - There is no sign-in data associated with the user.+accessKeyLastUsed_lastUsedDate :: Lens.Lens' AccessKeyLastUsed Prelude.UTCTime+accessKeyLastUsed_lastUsedDate = Lens.lens (\AccessKeyLastUsed' {lastUsedDate} -> lastUsedDate) (\s@AccessKeyLastUsed' {} a -> s {lastUsedDate = a} :: AccessKeyLastUsed) Prelude.. Data._Time++-- | The name of the Amazon Web Services service with which this access key+-- was most recently used. The value of this field is \"N\/A\" in the+-- following situations:+--+-- - The user does not have an access key.+--+-- - An access key exists but has not been used since IAM started+-- tracking this information.+--+-- - There is no sign-in data associated with the user.+accessKeyLastUsed_serviceName :: Lens.Lens' AccessKeyLastUsed Prelude.Text+accessKeyLastUsed_serviceName = Lens.lens (\AccessKeyLastUsed' {serviceName} -> serviceName) (\s@AccessKeyLastUsed' {} a -> s {serviceName = a} :: AccessKeyLastUsed)++-- | The Amazon Web Services Region where this access key was most recently+-- used. The value for this field is \"N\/A\" in the following situations:+--+-- - The user does not have an access key.+--+-- - An access key exists but has not been used since IAM began tracking+-- this information.+--+-- - There is no sign-in data associated with the user.+--+-- For more information about Amazon Web Services Regions, see+-- <https://docs.aws.amazon.com/general/latest/gr/rande.html Regions and endpoints>+-- in the Amazon Web Services General Reference.+accessKeyLastUsed_region :: Lens.Lens' AccessKeyLastUsed Prelude.Text+accessKeyLastUsed_region = Lens.lens (\AccessKeyLastUsed' {region} -> region) (\s@AccessKeyLastUsed' {} a -> s {region = a} :: AccessKeyLastUsed)++instance Data.FromXML AccessKeyLastUsed where+ parseXML x =+ AccessKeyLastUsed'+ Prelude.<$> (x Data..@ "LastUsedDate")+ Prelude.<*> (x Data..@ "ServiceName")+ Prelude.<*> (x Data..@ "Region")++instance Prelude.Hashable AccessKeyLastUsed where+ hashWithSalt _salt AccessKeyLastUsed' {..} =+ _salt+ `Prelude.hashWithSalt` lastUsedDate+ `Prelude.hashWithSalt` serviceName+ `Prelude.hashWithSalt` region++instance Prelude.NFData AccessKeyLastUsed where+ rnf AccessKeyLastUsed' {..} =+ Prelude.rnf lastUsedDate+ `Prelude.seq` Prelude.rnf serviceName+ `Prelude.seq` Prelude.rnf region
+ gen/Amazonka/IAM/Types/AccessKeyMetadata.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.AccessKeyMetadata+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.AccessKeyMetadata where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.StatusType+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an Amazon Web Services access key, without+-- its secret key.+--+-- This data type is used as a response element in the ListAccessKeys+-- operation.+--+-- /See:/ 'newAccessKeyMetadata' smart constructor.+data AccessKeyMetadata = AccessKeyMetadata'+ { -- | The ID for this access key.+ accessKeyId :: Prelude.Maybe Core.AccessKey,+ -- | The date when the access key was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | The status of the access key. @Active@ means that the key is valid for+ -- API calls; @Inactive@ means it is not.+ status :: Prelude.Maybe StatusType,+ -- | The name of the IAM user that the key is associated with.+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccessKeyMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessKeyId', 'accessKeyMetadata_accessKeyId' - The ID for this access key.+--+-- 'createDate', 'accessKeyMetadata_createDate' - The date when the access key was created.+--+-- 'status', 'accessKeyMetadata_status' - The status of the access key. @Active@ means that the key is valid for+-- API calls; @Inactive@ means it is not.+--+-- 'userName', 'accessKeyMetadata_userName' - The name of the IAM user that the key is associated with.+newAccessKeyMetadata ::+ AccessKeyMetadata+newAccessKeyMetadata =+ AccessKeyMetadata'+ { accessKeyId = Prelude.Nothing,+ createDate = Prelude.Nothing,+ status = Prelude.Nothing,+ userName = Prelude.Nothing+ }++-- | The ID for this access key.+accessKeyMetadata_accessKeyId :: Lens.Lens' AccessKeyMetadata (Prelude.Maybe Core.AccessKey)+accessKeyMetadata_accessKeyId = Lens.lens (\AccessKeyMetadata' {accessKeyId} -> accessKeyId) (\s@AccessKeyMetadata' {} a -> s {accessKeyId = a} :: AccessKeyMetadata)++-- | The date when the access key was created.+accessKeyMetadata_createDate :: Lens.Lens' AccessKeyMetadata (Prelude.Maybe Prelude.UTCTime)+accessKeyMetadata_createDate = Lens.lens (\AccessKeyMetadata' {createDate} -> createDate) (\s@AccessKeyMetadata' {} a -> s {createDate = a} :: AccessKeyMetadata) Prelude.. Lens.mapping Data._Time++-- | The status of the access key. @Active@ means that the key is valid for+-- API calls; @Inactive@ means it is not.+accessKeyMetadata_status :: Lens.Lens' AccessKeyMetadata (Prelude.Maybe StatusType)+accessKeyMetadata_status = Lens.lens (\AccessKeyMetadata' {status} -> status) (\s@AccessKeyMetadata' {} a -> s {status = a} :: AccessKeyMetadata)++-- | The name of the IAM user that the key is associated with.+accessKeyMetadata_userName :: Lens.Lens' AccessKeyMetadata (Prelude.Maybe Prelude.Text)+accessKeyMetadata_userName = Lens.lens (\AccessKeyMetadata' {userName} -> userName) (\s@AccessKeyMetadata' {} a -> s {userName = a} :: AccessKeyMetadata)++instance Data.FromXML AccessKeyMetadata where+ parseXML x =+ AccessKeyMetadata'+ Prelude.<$> (x Data..@? "AccessKeyId")+ Prelude.<*> (x Data..@? "CreateDate")+ Prelude.<*> (x Data..@? "Status")+ Prelude.<*> (x Data..@? "UserName")++instance Prelude.Hashable AccessKeyMetadata where+ hashWithSalt _salt AccessKeyMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` accessKeyId+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` userName++instance Prelude.NFData AccessKeyMetadata where+ rnf AccessKeyMetadata' {..} =+ Prelude.rnf accessKeyId+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf userName
+ gen/Amazonka/IAM/Types/AssignmentStatusType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.AssignmentStatusType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.AssignmentStatusType+ ( AssignmentStatusType+ ( ..,+ AssignmentStatusType_Any,+ AssignmentStatusType_Assigned,+ AssignmentStatusType_Unassigned+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype AssignmentStatusType = AssignmentStatusType'+ { fromAssignmentStatusType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern AssignmentStatusType_Any :: AssignmentStatusType+pattern AssignmentStatusType_Any = AssignmentStatusType' "Any"++pattern AssignmentStatusType_Assigned :: AssignmentStatusType+pattern AssignmentStatusType_Assigned = AssignmentStatusType' "Assigned"++pattern AssignmentStatusType_Unassigned :: AssignmentStatusType+pattern AssignmentStatusType_Unassigned = AssignmentStatusType' "Unassigned"++{-# COMPLETE+ AssignmentStatusType_Any,+ AssignmentStatusType_Assigned,+ AssignmentStatusType_Unassigned,+ AssignmentStatusType'+ #-}
+ gen/Amazonka/IAM/Types/AttachedPermissionsBoundary.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.AttachedPermissionsBoundary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.AttachedPermissionsBoundary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.PermissionsBoundaryAttachmentType+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an attached permissions boundary.+--+-- An attached permissions boundary is a managed policy that has been+-- attached to a user or role to set the permissions boundary.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+--+-- /See:/ 'newAttachedPermissionsBoundary' smart constructor.+data AttachedPermissionsBoundary = AttachedPermissionsBoundary'+ { -- | The ARN of the policy used to set the permissions boundary for the user+ -- or role.+ permissionsBoundaryArn :: Prelude.Maybe Prelude.Text,+ -- | The permissions boundary usage type that indicates what type of IAM+ -- resource is used as the permissions boundary for an entity. This data+ -- type can only have a value of @Policy@.+ permissionsBoundaryType :: Prelude.Maybe PermissionsBoundaryAttachmentType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachedPermissionsBoundary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'permissionsBoundaryArn', 'attachedPermissionsBoundary_permissionsBoundaryArn' - The ARN of the policy used to set the permissions boundary for the user+-- or role.+--+-- 'permissionsBoundaryType', 'attachedPermissionsBoundary_permissionsBoundaryType' - The permissions boundary usage type that indicates what type of IAM+-- resource is used as the permissions boundary for an entity. This data+-- type can only have a value of @Policy@.+newAttachedPermissionsBoundary ::+ AttachedPermissionsBoundary+newAttachedPermissionsBoundary =+ AttachedPermissionsBoundary'+ { permissionsBoundaryArn =+ Prelude.Nothing,+ permissionsBoundaryType = Prelude.Nothing+ }++-- | The ARN of the policy used to set the permissions boundary for the user+-- or role.+attachedPermissionsBoundary_permissionsBoundaryArn :: Lens.Lens' AttachedPermissionsBoundary (Prelude.Maybe Prelude.Text)+attachedPermissionsBoundary_permissionsBoundaryArn = Lens.lens (\AttachedPermissionsBoundary' {permissionsBoundaryArn} -> permissionsBoundaryArn) (\s@AttachedPermissionsBoundary' {} a -> s {permissionsBoundaryArn = a} :: AttachedPermissionsBoundary)++-- | The permissions boundary usage type that indicates what type of IAM+-- resource is used as the permissions boundary for an entity. This data+-- type can only have a value of @Policy@.+attachedPermissionsBoundary_permissionsBoundaryType :: Lens.Lens' AttachedPermissionsBoundary (Prelude.Maybe PermissionsBoundaryAttachmentType)+attachedPermissionsBoundary_permissionsBoundaryType = Lens.lens (\AttachedPermissionsBoundary' {permissionsBoundaryType} -> permissionsBoundaryType) (\s@AttachedPermissionsBoundary' {} a -> s {permissionsBoundaryType = a} :: AttachedPermissionsBoundary)++instance Data.FromXML AttachedPermissionsBoundary where+ parseXML x =+ AttachedPermissionsBoundary'+ Prelude.<$> (x Data..@? "PermissionsBoundaryArn")+ Prelude.<*> (x Data..@? "PermissionsBoundaryType")++instance Prelude.Hashable AttachedPermissionsBoundary where+ hashWithSalt _salt AttachedPermissionsBoundary' {..} =+ _salt+ `Prelude.hashWithSalt` permissionsBoundaryArn+ `Prelude.hashWithSalt` permissionsBoundaryType++instance Prelude.NFData AttachedPermissionsBoundary where+ rnf AttachedPermissionsBoundary' {..} =+ Prelude.rnf permissionsBoundaryArn+ `Prelude.seq` Prelude.rnf permissionsBoundaryType
+ gen/Amazonka/IAM/Types/AttachedPolicy.hs view
@@ -0,0 +1,88 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.AttachedPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.AttachedPolicy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an attached policy.+--+-- An attached policy is a managed policy that has been attached to a user,+-- group, or role. This data type is used as a response element in the+-- ListAttachedGroupPolicies, ListAttachedRolePolicies,+-- ListAttachedUserPolicies, and GetAccountAuthorizationDetails operations.+--+-- For more information about managed policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- /See:/ 'newAttachedPolicy' smart constructor.+data AttachedPolicy = AttachedPolicy'+ { policyArn :: Prelude.Maybe Prelude.Text,+ -- | The friendly name of the attached policy.+ policyName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachedPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyArn', 'attachedPolicy_policyArn' - Undocumented member.+--+-- 'policyName', 'attachedPolicy_policyName' - The friendly name of the attached policy.+newAttachedPolicy ::+ AttachedPolicy+newAttachedPolicy =+ AttachedPolicy'+ { policyArn = Prelude.Nothing,+ policyName = Prelude.Nothing+ }++-- | Undocumented member.+attachedPolicy_policyArn :: Lens.Lens' AttachedPolicy (Prelude.Maybe Prelude.Text)+attachedPolicy_policyArn = Lens.lens (\AttachedPolicy' {policyArn} -> policyArn) (\s@AttachedPolicy' {} a -> s {policyArn = a} :: AttachedPolicy)++-- | The friendly name of the attached policy.+attachedPolicy_policyName :: Lens.Lens' AttachedPolicy (Prelude.Maybe Prelude.Text)+attachedPolicy_policyName = Lens.lens (\AttachedPolicy' {policyName} -> policyName) (\s@AttachedPolicy' {} a -> s {policyName = a} :: AttachedPolicy)++instance Data.FromXML AttachedPolicy where+ parseXML x =+ AttachedPolicy'+ Prelude.<$> (x Data..@? "PolicyArn")+ Prelude.<*> (x Data..@? "PolicyName")++instance Prelude.Hashable AttachedPolicy where+ hashWithSalt _salt AttachedPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` policyArn+ `Prelude.hashWithSalt` policyName++instance Prelude.NFData AttachedPolicy where+ rnf AttachedPolicy' {..} =+ Prelude.rnf policyArn+ `Prelude.seq` Prelude.rnf policyName
+ gen/Amazonka/IAM/Types/ContextEntry.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ContextEntry+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ContextEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.ContextKeyTypeEnum+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a condition context key. It includes the name+-- of the key and specifies the value (or values, if the context key+-- supports multiple values) to use in the simulation. This information is+-- used when evaluating the @Condition@ elements of the input policies.+--+-- This data type is used as an input parameter to SimulateCustomPolicy and+-- SimulatePrincipalPolicy.+--+-- /See:/ 'newContextEntry' smart constructor.+data ContextEntry = ContextEntry'+ { -- | The full name of a condition context key, including the service prefix.+ -- For example, @aws:SourceIp@ or @s3:VersionId@.+ contextKeyName :: Prelude.Maybe Prelude.Text,+ -- | The data type of the value (or values) specified in the+ -- @ContextKeyValues@ parameter.+ contextKeyType :: Prelude.Maybe ContextKeyTypeEnum,+ -- | The value (or values, if the condition context key supports multiple+ -- values) to provide to the simulation when the key is referenced by a+ -- @Condition@ element in an input policy.+ contextKeyValues :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ContextEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'contextKeyName', 'contextEntry_contextKeyName' - The full name of a condition context key, including the service prefix.+-- For example, @aws:SourceIp@ or @s3:VersionId@.+--+-- 'contextKeyType', 'contextEntry_contextKeyType' - The data type of the value (or values) specified in the+-- @ContextKeyValues@ parameter.+--+-- 'contextKeyValues', 'contextEntry_contextKeyValues' - The value (or values, if the condition context key supports multiple+-- values) to provide to the simulation when the key is referenced by a+-- @Condition@ element in an input policy.+newContextEntry ::+ ContextEntry+newContextEntry =+ ContextEntry'+ { contextKeyName = Prelude.Nothing,+ contextKeyType = Prelude.Nothing,+ contextKeyValues = Prelude.Nothing+ }++-- | The full name of a condition context key, including the service prefix.+-- For example, @aws:SourceIp@ or @s3:VersionId@.+contextEntry_contextKeyName :: Lens.Lens' ContextEntry (Prelude.Maybe Prelude.Text)+contextEntry_contextKeyName = Lens.lens (\ContextEntry' {contextKeyName} -> contextKeyName) (\s@ContextEntry' {} a -> s {contextKeyName = a} :: ContextEntry)++-- | The data type of the value (or values) specified in the+-- @ContextKeyValues@ parameter.+contextEntry_contextKeyType :: Lens.Lens' ContextEntry (Prelude.Maybe ContextKeyTypeEnum)+contextEntry_contextKeyType = Lens.lens (\ContextEntry' {contextKeyType} -> contextKeyType) (\s@ContextEntry' {} a -> s {contextKeyType = a} :: ContextEntry)++-- | The value (or values, if the condition context key supports multiple+-- values) to provide to the simulation when the key is referenced by a+-- @Condition@ element in an input policy.+contextEntry_contextKeyValues :: Lens.Lens' ContextEntry (Prelude.Maybe [Prelude.Text])+contextEntry_contextKeyValues = Lens.lens (\ContextEntry' {contextKeyValues} -> contextKeyValues) (\s@ContextEntry' {} a -> s {contextKeyValues = a} :: ContextEntry) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable ContextEntry where+ hashWithSalt _salt ContextEntry' {..} =+ _salt+ `Prelude.hashWithSalt` contextKeyName+ `Prelude.hashWithSalt` contextKeyType+ `Prelude.hashWithSalt` contextKeyValues++instance Prelude.NFData ContextEntry where+ rnf ContextEntry' {..} =+ Prelude.rnf contextKeyName+ `Prelude.seq` Prelude.rnf contextKeyType+ `Prelude.seq` Prelude.rnf contextKeyValues++instance Data.ToQuery ContextEntry where+ toQuery ContextEntry' {..} =+ Prelude.mconcat+ [ "ContextKeyName" Data.=: contextKeyName,+ "ContextKeyType" Data.=: contextKeyType,+ "ContextKeyValues"+ Data.=: Data.toQuery+ ( Data.toQueryList "member"+ Prelude.<$> contextKeyValues+ )+ ]
+ gen/Amazonka/IAM/Types/ContextKeyTypeEnum.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ContextKeyTypeEnum+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ContextKeyTypeEnum+ ( ContextKeyTypeEnum+ ( ..,+ ContextKeyTypeEnum_Binary,+ ContextKeyTypeEnum_BinaryList,+ ContextKeyTypeEnum_Boolean,+ ContextKeyTypeEnum_BooleanList,+ ContextKeyTypeEnum_Date,+ ContextKeyTypeEnum_DateList,+ ContextKeyTypeEnum_Ip,+ ContextKeyTypeEnum_IpList,+ ContextKeyTypeEnum_Numeric,+ ContextKeyTypeEnum_NumericList,+ ContextKeyTypeEnum_String,+ ContextKeyTypeEnum_StringList+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ContextKeyTypeEnum = ContextKeyTypeEnum'+ { fromContextKeyTypeEnum ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ContextKeyTypeEnum_Binary :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_Binary = ContextKeyTypeEnum' "binary"++pattern ContextKeyTypeEnum_BinaryList :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_BinaryList = ContextKeyTypeEnum' "binaryList"++pattern ContextKeyTypeEnum_Boolean :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_Boolean = ContextKeyTypeEnum' "boolean"++pattern ContextKeyTypeEnum_BooleanList :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_BooleanList = ContextKeyTypeEnum' "booleanList"++pattern ContextKeyTypeEnum_Date :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_Date = ContextKeyTypeEnum' "date"++pattern ContextKeyTypeEnum_DateList :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_DateList = ContextKeyTypeEnum' "dateList"++pattern ContextKeyTypeEnum_Ip :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_Ip = ContextKeyTypeEnum' "ip"++pattern ContextKeyTypeEnum_IpList :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_IpList = ContextKeyTypeEnum' "ipList"++pattern ContextKeyTypeEnum_Numeric :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_Numeric = ContextKeyTypeEnum' "numeric"++pattern ContextKeyTypeEnum_NumericList :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_NumericList = ContextKeyTypeEnum' "numericList"++pattern ContextKeyTypeEnum_String :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_String = ContextKeyTypeEnum' "string"++pattern ContextKeyTypeEnum_StringList :: ContextKeyTypeEnum+pattern ContextKeyTypeEnum_StringList = ContextKeyTypeEnum' "stringList"++{-# COMPLETE+ ContextKeyTypeEnum_Binary,+ ContextKeyTypeEnum_BinaryList,+ ContextKeyTypeEnum_Boolean,+ ContextKeyTypeEnum_BooleanList,+ ContextKeyTypeEnum_Date,+ ContextKeyTypeEnum_DateList,+ ContextKeyTypeEnum_Ip,+ ContextKeyTypeEnum_IpList,+ ContextKeyTypeEnum_Numeric,+ ContextKeyTypeEnum_NumericList,+ ContextKeyTypeEnum_String,+ ContextKeyTypeEnum_StringList,+ ContextKeyTypeEnum'+ #-}
+ gen/Amazonka/IAM/Types/DeletionTaskFailureReasonType.hs view
@@ -0,0 +1,113 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.DeletionTaskFailureReasonType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.DeletionTaskFailureReasonType where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.RoleUsageType+import qualified Amazonka.Prelude as Prelude++-- | The reason that the service-linked role deletion failed.+--+-- This data type is used as a response element in the+-- GetServiceLinkedRoleDeletionStatus operation.+--+-- /See:/ 'newDeletionTaskFailureReasonType' smart constructor.+data DeletionTaskFailureReasonType = DeletionTaskFailureReasonType'+ { -- | A short description of the reason that the service-linked role deletion+ -- failed.+ reason :: Prelude.Maybe Prelude.Text,+ -- | A list of objects that contains details about the service-linked role+ -- deletion failure, if that information is returned by the service. If the+ -- service-linked role has active sessions or if any resources that were+ -- used by the role have not been deleted from the linked service, the role+ -- can\'t be deleted. This parameter includes a list of the resources that+ -- are associated with the role and the Region in which the resources are+ -- being used.+ roleUsageList :: Prelude.Maybe [RoleUsageType]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletionTaskFailureReasonType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'reason', 'deletionTaskFailureReasonType_reason' - A short description of the reason that the service-linked role deletion+-- failed.+--+-- 'roleUsageList', 'deletionTaskFailureReasonType_roleUsageList' - A list of objects that contains details about the service-linked role+-- deletion failure, if that information is returned by the service. If the+-- service-linked role has active sessions or if any resources that were+-- used by the role have not been deleted from the linked service, the role+-- can\'t be deleted. This parameter includes a list of the resources that+-- are associated with the role and the Region in which the resources are+-- being used.+newDeletionTaskFailureReasonType ::+ DeletionTaskFailureReasonType+newDeletionTaskFailureReasonType =+ DeletionTaskFailureReasonType'+ { reason =+ Prelude.Nothing,+ roleUsageList = Prelude.Nothing+ }++-- | A short description of the reason that the service-linked role deletion+-- failed.+deletionTaskFailureReasonType_reason :: Lens.Lens' DeletionTaskFailureReasonType (Prelude.Maybe Prelude.Text)+deletionTaskFailureReasonType_reason = Lens.lens (\DeletionTaskFailureReasonType' {reason} -> reason) (\s@DeletionTaskFailureReasonType' {} a -> s {reason = a} :: DeletionTaskFailureReasonType)++-- | A list of objects that contains details about the service-linked role+-- deletion failure, if that information is returned by the service. If the+-- service-linked role has active sessions or if any resources that were+-- used by the role have not been deleted from the linked service, the role+-- can\'t be deleted. This parameter includes a list of the resources that+-- are associated with the role and the Region in which the resources are+-- being used.+deletionTaskFailureReasonType_roleUsageList :: Lens.Lens' DeletionTaskFailureReasonType (Prelude.Maybe [RoleUsageType])+deletionTaskFailureReasonType_roleUsageList = Lens.lens (\DeletionTaskFailureReasonType' {roleUsageList} -> roleUsageList) (\s@DeletionTaskFailureReasonType' {} a -> s {roleUsageList = a} :: DeletionTaskFailureReasonType) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML DeletionTaskFailureReasonType where+ parseXML x =+ DeletionTaskFailureReasonType'+ Prelude.<$> (x Data..@? "Reason")+ Prelude.<*> ( x+ Data..@? "RoleUsageList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )++instance+ Prelude.Hashable+ DeletionTaskFailureReasonType+ where+ hashWithSalt _salt DeletionTaskFailureReasonType' {..} =+ _salt+ `Prelude.hashWithSalt` reason+ `Prelude.hashWithSalt` roleUsageList++instance Prelude.NFData DeletionTaskFailureReasonType where+ rnf DeletionTaskFailureReasonType' {..} =+ Prelude.rnf reason+ `Prelude.seq` Prelude.rnf roleUsageList
+ gen/Amazonka/IAM/Types/DeletionTaskStatusType.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.DeletionTaskStatusType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.DeletionTaskStatusType+ ( DeletionTaskStatusType+ ( ..,+ DeletionTaskStatusType_FAILED,+ DeletionTaskStatusType_IN_PROGRESS,+ DeletionTaskStatusType_NOT_STARTED,+ DeletionTaskStatusType_SUCCEEDED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DeletionTaskStatusType = DeletionTaskStatusType'+ { fromDeletionTaskStatusType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern DeletionTaskStatusType_FAILED :: DeletionTaskStatusType+pattern DeletionTaskStatusType_FAILED = DeletionTaskStatusType' "FAILED"++pattern DeletionTaskStatusType_IN_PROGRESS :: DeletionTaskStatusType+pattern DeletionTaskStatusType_IN_PROGRESS = DeletionTaskStatusType' "IN_PROGRESS"++pattern DeletionTaskStatusType_NOT_STARTED :: DeletionTaskStatusType+pattern DeletionTaskStatusType_NOT_STARTED = DeletionTaskStatusType' "NOT_STARTED"++pattern DeletionTaskStatusType_SUCCEEDED :: DeletionTaskStatusType+pattern DeletionTaskStatusType_SUCCEEDED = DeletionTaskStatusType' "SUCCEEDED"++{-# COMPLETE+ DeletionTaskStatusType_FAILED,+ DeletionTaskStatusType_IN_PROGRESS,+ DeletionTaskStatusType_NOT_STARTED,+ DeletionTaskStatusType_SUCCEEDED,+ DeletionTaskStatusType'+ #-}
+ gen/Amazonka/IAM/Types/EncodingType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.EncodingType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.EncodingType+ ( EncodingType+ ( ..,+ EncodingType_PEM,+ EncodingType_SSH+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EncodingType = EncodingType'+ { fromEncodingType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern EncodingType_PEM :: EncodingType+pattern EncodingType_PEM = EncodingType' "PEM"++pattern EncodingType_SSH :: EncodingType+pattern EncodingType_SSH = EncodingType' "SSH"++{-# COMPLETE+ EncodingType_PEM,+ EncodingType_SSH,+ EncodingType'+ #-}
+ gen/Amazonka/IAM/Types/EntityDetails.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.EntityDetails+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.EntityDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.EntityInfo+import qualified Amazonka.Prelude as Prelude++-- | An object that contains details about when the IAM entities (users or+-- roles) were last used in an attempt to access the specified Amazon Web+-- Services service.+--+-- This data type is a response element in the+-- GetServiceLastAccessedDetailsWithEntities operation.+--+-- /See:/ 'newEntityDetails' smart constructor.+data EntityDetails = EntityDetails'+ { -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- authenticated entity last attempted to access Amazon Web Services.+ -- Amazon Web Services does not report unauthenticated requests.+ --+ -- This field is null if no IAM entities attempted to access the service+ -- within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ lastAuthenticated :: Prelude.Maybe Data.ISO8601,+ -- | The @EntityInfo@ object that contains details about the entity (user or+ -- role).+ entityInfo :: EntityInfo+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EntityDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lastAuthenticated', 'entityDetails_lastAuthenticated' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- authenticated entity last attempted to access Amazon Web Services.+-- Amazon Web Services does not report unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'entityInfo', 'entityDetails_entityInfo' - The @EntityInfo@ object that contains details about the entity (user or+-- role).+newEntityDetails ::+ -- | 'entityInfo'+ EntityInfo ->+ EntityDetails+newEntityDetails pEntityInfo_ =+ EntityDetails'+ { lastAuthenticated = Prelude.Nothing,+ entityInfo = pEntityInfo_+ }++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- authenticated entity last attempted to access Amazon Web Services.+-- Amazon Web Services does not report unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+entityDetails_lastAuthenticated :: Lens.Lens' EntityDetails (Prelude.Maybe Prelude.UTCTime)+entityDetails_lastAuthenticated = Lens.lens (\EntityDetails' {lastAuthenticated} -> lastAuthenticated) (\s@EntityDetails' {} a -> s {lastAuthenticated = a} :: EntityDetails) Prelude.. Lens.mapping Data._Time++-- | The @EntityInfo@ object that contains details about the entity (user or+-- role).+entityDetails_entityInfo :: Lens.Lens' EntityDetails EntityInfo+entityDetails_entityInfo = Lens.lens (\EntityDetails' {entityInfo} -> entityInfo) (\s@EntityDetails' {} a -> s {entityInfo = a} :: EntityDetails)++instance Data.FromXML EntityDetails where+ parseXML x =+ EntityDetails'+ Prelude.<$> (x Data..@? "LastAuthenticated")+ Prelude.<*> (x Data..@ "EntityInfo")++instance Prelude.Hashable EntityDetails where+ hashWithSalt _salt EntityDetails' {..} =+ _salt+ `Prelude.hashWithSalt` lastAuthenticated+ `Prelude.hashWithSalt` entityInfo++instance Prelude.NFData EntityDetails where+ rnf EntityDetails' {..} =+ Prelude.rnf lastAuthenticated+ `Prelude.seq` Prelude.rnf entityInfo
+ gen/Amazonka/IAM/Types/EntityInfo.hs view
@@ -0,0 +1,135 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.EntityInfo+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.EntityInfo where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.PolicyOwnerEntityType+import qualified Amazonka.Prelude as Prelude++-- | Contains details about the specified entity (user or role).+--+-- This data type is an element of the EntityDetails object.+--+-- /See:/ 'newEntityInfo' smart constructor.+data EntityInfo = EntityInfo'+ { -- | The path to the entity (user or role). For more information about paths,+ -- see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Maybe Prelude.Text,+ arn :: Prelude.Text,+ -- | The name of the entity (user or role).+ name :: Prelude.Text,+ -- | The type of entity (user or role).+ type' :: PolicyOwnerEntityType,+ -- | The identifier of the entity (user or role).+ id :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EntityInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'path', 'entityInfo_path' - The path to the entity (user or role). For more information about paths,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'arn', 'entityInfo_arn' - Undocumented member.+--+-- 'name', 'entityInfo_name' - The name of the entity (user or role).+--+-- 'type'', 'entityInfo_type' - The type of entity (user or role).+--+-- 'id', 'entityInfo_id' - The identifier of the entity (user or role).+newEntityInfo ::+ -- | 'arn'+ Prelude.Text ->+ -- | 'name'+ Prelude.Text ->+ -- | 'type''+ PolicyOwnerEntityType ->+ -- | 'id'+ Prelude.Text ->+ EntityInfo+newEntityInfo pArn_ pName_ pType_ pId_ =+ EntityInfo'+ { path = Prelude.Nothing,+ arn = pArn_,+ name = pName_,+ type' = pType_,+ id = pId_+ }++-- | The path to the entity (user or role). For more information about paths,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+entityInfo_path :: Lens.Lens' EntityInfo (Prelude.Maybe Prelude.Text)+entityInfo_path = Lens.lens (\EntityInfo' {path} -> path) (\s@EntityInfo' {} a -> s {path = a} :: EntityInfo)++-- | Undocumented member.+entityInfo_arn :: Lens.Lens' EntityInfo Prelude.Text+entityInfo_arn = Lens.lens (\EntityInfo' {arn} -> arn) (\s@EntityInfo' {} a -> s {arn = a} :: EntityInfo)++-- | The name of the entity (user or role).+entityInfo_name :: Lens.Lens' EntityInfo Prelude.Text+entityInfo_name = Lens.lens (\EntityInfo' {name} -> name) (\s@EntityInfo' {} a -> s {name = a} :: EntityInfo)++-- | The type of entity (user or role).+entityInfo_type :: Lens.Lens' EntityInfo PolicyOwnerEntityType+entityInfo_type = Lens.lens (\EntityInfo' {type'} -> type') (\s@EntityInfo' {} a -> s {type' = a} :: EntityInfo)++-- | The identifier of the entity (user or role).+entityInfo_id :: Lens.Lens' EntityInfo Prelude.Text+entityInfo_id = Lens.lens (\EntityInfo' {id} -> id) (\s@EntityInfo' {} a -> s {id = a} :: EntityInfo)++instance Data.FromXML EntityInfo where+ parseXML x =+ EntityInfo'+ Prelude.<$> (x Data..@? "Path")+ Prelude.<*> (x Data..@ "Arn")+ Prelude.<*> (x Data..@ "Name")+ Prelude.<*> (x Data..@ "Type")+ Prelude.<*> (x Data..@ "Id")++instance Prelude.Hashable EntityInfo where+ hashWithSalt _salt EntityInfo' {..} =+ _salt+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` type'+ `Prelude.hashWithSalt` id++instance Prelude.NFData EntityInfo where+ rnf EntityInfo' {..} =+ Prelude.rnf path+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf id
+ gen/Amazonka/IAM/Types/EntityType.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.EntityType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.EntityType+ ( EntityType+ ( ..,+ EntityType_AWSManagedPolicy,+ EntityType_Group,+ EntityType_LocalManagedPolicy,+ EntityType_Role,+ EntityType_User+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EntityType = EntityType'+ { fromEntityType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern EntityType_AWSManagedPolicy :: EntityType+pattern EntityType_AWSManagedPolicy = EntityType' "AWSManagedPolicy"++pattern EntityType_Group :: EntityType+pattern EntityType_Group = EntityType' "Group"++pattern EntityType_LocalManagedPolicy :: EntityType+pattern EntityType_LocalManagedPolicy = EntityType' "LocalManagedPolicy"++pattern EntityType_Role :: EntityType+pattern EntityType_Role = EntityType' "Role"++pattern EntityType_User :: EntityType+pattern EntityType_User = EntityType' "User"++{-# COMPLETE+ EntityType_AWSManagedPolicy,+ EntityType_Group,+ EntityType_LocalManagedPolicy,+ EntityType_Role,+ EntityType_User,+ EntityType'+ #-}
+ gen/Amazonka/IAM/Types/ErrorDetails.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ErrorDetails+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ErrorDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about the reason that the operation failed.+--+-- This data type is used as a response element in the+-- GetOrganizationsAccessReport, GetServiceLastAccessedDetails, and+-- GetServiceLastAccessedDetailsWithEntities operations.+--+-- /See:/ 'newErrorDetails' smart constructor.+data ErrorDetails = ErrorDetails'+ { -- | Detailed information about the reason that the operation failed.+ message :: Prelude.Text,+ -- | The error code associated with the operation failure.+ code :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ErrorDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'message', 'errorDetails_message' - Detailed information about the reason that the operation failed.+--+-- 'code', 'errorDetails_code' - The error code associated with the operation failure.+newErrorDetails ::+ -- | 'message'+ Prelude.Text ->+ -- | 'code'+ Prelude.Text ->+ ErrorDetails+newErrorDetails pMessage_ pCode_ =+ ErrorDetails' {message = pMessage_, code = pCode_}++-- | Detailed information about the reason that the operation failed.+errorDetails_message :: Lens.Lens' ErrorDetails Prelude.Text+errorDetails_message = Lens.lens (\ErrorDetails' {message} -> message) (\s@ErrorDetails' {} a -> s {message = a} :: ErrorDetails)++-- | The error code associated with the operation failure.+errorDetails_code :: Lens.Lens' ErrorDetails Prelude.Text+errorDetails_code = Lens.lens (\ErrorDetails' {code} -> code) (\s@ErrorDetails' {} a -> s {code = a} :: ErrorDetails)++instance Data.FromXML ErrorDetails where+ parseXML x =+ ErrorDetails'+ Prelude.<$> (x Data..@ "Message")+ Prelude.<*> (x Data..@ "Code")++instance Prelude.Hashable ErrorDetails where+ hashWithSalt _salt ErrorDetails' {..} =+ _salt+ `Prelude.hashWithSalt` message+ `Prelude.hashWithSalt` code++instance Prelude.NFData ErrorDetails where+ rnf ErrorDetails' {..} =+ Prelude.rnf message `Prelude.seq` Prelude.rnf code
+ gen/Amazonka/IAM/Types/EvaluationResult.hs view
@@ -0,0 +1,292 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.EvaluationResult+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.EvaluationResult where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.OrganizationsDecisionDetail+import Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail+import Amazonka.IAM.Types.PolicyEvaluationDecisionType+import Amazonka.IAM.Types.ResourceSpecificResult+import Amazonka.IAM.Types.Statement+import qualified Amazonka.Prelude as Prelude++-- | Contains the results of a simulation.+--+-- This data type is used by the return parameter of+-- @ @@SimulateCustomPolicy@@ @ and @ @@SimulatePrincipalPolicy@@ @.+--+-- /See:/ 'newEvaluationResult' smart constructor.+data EvaluationResult = EvaluationResult'+ { -- | Additional details about the results of the cross-account evaluation+ -- decision. This parameter is populated for only cross-account+ -- simulations. It contains a brief summary of how each policy type+ -- contributes to the final evaluation decision.+ --+ -- If the simulation evaluates policies within the same account and+ -- includes a resource ARN, then the parameter is present but the response+ -- is empty. If the simulation evaluates policies within the same account+ -- and specifies all resources (@*@), then the parameter is not returned.+ --+ -- When you make a cross-account request, Amazon Web Services evaluates the+ -- request in the trusting account and the trusted account. The request is+ -- allowed only if both evaluations return @true@. For more information+ -- about how policies are evaluated, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics Evaluating policies within a single account>.+ --+ -- If an Organizations SCP included in the evaluation denies access, the+ -- simulation ends. In this case, policy evaluation does not proceed any+ -- further and this parameter is not returned.+ evalDecisionDetails :: Prelude.Maybe (Prelude.HashMap Prelude.Text PolicyEvaluationDecisionType),+ -- | The ARN of the resource that the indicated API operation was tested on.+ evalResourceName :: Prelude.Maybe Prelude.Text,+ -- | A list of the statements in the input policies that determine the result+ -- for this scenario. Remember that even if multiple statements allow the+ -- operation on the resource, if only one statement denies that operation,+ -- then the explicit deny overrides any allow. In addition, the deny+ -- statement is the only entry included in the result.+ matchedStatements :: Prelude.Maybe [Statement],+ -- | A list of context keys that are required by the included input policies+ -- but that were not provided by one of the input parameters. This list is+ -- used when the resource in a simulation is \"*\", either explicitly, or+ -- when the @ResourceArns@ parameter blank. If you include a list of+ -- resources, then any missing context values are instead included under+ -- the @ResourceSpecificResults@ section. To discover the context keys used+ -- by a set of policies, you can call GetContextKeysForCustomPolicy or+ -- GetContextKeysForPrincipalPolicy.+ missingContextValues :: Prelude.Maybe [Prelude.Text],+ -- | A structure that details how Organizations and its service control+ -- policies affect the results of the simulation. Only applies if the+ -- simulated user\'s account is part of an organization.+ organizationsDecisionDetail :: Prelude.Maybe OrganizationsDecisionDetail,+ -- | Contains information about the effect that a permissions boundary has on+ -- a policy simulation when the boundary is applied to an IAM entity.+ permissionsBoundaryDecisionDetail :: Prelude.Maybe PermissionsBoundaryDecisionDetail,+ -- | The individual results of the simulation of the API operation specified+ -- in EvalActionName on each resource.+ resourceSpecificResults :: Prelude.Maybe [ResourceSpecificResult],+ -- | The name of the API operation tested on the indicated resource.+ evalActionName :: Prelude.Text,+ -- | The result of the simulation.+ evalDecision :: PolicyEvaluationDecisionType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EvaluationResult' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'evalDecisionDetails', 'evaluationResult_evalDecisionDetails' - Additional details about the results of the cross-account evaluation+-- decision. This parameter is populated for only cross-account+-- simulations. It contains a brief summary of how each policy type+-- contributes to the final evaluation decision.+--+-- If the simulation evaluates policies within the same account and+-- includes a resource ARN, then the parameter is present but the response+-- is empty. If the simulation evaluates policies within the same account+-- and specifies all resources (@*@), then the parameter is not returned.+--+-- When you make a cross-account request, Amazon Web Services evaluates the+-- request in the trusting account and the trusted account. The request is+-- allowed only if both evaluations return @true@. For more information+-- about how policies are evaluated, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics Evaluating policies within a single account>.+--+-- If an Organizations SCP included in the evaluation denies access, the+-- simulation ends. In this case, policy evaluation does not proceed any+-- further and this parameter is not returned.+--+-- 'evalResourceName', 'evaluationResult_evalResourceName' - The ARN of the resource that the indicated API operation was tested on.+--+-- 'matchedStatements', 'evaluationResult_matchedStatements' - A list of the statements in the input policies that determine the result+-- for this scenario. Remember that even if multiple statements allow the+-- operation on the resource, if only one statement denies that operation,+-- then the explicit deny overrides any allow. In addition, the deny+-- statement is the only entry included in the result.+--+-- 'missingContextValues', 'evaluationResult_missingContextValues' - A list of context keys that are required by the included input policies+-- but that were not provided by one of the input parameters. This list is+-- used when the resource in a simulation is \"*\", either explicitly, or+-- when the @ResourceArns@ parameter blank. If you include a list of+-- resources, then any missing context values are instead included under+-- the @ResourceSpecificResults@ section. To discover the context keys used+-- by a set of policies, you can call GetContextKeysForCustomPolicy or+-- GetContextKeysForPrincipalPolicy.+--+-- 'organizationsDecisionDetail', 'evaluationResult_organizationsDecisionDetail' - A structure that details how Organizations and its service control+-- policies affect the results of the simulation. Only applies if the+-- simulated user\'s account is part of an organization.+--+-- 'permissionsBoundaryDecisionDetail', 'evaluationResult_permissionsBoundaryDecisionDetail' - Contains information about the effect that a permissions boundary has on+-- a policy simulation when the boundary is applied to an IAM entity.+--+-- 'resourceSpecificResults', 'evaluationResult_resourceSpecificResults' - The individual results of the simulation of the API operation specified+-- in EvalActionName on each resource.+--+-- 'evalActionName', 'evaluationResult_evalActionName' - The name of the API operation tested on the indicated resource.+--+-- 'evalDecision', 'evaluationResult_evalDecision' - The result of the simulation.+newEvaluationResult ::+ -- | 'evalActionName'+ Prelude.Text ->+ -- | 'evalDecision'+ PolicyEvaluationDecisionType ->+ EvaluationResult+newEvaluationResult pEvalActionName_ pEvalDecision_ =+ EvaluationResult'+ { evalDecisionDetails =+ Prelude.Nothing,+ evalResourceName = Prelude.Nothing,+ matchedStatements = Prelude.Nothing,+ missingContextValues = Prelude.Nothing,+ organizationsDecisionDetail = Prelude.Nothing,+ permissionsBoundaryDecisionDetail = Prelude.Nothing,+ resourceSpecificResults = Prelude.Nothing,+ evalActionName = pEvalActionName_,+ evalDecision = pEvalDecision_+ }++-- | Additional details about the results of the cross-account evaluation+-- decision. This parameter is populated for only cross-account+-- simulations. It contains a brief summary of how each policy type+-- contributes to the final evaluation decision.+--+-- If the simulation evaluates policies within the same account and+-- includes a resource ARN, then the parameter is present but the response+-- is empty. If the simulation evaluates policies within the same account+-- and specifies all resources (@*@), then the parameter is not returned.+--+-- When you make a cross-account request, Amazon Web Services evaluates the+-- request in the trusting account and the trusted account. The request is+-- allowed only if both evaluations return @true@. For more information+-- about how policies are evaluated, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html#policy-eval-basics Evaluating policies within a single account>.+--+-- If an Organizations SCP included in the evaluation denies access, the+-- simulation ends. In this case, policy evaluation does not proceed any+-- further and this parameter is not returned.+evaluationResult_evalDecisionDetails :: Lens.Lens' EvaluationResult (Prelude.Maybe (Prelude.HashMap Prelude.Text PolicyEvaluationDecisionType))+evaluationResult_evalDecisionDetails = Lens.lens (\EvaluationResult' {evalDecisionDetails} -> evalDecisionDetails) (\s@EvaluationResult' {} a -> s {evalDecisionDetails = a} :: EvaluationResult) Prelude.. Lens.mapping Lens.coerced++-- | The ARN of the resource that the indicated API operation was tested on.+evaluationResult_evalResourceName :: Lens.Lens' EvaluationResult (Prelude.Maybe Prelude.Text)+evaluationResult_evalResourceName = Lens.lens (\EvaluationResult' {evalResourceName} -> evalResourceName) (\s@EvaluationResult' {} a -> s {evalResourceName = a} :: EvaluationResult)++-- | A list of the statements in the input policies that determine the result+-- for this scenario. Remember that even if multiple statements allow the+-- operation on the resource, if only one statement denies that operation,+-- then the explicit deny overrides any allow. In addition, the deny+-- statement is the only entry included in the result.+evaluationResult_matchedStatements :: Lens.Lens' EvaluationResult (Prelude.Maybe [Statement])+evaluationResult_matchedStatements = Lens.lens (\EvaluationResult' {matchedStatements} -> matchedStatements) (\s@EvaluationResult' {} a -> s {matchedStatements = a} :: EvaluationResult) Prelude.. Lens.mapping Lens.coerced++-- | A list of context keys that are required by the included input policies+-- but that were not provided by one of the input parameters. This list is+-- used when the resource in a simulation is \"*\", either explicitly, or+-- when the @ResourceArns@ parameter blank. If you include a list of+-- resources, then any missing context values are instead included under+-- the @ResourceSpecificResults@ section. To discover the context keys used+-- by a set of policies, you can call GetContextKeysForCustomPolicy or+-- GetContextKeysForPrincipalPolicy.+evaluationResult_missingContextValues :: Lens.Lens' EvaluationResult (Prelude.Maybe [Prelude.Text])+evaluationResult_missingContextValues = Lens.lens (\EvaluationResult' {missingContextValues} -> missingContextValues) (\s@EvaluationResult' {} a -> s {missingContextValues = a} :: EvaluationResult) Prelude.. Lens.mapping Lens.coerced++-- | A structure that details how Organizations and its service control+-- policies affect the results of the simulation. Only applies if the+-- simulated user\'s account is part of an organization.+evaluationResult_organizationsDecisionDetail :: Lens.Lens' EvaluationResult (Prelude.Maybe OrganizationsDecisionDetail)+evaluationResult_organizationsDecisionDetail = Lens.lens (\EvaluationResult' {organizationsDecisionDetail} -> organizationsDecisionDetail) (\s@EvaluationResult' {} a -> s {organizationsDecisionDetail = a} :: EvaluationResult)++-- | Contains information about the effect that a permissions boundary has on+-- a policy simulation when the boundary is applied to an IAM entity.+evaluationResult_permissionsBoundaryDecisionDetail :: Lens.Lens' EvaluationResult (Prelude.Maybe PermissionsBoundaryDecisionDetail)+evaluationResult_permissionsBoundaryDecisionDetail = Lens.lens (\EvaluationResult' {permissionsBoundaryDecisionDetail} -> permissionsBoundaryDecisionDetail) (\s@EvaluationResult' {} a -> s {permissionsBoundaryDecisionDetail = a} :: EvaluationResult)++-- | The individual results of the simulation of the API operation specified+-- in EvalActionName on each resource.+evaluationResult_resourceSpecificResults :: Lens.Lens' EvaluationResult (Prelude.Maybe [ResourceSpecificResult])+evaluationResult_resourceSpecificResults = Lens.lens (\EvaluationResult' {resourceSpecificResults} -> resourceSpecificResults) (\s@EvaluationResult' {} a -> s {resourceSpecificResults = a} :: EvaluationResult) Prelude.. Lens.mapping Lens.coerced++-- | The name of the API operation tested on the indicated resource.+evaluationResult_evalActionName :: Lens.Lens' EvaluationResult Prelude.Text+evaluationResult_evalActionName = Lens.lens (\EvaluationResult' {evalActionName} -> evalActionName) (\s@EvaluationResult' {} a -> s {evalActionName = a} :: EvaluationResult)++-- | The result of the simulation.+evaluationResult_evalDecision :: Lens.Lens' EvaluationResult PolicyEvaluationDecisionType+evaluationResult_evalDecision = Lens.lens (\EvaluationResult' {evalDecision} -> evalDecision) (\s@EvaluationResult' {} a -> s {evalDecision = a} :: EvaluationResult)++instance Data.FromXML EvaluationResult where+ parseXML x =+ EvaluationResult'+ Prelude.<$> ( x+ Data..@? "EvalDecisionDetails"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLMap "entry" "key" "value")+ )+ Prelude.<*> (x Data..@? "EvalResourceName")+ Prelude.<*> ( x+ Data..@? "MatchedStatements"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "MissingContextValues"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "OrganizationsDecisionDetail")+ Prelude.<*> (x Data..@? "PermissionsBoundaryDecisionDetail")+ Prelude.<*> ( x+ Data..@? "ResourceSpecificResults"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@ "EvalActionName")+ Prelude.<*> (x Data..@ "EvalDecision")++instance Prelude.Hashable EvaluationResult where+ hashWithSalt _salt EvaluationResult' {..} =+ _salt+ `Prelude.hashWithSalt` evalDecisionDetails+ `Prelude.hashWithSalt` evalResourceName+ `Prelude.hashWithSalt` matchedStatements+ `Prelude.hashWithSalt` missingContextValues+ `Prelude.hashWithSalt` organizationsDecisionDetail+ `Prelude.hashWithSalt` permissionsBoundaryDecisionDetail+ `Prelude.hashWithSalt` resourceSpecificResults+ `Prelude.hashWithSalt` evalActionName+ `Prelude.hashWithSalt` evalDecision++instance Prelude.NFData EvaluationResult where+ rnf EvaluationResult' {..} =+ Prelude.rnf evalDecisionDetails+ `Prelude.seq` Prelude.rnf evalResourceName+ `Prelude.seq` Prelude.rnf matchedStatements+ `Prelude.seq` Prelude.rnf missingContextValues+ `Prelude.seq` Prelude.rnf organizationsDecisionDetail+ `Prelude.seq` Prelude.rnf permissionsBoundaryDecisionDetail+ `Prelude.seq` Prelude.rnf resourceSpecificResults+ `Prelude.seq` Prelude.rnf evalActionName+ `Prelude.seq` Prelude.rnf evalDecision
+ gen/Amazonka/IAM/Types/GetContextKeysForPolicyResponse.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.GetContextKeysForPolicyResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.GetContextKeysForPolicyResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains the response to a successful GetContextKeysForPrincipalPolicy+-- or GetContextKeysForCustomPolicy request.+--+-- /See:/ 'newGetContextKeysForPolicyResponse' smart constructor.+data GetContextKeysForPolicyResponse = GetContextKeysForPolicyResponse'+ { -- | The list of context keys that are referenced in the input policies.+ contextKeyNames :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetContextKeysForPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'contextKeyNames', 'getContextKeysForPolicyResponse_contextKeyNames' - The list of context keys that are referenced in the input policies.+newGetContextKeysForPolicyResponse ::+ GetContextKeysForPolicyResponse+newGetContextKeysForPolicyResponse =+ GetContextKeysForPolicyResponse'+ { contextKeyNames =+ Prelude.Nothing+ }++-- | The list of context keys that are referenced in the input policies.+getContextKeysForPolicyResponse_contextKeyNames :: Lens.Lens' GetContextKeysForPolicyResponse (Prelude.Maybe [Prelude.Text])+getContextKeysForPolicyResponse_contextKeyNames = Lens.lens (\GetContextKeysForPolicyResponse' {contextKeyNames} -> contextKeyNames) (\s@GetContextKeysForPolicyResponse' {} a -> s {contextKeyNames = a} :: GetContextKeysForPolicyResponse) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML GetContextKeysForPolicyResponse where+ parseXML x =+ GetContextKeysForPolicyResponse'+ Prelude.<$> ( x+ Data..@? "ContextKeyNames"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )++instance+ Prelude.Hashable+ GetContextKeysForPolicyResponse+ where+ hashWithSalt+ _salt+ GetContextKeysForPolicyResponse' {..} =+ _salt `Prelude.hashWithSalt` contextKeyNames++instance+ Prelude.NFData+ GetContextKeysForPolicyResponse+ where+ rnf GetContextKeysForPolicyResponse' {..} =+ Prelude.rnf contextKeyNames
+ gen/Amazonka/IAM/Types/GlobalEndpointTokenVersion.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.GlobalEndpointTokenVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.GlobalEndpointTokenVersion+ ( GlobalEndpointTokenVersion+ ( ..,+ GlobalEndpointTokenVersion_V1Token,+ GlobalEndpointTokenVersion_V2Token+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype GlobalEndpointTokenVersion = GlobalEndpointTokenVersion'+ { fromGlobalEndpointTokenVersion ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern GlobalEndpointTokenVersion_V1Token :: GlobalEndpointTokenVersion+pattern GlobalEndpointTokenVersion_V1Token = GlobalEndpointTokenVersion' "v1Token"++pattern GlobalEndpointTokenVersion_V2Token :: GlobalEndpointTokenVersion+pattern GlobalEndpointTokenVersion_V2Token = GlobalEndpointTokenVersion' "v2Token"++{-# COMPLETE+ GlobalEndpointTokenVersion_V1Token,+ GlobalEndpointTokenVersion_V2Token,+ GlobalEndpointTokenVersion'+ #-}
+ gen/Amazonka/IAM/Types/Group.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.Group+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.Group where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an IAM group entity.+--+-- This data type is used as a response element in the following+-- operations:+--+-- - CreateGroup+--+-- - GetGroup+--+-- - ListGroups+--+-- /See:/ 'newGroup' smart constructor.+data Group = Group'+ { -- | The path to the group. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Text,+ -- | The friendly name that identifies the group.+ groupName :: Prelude.Text,+ -- | The stable and unique string identifying the group. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ groupId :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) specifying the group. For more+ -- information about ARNs and how to use them in policies, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ arn :: Prelude.Text,+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- group was created.+ createDate :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Group' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'path', 'group_path' - The path to the group. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'groupName', 'group_groupName' - The friendly name that identifies the group.+--+-- 'groupId', 'group_groupId' - The stable and unique string identifying the group. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'arn', 'group_arn' - The Amazon Resource Name (ARN) specifying the group. For more+-- information about ARNs and how to use them in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'createDate', 'group_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- group was created.+newGroup ::+ -- | 'path'+ Prelude.Text ->+ -- | 'groupName'+ Prelude.Text ->+ -- | 'groupId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'createDate'+ Prelude.UTCTime ->+ Group+newGroup+ pPath_+ pGroupName_+ pGroupId_+ pArn_+ pCreateDate_ =+ Group'+ { path = pPath_,+ groupName = pGroupName_,+ groupId = pGroupId_,+ arn = pArn_,+ createDate = Data._Time Lens.# pCreateDate_+ }++-- | The path to the group. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+group_path :: Lens.Lens' Group Prelude.Text+group_path = Lens.lens (\Group' {path} -> path) (\s@Group' {} a -> s {path = a} :: Group)++-- | The friendly name that identifies the group.+group_groupName :: Lens.Lens' Group Prelude.Text+group_groupName = Lens.lens (\Group' {groupName} -> groupName) (\s@Group' {} a -> s {groupName = a} :: Group)++-- | The stable and unique string identifying the group. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+group_groupId :: Lens.Lens' Group Prelude.Text+group_groupId = Lens.lens (\Group' {groupId} -> groupId) (\s@Group' {} a -> s {groupId = a} :: Group)++-- | The Amazon Resource Name (ARN) specifying the group. For more+-- information about ARNs and how to use them in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+group_arn :: Lens.Lens' Group Prelude.Text+group_arn = Lens.lens (\Group' {arn} -> arn) (\s@Group' {} a -> s {arn = a} :: Group)++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- group was created.+group_createDate :: Lens.Lens' Group Prelude.UTCTime+group_createDate = Lens.lens (\Group' {createDate} -> createDate) (\s@Group' {} a -> s {createDate = a} :: Group) Prelude.. Data._Time++instance Data.FromXML Group where+ parseXML x =+ Group'+ Prelude.<$> (x Data..@ "Path")+ Prelude.<*> (x Data..@ "GroupName")+ Prelude.<*> (x Data..@ "GroupId")+ Prelude.<*> (x Data..@ "Arn")+ Prelude.<*> (x Data..@ "CreateDate")++instance Prelude.Hashable Group where+ hashWithSalt _salt Group' {..} =+ _salt+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` groupId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createDate++instance Prelude.NFData Group where+ rnf Group' {..} =+ Prelude.rnf path+ `Prelude.seq` Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf groupId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createDate
+ gen/Amazonka/IAM/Types/GroupDetail.hs view
@@ -0,0 +1,174 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.GroupDetail+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.GroupDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.AttachedPolicy+import Amazonka.IAM.Types.PolicyDetail+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an IAM group, including all of the group\'s+-- policies.+--+-- This data type is used as a response element in the+-- GetAccountAuthorizationDetails operation.+--+-- /See:/ 'newGroupDetail' smart constructor.+data GroupDetail = GroupDetail'+ { arn :: Prelude.Maybe Prelude.Text,+ -- | A list of the managed policies attached to the group.+ attachedManagedPolicies :: Prelude.Maybe [AttachedPolicy],+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- group was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | The stable and unique string identifying the group. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ groupId :: Prelude.Maybe Prelude.Text,+ -- | The friendly name that identifies the group.+ groupName :: Prelude.Maybe Prelude.Text,+ -- | A list of the inline policies embedded in the group.+ groupPolicyList :: Prelude.Maybe [PolicyDetail],+ -- | The path to the group. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GroupDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'groupDetail_arn' - Undocumented member.+--+-- 'attachedManagedPolicies', 'groupDetail_attachedManagedPolicies' - A list of the managed policies attached to the group.+--+-- 'createDate', 'groupDetail_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- group was created.+--+-- 'groupId', 'groupDetail_groupId' - The stable and unique string identifying the group. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'groupName', 'groupDetail_groupName' - The friendly name that identifies the group.+--+-- 'groupPolicyList', 'groupDetail_groupPolicyList' - A list of the inline policies embedded in the group.+--+-- 'path', 'groupDetail_path' - The path to the group. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+newGroupDetail ::+ GroupDetail+newGroupDetail =+ GroupDetail'+ { arn = Prelude.Nothing,+ attachedManagedPolicies = Prelude.Nothing,+ createDate = Prelude.Nothing,+ groupId = Prelude.Nothing,+ groupName = Prelude.Nothing,+ groupPolicyList = Prelude.Nothing,+ path = Prelude.Nothing+ }++-- | Undocumented member.+groupDetail_arn :: Lens.Lens' GroupDetail (Prelude.Maybe Prelude.Text)+groupDetail_arn = Lens.lens (\GroupDetail' {arn} -> arn) (\s@GroupDetail' {} a -> s {arn = a} :: GroupDetail)++-- | A list of the managed policies attached to the group.+groupDetail_attachedManagedPolicies :: Lens.Lens' GroupDetail (Prelude.Maybe [AttachedPolicy])+groupDetail_attachedManagedPolicies = Lens.lens (\GroupDetail' {attachedManagedPolicies} -> attachedManagedPolicies) (\s@GroupDetail' {} a -> s {attachedManagedPolicies = a} :: GroupDetail) Prelude.. Lens.mapping Lens.coerced++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- group was created.+groupDetail_createDate :: Lens.Lens' GroupDetail (Prelude.Maybe Prelude.UTCTime)+groupDetail_createDate = Lens.lens (\GroupDetail' {createDate} -> createDate) (\s@GroupDetail' {} a -> s {createDate = a} :: GroupDetail) Prelude.. Lens.mapping Data._Time++-- | The stable and unique string identifying the group. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+groupDetail_groupId :: Lens.Lens' GroupDetail (Prelude.Maybe Prelude.Text)+groupDetail_groupId = Lens.lens (\GroupDetail' {groupId} -> groupId) (\s@GroupDetail' {} a -> s {groupId = a} :: GroupDetail)++-- | The friendly name that identifies the group.+groupDetail_groupName :: Lens.Lens' GroupDetail (Prelude.Maybe Prelude.Text)+groupDetail_groupName = Lens.lens (\GroupDetail' {groupName} -> groupName) (\s@GroupDetail' {} a -> s {groupName = a} :: GroupDetail)++-- | A list of the inline policies embedded in the group.+groupDetail_groupPolicyList :: Lens.Lens' GroupDetail (Prelude.Maybe [PolicyDetail])+groupDetail_groupPolicyList = Lens.lens (\GroupDetail' {groupPolicyList} -> groupPolicyList) (\s@GroupDetail' {} a -> s {groupPolicyList = a} :: GroupDetail) Prelude.. Lens.mapping Lens.coerced++-- | The path to the group. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+groupDetail_path :: Lens.Lens' GroupDetail (Prelude.Maybe Prelude.Text)+groupDetail_path = Lens.lens (\GroupDetail' {path} -> path) (\s@GroupDetail' {} a -> s {path = a} :: GroupDetail)++instance Data.FromXML GroupDetail where+ parseXML x =+ GroupDetail'+ Prelude.<$> (x Data..@? "Arn")+ Prelude.<*> ( x+ Data..@? "AttachedManagedPolicies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "CreateDate")+ Prelude.<*> (x Data..@? "GroupId")+ Prelude.<*> (x Data..@? "GroupName")+ Prelude.<*> ( x+ Data..@? "GroupPolicyList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "Path")++instance Prelude.Hashable GroupDetail where+ hashWithSalt _salt GroupDetail' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` attachedManagedPolicies+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` groupId+ `Prelude.hashWithSalt` groupName+ `Prelude.hashWithSalt` groupPolicyList+ `Prelude.hashWithSalt` path++instance Prelude.NFData GroupDetail where+ rnf GroupDetail' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf attachedManagedPolicies+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf groupId+ `Prelude.seq` Prelude.rnf groupName+ `Prelude.seq` Prelude.rnf groupPolicyList+ `Prelude.seq` Prelude.rnf path
+ gen/Amazonka/IAM/Types/InstanceProfile.hs view
@@ -0,0 +1,209 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.InstanceProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.InstanceProfile where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.Role+import Amazonka.IAM.Types.Tag+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an instance profile.+--+-- This data type is used as a response element in the following+-- operations:+--+-- - CreateInstanceProfile+--+-- - GetInstanceProfile+--+-- - ListInstanceProfiles+--+-- - ListInstanceProfilesForRole+--+-- /See:/ 'newInstanceProfile' smart constructor.+data InstanceProfile = InstanceProfile'+ { -- | A list of tags that are attached to the instance profile. For more+ -- information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The path to the instance profile. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Text,+ -- | The name identifying the instance profile.+ instanceProfileName :: Prelude.Text,+ -- | The stable and unique string identifying the instance profile. For more+ -- information about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ instanceProfileId :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) specifying the instance profile. For more+ -- information about ARNs and how to use them in policies, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ arn :: Prelude.Text,+ -- | The date when the instance profile was created.+ createDate :: Data.ISO8601,+ -- | The role associated with the instance profile.+ roles :: [Role]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InstanceProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'instanceProfile_tags' - A list of tags that are attached to the instance profile. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'path', 'instanceProfile_path' - The path to the instance profile. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'instanceProfileName', 'instanceProfile_instanceProfileName' - The name identifying the instance profile.+--+-- 'instanceProfileId', 'instanceProfile_instanceProfileId' - The stable and unique string identifying the instance profile. For more+-- information about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'arn', 'instanceProfile_arn' - The Amazon Resource Name (ARN) specifying the instance profile. For more+-- information about ARNs and how to use them in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'createDate', 'instanceProfile_createDate' - The date when the instance profile was created.+--+-- 'roles', 'instanceProfile_roles' - The role associated with the instance profile.+newInstanceProfile ::+ -- | 'path'+ Prelude.Text ->+ -- | 'instanceProfileName'+ Prelude.Text ->+ -- | 'instanceProfileId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'createDate'+ Prelude.UTCTime ->+ InstanceProfile+newInstanceProfile+ pPath_+ pInstanceProfileName_+ pInstanceProfileId_+ pArn_+ pCreateDate_ =+ InstanceProfile'+ { tags = Prelude.Nothing,+ path = pPath_,+ instanceProfileName = pInstanceProfileName_,+ instanceProfileId = pInstanceProfileId_,+ arn = pArn_,+ createDate = Data._Time Lens.# pCreateDate_,+ roles = Prelude.mempty+ }++-- | A list of tags that are attached to the instance profile. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+instanceProfile_tags :: Lens.Lens' InstanceProfile (Prelude.Maybe [Tag])+instanceProfile_tags = Lens.lens (\InstanceProfile' {tags} -> tags) (\s@InstanceProfile' {} a -> s {tags = a} :: InstanceProfile) Prelude.. Lens.mapping Lens.coerced++-- | The path to the instance profile. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+instanceProfile_path :: Lens.Lens' InstanceProfile Prelude.Text+instanceProfile_path = Lens.lens (\InstanceProfile' {path} -> path) (\s@InstanceProfile' {} a -> s {path = a} :: InstanceProfile)++-- | The name identifying the instance profile.+instanceProfile_instanceProfileName :: Lens.Lens' InstanceProfile Prelude.Text+instanceProfile_instanceProfileName = Lens.lens (\InstanceProfile' {instanceProfileName} -> instanceProfileName) (\s@InstanceProfile' {} a -> s {instanceProfileName = a} :: InstanceProfile)++-- | The stable and unique string identifying the instance profile. For more+-- information about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+instanceProfile_instanceProfileId :: Lens.Lens' InstanceProfile Prelude.Text+instanceProfile_instanceProfileId = Lens.lens (\InstanceProfile' {instanceProfileId} -> instanceProfileId) (\s@InstanceProfile' {} a -> s {instanceProfileId = a} :: InstanceProfile)++-- | The Amazon Resource Name (ARN) specifying the instance profile. For more+-- information about ARNs and how to use them in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+instanceProfile_arn :: Lens.Lens' InstanceProfile Prelude.Text+instanceProfile_arn = Lens.lens (\InstanceProfile' {arn} -> arn) (\s@InstanceProfile' {} a -> s {arn = a} :: InstanceProfile)++-- | The date when the instance profile was created.+instanceProfile_createDate :: Lens.Lens' InstanceProfile Prelude.UTCTime+instanceProfile_createDate = Lens.lens (\InstanceProfile' {createDate} -> createDate) (\s@InstanceProfile' {} a -> s {createDate = a} :: InstanceProfile) Prelude.. Data._Time++-- | The role associated with the instance profile.+instanceProfile_roles :: Lens.Lens' InstanceProfile [Role]+instanceProfile_roles = Lens.lens (\InstanceProfile' {roles} -> roles) (\s@InstanceProfile' {} a -> s {roles = a} :: InstanceProfile) Prelude.. Lens.coerced++instance Data.FromXML InstanceProfile where+ parseXML x =+ InstanceProfile'+ Prelude.<$> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@ "Path")+ Prelude.<*> (x Data..@ "InstanceProfileName")+ Prelude.<*> (x Data..@ "InstanceProfileId")+ Prelude.<*> (x Data..@ "Arn")+ Prelude.<*> (x Data..@ "CreateDate")+ Prelude.<*> ( x+ Data..@? "Roles"+ Core..!@ Prelude.mempty+ Prelude.>>= Data.parseXMLList "member"+ )++instance Prelude.Hashable InstanceProfile where+ hashWithSalt _salt InstanceProfile' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` instanceProfileName+ `Prelude.hashWithSalt` instanceProfileId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` roles++instance Prelude.NFData InstanceProfile where+ rnf InstanceProfile' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf instanceProfileName+ `Prelude.seq` Prelude.rnf instanceProfileId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf roles
+ gen/Amazonka/IAM/Types/JobStatusType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.JobStatusType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.JobStatusType+ ( JobStatusType+ ( ..,+ JobStatusType_COMPLETED,+ JobStatusType_FAILED,+ JobStatusType_IN_PROGRESS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype JobStatusType = JobStatusType'+ { fromJobStatusType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern JobStatusType_COMPLETED :: JobStatusType+pattern JobStatusType_COMPLETED = JobStatusType' "COMPLETED"++pattern JobStatusType_FAILED :: JobStatusType+pattern JobStatusType_FAILED = JobStatusType' "FAILED"++pattern JobStatusType_IN_PROGRESS :: JobStatusType+pattern JobStatusType_IN_PROGRESS = JobStatusType' "IN_PROGRESS"++{-# COMPLETE+ JobStatusType_COMPLETED,+ JobStatusType_FAILED,+ JobStatusType_IN_PROGRESS,+ JobStatusType'+ #-}
+ gen/Amazonka/IAM/Types/ListPoliciesGrantingServiceAccessEntry.hs view
@@ -0,0 +1,131 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ListPoliciesGrantingServiceAccessEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.PolicyGrantingServiceAccess+import qualified Amazonka.Prelude as Prelude++-- | Contains details about the permissions policies that are attached to the+-- specified identity (user, group, or role).+--+-- This data type is used as a response element in the+-- ListPoliciesGrantingServiceAccess operation.+--+-- /See:/ 'newListPoliciesGrantingServiceAccessEntry' smart constructor.+data ListPoliciesGrantingServiceAccessEntry = ListPoliciesGrantingServiceAccessEntry'+ { -- | The @PoliciesGrantingServiceAccess@ object that contains details about+ -- the policy.+ policies :: Prelude.Maybe [PolicyGrantingServiceAccess],+ -- | The namespace of the service that was accessed.+ --+ -- To learn the service namespace of a service, see+ -- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+ -- in the /Service Authorization Reference/. Choose the name of the service+ -- to view details for that service. In the first paragraph, find the+ -- service prefix. For example, @(service prefix: a4b)@. For more+ -- information about service namespaces, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+ -- in the /Amazon Web Services General Reference/.+ serviceNamespace :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPoliciesGrantingServiceAccessEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policies', 'listPoliciesGrantingServiceAccessEntry_policies' - The @PoliciesGrantingServiceAccess@ object that contains details about+-- the policy.+--+-- 'serviceNamespace', 'listPoliciesGrantingServiceAccessEntry_serviceNamespace' - The namespace of the service that was accessed.+--+-- To learn the service namespace of a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /Service Authorization Reference/. Choose the name of the service+-- to view details for that service. In the first paragraph, find the+-- service prefix. For example, @(service prefix: a4b)@. For more+-- information about service namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+-- in the /Amazon Web Services General Reference/.+newListPoliciesGrantingServiceAccessEntry ::+ ListPoliciesGrantingServiceAccessEntry+newListPoliciesGrantingServiceAccessEntry =+ ListPoliciesGrantingServiceAccessEntry'+ { policies =+ Prelude.Nothing,+ serviceNamespace = Prelude.Nothing+ }++-- | The @PoliciesGrantingServiceAccess@ object that contains details about+-- the policy.+listPoliciesGrantingServiceAccessEntry_policies :: Lens.Lens' ListPoliciesGrantingServiceAccessEntry (Prelude.Maybe [PolicyGrantingServiceAccess])+listPoliciesGrantingServiceAccessEntry_policies = Lens.lens (\ListPoliciesGrantingServiceAccessEntry' {policies} -> policies) (\s@ListPoliciesGrantingServiceAccessEntry' {} a -> s {policies = a} :: ListPoliciesGrantingServiceAccessEntry) Prelude.. Lens.mapping Lens.coerced++-- | The namespace of the service that was accessed.+--+-- To learn the service namespace of a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /Service Authorization Reference/. Choose the name of the service+-- to view details for that service. In the first paragraph, find the+-- service prefix. For example, @(service prefix: a4b)@. For more+-- information about service namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services service namespaces>+-- in the /Amazon Web Services General Reference/.+listPoliciesGrantingServiceAccessEntry_serviceNamespace :: Lens.Lens' ListPoliciesGrantingServiceAccessEntry (Prelude.Maybe Prelude.Text)+listPoliciesGrantingServiceAccessEntry_serviceNamespace = Lens.lens (\ListPoliciesGrantingServiceAccessEntry' {serviceNamespace} -> serviceNamespace) (\s@ListPoliciesGrantingServiceAccessEntry' {} a -> s {serviceNamespace = a} :: ListPoliciesGrantingServiceAccessEntry)++instance+ Data.FromXML+ ListPoliciesGrantingServiceAccessEntry+ where+ parseXML x =+ ListPoliciesGrantingServiceAccessEntry'+ Prelude.<$> ( x+ Data..@? "Policies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "ServiceNamespace")++instance+ Prelude.Hashable+ ListPoliciesGrantingServiceAccessEntry+ where+ hashWithSalt+ _salt+ ListPoliciesGrantingServiceAccessEntry' {..} =+ _salt+ `Prelude.hashWithSalt` policies+ `Prelude.hashWithSalt` serviceNamespace++instance+ Prelude.NFData+ ListPoliciesGrantingServiceAccessEntry+ where+ rnf ListPoliciesGrantingServiceAccessEntry' {..} =+ Prelude.rnf policies+ `Prelude.seq` Prelude.rnf serviceNamespace
+ gen/Amazonka/IAM/Types/LoginProfile.hs view
@@ -0,0 +1,106 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.LoginProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.LoginProfile where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains the user name and password create date for a user.+--+-- This data type is used as a response element in the CreateLoginProfile+-- and GetLoginProfile operations.+--+-- /See:/ 'newLoginProfile' smart constructor.+data LoginProfile = LoginProfile'+ { -- | Specifies whether the user is required to set a new password on next+ -- sign-in.+ passwordResetRequired :: Prelude.Maybe Prelude.Bool,+ -- | The name of the user, which can be used for signing in to the Amazon Web+ -- Services Management Console.+ userName :: Prelude.Text,+ -- | The date when the password for the user was created.+ createDate :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LoginProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'passwordResetRequired', 'loginProfile_passwordResetRequired' - Specifies whether the user is required to set a new password on next+-- sign-in.+--+-- 'userName', 'loginProfile_userName' - The name of the user, which can be used for signing in to the Amazon Web+-- Services Management Console.+--+-- 'createDate', 'loginProfile_createDate' - The date when the password for the user was created.+newLoginProfile ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'createDate'+ Prelude.UTCTime ->+ LoginProfile+newLoginProfile pUserName_ pCreateDate_ =+ LoginProfile'+ { passwordResetRequired =+ Prelude.Nothing,+ userName = pUserName_,+ createDate = Data._Time Lens.# pCreateDate_+ }++-- | Specifies whether the user is required to set a new password on next+-- sign-in.+loginProfile_passwordResetRequired :: Lens.Lens' LoginProfile (Prelude.Maybe Prelude.Bool)+loginProfile_passwordResetRequired = Lens.lens (\LoginProfile' {passwordResetRequired} -> passwordResetRequired) (\s@LoginProfile' {} a -> s {passwordResetRequired = a} :: LoginProfile)++-- | The name of the user, which can be used for signing in to the Amazon Web+-- Services Management Console.+loginProfile_userName :: Lens.Lens' LoginProfile Prelude.Text+loginProfile_userName = Lens.lens (\LoginProfile' {userName} -> userName) (\s@LoginProfile' {} a -> s {userName = a} :: LoginProfile)++-- | The date when the password for the user was created.+loginProfile_createDate :: Lens.Lens' LoginProfile Prelude.UTCTime+loginProfile_createDate = Lens.lens (\LoginProfile' {createDate} -> createDate) (\s@LoginProfile' {} a -> s {createDate = a} :: LoginProfile) Prelude.. Data._Time++instance Data.FromXML LoginProfile where+ parseXML x =+ LoginProfile'+ Prelude.<$> (x Data..@? "PasswordResetRequired")+ Prelude.<*> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "CreateDate")++instance Prelude.Hashable LoginProfile where+ hashWithSalt _salt LoginProfile' {..} =+ _salt+ `Prelude.hashWithSalt` passwordResetRequired+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` createDate++instance Prelude.NFData LoginProfile where+ rnf LoginProfile' {..} =+ Prelude.rnf passwordResetRequired+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf createDate
+ gen/Amazonka/IAM/Types/MFADevice.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.MFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.MFADevice where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an MFA device.+--+-- This data type is used as a response element in the ListMFADevices+-- operation.+--+-- /See:/ 'newMFADevice' smart constructor.+data MFADevice = MFADevice'+ { -- | The user with whom the MFA device is associated.+ userName :: Prelude.Text,+ -- | The serial number that uniquely identifies the MFA device. For virtual+ -- MFA devices, the serial number is the device ARN.+ serialNumber :: Prelude.Text,+ -- | The date when the MFA device was enabled for the user.+ enableDate :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'mfaDevice_userName' - The user with whom the MFA device is associated.+--+-- 'serialNumber', 'mfaDevice_serialNumber' - The serial number that uniquely identifies the MFA device. For virtual+-- MFA devices, the serial number is the device ARN.+--+-- 'enableDate', 'mfaDevice_enableDate' - The date when the MFA device was enabled for the user.+newMFADevice ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'serialNumber'+ Prelude.Text ->+ -- | 'enableDate'+ Prelude.UTCTime ->+ MFADevice+newMFADevice pUserName_ pSerialNumber_ pEnableDate_ =+ MFADevice'+ { userName = pUserName_,+ serialNumber = pSerialNumber_,+ enableDate = Data._Time Lens.# pEnableDate_+ }++-- | The user with whom the MFA device is associated.+mfaDevice_userName :: Lens.Lens' MFADevice Prelude.Text+mfaDevice_userName = Lens.lens (\MFADevice' {userName} -> userName) (\s@MFADevice' {} a -> s {userName = a} :: MFADevice)++-- | The serial number that uniquely identifies the MFA device. For virtual+-- MFA devices, the serial number is the device ARN.+mfaDevice_serialNumber :: Lens.Lens' MFADevice Prelude.Text+mfaDevice_serialNumber = Lens.lens (\MFADevice' {serialNumber} -> serialNumber) (\s@MFADevice' {} a -> s {serialNumber = a} :: MFADevice)++-- | The date when the MFA device was enabled for the user.+mfaDevice_enableDate :: Lens.Lens' MFADevice Prelude.UTCTime+mfaDevice_enableDate = Lens.lens (\MFADevice' {enableDate} -> enableDate) (\s@MFADevice' {} a -> s {enableDate = a} :: MFADevice) Prelude.. Data._Time++instance Data.FromXML MFADevice where+ parseXML x =+ MFADevice'+ Prelude.<$> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "SerialNumber")+ Prelude.<*> (x Data..@ "EnableDate")++instance Prelude.Hashable MFADevice where+ hashWithSalt _salt MFADevice' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` serialNumber+ `Prelude.hashWithSalt` enableDate++instance Prelude.NFData MFADevice where+ rnf MFADevice' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf serialNumber+ `Prelude.seq` Prelude.rnf enableDate
+ gen/Amazonka/IAM/Types/ManagedPolicyDetail.hs view
@@ -0,0 +1,300 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ManagedPolicyDetail+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ManagedPolicyDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.PolicyVersion+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a managed policy, including the policy\'s+-- ARN, versions, and the number of principal entities (users, groups, and+-- roles) that the policy is attached to.+--+-- This data type is used as a response element in the+-- GetAccountAuthorizationDetails operation.+--+-- For more information about managed policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- /See:/ 'newManagedPolicyDetail' smart constructor.+data ManagedPolicyDetail = ManagedPolicyDetail'+ { arn :: Prelude.Maybe Prelude.Text,+ -- | The number of principal entities (users, groups, and roles) that the+ -- policy is attached to.+ attachmentCount :: Prelude.Maybe Prelude.Int,+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- policy was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | The identifier for the version of the policy that is set as the default+ -- (operative) version.+ --+ -- For more information about policy versions, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+ -- in the /IAM User Guide/.+ defaultVersionId :: Prelude.Maybe Prelude.Text,+ -- | A friendly description of the policy.+ description :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the policy can be attached to an IAM user, group, or+ -- role.+ isAttachable :: Prelude.Maybe Prelude.Bool,+ -- | The path to the policy.+ --+ -- For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Maybe Prelude.Text,+ -- | The number of entities (users and roles) for which the policy is used as+ -- the permissions boundary.+ --+ -- For more information about permissions boundaries, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+ -- in the /IAM User Guide/.+ permissionsBoundaryUsageCount :: Prelude.Maybe Prelude.Int,+ -- | The stable and unique string identifying the policy.+ --+ -- For more information about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ policyId :: Prelude.Maybe Prelude.Text,+ -- | The friendly name (not ARN) identifying the policy.+ policyName :: Prelude.Maybe Prelude.Text,+ -- | A list containing information about the versions of the policy.+ policyVersionList :: Prelude.Maybe [PolicyVersion],+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- policy was last updated.+ --+ -- When a policy has only one version, this field contains the date and+ -- time when the policy was created. When a policy has more than one+ -- version, this field contains the date and time when the most recent+ -- policy version was created.+ updateDate :: Prelude.Maybe Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ManagedPolicyDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'managedPolicyDetail_arn' - Undocumented member.+--+-- 'attachmentCount', 'managedPolicyDetail_attachmentCount' - The number of principal entities (users, groups, and roles) that the+-- policy is attached to.+--+-- 'createDate', 'managedPolicyDetail_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy was created.+--+-- 'defaultVersionId', 'managedPolicyDetail_defaultVersionId' - The identifier for the version of the policy that is set as the default+-- (operative) version.+--+-- For more information about policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+--+-- 'description', 'managedPolicyDetail_description' - A friendly description of the policy.+--+-- 'isAttachable', 'managedPolicyDetail_isAttachable' - Specifies whether the policy can be attached to an IAM user, group, or+-- role.+--+-- 'path', 'managedPolicyDetail_path' - The path to the policy.+--+-- For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'permissionsBoundaryUsageCount', 'managedPolicyDetail_permissionsBoundaryUsageCount' - The number of entities (users and roles) for which the policy is used as+-- the permissions boundary.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+--+-- 'policyId', 'managedPolicyDetail_policyId' - The stable and unique string identifying the policy.+--+-- For more information about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'policyName', 'managedPolicyDetail_policyName' - The friendly name (not ARN) identifying the policy.+--+-- 'policyVersionList', 'managedPolicyDetail_policyVersionList' - A list containing information about the versions of the policy.+--+-- 'updateDate', 'managedPolicyDetail_updateDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy was last updated.+--+-- When a policy has only one version, this field contains the date and+-- time when the policy was created. When a policy has more than one+-- version, this field contains the date and time when the most recent+-- policy version was created.+newManagedPolicyDetail ::+ ManagedPolicyDetail+newManagedPolicyDetail =+ ManagedPolicyDetail'+ { arn = Prelude.Nothing,+ attachmentCount = Prelude.Nothing,+ createDate = Prelude.Nothing,+ defaultVersionId = Prelude.Nothing,+ description = Prelude.Nothing,+ isAttachable = Prelude.Nothing,+ path = Prelude.Nothing,+ permissionsBoundaryUsageCount = Prelude.Nothing,+ policyId = Prelude.Nothing,+ policyName = Prelude.Nothing,+ policyVersionList = Prelude.Nothing,+ updateDate = Prelude.Nothing+ }++-- | Undocumented member.+managedPolicyDetail_arn :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Text)+managedPolicyDetail_arn = Lens.lens (\ManagedPolicyDetail' {arn} -> arn) (\s@ManagedPolicyDetail' {} a -> s {arn = a} :: ManagedPolicyDetail)++-- | The number of principal entities (users, groups, and roles) that the+-- policy is attached to.+managedPolicyDetail_attachmentCount :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Int)+managedPolicyDetail_attachmentCount = Lens.lens (\ManagedPolicyDetail' {attachmentCount} -> attachmentCount) (\s@ManagedPolicyDetail' {} a -> s {attachmentCount = a} :: ManagedPolicyDetail)++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy was created.+managedPolicyDetail_createDate :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.UTCTime)+managedPolicyDetail_createDate = Lens.lens (\ManagedPolicyDetail' {createDate} -> createDate) (\s@ManagedPolicyDetail' {} a -> s {createDate = a} :: ManagedPolicyDetail) Prelude.. Lens.mapping Data._Time++-- | The identifier for the version of the policy that is set as the default+-- (operative) version.+--+-- For more information about policy versions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for managed policies>+-- in the /IAM User Guide/.+managedPolicyDetail_defaultVersionId :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Text)+managedPolicyDetail_defaultVersionId = Lens.lens (\ManagedPolicyDetail' {defaultVersionId} -> defaultVersionId) (\s@ManagedPolicyDetail' {} a -> s {defaultVersionId = a} :: ManagedPolicyDetail)++-- | A friendly description of the policy.+managedPolicyDetail_description :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Text)+managedPolicyDetail_description = Lens.lens (\ManagedPolicyDetail' {description} -> description) (\s@ManagedPolicyDetail' {} a -> s {description = a} :: ManagedPolicyDetail)++-- | Specifies whether the policy can be attached to an IAM user, group, or+-- role.+managedPolicyDetail_isAttachable :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Bool)+managedPolicyDetail_isAttachable = Lens.lens (\ManagedPolicyDetail' {isAttachable} -> isAttachable) (\s@ManagedPolicyDetail' {} a -> s {isAttachable = a} :: ManagedPolicyDetail)++-- | The path to the policy.+--+-- For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+managedPolicyDetail_path :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Text)+managedPolicyDetail_path = Lens.lens (\ManagedPolicyDetail' {path} -> path) (\s@ManagedPolicyDetail' {} a -> s {path = a} :: ManagedPolicyDetail)++-- | The number of entities (users and roles) for which the policy is used as+-- the permissions boundary.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+managedPolicyDetail_permissionsBoundaryUsageCount :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Int)+managedPolicyDetail_permissionsBoundaryUsageCount = Lens.lens (\ManagedPolicyDetail' {permissionsBoundaryUsageCount} -> permissionsBoundaryUsageCount) (\s@ManagedPolicyDetail' {} a -> s {permissionsBoundaryUsageCount = a} :: ManagedPolicyDetail)++-- | The stable and unique string identifying the policy.+--+-- For more information about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+managedPolicyDetail_policyId :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Text)+managedPolicyDetail_policyId = Lens.lens (\ManagedPolicyDetail' {policyId} -> policyId) (\s@ManagedPolicyDetail' {} a -> s {policyId = a} :: ManagedPolicyDetail)++-- | The friendly name (not ARN) identifying the policy.+managedPolicyDetail_policyName :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.Text)+managedPolicyDetail_policyName = Lens.lens (\ManagedPolicyDetail' {policyName} -> policyName) (\s@ManagedPolicyDetail' {} a -> s {policyName = a} :: ManagedPolicyDetail)++-- | A list containing information about the versions of the policy.+managedPolicyDetail_policyVersionList :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe [PolicyVersion])+managedPolicyDetail_policyVersionList = Lens.lens (\ManagedPolicyDetail' {policyVersionList} -> policyVersionList) (\s@ManagedPolicyDetail' {} a -> s {policyVersionList = a} :: ManagedPolicyDetail) Prelude.. Lens.mapping Lens.coerced++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy was last updated.+--+-- When a policy has only one version, this field contains the date and+-- time when the policy was created. When a policy has more than one+-- version, this field contains the date and time when the most recent+-- policy version was created.+managedPolicyDetail_updateDate :: Lens.Lens' ManagedPolicyDetail (Prelude.Maybe Prelude.UTCTime)+managedPolicyDetail_updateDate = Lens.lens (\ManagedPolicyDetail' {updateDate} -> updateDate) (\s@ManagedPolicyDetail' {} a -> s {updateDate = a} :: ManagedPolicyDetail) Prelude.. Lens.mapping Data._Time++instance Data.FromXML ManagedPolicyDetail where+ parseXML x =+ ManagedPolicyDetail'+ Prelude.<$> (x Data..@? "Arn")+ Prelude.<*> (x Data..@? "AttachmentCount")+ Prelude.<*> (x Data..@? "CreateDate")+ Prelude.<*> (x Data..@? "DefaultVersionId")+ Prelude.<*> (x Data..@? "Description")+ Prelude.<*> (x Data..@? "IsAttachable")+ Prelude.<*> (x Data..@? "Path")+ Prelude.<*> (x Data..@? "PermissionsBoundaryUsageCount")+ Prelude.<*> (x Data..@? "PolicyId")+ Prelude.<*> (x Data..@? "PolicyName")+ Prelude.<*> ( x+ Data..@? "PolicyVersionList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "UpdateDate")++instance Prelude.Hashable ManagedPolicyDetail where+ hashWithSalt _salt ManagedPolicyDetail' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` attachmentCount+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` defaultVersionId+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` isAttachable+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` permissionsBoundaryUsageCount+ `Prelude.hashWithSalt` policyId+ `Prelude.hashWithSalt` policyName+ `Prelude.hashWithSalt` policyVersionList+ `Prelude.hashWithSalt` updateDate++instance Prelude.NFData ManagedPolicyDetail where+ rnf ManagedPolicyDetail' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf attachmentCount+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf defaultVersionId+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf isAttachable+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf permissionsBoundaryUsageCount+ `Prelude.seq` Prelude.rnf policyId+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyVersionList+ `Prelude.seq` Prelude.rnf updateDate
+ gen/Amazonka/IAM/Types/OpenIDConnectProviderListEntry.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.OpenIDConnectProviderListEntry+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.OpenIDConnectProviderListEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains the Amazon Resource Name (ARN) for an IAM OpenID Connect+-- provider.+--+-- /See:/ 'newOpenIDConnectProviderListEntry' smart constructor.+data OpenIDConnectProviderListEntry = OpenIDConnectProviderListEntry'+ { arn :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OpenIDConnectProviderListEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'openIDConnectProviderListEntry_arn' - Undocumented member.+newOpenIDConnectProviderListEntry ::+ OpenIDConnectProviderListEntry+newOpenIDConnectProviderListEntry =+ OpenIDConnectProviderListEntry'+ { arn =+ Prelude.Nothing+ }++-- | Undocumented member.+openIDConnectProviderListEntry_arn :: Lens.Lens' OpenIDConnectProviderListEntry (Prelude.Maybe Prelude.Text)+openIDConnectProviderListEntry_arn = Lens.lens (\OpenIDConnectProviderListEntry' {arn} -> arn) (\s@OpenIDConnectProviderListEntry' {} a -> s {arn = a} :: OpenIDConnectProviderListEntry)++instance Data.FromXML OpenIDConnectProviderListEntry where+ parseXML x =+ OpenIDConnectProviderListEntry'+ Prelude.<$> (x Data..@? "Arn")++instance+ Prelude.Hashable+ OpenIDConnectProviderListEntry+ where+ hashWithSalt+ _salt+ OpenIDConnectProviderListEntry' {..} =+ _salt `Prelude.hashWithSalt` arn++instance+ Prelude.NFData+ OpenIDConnectProviderListEntry+ where+ rnf OpenIDConnectProviderListEntry' {..} =+ Prelude.rnf arn
+ gen/Amazonka/IAM/Types/OrganizationsDecisionDetail.hs view
@@ -0,0 +1,75 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.OrganizationsDecisionDetail+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.OrganizationsDecisionDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about the effect that Organizations has on a policy+-- simulation.+--+-- /See:/ 'newOrganizationsDecisionDetail' smart constructor.+data OrganizationsDecisionDetail = OrganizationsDecisionDetail'+ { -- | Specifies whether the simulated operation is allowed by the+ -- Organizations service control policies that impact the simulated user\'s+ -- account.+ allowedByOrganizations :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OrganizationsDecisionDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowedByOrganizations', 'organizationsDecisionDetail_allowedByOrganizations' - Specifies whether the simulated operation is allowed by the+-- Organizations service control policies that impact the simulated user\'s+-- account.+newOrganizationsDecisionDetail ::+ OrganizationsDecisionDetail+newOrganizationsDecisionDetail =+ OrganizationsDecisionDetail'+ { allowedByOrganizations =+ Prelude.Nothing+ }++-- | Specifies whether the simulated operation is allowed by the+-- Organizations service control policies that impact the simulated user\'s+-- account.+organizationsDecisionDetail_allowedByOrganizations :: Lens.Lens' OrganizationsDecisionDetail (Prelude.Maybe Prelude.Bool)+organizationsDecisionDetail_allowedByOrganizations = Lens.lens (\OrganizationsDecisionDetail' {allowedByOrganizations} -> allowedByOrganizations) (\s@OrganizationsDecisionDetail' {} a -> s {allowedByOrganizations = a} :: OrganizationsDecisionDetail)++instance Data.FromXML OrganizationsDecisionDetail where+ parseXML x =+ OrganizationsDecisionDetail'+ Prelude.<$> (x Data..@? "AllowedByOrganizations")++instance Prelude.Hashable OrganizationsDecisionDetail where+ hashWithSalt _salt OrganizationsDecisionDetail' {..} =+ _salt `Prelude.hashWithSalt` allowedByOrganizations++instance Prelude.NFData OrganizationsDecisionDetail where+ rnf OrganizationsDecisionDetail' {..} =+ Prelude.rnf allowedByOrganizations
+ gen/Amazonka/IAM/Types/PasswordPolicy.hs view
@@ -0,0 +1,234 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PasswordPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PasswordPolicy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about the account password policy.+--+-- This data type is used as a response element in the+-- GetAccountPasswordPolicy operation.+--+-- /See:/ 'newPasswordPolicy' smart constructor.+data PasswordPolicy = PasswordPolicy'+ { -- | Specifies whether IAM users are allowed to change their own password.+ -- Gives IAM users permissions to @iam:ChangePassword@ for only their user+ -- and to the @iam:GetAccountPasswordPolicy@ action. This option does not+ -- attach a permissions policy to each user, rather the permissions are+ -- applied at the account-level for all users by IAM.+ allowUsersToChangePassword :: Prelude.Maybe Prelude.Bool,+ -- | Indicates whether passwords in the account expire. Returns true if+ -- @MaxPasswordAge@ contains a value greater than 0. Returns false if+ -- MaxPasswordAge is 0 or not present.+ expirePasswords :: Prelude.Maybe Prelude.Bool,+ -- | Specifies whether IAM users are prevented from setting a new password+ -- via the Amazon Web Services Management Console after their password has+ -- expired. The IAM user cannot access the console until an administrator+ -- resets the password. IAM users with @iam:ChangePassword@ permission and+ -- active access keys can reset their own expired console password using+ -- the CLI or API.+ hardExpiry :: Prelude.Maybe Prelude.Bool,+ -- | The number of days that an IAM user password is valid.+ maxPasswordAge :: Prelude.Maybe Prelude.Natural,+ -- | Minimum length to require for IAM user passwords.+ minimumPasswordLength :: Prelude.Maybe Prelude.Natural,+ -- | Specifies the number of previous passwords that IAM users are prevented+ -- from reusing.+ passwordReusePrevention :: Prelude.Maybe Prelude.Natural,+ -- | Specifies whether IAM user passwords must contain at least one lowercase+ -- character (a to z).+ requireLowercaseCharacters :: Prelude.Maybe Prelude.Bool,+ -- | Specifies whether IAM user passwords must contain at least one numeric+ -- character (0 to 9).+ requireNumbers :: Prelude.Maybe Prelude.Bool,+ -- | Specifies whether IAM user passwords must contain at least one of the+ -- following symbols:+ --+ -- ! \@ # $ % ^ & * ( ) _ + - = [ ] { } | \'+ requireSymbols :: Prelude.Maybe Prelude.Bool,+ -- | Specifies whether IAM user passwords must contain at least one uppercase+ -- character (A to Z).+ requireUppercaseCharacters :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PasswordPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowUsersToChangePassword', 'passwordPolicy_allowUsersToChangePassword' - Specifies whether IAM users are allowed to change their own password.+-- Gives IAM users permissions to @iam:ChangePassword@ for only their user+-- and to the @iam:GetAccountPasswordPolicy@ action. This option does not+-- attach a permissions policy to each user, rather the permissions are+-- applied at the account-level for all users by IAM.+--+-- 'expirePasswords', 'passwordPolicy_expirePasswords' - Indicates whether passwords in the account expire. Returns true if+-- @MaxPasswordAge@ contains a value greater than 0. Returns false if+-- MaxPasswordAge is 0 or not present.+--+-- 'hardExpiry', 'passwordPolicy_hardExpiry' - Specifies whether IAM users are prevented from setting a new password+-- via the Amazon Web Services Management Console after their password has+-- expired. The IAM user cannot access the console until an administrator+-- resets the password. IAM users with @iam:ChangePassword@ permission and+-- active access keys can reset their own expired console password using+-- the CLI or API.+--+-- 'maxPasswordAge', 'passwordPolicy_maxPasswordAge' - The number of days that an IAM user password is valid.+--+-- 'minimumPasswordLength', 'passwordPolicy_minimumPasswordLength' - Minimum length to require for IAM user passwords.+--+-- 'passwordReusePrevention', 'passwordPolicy_passwordReusePrevention' - Specifies the number of previous passwords that IAM users are prevented+-- from reusing.+--+-- 'requireLowercaseCharacters', 'passwordPolicy_requireLowercaseCharacters' - Specifies whether IAM user passwords must contain at least one lowercase+-- character (a to z).+--+-- 'requireNumbers', 'passwordPolicy_requireNumbers' - Specifies whether IAM user passwords must contain at least one numeric+-- character (0 to 9).+--+-- 'requireSymbols', 'passwordPolicy_requireSymbols' - Specifies whether IAM user passwords must contain at least one of the+-- following symbols:+--+-- ! \@ # $ % ^ & * ( ) _ + - = [ ] { } | \'+--+-- 'requireUppercaseCharacters', 'passwordPolicy_requireUppercaseCharacters' - Specifies whether IAM user passwords must contain at least one uppercase+-- character (A to Z).+newPasswordPolicy ::+ PasswordPolicy+newPasswordPolicy =+ PasswordPolicy'+ { allowUsersToChangePassword =+ Prelude.Nothing,+ expirePasswords = Prelude.Nothing,+ hardExpiry = Prelude.Nothing,+ maxPasswordAge = Prelude.Nothing,+ minimumPasswordLength = Prelude.Nothing,+ passwordReusePrevention = Prelude.Nothing,+ requireLowercaseCharacters = Prelude.Nothing,+ requireNumbers = Prelude.Nothing,+ requireSymbols = Prelude.Nothing,+ requireUppercaseCharacters = Prelude.Nothing+ }++-- | Specifies whether IAM users are allowed to change their own password.+-- Gives IAM users permissions to @iam:ChangePassword@ for only their user+-- and to the @iam:GetAccountPasswordPolicy@ action. This option does not+-- attach a permissions policy to each user, rather the permissions are+-- applied at the account-level for all users by IAM.+passwordPolicy_allowUsersToChangePassword :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Bool)+passwordPolicy_allowUsersToChangePassword = Lens.lens (\PasswordPolicy' {allowUsersToChangePassword} -> allowUsersToChangePassword) (\s@PasswordPolicy' {} a -> s {allowUsersToChangePassword = a} :: PasswordPolicy)++-- | Indicates whether passwords in the account expire. Returns true if+-- @MaxPasswordAge@ contains a value greater than 0. Returns false if+-- MaxPasswordAge is 0 or not present.+passwordPolicy_expirePasswords :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Bool)+passwordPolicy_expirePasswords = Lens.lens (\PasswordPolicy' {expirePasswords} -> expirePasswords) (\s@PasswordPolicy' {} a -> s {expirePasswords = a} :: PasswordPolicy)++-- | Specifies whether IAM users are prevented from setting a new password+-- via the Amazon Web Services Management Console after their password has+-- expired. The IAM user cannot access the console until an administrator+-- resets the password. IAM users with @iam:ChangePassword@ permission and+-- active access keys can reset their own expired console password using+-- the CLI or API.+passwordPolicy_hardExpiry :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Bool)+passwordPolicy_hardExpiry = Lens.lens (\PasswordPolicy' {hardExpiry} -> hardExpiry) (\s@PasswordPolicy' {} a -> s {hardExpiry = a} :: PasswordPolicy)++-- | The number of days that an IAM user password is valid.+passwordPolicy_maxPasswordAge :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Natural)+passwordPolicy_maxPasswordAge = Lens.lens (\PasswordPolicy' {maxPasswordAge} -> maxPasswordAge) (\s@PasswordPolicy' {} a -> s {maxPasswordAge = a} :: PasswordPolicy)++-- | Minimum length to require for IAM user passwords.+passwordPolicy_minimumPasswordLength :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Natural)+passwordPolicy_minimumPasswordLength = Lens.lens (\PasswordPolicy' {minimumPasswordLength} -> minimumPasswordLength) (\s@PasswordPolicy' {} a -> s {minimumPasswordLength = a} :: PasswordPolicy)++-- | Specifies the number of previous passwords that IAM users are prevented+-- from reusing.+passwordPolicy_passwordReusePrevention :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Natural)+passwordPolicy_passwordReusePrevention = Lens.lens (\PasswordPolicy' {passwordReusePrevention} -> passwordReusePrevention) (\s@PasswordPolicy' {} a -> s {passwordReusePrevention = a} :: PasswordPolicy)++-- | Specifies whether IAM user passwords must contain at least one lowercase+-- character (a to z).+passwordPolicy_requireLowercaseCharacters :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Bool)+passwordPolicy_requireLowercaseCharacters = Lens.lens (\PasswordPolicy' {requireLowercaseCharacters} -> requireLowercaseCharacters) (\s@PasswordPolicy' {} a -> s {requireLowercaseCharacters = a} :: PasswordPolicy)++-- | Specifies whether IAM user passwords must contain at least one numeric+-- character (0 to 9).+passwordPolicy_requireNumbers :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Bool)+passwordPolicy_requireNumbers = Lens.lens (\PasswordPolicy' {requireNumbers} -> requireNumbers) (\s@PasswordPolicy' {} a -> s {requireNumbers = a} :: PasswordPolicy)++-- | Specifies whether IAM user passwords must contain at least one of the+-- following symbols:+--+-- ! \@ # $ % ^ & * ( ) _ + - = [ ] { } | \'+passwordPolicy_requireSymbols :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Bool)+passwordPolicy_requireSymbols = Lens.lens (\PasswordPolicy' {requireSymbols} -> requireSymbols) (\s@PasswordPolicy' {} a -> s {requireSymbols = a} :: PasswordPolicy)++-- | Specifies whether IAM user passwords must contain at least one uppercase+-- character (A to Z).+passwordPolicy_requireUppercaseCharacters :: Lens.Lens' PasswordPolicy (Prelude.Maybe Prelude.Bool)+passwordPolicy_requireUppercaseCharacters = Lens.lens (\PasswordPolicy' {requireUppercaseCharacters} -> requireUppercaseCharacters) (\s@PasswordPolicy' {} a -> s {requireUppercaseCharacters = a} :: PasswordPolicy)++instance Data.FromXML PasswordPolicy where+ parseXML x =+ PasswordPolicy'+ Prelude.<$> (x Data..@? "AllowUsersToChangePassword")+ Prelude.<*> (x Data..@? "ExpirePasswords")+ Prelude.<*> (x Data..@? "HardExpiry")+ Prelude.<*> (x Data..@? "MaxPasswordAge")+ Prelude.<*> (x Data..@? "MinimumPasswordLength")+ Prelude.<*> (x Data..@? "PasswordReusePrevention")+ Prelude.<*> (x Data..@? "RequireLowercaseCharacters")+ Prelude.<*> (x Data..@? "RequireNumbers")+ Prelude.<*> (x Data..@? "RequireSymbols")+ Prelude.<*> (x Data..@? "RequireUppercaseCharacters")++instance Prelude.Hashable PasswordPolicy where+ hashWithSalt _salt PasswordPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` allowUsersToChangePassword+ `Prelude.hashWithSalt` expirePasswords+ `Prelude.hashWithSalt` hardExpiry+ `Prelude.hashWithSalt` maxPasswordAge+ `Prelude.hashWithSalt` minimumPasswordLength+ `Prelude.hashWithSalt` passwordReusePrevention+ `Prelude.hashWithSalt` requireLowercaseCharacters+ `Prelude.hashWithSalt` requireNumbers+ `Prelude.hashWithSalt` requireSymbols+ `Prelude.hashWithSalt` requireUppercaseCharacters++instance Prelude.NFData PasswordPolicy where+ rnf PasswordPolicy' {..} =+ Prelude.rnf allowUsersToChangePassword+ `Prelude.seq` Prelude.rnf expirePasswords+ `Prelude.seq` Prelude.rnf hardExpiry+ `Prelude.seq` Prelude.rnf maxPasswordAge+ `Prelude.seq` Prelude.rnf minimumPasswordLength+ `Prelude.seq` Prelude.rnf passwordReusePrevention+ `Prelude.seq` Prelude.rnf requireLowercaseCharacters+ `Prelude.seq` Prelude.rnf requireNumbers+ `Prelude.seq` Prelude.rnf requireSymbols+ `Prelude.seq` Prelude.rnf requireUppercaseCharacters
+ gen/Amazonka/IAM/Types/PermissionsBoundaryAttachmentType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PermissionsBoundaryAttachmentType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PermissionsBoundaryAttachmentType+ ( PermissionsBoundaryAttachmentType+ ( ..,+ PermissionsBoundaryAttachmentType_PermissionsBoundaryPolicy+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PermissionsBoundaryAttachmentType = PermissionsBoundaryAttachmentType'+ { fromPermissionsBoundaryAttachmentType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PermissionsBoundaryAttachmentType_PermissionsBoundaryPolicy :: PermissionsBoundaryAttachmentType+pattern PermissionsBoundaryAttachmentType_PermissionsBoundaryPolicy = PermissionsBoundaryAttachmentType' "PermissionsBoundaryPolicy"++{-# COMPLETE+ PermissionsBoundaryAttachmentType_PermissionsBoundaryPolicy,+ PermissionsBoundaryAttachmentType'+ #-}
+ gen/Amazonka/IAM/Types/PermissionsBoundaryDecisionDetail.hs view
@@ -0,0 +1,105 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about the effect that a permissions boundary has on+-- a policy simulation when the boundary is applied to an IAM entity.+--+-- /See:/ 'newPermissionsBoundaryDecisionDetail' smart constructor.+data PermissionsBoundaryDecisionDetail = PermissionsBoundaryDecisionDetail'+ { -- | Specifies whether an action is allowed by a permissions boundary that is+ -- applied to an IAM entity (user or role). A value of @true@ means that+ -- the permissions boundary does not deny the action. This means that the+ -- policy includes an @Allow@ statement that matches the request. In this+ -- case, if an identity-based policy also allows the action, the request is+ -- allowed. A value of @false@ means that either the requested action is+ -- not allowed (implicitly denied) or that the action is explicitly denied+ -- by the permissions boundary. In both of these cases, the action is not+ -- allowed, regardless of the identity-based policy.+ allowedByPermissionsBoundary :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PermissionsBoundaryDecisionDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowedByPermissionsBoundary', 'permissionsBoundaryDecisionDetail_allowedByPermissionsBoundary' - Specifies whether an action is allowed by a permissions boundary that is+-- applied to an IAM entity (user or role). A value of @true@ means that+-- the permissions boundary does not deny the action. This means that the+-- policy includes an @Allow@ statement that matches the request. In this+-- case, if an identity-based policy also allows the action, the request is+-- allowed. A value of @false@ means that either the requested action is+-- not allowed (implicitly denied) or that the action is explicitly denied+-- by the permissions boundary. In both of these cases, the action is not+-- allowed, regardless of the identity-based policy.+newPermissionsBoundaryDecisionDetail ::+ PermissionsBoundaryDecisionDetail+newPermissionsBoundaryDecisionDetail =+ PermissionsBoundaryDecisionDetail'+ { allowedByPermissionsBoundary =+ Prelude.Nothing+ }++-- | Specifies whether an action is allowed by a permissions boundary that is+-- applied to an IAM entity (user or role). A value of @true@ means that+-- the permissions boundary does not deny the action. This means that the+-- policy includes an @Allow@ statement that matches the request. In this+-- case, if an identity-based policy also allows the action, the request is+-- allowed. A value of @false@ means that either the requested action is+-- not allowed (implicitly denied) or that the action is explicitly denied+-- by the permissions boundary. In both of these cases, the action is not+-- allowed, regardless of the identity-based policy.+permissionsBoundaryDecisionDetail_allowedByPermissionsBoundary :: Lens.Lens' PermissionsBoundaryDecisionDetail (Prelude.Maybe Prelude.Bool)+permissionsBoundaryDecisionDetail_allowedByPermissionsBoundary = Lens.lens (\PermissionsBoundaryDecisionDetail' {allowedByPermissionsBoundary} -> allowedByPermissionsBoundary) (\s@PermissionsBoundaryDecisionDetail' {} a -> s {allowedByPermissionsBoundary = a} :: PermissionsBoundaryDecisionDetail)++instance+ Data.FromXML+ PermissionsBoundaryDecisionDetail+ where+ parseXML x =+ PermissionsBoundaryDecisionDetail'+ Prelude.<$> (x Data..@? "AllowedByPermissionsBoundary")++instance+ Prelude.Hashable+ PermissionsBoundaryDecisionDetail+ where+ hashWithSalt+ _salt+ PermissionsBoundaryDecisionDetail' {..} =+ _salt+ `Prelude.hashWithSalt` allowedByPermissionsBoundary++instance+ Prelude.NFData+ PermissionsBoundaryDecisionDetail+ where+ rnf PermissionsBoundaryDecisionDetail' {..} =+ Prelude.rnf allowedByPermissionsBoundary
+ gen/Amazonka/IAM/Types/Policy.hs view
@@ -0,0 +1,304 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.Policy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.Policy where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.Tag+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a managed policy.+--+-- This data type is used as a response element in the CreatePolicy,+-- GetPolicy, and ListPolicies operations.+--+-- For more information about managed policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- /See:/ 'newPolicy' smart constructor.+data Policy = Policy'+ { arn :: Prelude.Maybe Prelude.Text,+ -- | The number of entities (users, groups, and roles) that the policy is+ -- attached to.+ attachmentCount :: Prelude.Maybe Prelude.Int,+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- policy was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | The identifier for the version of the policy that is set as the default+ -- version.+ defaultVersionId :: Prelude.Maybe Prelude.Text,+ -- | A friendly description of the policy.+ --+ -- This element is included in the response to the GetPolicy operation. It+ -- is not included in the response to the ListPolicies operation.+ description :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the policy can be attached to an IAM user, group, or+ -- role.+ isAttachable :: Prelude.Maybe Prelude.Bool,+ -- | The path to the policy.+ --+ -- For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Maybe Prelude.Text,+ -- | The number of entities (users and roles) for which the policy is used to+ -- set the permissions boundary.+ --+ -- For more information about permissions boundaries, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+ -- in the /IAM User Guide/.+ permissionsBoundaryUsageCount :: Prelude.Maybe Prelude.Int,+ -- | The stable and unique string identifying the policy.+ --+ -- For more information about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ policyId :: Prelude.Maybe Prelude.Text,+ -- | The friendly name (not ARN) identifying the policy.+ policyName :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that are attached to the instance profile. For more+ -- information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- policy was last updated.+ --+ -- When a policy has only one version, this field contains the date and+ -- time when the policy was created. When a policy has more than one+ -- version, this field contains the date and time when the most recent+ -- policy version was created.+ updateDate :: Prelude.Maybe Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Policy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'policy_arn' - Undocumented member.+--+-- 'attachmentCount', 'policy_attachmentCount' - The number of entities (users, groups, and roles) that the policy is+-- attached to.+--+-- 'createDate', 'policy_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy was created.+--+-- 'defaultVersionId', 'policy_defaultVersionId' - The identifier for the version of the policy that is set as the default+-- version.+--+-- 'description', 'policy_description' - A friendly description of the policy.+--+-- This element is included in the response to the GetPolicy operation. It+-- is not included in the response to the ListPolicies operation.+--+-- 'isAttachable', 'policy_isAttachable' - Specifies whether the policy can be attached to an IAM user, group, or+-- role.+--+-- 'path', 'policy_path' - The path to the policy.+--+-- For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'permissionsBoundaryUsageCount', 'policy_permissionsBoundaryUsageCount' - The number of entities (users and roles) for which the policy is used to+-- set the permissions boundary.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+--+-- 'policyId', 'policy_policyId' - The stable and unique string identifying the policy.+--+-- For more information about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'policyName', 'policy_policyName' - The friendly name (not ARN) identifying the policy.+--+-- 'tags', 'policy_tags' - A list of tags that are attached to the instance profile. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'updateDate', 'policy_updateDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy was last updated.+--+-- When a policy has only one version, this field contains the date and+-- time when the policy was created. When a policy has more than one+-- version, this field contains the date and time when the most recent+-- policy version was created.+newPolicy ::+ Policy+newPolicy =+ Policy'+ { arn = Prelude.Nothing,+ attachmentCount = Prelude.Nothing,+ createDate = Prelude.Nothing,+ defaultVersionId = Prelude.Nothing,+ description = Prelude.Nothing,+ isAttachable = Prelude.Nothing,+ path = Prelude.Nothing,+ permissionsBoundaryUsageCount = Prelude.Nothing,+ policyId = Prelude.Nothing,+ policyName = Prelude.Nothing,+ tags = Prelude.Nothing,+ updateDate = Prelude.Nothing+ }++-- | Undocumented member.+policy_arn :: Lens.Lens' Policy (Prelude.Maybe Prelude.Text)+policy_arn = Lens.lens (\Policy' {arn} -> arn) (\s@Policy' {} a -> s {arn = a} :: Policy)++-- | The number of entities (users, groups, and roles) that the policy is+-- attached to.+policy_attachmentCount :: Lens.Lens' Policy (Prelude.Maybe Prelude.Int)+policy_attachmentCount = Lens.lens (\Policy' {attachmentCount} -> attachmentCount) (\s@Policy' {} a -> s {attachmentCount = a} :: Policy)++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy was created.+policy_createDate :: Lens.Lens' Policy (Prelude.Maybe Prelude.UTCTime)+policy_createDate = Lens.lens (\Policy' {createDate} -> createDate) (\s@Policy' {} a -> s {createDate = a} :: Policy) Prelude.. Lens.mapping Data._Time++-- | The identifier for the version of the policy that is set as the default+-- version.+policy_defaultVersionId :: Lens.Lens' Policy (Prelude.Maybe Prelude.Text)+policy_defaultVersionId = Lens.lens (\Policy' {defaultVersionId} -> defaultVersionId) (\s@Policy' {} a -> s {defaultVersionId = a} :: Policy)++-- | A friendly description of the policy.+--+-- This element is included in the response to the GetPolicy operation. It+-- is not included in the response to the ListPolicies operation.+policy_description :: Lens.Lens' Policy (Prelude.Maybe Prelude.Text)+policy_description = Lens.lens (\Policy' {description} -> description) (\s@Policy' {} a -> s {description = a} :: Policy)++-- | Specifies whether the policy can be attached to an IAM user, group, or+-- role.+policy_isAttachable :: Lens.Lens' Policy (Prelude.Maybe Prelude.Bool)+policy_isAttachable = Lens.lens (\Policy' {isAttachable} -> isAttachable) (\s@Policy' {} a -> s {isAttachable = a} :: Policy)++-- | The path to the policy.+--+-- For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+policy_path :: Lens.Lens' Policy (Prelude.Maybe Prelude.Text)+policy_path = Lens.lens (\Policy' {path} -> path) (\s@Policy' {} a -> s {path = a} :: Policy)++-- | The number of entities (users and roles) for which the policy is used to+-- set the permissions boundary.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+policy_permissionsBoundaryUsageCount :: Lens.Lens' Policy (Prelude.Maybe Prelude.Int)+policy_permissionsBoundaryUsageCount = Lens.lens (\Policy' {permissionsBoundaryUsageCount} -> permissionsBoundaryUsageCount) (\s@Policy' {} a -> s {permissionsBoundaryUsageCount = a} :: Policy)++-- | The stable and unique string identifying the policy.+--+-- For more information about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+policy_policyId :: Lens.Lens' Policy (Prelude.Maybe Prelude.Text)+policy_policyId = Lens.lens (\Policy' {policyId} -> policyId) (\s@Policy' {} a -> s {policyId = a} :: Policy)++-- | The friendly name (not ARN) identifying the policy.+policy_policyName :: Lens.Lens' Policy (Prelude.Maybe Prelude.Text)+policy_policyName = Lens.lens (\Policy' {policyName} -> policyName) (\s@Policy' {} a -> s {policyName = a} :: Policy)++-- | A list of tags that are attached to the instance profile. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+policy_tags :: Lens.Lens' Policy (Prelude.Maybe [Tag])+policy_tags = Lens.lens (\Policy' {tags} -> tags) (\s@Policy' {} a -> s {tags = a} :: Policy) Prelude.. Lens.mapping Lens.coerced++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy was last updated.+--+-- When a policy has only one version, this field contains the date and+-- time when the policy was created. When a policy has more than one+-- version, this field contains the date and time when the most recent+-- policy version was created.+policy_updateDate :: Lens.Lens' Policy (Prelude.Maybe Prelude.UTCTime)+policy_updateDate = Lens.lens (\Policy' {updateDate} -> updateDate) (\s@Policy' {} a -> s {updateDate = a} :: Policy) Prelude.. Lens.mapping Data._Time++instance Data.FromXML Policy where+ parseXML x =+ Policy'+ Prelude.<$> (x Data..@? "Arn")+ Prelude.<*> (x Data..@? "AttachmentCount")+ Prelude.<*> (x Data..@? "CreateDate")+ Prelude.<*> (x Data..@? "DefaultVersionId")+ Prelude.<*> (x Data..@? "Description")+ Prelude.<*> (x Data..@? "IsAttachable")+ Prelude.<*> (x Data..@? "Path")+ Prelude.<*> (x Data..@? "PermissionsBoundaryUsageCount")+ Prelude.<*> (x Data..@? "PolicyId")+ Prelude.<*> (x Data..@? "PolicyName")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "UpdateDate")++instance Prelude.Hashable Policy where+ hashWithSalt _salt Policy' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` attachmentCount+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` defaultVersionId+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` isAttachable+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` permissionsBoundaryUsageCount+ `Prelude.hashWithSalt` policyId+ `Prelude.hashWithSalt` policyName+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` updateDate++instance Prelude.NFData Policy where+ rnf Policy' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf attachmentCount+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf defaultVersionId+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf isAttachable+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf permissionsBoundaryUsageCount+ `Prelude.seq` Prelude.rnf policyId+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf updateDate
+ gen/Amazonka/IAM/Types/PolicyDetail.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyDetail+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an IAM policy, including the policy document.+--+-- This data type is used as a response element in the+-- GetAccountAuthorizationDetails operation.+--+-- /See:/ 'newPolicyDetail' smart constructor.+data PolicyDetail = PolicyDetail'+ { -- | The policy document.+ policyDocument :: Prelude.Maybe Prelude.Text,+ -- | The name of the policy.+ policyName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PolicyDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyDocument', 'policyDetail_policyDocument' - The policy document.+--+-- 'policyName', 'policyDetail_policyName' - The name of the policy.+newPolicyDetail ::+ PolicyDetail+newPolicyDetail =+ PolicyDetail'+ { policyDocument = Prelude.Nothing,+ policyName = Prelude.Nothing+ }++-- | The policy document.+policyDetail_policyDocument :: Lens.Lens' PolicyDetail (Prelude.Maybe Prelude.Text)+policyDetail_policyDocument = Lens.lens (\PolicyDetail' {policyDocument} -> policyDocument) (\s@PolicyDetail' {} a -> s {policyDocument = a} :: PolicyDetail)++-- | The name of the policy.+policyDetail_policyName :: Lens.Lens' PolicyDetail (Prelude.Maybe Prelude.Text)+policyDetail_policyName = Lens.lens (\PolicyDetail' {policyName} -> policyName) (\s@PolicyDetail' {} a -> s {policyName = a} :: PolicyDetail)++instance Data.FromXML PolicyDetail where+ parseXML x =+ PolicyDetail'+ Prelude.<$> (x Data..@? "PolicyDocument")+ Prelude.<*> (x Data..@? "PolicyName")++instance Prelude.Hashable PolicyDetail where+ hashWithSalt _salt PolicyDetail' {..} =+ _salt+ `Prelude.hashWithSalt` policyDocument+ `Prelude.hashWithSalt` policyName++instance Prelude.NFData PolicyDetail where+ rnf PolicyDetail' {..} =+ Prelude.rnf policyDocument+ `Prelude.seq` Prelude.rnf policyName
+ gen/Amazonka/IAM/Types/PolicyEvaluationDecisionType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyEvaluationDecisionType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyEvaluationDecisionType+ ( PolicyEvaluationDecisionType+ ( ..,+ PolicyEvaluationDecisionType_Allowed,+ PolicyEvaluationDecisionType_ExplicitDeny,+ PolicyEvaluationDecisionType_ImplicitDeny+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PolicyEvaluationDecisionType = PolicyEvaluationDecisionType'+ { fromPolicyEvaluationDecisionType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PolicyEvaluationDecisionType_Allowed :: PolicyEvaluationDecisionType+pattern PolicyEvaluationDecisionType_Allowed = PolicyEvaluationDecisionType' "allowed"++pattern PolicyEvaluationDecisionType_ExplicitDeny :: PolicyEvaluationDecisionType+pattern PolicyEvaluationDecisionType_ExplicitDeny = PolicyEvaluationDecisionType' "explicitDeny"++pattern PolicyEvaluationDecisionType_ImplicitDeny :: PolicyEvaluationDecisionType+pattern PolicyEvaluationDecisionType_ImplicitDeny = PolicyEvaluationDecisionType' "implicitDeny"++{-# COMPLETE+ PolicyEvaluationDecisionType_Allowed,+ PolicyEvaluationDecisionType_ExplicitDeny,+ PolicyEvaluationDecisionType_ImplicitDeny,+ PolicyEvaluationDecisionType'+ #-}
+ gen/Amazonka/IAM/Types/PolicyGrantingServiceAccess.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyGrantingServiceAccess+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyGrantingServiceAccess where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.PolicyOwnerEntityType+import Amazonka.IAM.Types.PolicyType+import qualified Amazonka.Prelude as Prelude++-- | Contains details about the permissions policies that are attached to the+-- specified identity (user, group, or role).+--+-- This data type is an element of the+-- ListPoliciesGrantingServiceAccessEntry object.+--+-- /See:/ 'newPolicyGrantingServiceAccess' smart constructor.+data PolicyGrantingServiceAccess = PolicyGrantingServiceAccess'+ { -- | The name of the entity (user or role) to which the inline policy is+ -- attached.+ --+ -- This field is null for managed policies. For more information about+ -- these policy types, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+ -- in the /IAM User Guide/.+ entityName :: Prelude.Maybe Prelude.Text,+ -- | The type of entity (user or role) that used the policy to access the+ -- service to which the inline policy is attached.+ --+ -- This field is null for managed policies. For more information about+ -- these policy types, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+ -- in the /IAM User Guide/.+ entityType :: Prelude.Maybe PolicyOwnerEntityType,+ policyArn :: Prelude.Maybe Prelude.Text,+ -- | The policy name.+ policyName :: Prelude.Text,+ -- | The policy type. For more information about these policy types, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+ -- in the /IAM User Guide/.+ policyType :: PolicyType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PolicyGrantingServiceAccess' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'entityName', 'policyGrantingServiceAccess_entityName' - The name of the entity (user or role) to which the inline policy is+-- attached.+--+-- This field is null for managed policies. For more information about+-- these policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- 'entityType', 'policyGrantingServiceAccess_entityType' - The type of entity (user or role) that used the policy to access the+-- service to which the inline policy is attached.+--+-- This field is null for managed policies. For more information about+-- these policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- 'policyArn', 'policyGrantingServiceAccess_policyArn' - Undocumented member.+--+-- 'policyName', 'policyGrantingServiceAccess_policyName' - The policy name.+--+-- 'policyType', 'policyGrantingServiceAccess_policyType' - The policy type. For more information about these policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+newPolicyGrantingServiceAccess ::+ -- | 'policyName'+ Prelude.Text ->+ -- | 'policyType'+ PolicyType ->+ PolicyGrantingServiceAccess+newPolicyGrantingServiceAccess+ pPolicyName_+ pPolicyType_ =+ PolicyGrantingServiceAccess'+ { entityName =+ Prelude.Nothing,+ entityType = Prelude.Nothing,+ policyArn = Prelude.Nothing,+ policyName = pPolicyName_,+ policyType = pPolicyType_+ }++-- | The name of the entity (user or role) to which the inline policy is+-- attached.+--+-- This field is null for managed policies. For more information about+-- these policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+policyGrantingServiceAccess_entityName :: Lens.Lens' PolicyGrantingServiceAccess (Prelude.Maybe Prelude.Text)+policyGrantingServiceAccess_entityName = Lens.lens (\PolicyGrantingServiceAccess' {entityName} -> entityName) (\s@PolicyGrantingServiceAccess' {} a -> s {entityName = a} :: PolicyGrantingServiceAccess)++-- | The type of entity (user or role) that used the policy to access the+-- service to which the inline policy is attached.+--+-- This field is null for managed policies. For more information about+-- these policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+policyGrantingServiceAccess_entityType :: Lens.Lens' PolicyGrantingServiceAccess (Prelude.Maybe PolicyOwnerEntityType)+policyGrantingServiceAccess_entityType = Lens.lens (\PolicyGrantingServiceAccess' {entityType} -> entityType) (\s@PolicyGrantingServiceAccess' {} a -> s {entityType = a} :: PolicyGrantingServiceAccess)++-- | Undocumented member.+policyGrantingServiceAccess_policyArn :: Lens.Lens' PolicyGrantingServiceAccess (Prelude.Maybe Prelude.Text)+policyGrantingServiceAccess_policyArn = Lens.lens (\PolicyGrantingServiceAccess' {policyArn} -> policyArn) (\s@PolicyGrantingServiceAccess' {} a -> s {policyArn = a} :: PolicyGrantingServiceAccess)++-- | The policy name.+policyGrantingServiceAccess_policyName :: Lens.Lens' PolicyGrantingServiceAccess Prelude.Text+policyGrantingServiceAccess_policyName = Lens.lens (\PolicyGrantingServiceAccess' {policyName} -> policyName) (\s@PolicyGrantingServiceAccess' {} a -> s {policyName = a} :: PolicyGrantingServiceAccess)++-- | The policy type. For more information about these policy types, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+policyGrantingServiceAccess_policyType :: Lens.Lens' PolicyGrantingServiceAccess PolicyType+policyGrantingServiceAccess_policyType = Lens.lens (\PolicyGrantingServiceAccess' {policyType} -> policyType) (\s@PolicyGrantingServiceAccess' {} a -> s {policyType = a} :: PolicyGrantingServiceAccess)++instance Data.FromXML PolicyGrantingServiceAccess where+ parseXML x =+ PolicyGrantingServiceAccess'+ Prelude.<$> (x Data..@? "EntityName")+ Prelude.<*> (x Data..@? "EntityType")+ Prelude.<*> (x Data..@? "PolicyArn")+ Prelude.<*> (x Data..@ "PolicyName")+ Prelude.<*> (x Data..@ "PolicyType")++instance Prelude.Hashable PolicyGrantingServiceAccess where+ hashWithSalt _salt PolicyGrantingServiceAccess' {..} =+ _salt+ `Prelude.hashWithSalt` entityName+ `Prelude.hashWithSalt` entityType+ `Prelude.hashWithSalt` policyArn+ `Prelude.hashWithSalt` policyName+ `Prelude.hashWithSalt` policyType++instance Prelude.NFData PolicyGrantingServiceAccess where+ rnf PolicyGrantingServiceAccess' {..} =+ Prelude.rnf entityName+ `Prelude.seq` Prelude.rnf entityType+ `Prelude.seq` Prelude.rnf policyArn+ `Prelude.seq` Prelude.rnf policyName+ `Prelude.seq` Prelude.rnf policyType
+ gen/Amazonka/IAM/Types/PolicyGroup.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyGroup where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a group that a managed policy is attached to.+--+-- This data type is used as a response element in the+-- ListEntitiesForPolicy operation.+--+-- For more information about managed policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- /See:/ 'newPolicyGroup' smart constructor.+data PolicyGroup = PolicyGroup'+ { -- | The stable and unique string identifying the group. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ groupId :: Prelude.Maybe Prelude.Text,+ -- | The name (friendly name, not ARN) identifying the group.+ groupName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PolicyGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'groupId', 'policyGroup_groupId' - The stable and unique string identifying the group. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'groupName', 'policyGroup_groupName' - The name (friendly name, not ARN) identifying the group.+newPolicyGroup ::+ PolicyGroup+newPolicyGroup =+ PolicyGroup'+ { groupId = Prelude.Nothing,+ groupName = Prelude.Nothing+ }++-- | The stable and unique string identifying the group. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+policyGroup_groupId :: Lens.Lens' PolicyGroup (Prelude.Maybe Prelude.Text)+policyGroup_groupId = Lens.lens (\PolicyGroup' {groupId} -> groupId) (\s@PolicyGroup' {} a -> s {groupId = a} :: PolicyGroup)++-- | The name (friendly name, not ARN) identifying the group.+policyGroup_groupName :: Lens.Lens' PolicyGroup (Prelude.Maybe Prelude.Text)+policyGroup_groupName = Lens.lens (\PolicyGroup' {groupName} -> groupName) (\s@PolicyGroup' {} a -> s {groupName = a} :: PolicyGroup)++instance Data.FromXML PolicyGroup where+ parseXML x =+ PolicyGroup'+ Prelude.<$> (x Data..@? "GroupId")+ Prelude.<*> (x Data..@? "GroupName")++instance Prelude.Hashable PolicyGroup where+ hashWithSalt _salt PolicyGroup' {..} =+ _salt+ `Prelude.hashWithSalt` groupId+ `Prelude.hashWithSalt` groupName++instance Prelude.NFData PolicyGroup where+ rnf PolicyGroup' {..} =+ Prelude.rnf groupId+ `Prelude.seq` Prelude.rnf groupName
+ gen/Amazonka/IAM/Types/PolicyOwnerEntityType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyOwnerEntityType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyOwnerEntityType+ ( PolicyOwnerEntityType+ ( ..,+ PolicyOwnerEntityType_GROUP,+ PolicyOwnerEntityType_ROLE,+ PolicyOwnerEntityType_USER+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PolicyOwnerEntityType = PolicyOwnerEntityType'+ { fromPolicyOwnerEntityType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PolicyOwnerEntityType_GROUP :: PolicyOwnerEntityType+pattern PolicyOwnerEntityType_GROUP = PolicyOwnerEntityType' "GROUP"++pattern PolicyOwnerEntityType_ROLE :: PolicyOwnerEntityType+pattern PolicyOwnerEntityType_ROLE = PolicyOwnerEntityType' "ROLE"++pattern PolicyOwnerEntityType_USER :: PolicyOwnerEntityType+pattern PolicyOwnerEntityType_USER = PolicyOwnerEntityType' "USER"++{-# COMPLETE+ PolicyOwnerEntityType_GROUP,+ PolicyOwnerEntityType_ROLE,+ PolicyOwnerEntityType_USER,+ PolicyOwnerEntityType'+ #-}
+ gen/Amazonka/IAM/Types/PolicyRole.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyRole where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a role that a managed policy is attached to.+--+-- This data type is used as a response element in the+-- ListEntitiesForPolicy operation.+--+-- For more information about managed policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- /See:/ 'newPolicyRole' smart constructor.+data PolicyRole = PolicyRole'+ { -- | The stable and unique string identifying the role. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ roleId :: Prelude.Maybe Prelude.Text,+ -- | The name (friendly name, not ARN) identifying the role.+ roleName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PolicyRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleId', 'policyRole_roleId' - The stable and unique string identifying the role. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'roleName', 'policyRole_roleName' - The name (friendly name, not ARN) identifying the role.+newPolicyRole ::+ PolicyRole+newPolicyRole =+ PolicyRole'+ { roleId = Prelude.Nothing,+ roleName = Prelude.Nothing+ }++-- | The stable and unique string identifying the role. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+policyRole_roleId :: Lens.Lens' PolicyRole (Prelude.Maybe Prelude.Text)+policyRole_roleId = Lens.lens (\PolicyRole' {roleId} -> roleId) (\s@PolicyRole' {} a -> s {roleId = a} :: PolicyRole)++-- | The name (friendly name, not ARN) identifying the role.+policyRole_roleName :: Lens.Lens' PolicyRole (Prelude.Maybe Prelude.Text)+policyRole_roleName = Lens.lens (\PolicyRole' {roleName} -> roleName) (\s@PolicyRole' {} a -> s {roleName = a} :: PolicyRole)++instance Data.FromXML PolicyRole where+ parseXML x =+ PolicyRole'+ Prelude.<$> (x Data..@? "RoleId")+ Prelude.<*> (x Data..@? "RoleName")++instance Prelude.Hashable PolicyRole where+ hashWithSalt _salt PolicyRole' {..} =+ _salt+ `Prelude.hashWithSalt` roleId+ `Prelude.hashWithSalt` roleName++instance Prelude.NFData PolicyRole where+ rnf PolicyRole' {..} =+ Prelude.rnf roleId+ `Prelude.seq` Prelude.rnf roleName
+ gen/Amazonka/IAM/Types/PolicyScopeType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyScopeType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyScopeType+ ( PolicyScopeType+ ( ..,+ PolicyScopeType_AWS,+ PolicyScopeType_All,+ PolicyScopeType_Local+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PolicyScopeType = PolicyScopeType'+ { fromPolicyScopeType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PolicyScopeType_AWS :: PolicyScopeType+pattern PolicyScopeType_AWS = PolicyScopeType' "AWS"++pattern PolicyScopeType_All :: PolicyScopeType+pattern PolicyScopeType_All = PolicyScopeType' "All"++pattern PolicyScopeType_Local :: PolicyScopeType+pattern PolicyScopeType_Local = PolicyScopeType' "Local"++{-# COMPLETE+ PolicyScopeType_AWS,+ PolicyScopeType_All,+ PolicyScopeType_Local,+ PolicyScopeType'+ #-}
+ gen/Amazonka/IAM/Types/PolicySourceType.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicySourceType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicySourceType+ ( PolicySourceType+ ( ..,+ PolicySourceType_Aws_managed,+ PolicySourceType_Group,+ PolicySourceType_None,+ PolicySourceType_Resource,+ PolicySourceType_Role,+ PolicySourceType_User,+ PolicySourceType_User_managed+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PolicySourceType = PolicySourceType'+ { fromPolicySourceType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PolicySourceType_Aws_managed :: PolicySourceType+pattern PolicySourceType_Aws_managed = PolicySourceType' "aws-managed"++pattern PolicySourceType_Group :: PolicySourceType+pattern PolicySourceType_Group = PolicySourceType' "group"++pattern PolicySourceType_None :: PolicySourceType+pattern PolicySourceType_None = PolicySourceType' "none"++pattern PolicySourceType_Resource :: PolicySourceType+pattern PolicySourceType_Resource = PolicySourceType' "resource"++pattern PolicySourceType_Role :: PolicySourceType+pattern PolicySourceType_Role = PolicySourceType' "role"++pattern PolicySourceType_User :: PolicySourceType+pattern PolicySourceType_User = PolicySourceType' "user"++pattern PolicySourceType_User_managed :: PolicySourceType+pattern PolicySourceType_User_managed = PolicySourceType' "user-managed"++{-# COMPLETE+ PolicySourceType_Aws_managed,+ PolicySourceType_Group,+ PolicySourceType_None,+ PolicySourceType_Resource,+ PolicySourceType_Role,+ PolicySourceType_User,+ PolicySourceType_User_managed,+ PolicySourceType'+ #-}
+ gen/Amazonka/IAM/Types/PolicyType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyType+ ( PolicyType+ ( ..,+ PolicyType_INLINE,+ PolicyType_MANAGED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PolicyType = PolicyType'+ { fromPolicyType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PolicyType_INLINE :: PolicyType+pattern PolicyType_INLINE = PolicyType' "INLINE"++pattern PolicyType_MANAGED :: PolicyType+pattern PolicyType_MANAGED = PolicyType' "MANAGED"++{-# COMPLETE+ PolicyType_INLINE,+ PolicyType_MANAGED,+ PolicyType'+ #-}
+ gen/Amazonka/IAM/Types/PolicyUsageType.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyUsageType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyUsageType+ ( PolicyUsageType+ ( ..,+ PolicyUsageType_PermissionsBoundary,+ PolicyUsageType_PermissionsPolicy+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The policy usage type that indicates whether the policy is used as a+-- permissions policy or as the permissions boundary for an entity.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+newtype PolicyUsageType = PolicyUsageType'+ { fromPolicyUsageType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern PolicyUsageType_PermissionsBoundary :: PolicyUsageType+pattern PolicyUsageType_PermissionsBoundary = PolicyUsageType' "PermissionsBoundary"++pattern PolicyUsageType_PermissionsPolicy :: PolicyUsageType+pattern PolicyUsageType_PermissionsPolicy = PolicyUsageType' "PermissionsPolicy"++{-# COMPLETE+ PolicyUsageType_PermissionsBoundary,+ PolicyUsageType_PermissionsPolicy,+ PolicyUsageType'+ #-}
+ gen/Amazonka/IAM/Types/PolicyUser.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyUser where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a user that a managed policy is attached to.+--+-- This data type is used as a response element in the+-- ListEntitiesForPolicy operation.+--+-- For more information about managed policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- /See:/ 'newPolicyUser' smart constructor.+data PolicyUser = PolicyUser'+ { -- | The stable and unique string identifying the user. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ userId :: Prelude.Maybe Prelude.Text,+ -- | The name (friendly name, not ARN) identifying the user.+ userName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PolicyUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userId', 'policyUser_userId' - The stable and unique string identifying the user. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'userName', 'policyUser_userName' - The name (friendly name, not ARN) identifying the user.+newPolicyUser ::+ PolicyUser+newPolicyUser =+ PolicyUser'+ { userId = Prelude.Nothing,+ userName = Prelude.Nothing+ }++-- | The stable and unique string identifying the user. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+policyUser_userId :: Lens.Lens' PolicyUser (Prelude.Maybe Prelude.Text)+policyUser_userId = Lens.lens (\PolicyUser' {userId} -> userId) (\s@PolicyUser' {} a -> s {userId = a} :: PolicyUser)++-- | The name (friendly name, not ARN) identifying the user.+policyUser_userName :: Lens.Lens' PolicyUser (Prelude.Maybe Prelude.Text)+policyUser_userName = Lens.lens (\PolicyUser' {userName} -> userName) (\s@PolicyUser' {} a -> s {userName = a} :: PolicyUser)++instance Data.FromXML PolicyUser where+ parseXML x =+ PolicyUser'+ Prelude.<$> (x Data..@? "UserId")+ Prelude.<*> (x Data..@? "UserName")++instance Prelude.Hashable PolicyUser where+ hashWithSalt _salt PolicyUser' {..} =+ _salt+ `Prelude.hashWithSalt` userId+ `Prelude.hashWithSalt` userName++instance Prelude.NFData PolicyUser where+ rnf PolicyUser' {..} =+ Prelude.rnf userId+ `Prelude.seq` Prelude.rnf userName
+ gen/Amazonka/IAM/Types/PolicyVersion.hs view
@@ -0,0 +1,163 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.PolicyVersion+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.PolicyVersion where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a version of a managed policy.+--+-- This data type is used as a response element in the CreatePolicyVersion,+-- GetPolicyVersion, ListPolicyVersions, and GetAccountAuthorizationDetails+-- operations.+--+-- For more information about managed policies, refer to+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed policies and inline policies>+-- in the /IAM User Guide/.+--+-- /See:/ 'newPolicyVersion' smart constructor.+data PolicyVersion = PolicyVersion'+ { -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- policy version was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | The policy document.+ --+ -- The policy document is returned in the response to the GetPolicyVersion+ -- and GetAccountAuthorizationDetails operations. It is not returned in the+ -- response to the CreatePolicyVersion or ListPolicyVersions operations.+ --+ -- The policy document returned in this structure is URL-encoded compliant+ -- with <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+ -- decoding method to convert the policy back to plain JSON text. For+ -- example, if you use Java, you can use the @decode@ method of the+ -- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+ -- SDKs provide similar functionality.+ document :: Prelude.Maybe Prelude.Text,+ -- | Specifies whether the policy version is set as the policy\'s default+ -- version.+ isDefaultVersion :: Prelude.Maybe Prelude.Bool,+ -- | The identifier for the policy version.+ --+ -- Policy version identifiers always begin with @v@ (always lowercase).+ -- When a policy is created, the first policy version is @v1@.+ versionId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PolicyVersion' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createDate', 'policyVersion_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy version was created.+--+-- 'document', 'policyVersion_document' - The policy document.+--+-- The policy document is returned in the response to the GetPolicyVersion+-- and GetAccountAuthorizationDetails operations. It is not returned in the+-- response to the CreatePolicyVersion or ListPolicyVersions operations.+--+-- The policy document returned in this structure is URL-encoded compliant+-- with <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+-- decoding method to convert the policy back to plain JSON text. For+-- example, if you use Java, you can use the @decode@ method of the+-- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+-- SDKs provide similar functionality.+--+-- 'isDefaultVersion', 'policyVersion_isDefaultVersion' - Specifies whether the policy version is set as the policy\'s default+-- version.+--+-- 'versionId', 'policyVersion_versionId' - The identifier for the policy version.+--+-- Policy version identifiers always begin with @v@ (always lowercase).+-- When a policy is created, the first policy version is @v1@.+newPolicyVersion ::+ PolicyVersion+newPolicyVersion =+ PolicyVersion'+ { createDate = Prelude.Nothing,+ document = Prelude.Nothing,+ isDefaultVersion = Prelude.Nothing,+ versionId = Prelude.Nothing+ }++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- policy version was created.+policyVersion_createDate :: Lens.Lens' PolicyVersion (Prelude.Maybe Prelude.UTCTime)+policyVersion_createDate = Lens.lens (\PolicyVersion' {createDate} -> createDate) (\s@PolicyVersion' {} a -> s {createDate = a} :: PolicyVersion) Prelude.. Lens.mapping Data._Time++-- | The policy document.+--+-- The policy document is returned in the response to the GetPolicyVersion+-- and GetAccountAuthorizationDetails operations. It is not returned in the+-- response to the CreatePolicyVersion or ListPolicyVersions operations.+--+-- The policy document returned in this structure is URL-encoded compliant+-- with <https://tools.ietf.org/html/rfc3986 RFC 3986>. You can use a URL+-- decoding method to convert the policy back to plain JSON text. For+-- example, if you use Java, you can use the @decode@ method of the+-- @java.net.URLDecoder@ utility class in the Java SDK. Other languages and+-- SDKs provide similar functionality.+policyVersion_document :: Lens.Lens' PolicyVersion (Prelude.Maybe Prelude.Text)+policyVersion_document = Lens.lens (\PolicyVersion' {document} -> document) (\s@PolicyVersion' {} a -> s {document = a} :: PolicyVersion)++-- | Specifies whether the policy version is set as the policy\'s default+-- version.+policyVersion_isDefaultVersion :: Lens.Lens' PolicyVersion (Prelude.Maybe Prelude.Bool)+policyVersion_isDefaultVersion = Lens.lens (\PolicyVersion' {isDefaultVersion} -> isDefaultVersion) (\s@PolicyVersion' {} a -> s {isDefaultVersion = a} :: PolicyVersion)++-- | The identifier for the policy version.+--+-- Policy version identifiers always begin with @v@ (always lowercase).+-- When a policy is created, the first policy version is @v1@.+policyVersion_versionId :: Lens.Lens' PolicyVersion (Prelude.Maybe Prelude.Text)+policyVersion_versionId = Lens.lens (\PolicyVersion' {versionId} -> versionId) (\s@PolicyVersion' {} a -> s {versionId = a} :: PolicyVersion)++instance Data.FromXML PolicyVersion where+ parseXML x =+ PolicyVersion'+ Prelude.<$> (x Data..@? "CreateDate")+ Prelude.<*> (x Data..@? "Document")+ Prelude.<*> (x Data..@? "IsDefaultVersion")+ Prelude.<*> (x Data..@? "VersionId")++instance Prelude.Hashable PolicyVersion where+ hashWithSalt _salt PolicyVersion' {..} =+ _salt+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` document+ `Prelude.hashWithSalt` isDefaultVersion+ `Prelude.hashWithSalt` versionId++instance Prelude.NFData PolicyVersion where+ rnf PolicyVersion' {..} =+ Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf document+ `Prelude.seq` Prelude.rnf isDefaultVersion+ `Prelude.seq` Prelude.rnf versionId
+ gen/Amazonka/IAM/Types/Position.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.Position+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.Position where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains the row and column of a location of a @Statement@ element in a+-- policy document.+--+-- This data type is used as a member of the @ @@Statement@@ @ type.+--+-- /See:/ 'newPosition' smart constructor.+data Position = Position'+ { -- | The column in the line containing the specified position in the+ -- document.+ column :: Prelude.Maybe Prelude.Int,+ -- | The line containing the specified position in the document.+ line :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Position' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'column', 'position_column' - The column in the line containing the specified position in the+-- document.+--+-- 'line', 'position_line' - The line containing the specified position in the document.+newPosition ::+ Position+newPosition =+ Position'+ { column = Prelude.Nothing,+ line = Prelude.Nothing+ }++-- | The column in the line containing the specified position in the+-- document.+position_column :: Lens.Lens' Position (Prelude.Maybe Prelude.Int)+position_column = Lens.lens (\Position' {column} -> column) (\s@Position' {} a -> s {column = a} :: Position)++-- | The line containing the specified position in the document.+position_line :: Lens.Lens' Position (Prelude.Maybe Prelude.Int)+position_line = Lens.lens (\Position' {line} -> line) (\s@Position' {} a -> s {line = a} :: Position)++instance Data.FromXML Position where+ parseXML x =+ Position'+ Prelude.<$> (x Data..@? "Column")+ Prelude.<*> (x Data..@? "Line")++instance Prelude.Hashable Position where+ hashWithSalt _salt Position' {..} =+ _salt+ `Prelude.hashWithSalt` column+ `Prelude.hashWithSalt` line++instance Prelude.NFData Position where+ rnf Position' {..} =+ Prelude.rnf column `Prelude.seq` Prelude.rnf line
+ gen/Amazonka/IAM/Types/ReportFormatType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ReportFormatType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ReportFormatType+ ( ReportFormatType+ ( ..,+ ReportFormatType_Text_csv+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ReportFormatType = ReportFormatType'+ { fromReportFormatType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ReportFormatType_Text_csv :: ReportFormatType+pattern ReportFormatType_Text_csv = ReportFormatType' "text/csv"++{-# COMPLETE+ ReportFormatType_Text_csv,+ ReportFormatType'+ #-}
+ gen/Amazonka/IAM/Types/ReportStateType.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ReportStateType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ReportStateType+ ( ReportStateType+ ( ..,+ ReportStateType_COMPLETE,+ ReportStateType_INPROGRESS,+ ReportStateType_STARTED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ReportStateType = ReportStateType'+ { fromReportStateType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern ReportStateType_COMPLETE :: ReportStateType+pattern ReportStateType_COMPLETE = ReportStateType' "COMPLETE"++pattern ReportStateType_INPROGRESS :: ReportStateType+pattern ReportStateType_INPROGRESS = ReportStateType' "INPROGRESS"++pattern ReportStateType_STARTED :: ReportStateType+pattern ReportStateType_STARTED = ReportStateType' "STARTED"++{-# COMPLETE+ ReportStateType_COMPLETE,+ ReportStateType_INPROGRESS,+ ReportStateType_STARTED,+ ReportStateType'+ #-}
+ gen/Amazonka/IAM/Types/ResourceSpecificResult.hs view
@@ -0,0 +1,207 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ResourceSpecificResult+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ResourceSpecificResult where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.PermissionsBoundaryDecisionDetail+import Amazonka.IAM.Types.PolicyEvaluationDecisionType+import Amazonka.IAM.Types.Statement+import qualified Amazonka.Prelude as Prelude++-- | Contains the result of the simulation of a single API operation call on+-- a single resource.+--+-- This data type is used by a member of the EvaluationResult data type.+--+-- /See:/ 'newResourceSpecificResult' smart constructor.+data ResourceSpecificResult = ResourceSpecificResult'+ { -- | Additional details about the results of the evaluation decision on a+ -- single resource. This parameter is returned only for cross-account+ -- simulations. This parameter explains how each policy type contributes to+ -- the resource-specific evaluation decision.+ evalDecisionDetails :: Prelude.Maybe (Prelude.HashMap Prelude.Text PolicyEvaluationDecisionType),+ -- | A list of the statements in the input policies that determine the result+ -- for this part of the simulation. Remember that even if multiple+ -- statements allow the operation on the resource, if /any/ statement+ -- denies that operation, then the explicit deny overrides any allow. In+ -- addition, the deny statement is the only entry included in the result.+ matchedStatements :: Prelude.Maybe [Statement],+ -- | A list of context keys that are required by the included input policies+ -- but that were not provided by one of the input parameters. This list is+ -- used when a list of ARNs is included in the @ResourceArns@ parameter+ -- instead of \"*\". If you do not specify individual resources, by setting+ -- @ResourceArns@ to \"*\" or by not including the @ResourceArns@+ -- parameter, then any missing context values are instead included under+ -- the @EvaluationResults@ section. To discover the context keys used by a+ -- set of policies, you can call GetContextKeysForCustomPolicy or+ -- GetContextKeysForPrincipalPolicy.+ missingContextValues :: Prelude.Maybe [Prelude.Text],+ -- | Contains information about the effect that a permissions boundary has on+ -- a policy simulation when that boundary is applied to an IAM entity.+ permissionsBoundaryDecisionDetail :: Prelude.Maybe PermissionsBoundaryDecisionDetail,+ -- | The name of the simulated resource, in Amazon Resource Name (ARN)+ -- format.+ evalResourceName :: Prelude.Text,+ -- | The result of the simulation of the simulated API operation on the+ -- resource specified in @EvalResourceName@.+ evalResourceDecision :: PolicyEvaluationDecisionType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResourceSpecificResult' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'evalDecisionDetails', 'resourceSpecificResult_evalDecisionDetails' - Additional details about the results of the evaluation decision on a+-- single resource. This parameter is returned only for cross-account+-- simulations. This parameter explains how each policy type contributes to+-- the resource-specific evaluation decision.+--+-- 'matchedStatements', 'resourceSpecificResult_matchedStatements' - A list of the statements in the input policies that determine the result+-- for this part of the simulation. Remember that even if multiple+-- statements allow the operation on the resource, if /any/ statement+-- denies that operation, then the explicit deny overrides any allow. In+-- addition, the deny statement is the only entry included in the result.+--+-- 'missingContextValues', 'resourceSpecificResult_missingContextValues' - A list of context keys that are required by the included input policies+-- but that were not provided by one of the input parameters. This list is+-- used when a list of ARNs is included in the @ResourceArns@ parameter+-- instead of \"*\". If you do not specify individual resources, by setting+-- @ResourceArns@ to \"*\" or by not including the @ResourceArns@+-- parameter, then any missing context values are instead included under+-- the @EvaluationResults@ section. To discover the context keys used by a+-- set of policies, you can call GetContextKeysForCustomPolicy or+-- GetContextKeysForPrincipalPolicy.+--+-- 'permissionsBoundaryDecisionDetail', 'resourceSpecificResult_permissionsBoundaryDecisionDetail' - Contains information about the effect that a permissions boundary has on+-- a policy simulation when that boundary is applied to an IAM entity.+--+-- 'evalResourceName', 'resourceSpecificResult_evalResourceName' - The name of the simulated resource, in Amazon Resource Name (ARN)+-- format.+--+-- 'evalResourceDecision', 'resourceSpecificResult_evalResourceDecision' - The result of the simulation of the simulated API operation on the+-- resource specified in @EvalResourceName@.+newResourceSpecificResult ::+ -- | 'evalResourceName'+ Prelude.Text ->+ -- | 'evalResourceDecision'+ PolicyEvaluationDecisionType ->+ ResourceSpecificResult+newResourceSpecificResult+ pEvalResourceName_+ pEvalResourceDecision_ =+ ResourceSpecificResult'+ { evalDecisionDetails =+ Prelude.Nothing,+ matchedStatements = Prelude.Nothing,+ missingContextValues = Prelude.Nothing,+ permissionsBoundaryDecisionDetail = Prelude.Nothing,+ evalResourceName = pEvalResourceName_,+ evalResourceDecision = pEvalResourceDecision_+ }++-- | Additional details about the results of the evaluation decision on a+-- single resource. This parameter is returned only for cross-account+-- simulations. This parameter explains how each policy type contributes to+-- the resource-specific evaluation decision.+resourceSpecificResult_evalDecisionDetails :: Lens.Lens' ResourceSpecificResult (Prelude.Maybe (Prelude.HashMap Prelude.Text PolicyEvaluationDecisionType))+resourceSpecificResult_evalDecisionDetails = Lens.lens (\ResourceSpecificResult' {evalDecisionDetails} -> evalDecisionDetails) (\s@ResourceSpecificResult' {} a -> s {evalDecisionDetails = a} :: ResourceSpecificResult) Prelude.. Lens.mapping Lens.coerced++-- | A list of the statements in the input policies that determine the result+-- for this part of the simulation. Remember that even if multiple+-- statements allow the operation on the resource, if /any/ statement+-- denies that operation, then the explicit deny overrides any allow. In+-- addition, the deny statement is the only entry included in the result.+resourceSpecificResult_matchedStatements :: Lens.Lens' ResourceSpecificResult (Prelude.Maybe [Statement])+resourceSpecificResult_matchedStatements = Lens.lens (\ResourceSpecificResult' {matchedStatements} -> matchedStatements) (\s@ResourceSpecificResult' {} a -> s {matchedStatements = a} :: ResourceSpecificResult) Prelude.. Lens.mapping Lens.coerced++-- | A list of context keys that are required by the included input policies+-- but that were not provided by one of the input parameters. This list is+-- used when a list of ARNs is included in the @ResourceArns@ parameter+-- instead of \"*\". If you do not specify individual resources, by setting+-- @ResourceArns@ to \"*\" or by not including the @ResourceArns@+-- parameter, then any missing context values are instead included under+-- the @EvaluationResults@ section. To discover the context keys used by a+-- set of policies, you can call GetContextKeysForCustomPolicy or+-- GetContextKeysForPrincipalPolicy.+resourceSpecificResult_missingContextValues :: Lens.Lens' ResourceSpecificResult (Prelude.Maybe [Prelude.Text])+resourceSpecificResult_missingContextValues = Lens.lens (\ResourceSpecificResult' {missingContextValues} -> missingContextValues) (\s@ResourceSpecificResult' {} a -> s {missingContextValues = a} :: ResourceSpecificResult) Prelude.. Lens.mapping Lens.coerced++-- | Contains information about the effect that a permissions boundary has on+-- a policy simulation when that boundary is applied to an IAM entity.+resourceSpecificResult_permissionsBoundaryDecisionDetail :: Lens.Lens' ResourceSpecificResult (Prelude.Maybe PermissionsBoundaryDecisionDetail)+resourceSpecificResult_permissionsBoundaryDecisionDetail = Lens.lens (\ResourceSpecificResult' {permissionsBoundaryDecisionDetail} -> permissionsBoundaryDecisionDetail) (\s@ResourceSpecificResult' {} a -> s {permissionsBoundaryDecisionDetail = a} :: ResourceSpecificResult)++-- | The name of the simulated resource, in Amazon Resource Name (ARN)+-- format.+resourceSpecificResult_evalResourceName :: Lens.Lens' ResourceSpecificResult Prelude.Text+resourceSpecificResult_evalResourceName = Lens.lens (\ResourceSpecificResult' {evalResourceName} -> evalResourceName) (\s@ResourceSpecificResult' {} a -> s {evalResourceName = a} :: ResourceSpecificResult)++-- | The result of the simulation of the simulated API operation on the+-- resource specified in @EvalResourceName@.+resourceSpecificResult_evalResourceDecision :: Lens.Lens' ResourceSpecificResult PolicyEvaluationDecisionType+resourceSpecificResult_evalResourceDecision = Lens.lens (\ResourceSpecificResult' {evalResourceDecision} -> evalResourceDecision) (\s@ResourceSpecificResult' {} a -> s {evalResourceDecision = a} :: ResourceSpecificResult)++instance Data.FromXML ResourceSpecificResult where+ parseXML x =+ ResourceSpecificResult'+ Prelude.<$> ( x+ Data..@? "EvalDecisionDetails"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLMap "entry" "key" "value")+ )+ Prelude.<*> ( x+ Data..@? "MatchedStatements"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "MissingContextValues"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "PermissionsBoundaryDecisionDetail")+ Prelude.<*> (x Data..@ "EvalResourceName")+ Prelude.<*> (x Data..@ "EvalResourceDecision")++instance Prelude.Hashable ResourceSpecificResult where+ hashWithSalt _salt ResourceSpecificResult' {..} =+ _salt+ `Prelude.hashWithSalt` evalDecisionDetails+ `Prelude.hashWithSalt` matchedStatements+ `Prelude.hashWithSalt` missingContextValues+ `Prelude.hashWithSalt` permissionsBoundaryDecisionDetail+ `Prelude.hashWithSalt` evalResourceName+ `Prelude.hashWithSalt` evalResourceDecision++instance Prelude.NFData ResourceSpecificResult where+ rnf ResourceSpecificResult' {..} =+ Prelude.rnf evalDecisionDetails+ `Prelude.seq` Prelude.rnf matchedStatements+ `Prelude.seq` Prelude.rnf missingContextValues+ `Prelude.seq` Prelude.rnf permissionsBoundaryDecisionDetail+ `Prelude.seq` Prelude.rnf evalResourceName+ `Prelude.seq` Prelude.rnf evalResourceDecision
+ gen/Amazonka/IAM/Types/Role.hs view
@@ -0,0 +1,287 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.Role+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.Role where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.AttachedPermissionsBoundary+import Amazonka.IAM.Types.RoleLastUsed+import Amazonka.IAM.Types.Tag+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an IAM role. This structure is returned as a+-- response element in several API operations that interact with roles.+--+-- /See:/ 'newRole' smart constructor.+data Role = Role'+ { -- | The policy that grants an entity permission to assume the role.+ assumeRolePolicyDocument :: Prelude.Maybe Prelude.Text,+ -- | A description of the role that you provide.+ description :: Prelude.Maybe Prelude.Text,+ -- | The maximum session duration (in seconds) for the specified role. Anyone+ -- who uses the CLI, or API to assume the role can specify the duration+ -- using the optional @DurationSeconds@ API parameter or @duration-seconds@+ -- CLI parameter.+ maxSessionDuration :: Prelude.Maybe Prelude.Natural,+ -- | The ARN of the policy used to set the permissions boundary for the role.+ --+ -- For more information about permissions boundaries, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+ -- in the /IAM User Guide/.+ permissionsBoundary :: Prelude.Maybe AttachedPermissionsBoundary,+ -- | Contains information about the last time that an IAM role was used. This+ -- includes the date and time and the Region in which the role was last+ -- used. Activity is only reported for the trailing 400 days. This period+ -- can be shorter if your Region began supporting these features within the+ -- last year. The role might have been used more than 400 days ago. For+ -- more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+ -- in the /IAM User Guide/.+ roleLastUsed :: Prelude.Maybe RoleLastUsed,+ -- | A list of tags that are attached to the role. For more information about+ -- tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The path to the role. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Text,+ -- | The friendly name that identifies the role.+ roleName :: Prelude.Text,+ -- | The stable and unique string identifying the role. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ roleId :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) specifying the role. For more information+ -- about ARNs and how to use them in policies, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/ guide.+ arn :: Prelude.Text,+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- role was created.+ createDate :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Role' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'assumeRolePolicyDocument', 'role_assumeRolePolicyDocument' - The policy that grants an entity permission to assume the role.+--+-- 'description', 'role_description' - A description of the role that you provide.+--+-- 'maxSessionDuration', 'role_maxSessionDuration' - The maximum session duration (in seconds) for the specified role. Anyone+-- who uses the CLI, or API to assume the role can specify the duration+-- using the optional @DurationSeconds@ API parameter or @duration-seconds@+-- CLI parameter.+--+-- 'permissionsBoundary', 'role_permissionsBoundary' - The ARN of the policy used to set the permissions boundary for the role.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+--+-- 'roleLastUsed', 'role_roleLastUsed' - Contains information about the last time that an IAM role was used. This+-- includes the date and time and the Region in which the role was last+-- used. Activity is only reported for the trailing 400 days. This period+-- can be shorter if your Region began supporting these features within the+-- last year. The role might have been used more than 400 days ago. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+-- in the /IAM User Guide/.+--+-- 'tags', 'role_tags' - A list of tags that are attached to the role. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'path', 'role_path' - The path to the role. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'roleName', 'role_roleName' - The friendly name that identifies the role.+--+-- 'roleId', 'role_roleId' - The stable and unique string identifying the role. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'arn', 'role_arn' - The Amazon Resource Name (ARN) specifying the role. For more information+-- about ARNs and how to use them in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/ guide.+--+-- 'createDate', 'role_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- role was created.+newRole ::+ -- | 'path'+ Prelude.Text ->+ -- | 'roleName'+ Prelude.Text ->+ -- | 'roleId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'createDate'+ Prelude.UTCTime ->+ Role+newRole pPath_ pRoleName_ pRoleId_ pArn_ pCreateDate_ =+ Role'+ { assumeRolePolicyDocument = Prelude.Nothing,+ description = Prelude.Nothing,+ maxSessionDuration = Prelude.Nothing,+ permissionsBoundary = Prelude.Nothing,+ roleLastUsed = Prelude.Nothing,+ tags = Prelude.Nothing,+ path = pPath_,+ roleName = pRoleName_,+ roleId = pRoleId_,+ arn = pArn_,+ createDate = Data._Time Lens.# pCreateDate_+ }++-- | The policy that grants an entity permission to assume the role.+role_assumeRolePolicyDocument :: Lens.Lens' Role (Prelude.Maybe Prelude.Text)+role_assumeRolePolicyDocument = Lens.lens (\Role' {assumeRolePolicyDocument} -> assumeRolePolicyDocument) (\s@Role' {} a -> s {assumeRolePolicyDocument = a} :: Role)++-- | A description of the role that you provide.+role_description :: Lens.Lens' Role (Prelude.Maybe Prelude.Text)+role_description = Lens.lens (\Role' {description} -> description) (\s@Role' {} a -> s {description = a} :: Role)++-- | The maximum session duration (in seconds) for the specified role. Anyone+-- who uses the CLI, or API to assume the role can specify the duration+-- using the optional @DurationSeconds@ API parameter or @duration-seconds@+-- CLI parameter.+role_maxSessionDuration :: Lens.Lens' Role (Prelude.Maybe Prelude.Natural)+role_maxSessionDuration = Lens.lens (\Role' {maxSessionDuration} -> maxSessionDuration) (\s@Role' {} a -> s {maxSessionDuration = a} :: Role)++-- | The ARN of the policy used to set the permissions boundary for the role.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+role_permissionsBoundary :: Lens.Lens' Role (Prelude.Maybe AttachedPermissionsBoundary)+role_permissionsBoundary = Lens.lens (\Role' {permissionsBoundary} -> permissionsBoundary) (\s@Role' {} a -> s {permissionsBoundary = a} :: Role)++-- | Contains information about the last time that an IAM role was used. This+-- includes the date and time and the Region in which the role was last+-- used. Activity is only reported for the trailing 400 days. This period+-- can be shorter if your Region began supporting these features within the+-- last year. The role might have been used more than 400 days ago. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+-- in the /IAM User Guide/.+role_roleLastUsed :: Lens.Lens' Role (Prelude.Maybe RoleLastUsed)+role_roleLastUsed = Lens.lens (\Role' {roleLastUsed} -> roleLastUsed) (\s@Role' {} a -> s {roleLastUsed = a} :: Role)++-- | A list of tags that are attached to the role. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+role_tags :: Lens.Lens' Role (Prelude.Maybe [Tag])+role_tags = Lens.lens (\Role' {tags} -> tags) (\s@Role' {} a -> s {tags = a} :: Role) Prelude.. Lens.mapping Lens.coerced++-- | The path to the role. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+role_path :: Lens.Lens' Role Prelude.Text+role_path = Lens.lens (\Role' {path} -> path) (\s@Role' {} a -> s {path = a} :: Role)++-- | The friendly name that identifies the role.+role_roleName :: Lens.Lens' Role Prelude.Text+role_roleName = Lens.lens (\Role' {roleName} -> roleName) (\s@Role' {} a -> s {roleName = a} :: Role)++-- | The stable and unique string identifying the role. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+role_roleId :: Lens.Lens' Role Prelude.Text+role_roleId = Lens.lens (\Role' {roleId} -> roleId) (\s@Role' {} a -> s {roleId = a} :: Role)++-- | The Amazon Resource Name (ARN) specifying the role. For more information+-- about ARNs and how to use them in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/ guide.+role_arn :: Lens.Lens' Role Prelude.Text+role_arn = Lens.lens (\Role' {arn} -> arn) (\s@Role' {} a -> s {arn = a} :: Role)++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- role was created.+role_createDate :: Lens.Lens' Role Prelude.UTCTime+role_createDate = Lens.lens (\Role' {createDate} -> createDate) (\s@Role' {} a -> s {createDate = a} :: Role) Prelude.. Data._Time++instance Data.FromXML Role where+ parseXML x =+ Role'+ Prelude.<$> (x Data..@? "AssumeRolePolicyDocument")+ Prelude.<*> (x Data..@? "Description")+ Prelude.<*> (x Data..@? "MaxSessionDuration")+ Prelude.<*> (x Data..@? "PermissionsBoundary")+ Prelude.<*> (x Data..@? "RoleLastUsed")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@ "Path")+ Prelude.<*> (x Data..@ "RoleName")+ Prelude.<*> (x Data..@ "RoleId")+ Prelude.<*> (x Data..@ "Arn")+ Prelude.<*> (x Data..@ "CreateDate")++instance Prelude.Hashable Role where+ hashWithSalt _salt Role' {..} =+ _salt+ `Prelude.hashWithSalt` assumeRolePolicyDocument+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` maxSessionDuration+ `Prelude.hashWithSalt` permissionsBoundary+ `Prelude.hashWithSalt` roleLastUsed+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` roleId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createDate++instance Prelude.NFData Role where+ rnf Role' {..} =+ Prelude.rnf assumeRolePolicyDocument+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf maxSessionDuration+ `Prelude.seq` Prelude.rnf permissionsBoundary+ `Prelude.seq` Prelude.rnf roleLastUsed+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf roleId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createDate
+ gen/Amazonka/IAM/Types/RoleDetail.hs view
@@ -0,0 +1,294 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.RoleDetail+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.RoleDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.AttachedPermissionsBoundary+import Amazonka.IAM.Types.AttachedPolicy+import Amazonka.IAM.Types.InstanceProfile+import Amazonka.IAM.Types.PolicyDetail+import Amazonka.IAM.Types.RoleLastUsed+import Amazonka.IAM.Types.Tag+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an IAM role, including all of the role\'s+-- policies.+--+-- This data type is used as a response element in the+-- GetAccountAuthorizationDetails operation.+--+-- /See:/ 'newRoleDetail' smart constructor.+data RoleDetail = RoleDetail'+ { arn :: Prelude.Maybe Prelude.Text,+ -- | The trust policy that grants permission to assume the role.+ assumeRolePolicyDocument :: Prelude.Maybe Prelude.Text,+ -- | A list of managed policies attached to the role. These policies are the+ -- role\'s access (permissions) policies.+ attachedManagedPolicies :: Prelude.Maybe [AttachedPolicy],+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- role was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | A list of instance profiles that contain this role.+ instanceProfileList :: Prelude.Maybe [InstanceProfile],+ -- | The path to the role. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the policy used to set the permissions boundary for the role.+ --+ -- For more information about permissions boundaries, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+ -- in the /IAM User Guide/.+ permissionsBoundary :: Prelude.Maybe AttachedPermissionsBoundary,+ -- | The stable and unique string identifying the role. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ roleId :: Prelude.Maybe Prelude.Text,+ -- | Contains information about the last time that an IAM role was used. This+ -- includes the date and time and the Region in which the role was last+ -- used. Activity is only reported for the trailing 400 days. This period+ -- can be shorter if your Region began supporting these features within the+ -- last year. The role might have been used more than 400 days ago. For+ -- more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+ -- in the /IAM User Guide/.+ roleLastUsed :: Prelude.Maybe RoleLastUsed,+ -- | The friendly name that identifies the role.+ roleName :: Prelude.Maybe Prelude.Text,+ -- | A list of inline policies embedded in the role. These policies are the+ -- role\'s access (permissions) policies.+ rolePolicyList :: Prelude.Maybe [PolicyDetail],+ -- | A list of tags that are attached to the role. For more information about+ -- tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RoleDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'roleDetail_arn' - Undocumented member.+--+-- 'assumeRolePolicyDocument', 'roleDetail_assumeRolePolicyDocument' - The trust policy that grants permission to assume the role.+--+-- 'attachedManagedPolicies', 'roleDetail_attachedManagedPolicies' - A list of managed policies attached to the role. These policies are the+-- role\'s access (permissions) policies.+--+-- 'createDate', 'roleDetail_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- role was created.+--+-- 'instanceProfileList', 'roleDetail_instanceProfileList' - A list of instance profiles that contain this role.+--+-- 'path', 'roleDetail_path' - The path to the role. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'permissionsBoundary', 'roleDetail_permissionsBoundary' - The ARN of the policy used to set the permissions boundary for the role.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+--+-- 'roleId', 'roleDetail_roleId' - The stable and unique string identifying the role. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'roleLastUsed', 'roleDetail_roleLastUsed' - Contains information about the last time that an IAM role was used. This+-- includes the date and time and the Region in which the role was last+-- used. Activity is only reported for the trailing 400 days. This period+-- can be shorter if your Region began supporting these features within the+-- last year. The role might have been used more than 400 days ago. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+-- in the /IAM User Guide/.+--+-- 'roleName', 'roleDetail_roleName' - The friendly name that identifies the role.+--+-- 'rolePolicyList', 'roleDetail_rolePolicyList' - A list of inline policies embedded in the role. These policies are the+-- role\'s access (permissions) policies.+--+-- 'tags', 'roleDetail_tags' - A list of tags that are attached to the role. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+newRoleDetail ::+ RoleDetail+newRoleDetail =+ RoleDetail'+ { arn = Prelude.Nothing,+ assumeRolePolicyDocument = Prelude.Nothing,+ attachedManagedPolicies = Prelude.Nothing,+ createDate = Prelude.Nothing,+ instanceProfileList = Prelude.Nothing,+ path = Prelude.Nothing,+ permissionsBoundary = Prelude.Nothing,+ roleId = Prelude.Nothing,+ roleLastUsed = Prelude.Nothing,+ roleName = Prelude.Nothing,+ rolePolicyList = Prelude.Nothing,+ tags = Prelude.Nothing+ }++-- | Undocumented member.+roleDetail_arn :: Lens.Lens' RoleDetail (Prelude.Maybe Prelude.Text)+roleDetail_arn = Lens.lens (\RoleDetail' {arn} -> arn) (\s@RoleDetail' {} a -> s {arn = a} :: RoleDetail)++-- | The trust policy that grants permission to assume the role.+roleDetail_assumeRolePolicyDocument :: Lens.Lens' RoleDetail (Prelude.Maybe Prelude.Text)+roleDetail_assumeRolePolicyDocument = Lens.lens (\RoleDetail' {assumeRolePolicyDocument} -> assumeRolePolicyDocument) (\s@RoleDetail' {} a -> s {assumeRolePolicyDocument = a} :: RoleDetail)++-- | A list of managed policies attached to the role. These policies are the+-- role\'s access (permissions) policies.+roleDetail_attachedManagedPolicies :: Lens.Lens' RoleDetail (Prelude.Maybe [AttachedPolicy])+roleDetail_attachedManagedPolicies = Lens.lens (\RoleDetail' {attachedManagedPolicies} -> attachedManagedPolicies) (\s@RoleDetail' {} a -> s {attachedManagedPolicies = a} :: RoleDetail) Prelude.. Lens.mapping Lens.coerced++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- role was created.+roleDetail_createDate :: Lens.Lens' RoleDetail (Prelude.Maybe Prelude.UTCTime)+roleDetail_createDate = Lens.lens (\RoleDetail' {createDate} -> createDate) (\s@RoleDetail' {} a -> s {createDate = a} :: RoleDetail) Prelude.. Lens.mapping Data._Time++-- | A list of instance profiles that contain this role.+roleDetail_instanceProfileList :: Lens.Lens' RoleDetail (Prelude.Maybe [InstanceProfile])+roleDetail_instanceProfileList = Lens.lens (\RoleDetail' {instanceProfileList} -> instanceProfileList) (\s@RoleDetail' {} a -> s {instanceProfileList = a} :: RoleDetail) Prelude.. Lens.mapping Lens.coerced++-- | The path to the role. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+roleDetail_path :: Lens.Lens' RoleDetail (Prelude.Maybe Prelude.Text)+roleDetail_path = Lens.lens (\RoleDetail' {path} -> path) (\s@RoleDetail' {} a -> s {path = a} :: RoleDetail)++-- | The ARN of the policy used to set the permissions boundary for the role.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+roleDetail_permissionsBoundary :: Lens.Lens' RoleDetail (Prelude.Maybe AttachedPermissionsBoundary)+roleDetail_permissionsBoundary = Lens.lens (\RoleDetail' {permissionsBoundary} -> permissionsBoundary) (\s@RoleDetail' {} a -> s {permissionsBoundary = a} :: RoleDetail)++-- | The stable and unique string identifying the role. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+roleDetail_roleId :: Lens.Lens' RoleDetail (Prelude.Maybe Prelude.Text)+roleDetail_roleId = Lens.lens (\RoleDetail' {roleId} -> roleId) (\s@RoleDetail' {} a -> s {roleId = a} :: RoleDetail)++-- | Contains information about the last time that an IAM role was used. This+-- includes the date and time and the Region in which the role was last+-- used. Activity is only reported for the trailing 400 days. This period+-- can be shorter if your Region began supporting these features within the+-- last year. The role might have been used more than 400 days ago. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+-- in the /IAM User Guide/.+roleDetail_roleLastUsed :: Lens.Lens' RoleDetail (Prelude.Maybe RoleLastUsed)+roleDetail_roleLastUsed = Lens.lens (\RoleDetail' {roleLastUsed} -> roleLastUsed) (\s@RoleDetail' {} a -> s {roleLastUsed = a} :: RoleDetail)++-- | The friendly name that identifies the role.+roleDetail_roleName :: Lens.Lens' RoleDetail (Prelude.Maybe Prelude.Text)+roleDetail_roleName = Lens.lens (\RoleDetail' {roleName} -> roleName) (\s@RoleDetail' {} a -> s {roleName = a} :: RoleDetail)++-- | A list of inline policies embedded in the role. These policies are the+-- role\'s access (permissions) policies.+roleDetail_rolePolicyList :: Lens.Lens' RoleDetail (Prelude.Maybe [PolicyDetail])+roleDetail_rolePolicyList = Lens.lens (\RoleDetail' {rolePolicyList} -> rolePolicyList) (\s@RoleDetail' {} a -> s {rolePolicyList = a} :: RoleDetail) Prelude.. Lens.mapping Lens.coerced++-- | A list of tags that are attached to the role. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+roleDetail_tags :: Lens.Lens' RoleDetail (Prelude.Maybe [Tag])+roleDetail_tags = Lens.lens (\RoleDetail' {tags} -> tags) (\s@RoleDetail' {} a -> s {tags = a} :: RoleDetail) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML RoleDetail where+ parseXML x =+ RoleDetail'+ Prelude.<$> (x Data..@? "Arn")+ Prelude.<*> (x Data..@? "AssumeRolePolicyDocument")+ Prelude.<*> ( x+ Data..@? "AttachedManagedPolicies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "CreateDate")+ Prelude.<*> ( x+ Data..@? "InstanceProfileList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "Path")+ Prelude.<*> (x Data..@? "PermissionsBoundary")+ Prelude.<*> (x Data..@? "RoleId")+ Prelude.<*> (x Data..@? "RoleLastUsed")+ Prelude.<*> (x Data..@? "RoleName")+ Prelude.<*> ( x+ Data..@? "RolePolicyList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )++instance Prelude.Hashable RoleDetail where+ hashWithSalt _salt RoleDetail' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` assumeRolePolicyDocument+ `Prelude.hashWithSalt` attachedManagedPolicies+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` instanceProfileList+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` permissionsBoundary+ `Prelude.hashWithSalt` roleId+ `Prelude.hashWithSalt` roleLastUsed+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` rolePolicyList+ `Prelude.hashWithSalt` tags++instance Prelude.NFData RoleDetail where+ rnf RoleDetail' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf assumeRolePolicyDocument+ `Prelude.seq` Prelude.rnf attachedManagedPolicies+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf instanceProfileList+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf permissionsBoundary+ `Prelude.seq` Prelude.rnf roleId+ `Prelude.seq` Prelude.rnf roleLastUsed+ `Prelude.seq` Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf rolePolicyList+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/IAM/Types/RoleLastUsed.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.RoleLastUsed+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.RoleLastUsed where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about the last time that an IAM role was used. This+-- includes the date and time and the Region in which the role was last+-- used. Activity is only reported for the trailing 400 days. This period+-- can be shorter if your Region began supporting these features within the+-- last year. The role might have been used more than 400 days ago. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+-- in the /IAM User Guide/.+--+-- This data type is returned as a response element in the GetRole and+-- GetAccountAuthorizationDetails operations.+--+-- /See:/ 'newRoleLastUsed' smart constructor.+data RoleLastUsed = RoleLastUsed'+ { -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> that the+ -- role was last used.+ --+ -- This field is null if the role has not been used within the IAM tracking+ -- period. For more information about the tracking period, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+ -- in the /IAM User Guide/.+ lastUsedDate :: Prelude.Maybe Data.ISO8601,+ -- | The name of the Amazon Web Services Region in which the role was last+ -- used.+ region :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RoleLastUsed' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lastUsedDate', 'roleLastUsed_lastUsedDate' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> that the+-- role was last used.+--+-- This field is null if the role has not been used within the IAM tracking+-- period. For more information about the tracking period, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+-- in the /IAM User Guide/.+--+-- 'region', 'roleLastUsed_region' - The name of the Amazon Web Services Region in which the role was last+-- used.+newRoleLastUsed ::+ RoleLastUsed+newRoleLastUsed =+ RoleLastUsed'+ { lastUsedDate = Prelude.Nothing,+ region = Prelude.Nothing+ }++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> that the+-- role was last used.+--+-- This field is null if the role has not been used within the IAM tracking+-- period. For more information about the tracking period, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#access-advisor_tracking-period Regions where data is tracked>+-- in the /IAM User Guide/.+roleLastUsed_lastUsedDate :: Lens.Lens' RoleLastUsed (Prelude.Maybe Prelude.UTCTime)+roleLastUsed_lastUsedDate = Lens.lens (\RoleLastUsed' {lastUsedDate} -> lastUsedDate) (\s@RoleLastUsed' {} a -> s {lastUsedDate = a} :: RoleLastUsed) Prelude.. Lens.mapping Data._Time++-- | The name of the Amazon Web Services Region in which the role was last+-- used.+roleLastUsed_region :: Lens.Lens' RoleLastUsed (Prelude.Maybe Prelude.Text)+roleLastUsed_region = Lens.lens (\RoleLastUsed' {region} -> region) (\s@RoleLastUsed' {} a -> s {region = a} :: RoleLastUsed)++instance Data.FromXML RoleLastUsed where+ parseXML x =+ RoleLastUsed'+ Prelude.<$> (x Data..@? "LastUsedDate")+ Prelude.<*> (x Data..@? "Region")++instance Prelude.Hashable RoleLastUsed where+ hashWithSalt _salt RoleLastUsed' {..} =+ _salt+ `Prelude.hashWithSalt` lastUsedDate+ `Prelude.hashWithSalt` region++instance Prelude.NFData RoleLastUsed where+ rnf RoleLastUsed' {..} =+ Prelude.rnf lastUsedDate+ `Prelude.seq` Prelude.rnf region
+ gen/Amazonka/IAM/Types/RoleUsageType.hs view
@@ -0,0 +1,88 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.RoleUsageType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.RoleUsageType where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | An object that contains details about how a service-linked role is used,+-- if that information is returned by the service.+--+-- This data type is used as a response element in the+-- GetServiceLinkedRoleDeletionStatus operation.+--+-- /See:/ 'newRoleUsageType' smart constructor.+data RoleUsageType = RoleUsageType'+ { -- | The name of the Region where the service-linked role is being used.+ region :: Prelude.Maybe Prelude.Text,+ -- | The name of the resource that is using the service-linked role.+ resources :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RoleUsageType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'region', 'roleUsageType_region' - The name of the Region where the service-linked role is being used.+--+-- 'resources', 'roleUsageType_resources' - The name of the resource that is using the service-linked role.+newRoleUsageType ::+ RoleUsageType+newRoleUsageType =+ RoleUsageType'+ { region = Prelude.Nothing,+ resources = Prelude.Nothing+ }++-- | The name of the Region where the service-linked role is being used.+roleUsageType_region :: Lens.Lens' RoleUsageType (Prelude.Maybe Prelude.Text)+roleUsageType_region = Lens.lens (\RoleUsageType' {region} -> region) (\s@RoleUsageType' {} a -> s {region = a} :: RoleUsageType)++-- | The name of the resource that is using the service-linked role.+roleUsageType_resources :: Lens.Lens' RoleUsageType (Prelude.Maybe [Prelude.Text])+roleUsageType_resources = Lens.lens (\RoleUsageType' {resources} -> resources) (\s@RoleUsageType' {} a -> s {resources = a} :: RoleUsageType) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML RoleUsageType where+ parseXML x =+ RoleUsageType'+ Prelude.<$> (x Data..@? "Region")+ Prelude.<*> ( x+ Data..@? "Resources"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )++instance Prelude.Hashable RoleUsageType where+ hashWithSalt _salt RoleUsageType' {..} =+ _salt+ `Prelude.hashWithSalt` region+ `Prelude.hashWithSalt` resources++instance Prelude.NFData RoleUsageType where+ rnf RoleUsageType' {..} =+ Prelude.rnf region+ `Prelude.seq` Prelude.rnf resources
+ gen/Amazonka/IAM/Types/SAMLProviderListEntry.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.SAMLProviderListEntry+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.SAMLProviderListEntry where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains the list of SAML providers for this account.+--+-- /See:/ 'newSAMLProviderListEntry' smart constructor.+data SAMLProviderListEntry = SAMLProviderListEntry'+ { -- | The Amazon Resource Name (ARN) of the SAML provider.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time when the SAML provider was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | The expiration date and time for the SAML provider.+ validUntil :: Prelude.Maybe Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SAMLProviderListEntry' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'sAMLProviderListEntry_arn' - The Amazon Resource Name (ARN) of the SAML provider.+--+-- 'createDate', 'sAMLProviderListEntry_createDate' - The date and time when the SAML provider was created.+--+-- 'validUntil', 'sAMLProviderListEntry_validUntil' - The expiration date and time for the SAML provider.+newSAMLProviderListEntry ::+ SAMLProviderListEntry+newSAMLProviderListEntry =+ SAMLProviderListEntry'+ { arn = Prelude.Nothing,+ createDate = Prelude.Nothing,+ validUntil = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the SAML provider.+sAMLProviderListEntry_arn :: Lens.Lens' SAMLProviderListEntry (Prelude.Maybe Prelude.Text)+sAMLProviderListEntry_arn = Lens.lens (\SAMLProviderListEntry' {arn} -> arn) (\s@SAMLProviderListEntry' {} a -> s {arn = a} :: SAMLProviderListEntry)++-- | The date and time when the SAML provider was created.+sAMLProviderListEntry_createDate :: Lens.Lens' SAMLProviderListEntry (Prelude.Maybe Prelude.UTCTime)+sAMLProviderListEntry_createDate = Lens.lens (\SAMLProviderListEntry' {createDate} -> createDate) (\s@SAMLProviderListEntry' {} a -> s {createDate = a} :: SAMLProviderListEntry) Prelude.. Lens.mapping Data._Time++-- | The expiration date and time for the SAML provider.+sAMLProviderListEntry_validUntil :: Lens.Lens' SAMLProviderListEntry (Prelude.Maybe Prelude.UTCTime)+sAMLProviderListEntry_validUntil = Lens.lens (\SAMLProviderListEntry' {validUntil} -> validUntil) (\s@SAMLProviderListEntry' {} a -> s {validUntil = a} :: SAMLProviderListEntry) Prelude.. Lens.mapping Data._Time++instance Data.FromXML SAMLProviderListEntry where+ parseXML x =+ SAMLProviderListEntry'+ Prelude.<$> (x Data..@? "Arn")+ Prelude.<*> (x Data..@? "CreateDate")+ Prelude.<*> (x Data..@? "ValidUntil")++instance Prelude.Hashable SAMLProviderListEntry where+ hashWithSalt _salt SAMLProviderListEntry' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` validUntil++instance Prelude.NFData SAMLProviderListEntry where+ rnf SAMLProviderListEntry' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf validUntil
+ gen/Amazonka/IAM/Types/SSHPublicKey.hs view
@@ -0,0 +1,159 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.SSHPublicKey+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.SSHPublicKey where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.StatusType+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an SSH public key.+--+-- This data type is used as a response element in the GetSSHPublicKey and+-- UploadSSHPublicKey operations.+--+-- /See:/ 'newSSHPublicKey' smart constructor.+data SSHPublicKey = SSHPublicKey'+ { -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the SSH+ -- public key was uploaded.+ uploadDate :: Prelude.Maybe Data.ISO8601,+ -- | The name of the IAM user associated with the SSH public key.+ userName :: Prelude.Text,+ -- | The unique identifier for the SSH public key.+ sSHPublicKeyId :: Prelude.Text,+ -- | The MD5 message digest of the SSH public key.+ fingerprint :: Prelude.Text,+ -- | The SSH public key.+ sSHPublicKeyBody :: Prelude.Text,+ -- | The status of the SSH public key. @Active@ means that the key can be+ -- used for authentication with an CodeCommit repository. @Inactive@ means+ -- that the key cannot be used.+ status :: StatusType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SSHPublicKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'uploadDate', 'sSHPublicKey_uploadDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the SSH+-- public key was uploaded.+--+-- 'userName', 'sSHPublicKey_userName' - The name of the IAM user associated with the SSH public key.+--+-- 'sSHPublicKeyId', 'sSHPublicKey_sSHPublicKeyId' - The unique identifier for the SSH public key.+--+-- 'fingerprint', 'sSHPublicKey_fingerprint' - The MD5 message digest of the SSH public key.+--+-- 'sSHPublicKeyBody', 'sSHPublicKey_sSHPublicKeyBody' - The SSH public key.+--+-- 'status', 'sSHPublicKey_status' - The status of the SSH public key. @Active@ means that the key can be+-- used for authentication with an CodeCommit repository. @Inactive@ means+-- that the key cannot be used.+newSSHPublicKey ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'sSHPublicKeyId'+ Prelude.Text ->+ -- | 'fingerprint'+ Prelude.Text ->+ -- | 'sSHPublicKeyBody'+ Prelude.Text ->+ -- | 'status'+ StatusType ->+ SSHPublicKey+newSSHPublicKey+ pUserName_+ pSSHPublicKeyId_+ pFingerprint_+ pSSHPublicKeyBody_+ pStatus_ =+ SSHPublicKey'+ { uploadDate = Prelude.Nothing,+ userName = pUserName_,+ sSHPublicKeyId = pSSHPublicKeyId_,+ fingerprint = pFingerprint_,+ sSHPublicKeyBody = pSSHPublicKeyBody_,+ status = pStatus_+ }++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the SSH+-- public key was uploaded.+sSHPublicKey_uploadDate :: Lens.Lens' SSHPublicKey (Prelude.Maybe Prelude.UTCTime)+sSHPublicKey_uploadDate = Lens.lens (\SSHPublicKey' {uploadDate} -> uploadDate) (\s@SSHPublicKey' {} a -> s {uploadDate = a} :: SSHPublicKey) Prelude.. Lens.mapping Data._Time++-- | The name of the IAM user associated with the SSH public key.+sSHPublicKey_userName :: Lens.Lens' SSHPublicKey Prelude.Text+sSHPublicKey_userName = Lens.lens (\SSHPublicKey' {userName} -> userName) (\s@SSHPublicKey' {} a -> s {userName = a} :: SSHPublicKey)++-- | The unique identifier for the SSH public key.+sSHPublicKey_sSHPublicKeyId :: Lens.Lens' SSHPublicKey Prelude.Text+sSHPublicKey_sSHPublicKeyId = Lens.lens (\SSHPublicKey' {sSHPublicKeyId} -> sSHPublicKeyId) (\s@SSHPublicKey' {} a -> s {sSHPublicKeyId = a} :: SSHPublicKey)++-- | The MD5 message digest of the SSH public key.+sSHPublicKey_fingerprint :: Lens.Lens' SSHPublicKey Prelude.Text+sSHPublicKey_fingerprint = Lens.lens (\SSHPublicKey' {fingerprint} -> fingerprint) (\s@SSHPublicKey' {} a -> s {fingerprint = a} :: SSHPublicKey)++-- | The SSH public key.+sSHPublicKey_sSHPublicKeyBody :: Lens.Lens' SSHPublicKey Prelude.Text+sSHPublicKey_sSHPublicKeyBody = Lens.lens (\SSHPublicKey' {sSHPublicKeyBody} -> sSHPublicKeyBody) (\s@SSHPublicKey' {} a -> s {sSHPublicKeyBody = a} :: SSHPublicKey)++-- | The status of the SSH public key. @Active@ means that the key can be+-- used for authentication with an CodeCommit repository. @Inactive@ means+-- that the key cannot be used.+sSHPublicKey_status :: Lens.Lens' SSHPublicKey StatusType+sSHPublicKey_status = Lens.lens (\SSHPublicKey' {status} -> status) (\s@SSHPublicKey' {} a -> s {status = a} :: SSHPublicKey)++instance Data.FromXML SSHPublicKey where+ parseXML x =+ SSHPublicKey'+ Prelude.<$> (x Data..@? "UploadDate")+ Prelude.<*> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "SSHPublicKeyId")+ Prelude.<*> (x Data..@ "Fingerprint")+ Prelude.<*> (x Data..@ "SSHPublicKeyBody")+ Prelude.<*> (x Data..@ "Status")++instance Prelude.Hashable SSHPublicKey where+ hashWithSalt _salt SSHPublicKey' {..} =+ _salt+ `Prelude.hashWithSalt` uploadDate+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` sSHPublicKeyId+ `Prelude.hashWithSalt` fingerprint+ `Prelude.hashWithSalt` sSHPublicKeyBody+ `Prelude.hashWithSalt` status++instance Prelude.NFData SSHPublicKey where+ rnf SSHPublicKey' {..} =+ Prelude.rnf uploadDate+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf sSHPublicKeyId+ `Prelude.seq` Prelude.rnf fingerprint+ `Prelude.seq` Prelude.rnf sSHPublicKeyBody+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/IAM/Types/SSHPublicKeyMetadata.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.SSHPublicKeyMetadata+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.SSHPublicKeyMetadata where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.StatusType+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an SSH public key, without the key\'s body or+-- fingerprint.+--+-- This data type is used as a response element in the ListSSHPublicKeys+-- operation.+--+-- /See:/ 'newSSHPublicKeyMetadata' smart constructor.+data SSHPublicKeyMetadata = SSHPublicKeyMetadata'+ { -- | The name of the IAM user associated with the SSH public key.+ userName :: Prelude.Text,+ -- | The unique identifier for the SSH public key.+ sSHPublicKeyId :: Prelude.Text,+ -- | The status of the SSH public key. @Active@ means that the key can be+ -- used for authentication with an CodeCommit repository. @Inactive@ means+ -- that the key cannot be used.+ status :: StatusType,+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the SSH+ -- public key was uploaded.+ uploadDate :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SSHPublicKeyMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'sSHPublicKeyMetadata_userName' - The name of the IAM user associated with the SSH public key.+--+-- 'sSHPublicKeyId', 'sSHPublicKeyMetadata_sSHPublicKeyId' - The unique identifier for the SSH public key.+--+-- 'status', 'sSHPublicKeyMetadata_status' - The status of the SSH public key. @Active@ means that the key can be+-- used for authentication with an CodeCommit repository. @Inactive@ means+-- that the key cannot be used.+--+-- 'uploadDate', 'sSHPublicKeyMetadata_uploadDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the SSH+-- public key was uploaded.+newSSHPublicKeyMetadata ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'sSHPublicKeyId'+ Prelude.Text ->+ -- | 'status'+ StatusType ->+ -- | 'uploadDate'+ Prelude.UTCTime ->+ SSHPublicKeyMetadata+newSSHPublicKeyMetadata+ pUserName_+ pSSHPublicKeyId_+ pStatus_+ pUploadDate_ =+ SSHPublicKeyMetadata'+ { userName = pUserName_,+ sSHPublicKeyId = pSSHPublicKeyId_,+ status = pStatus_,+ uploadDate = Data._Time Lens.# pUploadDate_+ }++-- | The name of the IAM user associated with the SSH public key.+sSHPublicKeyMetadata_userName :: Lens.Lens' SSHPublicKeyMetadata Prelude.Text+sSHPublicKeyMetadata_userName = Lens.lens (\SSHPublicKeyMetadata' {userName} -> userName) (\s@SSHPublicKeyMetadata' {} a -> s {userName = a} :: SSHPublicKeyMetadata)++-- | The unique identifier for the SSH public key.+sSHPublicKeyMetadata_sSHPublicKeyId :: Lens.Lens' SSHPublicKeyMetadata Prelude.Text+sSHPublicKeyMetadata_sSHPublicKeyId = Lens.lens (\SSHPublicKeyMetadata' {sSHPublicKeyId} -> sSHPublicKeyId) (\s@SSHPublicKeyMetadata' {} a -> s {sSHPublicKeyId = a} :: SSHPublicKeyMetadata)++-- | The status of the SSH public key. @Active@ means that the key can be+-- used for authentication with an CodeCommit repository. @Inactive@ means+-- that the key cannot be used.+sSHPublicKeyMetadata_status :: Lens.Lens' SSHPublicKeyMetadata StatusType+sSHPublicKeyMetadata_status = Lens.lens (\SSHPublicKeyMetadata' {status} -> status) (\s@SSHPublicKeyMetadata' {} a -> s {status = a} :: SSHPublicKeyMetadata)++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the SSH+-- public key was uploaded.+sSHPublicKeyMetadata_uploadDate :: Lens.Lens' SSHPublicKeyMetadata Prelude.UTCTime+sSHPublicKeyMetadata_uploadDate = Lens.lens (\SSHPublicKeyMetadata' {uploadDate} -> uploadDate) (\s@SSHPublicKeyMetadata' {} a -> s {uploadDate = a} :: SSHPublicKeyMetadata) Prelude.. Data._Time++instance Data.FromXML SSHPublicKeyMetadata where+ parseXML x =+ SSHPublicKeyMetadata'+ Prelude.<$> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "SSHPublicKeyId")+ Prelude.<*> (x Data..@ "Status")+ Prelude.<*> (x Data..@ "UploadDate")++instance Prelude.Hashable SSHPublicKeyMetadata where+ hashWithSalt _salt SSHPublicKeyMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` sSHPublicKeyId+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` uploadDate++instance Prelude.NFData SSHPublicKeyMetadata where+ rnf SSHPublicKeyMetadata' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf sSHPublicKeyId+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf uploadDate
+ gen/Amazonka/IAM/Types/ServerCertificate.hs view
@@ -0,0 +1,133 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ServerCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ServerCertificate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.ServerCertificateMetadata+import Amazonka.IAM.Types.Tag+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a server certificate.+--+-- This data type is used as a response element in the GetServerCertificate+-- operation.+--+-- /See:/ 'newServerCertificate' smart constructor.+data ServerCertificate = ServerCertificate'+ { -- | The contents of the public key certificate chain.+ certificateChain :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that are attached to the server certificate. For more+ -- information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The meta information of the server certificate, such as its name, path,+ -- ID, and ARN.+ serverCertificateMetadata :: ServerCertificateMetadata,+ -- | The contents of the public key certificate.+ certificateBody :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ServerCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'certificateChain', 'serverCertificate_certificateChain' - The contents of the public key certificate chain.+--+-- 'tags', 'serverCertificate_tags' - A list of tags that are attached to the server certificate. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'serverCertificateMetadata', 'serverCertificate_serverCertificateMetadata' - The meta information of the server certificate, such as its name, path,+-- ID, and ARN.+--+-- 'certificateBody', 'serverCertificate_certificateBody' - The contents of the public key certificate.+newServerCertificate ::+ -- | 'serverCertificateMetadata'+ ServerCertificateMetadata ->+ -- | 'certificateBody'+ Prelude.Text ->+ ServerCertificate+newServerCertificate+ pServerCertificateMetadata_+ pCertificateBody_ =+ ServerCertificate'+ { certificateChain =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ serverCertificateMetadata =+ pServerCertificateMetadata_,+ certificateBody = pCertificateBody_+ }++-- | The contents of the public key certificate chain.+serverCertificate_certificateChain :: Lens.Lens' ServerCertificate (Prelude.Maybe Prelude.Text)+serverCertificate_certificateChain = Lens.lens (\ServerCertificate' {certificateChain} -> certificateChain) (\s@ServerCertificate' {} a -> s {certificateChain = a} :: ServerCertificate)++-- | A list of tags that are attached to the server certificate. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+serverCertificate_tags :: Lens.Lens' ServerCertificate (Prelude.Maybe [Tag])+serverCertificate_tags = Lens.lens (\ServerCertificate' {tags} -> tags) (\s@ServerCertificate' {} a -> s {tags = a} :: ServerCertificate) Prelude.. Lens.mapping Lens.coerced++-- | The meta information of the server certificate, such as its name, path,+-- ID, and ARN.+serverCertificate_serverCertificateMetadata :: Lens.Lens' ServerCertificate ServerCertificateMetadata+serverCertificate_serverCertificateMetadata = Lens.lens (\ServerCertificate' {serverCertificateMetadata} -> serverCertificateMetadata) (\s@ServerCertificate' {} a -> s {serverCertificateMetadata = a} :: ServerCertificate)++-- | The contents of the public key certificate.+serverCertificate_certificateBody :: Lens.Lens' ServerCertificate Prelude.Text+serverCertificate_certificateBody = Lens.lens (\ServerCertificate' {certificateBody} -> certificateBody) (\s@ServerCertificate' {} a -> s {certificateBody = a} :: ServerCertificate)++instance Data.FromXML ServerCertificate where+ parseXML x =+ ServerCertificate'+ Prelude.<$> (x Data..@? "CertificateChain")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@ "ServerCertificateMetadata")+ Prelude.<*> (x Data..@ "CertificateBody")++instance Prelude.Hashable ServerCertificate where+ hashWithSalt _salt ServerCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` certificateChain+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` serverCertificateMetadata+ `Prelude.hashWithSalt` certificateBody++instance Prelude.NFData ServerCertificate where+ rnf ServerCertificate' {..} =+ Prelude.rnf certificateChain+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf serverCertificateMetadata+ `Prelude.seq` Prelude.rnf certificateBody
+ gen/Amazonka/IAM/Types/ServerCertificateMetadata.hs view
@@ -0,0 +1,172 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ServerCertificateMetadata+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ServerCertificateMetadata where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a server certificate without its certificate+-- body, certificate chain, and private key.+--+-- This data type is used as a response element in the+-- UploadServerCertificate and ListServerCertificates operations.+--+-- /See:/ 'newServerCertificateMetadata' smart constructor.+data ServerCertificateMetadata = ServerCertificateMetadata'+ { -- | The date on which the certificate is set to expire.+ expiration :: Prelude.Maybe Data.ISO8601,+ -- | The date when the server certificate was uploaded.+ uploadDate :: Prelude.Maybe Data.ISO8601,+ -- | The path to the server certificate. For more information about paths,+ -- see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Text,+ -- | The name that identifies the server certificate.+ serverCertificateName :: Prelude.Text,+ -- | The stable and unique string identifying the server certificate. For+ -- more information about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ serverCertificateId :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) specifying the server certificate. For+ -- more information about ARNs and how to use them in policies, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ arn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ServerCertificateMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'expiration', 'serverCertificateMetadata_expiration' - The date on which the certificate is set to expire.+--+-- 'uploadDate', 'serverCertificateMetadata_uploadDate' - The date when the server certificate was uploaded.+--+-- 'path', 'serverCertificateMetadata_path' - The path to the server certificate. For more information about paths,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'serverCertificateName', 'serverCertificateMetadata_serverCertificateName' - The name that identifies the server certificate.+--+-- 'serverCertificateId', 'serverCertificateMetadata_serverCertificateId' - The stable and unique string identifying the server certificate. For+-- more information about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'arn', 'serverCertificateMetadata_arn' - The Amazon Resource Name (ARN) specifying the server certificate. For+-- more information about ARNs and how to use them in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+newServerCertificateMetadata ::+ -- | 'path'+ Prelude.Text ->+ -- | 'serverCertificateName'+ Prelude.Text ->+ -- | 'serverCertificateId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ ServerCertificateMetadata+newServerCertificateMetadata+ pPath_+ pServerCertificateName_+ pServerCertificateId_+ pArn_ =+ ServerCertificateMetadata'+ { expiration =+ Prelude.Nothing,+ uploadDate = Prelude.Nothing,+ path = pPath_,+ serverCertificateName = pServerCertificateName_,+ serverCertificateId = pServerCertificateId_,+ arn = pArn_+ }++-- | The date on which the certificate is set to expire.+serverCertificateMetadata_expiration :: Lens.Lens' ServerCertificateMetadata (Prelude.Maybe Prelude.UTCTime)+serverCertificateMetadata_expiration = Lens.lens (\ServerCertificateMetadata' {expiration} -> expiration) (\s@ServerCertificateMetadata' {} a -> s {expiration = a} :: ServerCertificateMetadata) Prelude.. Lens.mapping Data._Time++-- | The date when the server certificate was uploaded.+serverCertificateMetadata_uploadDate :: Lens.Lens' ServerCertificateMetadata (Prelude.Maybe Prelude.UTCTime)+serverCertificateMetadata_uploadDate = Lens.lens (\ServerCertificateMetadata' {uploadDate} -> uploadDate) (\s@ServerCertificateMetadata' {} a -> s {uploadDate = a} :: ServerCertificateMetadata) Prelude.. Lens.mapping Data._Time++-- | The path to the server certificate. For more information about paths,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+serverCertificateMetadata_path :: Lens.Lens' ServerCertificateMetadata Prelude.Text+serverCertificateMetadata_path = Lens.lens (\ServerCertificateMetadata' {path} -> path) (\s@ServerCertificateMetadata' {} a -> s {path = a} :: ServerCertificateMetadata)++-- | The name that identifies the server certificate.+serverCertificateMetadata_serverCertificateName :: Lens.Lens' ServerCertificateMetadata Prelude.Text+serverCertificateMetadata_serverCertificateName = Lens.lens (\ServerCertificateMetadata' {serverCertificateName} -> serverCertificateName) (\s@ServerCertificateMetadata' {} a -> s {serverCertificateName = a} :: ServerCertificateMetadata)++-- | The stable and unique string identifying the server certificate. For+-- more information about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+serverCertificateMetadata_serverCertificateId :: Lens.Lens' ServerCertificateMetadata Prelude.Text+serverCertificateMetadata_serverCertificateId = Lens.lens (\ServerCertificateMetadata' {serverCertificateId} -> serverCertificateId) (\s@ServerCertificateMetadata' {} a -> s {serverCertificateId = a} :: ServerCertificateMetadata)++-- | The Amazon Resource Name (ARN) specifying the server certificate. For+-- more information about ARNs and how to use them in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+serverCertificateMetadata_arn :: Lens.Lens' ServerCertificateMetadata Prelude.Text+serverCertificateMetadata_arn = Lens.lens (\ServerCertificateMetadata' {arn} -> arn) (\s@ServerCertificateMetadata' {} a -> s {arn = a} :: ServerCertificateMetadata)++instance Data.FromXML ServerCertificateMetadata where+ parseXML x =+ ServerCertificateMetadata'+ Prelude.<$> (x Data..@? "Expiration")+ Prelude.<*> (x Data..@? "UploadDate")+ Prelude.<*> (x Data..@ "Path")+ Prelude.<*> (x Data..@ "ServerCertificateName")+ Prelude.<*> (x Data..@ "ServerCertificateId")+ Prelude.<*> (x Data..@ "Arn")++instance Prelude.Hashable ServerCertificateMetadata where+ hashWithSalt _salt ServerCertificateMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` expiration+ `Prelude.hashWithSalt` uploadDate+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` serverCertificateName+ `Prelude.hashWithSalt` serverCertificateId+ `Prelude.hashWithSalt` arn++instance Prelude.NFData ServerCertificateMetadata where+ rnf ServerCertificateMetadata' {..} =+ Prelude.rnf expiration+ `Prelude.seq` Prelude.rnf uploadDate+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf serverCertificateName+ `Prelude.seq` Prelude.rnf serverCertificateId+ `Prelude.seq` Prelude.rnf arn
+ gen/Amazonka/IAM/Types/ServiceLastAccessed.hs view
@@ -0,0 +1,278 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ServiceLastAccessed+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ServiceLastAccessed where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.TrackedActionLastAccessed+import qualified Amazonka.Prelude as Prelude++-- | Contains details about the most recent attempt to access the service.+--+-- This data type is used as a response element in the+-- GetServiceLastAccessedDetails operation.+--+-- /See:/ 'newServiceLastAccessed' smart constructor.+data ServiceLastAccessed = ServiceLastAccessed'+ { -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+ -- authenticated entity most recently attempted to access the service.+ -- Amazon Web Services does not report unauthenticated requests.+ --+ -- This field is null if no IAM entities attempted to access the service+ -- within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ lastAuthenticated :: Prelude.Maybe Data.ISO8601,+ -- | The ARN of the authenticated entity (user or role) that last attempted+ -- to access the service. Amazon Web Services does not report+ -- unauthenticated requests.+ --+ -- This field is null if no IAM entities attempted to access the service+ -- within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ lastAuthenticatedEntity :: Prelude.Maybe Prelude.Text,+ -- | The Region from which the authenticated entity (user or role) last+ -- attempted to access the service. Amazon Web Services does not report+ -- unauthenticated requests.+ --+ -- This field is null if no IAM entities attempted to access the service+ -- within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ lastAuthenticatedRegion :: Prelude.Maybe Prelude.Text,+ -- | The total number of authenticated principals (root user, IAM users, or+ -- IAM roles) that have attempted to access the service.+ --+ -- This field is null if no principals attempted to access the service+ -- within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ totalAuthenticatedEntities :: Prelude.Maybe Prelude.Int,+ -- | An object that contains details about the most recent attempt to access+ -- a tracked action within the service.+ --+ -- This field is null if there no tracked actions or if the principal did+ -- not use the tracked actions within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ -- This field is also null if the report was generated at the service level+ -- and not the action level. For more information, see the @Granularity@+ -- field in GenerateServiceLastAccessedDetails.+ trackedActionsLastAccessed :: Prelude.Maybe [TrackedActionLastAccessed],+ -- | The name of the service in which access was attempted.+ serviceName :: Prelude.Text,+ -- | The namespace of the service in which access was attempted.+ --+ -- To learn the service namespace of a service, see+ -- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+ -- in the /Service Authorization Reference/. Choose the name of the service+ -- to view details for that service. In the first paragraph, find the+ -- service prefix. For example, @(service prefix: a4b)@. For more+ -- information about service namespaces, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services Service Namespaces>+ -- in the /Amazon Web Services General Reference/.+ serviceNamespace :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ServiceLastAccessed' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lastAuthenticated', 'serviceLastAccessed_lastAuthenticated' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+-- authenticated entity most recently attempted to access the service.+-- Amazon Web Services does not report unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'lastAuthenticatedEntity', 'serviceLastAccessed_lastAuthenticatedEntity' - The ARN of the authenticated entity (user or role) that last attempted+-- to access the service. Amazon Web Services does not report+-- unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'lastAuthenticatedRegion', 'serviceLastAccessed_lastAuthenticatedRegion' - The Region from which the authenticated entity (user or role) last+-- attempted to access the service. Amazon Web Services does not report+-- unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'totalAuthenticatedEntities', 'serviceLastAccessed_totalAuthenticatedEntities' - The total number of authenticated principals (root user, IAM users, or+-- IAM roles) that have attempted to access the service.+--+-- This field is null if no principals attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'trackedActionsLastAccessed', 'serviceLastAccessed_trackedActionsLastAccessed' - An object that contains details about the most recent attempt to access+-- a tracked action within the service.+--+-- This field is null if there no tracked actions or if the principal did+-- not use the tracked actions within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+-- This field is also null if the report was generated at the service level+-- and not the action level. For more information, see the @Granularity@+-- field in GenerateServiceLastAccessedDetails.+--+-- 'serviceName', 'serviceLastAccessed_serviceName' - The name of the service in which access was attempted.+--+-- 'serviceNamespace', 'serviceLastAccessed_serviceNamespace' - The namespace of the service in which access was attempted.+--+-- To learn the service namespace of a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /Service Authorization Reference/. Choose the name of the service+-- to view details for that service. In the first paragraph, find the+-- service prefix. For example, @(service prefix: a4b)@. For more+-- information about service namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services Service Namespaces>+-- in the /Amazon Web Services General Reference/.+newServiceLastAccessed ::+ -- | 'serviceName'+ Prelude.Text ->+ -- | 'serviceNamespace'+ Prelude.Text ->+ ServiceLastAccessed+newServiceLastAccessed+ pServiceName_+ pServiceNamespace_ =+ ServiceLastAccessed'+ { lastAuthenticated =+ Prelude.Nothing,+ lastAuthenticatedEntity = Prelude.Nothing,+ lastAuthenticatedRegion = Prelude.Nothing,+ totalAuthenticatedEntities = Prelude.Nothing,+ trackedActionsLastAccessed = Prelude.Nothing,+ serviceName = pServiceName_,+ serviceNamespace = pServiceNamespace_+ }++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+-- authenticated entity most recently attempted to access the service.+-- Amazon Web Services does not report unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+serviceLastAccessed_lastAuthenticated :: Lens.Lens' ServiceLastAccessed (Prelude.Maybe Prelude.UTCTime)+serviceLastAccessed_lastAuthenticated = Lens.lens (\ServiceLastAccessed' {lastAuthenticated} -> lastAuthenticated) (\s@ServiceLastAccessed' {} a -> s {lastAuthenticated = a} :: ServiceLastAccessed) Prelude.. Lens.mapping Data._Time++-- | The ARN of the authenticated entity (user or role) that last attempted+-- to access the service. Amazon Web Services does not report+-- unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+serviceLastAccessed_lastAuthenticatedEntity :: Lens.Lens' ServiceLastAccessed (Prelude.Maybe Prelude.Text)+serviceLastAccessed_lastAuthenticatedEntity = Lens.lens (\ServiceLastAccessed' {lastAuthenticatedEntity} -> lastAuthenticatedEntity) (\s@ServiceLastAccessed' {} a -> s {lastAuthenticatedEntity = a} :: ServiceLastAccessed)++-- | The Region from which the authenticated entity (user or role) last+-- attempted to access the service. Amazon Web Services does not report+-- unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+serviceLastAccessed_lastAuthenticatedRegion :: Lens.Lens' ServiceLastAccessed (Prelude.Maybe Prelude.Text)+serviceLastAccessed_lastAuthenticatedRegion = Lens.lens (\ServiceLastAccessed' {lastAuthenticatedRegion} -> lastAuthenticatedRegion) (\s@ServiceLastAccessed' {} a -> s {lastAuthenticatedRegion = a} :: ServiceLastAccessed)++-- | The total number of authenticated principals (root user, IAM users, or+-- IAM roles) that have attempted to access the service.+--+-- This field is null if no principals attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+serviceLastAccessed_totalAuthenticatedEntities :: Lens.Lens' ServiceLastAccessed (Prelude.Maybe Prelude.Int)+serviceLastAccessed_totalAuthenticatedEntities = Lens.lens (\ServiceLastAccessed' {totalAuthenticatedEntities} -> totalAuthenticatedEntities) (\s@ServiceLastAccessed' {} a -> s {totalAuthenticatedEntities = a} :: ServiceLastAccessed)++-- | An object that contains details about the most recent attempt to access+-- a tracked action within the service.+--+-- This field is null if there no tracked actions or if the principal did+-- not use the tracked actions within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+-- This field is also null if the report was generated at the service level+-- and not the action level. For more information, see the @Granularity@+-- field in GenerateServiceLastAccessedDetails.+serviceLastAccessed_trackedActionsLastAccessed :: Lens.Lens' ServiceLastAccessed (Prelude.Maybe [TrackedActionLastAccessed])+serviceLastAccessed_trackedActionsLastAccessed = Lens.lens (\ServiceLastAccessed' {trackedActionsLastAccessed} -> trackedActionsLastAccessed) (\s@ServiceLastAccessed' {} a -> s {trackedActionsLastAccessed = a} :: ServiceLastAccessed) Prelude.. Lens.mapping Lens.coerced++-- | The name of the service in which access was attempted.+serviceLastAccessed_serviceName :: Lens.Lens' ServiceLastAccessed Prelude.Text+serviceLastAccessed_serviceName = Lens.lens (\ServiceLastAccessed' {serviceName} -> serviceName) (\s@ServiceLastAccessed' {} a -> s {serviceName = a} :: ServiceLastAccessed)++-- | The namespace of the service in which access was attempted.+--+-- To learn the service namespace of a service, see+-- <https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html Actions, resources, and condition keys for Amazon Web Services services>+-- in the /Service Authorization Reference/. Choose the name of the service+-- to view details for that service. In the first paragraph, find the+-- service prefix. For example, @(service prefix: a4b)@. For more+-- information about service namespaces, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces Amazon Web Services Service Namespaces>+-- in the /Amazon Web Services General Reference/.+serviceLastAccessed_serviceNamespace :: Lens.Lens' ServiceLastAccessed Prelude.Text+serviceLastAccessed_serviceNamespace = Lens.lens (\ServiceLastAccessed' {serviceNamespace} -> serviceNamespace) (\s@ServiceLastAccessed' {} a -> s {serviceNamespace = a} :: ServiceLastAccessed)++instance Data.FromXML ServiceLastAccessed where+ parseXML x =+ ServiceLastAccessed'+ Prelude.<$> (x Data..@? "LastAuthenticated")+ Prelude.<*> (x Data..@? "LastAuthenticatedEntity")+ Prelude.<*> (x Data..@? "LastAuthenticatedRegion")+ Prelude.<*> (x Data..@? "TotalAuthenticatedEntities")+ Prelude.<*> ( x+ Data..@? "TrackedActionsLastAccessed"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@ "ServiceName")+ Prelude.<*> (x Data..@ "ServiceNamespace")++instance Prelude.Hashable ServiceLastAccessed where+ hashWithSalt _salt ServiceLastAccessed' {..} =+ _salt+ `Prelude.hashWithSalt` lastAuthenticated+ `Prelude.hashWithSalt` lastAuthenticatedEntity+ `Prelude.hashWithSalt` lastAuthenticatedRegion+ `Prelude.hashWithSalt` totalAuthenticatedEntities+ `Prelude.hashWithSalt` trackedActionsLastAccessed+ `Prelude.hashWithSalt` serviceName+ `Prelude.hashWithSalt` serviceNamespace++instance Prelude.NFData ServiceLastAccessed where+ rnf ServiceLastAccessed' {..} =+ Prelude.rnf lastAuthenticated+ `Prelude.seq` Prelude.rnf lastAuthenticatedEntity+ `Prelude.seq` Prelude.rnf lastAuthenticatedRegion+ `Prelude.seq` Prelude.rnf totalAuthenticatedEntities+ `Prelude.seq` Prelude.rnf trackedActionsLastAccessed+ `Prelude.seq` Prelude.rnf serviceName+ `Prelude.seq` Prelude.rnf serviceNamespace
+ gen/Amazonka/IAM/Types/ServiceSpecificCredential.hs view
@@ -0,0 +1,186 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ServiceSpecificCredential+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ServiceSpecificCredential where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.StatusType+import qualified Amazonka.Prelude as Prelude++-- | Contains the details of a service-specific credential.+--+-- /See:/ 'newServiceSpecificCredential' smart constructor.+data ServiceSpecificCredential = ServiceSpecificCredential'+ { -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- service-specific credential were created.+ createDate :: Data.ISO8601,+ -- | The name of the service associated with the service-specific credential.+ serviceName :: Prelude.Text,+ -- | The generated user name for the service-specific credential. This value+ -- is generated by combining the IAM user\'s name combined with the ID+ -- number of the Amazon Web Services account, as in @jane-at-123456789012@,+ -- for example. This value cannot be configured by the user.+ serviceUserName :: Prelude.Text,+ -- | The generated password for the service-specific credential.+ servicePassword :: Data.Sensitive Prelude.Text,+ -- | The unique identifier for the service-specific credential.+ serviceSpecificCredentialId :: Prelude.Text,+ -- | The name of the IAM user associated with the service-specific+ -- credential.+ userName :: Prelude.Text,+ -- | The status of the service-specific credential. @Active@ means that the+ -- key is valid for API calls, while @Inactive@ means it is not.+ status :: StatusType+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ServiceSpecificCredential' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createDate', 'serviceSpecificCredential_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- service-specific credential were created.+--+-- 'serviceName', 'serviceSpecificCredential_serviceName' - The name of the service associated with the service-specific credential.+--+-- 'serviceUserName', 'serviceSpecificCredential_serviceUserName' - The generated user name for the service-specific credential. This value+-- is generated by combining the IAM user\'s name combined with the ID+-- number of the Amazon Web Services account, as in @jane-at-123456789012@,+-- for example. This value cannot be configured by the user.+--+-- 'servicePassword', 'serviceSpecificCredential_servicePassword' - The generated password for the service-specific credential.+--+-- 'serviceSpecificCredentialId', 'serviceSpecificCredential_serviceSpecificCredentialId' - The unique identifier for the service-specific credential.+--+-- 'userName', 'serviceSpecificCredential_userName' - The name of the IAM user associated with the service-specific+-- credential.+--+-- 'status', 'serviceSpecificCredential_status' - The status of the service-specific credential. @Active@ means that the+-- key is valid for API calls, while @Inactive@ means it is not.+newServiceSpecificCredential ::+ -- | 'createDate'+ Prelude.UTCTime ->+ -- | 'serviceName'+ Prelude.Text ->+ -- | 'serviceUserName'+ Prelude.Text ->+ -- | 'servicePassword'+ Prelude.Text ->+ -- | 'serviceSpecificCredentialId'+ Prelude.Text ->+ -- | 'userName'+ Prelude.Text ->+ -- | 'status'+ StatusType ->+ ServiceSpecificCredential+newServiceSpecificCredential+ pCreateDate_+ pServiceName_+ pServiceUserName_+ pServicePassword_+ pServiceSpecificCredentialId_+ pUserName_+ pStatus_ =+ ServiceSpecificCredential'+ { createDate =+ Data._Time Lens.# pCreateDate_,+ serviceName = pServiceName_,+ serviceUserName = pServiceUserName_,+ servicePassword =+ Data._Sensitive Lens.# pServicePassword_,+ serviceSpecificCredentialId =+ pServiceSpecificCredentialId_,+ userName = pUserName_,+ status = pStatus_+ }++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- service-specific credential were created.+serviceSpecificCredential_createDate :: Lens.Lens' ServiceSpecificCredential Prelude.UTCTime+serviceSpecificCredential_createDate = Lens.lens (\ServiceSpecificCredential' {createDate} -> createDate) (\s@ServiceSpecificCredential' {} a -> s {createDate = a} :: ServiceSpecificCredential) Prelude.. Data._Time++-- | The name of the service associated with the service-specific credential.+serviceSpecificCredential_serviceName :: Lens.Lens' ServiceSpecificCredential Prelude.Text+serviceSpecificCredential_serviceName = Lens.lens (\ServiceSpecificCredential' {serviceName} -> serviceName) (\s@ServiceSpecificCredential' {} a -> s {serviceName = a} :: ServiceSpecificCredential)++-- | The generated user name for the service-specific credential. This value+-- is generated by combining the IAM user\'s name combined with the ID+-- number of the Amazon Web Services account, as in @jane-at-123456789012@,+-- for example. This value cannot be configured by the user.+serviceSpecificCredential_serviceUserName :: Lens.Lens' ServiceSpecificCredential Prelude.Text+serviceSpecificCredential_serviceUserName = Lens.lens (\ServiceSpecificCredential' {serviceUserName} -> serviceUserName) (\s@ServiceSpecificCredential' {} a -> s {serviceUserName = a} :: ServiceSpecificCredential)++-- | The generated password for the service-specific credential.+serviceSpecificCredential_servicePassword :: Lens.Lens' ServiceSpecificCredential Prelude.Text+serviceSpecificCredential_servicePassword = Lens.lens (\ServiceSpecificCredential' {servicePassword} -> servicePassword) (\s@ServiceSpecificCredential' {} a -> s {servicePassword = a} :: ServiceSpecificCredential) Prelude.. Data._Sensitive++-- | The unique identifier for the service-specific credential.+serviceSpecificCredential_serviceSpecificCredentialId :: Lens.Lens' ServiceSpecificCredential Prelude.Text+serviceSpecificCredential_serviceSpecificCredentialId = Lens.lens (\ServiceSpecificCredential' {serviceSpecificCredentialId} -> serviceSpecificCredentialId) (\s@ServiceSpecificCredential' {} a -> s {serviceSpecificCredentialId = a} :: ServiceSpecificCredential)++-- | The name of the IAM user associated with the service-specific+-- credential.+serviceSpecificCredential_userName :: Lens.Lens' ServiceSpecificCredential Prelude.Text+serviceSpecificCredential_userName = Lens.lens (\ServiceSpecificCredential' {userName} -> userName) (\s@ServiceSpecificCredential' {} a -> s {userName = a} :: ServiceSpecificCredential)++-- | The status of the service-specific credential. @Active@ means that the+-- key is valid for API calls, while @Inactive@ means it is not.+serviceSpecificCredential_status :: Lens.Lens' ServiceSpecificCredential StatusType+serviceSpecificCredential_status = Lens.lens (\ServiceSpecificCredential' {status} -> status) (\s@ServiceSpecificCredential' {} a -> s {status = a} :: ServiceSpecificCredential)++instance Data.FromXML ServiceSpecificCredential where+ parseXML x =+ ServiceSpecificCredential'+ Prelude.<$> (x Data..@ "CreateDate")+ Prelude.<*> (x Data..@ "ServiceName")+ Prelude.<*> (x Data..@ "ServiceUserName")+ Prelude.<*> (x Data..@ "ServicePassword")+ Prelude.<*> (x Data..@ "ServiceSpecificCredentialId")+ Prelude.<*> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "Status")++instance Prelude.Hashable ServiceSpecificCredential where+ hashWithSalt _salt ServiceSpecificCredential' {..} =+ _salt+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` serviceName+ `Prelude.hashWithSalt` serviceUserName+ `Prelude.hashWithSalt` servicePassword+ `Prelude.hashWithSalt` serviceSpecificCredentialId+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` status++instance Prelude.NFData ServiceSpecificCredential where+ rnf ServiceSpecificCredential' {..} =+ Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf serviceName+ `Prelude.seq` Prelude.rnf serviceUserName+ `Prelude.seq` Prelude.rnf servicePassword+ `Prelude.seq` Prelude.rnf serviceSpecificCredentialId+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/IAM/Types/ServiceSpecificCredentialMetadata.hs view
@@ -0,0 +1,173 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.ServiceSpecificCredentialMetadata+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.ServiceSpecificCredentialMetadata where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.StatusType+import qualified Amazonka.Prelude as Prelude++-- | Contains additional details about a service-specific credential.+--+-- /See:/ 'newServiceSpecificCredentialMetadata' smart constructor.+data ServiceSpecificCredentialMetadata = ServiceSpecificCredentialMetadata'+ { -- | The name of the IAM user associated with the service-specific+ -- credential.+ userName :: Prelude.Text,+ -- | The status of the service-specific credential. @Active@ means that the+ -- key is valid for API calls, while @Inactive@ means it is not.+ status :: StatusType,+ -- | The generated user name for the service-specific credential.+ serviceUserName :: Prelude.Text,+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- service-specific credential were created.+ createDate :: Data.ISO8601,+ -- | The unique identifier for the service-specific credential.+ serviceSpecificCredentialId :: Prelude.Text,+ -- | The name of the service associated with the service-specific credential.+ serviceName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ServiceSpecificCredentialMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'serviceSpecificCredentialMetadata_userName' - The name of the IAM user associated with the service-specific+-- credential.+--+-- 'status', 'serviceSpecificCredentialMetadata_status' - The status of the service-specific credential. @Active@ means that the+-- key is valid for API calls, while @Inactive@ means it is not.+--+-- 'serviceUserName', 'serviceSpecificCredentialMetadata_serviceUserName' - The generated user name for the service-specific credential.+--+-- 'createDate', 'serviceSpecificCredentialMetadata_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- service-specific credential were created.+--+-- 'serviceSpecificCredentialId', 'serviceSpecificCredentialMetadata_serviceSpecificCredentialId' - The unique identifier for the service-specific credential.+--+-- 'serviceName', 'serviceSpecificCredentialMetadata_serviceName' - The name of the service associated with the service-specific credential.+newServiceSpecificCredentialMetadata ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'status'+ StatusType ->+ -- | 'serviceUserName'+ Prelude.Text ->+ -- | 'createDate'+ Prelude.UTCTime ->+ -- | 'serviceSpecificCredentialId'+ Prelude.Text ->+ -- | 'serviceName'+ Prelude.Text ->+ ServiceSpecificCredentialMetadata+newServiceSpecificCredentialMetadata+ pUserName_+ pStatus_+ pServiceUserName_+ pCreateDate_+ pServiceSpecificCredentialId_+ pServiceName_ =+ ServiceSpecificCredentialMetadata'+ { userName =+ pUserName_,+ status = pStatus_,+ serviceUserName = pServiceUserName_,+ createDate =+ Data._Time Lens.# pCreateDate_,+ serviceSpecificCredentialId =+ pServiceSpecificCredentialId_,+ serviceName = pServiceName_+ }++-- | The name of the IAM user associated with the service-specific+-- credential.+serviceSpecificCredentialMetadata_userName :: Lens.Lens' ServiceSpecificCredentialMetadata Prelude.Text+serviceSpecificCredentialMetadata_userName = Lens.lens (\ServiceSpecificCredentialMetadata' {userName} -> userName) (\s@ServiceSpecificCredentialMetadata' {} a -> s {userName = a} :: ServiceSpecificCredentialMetadata)++-- | The status of the service-specific credential. @Active@ means that the+-- key is valid for API calls, while @Inactive@ means it is not.+serviceSpecificCredentialMetadata_status :: Lens.Lens' ServiceSpecificCredentialMetadata StatusType+serviceSpecificCredentialMetadata_status = Lens.lens (\ServiceSpecificCredentialMetadata' {status} -> status) (\s@ServiceSpecificCredentialMetadata' {} a -> s {status = a} :: ServiceSpecificCredentialMetadata)++-- | The generated user name for the service-specific credential.+serviceSpecificCredentialMetadata_serviceUserName :: Lens.Lens' ServiceSpecificCredentialMetadata Prelude.Text+serviceSpecificCredentialMetadata_serviceUserName = Lens.lens (\ServiceSpecificCredentialMetadata' {serviceUserName} -> serviceUserName) (\s@ServiceSpecificCredentialMetadata' {} a -> s {serviceUserName = a} :: ServiceSpecificCredentialMetadata)++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- service-specific credential were created.+serviceSpecificCredentialMetadata_createDate :: Lens.Lens' ServiceSpecificCredentialMetadata Prelude.UTCTime+serviceSpecificCredentialMetadata_createDate = Lens.lens (\ServiceSpecificCredentialMetadata' {createDate} -> createDate) (\s@ServiceSpecificCredentialMetadata' {} a -> s {createDate = a} :: ServiceSpecificCredentialMetadata) Prelude.. Data._Time++-- | The unique identifier for the service-specific credential.+serviceSpecificCredentialMetadata_serviceSpecificCredentialId :: Lens.Lens' ServiceSpecificCredentialMetadata Prelude.Text+serviceSpecificCredentialMetadata_serviceSpecificCredentialId = Lens.lens (\ServiceSpecificCredentialMetadata' {serviceSpecificCredentialId} -> serviceSpecificCredentialId) (\s@ServiceSpecificCredentialMetadata' {} a -> s {serviceSpecificCredentialId = a} :: ServiceSpecificCredentialMetadata)++-- | The name of the service associated with the service-specific credential.+serviceSpecificCredentialMetadata_serviceName :: Lens.Lens' ServiceSpecificCredentialMetadata Prelude.Text+serviceSpecificCredentialMetadata_serviceName = Lens.lens (\ServiceSpecificCredentialMetadata' {serviceName} -> serviceName) (\s@ServiceSpecificCredentialMetadata' {} a -> s {serviceName = a} :: ServiceSpecificCredentialMetadata)++instance+ Data.FromXML+ ServiceSpecificCredentialMetadata+ where+ parseXML x =+ ServiceSpecificCredentialMetadata'+ Prelude.<$> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "Status")+ Prelude.<*> (x Data..@ "ServiceUserName")+ Prelude.<*> (x Data..@ "CreateDate")+ Prelude.<*> (x Data..@ "ServiceSpecificCredentialId")+ Prelude.<*> (x Data..@ "ServiceName")++instance+ Prelude.Hashable+ ServiceSpecificCredentialMetadata+ where+ hashWithSalt+ _salt+ ServiceSpecificCredentialMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` serviceUserName+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` serviceSpecificCredentialId+ `Prelude.hashWithSalt` serviceName++instance+ Prelude.NFData+ ServiceSpecificCredentialMetadata+ where+ rnf ServiceSpecificCredentialMetadata' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf serviceUserName+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf serviceSpecificCredentialId+ `Prelude.seq` Prelude.rnf serviceName
+ gen/Amazonka/IAM/Types/SigningCertificate.hs view
@@ -0,0 +1,135 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.SigningCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.SigningCertificate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.StatusType+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an X.509 signing certificate.+--+-- This data type is used as a response element in the+-- UploadSigningCertificate and ListSigningCertificates operations.+--+-- /See:/ 'newSigningCertificate' smart constructor.+data SigningCertificate = SigningCertificate'+ { -- | The date when the signing certificate was uploaded.+ uploadDate :: Prelude.Maybe Data.ISO8601,+ -- | The name of the user the signing certificate is associated with.+ userName :: Prelude.Text,+ -- | The ID for the signing certificate.+ certificateId :: Prelude.Text,+ -- | The contents of the signing certificate.+ certificateBody :: Prelude.Text,+ -- | The status of the signing certificate. @Active@ means that the key is+ -- valid for API calls, while @Inactive@ means it is not.+ status :: StatusType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SigningCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'uploadDate', 'signingCertificate_uploadDate' - The date when the signing certificate was uploaded.+--+-- 'userName', 'signingCertificate_userName' - The name of the user the signing certificate is associated with.+--+-- 'certificateId', 'signingCertificate_certificateId' - The ID for the signing certificate.+--+-- 'certificateBody', 'signingCertificate_certificateBody' - The contents of the signing certificate.+--+-- 'status', 'signingCertificate_status' - The status of the signing certificate. @Active@ means that the key is+-- valid for API calls, while @Inactive@ means it is not.+newSigningCertificate ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'certificateId'+ Prelude.Text ->+ -- | 'certificateBody'+ Prelude.Text ->+ -- | 'status'+ StatusType ->+ SigningCertificate+newSigningCertificate+ pUserName_+ pCertificateId_+ pCertificateBody_+ pStatus_ =+ SigningCertificate'+ { uploadDate = Prelude.Nothing,+ userName = pUserName_,+ certificateId = pCertificateId_,+ certificateBody = pCertificateBody_,+ status = pStatus_+ }++-- | The date when the signing certificate was uploaded.+signingCertificate_uploadDate :: Lens.Lens' SigningCertificate (Prelude.Maybe Prelude.UTCTime)+signingCertificate_uploadDate = Lens.lens (\SigningCertificate' {uploadDate} -> uploadDate) (\s@SigningCertificate' {} a -> s {uploadDate = a} :: SigningCertificate) Prelude.. Lens.mapping Data._Time++-- | The name of the user the signing certificate is associated with.+signingCertificate_userName :: Lens.Lens' SigningCertificate Prelude.Text+signingCertificate_userName = Lens.lens (\SigningCertificate' {userName} -> userName) (\s@SigningCertificate' {} a -> s {userName = a} :: SigningCertificate)++-- | The ID for the signing certificate.+signingCertificate_certificateId :: Lens.Lens' SigningCertificate Prelude.Text+signingCertificate_certificateId = Lens.lens (\SigningCertificate' {certificateId} -> certificateId) (\s@SigningCertificate' {} a -> s {certificateId = a} :: SigningCertificate)++-- | The contents of the signing certificate.+signingCertificate_certificateBody :: Lens.Lens' SigningCertificate Prelude.Text+signingCertificate_certificateBody = Lens.lens (\SigningCertificate' {certificateBody} -> certificateBody) (\s@SigningCertificate' {} a -> s {certificateBody = a} :: SigningCertificate)++-- | The status of the signing certificate. @Active@ means that the key is+-- valid for API calls, while @Inactive@ means it is not.+signingCertificate_status :: Lens.Lens' SigningCertificate StatusType+signingCertificate_status = Lens.lens (\SigningCertificate' {status} -> status) (\s@SigningCertificate' {} a -> s {status = a} :: SigningCertificate)++instance Data.FromXML SigningCertificate where+ parseXML x =+ SigningCertificate'+ Prelude.<$> (x Data..@? "UploadDate")+ Prelude.<*> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "CertificateId")+ Prelude.<*> (x Data..@ "CertificateBody")+ Prelude.<*> (x Data..@ "Status")++instance Prelude.Hashable SigningCertificate where+ hashWithSalt _salt SigningCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` uploadDate+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` certificateId+ `Prelude.hashWithSalt` certificateBody+ `Prelude.hashWithSalt` status++instance Prelude.NFData SigningCertificate where+ rnf SigningCertificate' {..} =+ Prelude.rnf uploadDate+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf certificateId+ `Prelude.seq` Prelude.rnf certificateBody+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/IAM/Types/SimulatePolicyResponse.hs view
@@ -0,0 +1,123 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.SimulatePolicyResponse+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.SimulatePolicyResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.EvaluationResult+import qualified Amazonka.Prelude as Prelude++-- | Contains the response to a successful SimulatePrincipalPolicy or+-- SimulateCustomPolicy request.+--+-- /See:/ 'newSimulatePolicyResponse' smart constructor.+data SimulatePolicyResponse = SimulatePolicyResponse'+ { -- | The results of the simulation.+ evaluationResults :: Prelude.Maybe [EvaluationResult],+ -- | A flag that indicates whether there are more items to return. If your+ -- results were truncated, you can make a subsequent pagination request+ -- using the @Marker@ request parameter to retrieve more items. Note that+ -- IAM might return fewer than the @MaxItems@ number of results even when+ -- there are more results available. We recommend that you check+ -- @IsTruncated@ after every call to ensure that you receive all your+ -- results.+ isTruncated :: Prelude.Maybe Prelude.Bool,+ -- | When @IsTruncated@ is @true@, this element is present and contains the+ -- value to use for the @Marker@ parameter in a subsequent pagination+ -- request.+ marker :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulatePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'evaluationResults', 'simulatePolicyResponse_evaluationResults' - The results of the simulation.+--+-- 'isTruncated', 'simulatePolicyResponse_isTruncated' - A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+--+-- 'marker', 'simulatePolicyResponse_marker' - When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+newSimulatePolicyResponse ::+ SimulatePolicyResponse+newSimulatePolicyResponse =+ SimulatePolicyResponse'+ { evaluationResults =+ Prelude.Nothing,+ isTruncated = Prelude.Nothing,+ marker = Prelude.Nothing+ }++-- | The results of the simulation.+simulatePolicyResponse_evaluationResults :: Lens.Lens' SimulatePolicyResponse (Prelude.Maybe [EvaluationResult])+simulatePolicyResponse_evaluationResults = Lens.lens (\SimulatePolicyResponse' {evaluationResults} -> evaluationResults) (\s@SimulatePolicyResponse' {} a -> s {evaluationResults = a} :: SimulatePolicyResponse) Prelude.. Lens.mapping Lens.coerced++-- | A flag that indicates whether there are more items to return. If your+-- results were truncated, you can make a subsequent pagination request+-- using the @Marker@ request parameter to retrieve more items. Note that+-- IAM might return fewer than the @MaxItems@ number of results even when+-- there are more results available. We recommend that you check+-- @IsTruncated@ after every call to ensure that you receive all your+-- results.+simulatePolicyResponse_isTruncated :: Lens.Lens' SimulatePolicyResponse (Prelude.Maybe Prelude.Bool)+simulatePolicyResponse_isTruncated = Lens.lens (\SimulatePolicyResponse' {isTruncated} -> isTruncated) (\s@SimulatePolicyResponse' {} a -> s {isTruncated = a} :: SimulatePolicyResponse)++-- | When @IsTruncated@ is @true@, this element is present and contains the+-- value to use for the @Marker@ parameter in a subsequent pagination+-- request.+simulatePolicyResponse_marker :: Lens.Lens' SimulatePolicyResponse (Prelude.Maybe Prelude.Text)+simulatePolicyResponse_marker = Lens.lens (\SimulatePolicyResponse' {marker} -> marker) (\s@SimulatePolicyResponse' {} a -> s {marker = a} :: SimulatePolicyResponse)++instance Data.FromXML SimulatePolicyResponse where+ parseXML x =+ SimulatePolicyResponse'+ Prelude.<$> ( x+ Data..@? "EvaluationResults"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "IsTruncated")+ Prelude.<*> (x Data..@? "Marker")++instance Prelude.Hashable SimulatePolicyResponse where+ hashWithSalt _salt SimulatePolicyResponse' {..} =+ _salt+ `Prelude.hashWithSalt` evaluationResults+ `Prelude.hashWithSalt` isTruncated+ `Prelude.hashWithSalt` marker++instance Prelude.NFData SimulatePolicyResponse where+ rnf SimulatePolicyResponse' {..} =+ Prelude.rnf evaluationResults+ `Prelude.seq` Prelude.rnf isTruncated+ `Prelude.seq` Prelude.rnf marker
+ gen/Amazonka/IAM/Types/SortKeyType.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.SortKeyType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.SortKeyType+ ( SortKeyType+ ( ..,+ SortKeyType_LAST_AUTHENTICATED_TIME_ASCENDING,+ SortKeyType_LAST_AUTHENTICATED_TIME_DESCENDING,+ SortKeyType_SERVICE_NAMESPACE_ASCENDING,+ SortKeyType_SERVICE_NAMESPACE_DESCENDING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SortKeyType = SortKeyType'+ { fromSortKeyType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SortKeyType_LAST_AUTHENTICATED_TIME_ASCENDING :: SortKeyType+pattern SortKeyType_LAST_AUTHENTICATED_TIME_ASCENDING = SortKeyType' "LAST_AUTHENTICATED_TIME_ASCENDING"++pattern SortKeyType_LAST_AUTHENTICATED_TIME_DESCENDING :: SortKeyType+pattern SortKeyType_LAST_AUTHENTICATED_TIME_DESCENDING = SortKeyType' "LAST_AUTHENTICATED_TIME_DESCENDING"++pattern SortKeyType_SERVICE_NAMESPACE_ASCENDING :: SortKeyType+pattern SortKeyType_SERVICE_NAMESPACE_ASCENDING = SortKeyType' "SERVICE_NAMESPACE_ASCENDING"++pattern SortKeyType_SERVICE_NAMESPACE_DESCENDING :: SortKeyType+pattern SortKeyType_SERVICE_NAMESPACE_DESCENDING = SortKeyType' "SERVICE_NAMESPACE_DESCENDING"++{-# COMPLETE+ SortKeyType_LAST_AUTHENTICATED_TIME_ASCENDING,+ SortKeyType_LAST_AUTHENTICATED_TIME_DESCENDING,+ SortKeyType_SERVICE_NAMESPACE_ASCENDING,+ SortKeyType_SERVICE_NAMESPACE_DESCENDING,+ SortKeyType'+ #-}
+ gen/Amazonka/IAM/Types/Statement.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.Statement+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.Statement where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.PolicySourceType+import Amazonka.IAM.Types.Position+import qualified Amazonka.Prelude as Prelude++-- | Contains a reference to a @Statement@ element in a policy document that+-- determines the result of the simulation.+--+-- This data type is used by the @MatchedStatements@ member of the+-- @ @@EvaluationResult@@ @ type.+--+-- /See:/ 'newStatement' smart constructor.+data Statement = Statement'+ { -- | The row and column of the end of a @Statement@ in an IAM policy.+ endPosition :: Prelude.Maybe Position,+ -- | The identifier of the policy that was provided as an input.+ sourcePolicyId :: Prelude.Maybe Prelude.Text,+ -- | The type of the policy.+ sourcePolicyType :: Prelude.Maybe PolicySourceType,+ -- | The row and column of the beginning of the @Statement@ in an IAM policy.+ startPosition :: Prelude.Maybe Position+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Statement' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'endPosition', 'statement_endPosition' - The row and column of the end of a @Statement@ in an IAM policy.+--+-- 'sourcePolicyId', 'statement_sourcePolicyId' - The identifier of the policy that was provided as an input.+--+-- 'sourcePolicyType', 'statement_sourcePolicyType' - The type of the policy.+--+-- 'startPosition', 'statement_startPosition' - The row and column of the beginning of the @Statement@ in an IAM policy.+newStatement ::+ Statement+newStatement =+ Statement'+ { endPosition = Prelude.Nothing,+ sourcePolicyId = Prelude.Nothing,+ sourcePolicyType = Prelude.Nothing,+ startPosition = Prelude.Nothing+ }++-- | The row and column of the end of a @Statement@ in an IAM policy.+statement_endPosition :: Lens.Lens' Statement (Prelude.Maybe Position)+statement_endPosition = Lens.lens (\Statement' {endPosition} -> endPosition) (\s@Statement' {} a -> s {endPosition = a} :: Statement)++-- | The identifier of the policy that was provided as an input.+statement_sourcePolicyId :: Lens.Lens' Statement (Prelude.Maybe Prelude.Text)+statement_sourcePolicyId = Lens.lens (\Statement' {sourcePolicyId} -> sourcePolicyId) (\s@Statement' {} a -> s {sourcePolicyId = a} :: Statement)++-- | The type of the policy.+statement_sourcePolicyType :: Lens.Lens' Statement (Prelude.Maybe PolicySourceType)+statement_sourcePolicyType = Lens.lens (\Statement' {sourcePolicyType} -> sourcePolicyType) (\s@Statement' {} a -> s {sourcePolicyType = a} :: Statement)++-- | The row and column of the beginning of the @Statement@ in an IAM policy.+statement_startPosition :: Lens.Lens' Statement (Prelude.Maybe Position)+statement_startPosition = Lens.lens (\Statement' {startPosition} -> startPosition) (\s@Statement' {} a -> s {startPosition = a} :: Statement)++instance Data.FromXML Statement where+ parseXML x =+ Statement'+ Prelude.<$> (x Data..@? "EndPosition")+ Prelude.<*> (x Data..@? "SourcePolicyId")+ Prelude.<*> (x Data..@? "SourcePolicyType")+ Prelude.<*> (x Data..@? "StartPosition")++instance Prelude.Hashable Statement where+ hashWithSalt _salt Statement' {..} =+ _salt+ `Prelude.hashWithSalt` endPosition+ `Prelude.hashWithSalt` sourcePolicyId+ `Prelude.hashWithSalt` sourcePolicyType+ `Prelude.hashWithSalt` startPosition++instance Prelude.NFData Statement where+ rnf Statement' {..} =+ Prelude.rnf endPosition+ `Prelude.seq` Prelude.rnf sourcePolicyId+ `Prelude.seq` Prelude.rnf sourcePolicyType+ `Prelude.seq` Prelude.rnf startPosition
+ gen/Amazonka/IAM/Types/StatusType.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.StatusType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.StatusType+ ( StatusType+ ( ..,+ StatusType_Active,+ StatusType_Inactive+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype StatusType = StatusType'+ { fromStatusType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern StatusType_Active :: StatusType+pattern StatusType_Active = StatusType' "Active"++pattern StatusType_Inactive :: StatusType+pattern StatusType_Inactive = StatusType' "Inactive"++{-# COMPLETE+ StatusType_Active,+ StatusType_Inactive,+ StatusType'+ #-}
+ gen/Amazonka/IAM/Types/SummaryKeyType.hs view
@@ -0,0 +1,191 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.SummaryKeyType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.SummaryKeyType+ ( SummaryKeyType+ ( ..,+ SummaryKeyType_AccessKeysPerUserQuota,+ SummaryKeyType_AccountAccessKeysPresent,+ SummaryKeyType_AccountMFAEnabled,+ SummaryKeyType_AccountSigningCertificatesPresent,+ SummaryKeyType_AttachedPoliciesPerGroupQuota,+ SummaryKeyType_AttachedPoliciesPerRoleQuota,+ SummaryKeyType_AttachedPoliciesPerUserQuota,+ SummaryKeyType_GlobalEndpointTokenVersion,+ SummaryKeyType_GroupPolicySizeQuota,+ SummaryKeyType_Groups,+ SummaryKeyType_GroupsPerUserQuota,+ SummaryKeyType_GroupsQuota,+ SummaryKeyType_MFADevices,+ SummaryKeyType_MFADevicesInUse,+ SummaryKeyType_Policies,+ SummaryKeyType_PoliciesQuota,+ SummaryKeyType_PolicySizeQuota,+ SummaryKeyType_PolicyVersionsInUse,+ SummaryKeyType_PolicyVersionsInUseQuota,+ SummaryKeyType_ServerCertificates,+ SummaryKeyType_ServerCertificatesQuota,+ SummaryKeyType_SigningCertificatesPerUserQuota,+ SummaryKeyType_UserPolicySizeQuota,+ SummaryKeyType_Users,+ SummaryKeyType_UsersQuota,+ SummaryKeyType_VersionsPerPolicyQuota+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SummaryKeyType = SummaryKeyType'+ { fromSummaryKeyType ::+ Data.Text+ }+ deriving stock+ ( Prelude.Show,+ Prelude.Read,+ Prelude.Eq,+ Prelude.Ord,+ Prelude.Generic+ )+ deriving newtype+ ( Prelude.Hashable,+ Prelude.NFData,+ Data.FromText,+ Data.ToText,+ Data.ToByteString,+ Data.ToLog,+ Data.ToHeader,+ Data.ToQuery,+ Data.FromJSON,+ Data.FromJSONKey,+ Data.ToJSON,+ Data.ToJSONKey,+ Data.FromXML,+ Data.ToXML+ )++pattern SummaryKeyType_AccessKeysPerUserQuota :: SummaryKeyType+pattern SummaryKeyType_AccessKeysPerUserQuota = SummaryKeyType' "AccessKeysPerUserQuota"++pattern SummaryKeyType_AccountAccessKeysPresent :: SummaryKeyType+pattern SummaryKeyType_AccountAccessKeysPresent = SummaryKeyType' "AccountAccessKeysPresent"++pattern SummaryKeyType_AccountMFAEnabled :: SummaryKeyType+pattern SummaryKeyType_AccountMFAEnabled = SummaryKeyType' "AccountMFAEnabled"++pattern SummaryKeyType_AccountSigningCertificatesPresent :: SummaryKeyType+pattern SummaryKeyType_AccountSigningCertificatesPresent = SummaryKeyType' "AccountSigningCertificatesPresent"++pattern SummaryKeyType_AttachedPoliciesPerGroupQuota :: SummaryKeyType+pattern SummaryKeyType_AttachedPoliciesPerGroupQuota = SummaryKeyType' "AttachedPoliciesPerGroupQuota"++pattern SummaryKeyType_AttachedPoliciesPerRoleQuota :: SummaryKeyType+pattern SummaryKeyType_AttachedPoliciesPerRoleQuota = SummaryKeyType' "AttachedPoliciesPerRoleQuota"++pattern SummaryKeyType_AttachedPoliciesPerUserQuota :: SummaryKeyType+pattern SummaryKeyType_AttachedPoliciesPerUserQuota = SummaryKeyType' "AttachedPoliciesPerUserQuota"++pattern SummaryKeyType_GlobalEndpointTokenVersion :: SummaryKeyType+pattern SummaryKeyType_GlobalEndpointTokenVersion = SummaryKeyType' "GlobalEndpointTokenVersion"++pattern SummaryKeyType_GroupPolicySizeQuota :: SummaryKeyType+pattern SummaryKeyType_GroupPolicySizeQuota = SummaryKeyType' "GroupPolicySizeQuota"++pattern SummaryKeyType_Groups :: SummaryKeyType+pattern SummaryKeyType_Groups = SummaryKeyType' "Groups"++pattern SummaryKeyType_GroupsPerUserQuota :: SummaryKeyType+pattern SummaryKeyType_GroupsPerUserQuota = SummaryKeyType' "GroupsPerUserQuota"++pattern SummaryKeyType_GroupsQuota :: SummaryKeyType+pattern SummaryKeyType_GroupsQuota = SummaryKeyType' "GroupsQuota"++pattern SummaryKeyType_MFADevices :: SummaryKeyType+pattern SummaryKeyType_MFADevices = SummaryKeyType' "MFADevices"++pattern SummaryKeyType_MFADevicesInUse :: SummaryKeyType+pattern SummaryKeyType_MFADevicesInUse = SummaryKeyType' "MFADevicesInUse"++pattern SummaryKeyType_Policies :: SummaryKeyType+pattern SummaryKeyType_Policies = SummaryKeyType' "Policies"++pattern SummaryKeyType_PoliciesQuota :: SummaryKeyType+pattern SummaryKeyType_PoliciesQuota = SummaryKeyType' "PoliciesQuota"++pattern SummaryKeyType_PolicySizeQuota :: SummaryKeyType+pattern SummaryKeyType_PolicySizeQuota = SummaryKeyType' "PolicySizeQuota"++pattern SummaryKeyType_PolicyVersionsInUse :: SummaryKeyType+pattern SummaryKeyType_PolicyVersionsInUse = SummaryKeyType' "PolicyVersionsInUse"++pattern SummaryKeyType_PolicyVersionsInUseQuota :: SummaryKeyType+pattern SummaryKeyType_PolicyVersionsInUseQuota = SummaryKeyType' "PolicyVersionsInUseQuota"++pattern SummaryKeyType_ServerCertificates :: SummaryKeyType+pattern SummaryKeyType_ServerCertificates = SummaryKeyType' "ServerCertificates"++pattern SummaryKeyType_ServerCertificatesQuota :: SummaryKeyType+pattern SummaryKeyType_ServerCertificatesQuota = SummaryKeyType' "ServerCertificatesQuota"++pattern SummaryKeyType_SigningCertificatesPerUserQuota :: SummaryKeyType+pattern SummaryKeyType_SigningCertificatesPerUserQuota = SummaryKeyType' "SigningCertificatesPerUserQuota"++pattern SummaryKeyType_UserPolicySizeQuota :: SummaryKeyType+pattern SummaryKeyType_UserPolicySizeQuota = SummaryKeyType' "UserPolicySizeQuota"++pattern SummaryKeyType_Users :: SummaryKeyType+pattern SummaryKeyType_Users = SummaryKeyType' "Users"++pattern SummaryKeyType_UsersQuota :: SummaryKeyType+pattern SummaryKeyType_UsersQuota = SummaryKeyType' "UsersQuota"++pattern SummaryKeyType_VersionsPerPolicyQuota :: SummaryKeyType+pattern SummaryKeyType_VersionsPerPolicyQuota = SummaryKeyType' "VersionsPerPolicyQuota"++{-# COMPLETE+ SummaryKeyType_AccessKeysPerUserQuota,+ SummaryKeyType_AccountAccessKeysPresent,+ SummaryKeyType_AccountMFAEnabled,+ SummaryKeyType_AccountSigningCertificatesPresent,+ SummaryKeyType_AttachedPoliciesPerGroupQuota,+ SummaryKeyType_AttachedPoliciesPerRoleQuota,+ SummaryKeyType_AttachedPoliciesPerUserQuota,+ SummaryKeyType_GlobalEndpointTokenVersion,+ SummaryKeyType_GroupPolicySizeQuota,+ SummaryKeyType_Groups,+ SummaryKeyType_GroupsPerUserQuota,+ SummaryKeyType_GroupsQuota,+ SummaryKeyType_MFADevices,+ SummaryKeyType_MFADevicesInUse,+ SummaryKeyType_Policies,+ SummaryKeyType_PoliciesQuota,+ SummaryKeyType_PolicySizeQuota,+ SummaryKeyType_PolicyVersionsInUse,+ SummaryKeyType_PolicyVersionsInUseQuota,+ SummaryKeyType_ServerCertificates,+ SummaryKeyType_ServerCertificatesQuota,+ SummaryKeyType_SigningCertificatesPerUserQuota,+ SummaryKeyType_UserPolicySizeQuota,+ SummaryKeyType_Users,+ SummaryKeyType_UsersQuota,+ SummaryKeyType_VersionsPerPolicyQuota,+ SummaryKeyType'+ #-}
+ gen/Amazonka/IAM/Types/Tag.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.Tag+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.Tag where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A structure that represents user-provided metadata that can be+-- associated with an IAM resource. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- /See:/ 'newTag' smart constructor.+data Tag = Tag'+ { -- | The key name that can be used to look up or retrieve the associated+ -- value. For example, @Department@ or @Cost Center@ are common choices.+ key :: Prelude.Text,+ -- | The value associated with this tag. For example, tags with a key name of+ -- @Department@ could have values such as @Human Resources@, @Accounting@,+ -- and @Support@. Tags with a key name of @Cost Center@ might have values+ -- that consist of the number associated with the different cost centers in+ -- your company. Typically, many resources have tags with the same key name+ -- but with different values.+ --+ -- Amazon Web Services always interprets the tag @Value@ as a single+ -- string. If you need to store an array, you can store comma-separated+ -- values in the string. However, you must interpret the value in your+ -- code.+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Tag' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'key', 'tag_key' - The key name that can be used to look up or retrieve the associated+-- value. For example, @Department@ or @Cost Center@ are common choices.+--+-- 'value', 'tag_value' - The value associated with this tag. For example, tags with a key name of+-- @Department@ could have values such as @Human Resources@, @Accounting@,+-- and @Support@. Tags with a key name of @Cost Center@ might have values+-- that consist of the number associated with the different cost centers in+-- your company. Typically, many resources have tags with the same key name+-- but with different values.+--+-- Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+newTag ::+ -- | 'key'+ Prelude.Text ->+ -- | 'value'+ Prelude.Text ->+ Tag+newTag pKey_ pValue_ =+ Tag' {key = pKey_, value = pValue_}++-- | The key name that can be used to look up or retrieve the associated+-- value. For example, @Department@ or @Cost Center@ are common choices.+tag_key :: Lens.Lens' Tag Prelude.Text+tag_key = Lens.lens (\Tag' {key} -> key) (\s@Tag' {} a -> s {key = a} :: Tag)++-- | The value associated with this tag. For example, tags with a key name of+-- @Department@ could have values such as @Human Resources@, @Accounting@,+-- and @Support@. Tags with a key name of @Cost Center@ might have values+-- that consist of the number associated with the different cost centers in+-- your company. Typically, many resources have tags with the same key name+-- but with different values.+--+-- Amazon Web Services always interprets the tag @Value@ as a single+-- string. If you need to store an array, you can store comma-separated+-- values in the string. However, you must interpret the value in your+-- code.+tag_value :: Lens.Lens' Tag Prelude.Text+tag_value = Lens.lens (\Tag' {value} -> value) (\s@Tag' {} a -> s {value = a} :: Tag)++instance Data.FromXML Tag where+ parseXML x =+ Tag'+ Prelude.<$> (x Data..@ "Key")+ Prelude.<*> (x Data..@ "Value")++instance Prelude.Hashable Tag where+ hashWithSalt _salt Tag' {..} =+ _salt+ `Prelude.hashWithSalt` key+ `Prelude.hashWithSalt` value++instance Prelude.NFData Tag where+ rnf Tag' {..} =+ Prelude.rnf key `Prelude.seq` Prelude.rnf value++instance Data.ToQuery Tag where+ toQuery Tag' {..} =+ Prelude.mconcat+ ["Key" Data.=: key, "Value" Data.=: value]
+ gen/Amazonka/IAM/Types/TrackedActionLastAccessed.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.TrackedActionLastAccessed+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.TrackedActionLastAccessed where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Contains details about the most recent attempt to access an action+-- within the service.+--+-- This data type is used as a response element in the+-- GetServiceLastAccessedDetails operation.+--+-- /See:/ 'newTrackedActionLastAccessed' smart constructor.+data TrackedActionLastAccessed = TrackedActionLastAccessed'+ { -- | The name of the tracked action to which access was attempted. Tracked+ -- actions are actions that report activity to IAM.+ actionName :: Prelude.Maybe Prelude.Text,+ lastAccessedEntity :: Prelude.Maybe Prelude.Text,+ -- | The Region from which the authenticated entity (user or role) last+ -- attempted to access the tracked action. Amazon Web Services does not+ -- report unauthenticated requests.+ --+ -- This field is null if no IAM entities attempted to access the service+ -- within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ lastAccessedRegion :: Prelude.Maybe Prelude.Text,+ -- | The date and time,+ -- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+ -- authenticated entity most recently attempted to access the tracked+ -- service. Amazon Web Services does not report unauthenticated requests.+ --+ -- This field is null if no IAM entities attempted to access the service+ -- within the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+ lastAccessedTime :: Prelude.Maybe Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TrackedActionLastAccessed' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'actionName', 'trackedActionLastAccessed_actionName' - The name of the tracked action to which access was attempted. Tracked+-- actions are actions that report activity to IAM.+--+-- 'lastAccessedEntity', 'trackedActionLastAccessed_lastAccessedEntity' - Undocumented member.+--+-- 'lastAccessedRegion', 'trackedActionLastAccessed_lastAccessedRegion' - The Region from which the authenticated entity (user or role) last+-- attempted to access the tracked action. Amazon Web Services does not+-- report unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+--+-- 'lastAccessedTime', 'trackedActionLastAccessed_lastAccessedTime' - The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+-- authenticated entity most recently attempted to access the tracked+-- service. Amazon Web Services does not report unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+newTrackedActionLastAccessed ::+ TrackedActionLastAccessed+newTrackedActionLastAccessed =+ TrackedActionLastAccessed'+ { actionName =+ Prelude.Nothing,+ lastAccessedEntity = Prelude.Nothing,+ lastAccessedRegion = Prelude.Nothing,+ lastAccessedTime = Prelude.Nothing+ }++-- | The name of the tracked action to which access was attempted. Tracked+-- actions are actions that report activity to IAM.+trackedActionLastAccessed_actionName :: Lens.Lens' TrackedActionLastAccessed (Prelude.Maybe Prelude.Text)+trackedActionLastAccessed_actionName = Lens.lens (\TrackedActionLastAccessed' {actionName} -> actionName) (\s@TrackedActionLastAccessed' {} a -> s {actionName = a} :: TrackedActionLastAccessed)++-- | Undocumented member.+trackedActionLastAccessed_lastAccessedEntity :: Lens.Lens' TrackedActionLastAccessed (Prelude.Maybe Prelude.Text)+trackedActionLastAccessed_lastAccessedEntity = Lens.lens (\TrackedActionLastAccessed' {lastAccessedEntity} -> lastAccessedEntity) (\s@TrackedActionLastAccessed' {} a -> s {lastAccessedEntity = a} :: TrackedActionLastAccessed)++-- | The Region from which the authenticated entity (user or role) last+-- attempted to access the tracked action. Amazon Web Services does not+-- report unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+trackedActionLastAccessed_lastAccessedRegion :: Lens.Lens' TrackedActionLastAccessed (Prelude.Maybe Prelude.Text)+trackedActionLastAccessed_lastAccessedRegion = Lens.lens (\TrackedActionLastAccessed' {lastAccessedRegion} -> lastAccessedRegion) (\s@TrackedActionLastAccessed' {} a -> s {lastAccessedRegion = a} :: TrackedActionLastAccessed)++-- | The date and time,+-- in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when an+-- authenticated entity most recently attempted to access the tracked+-- service. Amazon Web Services does not report unauthenticated requests.+--+-- This field is null if no IAM entities attempted to access the service+-- within the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html#service-last-accessed-reporting-period tracking period>.+trackedActionLastAccessed_lastAccessedTime :: Lens.Lens' TrackedActionLastAccessed (Prelude.Maybe Prelude.UTCTime)+trackedActionLastAccessed_lastAccessedTime = Lens.lens (\TrackedActionLastAccessed' {lastAccessedTime} -> lastAccessedTime) (\s@TrackedActionLastAccessed' {} a -> s {lastAccessedTime = a} :: TrackedActionLastAccessed) Prelude.. Lens.mapping Data._Time++instance Data.FromXML TrackedActionLastAccessed where+ parseXML x =+ TrackedActionLastAccessed'+ Prelude.<$> (x Data..@? "ActionName")+ Prelude.<*> (x Data..@? "LastAccessedEntity")+ Prelude.<*> (x Data..@? "LastAccessedRegion")+ Prelude.<*> (x Data..@? "LastAccessedTime")++instance Prelude.Hashable TrackedActionLastAccessed where+ hashWithSalt _salt TrackedActionLastAccessed' {..} =+ _salt+ `Prelude.hashWithSalt` actionName+ `Prelude.hashWithSalt` lastAccessedEntity+ `Prelude.hashWithSalt` lastAccessedRegion+ `Prelude.hashWithSalt` lastAccessedTime++instance Prelude.NFData TrackedActionLastAccessed where+ rnf TrackedActionLastAccessed' {..} =+ Prelude.rnf actionName+ `Prelude.seq` Prelude.rnf lastAccessedEntity+ `Prelude.seq` Prelude.rnf lastAccessedRegion+ `Prelude.seq` Prelude.rnf lastAccessedTime
+ gen/Amazonka/IAM/Types/User.hs view
@@ -0,0 +1,289 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.User+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.User where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.AttachedPermissionsBoundary+import Amazonka.IAM.Types.Tag+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an IAM user entity.+--+-- This data type is used as a response element in the following+-- operations:+--+-- - CreateUser+--+-- - GetUser+--+-- - ListUsers+--+-- /See:/ 'newUser' smart constructor.+data User = User'+ { -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- user\'s password was last used to sign in to an Amazon Web Services+ -- website. For a list of Amazon Web Services websites that capture a+ -- user\'s last sign-in time, see the+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Credential reports>+ -- topic in the /IAM User Guide/. If a password is used more than once in a+ -- five-minute span, only the first use is returned in this field. If the+ -- field is null (no value), then it indicates that they never signed in+ -- with a password. This can be because:+ --+ -- - The user never had a password.+ --+ -- - A password exists but has not been used since IAM started tracking+ -- this information on October 20, 2014.+ --+ -- A null value does not mean that the user /never/ had a password. Also,+ -- if the user does not currently have a password but had one in the past,+ -- then this field contains the date and time the most recent password was+ -- used.+ --+ -- This value is returned only in the GetUser and ListUsers operations.+ passwordLastUsed :: Prelude.Maybe Data.ISO8601,+ -- | The path to the user. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ --+ -- The ARN of the policy used to set the permissions boundary for the user.+ path :: Prelude.Maybe Prelude.Text,+ -- | For more information about permissions boundaries, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+ -- in the /IAM User Guide/.+ permissionsBoundary :: Prelude.Maybe AttachedPermissionsBoundary,+ -- | A list of tags that are associated with the user. For more information+ -- about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The friendly name identifying the user.+ userName :: Prelude.Text,+ -- | The stable and unique string identifying the user. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ userId :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) that identifies the user. For more+ -- information about ARNs and how to use ARNs in policies, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+ -- in the /IAM User Guide/.+ arn :: Prelude.Text,+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- user was created.+ createDate :: Data.ISO8601+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'User' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'passwordLastUsed', 'user_passwordLastUsed' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- user\'s password was last used to sign in to an Amazon Web Services+-- website. For a list of Amazon Web Services websites that capture a+-- user\'s last sign-in time, see the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Credential reports>+-- topic in the /IAM User Guide/. If a password is used more than once in a+-- five-minute span, only the first use is returned in this field. If the+-- field is null (no value), then it indicates that they never signed in+-- with a password. This can be because:+--+-- - The user never had a password.+--+-- - A password exists but has not been used since IAM started tracking+-- this information on October 20, 2014.+--+-- A null value does not mean that the user /never/ had a password. Also,+-- if the user does not currently have a password but had one in the past,+-- then this field contains the date and time the most recent password was+-- used.+--+-- This value is returned only in the GetUser and ListUsers operations.+--+-- 'path', 'user_path' - The path to the user. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- The ARN of the policy used to set the permissions boundary for the user.+--+-- 'permissionsBoundary', 'user_permissionsBoundary' - For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+--+-- 'tags', 'user_tags' - A list of tags that are associated with the user. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'userName', 'user_userName' - The friendly name identifying the user.+--+-- 'userId', 'user_userId' - The stable and unique string identifying the user. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'arn', 'user_arn' - The Amazon Resource Name (ARN) that identifies the user. For more+-- information about ARNs and how to use ARNs in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+-- in the /IAM User Guide/.+--+-- 'createDate', 'user_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- user was created.+newUser ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'userId'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'createDate'+ Prelude.UTCTime ->+ User+newUser pUserName_ pUserId_ pArn_ pCreateDate_ =+ User'+ { passwordLastUsed = Prelude.Nothing,+ path = Prelude.Nothing,+ permissionsBoundary = Prelude.Nothing,+ tags = Prelude.Nothing,+ userName = pUserName_,+ userId = pUserId_,+ arn = pArn_,+ createDate = Data._Time Lens.# pCreateDate_+ }++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- user\'s password was last used to sign in to an Amazon Web Services+-- website. For a list of Amazon Web Services websites that capture a+-- user\'s last sign-in time, see the+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Credential reports>+-- topic in the /IAM User Guide/. If a password is used more than once in a+-- five-minute span, only the first use is returned in this field. If the+-- field is null (no value), then it indicates that they never signed in+-- with a password. This can be because:+--+-- - The user never had a password.+--+-- - A password exists but has not been used since IAM started tracking+-- this information on October 20, 2014.+--+-- A null value does not mean that the user /never/ had a password. Also,+-- if the user does not currently have a password but had one in the past,+-- then this field contains the date and time the most recent password was+-- used.+--+-- This value is returned only in the GetUser and ListUsers operations.+user_passwordLastUsed :: Lens.Lens' User (Prelude.Maybe Prelude.UTCTime)+user_passwordLastUsed = Lens.lens (\User' {passwordLastUsed} -> passwordLastUsed) (\s@User' {} a -> s {passwordLastUsed = a} :: User) Prelude.. Lens.mapping Data._Time++-- | The path to the user. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- The ARN of the policy used to set the permissions boundary for the user.+user_path :: Lens.Lens' User (Prelude.Maybe Prelude.Text)+user_path = Lens.lens (\User' {path} -> path) (\s@User' {} a -> s {path = a} :: User)++-- | For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+user_permissionsBoundary :: Lens.Lens' User (Prelude.Maybe AttachedPermissionsBoundary)+user_permissionsBoundary = Lens.lens (\User' {permissionsBoundary} -> permissionsBoundary) (\s@User' {} a -> s {permissionsBoundary = a} :: User)++-- | A list of tags that are associated with the user. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+user_tags :: Lens.Lens' User (Prelude.Maybe [Tag])+user_tags = Lens.lens (\User' {tags} -> tags) (\s@User' {} a -> s {tags = a} :: User) Prelude.. Lens.mapping Lens.coerced++-- | The friendly name identifying the user.+user_userName :: Lens.Lens' User Prelude.Text+user_userName = Lens.lens (\User' {userName} -> userName) (\s@User' {} a -> s {userName = a} :: User)++-- | The stable and unique string identifying the user. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+user_userId :: Lens.Lens' User Prelude.Text+user_userId = Lens.lens (\User' {userId} -> userId) (\s@User' {} a -> s {userId = a} :: User)++-- | The Amazon Resource Name (ARN) that identifies the user. For more+-- information about ARNs and how to use ARNs in policies, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers>+-- in the /IAM User Guide/.+user_arn :: Lens.Lens' User Prelude.Text+user_arn = Lens.lens (\User' {arn} -> arn) (\s@User' {} a -> s {arn = a} :: User)++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- user was created.+user_createDate :: Lens.Lens' User Prelude.UTCTime+user_createDate = Lens.lens (\User' {createDate} -> createDate) (\s@User' {} a -> s {createDate = a} :: User) Prelude.. Data._Time++instance Data.FromXML User where+ parseXML x =+ User'+ Prelude.<$> (x Data..@? "PasswordLastUsed")+ Prelude.<*> (x Data..@? "Path")+ Prelude.<*> (x Data..@? "PermissionsBoundary")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@ "UserName")+ Prelude.<*> (x Data..@ "UserId")+ Prelude.<*> (x Data..@ "Arn")+ Prelude.<*> (x Data..@ "CreateDate")++instance Prelude.Hashable User where+ hashWithSalt _salt User' {..} =+ _salt+ `Prelude.hashWithSalt` passwordLastUsed+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` permissionsBoundary+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` userId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createDate++instance Prelude.NFData User where+ rnf User' {..} =+ Prelude.rnf passwordLastUsed+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf permissionsBoundary+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf userId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createDate
+ gen/Amazonka/IAM/Types/UserDetail.hs view
@@ -0,0 +1,241 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.UserDetail+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.UserDetail where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.AttachedPermissionsBoundary+import Amazonka.IAM.Types.AttachedPolicy+import Amazonka.IAM.Types.PolicyDetail+import Amazonka.IAM.Types.Tag+import qualified Amazonka.Prelude as Prelude++-- | Contains information about an IAM user, including all the user\'s+-- policies and all the IAM groups the user is in.+--+-- This data type is used as a response element in the+-- GetAccountAuthorizationDetails operation.+--+-- /See:/ 'newUserDetail' smart constructor.+data UserDetail = UserDetail'+ { arn :: Prelude.Maybe Prelude.Text,+ -- | A list of the managed policies attached to the user.+ attachedManagedPolicies :: Prelude.Maybe [AttachedPolicy],+ -- | The date and time, in+ -- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+ -- user was created.+ createDate :: Prelude.Maybe Data.ISO8601,+ -- | A list of IAM groups that the user is in.+ groupList :: Prelude.Maybe [Prelude.Text],+ -- | The path to the user. For more information about paths, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ path :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the policy used to set the permissions boundary for the user.+ --+ -- For more information about permissions boundaries, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+ -- in the /IAM User Guide/.+ permissionsBoundary :: Prelude.Maybe AttachedPermissionsBoundary,+ -- | A list of tags that are associated with the user. For more information+ -- about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The stable and unique string identifying the user. For more information+ -- about IDs, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ userId :: Prelude.Maybe Prelude.Text,+ -- | The friendly name identifying the user.+ userName :: Prelude.Maybe Prelude.Text,+ -- | A list of the inline policies embedded in the user.+ userPolicyList :: Prelude.Maybe [PolicyDetail]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UserDetail' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'userDetail_arn' - Undocumented member.+--+-- 'attachedManagedPolicies', 'userDetail_attachedManagedPolicies' - A list of the managed policies attached to the user.+--+-- 'createDate', 'userDetail_createDate' - The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- user was created.+--+-- 'groupList', 'userDetail_groupList' - A list of IAM groups that the user is in.+--+-- 'path', 'userDetail_path' - The path to the user. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'permissionsBoundary', 'userDetail_permissionsBoundary' - The ARN of the policy used to set the permissions boundary for the user.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+--+-- 'tags', 'userDetail_tags' - A list of tags that are associated with the user. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'userId', 'userDetail_userId' - The stable and unique string identifying the user. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- 'userName', 'userDetail_userName' - The friendly name identifying the user.+--+-- 'userPolicyList', 'userDetail_userPolicyList' - A list of the inline policies embedded in the user.+newUserDetail ::+ UserDetail+newUserDetail =+ UserDetail'+ { arn = Prelude.Nothing,+ attachedManagedPolicies = Prelude.Nothing,+ createDate = Prelude.Nothing,+ groupList = Prelude.Nothing,+ path = Prelude.Nothing,+ permissionsBoundary = Prelude.Nothing,+ tags = Prelude.Nothing,+ userId = Prelude.Nothing,+ userName = Prelude.Nothing,+ userPolicyList = Prelude.Nothing+ }++-- | Undocumented member.+userDetail_arn :: Lens.Lens' UserDetail (Prelude.Maybe Prelude.Text)+userDetail_arn = Lens.lens (\UserDetail' {arn} -> arn) (\s@UserDetail' {} a -> s {arn = a} :: UserDetail)++-- | A list of the managed policies attached to the user.+userDetail_attachedManagedPolicies :: Lens.Lens' UserDetail (Prelude.Maybe [AttachedPolicy])+userDetail_attachedManagedPolicies = Lens.lens (\UserDetail' {attachedManagedPolicies} -> attachedManagedPolicies) (\s@UserDetail' {} a -> s {attachedManagedPolicies = a} :: UserDetail) Prelude.. Lens.mapping Lens.coerced++-- | The date and time, in+-- <http://www.iso.org/iso/iso8601 ISO 8601 date-time format>, when the+-- user was created.+userDetail_createDate :: Lens.Lens' UserDetail (Prelude.Maybe Prelude.UTCTime)+userDetail_createDate = Lens.lens (\UserDetail' {createDate} -> createDate) (\s@UserDetail' {} a -> s {createDate = a} :: UserDetail) Prelude.. Lens.mapping Data._Time++-- | A list of IAM groups that the user is in.+userDetail_groupList :: Lens.Lens' UserDetail (Prelude.Maybe [Prelude.Text])+userDetail_groupList = Lens.lens (\UserDetail' {groupList} -> groupList) (\s@UserDetail' {} a -> s {groupList = a} :: UserDetail) Prelude.. Lens.mapping Lens.coerced++-- | The path to the user. For more information about paths, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+userDetail_path :: Lens.Lens' UserDetail (Prelude.Maybe Prelude.Text)+userDetail_path = Lens.lens (\UserDetail' {path} -> path) (\s@UserDetail' {} a -> s {path = a} :: UserDetail)++-- | The ARN of the policy used to set the permissions boundary for the user.+--+-- For more information about permissions boundaries, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM identities>+-- in the /IAM User Guide/.+userDetail_permissionsBoundary :: Lens.Lens' UserDetail (Prelude.Maybe AttachedPermissionsBoundary)+userDetail_permissionsBoundary = Lens.lens (\UserDetail' {permissionsBoundary} -> permissionsBoundary) (\s@UserDetail' {} a -> s {permissionsBoundary = a} :: UserDetail)++-- | A list of tags that are associated with the user. For more information+-- about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+userDetail_tags :: Lens.Lens' UserDetail (Prelude.Maybe [Tag])+userDetail_tags = Lens.lens (\UserDetail' {tags} -> tags) (\s@UserDetail' {} a -> s {tags = a} :: UserDetail) Prelude.. Lens.mapping Lens.coerced++-- | The stable and unique string identifying the user. For more information+-- about IDs, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+userDetail_userId :: Lens.Lens' UserDetail (Prelude.Maybe Prelude.Text)+userDetail_userId = Lens.lens (\UserDetail' {userId} -> userId) (\s@UserDetail' {} a -> s {userId = a} :: UserDetail)++-- | The friendly name identifying the user.+userDetail_userName :: Lens.Lens' UserDetail (Prelude.Maybe Prelude.Text)+userDetail_userName = Lens.lens (\UserDetail' {userName} -> userName) (\s@UserDetail' {} a -> s {userName = a} :: UserDetail)++-- | A list of the inline policies embedded in the user.+userDetail_userPolicyList :: Lens.Lens' UserDetail (Prelude.Maybe [PolicyDetail])+userDetail_userPolicyList = Lens.lens (\UserDetail' {userPolicyList} -> userPolicyList) (\s@UserDetail' {} a -> s {userPolicyList = a} :: UserDetail) Prelude.. Lens.mapping Lens.coerced++instance Data.FromXML UserDetail where+ parseXML x =+ UserDetail'+ Prelude.<$> (x Data..@? "Arn")+ Prelude.<*> ( x+ Data..@? "AttachedManagedPolicies"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "CreateDate")+ Prelude.<*> ( x+ Data..@? "GroupList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "Path")+ Prelude.<*> (x Data..@? "PermissionsBoundary")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "UserId")+ Prelude.<*> (x Data..@? "UserName")+ Prelude.<*> ( x+ Data..@? "UserPolicyList"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )++instance Prelude.Hashable UserDetail where+ hashWithSalt _salt UserDetail' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` attachedManagedPolicies+ `Prelude.hashWithSalt` createDate+ `Prelude.hashWithSalt` groupList+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` permissionsBoundary+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` userId+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` userPolicyList++instance Prelude.NFData UserDetail where+ rnf UserDetail' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf attachedManagedPolicies+ `Prelude.seq` Prelude.rnf createDate+ `Prelude.seq` Prelude.rnf groupList+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf permissionsBoundary+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf userId+ `Prelude.seq` Prelude.rnf userName+ `Prelude.seq` Prelude.rnf userPolicyList
+ gen/Amazonka/IAM/Types/VirtualMFADevice.hs view
@@ -0,0 +1,183 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Types.VirtualMFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Types.VirtualMFADevice where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types.Tag+import Amazonka.IAM.Types.User+import qualified Amazonka.Prelude as Prelude++-- | Contains information about a virtual MFA device.+--+-- /See:/ 'newVirtualMFADevice' smart constructor.+data VirtualMFADevice = VirtualMFADevice'+ { -- | The base32 seed defined as specified in+ -- <https://tools.ietf.org/html/rfc3548.txt RFC3548>. The+ -- @Base32StringSeed@ is base64-encoded.+ base32StringSeed :: Prelude.Maybe (Data.Sensitive Data.Base64),+ -- | The date and time on which the virtual MFA device was enabled.+ enableDate :: Prelude.Maybe Data.ISO8601,+ -- | A QR code PNG image that encodes+ -- @otpauth:\/\/totp\/$virtualMFADeviceName\@$AccountName?secret=$Base32String@+ -- where @$virtualMFADeviceName@ is one of the create call arguments.+ -- @AccountName@ is the user name if set (otherwise, the account ID+ -- otherwise), and @Base32String@ is the seed in base32 format. The+ -- @Base32String@ value is base64-encoded.+ qRCodePNG :: Prelude.Maybe (Data.Sensitive Data.Base64),+ -- | A list of tags that are attached to the virtual MFA device. For more+ -- information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The IAM user associated with this virtual MFA device.+ user :: Prelude.Maybe User,+ -- | The serial number associated with @VirtualMFADevice@.+ serialNumber :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VirtualMFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'base32StringSeed', 'virtualMFADevice_base32StringSeed' - The base32 seed defined as specified in+-- <https://tools.ietf.org/html/rfc3548.txt RFC3548>. The+-- @Base32StringSeed@ is base64-encoded.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+--+-- 'enableDate', 'virtualMFADevice_enableDate' - The date and time on which the virtual MFA device was enabled.+--+-- 'qRCodePNG', 'virtualMFADevice_qRCodePNG' - A QR code PNG image that encodes+-- @otpauth:\/\/totp\/$virtualMFADeviceName\@$AccountName?secret=$Base32String@+-- where @$virtualMFADeviceName@ is one of the create call arguments.+-- @AccountName@ is the user name if set (otherwise, the account ID+-- otherwise), and @Base32String@ is the seed in base32 format. The+-- @Base32String@ value is base64-encoded.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+--+-- 'tags', 'virtualMFADevice_tags' - A list of tags that are attached to the virtual MFA device. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'user', 'virtualMFADevice_user' - The IAM user associated with this virtual MFA device.+--+-- 'serialNumber', 'virtualMFADevice_serialNumber' - The serial number associated with @VirtualMFADevice@.+newVirtualMFADevice ::+ -- | 'serialNumber'+ Prelude.Text ->+ VirtualMFADevice+newVirtualMFADevice pSerialNumber_ =+ VirtualMFADevice'+ { base32StringSeed =+ Prelude.Nothing,+ enableDate = Prelude.Nothing,+ qRCodePNG = Prelude.Nothing,+ tags = Prelude.Nothing,+ user = Prelude.Nothing,+ serialNumber = pSerialNumber_+ }++-- | The base32 seed defined as specified in+-- <https://tools.ietf.org/html/rfc3548.txt RFC3548>. The+-- @Base32StringSeed@ is base64-encoded.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+virtualMFADevice_base32StringSeed :: Lens.Lens' VirtualMFADevice (Prelude.Maybe Prelude.ByteString)+virtualMFADevice_base32StringSeed = Lens.lens (\VirtualMFADevice' {base32StringSeed} -> base32StringSeed) (\s@VirtualMFADevice' {} a -> s {base32StringSeed = a} :: VirtualMFADevice) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Data._Base64)++-- | The date and time on which the virtual MFA device was enabled.+virtualMFADevice_enableDate :: Lens.Lens' VirtualMFADevice (Prelude.Maybe Prelude.UTCTime)+virtualMFADevice_enableDate = Lens.lens (\VirtualMFADevice' {enableDate} -> enableDate) (\s@VirtualMFADevice' {} a -> s {enableDate = a} :: VirtualMFADevice) Prelude.. Lens.mapping Data._Time++-- | A QR code PNG image that encodes+-- @otpauth:\/\/totp\/$virtualMFADeviceName\@$AccountName?secret=$Base32String@+-- where @$virtualMFADeviceName@ is one of the create call arguments.+-- @AccountName@ is the user name if set (otherwise, the account ID+-- otherwise), and @Base32String@ is the seed in base32 format. The+-- @Base32String@ value is base64-encoded.--+-- -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data.+-- -- The underlying isomorphism will encode to Base64 representation during+-- -- serialisation, and decode from Base64 representation during deserialisation.+-- -- This 'Lens' accepts and returns only raw unencoded data.+virtualMFADevice_qRCodePNG :: Lens.Lens' VirtualMFADevice (Prelude.Maybe Prelude.ByteString)+virtualMFADevice_qRCodePNG = Lens.lens (\VirtualMFADevice' {qRCodePNG} -> qRCodePNG) (\s@VirtualMFADevice' {} a -> s {qRCodePNG = a} :: VirtualMFADevice) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Data._Base64)++-- | A list of tags that are attached to the virtual MFA device. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+virtualMFADevice_tags :: Lens.Lens' VirtualMFADevice (Prelude.Maybe [Tag])+virtualMFADevice_tags = Lens.lens (\VirtualMFADevice' {tags} -> tags) (\s@VirtualMFADevice' {} a -> s {tags = a} :: VirtualMFADevice) Prelude.. Lens.mapping Lens.coerced++-- | The IAM user associated with this virtual MFA device.+virtualMFADevice_user :: Lens.Lens' VirtualMFADevice (Prelude.Maybe User)+virtualMFADevice_user = Lens.lens (\VirtualMFADevice' {user} -> user) (\s@VirtualMFADevice' {} a -> s {user = a} :: VirtualMFADevice)++-- | The serial number associated with @VirtualMFADevice@.+virtualMFADevice_serialNumber :: Lens.Lens' VirtualMFADevice Prelude.Text+virtualMFADevice_serialNumber = Lens.lens (\VirtualMFADevice' {serialNumber} -> serialNumber) (\s@VirtualMFADevice' {} a -> s {serialNumber = a} :: VirtualMFADevice)++instance Data.FromXML VirtualMFADevice where+ parseXML x =+ VirtualMFADevice'+ Prelude.<$> (x Data..@? "Base32StringSeed")+ Prelude.<*> (x Data..@? "EnableDate")+ Prelude.<*> (x Data..@? "QRCodePNG")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (x Data..@? "User")+ Prelude.<*> (x Data..@ "SerialNumber")++instance Prelude.Hashable VirtualMFADevice where+ hashWithSalt _salt VirtualMFADevice' {..} =+ _salt+ `Prelude.hashWithSalt` base32StringSeed+ `Prelude.hashWithSalt` enableDate+ `Prelude.hashWithSalt` qRCodePNG+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` user+ `Prelude.hashWithSalt` serialNumber++instance Prelude.NFData VirtualMFADevice where+ rnf VirtualMFADevice' {..} =+ Prelude.rnf base32StringSeed+ `Prelude.seq` Prelude.rnf enableDate+ `Prelude.seq` Prelude.rnf qRCodePNG+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf user+ `Prelude.seq` Prelude.rnf serialNumber
+ gen/Amazonka/IAM/UntagInstanceProfile.hs view
@@ -0,0 +1,160 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UntagInstanceProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified tags from the IAM instance profile. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.UntagInstanceProfile+ ( -- * Creating a Request+ UntagInstanceProfile (..),+ newUntagInstanceProfile,++ -- * Request Lenses+ untagInstanceProfile_instanceProfileName,+ untagInstanceProfile_tagKeys,++ -- * Destructuring the Response+ UntagInstanceProfileResponse (..),+ newUntagInstanceProfileResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagInstanceProfile' smart constructor.+data UntagInstanceProfile = UntagInstanceProfile'+ { -- | The name of the IAM instance profile from which you want to remove tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ instanceProfileName :: Prelude.Text,+ -- | A list of key names as a simple array of strings. The tags with matching+ -- keys are removed from the specified instance profile.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagInstanceProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceProfileName', 'untagInstanceProfile_instanceProfileName' - The name of the IAM instance profile from which you want to remove tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tagKeys', 'untagInstanceProfile_tagKeys' - A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified instance profile.+newUntagInstanceProfile ::+ -- | 'instanceProfileName'+ Prelude.Text ->+ UntagInstanceProfile+newUntagInstanceProfile pInstanceProfileName_ =+ UntagInstanceProfile'+ { instanceProfileName =+ pInstanceProfileName_,+ tagKeys = Prelude.mempty+ }++-- | The name of the IAM instance profile from which you want to remove tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+untagInstanceProfile_instanceProfileName :: Lens.Lens' UntagInstanceProfile Prelude.Text+untagInstanceProfile_instanceProfileName = Lens.lens (\UntagInstanceProfile' {instanceProfileName} -> instanceProfileName) (\s@UntagInstanceProfile' {} a -> s {instanceProfileName = a} :: UntagInstanceProfile)++-- | A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified instance profile.+untagInstanceProfile_tagKeys :: Lens.Lens' UntagInstanceProfile [Prelude.Text]+untagInstanceProfile_tagKeys = Lens.lens (\UntagInstanceProfile' {tagKeys} -> tagKeys) (\s@UntagInstanceProfile' {} a -> s {tagKeys = a} :: UntagInstanceProfile) Prelude.. Lens.coerced++instance Core.AWSRequest UntagInstanceProfile where+ type+ AWSResponse UntagInstanceProfile =+ UntagInstanceProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull UntagInstanceProfileResponse'++instance Prelude.Hashable UntagInstanceProfile where+ hashWithSalt _salt UntagInstanceProfile' {..} =+ _salt+ `Prelude.hashWithSalt` instanceProfileName+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagInstanceProfile where+ rnf UntagInstanceProfile' {..} =+ Prelude.rnf instanceProfileName+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagInstanceProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UntagInstanceProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagInstanceProfile where+ toQuery UntagInstanceProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UntagInstanceProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "InstanceProfileName" Data.=: instanceProfileName,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagInstanceProfileResponse' smart constructor.+data UntagInstanceProfileResponse = UntagInstanceProfileResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagInstanceProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUntagInstanceProfileResponse ::+ UntagInstanceProfileResponse+newUntagInstanceProfileResponse =+ UntagInstanceProfileResponse'++instance Prelude.NFData UntagInstanceProfileResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UntagMFADevice.hs view
@@ -0,0 +1,164 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UntagMFADevice+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified tags from the IAM virtual multi-factor+-- authentication (MFA) device. For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.UntagMFADevice+ ( -- * Creating a Request+ UntagMFADevice (..),+ newUntagMFADevice,++ -- * Request Lenses+ untagMFADevice_serialNumber,+ untagMFADevice_tagKeys,++ -- * Destructuring the Response+ UntagMFADeviceResponse (..),+ newUntagMFADeviceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagMFADevice' smart constructor.+data UntagMFADevice = UntagMFADevice'+ { -- | The unique identifier for the IAM virtual MFA device from which you want+ -- to remove tags. For virtual MFA devices, the serial number is the same+ -- as the ARN.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serialNumber :: Prelude.Text,+ -- | A list of key names as a simple array of strings. The tags with matching+ -- keys are removed from the specified instance profile.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagMFADevice' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serialNumber', 'untagMFADevice_serialNumber' - The unique identifier for the IAM virtual MFA device from which you want+-- to remove tags. For virtual MFA devices, the serial number is the same+-- as the ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tagKeys', 'untagMFADevice_tagKeys' - A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified instance profile.+newUntagMFADevice ::+ -- | 'serialNumber'+ Prelude.Text ->+ UntagMFADevice+newUntagMFADevice pSerialNumber_ =+ UntagMFADevice'+ { serialNumber = pSerialNumber_,+ tagKeys = Prelude.mempty+ }++-- | The unique identifier for the IAM virtual MFA device from which you want+-- to remove tags. For virtual MFA devices, the serial number is the same+-- as the ARN.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+untagMFADevice_serialNumber :: Lens.Lens' UntagMFADevice Prelude.Text+untagMFADevice_serialNumber = Lens.lens (\UntagMFADevice' {serialNumber} -> serialNumber) (\s@UntagMFADevice' {} a -> s {serialNumber = a} :: UntagMFADevice)++-- | A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified instance profile.+untagMFADevice_tagKeys :: Lens.Lens' UntagMFADevice [Prelude.Text]+untagMFADevice_tagKeys = Lens.lens (\UntagMFADevice' {tagKeys} -> tagKeys) (\s@UntagMFADevice' {} a -> s {tagKeys = a} :: UntagMFADevice) Prelude.. Lens.coerced++instance Core.AWSRequest UntagMFADevice where+ type+ AWSResponse UntagMFADevice =+ UntagMFADeviceResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull UntagMFADeviceResponse'++instance Prelude.Hashable UntagMFADevice where+ hashWithSalt _salt UntagMFADevice' {..} =+ _salt+ `Prelude.hashWithSalt` serialNumber+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagMFADevice where+ rnf UntagMFADevice' {..} =+ Prelude.rnf serialNumber+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagMFADevice where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UntagMFADevice where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagMFADevice where+ toQuery UntagMFADevice' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UntagMFADevice" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SerialNumber" Data.=: serialNumber,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagMFADeviceResponse' smart constructor.+data UntagMFADeviceResponse = UntagMFADeviceResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagMFADeviceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUntagMFADeviceResponse ::+ UntagMFADeviceResponse+newUntagMFADeviceResponse = UntagMFADeviceResponse'++instance Prelude.NFData UntagMFADeviceResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UntagOpenIDConnectProvider.hs view
@@ -0,0 +1,169 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UntagOpenIDConnectProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified tags from the specified OpenID Connect+-- (OIDC)-compatible identity provider in IAM. For more information about+-- OIDC providers, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html About web identity federation>.+-- For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.UntagOpenIDConnectProvider+ ( -- * Creating a Request+ UntagOpenIDConnectProvider (..),+ newUntagOpenIDConnectProvider,++ -- * Request Lenses+ untagOpenIDConnectProvider_openIDConnectProviderArn,+ untagOpenIDConnectProvider_tagKeys,++ -- * Destructuring the Response+ UntagOpenIDConnectProviderResponse (..),+ newUntagOpenIDConnectProviderResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagOpenIDConnectProvider' smart constructor.+data UntagOpenIDConnectProvider = UntagOpenIDConnectProvider'+ { -- | The ARN of the OIDC provider in IAM from which you want to remove tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ openIDConnectProviderArn :: Prelude.Text,+ -- | A list of key names as a simple array of strings. The tags with matching+ -- keys are removed from the specified OIDC provider.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagOpenIDConnectProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderArn', 'untagOpenIDConnectProvider_openIDConnectProviderArn' - The ARN of the OIDC provider in IAM from which you want to remove tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tagKeys', 'untagOpenIDConnectProvider_tagKeys' - A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified OIDC provider.+newUntagOpenIDConnectProvider ::+ -- | 'openIDConnectProviderArn'+ Prelude.Text ->+ UntagOpenIDConnectProvider+newUntagOpenIDConnectProvider+ pOpenIDConnectProviderArn_ =+ UntagOpenIDConnectProvider'+ { openIDConnectProviderArn =+ pOpenIDConnectProviderArn_,+ tagKeys = Prelude.mempty+ }++-- | The ARN of the OIDC provider in IAM from which you want to remove tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+untagOpenIDConnectProvider_openIDConnectProviderArn :: Lens.Lens' UntagOpenIDConnectProvider Prelude.Text+untagOpenIDConnectProvider_openIDConnectProviderArn = Lens.lens (\UntagOpenIDConnectProvider' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@UntagOpenIDConnectProvider' {} a -> s {openIDConnectProviderArn = a} :: UntagOpenIDConnectProvider)++-- | A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified OIDC provider.+untagOpenIDConnectProvider_tagKeys :: Lens.Lens' UntagOpenIDConnectProvider [Prelude.Text]+untagOpenIDConnectProvider_tagKeys = Lens.lens (\UntagOpenIDConnectProvider' {tagKeys} -> tagKeys) (\s@UntagOpenIDConnectProvider' {} a -> s {tagKeys = a} :: UntagOpenIDConnectProvider) Prelude.. Lens.coerced++instance Core.AWSRequest UntagOpenIDConnectProvider where+ type+ AWSResponse UntagOpenIDConnectProvider =+ UntagOpenIDConnectProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ UntagOpenIDConnectProviderResponse'++instance Prelude.Hashable UntagOpenIDConnectProvider where+ hashWithSalt _salt UntagOpenIDConnectProvider' {..} =+ _salt+ `Prelude.hashWithSalt` openIDConnectProviderArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagOpenIDConnectProvider where+ rnf UntagOpenIDConnectProvider' {..} =+ Prelude.rnf openIDConnectProviderArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagOpenIDConnectProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UntagOpenIDConnectProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagOpenIDConnectProvider where+ toQuery UntagOpenIDConnectProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UntagOpenIDConnectProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OpenIDConnectProviderArn"+ Data.=: openIDConnectProviderArn,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagOpenIDConnectProviderResponse' smart constructor.+data UntagOpenIDConnectProviderResponse = UntagOpenIDConnectProviderResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagOpenIDConnectProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUntagOpenIDConnectProviderResponse ::+ UntagOpenIDConnectProviderResponse+newUntagOpenIDConnectProviderResponse =+ UntagOpenIDConnectProviderResponse'++instance+ Prelude.NFData+ UntagOpenIDConnectProviderResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/UntagPolicy.hs view
@@ -0,0 +1,158 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UntagPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified tags from the customer managed policy. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.UntagPolicy+ ( -- * Creating a Request+ UntagPolicy (..),+ newUntagPolicy,++ -- * Request Lenses+ untagPolicy_policyArn,+ untagPolicy_tagKeys,++ -- * Destructuring the Response+ UntagPolicyResponse (..),+ newUntagPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagPolicy' smart constructor.+data UntagPolicy = UntagPolicy'+ { -- | The ARN of the IAM customer managed policy from which you want to remove+ -- tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ policyArn :: Prelude.Text,+ -- | A list of key names as a simple array of strings. The tags with matching+ -- keys are removed from the specified policy.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policyArn', 'untagPolicy_policyArn' - The ARN of the IAM customer managed policy from which you want to remove+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tagKeys', 'untagPolicy_tagKeys' - A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified policy.+newUntagPolicy ::+ -- | 'policyArn'+ Prelude.Text ->+ UntagPolicy+newUntagPolicy pPolicyArn_ =+ UntagPolicy'+ { policyArn = pPolicyArn_,+ tagKeys = Prelude.mempty+ }++-- | The ARN of the IAM customer managed policy from which you want to remove+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+untagPolicy_policyArn :: Lens.Lens' UntagPolicy Prelude.Text+untagPolicy_policyArn = Lens.lens (\UntagPolicy' {policyArn} -> policyArn) (\s@UntagPolicy' {} a -> s {policyArn = a} :: UntagPolicy)++-- | A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified policy.+untagPolicy_tagKeys :: Lens.Lens' UntagPolicy [Prelude.Text]+untagPolicy_tagKeys = Lens.lens (\UntagPolicy' {tagKeys} -> tagKeys) (\s@UntagPolicy' {} a -> s {tagKeys = a} :: UntagPolicy) Prelude.. Lens.coerced++instance Core.AWSRequest UntagPolicy where+ type AWSResponse UntagPolicy = UntagPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull UntagPolicyResponse'++instance Prelude.Hashable UntagPolicy where+ hashWithSalt _salt UntagPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` policyArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagPolicy where+ rnf UntagPolicy' {..} =+ Prelude.rnf policyArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UntagPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagPolicy where+ toQuery UntagPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UntagPolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "PolicyArn" Data.=: policyArn,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagPolicyResponse' smart constructor.+data UntagPolicyResponse = UntagPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUntagPolicyResponse ::+ UntagPolicyResponse+newUntagPolicyResponse = UntagPolicyResponse'++instance Prelude.NFData UntagPolicyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UntagRole.hs view
@@ -0,0 +1,155 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UntagRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified tags from the role. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.UntagRole+ ( -- * Creating a Request+ UntagRole (..),+ newUntagRole,++ -- * Request Lenses+ untagRole_roleName,+ untagRole_tagKeys,++ -- * Destructuring the Response+ UntagRoleResponse (..),+ newUntagRoleResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagRole' smart constructor.+data UntagRole = UntagRole'+ { -- | The name of the IAM role from which you want to remove tags.+ --+ -- This parameter accepts (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that consist of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text,+ -- | A list of key names as a simple array of strings. The tags with matching+ -- keys are removed from the specified role.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'untagRole_roleName' - The name of the IAM role from which you want to remove tags.+--+-- This parameter accepts (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consist of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tagKeys', 'untagRole_tagKeys' - A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified role.+newUntagRole ::+ -- | 'roleName'+ Prelude.Text ->+ UntagRole+newUntagRole pRoleName_ =+ UntagRole'+ { roleName = pRoleName_,+ tagKeys = Prelude.mempty+ }++-- | The name of the IAM role from which you want to remove tags.+--+-- This parameter accepts (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that consist of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+untagRole_roleName :: Lens.Lens' UntagRole Prelude.Text+untagRole_roleName = Lens.lens (\UntagRole' {roleName} -> roleName) (\s@UntagRole' {} a -> s {roleName = a} :: UntagRole)++-- | A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified role.+untagRole_tagKeys :: Lens.Lens' UntagRole [Prelude.Text]+untagRole_tagKeys = Lens.lens (\UntagRole' {tagKeys} -> tagKeys) (\s@UntagRole' {} a -> s {tagKeys = a} :: UntagRole) Prelude.. Lens.coerced++instance Core.AWSRequest UntagRole where+ type AWSResponse UntagRole = UntagRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull UntagRoleResponse'++instance Prelude.Hashable UntagRole where+ hashWithSalt _salt UntagRole' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagRole where+ rnf UntagRole' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UntagRole where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagRole where+ toQuery UntagRole' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UntagRole" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagRoleResponse' smart constructor.+data UntagRoleResponse = UntagRoleResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUntagRoleResponse ::+ UntagRoleResponse+newUntagRoleResponse = UntagRoleResponse'++instance Prelude.NFData UntagRoleResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UntagSAMLProvider.hs view
@@ -0,0 +1,166 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UntagSAMLProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified tags from the specified Security Assertion Markup+-- Language (SAML) identity provider in IAM. For more information about+-- these providers, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc.html About web identity federation>.+-- For more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.UntagSAMLProvider+ ( -- * Creating a Request+ UntagSAMLProvider (..),+ newUntagSAMLProvider,++ -- * Request Lenses+ untagSAMLProvider_sAMLProviderArn,+ untagSAMLProvider_tagKeys,++ -- * Destructuring the Response+ UntagSAMLProviderResponse (..),+ newUntagSAMLProviderResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagSAMLProvider' smart constructor.+data UntagSAMLProvider = UntagSAMLProvider'+ { -- | The ARN of the SAML identity provider in IAM from which you want to+ -- remove tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ sAMLProviderArn :: Prelude.Text,+ -- | A list of key names as a simple array of strings. The tags with matching+ -- keys are removed from the specified SAML identity provider.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagSAMLProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sAMLProviderArn', 'untagSAMLProvider_sAMLProviderArn' - The ARN of the SAML identity provider in IAM from which you want to+-- remove tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tagKeys', 'untagSAMLProvider_tagKeys' - A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified SAML identity provider.+newUntagSAMLProvider ::+ -- | 'sAMLProviderArn'+ Prelude.Text ->+ UntagSAMLProvider+newUntagSAMLProvider pSAMLProviderArn_ =+ UntagSAMLProvider'+ { sAMLProviderArn =+ pSAMLProviderArn_,+ tagKeys = Prelude.mempty+ }++-- | The ARN of the SAML identity provider in IAM from which you want to+-- remove tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+untagSAMLProvider_sAMLProviderArn :: Lens.Lens' UntagSAMLProvider Prelude.Text+untagSAMLProvider_sAMLProviderArn = Lens.lens (\UntagSAMLProvider' {sAMLProviderArn} -> sAMLProviderArn) (\s@UntagSAMLProvider' {} a -> s {sAMLProviderArn = a} :: UntagSAMLProvider)++-- | A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified SAML identity provider.+untagSAMLProvider_tagKeys :: Lens.Lens' UntagSAMLProvider [Prelude.Text]+untagSAMLProvider_tagKeys = Lens.lens (\UntagSAMLProvider' {tagKeys} -> tagKeys) (\s@UntagSAMLProvider' {} a -> s {tagKeys = a} :: UntagSAMLProvider) Prelude.. Lens.coerced++instance Core.AWSRequest UntagSAMLProvider where+ type+ AWSResponse UntagSAMLProvider =+ UntagSAMLProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull UntagSAMLProviderResponse'++instance Prelude.Hashable UntagSAMLProvider where+ hashWithSalt _salt UntagSAMLProvider' {..} =+ _salt+ `Prelude.hashWithSalt` sAMLProviderArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagSAMLProvider where+ rnf UntagSAMLProvider' {..} =+ Prelude.rnf sAMLProviderArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagSAMLProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UntagSAMLProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagSAMLProvider where+ toQuery UntagSAMLProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UntagSAMLProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SAMLProviderArn" Data.=: sAMLProviderArn,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagSAMLProviderResponse' smart constructor.+data UntagSAMLProviderResponse = UntagSAMLProviderResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagSAMLProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUntagSAMLProviderResponse ::+ UntagSAMLProviderResponse+newUntagSAMLProviderResponse =+ UntagSAMLProviderResponse'++instance Prelude.NFData UntagSAMLProviderResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UntagServerCertificate.hs view
@@ -0,0 +1,175 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UntagServerCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified tags from the IAM server certificate. For more+-- information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- For certificates in a Region supported by Certificate Manager (ACM), we+-- recommend that you don\'t use IAM server certificates. Instead, use ACM+-- to provision, manage, and deploy your server certificates. For more+-- information about IAM server certificates,+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with server certificates>+-- in the /IAM User Guide/.+module Amazonka.IAM.UntagServerCertificate+ ( -- * Creating a Request+ UntagServerCertificate (..),+ newUntagServerCertificate,++ -- * Request Lenses+ untagServerCertificate_serverCertificateName,+ untagServerCertificate_tagKeys,++ -- * Destructuring the Response+ UntagServerCertificateResponse (..),+ newUntagServerCertificateResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagServerCertificate' smart constructor.+data UntagServerCertificate = UntagServerCertificate'+ { -- | The name of the IAM server certificate from which you want to remove+ -- tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serverCertificateName :: Prelude.Text,+ -- | A list of key names as a simple array of strings. The tags with matching+ -- keys are removed from the specified IAM server certificate.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagServerCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serverCertificateName', 'untagServerCertificate_serverCertificateName' - The name of the IAM server certificate from which you want to remove+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tagKeys', 'untagServerCertificate_tagKeys' - A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified IAM server certificate.+newUntagServerCertificate ::+ -- | 'serverCertificateName'+ Prelude.Text ->+ UntagServerCertificate+newUntagServerCertificate pServerCertificateName_ =+ UntagServerCertificate'+ { serverCertificateName =+ pServerCertificateName_,+ tagKeys = Prelude.mempty+ }++-- | The name of the IAM server certificate from which you want to remove+-- tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+untagServerCertificate_serverCertificateName :: Lens.Lens' UntagServerCertificate Prelude.Text+untagServerCertificate_serverCertificateName = Lens.lens (\UntagServerCertificate' {serverCertificateName} -> serverCertificateName) (\s@UntagServerCertificate' {} a -> s {serverCertificateName = a} :: UntagServerCertificate)++-- | A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified IAM server certificate.+untagServerCertificate_tagKeys :: Lens.Lens' UntagServerCertificate [Prelude.Text]+untagServerCertificate_tagKeys = Lens.lens (\UntagServerCertificate' {tagKeys} -> tagKeys) (\s@UntagServerCertificate' {} a -> s {tagKeys = a} :: UntagServerCertificate) Prelude.. Lens.coerced++instance Core.AWSRequest UntagServerCertificate where+ type+ AWSResponse UntagServerCertificate =+ UntagServerCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ UntagServerCertificateResponse'++instance Prelude.Hashable UntagServerCertificate where+ hashWithSalt _salt UntagServerCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` serverCertificateName+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagServerCertificate where+ rnf UntagServerCertificate' {..} =+ Prelude.rnf serverCertificateName+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagServerCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UntagServerCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagServerCertificate where+ toQuery UntagServerCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UntagServerCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "ServerCertificateName"+ Data.=: serverCertificateName,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagServerCertificateResponse' smart constructor.+data UntagServerCertificateResponse = UntagServerCertificateResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagServerCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUntagServerCertificateResponse ::+ UntagServerCertificateResponse+newUntagServerCertificateResponse =+ UntagServerCertificateResponse'++instance+ Prelude.NFData+ UntagServerCertificateResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/UntagUser.hs view
@@ -0,0 +1,155 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UntagUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified tags from the user. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+module Amazonka.IAM.UntagUser+ ( -- * Creating a Request+ UntagUser (..),+ newUntagUser,++ -- * Request Lenses+ untagUser_userName,+ untagUser_tagKeys,++ -- * Destructuring the Response+ UntagUserResponse (..),+ newUntagUserResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagUser' smart constructor.+data UntagUser = UntagUser'+ { -- | The name of the IAM user from which you want to remove tags.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | A list of key names as a simple array of strings. The tags with matching+ -- keys are removed from the specified user.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'untagUser_userName' - The name of the IAM user from which you want to remove tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'tagKeys', 'untagUser_tagKeys' - A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified user.+newUntagUser ::+ -- | 'userName'+ Prelude.Text ->+ UntagUser+newUntagUser pUserName_ =+ UntagUser'+ { userName = pUserName_,+ tagKeys = Prelude.mempty+ }++-- | The name of the IAM user from which you want to remove tags.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+untagUser_userName :: Lens.Lens' UntagUser Prelude.Text+untagUser_userName = Lens.lens (\UntagUser' {userName} -> userName) (\s@UntagUser' {} a -> s {userName = a} :: UntagUser)++-- | A list of key names as a simple array of strings. The tags with matching+-- keys are removed from the specified user.+untagUser_tagKeys :: Lens.Lens' UntagUser [Prelude.Text]+untagUser_tagKeys = Lens.lens (\UntagUser' {tagKeys} -> tagKeys) (\s@UntagUser' {} a -> s {tagKeys = a} :: UntagUser) Prelude.. Lens.coerced++instance Core.AWSRequest UntagUser where+ type AWSResponse UntagUser = UntagUserResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull UntagUserResponse'++instance Prelude.Hashable UntagUser where+ hashWithSalt _salt UntagUser' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagUser where+ rnf UntagUser' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagUser where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UntagUser where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagUser where+ toQuery UntagUser' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UntagUser" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "TagKeys" Data.=: Data.toQueryList "member" tagKeys+ ]++-- | /See:/ 'newUntagUserResponse' smart constructor.+data UntagUserResponse = UntagUserResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUntagUserResponse ::+ UntagUserResponse+newUntagUserResponse = UntagUserResponse'++instance Prelude.NFData UntagUserResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateAccessKey.hs view
@@ -0,0 +1,200 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateAccessKey+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Changes the status of the specified access key from Active to Inactive,+-- or vice versa. This operation can be used to disable a user\'s key as+-- part of a key rotation workflow.+--+-- If the @UserName@ is not specified, the user name is determined+-- implicitly based on the Amazon Web Services access key ID used to sign+-- the request. If a temporary access key is used, then @UserName@ is+-- required. If a long-term key is assigned to the user, then @UserName@ is+-- not required. This operation works for access keys under the Amazon Web+-- Services account. Consequently, you can use this operation to manage+-- Amazon Web Services account root user credentials even if the Amazon Web+-- Services account has no associated users.+--+-- For information about rotating keys, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingCredentials.html Managing keys and certificates>+-- in the /IAM User Guide/.+module Amazonka.IAM.UpdateAccessKey+ ( -- * Creating a Request+ UpdateAccessKey (..),+ newUpdateAccessKey,++ -- * Request Lenses+ updateAccessKey_userName,+ updateAccessKey_accessKeyId,+ updateAccessKey_status,++ -- * Destructuring the Response+ UpdateAccessKeyResponse (..),+ newUpdateAccessKeyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateAccessKey' smart constructor.+data UpdateAccessKey = UpdateAccessKey'+ { -- | The name of the user whose key you want to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text,+ -- | The access key ID of the secret access key you want to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ accessKeyId :: Core.AccessKey,+ -- | The status you want to assign to the secret access key. @Active@ means+ -- that the key can be used for programmatic calls to Amazon Web Services,+ -- while @Inactive@ means that the key cannot be used.+ status :: StatusType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAccessKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'updateAccessKey_userName' - The name of the user whose key you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'accessKeyId', 'updateAccessKey_accessKeyId' - The access key ID of the secret access key you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+--+-- 'status', 'updateAccessKey_status' - The status you want to assign to the secret access key. @Active@ means+-- that the key can be used for programmatic calls to Amazon Web Services,+-- while @Inactive@ means that the key cannot be used.+newUpdateAccessKey ::+ -- | 'accessKeyId'+ Core.AccessKey ->+ -- | 'status'+ StatusType ->+ UpdateAccessKey+newUpdateAccessKey pAccessKeyId_ pStatus_ =+ UpdateAccessKey'+ { userName = Prelude.Nothing,+ accessKeyId = pAccessKeyId_,+ status = pStatus_+ }++-- | The name of the user whose key you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateAccessKey_userName :: Lens.Lens' UpdateAccessKey (Prelude.Maybe Prelude.Text)+updateAccessKey_userName = Lens.lens (\UpdateAccessKey' {userName} -> userName) (\s@UpdateAccessKey' {} a -> s {userName = a} :: UpdateAccessKey)++-- | The access key ID of the secret access key you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+updateAccessKey_accessKeyId :: Lens.Lens' UpdateAccessKey Core.AccessKey+updateAccessKey_accessKeyId = Lens.lens (\UpdateAccessKey' {accessKeyId} -> accessKeyId) (\s@UpdateAccessKey' {} a -> s {accessKeyId = a} :: UpdateAccessKey)++-- | The status you want to assign to the secret access key. @Active@ means+-- that the key can be used for programmatic calls to Amazon Web Services,+-- while @Inactive@ means that the key cannot be used.+updateAccessKey_status :: Lens.Lens' UpdateAccessKey StatusType+updateAccessKey_status = Lens.lens (\UpdateAccessKey' {status} -> status) (\s@UpdateAccessKey' {} a -> s {status = a} :: UpdateAccessKey)++instance Core.AWSRequest UpdateAccessKey where+ type+ AWSResponse UpdateAccessKey =+ UpdateAccessKeyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull UpdateAccessKeyResponse'++instance Prelude.Hashable UpdateAccessKey where+ hashWithSalt _salt UpdateAccessKey' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` accessKeyId+ `Prelude.hashWithSalt` status++instance Prelude.NFData UpdateAccessKey where+ rnf UpdateAccessKey' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf accessKeyId+ `Prelude.seq` Prelude.rnf status++instance Data.ToHeaders UpdateAccessKey where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateAccessKey where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateAccessKey where+ toQuery UpdateAccessKey' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateAccessKey" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "AccessKeyId" Data.=: accessKeyId,+ "Status" Data.=: status+ ]++-- | /See:/ 'newUpdateAccessKeyResponse' smart constructor.+data UpdateAccessKeyResponse = UpdateAccessKeyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAccessKeyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateAccessKeyResponse ::+ UpdateAccessKeyResponse+newUpdateAccessKeyResponse = UpdateAccessKeyResponse'++instance Prelude.NFData UpdateAccessKeyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateAccountPasswordPolicy.hs view
@@ -0,0 +1,432 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateAccountPasswordPolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the password policy settings for the Amazon Web Services+-- account.+--+-- This operation does not support partial updates. No parameters are+-- required, but if you do not specify a parameter, that parameter\'s value+-- reverts to its default value. See the __Request Parameters__ section for+-- each parameter\'s default value. Also note that some parameters do not+-- allow the default parameter to be explicitly set. Instead, to invoke the+-- default value, do not include that parameter when you invoke the+-- operation.+--+-- For more information about using a password policy, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingPasswordPolicies.html Managing an IAM password policy>+-- in the /IAM User Guide/.+module Amazonka.IAM.UpdateAccountPasswordPolicy+ ( -- * Creating a Request+ UpdateAccountPasswordPolicy (..),+ newUpdateAccountPasswordPolicy,++ -- * Request Lenses+ updateAccountPasswordPolicy_allowUsersToChangePassword,+ updateAccountPasswordPolicy_hardExpiry,+ updateAccountPasswordPolicy_maxPasswordAge,+ updateAccountPasswordPolicy_minimumPasswordLength,+ updateAccountPasswordPolicy_passwordReusePrevention,+ updateAccountPasswordPolicy_requireLowercaseCharacters,+ updateAccountPasswordPolicy_requireNumbers,+ updateAccountPasswordPolicy_requireSymbols,+ updateAccountPasswordPolicy_requireUppercaseCharacters,++ -- * Destructuring the Response+ UpdateAccountPasswordPolicyResponse (..),+ newUpdateAccountPasswordPolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateAccountPasswordPolicy' smart constructor.+data UpdateAccountPasswordPolicy = UpdateAccountPasswordPolicy'+ { -- | Allows all IAM users in your account to use the Amazon Web Services+ -- Management Console to change their own passwords. For more information,+ -- see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_enable-user-change.html Permitting IAM users to change their own passwords>+ -- in the /IAM User Guide/.+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @false@. The result is that IAM users in the+ -- account do not automatically have permissions to change their own+ -- password.+ allowUsersToChangePassword :: Prelude.Maybe Prelude.Bool,+ -- | Prevents IAM users who are accessing the account via the Amazon Web+ -- Services Management Console from setting a new console password after+ -- their password has expired. The IAM user cannot access the console until+ -- an administrator resets the password.+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @false@. The result is that IAM users can+ -- change their passwords after they expire and continue to sign in as the+ -- user.+ --+ -- In the Amazon Web Services Management Console, the custom password+ -- policy option __Allow users to change their own password__ gives IAM+ -- users permissions to @iam:ChangePassword@ for only their user and to the+ -- @iam:GetAccountPasswordPolicy@ action. This option does not attach a+ -- permissions policy to each user, rather the permissions are applied at+ -- the account-level for all users by IAM. IAM users with+ -- @iam:ChangePassword@ permission and active access keys can reset their+ -- own expired console password using the CLI or API.+ hardExpiry :: Prelude.Maybe Prelude.Bool,+ -- | The number of days that an IAM user password is valid.+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @0@. The result is that IAM user passwords+ -- never expire.+ maxPasswordAge :: Prelude.Maybe Prelude.Natural,+ -- | The minimum number of characters allowed in an IAM user password.+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @6@.+ minimumPasswordLength :: Prelude.Maybe Prelude.Natural,+ -- | Specifies the number of previous passwords that IAM users are prevented+ -- from reusing.+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @0@. The result is that IAM users are not+ -- prevented from reusing previous passwords.+ passwordReusePrevention :: Prelude.Maybe Prelude.Natural,+ -- | Specifies whether IAM user passwords must contain at least one lowercase+ -- character from the ISO basic Latin alphabet (a to z).+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @false@. The result is that passwords do not+ -- require at least one lowercase character.+ requireLowercaseCharacters :: Prelude.Maybe Prelude.Bool,+ -- | Specifies whether IAM user passwords must contain at least one numeric+ -- character (0 to 9).+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @false@. The result is that passwords do not+ -- require at least one numeric character.+ requireNumbers :: Prelude.Maybe Prelude.Bool,+ -- | Specifies whether IAM user passwords must contain at least one of the+ -- following non-alphanumeric characters:+ --+ -- ! \@ # $ % ^ & * ( ) _ + - = [ ] { } | \'+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @false@. The result is that passwords do not+ -- require at least one symbol character.+ requireSymbols :: Prelude.Maybe Prelude.Bool,+ -- | Specifies whether IAM user passwords must contain at least one uppercase+ -- character from the ISO basic Latin alphabet (A to Z).+ --+ -- If you do not specify a value for this parameter, then the operation+ -- uses the default value of @false@. The result is that passwords do not+ -- require at least one uppercase character.+ requireUppercaseCharacters :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAccountPasswordPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'allowUsersToChangePassword', 'updateAccountPasswordPolicy_allowUsersToChangePassword' - Allows all IAM users in your account to use the Amazon Web Services+-- Management Console to change their own passwords. For more information,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_enable-user-change.html Permitting IAM users to change their own passwords>+-- in the /IAM User Guide/.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that IAM users in the+-- account do not automatically have permissions to change their own+-- password.+--+-- 'hardExpiry', 'updateAccountPasswordPolicy_hardExpiry' - Prevents IAM users who are accessing the account via the Amazon Web+-- Services Management Console from setting a new console password after+-- their password has expired. The IAM user cannot access the console until+-- an administrator resets the password.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that IAM users can+-- change their passwords after they expire and continue to sign in as the+-- user.+--+-- In the Amazon Web Services Management Console, the custom password+-- policy option __Allow users to change their own password__ gives IAM+-- users permissions to @iam:ChangePassword@ for only their user and to the+-- @iam:GetAccountPasswordPolicy@ action. This option does not attach a+-- permissions policy to each user, rather the permissions are applied at+-- the account-level for all users by IAM. IAM users with+-- @iam:ChangePassword@ permission and active access keys can reset their+-- own expired console password using the CLI or API.+--+-- 'maxPasswordAge', 'updateAccountPasswordPolicy_maxPasswordAge' - The number of days that an IAM user password is valid.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @0@. The result is that IAM user passwords+-- never expire.+--+-- 'minimumPasswordLength', 'updateAccountPasswordPolicy_minimumPasswordLength' - The minimum number of characters allowed in an IAM user password.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @6@.+--+-- 'passwordReusePrevention', 'updateAccountPasswordPolicy_passwordReusePrevention' - Specifies the number of previous passwords that IAM users are prevented+-- from reusing.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @0@. The result is that IAM users are not+-- prevented from reusing previous passwords.+--+-- 'requireLowercaseCharacters', 'updateAccountPasswordPolicy_requireLowercaseCharacters' - Specifies whether IAM user passwords must contain at least one lowercase+-- character from the ISO basic Latin alphabet (a to z).+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that passwords do not+-- require at least one lowercase character.+--+-- 'requireNumbers', 'updateAccountPasswordPolicy_requireNumbers' - Specifies whether IAM user passwords must contain at least one numeric+-- character (0 to 9).+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that passwords do not+-- require at least one numeric character.+--+-- 'requireSymbols', 'updateAccountPasswordPolicy_requireSymbols' - Specifies whether IAM user passwords must contain at least one of the+-- following non-alphanumeric characters:+--+-- ! \@ # $ % ^ & * ( ) _ + - = [ ] { } | \'+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that passwords do not+-- require at least one symbol character.+--+-- 'requireUppercaseCharacters', 'updateAccountPasswordPolicy_requireUppercaseCharacters' - Specifies whether IAM user passwords must contain at least one uppercase+-- character from the ISO basic Latin alphabet (A to Z).+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that passwords do not+-- require at least one uppercase character.+newUpdateAccountPasswordPolicy ::+ UpdateAccountPasswordPolicy+newUpdateAccountPasswordPolicy =+ UpdateAccountPasswordPolicy'+ { allowUsersToChangePassword =+ Prelude.Nothing,+ hardExpiry = Prelude.Nothing,+ maxPasswordAge = Prelude.Nothing,+ minimumPasswordLength = Prelude.Nothing,+ passwordReusePrevention = Prelude.Nothing,+ requireLowercaseCharacters = Prelude.Nothing,+ requireNumbers = Prelude.Nothing,+ requireSymbols = Prelude.Nothing,+ requireUppercaseCharacters = Prelude.Nothing+ }++-- | Allows all IAM users in your account to use the Amazon Web Services+-- Management Console to change their own passwords. For more information,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_enable-user-change.html Permitting IAM users to change their own passwords>+-- in the /IAM User Guide/.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that IAM users in the+-- account do not automatically have permissions to change their own+-- password.+updateAccountPasswordPolicy_allowUsersToChangePassword :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Bool)+updateAccountPasswordPolicy_allowUsersToChangePassword = Lens.lens (\UpdateAccountPasswordPolicy' {allowUsersToChangePassword} -> allowUsersToChangePassword) (\s@UpdateAccountPasswordPolicy' {} a -> s {allowUsersToChangePassword = a} :: UpdateAccountPasswordPolicy)++-- | Prevents IAM users who are accessing the account via the Amazon Web+-- Services Management Console from setting a new console password after+-- their password has expired. The IAM user cannot access the console until+-- an administrator resets the password.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that IAM users can+-- change their passwords after they expire and continue to sign in as the+-- user.+--+-- In the Amazon Web Services Management Console, the custom password+-- policy option __Allow users to change their own password__ gives IAM+-- users permissions to @iam:ChangePassword@ for only their user and to the+-- @iam:GetAccountPasswordPolicy@ action. This option does not attach a+-- permissions policy to each user, rather the permissions are applied at+-- the account-level for all users by IAM. IAM users with+-- @iam:ChangePassword@ permission and active access keys can reset their+-- own expired console password using the CLI or API.+updateAccountPasswordPolicy_hardExpiry :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Bool)+updateAccountPasswordPolicy_hardExpiry = Lens.lens (\UpdateAccountPasswordPolicy' {hardExpiry} -> hardExpiry) (\s@UpdateAccountPasswordPolicy' {} a -> s {hardExpiry = a} :: UpdateAccountPasswordPolicy)++-- | The number of days that an IAM user password is valid.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @0@. The result is that IAM user passwords+-- never expire.+updateAccountPasswordPolicy_maxPasswordAge :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Natural)+updateAccountPasswordPolicy_maxPasswordAge = Lens.lens (\UpdateAccountPasswordPolicy' {maxPasswordAge} -> maxPasswordAge) (\s@UpdateAccountPasswordPolicy' {} a -> s {maxPasswordAge = a} :: UpdateAccountPasswordPolicy)++-- | The minimum number of characters allowed in an IAM user password.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @6@.+updateAccountPasswordPolicy_minimumPasswordLength :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Natural)+updateAccountPasswordPolicy_minimumPasswordLength = Lens.lens (\UpdateAccountPasswordPolicy' {minimumPasswordLength} -> minimumPasswordLength) (\s@UpdateAccountPasswordPolicy' {} a -> s {minimumPasswordLength = a} :: UpdateAccountPasswordPolicy)++-- | Specifies the number of previous passwords that IAM users are prevented+-- from reusing.+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @0@. The result is that IAM users are not+-- prevented from reusing previous passwords.+updateAccountPasswordPolicy_passwordReusePrevention :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Natural)+updateAccountPasswordPolicy_passwordReusePrevention = Lens.lens (\UpdateAccountPasswordPolicy' {passwordReusePrevention} -> passwordReusePrevention) (\s@UpdateAccountPasswordPolicy' {} a -> s {passwordReusePrevention = a} :: UpdateAccountPasswordPolicy)++-- | Specifies whether IAM user passwords must contain at least one lowercase+-- character from the ISO basic Latin alphabet (a to z).+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that passwords do not+-- require at least one lowercase character.+updateAccountPasswordPolicy_requireLowercaseCharacters :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Bool)+updateAccountPasswordPolicy_requireLowercaseCharacters = Lens.lens (\UpdateAccountPasswordPolicy' {requireLowercaseCharacters} -> requireLowercaseCharacters) (\s@UpdateAccountPasswordPolicy' {} a -> s {requireLowercaseCharacters = a} :: UpdateAccountPasswordPolicy)++-- | Specifies whether IAM user passwords must contain at least one numeric+-- character (0 to 9).+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that passwords do not+-- require at least one numeric character.+updateAccountPasswordPolicy_requireNumbers :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Bool)+updateAccountPasswordPolicy_requireNumbers = Lens.lens (\UpdateAccountPasswordPolicy' {requireNumbers} -> requireNumbers) (\s@UpdateAccountPasswordPolicy' {} a -> s {requireNumbers = a} :: UpdateAccountPasswordPolicy)++-- | Specifies whether IAM user passwords must contain at least one of the+-- following non-alphanumeric characters:+--+-- ! \@ # $ % ^ & * ( ) _ + - = [ ] { } | \'+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that passwords do not+-- require at least one symbol character.+updateAccountPasswordPolicy_requireSymbols :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Bool)+updateAccountPasswordPolicy_requireSymbols = Lens.lens (\UpdateAccountPasswordPolicy' {requireSymbols} -> requireSymbols) (\s@UpdateAccountPasswordPolicy' {} a -> s {requireSymbols = a} :: UpdateAccountPasswordPolicy)++-- | Specifies whether IAM user passwords must contain at least one uppercase+-- character from the ISO basic Latin alphabet (A to Z).+--+-- If you do not specify a value for this parameter, then the operation+-- uses the default value of @false@. The result is that passwords do not+-- require at least one uppercase character.+updateAccountPasswordPolicy_requireUppercaseCharacters :: Lens.Lens' UpdateAccountPasswordPolicy (Prelude.Maybe Prelude.Bool)+updateAccountPasswordPolicy_requireUppercaseCharacters = Lens.lens (\UpdateAccountPasswordPolicy' {requireUppercaseCharacters} -> requireUppercaseCharacters) (\s@UpdateAccountPasswordPolicy' {} a -> s {requireUppercaseCharacters = a} :: UpdateAccountPasswordPolicy)++instance Core.AWSRequest UpdateAccountPasswordPolicy where+ type+ AWSResponse UpdateAccountPasswordPolicy =+ UpdateAccountPasswordPolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ UpdateAccountPasswordPolicyResponse'++instance Prelude.Hashable UpdateAccountPasswordPolicy where+ hashWithSalt _salt UpdateAccountPasswordPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` allowUsersToChangePassword+ `Prelude.hashWithSalt` hardExpiry+ `Prelude.hashWithSalt` maxPasswordAge+ `Prelude.hashWithSalt` minimumPasswordLength+ `Prelude.hashWithSalt` passwordReusePrevention+ `Prelude.hashWithSalt` requireLowercaseCharacters+ `Prelude.hashWithSalt` requireNumbers+ `Prelude.hashWithSalt` requireSymbols+ `Prelude.hashWithSalt` requireUppercaseCharacters++instance Prelude.NFData UpdateAccountPasswordPolicy where+ rnf UpdateAccountPasswordPolicy' {..} =+ Prelude.rnf allowUsersToChangePassword+ `Prelude.seq` Prelude.rnf hardExpiry+ `Prelude.seq` Prelude.rnf maxPasswordAge+ `Prelude.seq` Prelude.rnf minimumPasswordLength+ `Prelude.seq` Prelude.rnf passwordReusePrevention+ `Prelude.seq` Prelude.rnf requireLowercaseCharacters+ `Prelude.seq` Prelude.rnf requireNumbers+ `Prelude.seq` Prelude.rnf requireSymbols+ `Prelude.seq` Prelude.rnf requireUppercaseCharacters++instance Data.ToHeaders UpdateAccountPasswordPolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateAccountPasswordPolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateAccountPasswordPolicy where+ toQuery UpdateAccountPasswordPolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "UpdateAccountPasswordPolicy" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "AllowUsersToChangePassword"+ Data.=: allowUsersToChangePassword,+ "HardExpiry" Data.=: hardExpiry,+ "MaxPasswordAge" Data.=: maxPasswordAge,+ "MinimumPasswordLength"+ Data.=: minimumPasswordLength,+ "PasswordReusePrevention"+ Data.=: passwordReusePrevention,+ "RequireLowercaseCharacters"+ Data.=: requireLowercaseCharacters,+ "RequireNumbers" Data.=: requireNumbers,+ "RequireSymbols" Data.=: requireSymbols,+ "RequireUppercaseCharacters"+ Data.=: requireUppercaseCharacters+ ]++-- | /See:/ 'newUpdateAccountPasswordPolicyResponse' smart constructor.+data UpdateAccountPasswordPolicyResponse = UpdateAccountPasswordPolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAccountPasswordPolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateAccountPasswordPolicyResponse ::+ UpdateAccountPasswordPolicyResponse+newUpdateAccountPasswordPolicyResponse =+ UpdateAccountPasswordPolicyResponse'++instance+ Prelude.NFData+ UpdateAccountPasswordPolicyResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateAssumeRolePolicy.hs view
@@ -0,0 +1,213 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateAssumeRolePolicy+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the policy that grants an IAM entity permission to assume a+-- role. This is typically referred to as the \"role trust policy\". For+-- more information about roles, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html Using roles to delegate permissions and federate identities>.+module Amazonka.IAM.UpdateAssumeRolePolicy+ ( -- * Creating a Request+ UpdateAssumeRolePolicy (..),+ newUpdateAssumeRolePolicy,++ -- * Request Lenses+ updateAssumeRolePolicy_roleName,+ updateAssumeRolePolicy_policyDocument,++ -- * Destructuring the Response+ UpdateAssumeRolePolicyResponse (..),+ newUpdateAssumeRolePolicyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateAssumeRolePolicy' smart constructor.+data UpdateAssumeRolePolicy = UpdateAssumeRolePolicy'+ { -- | The name of the role to update with the new policy.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ roleName :: Prelude.Text,+ -- | The policy that grants an entity permission to assume the role.+ --+ -- You must provide policies in JSON format in IAM. However, for+ -- CloudFormation templates formatted in YAML, you can provide the policy+ -- in JSON or YAML format. CloudFormation always converts a YAML policy to+ -- JSON format before submitting it to IAM.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ policyDocument :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAssumeRolePolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'updateAssumeRolePolicy_roleName' - The name of the role to update with the new policy.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'policyDocument', 'updateAssumeRolePolicy_policyDocument' - The policy that grants an entity permission to assume the role.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newUpdateAssumeRolePolicy ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'policyDocument'+ Prelude.Text ->+ UpdateAssumeRolePolicy+newUpdateAssumeRolePolicy pRoleName_ pPolicyDocument_ =+ UpdateAssumeRolePolicy'+ { roleName = pRoleName_,+ policyDocument = pPolicyDocument_+ }++-- | The name of the role to update with the new policy.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateAssumeRolePolicy_roleName :: Lens.Lens' UpdateAssumeRolePolicy Prelude.Text+updateAssumeRolePolicy_roleName = Lens.lens (\UpdateAssumeRolePolicy' {roleName} -> roleName) (\s@UpdateAssumeRolePolicy' {} a -> s {roleName = a} :: UpdateAssumeRolePolicy)++-- | The policy that grants an entity permission to assume the role.+--+-- You must provide policies in JSON format in IAM. However, for+-- CloudFormation templates formatted in YAML, you can provide the policy+-- in JSON or YAML format. CloudFormation always converts a YAML policy to+-- JSON format before submitting it to IAM.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+updateAssumeRolePolicy_policyDocument :: Lens.Lens' UpdateAssumeRolePolicy Prelude.Text+updateAssumeRolePolicy_policyDocument = Lens.lens (\UpdateAssumeRolePolicy' {policyDocument} -> policyDocument) (\s@UpdateAssumeRolePolicy' {} a -> s {policyDocument = a} :: UpdateAssumeRolePolicy)++instance Core.AWSRequest UpdateAssumeRolePolicy where+ type+ AWSResponse UpdateAssumeRolePolicy =+ UpdateAssumeRolePolicyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ UpdateAssumeRolePolicyResponse'++instance Prelude.Hashable UpdateAssumeRolePolicy where+ hashWithSalt _salt UpdateAssumeRolePolicy' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` policyDocument++instance Prelude.NFData UpdateAssumeRolePolicy where+ rnf UpdateAssumeRolePolicy' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf policyDocument++instance Data.ToHeaders UpdateAssumeRolePolicy where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateAssumeRolePolicy where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateAssumeRolePolicy where+ toQuery UpdateAssumeRolePolicy' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateAssumeRolePolicy" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "PolicyDocument" Data.=: policyDocument+ ]++-- | /See:/ 'newUpdateAssumeRolePolicyResponse' smart constructor.+data UpdateAssumeRolePolicyResponse = UpdateAssumeRolePolicyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateAssumeRolePolicyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateAssumeRolePolicyResponse ::+ UpdateAssumeRolePolicyResponse+newUpdateAssumeRolePolicyResponse =+ UpdateAssumeRolePolicyResponse'++instance+ Prelude.NFData+ UpdateAssumeRolePolicyResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateGroup.hs view
@@ -0,0 +1,220 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateGroup+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the name and\/or the path of the specified IAM group.+--+-- You should understand the implications of changing a group\'s path or+-- name. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_WorkingWithGroupsAndUsers.html Renaming users and groups>+-- in the /IAM User Guide/.+--+-- The person making the request (the principal), must have permission to+-- change the role group with the old name and the new name. For example,+-- to change the group named @Managers@ to @MGRs@, the principal must have+-- a policy that allows them to update both groups. If the principal has+-- permission to update the @Managers@ group, but not the @MGRs@ group,+-- then the update fails. For more information about permissions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html Access management>.+module Amazonka.IAM.UpdateGroup+ ( -- * Creating a Request+ UpdateGroup (..),+ newUpdateGroup,++ -- * Request Lenses+ updateGroup_newGroupName,+ updateGroup_newPath,+ updateGroup_groupName,++ -- * Destructuring the Response+ UpdateGroupResponse (..),+ newUpdateGroupResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateGroup' smart constructor.+data UpdateGroup = UpdateGroup'+ { -- | New name for the IAM group. Only include this if changing the group\'s+ -- name.+ --+ -- IAM user, group, role, and policy names must be unique within the+ -- account. Names are not distinguished by case. For example, you cannot+ -- create resources named both \"MyResource\" and \"myresource\".+ newGroupName' :: Prelude.Maybe Prelude.Text,+ -- | New path for the IAM group. Only include this if changing the group\'s+ -- path.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ newPath' :: Prelude.Maybe Prelude.Text,+ -- | Name of the IAM group to update. If you\'re changing the name of the+ -- group, this is the original name.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ groupName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateGroup' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'newGroupName'', 'updateGroup_newGroupName' - New name for the IAM group. Only include this if changing the group\'s+-- name.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+--+-- 'newPath'', 'updateGroup_newPath' - New path for the IAM group. Only include this if changing the group\'s+-- path.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'groupName', 'updateGroup_groupName' - Name of the IAM group to update. If you\'re changing the name of the+-- group, this is the original name.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newUpdateGroup ::+ -- | 'groupName'+ Prelude.Text ->+ UpdateGroup+newUpdateGroup pGroupName_ =+ UpdateGroup'+ { newGroupName' = Prelude.Nothing,+ newPath' = Prelude.Nothing,+ groupName = pGroupName_+ }++-- | New name for the IAM group. Only include this if changing the group\'s+-- name.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+updateGroup_newGroupName :: Lens.Lens' UpdateGroup (Prelude.Maybe Prelude.Text)+updateGroup_newGroupName = Lens.lens (\UpdateGroup' {newGroupName'} -> newGroupName') (\s@UpdateGroup' {} a -> s {newGroupName' = a} :: UpdateGroup)++-- | New path for the IAM group. Only include this if changing the group\'s+-- path.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+updateGroup_newPath :: Lens.Lens' UpdateGroup (Prelude.Maybe Prelude.Text)+updateGroup_newPath = Lens.lens (\UpdateGroup' {newPath'} -> newPath') (\s@UpdateGroup' {} a -> s {newPath' = a} :: UpdateGroup)++-- | Name of the IAM group to update. If you\'re changing the name of the+-- group, this is the original name.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateGroup_groupName :: Lens.Lens' UpdateGroup Prelude.Text+updateGroup_groupName = Lens.lens (\UpdateGroup' {groupName} -> groupName) (\s@UpdateGroup' {} a -> s {groupName = a} :: UpdateGroup)++instance Core.AWSRequest UpdateGroup where+ type AWSResponse UpdateGroup = UpdateGroupResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull UpdateGroupResponse'++instance Prelude.Hashable UpdateGroup where+ hashWithSalt _salt UpdateGroup' {..} =+ _salt+ `Prelude.hashWithSalt` newGroupName'+ `Prelude.hashWithSalt` newPath'+ `Prelude.hashWithSalt` groupName++instance Prelude.NFData UpdateGroup where+ rnf UpdateGroup' {..} =+ Prelude.rnf newGroupName'+ `Prelude.seq` Prelude.rnf newPath'+ `Prelude.seq` Prelude.rnf groupName++instance Data.ToHeaders UpdateGroup where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateGroup where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateGroup where+ toQuery UpdateGroup' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateGroup" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "NewGroupName" Data.=: newGroupName',+ "NewPath" Data.=: newPath',+ "GroupName" Data.=: groupName+ ]++-- | /See:/ 'newUpdateGroupResponse' smart constructor.+data UpdateGroupResponse = UpdateGroupResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateGroupResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateGroupResponse ::+ UpdateGroupResponse+newUpdateGroupResponse = UpdateGroupResponse'++instance Prelude.NFData UpdateGroupResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateLoginProfile.hs view
@@ -0,0 +1,226 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateLoginProfile+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Changes the password for the specified IAM user. You can use the CLI,+-- the Amazon Web Services API, or the __Users__ page in the IAM console to+-- change the password for any IAM user. Use ChangePassword to change your+-- own password in the __My Security Credentials__ page in the Amazon Web+-- Services Management Console.+--+-- For more information about modifying passwords, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html Managing passwords>+-- in the /IAM User Guide/.+module Amazonka.IAM.UpdateLoginProfile+ ( -- * Creating a Request+ UpdateLoginProfile (..),+ newUpdateLoginProfile,++ -- * Request Lenses+ updateLoginProfile_password,+ updateLoginProfile_passwordResetRequired,+ updateLoginProfile_userName,++ -- * Destructuring the Response+ UpdateLoginProfileResponse (..),+ newUpdateLoginProfileResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateLoginProfile' smart constructor.+data UpdateLoginProfile = UpdateLoginProfile'+ { -- | The new password for the specified IAM user.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ --+ -- However, the format can be further restricted by the account+ -- administrator by setting a password policy on the Amazon Web Services+ -- account. For more information, see UpdateAccountPasswordPolicy.+ password :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | Allows this new password to be used only once by requiring the specified+ -- IAM user to set a new password on next sign-in.+ passwordResetRequired :: Prelude.Maybe Prelude.Bool,+ -- | The name of the user whose password you want to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateLoginProfile' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'password', 'updateLoginProfile_password' - The new password for the specified IAM user.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- However, the format can be further restricted by the account+-- administrator by setting a password policy on the Amazon Web Services+-- account. For more information, see UpdateAccountPasswordPolicy.+--+-- 'passwordResetRequired', 'updateLoginProfile_passwordResetRequired' - Allows this new password to be used only once by requiring the specified+-- IAM user to set a new password on next sign-in.+--+-- 'userName', 'updateLoginProfile_userName' - The name of the user whose password you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newUpdateLoginProfile ::+ -- | 'userName'+ Prelude.Text ->+ UpdateLoginProfile+newUpdateLoginProfile pUserName_ =+ UpdateLoginProfile'+ { password = Prelude.Nothing,+ passwordResetRequired = Prelude.Nothing,+ userName = pUserName_+ }++-- | The new password for the specified IAM user.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- However, the format can be further restricted by the account+-- administrator by setting a password policy on the Amazon Web Services+-- account. For more information, see UpdateAccountPasswordPolicy.+updateLoginProfile_password :: Lens.Lens' UpdateLoginProfile (Prelude.Maybe Prelude.Text)+updateLoginProfile_password = Lens.lens (\UpdateLoginProfile' {password} -> password) (\s@UpdateLoginProfile' {} a -> s {password = a} :: UpdateLoginProfile) Prelude.. Lens.mapping Data._Sensitive++-- | Allows this new password to be used only once by requiring the specified+-- IAM user to set a new password on next sign-in.+updateLoginProfile_passwordResetRequired :: Lens.Lens' UpdateLoginProfile (Prelude.Maybe Prelude.Bool)+updateLoginProfile_passwordResetRequired = Lens.lens (\UpdateLoginProfile' {passwordResetRequired} -> passwordResetRequired) (\s@UpdateLoginProfile' {} a -> s {passwordResetRequired = a} :: UpdateLoginProfile)++-- | The name of the user whose password you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateLoginProfile_userName :: Lens.Lens' UpdateLoginProfile Prelude.Text+updateLoginProfile_userName = Lens.lens (\UpdateLoginProfile' {userName} -> userName) (\s@UpdateLoginProfile' {} a -> s {userName = a} :: UpdateLoginProfile)++instance Core.AWSRequest UpdateLoginProfile where+ type+ AWSResponse UpdateLoginProfile =+ UpdateLoginProfileResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull UpdateLoginProfileResponse'++instance Prelude.Hashable UpdateLoginProfile where+ hashWithSalt _salt UpdateLoginProfile' {..} =+ _salt+ `Prelude.hashWithSalt` password+ `Prelude.hashWithSalt` passwordResetRequired+ `Prelude.hashWithSalt` userName++instance Prelude.NFData UpdateLoginProfile where+ rnf UpdateLoginProfile' {..} =+ Prelude.rnf password+ `Prelude.seq` Prelude.rnf passwordResetRequired+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders UpdateLoginProfile where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateLoginProfile where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateLoginProfile where+ toQuery UpdateLoginProfile' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateLoginProfile" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Password" Data.=: password,+ "PasswordResetRequired"+ Data.=: passwordResetRequired,+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newUpdateLoginProfileResponse' smart constructor.+data UpdateLoginProfileResponse = UpdateLoginProfileResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateLoginProfileResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateLoginProfileResponse ::+ UpdateLoginProfileResponse+newUpdateLoginProfileResponse =+ UpdateLoginProfileResponse'++instance Prelude.NFData UpdateLoginProfileResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateOpenIDConnectProviderThumbprint.hs view
@@ -0,0 +1,217 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Replaces the existing list of server certificate thumbprints associated+-- with an OpenID Connect (OIDC) provider resource object with a new list+-- of thumbprints.+--+-- The list that you pass with this operation completely replaces the+-- existing list of thumbprints. (The lists are not merged.)+--+-- Typically, you need to update a thumbprint only when the identity+-- provider certificate changes, which occurs rarely. However, if the+-- provider\'s certificate /does/ change, any attempt to assume an IAM role+-- that specifies the OIDC provider as a principal fails until the+-- certificate thumbprint is updated.+--+-- Amazon Web Services secures communication with some OIDC identity+-- providers (IdPs) through our library of trusted certificate authorities+-- (CAs) instead of using a certificate thumbprint to verify your IdP+-- server certificate. These OIDC IdPs include Google, and those that use+-- an Amazon S3 bucket to host a JSON Web Key Set (JWKS) endpoint. In these+-- cases, your legacy thumbprint remains in your configuration, but is no+-- longer used for validation.+--+-- Trust for the OIDC provider is derived from the provider certificate and+-- is validated by the thumbprint. Therefore, it is best to limit access to+-- the @UpdateOpenIDConnectProviderThumbprint@ operation to highly+-- privileged users.+module Amazonka.IAM.UpdateOpenIDConnectProviderThumbprint+ ( -- * Creating a Request+ UpdateOpenIDConnectProviderThumbprint (..),+ newUpdateOpenIDConnectProviderThumbprint,++ -- * Request Lenses+ updateOpenIDConnectProviderThumbprint_openIDConnectProviderArn,+ updateOpenIDConnectProviderThumbprint_thumbprintList,++ -- * Destructuring the Response+ UpdateOpenIDConnectProviderThumbprintResponse (..),+ newUpdateOpenIDConnectProviderThumbprintResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateOpenIDConnectProviderThumbprint' smart constructor.+data UpdateOpenIDConnectProviderThumbprint = UpdateOpenIDConnectProviderThumbprint'+ { -- | The Amazon Resource Name (ARN) of the IAM OIDC provider resource object+ -- for which you want to update the thumbprint. You can get a list of OIDC+ -- provider ARNs by using the ListOpenIDConnectProviders operation.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ openIDConnectProviderArn :: Prelude.Text,+ -- | A list of certificate thumbprints that are associated with the specified+ -- IAM OpenID Connect provider. For more information, see+ -- CreateOpenIDConnectProvider.+ thumbprintList :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateOpenIDConnectProviderThumbprint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'openIDConnectProviderArn', 'updateOpenIDConnectProviderThumbprint_openIDConnectProviderArn' - The Amazon Resource Name (ARN) of the IAM OIDC provider resource object+-- for which you want to update the thumbprint. You can get a list of OIDC+-- provider ARNs by using the ListOpenIDConnectProviders operation.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+--+-- 'thumbprintList', 'updateOpenIDConnectProviderThumbprint_thumbprintList' - A list of certificate thumbprints that are associated with the specified+-- IAM OpenID Connect provider. For more information, see+-- CreateOpenIDConnectProvider.+newUpdateOpenIDConnectProviderThumbprint ::+ -- | 'openIDConnectProviderArn'+ Prelude.Text ->+ UpdateOpenIDConnectProviderThumbprint+newUpdateOpenIDConnectProviderThumbprint+ pOpenIDConnectProviderArn_ =+ UpdateOpenIDConnectProviderThumbprint'+ { openIDConnectProviderArn =+ pOpenIDConnectProviderArn_,+ thumbprintList = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the IAM OIDC provider resource object+-- for which you want to update the thumbprint. You can get a list of OIDC+-- provider ARNs by using the ListOpenIDConnectProviders operation.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+updateOpenIDConnectProviderThumbprint_openIDConnectProviderArn :: Lens.Lens' UpdateOpenIDConnectProviderThumbprint Prelude.Text+updateOpenIDConnectProviderThumbprint_openIDConnectProviderArn = Lens.lens (\UpdateOpenIDConnectProviderThumbprint' {openIDConnectProviderArn} -> openIDConnectProviderArn) (\s@UpdateOpenIDConnectProviderThumbprint' {} a -> s {openIDConnectProviderArn = a} :: UpdateOpenIDConnectProviderThumbprint)++-- | A list of certificate thumbprints that are associated with the specified+-- IAM OpenID Connect provider. For more information, see+-- CreateOpenIDConnectProvider.+updateOpenIDConnectProviderThumbprint_thumbprintList :: Lens.Lens' UpdateOpenIDConnectProviderThumbprint [Prelude.Text]+updateOpenIDConnectProviderThumbprint_thumbprintList = Lens.lens (\UpdateOpenIDConnectProviderThumbprint' {thumbprintList} -> thumbprintList) (\s@UpdateOpenIDConnectProviderThumbprint' {} a -> s {thumbprintList = a} :: UpdateOpenIDConnectProviderThumbprint) Prelude.. Lens.coerced++instance+ Core.AWSRequest+ UpdateOpenIDConnectProviderThumbprint+ where+ type+ AWSResponse+ UpdateOpenIDConnectProviderThumbprint =+ UpdateOpenIDConnectProviderThumbprintResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ UpdateOpenIDConnectProviderThumbprintResponse'++instance+ Prelude.Hashable+ UpdateOpenIDConnectProviderThumbprint+ where+ hashWithSalt+ _salt+ UpdateOpenIDConnectProviderThumbprint' {..} =+ _salt+ `Prelude.hashWithSalt` openIDConnectProviderArn+ `Prelude.hashWithSalt` thumbprintList++instance+ Prelude.NFData+ UpdateOpenIDConnectProviderThumbprint+ where+ rnf UpdateOpenIDConnectProviderThumbprint' {..} =+ Prelude.rnf openIDConnectProviderArn+ `Prelude.seq` Prelude.rnf thumbprintList++instance+ Data.ToHeaders+ UpdateOpenIDConnectProviderThumbprint+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ UpdateOpenIDConnectProviderThumbprint+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ UpdateOpenIDConnectProviderThumbprint+ where+ toQuery UpdateOpenIDConnectProviderThumbprint' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "UpdateOpenIDConnectProviderThumbprint" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "OpenIDConnectProviderArn"+ Data.=: openIDConnectProviderArn,+ "ThumbprintList"+ Data.=: Data.toQueryList "member" thumbprintList+ ]++-- | /See:/ 'newUpdateOpenIDConnectProviderThumbprintResponse' smart constructor.+data UpdateOpenIDConnectProviderThumbprintResponse = UpdateOpenIDConnectProviderThumbprintResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateOpenIDConnectProviderThumbprintResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateOpenIDConnectProviderThumbprintResponse ::+ UpdateOpenIDConnectProviderThumbprintResponse+newUpdateOpenIDConnectProviderThumbprintResponse =+ UpdateOpenIDConnectProviderThumbprintResponse'++instance+ Prelude.NFData+ UpdateOpenIDConnectProviderThumbprintResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateRole.hs view
@@ -0,0 +1,214 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the description or maximum session duration setting of a role.+module Amazonka.IAM.UpdateRole+ ( -- * Creating a Request+ UpdateRole (..),+ newUpdateRole,++ -- * Request Lenses+ updateRole_description,+ updateRole_maxSessionDuration,+ updateRole_roleName,++ -- * Destructuring the Response+ UpdateRoleResponse (..),+ newUpdateRoleResponse,++ -- * Response Lenses+ updateRoleResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateRole' smart constructor.+data UpdateRole = UpdateRole'+ { -- | The new description that you want to apply to the specified role.+ description :: Prelude.Maybe Prelude.Text,+ -- | The maximum session duration (in seconds) that you want to set for the+ -- specified role. If you do not specify a value for this setting, the+ -- default value of one hour is applied. This setting can have a value from+ -- 1 hour to 12 hours.+ --+ -- Anyone who assumes the role from the CLI or API can use the+ -- @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter+ -- to request a longer session. The @MaxSessionDuration@ setting determines+ -- the maximum duration that can be requested using the @DurationSeconds@+ -- parameter. If users don\'t specify a value for the @DurationSeconds@+ -- parameter, their security credentials are valid for one hour by default.+ -- This applies when you use the @AssumeRole*@ API operations or the+ -- @assume-role*@ CLI operations but does not apply when you use those+ -- operations to create a console URL. For more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM roles>+ -- in the /IAM User Guide/.+ maxSessionDuration :: Prelude.Maybe Prelude.Natural,+ -- | The name of the role that you want to modify.+ roleName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRole' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'updateRole_description' - The new description that you want to apply to the specified role.+--+-- 'maxSessionDuration', 'updateRole_maxSessionDuration' - The maximum session duration (in seconds) that you want to set for the+-- specified role. If you do not specify a value for this setting, the+-- default value of one hour is applied. This setting can have a value from+-- 1 hour to 12 hours.+--+-- Anyone who assumes the role from the CLI or API can use the+-- @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter+-- to request a longer session. The @MaxSessionDuration@ setting determines+-- the maximum duration that can be requested using the @DurationSeconds@+-- parameter. If users don\'t specify a value for the @DurationSeconds@+-- parameter, their security credentials are valid for one hour by default.+-- This applies when you use the @AssumeRole*@ API operations or the+-- @assume-role*@ CLI operations but does not apply when you use those+-- operations to create a console URL. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM roles>+-- in the /IAM User Guide/.+--+-- 'roleName', 'updateRole_roleName' - The name of the role that you want to modify.+newUpdateRole ::+ -- | 'roleName'+ Prelude.Text ->+ UpdateRole+newUpdateRole pRoleName_ =+ UpdateRole'+ { description = Prelude.Nothing,+ maxSessionDuration = Prelude.Nothing,+ roleName = pRoleName_+ }++-- | The new description that you want to apply to the specified role.+updateRole_description :: Lens.Lens' UpdateRole (Prelude.Maybe Prelude.Text)+updateRole_description = Lens.lens (\UpdateRole' {description} -> description) (\s@UpdateRole' {} a -> s {description = a} :: UpdateRole)++-- | The maximum session duration (in seconds) that you want to set for the+-- specified role. If you do not specify a value for this setting, the+-- default value of one hour is applied. This setting can have a value from+-- 1 hour to 12 hours.+--+-- Anyone who assumes the role from the CLI or API can use the+-- @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter+-- to request a longer session. The @MaxSessionDuration@ setting determines+-- the maximum duration that can be requested using the @DurationSeconds@+-- parameter. If users don\'t specify a value for the @DurationSeconds@+-- parameter, their security credentials are valid for one hour by default.+-- This applies when you use the @AssumeRole*@ API operations or the+-- @assume-role*@ CLI operations but does not apply when you use those+-- operations to create a console URL. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM roles>+-- in the /IAM User Guide/.+updateRole_maxSessionDuration :: Lens.Lens' UpdateRole (Prelude.Maybe Prelude.Natural)+updateRole_maxSessionDuration = Lens.lens (\UpdateRole' {maxSessionDuration} -> maxSessionDuration) (\s@UpdateRole' {} a -> s {maxSessionDuration = a} :: UpdateRole)++-- | The name of the role that you want to modify.+updateRole_roleName :: Lens.Lens' UpdateRole Prelude.Text+updateRole_roleName = Lens.lens (\UpdateRole' {roleName} -> roleName) (\s@UpdateRole' {} a -> s {roleName = a} :: UpdateRole)++instance Core.AWSRequest UpdateRole where+ type AWSResponse UpdateRole = UpdateRoleResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "UpdateRoleResult"+ ( \s h x ->+ UpdateRoleResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateRole where+ hashWithSalt _salt UpdateRole' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` maxSessionDuration+ `Prelude.hashWithSalt` roleName++instance Prelude.NFData UpdateRole where+ rnf UpdateRole' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf maxSessionDuration+ `Prelude.seq` Prelude.rnf roleName++instance Data.ToHeaders UpdateRole where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateRole where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateRole where+ toQuery UpdateRole' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateRole" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "Description" Data.=: description,+ "MaxSessionDuration" Data.=: maxSessionDuration,+ "RoleName" Data.=: roleName+ ]++-- | /See:/ 'newUpdateRoleResponse' smart constructor.+data UpdateRoleResponse = UpdateRoleResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRoleResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'updateRoleResponse_httpStatus' - The response's http status code.+newUpdateRoleResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateRoleResponse+newUpdateRoleResponse pHttpStatus_ =+ UpdateRoleResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+updateRoleResponse_httpStatus :: Lens.Lens' UpdateRoleResponse Prelude.Int+updateRoleResponse_httpStatus = Lens.lens (\UpdateRoleResponse' {httpStatus} -> httpStatus) (\s@UpdateRoleResponse' {} a -> s {httpStatus = a} :: UpdateRoleResponse)++instance Prelude.NFData UpdateRoleResponse where+ rnf UpdateRoleResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/IAM/UpdateRoleDescription.hs view
@@ -0,0 +1,180 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateRoleDescription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Use UpdateRole instead.+--+-- Modifies only the description of a role. This operation performs the+-- same function as the @Description@ parameter in the @UpdateRole@+-- operation.+module Amazonka.IAM.UpdateRoleDescription+ ( -- * Creating a Request+ UpdateRoleDescription (..),+ newUpdateRoleDescription,++ -- * Request Lenses+ updateRoleDescription_roleName,+ updateRoleDescription_description,++ -- * Destructuring the Response+ UpdateRoleDescriptionResponse (..),+ newUpdateRoleDescriptionResponse,++ -- * Response Lenses+ updateRoleDescriptionResponse_role,+ updateRoleDescriptionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateRoleDescription' smart constructor.+data UpdateRoleDescription = UpdateRoleDescription'+ { -- | The name of the role that you want to modify.+ roleName :: Prelude.Text,+ -- | The new description that you want to apply to the specified role.+ description :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRoleDescription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'roleName', 'updateRoleDescription_roleName' - The name of the role that you want to modify.+--+-- 'description', 'updateRoleDescription_description' - The new description that you want to apply to the specified role.+newUpdateRoleDescription ::+ -- | 'roleName'+ Prelude.Text ->+ -- | 'description'+ Prelude.Text ->+ UpdateRoleDescription+newUpdateRoleDescription pRoleName_ pDescription_ =+ UpdateRoleDescription'+ { roleName = pRoleName_,+ description = pDescription_+ }++-- | The name of the role that you want to modify.+updateRoleDescription_roleName :: Lens.Lens' UpdateRoleDescription Prelude.Text+updateRoleDescription_roleName = Lens.lens (\UpdateRoleDescription' {roleName} -> roleName) (\s@UpdateRoleDescription' {} a -> s {roleName = a} :: UpdateRoleDescription)++-- | The new description that you want to apply to the specified role.+updateRoleDescription_description :: Lens.Lens' UpdateRoleDescription Prelude.Text+updateRoleDescription_description = Lens.lens (\UpdateRoleDescription' {description} -> description) (\s@UpdateRoleDescription' {} a -> s {description = a} :: UpdateRoleDescription)++instance Core.AWSRequest UpdateRoleDescription where+ type+ AWSResponse UpdateRoleDescription =+ UpdateRoleDescriptionResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "UpdateRoleDescriptionResult"+ ( \s h x ->+ UpdateRoleDescriptionResponse'+ Prelude.<$> (x Data..@? "Role")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateRoleDescription where+ hashWithSalt _salt UpdateRoleDescription' {..} =+ _salt+ `Prelude.hashWithSalt` roleName+ `Prelude.hashWithSalt` description++instance Prelude.NFData UpdateRoleDescription where+ rnf UpdateRoleDescription' {..} =+ Prelude.rnf roleName+ `Prelude.seq` Prelude.rnf description++instance Data.ToHeaders UpdateRoleDescription where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateRoleDescription where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateRoleDescription where+ toQuery UpdateRoleDescription' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateRoleDescription" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "RoleName" Data.=: roleName,+ "Description" Data.=: description+ ]++-- | /See:/ 'newUpdateRoleDescriptionResponse' smart constructor.+data UpdateRoleDescriptionResponse = UpdateRoleDescriptionResponse'+ { -- | A structure that contains details about the modified role.+ role' :: Prelude.Maybe Role,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRoleDescriptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'role'', 'updateRoleDescriptionResponse_role' - A structure that contains details about the modified role.+--+-- 'httpStatus', 'updateRoleDescriptionResponse_httpStatus' - The response's http status code.+newUpdateRoleDescriptionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateRoleDescriptionResponse+newUpdateRoleDescriptionResponse pHttpStatus_ =+ UpdateRoleDescriptionResponse'+ { role' =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure that contains details about the modified role.+updateRoleDescriptionResponse_role :: Lens.Lens' UpdateRoleDescriptionResponse (Prelude.Maybe Role)+updateRoleDescriptionResponse_role = Lens.lens (\UpdateRoleDescriptionResponse' {role'} -> role') (\s@UpdateRoleDescriptionResponse' {} a -> s {role' = a} :: UpdateRoleDescriptionResponse)++-- | The response's http status code.+updateRoleDescriptionResponse_httpStatus :: Lens.Lens' UpdateRoleDescriptionResponse Prelude.Int+updateRoleDescriptionResponse_httpStatus = Lens.lens (\UpdateRoleDescriptionResponse' {httpStatus} -> httpStatus) (\s@UpdateRoleDescriptionResponse' {} a -> s {httpStatus = a} :: UpdateRoleDescriptionResponse)++instance Prelude.NFData UpdateRoleDescriptionResponse where+ rnf UpdateRoleDescriptionResponse' {..} =+ Prelude.rnf role'+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/UpdateSAMLProvider.hs view
@@ -0,0 +1,212 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateSAMLProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the metadata document for an existing SAML provider resource+-- object.+--+-- This operation requires+-- <https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4>.+module Amazonka.IAM.UpdateSAMLProvider+ ( -- * Creating a Request+ UpdateSAMLProvider (..),+ newUpdateSAMLProvider,++ -- * Request Lenses+ updateSAMLProvider_sAMLMetadataDocument,+ updateSAMLProvider_sAMLProviderArn,++ -- * Destructuring the Response+ UpdateSAMLProviderResponse (..),+ newUpdateSAMLProviderResponse,++ -- * Response Lenses+ updateSAMLProviderResponse_sAMLProviderArn,+ updateSAMLProviderResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateSAMLProvider' smart constructor.+data UpdateSAMLProvider = UpdateSAMLProvider'+ { -- | An XML document generated by an identity provider (IdP) that supports+ -- SAML 2.0. The document includes the issuer\'s name, expiration+ -- information, and keys that can be used to validate the SAML+ -- authentication response (assertions) that are received from the IdP. You+ -- must generate the metadata document using the identity management+ -- software that is used as your organization\'s IdP.+ sAMLMetadataDocument :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the SAML provider to update.+ --+ -- For more information about ARNs, see+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+ -- in the /Amazon Web Services General Reference/.+ sAMLProviderArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSAMLProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sAMLMetadataDocument', 'updateSAMLProvider_sAMLMetadataDocument' - An XML document generated by an identity provider (IdP) that supports+-- SAML 2.0. The document includes the issuer\'s name, expiration+-- information, and keys that can be used to validate the SAML+-- authentication response (assertions) that are received from the IdP. You+-- must generate the metadata document using the identity management+-- software that is used as your organization\'s IdP.+--+-- 'sAMLProviderArn', 'updateSAMLProvider_sAMLProviderArn' - The Amazon Resource Name (ARN) of the SAML provider to update.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+newUpdateSAMLProvider ::+ -- | 'sAMLMetadataDocument'+ Prelude.Text ->+ -- | 'sAMLProviderArn'+ Prelude.Text ->+ UpdateSAMLProvider+newUpdateSAMLProvider+ pSAMLMetadataDocument_+ pSAMLProviderArn_ =+ UpdateSAMLProvider'+ { sAMLMetadataDocument =+ pSAMLMetadataDocument_,+ sAMLProviderArn = pSAMLProviderArn_+ }++-- | An XML document generated by an identity provider (IdP) that supports+-- SAML 2.0. The document includes the issuer\'s name, expiration+-- information, and keys that can be used to validate the SAML+-- authentication response (assertions) that are received from the IdP. You+-- must generate the metadata document using the identity management+-- software that is used as your organization\'s IdP.+updateSAMLProvider_sAMLMetadataDocument :: Lens.Lens' UpdateSAMLProvider Prelude.Text+updateSAMLProvider_sAMLMetadataDocument = Lens.lens (\UpdateSAMLProvider' {sAMLMetadataDocument} -> sAMLMetadataDocument) (\s@UpdateSAMLProvider' {} a -> s {sAMLMetadataDocument = a} :: UpdateSAMLProvider)++-- | The Amazon Resource Name (ARN) of the SAML provider to update.+--+-- For more information about ARNs, see+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs)>+-- in the /Amazon Web Services General Reference/.+updateSAMLProvider_sAMLProviderArn :: Lens.Lens' UpdateSAMLProvider Prelude.Text+updateSAMLProvider_sAMLProviderArn = Lens.lens (\UpdateSAMLProvider' {sAMLProviderArn} -> sAMLProviderArn) (\s@UpdateSAMLProvider' {} a -> s {sAMLProviderArn = a} :: UpdateSAMLProvider)++instance Core.AWSRequest UpdateSAMLProvider where+ type+ AWSResponse UpdateSAMLProvider =+ UpdateSAMLProviderResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "UpdateSAMLProviderResult"+ ( \s h x ->+ UpdateSAMLProviderResponse'+ Prelude.<$> (x Data..@? "SAMLProviderArn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateSAMLProvider where+ hashWithSalt _salt UpdateSAMLProvider' {..} =+ _salt+ `Prelude.hashWithSalt` sAMLMetadataDocument+ `Prelude.hashWithSalt` sAMLProviderArn++instance Prelude.NFData UpdateSAMLProvider where+ rnf UpdateSAMLProvider' {..} =+ Prelude.rnf sAMLMetadataDocument+ `Prelude.seq` Prelude.rnf sAMLProviderArn++instance Data.ToHeaders UpdateSAMLProvider where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateSAMLProvider where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateSAMLProvider where+ toQuery UpdateSAMLProvider' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateSAMLProvider" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "SAMLMetadataDocument" Data.=: sAMLMetadataDocument,+ "SAMLProviderArn" Data.=: sAMLProviderArn+ ]++-- | Contains the response to a successful UpdateSAMLProvider request.+--+-- /See:/ 'newUpdateSAMLProviderResponse' smart constructor.+data UpdateSAMLProviderResponse = UpdateSAMLProviderResponse'+ { -- | The Amazon Resource Name (ARN) of the SAML provider that was updated.+ sAMLProviderArn :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSAMLProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sAMLProviderArn', 'updateSAMLProviderResponse_sAMLProviderArn' - The Amazon Resource Name (ARN) of the SAML provider that was updated.+--+-- 'httpStatus', 'updateSAMLProviderResponse_httpStatus' - The response's http status code.+newUpdateSAMLProviderResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateSAMLProviderResponse+newUpdateSAMLProviderResponse pHttpStatus_ =+ UpdateSAMLProviderResponse'+ { sAMLProviderArn =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the SAML provider that was updated.+updateSAMLProviderResponse_sAMLProviderArn :: Lens.Lens' UpdateSAMLProviderResponse (Prelude.Maybe Prelude.Text)+updateSAMLProviderResponse_sAMLProviderArn = Lens.lens (\UpdateSAMLProviderResponse' {sAMLProviderArn} -> sAMLProviderArn) (\s@UpdateSAMLProviderResponse' {} a -> s {sAMLProviderArn = a} :: UpdateSAMLProviderResponse)++-- | The response's http status code.+updateSAMLProviderResponse_httpStatus :: Lens.Lens' UpdateSAMLProviderResponse Prelude.Int+updateSAMLProviderResponse_httpStatus = Lens.lens (\UpdateSAMLProviderResponse' {httpStatus} -> httpStatus) (\s@UpdateSAMLProviderResponse' {} a -> s {httpStatus = a} :: UpdateSAMLProviderResponse)++instance Prelude.NFData UpdateSAMLProviderResponse where+ rnf UpdateSAMLProviderResponse' {..} =+ Prelude.rnf sAMLProviderArn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/UpdateSSHPublicKey.hs view
@@ -0,0 +1,201 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateSSHPublicKey+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets the status of an IAM user\'s SSH public key to active or inactive.+-- SSH public keys that are inactive cannot be used for authentication.+-- This operation can be used to disable a user\'s SSH public key as part+-- of a key rotation work flow.+--+-- The SSH public key affected by this operation is used only for+-- authenticating the associated IAM user to an CodeCommit repository. For+-- more information about using SSH keys to authenticate to an CodeCommit+-- repository, see+-- <https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up CodeCommit for SSH connections>+-- in the /CodeCommit User Guide/.+module Amazonka.IAM.UpdateSSHPublicKey+ ( -- * Creating a Request+ UpdateSSHPublicKey (..),+ newUpdateSSHPublicKey,++ -- * Request Lenses+ updateSSHPublicKey_userName,+ updateSSHPublicKey_sSHPublicKeyId,+ updateSSHPublicKey_status,++ -- * Destructuring the Response+ UpdateSSHPublicKeyResponse (..),+ newUpdateSSHPublicKeyResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateSSHPublicKey' smart constructor.+data UpdateSSHPublicKey = UpdateSSHPublicKey'+ { -- | The name of the IAM user associated with the SSH public key.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The unique identifier for the SSH public key.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ sSHPublicKeyId :: Prelude.Text,+ -- | The status to assign to the SSH public key. @Active@ means that the key+ -- can be used for authentication with an CodeCommit repository. @Inactive@+ -- means that the key cannot be used.+ status :: StatusType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSSHPublicKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'updateSSHPublicKey_userName' - The name of the IAM user associated with the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'sSHPublicKeyId', 'updateSSHPublicKey_sSHPublicKeyId' - The unique identifier for the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+--+-- 'status', 'updateSSHPublicKey_status' - The status to assign to the SSH public key. @Active@ means that the key+-- can be used for authentication with an CodeCommit repository. @Inactive@+-- means that the key cannot be used.+newUpdateSSHPublicKey ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'sSHPublicKeyId'+ Prelude.Text ->+ -- | 'status'+ StatusType ->+ UpdateSSHPublicKey+newUpdateSSHPublicKey+ pUserName_+ pSSHPublicKeyId_+ pStatus_ =+ UpdateSSHPublicKey'+ { userName = pUserName_,+ sSHPublicKeyId = pSSHPublicKeyId_,+ status = pStatus_+ }++-- | The name of the IAM user associated with the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateSSHPublicKey_userName :: Lens.Lens' UpdateSSHPublicKey Prelude.Text+updateSSHPublicKey_userName = Lens.lens (\UpdateSSHPublicKey' {userName} -> userName) (\s@UpdateSSHPublicKey' {} a -> s {userName = a} :: UpdateSSHPublicKey)++-- | The unique identifier for the SSH public key.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+updateSSHPublicKey_sSHPublicKeyId :: Lens.Lens' UpdateSSHPublicKey Prelude.Text+updateSSHPublicKey_sSHPublicKeyId = Lens.lens (\UpdateSSHPublicKey' {sSHPublicKeyId} -> sSHPublicKeyId) (\s@UpdateSSHPublicKey' {} a -> s {sSHPublicKeyId = a} :: UpdateSSHPublicKey)++-- | The status to assign to the SSH public key. @Active@ means that the key+-- can be used for authentication with an CodeCommit repository. @Inactive@+-- means that the key cannot be used.+updateSSHPublicKey_status :: Lens.Lens' UpdateSSHPublicKey StatusType+updateSSHPublicKey_status = Lens.lens (\UpdateSSHPublicKey' {status} -> status) (\s@UpdateSSHPublicKey' {} a -> s {status = a} :: UpdateSSHPublicKey)++instance Core.AWSRequest UpdateSSHPublicKey where+ type+ AWSResponse UpdateSSHPublicKey =+ UpdateSSHPublicKeyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull UpdateSSHPublicKeyResponse'++instance Prelude.Hashable UpdateSSHPublicKey where+ hashWithSalt _salt UpdateSSHPublicKey' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` sSHPublicKeyId+ `Prelude.hashWithSalt` status++instance Prelude.NFData UpdateSSHPublicKey where+ rnf UpdateSSHPublicKey' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf sSHPublicKeyId+ `Prelude.seq` Prelude.rnf status++instance Data.ToHeaders UpdateSSHPublicKey where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateSSHPublicKey where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateSSHPublicKey where+ toQuery UpdateSSHPublicKey' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateSSHPublicKey" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "SSHPublicKeyId" Data.=: sSHPublicKeyId,+ "Status" Data.=: status+ ]++-- | /See:/ 'newUpdateSSHPublicKeyResponse' smart constructor.+data UpdateSSHPublicKeyResponse = UpdateSSHPublicKeyResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSSHPublicKeyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateSSHPublicKeyResponse ::+ UpdateSSHPublicKeyResponse+newUpdateSSHPublicKeyResponse =+ UpdateSSHPublicKeyResponse'++instance Prelude.NFData UpdateSSHPublicKeyResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateServerCertificate.hs view
@@ -0,0 +1,243 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateServerCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the name and\/or the path of the specified server certificate+-- stored in IAM.+--+-- For more information about working with server certificates, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with server certificates>+-- in the /IAM User Guide/. This topic also includes a list of Amazon Web+-- Services services that can use the server certificates that you manage+-- with IAM.+--+-- You should understand the implications of changing a server+-- certificate\'s path or name. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs_manage.html#RenamingServerCerts Renaming a server certificate>+-- in the /IAM User Guide/.+--+-- The person making the request (the principal), must have permission to+-- change the server certificate with the old name and the new name. For+-- example, to change the certificate named @ProductionCert@ to @ProdCert@,+-- the principal must have a policy that allows them to update both+-- certificates. If the principal has permission to update the+-- @ProductionCert@ group, but not the @ProdCert@ certificate, then the+-- update fails. For more information about permissions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html Access management>+-- in the /IAM User Guide/.+module Amazonka.IAM.UpdateServerCertificate+ ( -- * Creating a Request+ UpdateServerCertificate (..),+ newUpdateServerCertificate,++ -- * Request Lenses+ updateServerCertificate_newPath,+ updateServerCertificate_newServerCertificateName,+ updateServerCertificate_serverCertificateName,++ -- * Destructuring the Response+ UpdateServerCertificateResponse (..),+ newUpdateServerCertificateResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateServerCertificate' smart constructor.+data UpdateServerCertificate = UpdateServerCertificate'+ { -- | The new path for the server certificate. Include this only if you are+ -- updating the server certificate\'s path.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ newPath' :: Prelude.Maybe Prelude.Text,+ -- | The new name for the server certificate. Include this only if you are+ -- updating the server certificate\'s name. The name of the certificate+ -- cannot contain any spaces.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ newServerCertificateName' :: Prelude.Maybe Prelude.Text,+ -- | The name of the server certificate that you want to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serverCertificateName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateServerCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'newPath'', 'updateServerCertificate_newPath' - The new path for the server certificate. Include this only if you are+-- updating the server certificate\'s path.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'newServerCertificateName'', 'updateServerCertificate_newServerCertificateName' - The new name for the server certificate. Include this only if you are+-- updating the server certificate\'s name. The name of the certificate+-- cannot contain any spaces.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'serverCertificateName', 'updateServerCertificate_serverCertificateName' - The name of the server certificate that you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newUpdateServerCertificate ::+ -- | 'serverCertificateName'+ Prelude.Text ->+ UpdateServerCertificate+newUpdateServerCertificate pServerCertificateName_ =+ UpdateServerCertificate'+ { newPath' =+ Prelude.Nothing,+ newServerCertificateName' = Prelude.Nothing,+ serverCertificateName = pServerCertificateName_+ }++-- | The new path for the server certificate. Include this only if you are+-- updating the server certificate\'s path.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+updateServerCertificate_newPath :: Lens.Lens' UpdateServerCertificate (Prelude.Maybe Prelude.Text)+updateServerCertificate_newPath = Lens.lens (\UpdateServerCertificate' {newPath'} -> newPath') (\s@UpdateServerCertificate' {} a -> s {newPath' = a} :: UpdateServerCertificate)++-- | The new name for the server certificate. Include this only if you are+-- updating the server certificate\'s name. The name of the certificate+-- cannot contain any spaces.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateServerCertificate_newServerCertificateName :: Lens.Lens' UpdateServerCertificate (Prelude.Maybe Prelude.Text)+updateServerCertificate_newServerCertificateName = Lens.lens (\UpdateServerCertificate' {newServerCertificateName'} -> newServerCertificateName') (\s@UpdateServerCertificate' {} a -> s {newServerCertificateName' = a} :: UpdateServerCertificate)++-- | The name of the server certificate that you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateServerCertificate_serverCertificateName :: Lens.Lens' UpdateServerCertificate Prelude.Text+updateServerCertificate_serverCertificateName = Lens.lens (\UpdateServerCertificate' {serverCertificateName} -> serverCertificateName) (\s@UpdateServerCertificate' {} a -> s {serverCertificateName = a} :: UpdateServerCertificate)++instance Core.AWSRequest UpdateServerCertificate where+ type+ AWSResponse UpdateServerCertificate =+ UpdateServerCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ UpdateServerCertificateResponse'++instance Prelude.Hashable UpdateServerCertificate where+ hashWithSalt _salt UpdateServerCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` newPath'+ `Prelude.hashWithSalt` newServerCertificateName'+ `Prelude.hashWithSalt` serverCertificateName++instance Prelude.NFData UpdateServerCertificate where+ rnf UpdateServerCertificate' {..} =+ Prelude.rnf newPath'+ `Prelude.seq` Prelude.rnf newServerCertificateName'+ `Prelude.seq` Prelude.rnf serverCertificateName++instance Data.ToHeaders UpdateServerCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateServerCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateServerCertificate where+ toQuery UpdateServerCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateServerCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "NewPath" Data.=: newPath',+ "NewServerCertificateName"+ Data.=: newServerCertificateName',+ "ServerCertificateName"+ Data.=: serverCertificateName+ ]++-- | /See:/ 'newUpdateServerCertificateResponse' smart constructor.+data UpdateServerCertificateResponse = UpdateServerCertificateResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateServerCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateServerCertificateResponse ::+ UpdateServerCertificateResponse+newUpdateServerCertificateResponse =+ UpdateServerCertificateResponse'++instance+ Prelude.NFData+ UpdateServerCertificateResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateServiceSpecificCredential.hs view
@@ -0,0 +1,215 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateServiceSpecificCredential+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets the status of a service-specific credential to @Active@ or+-- @Inactive@. Service-specific credentials that are inactive cannot be+-- used for authentication to the service. This operation can be used to+-- disable a user\'s service-specific credential as part of a credential+-- rotation work flow.+module Amazonka.IAM.UpdateServiceSpecificCredential+ ( -- * Creating a Request+ UpdateServiceSpecificCredential (..),+ newUpdateServiceSpecificCredential,++ -- * Request Lenses+ updateServiceSpecificCredential_userName,+ updateServiceSpecificCredential_serviceSpecificCredentialId,+ updateServiceSpecificCredential_status,++ -- * Destructuring the Response+ UpdateServiceSpecificCredentialResponse (..),+ newUpdateServiceSpecificCredentialResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateServiceSpecificCredential' smart constructor.+data UpdateServiceSpecificCredential = UpdateServiceSpecificCredential'+ { -- | The name of the IAM user associated with the service-specific+ -- credential. If you do not specify this value, then the operation assumes+ -- the user whose credentials are used to call the operation.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the service-specific credential.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ serviceSpecificCredentialId :: Prelude.Text,+ -- | The status to be assigned to the service-specific credential.+ status :: StatusType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateServiceSpecificCredential' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'updateServiceSpecificCredential_userName' - The name of the IAM user associated with the service-specific+-- credential. If you do not specify this value, then the operation assumes+-- the user whose credentials are used to call the operation.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'serviceSpecificCredentialId', 'updateServiceSpecificCredential_serviceSpecificCredentialId' - The unique identifier of the service-specific credential.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+--+-- 'status', 'updateServiceSpecificCredential_status' - The status to be assigned to the service-specific credential.+newUpdateServiceSpecificCredential ::+ -- | 'serviceSpecificCredentialId'+ Prelude.Text ->+ -- | 'status'+ StatusType ->+ UpdateServiceSpecificCredential+newUpdateServiceSpecificCredential+ pServiceSpecificCredentialId_+ pStatus_ =+ UpdateServiceSpecificCredential'+ { userName =+ Prelude.Nothing,+ serviceSpecificCredentialId =+ pServiceSpecificCredentialId_,+ status = pStatus_+ }++-- | The name of the IAM user associated with the service-specific+-- credential. If you do not specify this value, then the operation assumes+-- the user whose credentials are used to call the operation.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateServiceSpecificCredential_userName :: Lens.Lens' UpdateServiceSpecificCredential (Prelude.Maybe Prelude.Text)+updateServiceSpecificCredential_userName = Lens.lens (\UpdateServiceSpecificCredential' {userName} -> userName) (\s@UpdateServiceSpecificCredential' {} a -> s {userName = a} :: UpdateServiceSpecificCredential)++-- | The unique identifier of the service-specific credential.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+updateServiceSpecificCredential_serviceSpecificCredentialId :: Lens.Lens' UpdateServiceSpecificCredential Prelude.Text+updateServiceSpecificCredential_serviceSpecificCredentialId = Lens.lens (\UpdateServiceSpecificCredential' {serviceSpecificCredentialId} -> serviceSpecificCredentialId) (\s@UpdateServiceSpecificCredential' {} a -> s {serviceSpecificCredentialId = a} :: UpdateServiceSpecificCredential)++-- | The status to be assigned to the service-specific credential.+updateServiceSpecificCredential_status :: Lens.Lens' UpdateServiceSpecificCredential StatusType+updateServiceSpecificCredential_status = Lens.lens (\UpdateServiceSpecificCredential' {status} -> status) (\s@UpdateServiceSpecificCredential' {} a -> s {status = a} :: UpdateServiceSpecificCredential)++instance+ Core.AWSRequest+ UpdateServiceSpecificCredential+ where+ type+ AWSResponse UpdateServiceSpecificCredential =+ UpdateServiceSpecificCredentialResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ UpdateServiceSpecificCredentialResponse'++instance+ Prelude.Hashable+ UpdateServiceSpecificCredential+ where+ hashWithSalt+ _salt+ UpdateServiceSpecificCredential' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` serviceSpecificCredentialId+ `Prelude.hashWithSalt` status++instance+ Prelude.NFData+ UpdateServiceSpecificCredential+ where+ rnf UpdateServiceSpecificCredential' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf serviceSpecificCredentialId+ `Prelude.seq` Prelude.rnf status++instance+ Data.ToHeaders+ UpdateServiceSpecificCredential+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateServiceSpecificCredential where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateServiceSpecificCredential where+ toQuery UpdateServiceSpecificCredential' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ( "UpdateServiceSpecificCredential" ::+ Prelude.ByteString+ ),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "ServiceSpecificCredentialId"+ Data.=: serviceSpecificCredentialId,+ "Status" Data.=: status+ ]++-- | /See:/ 'newUpdateServiceSpecificCredentialResponse' smart constructor.+data UpdateServiceSpecificCredentialResponse = UpdateServiceSpecificCredentialResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateServiceSpecificCredentialResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateServiceSpecificCredentialResponse ::+ UpdateServiceSpecificCredentialResponse+newUpdateServiceSpecificCredentialResponse =+ UpdateServiceSpecificCredentialResponse'++instance+ Prelude.NFData+ UpdateServiceSpecificCredentialResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateSigningCertificate.hs view
@@ -0,0 +1,200 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateSigningCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Changes the status of the specified user signing certificate from active+-- to disabled, or vice versa. This operation can be used to disable an IAM+-- user\'s signing certificate as part of a certificate rotation work flow.+--+-- If the @UserName@ field is not specified, the user name is determined+-- implicitly based on the Amazon Web Services access key ID used to sign+-- the request. This operation works for access keys under the Amazon Web+-- Services account. Consequently, you can use this operation to manage+-- Amazon Web Services account root user credentials even if the Amazon Web+-- Services account has no associated users.+module Amazonka.IAM.UpdateSigningCertificate+ ( -- * Creating a Request+ UpdateSigningCertificate (..),+ newUpdateSigningCertificate,++ -- * Request Lenses+ updateSigningCertificate_userName,+ updateSigningCertificate_certificateId,+ updateSigningCertificate_status,++ -- * Destructuring the Response+ UpdateSigningCertificateResponse (..),+ newUpdateSigningCertificateResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateSigningCertificate' smart constructor.+data UpdateSigningCertificate = UpdateSigningCertificate'+ { -- | The name of the IAM user the signing certificate belongs to.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text,+ -- | The ID of the signing certificate you want to update.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- that can consist of any upper or lowercased letter or digit.+ certificateId :: Prelude.Text,+ -- | The status you want to assign to the certificate. @Active@ means that+ -- the certificate can be used for programmatic calls to Amazon Web+ -- Services @Inactive@ means that the certificate cannot be used.+ status :: StatusType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSigningCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'updateSigningCertificate_userName' - The name of the IAM user the signing certificate belongs to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'certificateId', 'updateSigningCertificate_certificateId' - The ID of the signing certificate you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+--+-- 'status', 'updateSigningCertificate_status' - The status you want to assign to the certificate. @Active@ means that+-- the certificate can be used for programmatic calls to Amazon Web+-- Services @Inactive@ means that the certificate cannot be used.+newUpdateSigningCertificate ::+ -- | 'certificateId'+ Prelude.Text ->+ -- | 'status'+ StatusType ->+ UpdateSigningCertificate+newUpdateSigningCertificate pCertificateId_ pStatus_ =+ UpdateSigningCertificate'+ { userName =+ Prelude.Nothing,+ certificateId = pCertificateId_,+ status = pStatus_+ }++-- | The name of the IAM user the signing certificate belongs to.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateSigningCertificate_userName :: Lens.Lens' UpdateSigningCertificate (Prelude.Maybe Prelude.Text)+updateSigningCertificate_userName = Lens.lens (\UpdateSigningCertificate' {userName} -> userName) (\s@UpdateSigningCertificate' {} a -> s {userName = a} :: UpdateSigningCertificate)++-- | The ID of the signing certificate you want to update.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- that can consist of any upper or lowercased letter or digit.+updateSigningCertificate_certificateId :: Lens.Lens' UpdateSigningCertificate Prelude.Text+updateSigningCertificate_certificateId = Lens.lens (\UpdateSigningCertificate' {certificateId} -> certificateId) (\s@UpdateSigningCertificate' {} a -> s {certificateId = a} :: UpdateSigningCertificate)++-- | The status you want to assign to the certificate. @Active@ means that+-- the certificate can be used for programmatic calls to Amazon Web+-- Services @Inactive@ means that the certificate cannot be used.+updateSigningCertificate_status :: Lens.Lens' UpdateSigningCertificate StatusType+updateSigningCertificate_status = Lens.lens (\UpdateSigningCertificate' {status} -> status) (\s@UpdateSigningCertificate' {} a -> s {status = a} :: UpdateSigningCertificate)++instance Core.AWSRequest UpdateSigningCertificate where+ type+ AWSResponse UpdateSigningCertificate =+ UpdateSigningCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveNull+ UpdateSigningCertificateResponse'++instance Prelude.Hashable UpdateSigningCertificate where+ hashWithSalt _salt UpdateSigningCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` certificateId+ `Prelude.hashWithSalt` status++instance Prelude.NFData UpdateSigningCertificate where+ rnf UpdateSigningCertificate' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf certificateId+ `Prelude.seq` Prelude.rnf status++instance Data.ToHeaders UpdateSigningCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateSigningCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateSigningCertificate where+ toQuery UpdateSigningCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateSigningCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "CertificateId" Data.=: certificateId,+ "Status" Data.=: status+ ]++-- | /See:/ 'newUpdateSigningCertificateResponse' smart constructor.+data UpdateSigningCertificateResponse = UpdateSigningCertificateResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSigningCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateSigningCertificateResponse ::+ UpdateSigningCertificateResponse+newUpdateSigningCertificateResponse =+ UpdateSigningCertificateResponse'++instance+ Prelude.NFData+ UpdateSigningCertificateResponse+ where+ rnf _ = ()
+ gen/Amazonka/IAM/UpdateUser.hs view
@@ -0,0 +1,221 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UpdateUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates the name and\/or the path of the specified IAM user.+--+-- You should understand the implications of changing an IAM user\'s path+-- or name. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_manage.html#id_users_renaming Renaming an IAM user>+-- and+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups_manage_rename.html Renaming an IAM group>+-- in the /IAM User Guide/.+--+-- To change a user name, the requester must have appropriate permissions+-- on both the source object and the target object. For example, to change+-- Bob to Robert, the entity making the request must have permission on Bob+-- and Robert, or must have permission on all (*). For more information+-- about permissions, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/PermissionsAndPolicies.html Permissions and policies>.+module Amazonka.IAM.UpdateUser+ ( -- * Creating a Request+ UpdateUser (..),+ newUpdateUser,++ -- * Request Lenses+ updateUser_newPath,+ updateUser_newUserName,+ updateUser_userName,++ -- * Destructuring the Response+ UpdateUserResponse (..),+ newUpdateUserResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateUser' smart constructor.+data UpdateUser = UpdateUser'+ { -- | New path for the IAM user. Include this parameter only if you\'re+ -- changing the user\'s path.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ newPath' :: Prelude.Maybe Prelude.Text,+ -- | New name for the user. Include this parameter only if you\'re changing+ -- the user\'s name.+ --+ -- IAM user, group, role, and policy names must be unique within the+ -- account. Names are not distinguished by case. For example, you cannot+ -- create resources named both \"MyResource\" and \"myresource\".+ newUserName' :: Prelude.Maybe Prelude.Text,+ -- | Name of the user to update. If you\'re changing the name of the user,+ -- this is the original user name.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'newPath'', 'updateUser_newPath' - New path for the IAM user. Include this parameter only if you\'re+-- changing the user\'s path.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- 'newUserName'', 'updateUser_newUserName' - New name for the user. Include this parameter only if you\'re changing+-- the user\'s name.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+--+-- 'userName', 'updateUser_userName' - Name of the user to update. If you\'re changing the name of the user,+-- this is the original user name.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+newUpdateUser ::+ -- | 'userName'+ Prelude.Text ->+ UpdateUser+newUpdateUser pUserName_ =+ UpdateUser'+ { newPath' = Prelude.Nothing,+ newUserName' = Prelude.Nothing,+ userName = pUserName_+ }++-- | New path for the IAM user. Include this parameter only if you\'re+-- changing the user\'s path.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+updateUser_newPath :: Lens.Lens' UpdateUser (Prelude.Maybe Prelude.Text)+updateUser_newPath = Lens.lens (\UpdateUser' {newPath'} -> newPath') (\s@UpdateUser' {} a -> s {newPath' = a} :: UpdateUser)++-- | New name for the user. Include this parameter only if you\'re changing+-- the user\'s name.+--+-- IAM user, group, role, and policy names must be unique within the+-- account. Names are not distinguished by case. For example, you cannot+-- create resources named both \"MyResource\" and \"myresource\".+updateUser_newUserName :: Lens.Lens' UpdateUser (Prelude.Maybe Prelude.Text)+updateUser_newUserName = Lens.lens (\UpdateUser' {newUserName'} -> newUserName') (\s@UpdateUser' {} a -> s {newUserName' = a} :: UpdateUser)++-- | Name of the user to update. If you\'re changing the name of the user,+-- this is the original user name.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+updateUser_userName :: Lens.Lens' UpdateUser Prelude.Text+updateUser_userName = Lens.lens (\UpdateUser' {userName} -> userName) (\s@UpdateUser' {} a -> s {userName = a} :: UpdateUser)++instance Core.AWSRequest UpdateUser where+ type AWSResponse UpdateUser = UpdateUserResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response = Response.receiveNull UpdateUserResponse'++instance Prelude.Hashable UpdateUser where+ hashWithSalt _salt UpdateUser' {..} =+ _salt+ `Prelude.hashWithSalt` newPath'+ `Prelude.hashWithSalt` newUserName'+ `Prelude.hashWithSalt` userName++instance Prelude.NFData UpdateUser where+ rnf UpdateUser' {..} =+ Prelude.rnf newPath'+ `Prelude.seq` Prelude.rnf newUserName'+ `Prelude.seq` Prelude.rnf userName++instance Data.ToHeaders UpdateUser where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UpdateUser where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdateUser where+ toQuery UpdateUser' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UpdateUser" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "NewPath" Data.=: newPath',+ "NewUserName" Data.=: newUserName',+ "UserName" Data.=: userName+ ]++-- | /See:/ 'newUpdateUserResponse' smart constructor.+data UpdateUserResponse = UpdateUserResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newUpdateUserResponse ::+ UpdateUserResponse+newUpdateUserResponse = UpdateUserResponse'++instance Prelude.NFData UpdateUserResponse where+ rnf _ = ()
+ gen/Amazonka/IAM/UploadSSHPublicKey.hs view
@@ -0,0 +1,245 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UploadSSHPublicKey+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Uploads an SSH public key and associates it with the specified IAM user.+--+-- The SSH public key uploaded by this operation can be used only for+-- authenticating the associated IAM user to an CodeCommit repository. For+-- more information about using SSH keys to authenticate to an CodeCommit+-- repository, see+-- <https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up CodeCommit for SSH connections>+-- in the /CodeCommit User Guide/.+module Amazonka.IAM.UploadSSHPublicKey+ ( -- * Creating a Request+ UploadSSHPublicKey (..),+ newUploadSSHPublicKey,++ -- * Request Lenses+ uploadSSHPublicKey_userName,+ uploadSSHPublicKey_sSHPublicKeyBody,++ -- * Destructuring the Response+ UploadSSHPublicKeyResponse (..),+ newUploadSSHPublicKeyResponse,++ -- * Response Lenses+ uploadSSHPublicKeyResponse_sSHPublicKey,+ uploadSSHPublicKeyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUploadSSHPublicKey' smart constructor.+data UploadSSHPublicKey = UploadSSHPublicKey'+ { -- | The name of the IAM user to associate the SSH public key with.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Text,+ -- | The SSH public key. The public key must be encoded in ssh-rsa format or+ -- PEM format. The minimum bit-length of the public key is 2048 bits. For+ -- example, you can generate a 2048-bit key, and the resulting PEM file is+ -- 1679 bytes long.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ sSHPublicKeyBody :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UploadSSHPublicKey' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'uploadSSHPublicKey_userName' - The name of the IAM user to associate the SSH public key with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'sSHPublicKeyBody', 'uploadSSHPublicKey_sSHPublicKeyBody' - The SSH public key. The public key must be encoded in ssh-rsa format or+-- PEM format. The minimum bit-length of the public key is 2048 bits. For+-- example, you can generate a 2048-bit key, and the resulting PEM file is+-- 1679 bytes long.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newUploadSSHPublicKey ::+ -- | 'userName'+ Prelude.Text ->+ -- | 'sSHPublicKeyBody'+ Prelude.Text ->+ UploadSSHPublicKey+newUploadSSHPublicKey pUserName_ pSSHPublicKeyBody_ =+ UploadSSHPublicKey'+ { userName = pUserName_,+ sSHPublicKeyBody = pSSHPublicKeyBody_+ }++-- | The name of the IAM user to associate the SSH public key with.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+uploadSSHPublicKey_userName :: Lens.Lens' UploadSSHPublicKey Prelude.Text+uploadSSHPublicKey_userName = Lens.lens (\UploadSSHPublicKey' {userName} -> userName) (\s@UploadSSHPublicKey' {} a -> s {userName = a} :: UploadSSHPublicKey)++-- | The SSH public key. The public key must be encoded in ssh-rsa format or+-- PEM format. The minimum bit-length of the public key is 2048 bits. For+-- example, you can generate a 2048-bit key, and the resulting PEM file is+-- 1679 bytes long.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+uploadSSHPublicKey_sSHPublicKeyBody :: Lens.Lens' UploadSSHPublicKey Prelude.Text+uploadSSHPublicKey_sSHPublicKeyBody = Lens.lens (\UploadSSHPublicKey' {sSHPublicKeyBody} -> sSHPublicKeyBody) (\s@UploadSSHPublicKey' {} a -> s {sSHPublicKeyBody = a} :: UploadSSHPublicKey)++instance Core.AWSRequest UploadSSHPublicKey where+ type+ AWSResponse UploadSSHPublicKey =+ UploadSSHPublicKeyResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "UploadSSHPublicKeyResult"+ ( \s h x ->+ UploadSSHPublicKeyResponse'+ Prelude.<$> (x Data..@? "SSHPublicKey")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UploadSSHPublicKey where+ hashWithSalt _salt UploadSSHPublicKey' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` sSHPublicKeyBody++instance Prelude.NFData UploadSSHPublicKey where+ rnf UploadSSHPublicKey' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf sSHPublicKeyBody++instance Data.ToHeaders UploadSSHPublicKey where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UploadSSHPublicKey where+ toPath = Prelude.const "/"++instance Data.ToQuery UploadSSHPublicKey where+ toQuery UploadSSHPublicKey' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UploadSSHPublicKey" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "SSHPublicKeyBody" Data.=: sSHPublicKeyBody+ ]++-- | Contains the response to a successful UploadSSHPublicKey request.+--+-- /See:/ 'newUploadSSHPublicKeyResponse' smart constructor.+data UploadSSHPublicKeyResponse = UploadSSHPublicKeyResponse'+ { -- | Contains information about the SSH public key.+ sSHPublicKey :: Prelude.Maybe SSHPublicKey,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UploadSSHPublicKeyResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sSHPublicKey', 'uploadSSHPublicKeyResponse_sSHPublicKey' - Contains information about the SSH public key.+--+-- 'httpStatus', 'uploadSSHPublicKeyResponse_httpStatus' - The response's http status code.+newUploadSSHPublicKeyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UploadSSHPublicKeyResponse+newUploadSSHPublicKeyResponse pHttpStatus_ =+ UploadSSHPublicKeyResponse'+ { sSHPublicKey =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Contains information about the SSH public key.+uploadSSHPublicKeyResponse_sSHPublicKey :: Lens.Lens' UploadSSHPublicKeyResponse (Prelude.Maybe SSHPublicKey)+uploadSSHPublicKeyResponse_sSHPublicKey = Lens.lens (\UploadSSHPublicKeyResponse' {sSHPublicKey} -> sSHPublicKey) (\s@UploadSSHPublicKeyResponse' {} a -> s {sSHPublicKey = a} :: UploadSSHPublicKeyResponse)++-- | The response's http status code.+uploadSSHPublicKeyResponse_httpStatus :: Lens.Lens' UploadSSHPublicKeyResponse Prelude.Int+uploadSSHPublicKeyResponse_httpStatus = Lens.lens (\UploadSSHPublicKeyResponse' {httpStatus} -> httpStatus) (\s@UploadSSHPublicKeyResponse' {} a -> s {httpStatus = a} :: UploadSSHPublicKeyResponse)++instance Prelude.NFData UploadSSHPublicKeyResponse where+ rnf UploadSSHPublicKeyResponse' {..} =+ Prelude.rnf sSHPublicKey+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/UploadServerCertificate.hs view
@@ -0,0 +1,509 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UploadServerCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Uploads a server certificate entity for the Amazon Web Services account.+-- The server certificate entity includes a public key certificate, a+-- private key, and an optional certificate chain, which should all be+-- PEM-encoded.+--+-- We recommend that you use+-- <https://docs.aws.amazon.com/acm/ Certificate Manager> to provision,+-- manage, and deploy your server certificates. With ACM you can request a+-- certificate, deploy it to Amazon Web Services resources, and let ACM+-- handle certificate renewals for you. Certificates provided by ACM are+-- free. For more information about using ACM, see the+-- <https://docs.aws.amazon.com/acm/latest/userguide/ Certificate Manager User Guide>.+--+-- For more information about working with server certificates, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with server certificates>+-- in the /IAM User Guide/. This topic includes a list of Amazon Web+-- Services services that can use the server certificates that you manage+-- with IAM.+--+-- For information about the number of server certificates you can upload,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html IAM and STS quotas>+-- in the /IAM User Guide/.+--+-- Because the body of the public key certificate, private key, and the+-- certificate chain can be large, you should use POST rather than GET when+-- calling @UploadServerCertificate@. For information about setting up+-- signatures and authorization through the API, see+-- <https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html Signing Amazon Web Services API requests>+-- in the /Amazon Web Services General Reference/. For general information+-- about using the Query API with IAM, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/programming.html Calling the API by making HTTP query requests>+-- in the /IAM User Guide/.+module Amazonka.IAM.UploadServerCertificate+ ( -- * Creating a Request+ UploadServerCertificate (..),+ newUploadServerCertificate,++ -- * Request Lenses+ uploadServerCertificate_certificateChain,+ uploadServerCertificate_path,+ uploadServerCertificate_tags,+ uploadServerCertificate_serverCertificateName,+ uploadServerCertificate_certificateBody,+ uploadServerCertificate_privateKey,++ -- * Destructuring the Response+ UploadServerCertificateResponse (..),+ newUploadServerCertificateResponse,++ -- * Response Lenses+ uploadServerCertificateResponse_serverCertificateMetadata,+ uploadServerCertificateResponse_tags,+ uploadServerCertificateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUploadServerCertificate' smart constructor.+data UploadServerCertificate = UploadServerCertificate'+ { -- | The contents of the certificate chain. This is typically a concatenation+ -- of the PEM-encoded public key certificates of the chain.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ certificateChain :: Prelude.Maybe Prelude.Text,+ -- | The path for the server certificate. For more information about paths,+ -- see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+ -- in the /IAM User Guide/.+ --+ -- This parameter is optional. If it is not included, it defaults to a+ -- slash (\/). This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of either a forward slash (\/) by itself or a string that+ -- must begin and end with forward slashes. In addition, it can contain any+ -- ASCII character from the ! (@\\u0021@) through the DEL character+ -- (@\\u007F@), including most punctuation characters, digits, and upper+ -- and lowercased letters.+ --+ -- If you are uploading a server certificate specifically for use with+ -- Amazon CloudFront distributions, you must specify a path using the+ -- @path@ parameter. The path must begin with @\/cloudfront@ and must+ -- include a trailing slash (for example, @\/cloudfront\/test\/@).+ path :: Prelude.Maybe Prelude.Text,+ -- | A list of tags that you want to attach to the new IAM server certificate+ -- resource. Each tag consists of a key name and an associated value. For+ -- more information about tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ --+ -- If any one of the tags is invalid or if you exceed the allowed maximum+ -- number of tags, then the entire request fails and the resource is not+ -- created.+ tags :: Prelude.Maybe [Tag],+ -- | The name for the server certificate. Do not include the path in this+ -- value. The name of the certificate cannot contain any spaces.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ serverCertificateName :: Prelude.Text,+ -- | The contents of the public key certificate in PEM-encoded format.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ certificateBody :: Prelude.Text,+ -- | The contents of the private key in PEM-encoded format.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ privateKey :: Data.Sensitive Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UploadServerCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'certificateChain', 'uploadServerCertificate_certificateChain' - The contents of the certificate chain. This is typically a concatenation+-- of the PEM-encoded public key certificates of the chain.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'path', 'uploadServerCertificate_path' - The path for the server certificate. For more information about paths,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/). This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- If you are uploading a server certificate specifically for use with+-- Amazon CloudFront distributions, you must specify a path using the+-- @path@ parameter. The path must begin with @\/cloudfront@ and must+-- include a trailing slash (for example, @\/cloudfront\/test\/@).+--+-- 'tags', 'uploadServerCertificate_tags' - A list of tags that you want to attach to the new IAM server certificate+-- resource. Each tag consists of a key name and an associated value. For+-- more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+--+-- 'serverCertificateName', 'uploadServerCertificate_serverCertificateName' - The name for the server certificate. Do not include the path in this+-- value. The name of the certificate cannot contain any spaces.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'certificateBody', 'uploadServerCertificate_certificateBody' - The contents of the public key certificate in PEM-encoded format.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+--+-- 'privateKey', 'uploadServerCertificate_privateKey' - The contents of the private key in PEM-encoded format.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newUploadServerCertificate ::+ -- | 'serverCertificateName'+ Prelude.Text ->+ -- | 'certificateBody'+ Prelude.Text ->+ -- | 'privateKey'+ Prelude.Text ->+ UploadServerCertificate+newUploadServerCertificate+ pServerCertificateName_+ pCertificateBody_+ pPrivateKey_ =+ UploadServerCertificate'+ { certificateChain =+ Prelude.Nothing,+ path = Prelude.Nothing,+ tags = Prelude.Nothing,+ serverCertificateName = pServerCertificateName_,+ certificateBody = pCertificateBody_,+ privateKey = Data._Sensitive Lens.# pPrivateKey_+ }++-- | The contents of the certificate chain. This is typically a concatenation+-- of the PEM-encoded public key certificates of the chain.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+uploadServerCertificate_certificateChain :: Lens.Lens' UploadServerCertificate (Prelude.Maybe Prelude.Text)+uploadServerCertificate_certificateChain = Lens.lens (\UploadServerCertificate' {certificateChain} -> certificateChain) (\s@UploadServerCertificate' {} a -> s {certificateChain = a} :: UploadServerCertificate)++-- | The path for the server certificate. For more information about paths,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM identifiers>+-- in the /IAM User Guide/.+--+-- This parameter is optional. If it is not included, it defaults to a+-- slash (\/). This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of either a forward slash (\/) by itself or a string that+-- must begin and end with forward slashes. In addition, it can contain any+-- ASCII character from the ! (@\\u0021@) through the DEL character+-- (@\\u007F@), including most punctuation characters, digits, and upper+-- and lowercased letters.+--+-- If you are uploading a server certificate specifically for use with+-- Amazon CloudFront distributions, you must specify a path using the+-- @path@ parameter. The path must begin with @\/cloudfront@ and must+-- include a trailing slash (for example, @\/cloudfront\/test\/@).+uploadServerCertificate_path :: Lens.Lens' UploadServerCertificate (Prelude.Maybe Prelude.Text)+uploadServerCertificate_path = Lens.lens (\UploadServerCertificate' {path} -> path) (\s@UploadServerCertificate' {} a -> s {path = a} :: UploadServerCertificate)++-- | A list of tags that you want to attach to the new IAM server certificate+-- resource. Each tag consists of a key name and an associated value. For+-- more information about tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- If any one of the tags is invalid or if you exceed the allowed maximum+-- number of tags, then the entire request fails and the resource is not+-- created.+uploadServerCertificate_tags :: Lens.Lens' UploadServerCertificate (Prelude.Maybe [Tag])+uploadServerCertificate_tags = Lens.lens (\UploadServerCertificate' {tags} -> tags) (\s@UploadServerCertificate' {} a -> s {tags = a} :: UploadServerCertificate) Prelude.. Lens.mapping Lens.coerced++-- | The name for the server certificate. Do not include the path in this+-- value. The name of the certificate cannot contain any spaces.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+uploadServerCertificate_serverCertificateName :: Lens.Lens' UploadServerCertificate Prelude.Text+uploadServerCertificate_serverCertificateName = Lens.lens (\UploadServerCertificate' {serverCertificateName} -> serverCertificateName) (\s@UploadServerCertificate' {} a -> s {serverCertificateName = a} :: UploadServerCertificate)++-- | The contents of the public key certificate in PEM-encoded format.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+uploadServerCertificate_certificateBody :: Lens.Lens' UploadServerCertificate Prelude.Text+uploadServerCertificate_certificateBody = Lens.lens (\UploadServerCertificate' {certificateBody} -> certificateBody) (\s@UploadServerCertificate' {} a -> s {certificateBody = a} :: UploadServerCertificate)++-- | The contents of the private key in PEM-encoded format.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+uploadServerCertificate_privateKey :: Lens.Lens' UploadServerCertificate Prelude.Text+uploadServerCertificate_privateKey = Lens.lens (\UploadServerCertificate' {privateKey} -> privateKey) (\s@UploadServerCertificate' {} a -> s {privateKey = a} :: UploadServerCertificate) Prelude.. Data._Sensitive++instance Core.AWSRequest UploadServerCertificate where+ type+ AWSResponse UploadServerCertificate =+ UploadServerCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "UploadServerCertificateResult"+ ( \s h x ->+ UploadServerCertificateResponse'+ Prelude.<$> (x Data..@? "ServerCertificateMetadata")+ Prelude.<*> ( x+ Data..@? "Tags"+ Core..!@ Prelude.mempty+ Prelude.>>= Core.may (Data.parseXMLList "member")+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UploadServerCertificate where+ hashWithSalt _salt UploadServerCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` certificateChain+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` serverCertificateName+ `Prelude.hashWithSalt` certificateBody+ `Prelude.hashWithSalt` privateKey++instance Prelude.NFData UploadServerCertificate where+ rnf UploadServerCertificate' {..} =+ Prelude.rnf certificateChain+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf serverCertificateName+ `Prelude.seq` Prelude.rnf certificateBody+ `Prelude.seq` Prelude.rnf privateKey++instance Data.ToHeaders UploadServerCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UploadServerCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery UploadServerCertificate where+ toQuery UploadServerCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UploadServerCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "CertificateChain" Data.=: certificateChain,+ "Path" Data.=: path,+ "Tags"+ Data.=: Data.toQuery+ (Data.toQueryList "member" Prelude.<$> tags),+ "ServerCertificateName"+ Data.=: serverCertificateName,+ "CertificateBody" Data.=: certificateBody,+ "PrivateKey" Data.=: privateKey+ ]++-- | Contains the response to a successful UploadServerCertificate request.+--+-- /See:/ 'newUploadServerCertificateResponse' smart constructor.+data UploadServerCertificateResponse = UploadServerCertificateResponse'+ { -- | The meta information of the uploaded server certificate without its+ -- certificate body, certificate chain, and private key.+ serverCertificateMetadata :: Prelude.Maybe ServerCertificateMetadata,+ -- | A list of tags that are attached to the new IAM server certificate. The+ -- returned list of tags is sorted by tag key. For more information about+ -- tagging, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+ -- in the /IAM User Guide/.+ tags :: Prelude.Maybe [Tag],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UploadServerCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serverCertificateMetadata', 'uploadServerCertificateResponse_serverCertificateMetadata' - The meta information of the uploaded server certificate without its+-- certificate body, certificate chain, and private key.+--+-- 'tags', 'uploadServerCertificateResponse_tags' - A list of tags that are attached to the new IAM server certificate. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+--+-- 'httpStatus', 'uploadServerCertificateResponse_httpStatus' - The response's http status code.+newUploadServerCertificateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UploadServerCertificateResponse+newUploadServerCertificateResponse pHttpStatus_ =+ UploadServerCertificateResponse'+ { serverCertificateMetadata =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The meta information of the uploaded server certificate without its+-- certificate body, certificate chain, and private key.+uploadServerCertificateResponse_serverCertificateMetadata :: Lens.Lens' UploadServerCertificateResponse (Prelude.Maybe ServerCertificateMetadata)+uploadServerCertificateResponse_serverCertificateMetadata = Lens.lens (\UploadServerCertificateResponse' {serverCertificateMetadata} -> serverCertificateMetadata) (\s@UploadServerCertificateResponse' {} a -> s {serverCertificateMetadata = a} :: UploadServerCertificateResponse)++-- | A list of tags that are attached to the new IAM server certificate. The+-- returned list of tags is sorted by tag key. For more information about+-- tagging, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html Tagging IAM resources>+-- in the /IAM User Guide/.+uploadServerCertificateResponse_tags :: Lens.Lens' UploadServerCertificateResponse (Prelude.Maybe [Tag])+uploadServerCertificateResponse_tags = Lens.lens (\UploadServerCertificateResponse' {tags} -> tags) (\s@UploadServerCertificateResponse' {} a -> s {tags = a} :: UploadServerCertificateResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+uploadServerCertificateResponse_httpStatus :: Lens.Lens' UploadServerCertificateResponse Prelude.Int+uploadServerCertificateResponse_httpStatus = Lens.lens (\UploadServerCertificateResponse' {httpStatus} -> httpStatus) (\s@UploadServerCertificateResponse' {} a -> s {httpStatus = a} :: UploadServerCertificateResponse)++instance+ Prelude.NFData+ UploadServerCertificateResponse+ where+ rnf UploadServerCertificateResponse' {..} =+ Prelude.rnf serverCertificateMetadata+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IAM/UploadSigningCertificate.hs view
@@ -0,0 +1,261 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.UploadSigningCertificate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Uploads an X.509 signing certificate and associates it with the+-- specified IAM user. Some Amazon Web Services services require you to use+-- certificates to validate requests that are signed with a corresponding+-- private key. When you upload the certificate, its default status is+-- @Active@.+--+-- For information about when you would use an X.509 signing certificate,+-- see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Managing server certificates in IAM>+-- in the /IAM User Guide/.+--+-- If the @UserName@ is not specified, the IAM user name is determined+-- implicitly based on the Amazon Web Services access key ID used to sign+-- the request. This operation works for access keys under the Amazon Web+-- Services account. Consequently, you can use this operation to manage+-- Amazon Web Services account root user credentials even if the Amazon Web+-- Services account has no associated users.+--+-- Because the body of an X.509 certificate can be large, you should use+-- POST rather than GET when calling @UploadSigningCertificate@. For+-- information about setting up signatures and authorization through the+-- API, see+-- <https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html Signing Amazon Web Services API requests>+-- in the /Amazon Web Services General Reference/. For general information+-- about using the Query API with IAM, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html Making query requests>+-- in the /IAM User Guide/.+module Amazonka.IAM.UploadSigningCertificate+ ( -- * Creating a Request+ UploadSigningCertificate (..),+ newUploadSigningCertificate,++ -- * Request Lenses+ uploadSigningCertificate_userName,+ uploadSigningCertificate_certificateBody,++ -- * Destructuring the Response+ UploadSigningCertificateResponse (..),+ newUploadSigningCertificateResponse,++ -- * Response Lenses+ uploadSigningCertificateResponse_httpStatus,+ uploadSigningCertificateResponse_certificate,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUploadSigningCertificate' smart constructor.+data UploadSigningCertificate = UploadSigningCertificate'+ { -- | The name of the user the signing certificate is for.+ --+ -- This parameter allows (through its+ -- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+ -- consisting of upper and lowercase alphanumeric characters with no+ -- spaces. You can also include any of the following characters: _+=,.\@-+ userName :: Prelude.Maybe Prelude.Text,+ -- | The contents of the signing certificate.+ --+ -- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+ -- this parameter is a string of characters consisting of the following:+ --+ -- - Any printable ASCII character ranging from the space character+ -- (@\\u0020@) through the end of the ASCII character range+ --+ -- - The printable characters in the Basic Latin and Latin-1 Supplement+ -- character set (through @\\u00FF@)+ --+ -- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+ -- carriage return (@\\u000D@)+ certificateBody :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UploadSigningCertificate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'userName', 'uploadSigningCertificate_userName' - The name of the user the signing certificate is for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+--+-- 'certificateBody', 'uploadSigningCertificate_certificateBody' - The contents of the signing certificate.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+newUploadSigningCertificate ::+ -- | 'certificateBody'+ Prelude.Text ->+ UploadSigningCertificate+newUploadSigningCertificate pCertificateBody_ =+ UploadSigningCertificate'+ { userName =+ Prelude.Nothing,+ certificateBody = pCertificateBody_+ }++-- | The name of the user the signing certificate is for.+--+-- This parameter allows (through its+-- <http://wikipedia.org/wiki/regex regex pattern>) a string of characters+-- consisting of upper and lowercase alphanumeric characters with no+-- spaces. You can also include any of the following characters: _+=,.\@-+uploadSigningCertificate_userName :: Lens.Lens' UploadSigningCertificate (Prelude.Maybe Prelude.Text)+uploadSigningCertificate_userName = Lens.lens (\UploadSigningCertificate' {userName} -> userName) (\s@UploadSigningCertificate' {} a -> s {userName = a} :: UploadSigningCertificate)++-- | The contents of the signing certificate.+--+-- The <http://wikipedia.org/wiki/regex regex pattern> used to validate+-- this parameter is a string of characters consisting of the following:+--+-- - Any printable ASCII character ranging from the space character+-- (@\\u0020@) through the end of the ASCII character range+--+-- - The printable characters in the Basic Latin and Latin-1 Supplement+-- character set (through @\\u00FF@)+--+-- - The special characters tab (@\\u0009@), line feed (@\\u000A@), and+-- carriage return (@\\u000D@)+uploadSigningCertificate_certificateBody :: Lens.Lens' UploadSigningCertificate Prelude.Text+uploadSigningCertificate_certificateBody = Lens.lens (\UploadSigningCertificate' {certificateBody} -> certificateBody) (\s@UploadSigningCertificate' {} a -> s {certificateBody = a} :: UploadSigningCertificate)++instance Core.AWSRequest UploadSigningCertificate where+ type+ AWSResponse UploadSigningCertificate =+ UploadSigningCertificateResponse+ request overrides =+ Request.postQuery (overrides defaultService)+ response =+ Response.receiveXMLWrapper+ "UploadSigningCertificateResult"+ ( \s h x ->+ UploadSigningCertificateResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..@ "Certificate")+ )++instance Prelude.Hashable UploadSigningCertificate where+ hashWithSalt _salt UploadSigningCertificate' {..} =+ _salt+ `Prelude.hashWithSalt` userName+ `Prelude.hashWithSalt` certificateBody++instance Prelude.NFData UploadSigningCertificate where+ rnf UploadSigningCertificate' {..} =+ Prelude.rnf userName+ `Prelude.seq` Prelude.rnf certificateBody++instance Data.ToHeaders UploadSigningCertificate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath UploadSigningCertificate where+ toPath = Prelude.const "/"++instance Data.ToQuery UploadSigningCertificate where+ toQuery UploadSigningCertificate' {..} =+ Prelude.mconcat+ [ "Action"+ Data.=: ("UploadSigningCertificate" :: Prelude.ByteString),+ "Version"+ Data.=: ("2010-05-08" :: Prelude.ByteString),+ "UserName" Data.=: userName,+ "CertificateBody" Data.=: certificateBody+ ]++-- | Contains the response to a successful UploadSigningCertificate request.+--+-- /See:/ 'newUploadSigningCertificateResponse' smart constructor.+data UploadSigningCertificateResponse = UploadSigningCertificateResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Information about the certificate.+ certificate :: SigningCertificate+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UploadSigningCertificateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'uploadSigningCertificateResponse_httpStatus' - The response's http status code.+--+-- 'certificate', 'uploadSigningCertificateResponse_certificate' - Information about the certificate.+newUploadSigningCertificateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'certificate'+ SigningCertificate ->+ UploadSigningCertificateResponse+newUploadSigningCertificateResponse+ pHttpStatus_+ pCertificate_ =+ UploadSigningCertificateResponse'+ { httpStatus =+ pHttpStatus_,+ certificate = pCertificate_+ }++-- | The response's http status code.+uploadSigningCertificateResponse_httpStatus :: Lens.Lens' UploadSigningCertificateResponse Prelude.Int+uploadSigningCertificateResponse_httpStatus = Lens.lens (\UploadSigningCertificateResponse' {httpStatus} -> httpStatus) (\s@UploadSigningCertificateResponse' {} a -> s {httpStatus = a} :: UploadSigningCertificateResponse)++-- | Information about the certificate.+uploadSigningCertificateResponse_certificate :: Lens.Lens' UploadSigningCertificateResponse SigningCertificate+uploadSigningCertificateResponse_certificate = Lens.lens (\UploadSigningCertificateResponse' {certificate} -> certificate) (\s@UploadSigningCertificateResponse' {} a -> s {certificate = a} :: UploadSigningCertificateResponse)++instance+ Prelude.NFData+ UploadSigningCertificateResponse+ where+ rnf UploadSigningCertificateResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf certificate
+ gen/Amazonka/IAM/Waiters.hs view
@@ -0,0 +1,80 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.IAM.Waiters+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IAM.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IAM.GetInstanceProfile+import Amazonka.IAM.GetPolicy+import Amazonka.IAM.GetRole+import Amazonka.IAM.GetUser+import Amazonka.IAM.Lens+import Amazonka.IAM.Types+import qualified Amazonka.Prelude as Prelude++-- | Polls 'Amazonka.IAM.GetInstanceProfile' every 1 seconds until a successful state is reached. An error is returned after 40 failed checks.+newInstanceProfileExists :: Core.Wait GetInstanceProfile+newInstanceProfileExists =+ Core.Wait+ { Core.name = "InstanceProfileExists",+ Core.attempts = 40,+ Core.delay = 1,+ Core.acceptors =+ [ Core.matchStatus 200 Core.AcceptSuccess,+ Core.matchStatus 404 Core.AcceptRetry+ ]+ }++-- | Polls 'Amazonka.IAM.GetPolicy' every 1 seconds until a successful state is reached. An error is returned after 20 failed checks.+newPolicyExists :: Core.Wait GetPolicy+newPolicyExists =+ Core.Wait+ { Core.name = "PolicyExists",+ Core.attempts = 20,+ Core.delay = 1,+ Core.acceptors =+ [ Core.matchStatus 200 Core.AcceptSuccess,+ Core.matchError "NoSuchEntity" Core.AcceptRetry+ ]+ }++-- | Polls 'Amazonka.IAM.GetRole' every 1 seconds until a successful state is reached. An error is returned after 20 failed checks.+newRoleExists :: Core.Wait GetRole+newRoleExists =+ Core.Wait+ { Core.name = "RoleExists",+ Core.attempts = 20,+ Core.delay = 1,+ Core.acceptors =+ [ Core.matchStatus 200 Core.AcceptSuccess,+ Core.matchError "NoSuchEntity" Core.AcceptRetry+ ]+ }++-- | Polls 'Amazonka.IAM.GetUser' every 1 seconds until a successful state is reached. An error is returned after 20 failed checks.+newUserExists :: Core.Wait GetUser+newUserExists =+ Core.Wait+ { Core.name = "UserExists",+ Core.attempts = 20,+ Core.delay = 1,+ Core.acceptors =+ [ Core.matchStatus 200 Core.AcceptSuccess,+ Core.matchError "NoSuchEntity" Core.AcceptRetry+ ]+ }
− gen/Network/AWS/IAM.hs
@@ -1,1048 +0,0 @@-{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ __AWS Identity and Access Management__------ AWS Identity and Access Management (IAM) is a web service that you can use to manage users and user permissions under your AWS account. This guide provides descriptions of IAM actions that you can call programmatically. For general information about IAM, see <http://aws.amazon.com/iam/ AWS Identity and Access Management (IAM)> . For the user guide for IAM, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/ Using IAM> .------ We recommend that you use the AWS SDKs to make programmatic API calls to IAM. However, you can also use the IAM Query API to make direct calls to the IAM web service. To learn more about the IAM Query API, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html Making Query Requests> in the /Using IAM/ guide. IAM supports GET and POST requests for all actions. That is, the API does not require you to use GET for some actions and POST for others. However, GET requests are subject to the limitation size of a URL. Therefore, for operations that require larger sizes, use a POST request.------ __Signing Requests__------ Requests must be signed using an access key ID and a secret access key. We strongly recommend that you do not use your AWS account access key ID and secret access key for everyday work with IAM. You can use the access key ID and secret access key for an IAM user or you can use the AWS Security Token Service to generate temporary security credentials and use those to sign requests.------ To sign requests, we recommend that you use <http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4> . If you have an existing application that uses Signature Version 2, you do not have to update it to use Signature Version 4. However, some operations now require Signature Version 4. The documentation for operations that require version 4 indicate this requirement.------ __Additional Resources__------ For more information, see the following:------ * <http://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html AWS Security Credentials> . This topic provides general information about the types of credentials used for accessing AWS.------ * <http://docs.aws.amazon.com/IAM/latest/UserGuide/IAMBestPractices.html IAM Best Practices> . This topic presents a list of suggestions for using the IAM service to help secure your AWS resources.------ * <http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html Signing AWS API Requests> . This set of topics walk you through the process of signing a request using an access key ID and secret access key.----------module Network.AWS.IAM- (- -- * Service Configuration- iam-- -- * Errors- -- $errors-- -- ** CredentialReportNotPresentException- , _CredentialReportNotPresentException-- -- ** CredentialReportNotReadyException- , _CredentialReportNotReadyException-- -- ** MalformedPolicyDocumentException- , _MalformedPolicyDocumentException-- -- ** EntityAlreadyExistsException- , _EntityAlreadyExistsException-- -- ** MalformedCertificateException- , _MalformedCertificateException-- -- ** CredentialReportExpiredException- , _CredentialReportExpiredException-- -- ** UnmodifiableEntityException- , _UnmodifiableEntityException-- -- ** DuplicateCertificateException- , _DuplicateCertificateException-- -- ** DeleteConflictException- , _DeleteConflictException-- -- ** NoSuchEntityException- , _NoSuchEntityException-- -- ** InvalidCertificateException- , _InvalidCertificateException-- -- ** PolicyNotAttachableException- , _PolicyNotAttachableException-- -- ** ServiceNotSupportedException- , _ServiceNotSupportedException-- -- ** UnrecognizedPublicKeyEncodingException- , _UnrecognizedPublicKeyEncodingException-- -- ** InvalidUserTypeException- , _InvalidUserTypeException-- -- ** ServiceFailureException- , _ServiceFailureException-- -- ** InvalidInputException- , _InvalidInputException-- -- ** InvalidPublicKeyException- , _InvalidPublicKeyException-- -- ** InvalidAuthenticationCodeException- , _InvalidAuthenticationCodeException-- -- ** EntityTemporarilyUnmodifiableException- , _EntityTemporarilyUnmodifiableException-- -- ** DuplicateSSHPublicKeyException- , _DuplicateSSHPublicKeyException-- -- ** KeyPairMismatchException- , _KeyPairMismatchException-- -- ** PolicyEvaluationException- , _PolicyEvaluationException-- -- ** PasswordPolicyViolationException- , _PasswordPolicyViolationException-- -- ** LimitExceededException- , _LimitExceededException-- -- * Waiters- -- $waiters-- -- ** InstanceProfileExists- , instanceProfileExists-- -- ** UserExists- , userExists-- -- * Operations- -- $operations-- -- ** GetContextKeysForPrincipalPolicy- , module Network.AWS.IAM.GetContextKeysForPrincipalPolicy-- -- ** ListPolicies (Paginated)- , module Network.AWS.IAM.ListPolicies-- -- ** CreatePolicy- , module Network.AWS.IAM.CreatePolicy-- -- ** ListInstanceProfilesForRole (Paginated)- , module Network.AWS.IAM.ListInstanceProfilesForRole-- -- ** AttachGroupPolicy- , module Network.AWS.IAM.AttachGroupPolicy-- -- ** CreateAccessKey- , module Network.AWS.IAM.CreateAccessKey-- -- ** ListSSHPublicKeys (Paginated)- , module Network.AWS.IAM.ListSSHPublicKeys-- -- ** ListOpenIdConnectProviders- , module Network.AWS.IAM.ListOpenIdConnectProviders-- -- ** CreateVirtualMFADevice- , module Network.AWS.IAM.CreateVirtualMFADevice-- -- ** DeleteAccountPasswordPolicy- , module Network.AWS.IAM.DeleteAccountPasswordPolicy-- -- ** UpdateAccountPasswordPolicy- , module Network.AWS.IAM.UpdateAccountPasswordPolicy-- -- ** AttachRolePolicy- , module Network.AWS.IAM.AttachRolePolicy-- -- ** UpdateSSHPublicKey- , module Network.AWS.IAM.UpdateSSHPublicKey-- -- ** DeleteSSHPublicKey- , module Network.AWS.IAM.DeleteSSHPublicKey-- -- ** GetUserPolicy- , module Network.AWS.IAM.GetUserPolicy-- -- ** UpdateServiceSpecificCredential- , module Network.AWS.IAM.UpdateServiceSpecificCredential-- -- ** DeleteServiceSpecificCredential- , module Network.AWS.IAM.DeleteServiceSpecificCredential-- -- ** ListAttachedRolePolicies (Paginated)- , module Network.AWS.IAM.ListAttachedRolePolicies-- -- ** GetRole- , module Network.AWS.IAM.GetRole-- -- ** DeactivateMFADevice- , module Network.AWS.IAM.DeactivateMFADevice-- -- ** CreateOpenIdConnectProvider- , module Network.AWS.IAM.CreateOpenIdConnectProvider-- -- ** DeleteVirtualMFADevice- , module Network.AWS.IAM.DeleteVirtualMFADevice-- -- ** ListRoles (Paginated)- , module Network.AWS.IAM.ListRoles-- -- ** ListUserPolicies (Paginated)- , module Network.AWS.IAM.ListUserPolicies-- -- ** UploadSSHPublicKey- , module Network.AWS.IAM.UploadSSHPublicKey-- -- ** SimulateCustomPolicy (Paginated)- , module Network.AWS.IAM.SimulateCustomPolicy-- -- ** UpdateRole- , module Network.AWS.IAM.UpdateRole-- -- ** DeleteRole- , module Network.AWS.IAM.DeleteRole-- -- ** ListUsers (Paginated)- , module Network.AWS.IAM.ListUsers-- -- ** UpdateOpenIdConnectProviderThumbprint- , module Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint-- -- ** PutUserPolicy- , module Network.AWS.IAM.PutUserPolicy-- -- ** GetSSHPublicKey- , module Network.AWS.IAM.GetSSHPublicKey-- -- ** DetachGroupPolicy- , module Network.AWS.IAM.DetachGroupPolicy-- -- ** GetOpenIdConnectProvider- , module Network.AWS.IAM.GetOpenIdConnectProvider-- -- ** DeleteUserPolicy- , module Network.AWS.IAM.DeleteUserPolicy-- -- ** CreateRole- , module Network.AWS.IAM.CreateRole-- -- ** ResetServiceSpecificCredential- , module Network.AWS.IAM.ResetServiceSpecificCredential-- -- ** GetCredentialReport- , module Network.AWS.IAM.GetCredentialReport-- -- ** GetAccountSummary- , module Network.AWS.IAM.GetAccountSummary-- -- ** ListGroupPolicies (Paginated)- , module Network.AWS.IAM.ListGroupPolicies-- -- ** DeletePolicyVersion- , module Network.AWS.IAM.DeletePolicyVersion-- -- ** DeleteInstanceProfile- , module Network.AWS.IAM.DeleteInstanceProfile-- -- ** DetachRolePolicy- , module Network.AWS.IAM.DetachRolePolicy-- -- ** RemoveRoleFromInstanceProfile- , module Network.AWS.IAM.RemoveRoleFromInstanceProfile-- -- ** CreatePolicyVersion- , module Network.AWS.IAM.CreatePolicyVersion-- -- ** CreateInstanceProfile- , module Network.AWS.IAM.CreateInstanceProfile-- -- ** CreateSAMLProvider- , module Network.AWS.IAM.CreateSAMLProvider-- -- ** GetAccountAuthorizationDetails (Paginated)- , module Network.AWS.IAM.GetAccountAuthorizationDetails-- -- ** GetServiceLinkedRoleDeletionStatus- , module Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus-- -- ** DeleteAccountAlias- , module Network.AWS.IAM.DeleteAccountAlias-- -- ** DetachUserPolicy- , module Network.AWS.IAM.DetachUserPolicy-- -- ** RemoveUserFromGroup- , module Network.AWS.IAM.RemoveUserFromGroup-- -- ** DeleteGroupPolicy- , module Network.AWS.IAM.DeleteGroupPolicy-- -- ** PutGroupPolicy- , module Network.AWS.IAM.PutGroupPolicy-- -- ** GetLoginProfile- , module Network.AWS.IAM.GetLoginProfile-- -- ** GetGroupPolicy- , module Network.AWS.IAM.GetGroupPolicy-- -- ** ChangePassword- , module Network.AWS.IAM.ChangePassword-- -- ** ListServerCertificates (Paginated)- , module Network.AWS.IAM.ListServerCertificates-- -- ** DeleteServiceLinkedRole- , module Network.AWS.IAM.DeleteServiceLinkedRole-- -- ** DeletePolicy- , module Network.AWS.IAM.DeletePolicy-- -- ** UpdateAssumeRolePolicy- , module Network.AWS.IAM.UpdateAssumeRolePolicy-- -- ** GetInstanceProfile- , module Network.AWS.IAM.GetInstanceProfile-- -- ** CreateLoginProfile- , module Network.AWS.IAM.CreateLoginProfile-- -- ** GetSAMLProvider- , module Network.AWS.IAM.GetSAMLProvider-- -- ** AddRoleToInstanceProfile- , module Network.AWS.IAM.AddRoleToInstanceProfile-- -- ** ListGroupsForUser (Paginated)- , module Network.AWS.IAM.ListGroupsForUser-- -- ** ListEntitiesForPolicy (Paginated)- , module Network.AWS.IAM.ListEntitiesForPolicy-- -- ** AddUserToGroup- , module Network.AWS.IAM.AddUserToGroup-- -- ** SimulatePrincipalPolicy (Paginated)- , module Network.AWS.IAM.SimulatePrincipalPolicy-- -- ** GetPolicyVersion- , module Network.AWS.IAM.GetPolicyVersion-- -- ** CreateServiceLinkedRole- , module Network.AWS.IAM.CreateServiceLinkedRole-- -- ** ListServiceSpecificCredentials- , module Network.AWS.IAM.ListServiceSpecificCredentials-- -- ** DeleteOpenIdConnectProvider- , module Network.AWS.IAM.DeleteOpenIdConnectProvider-- -- ** GetUser- , module Network.AWS.IAM.GetUser-- -- ** ListSigningCertificates (Paginated)- , module Network.AWS.IAM.ListSigningCertificates-- -- ** DeleteSigningCertificate- , module Network.AWS.IAM.DeleteSigningCertificate-- -- ** UpdateSigningCertificate- , module Network.AWS.IAM.UpdateSigningCertificate-- -- ** ListAttachedUserPolicies (Paginated)- , module Network.AWS.IAM.ListAttachedUserPolicies-- -- ** RemoveClientIdFromOpenIdConnectProvider- , module Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider-- -- ** AttachUserPolicy- , module Network.AWS.IAM.AttachUserPolicy-- -- ** CreateServiceSpecificCredential- , module Network.AWS.IAM.CreateServiceSpecificCredential-- -- ** ListVirtualMFADevices (Paginated)- , module Network.AWS.IAM.ListVirtualMFADevices-- -- ** ResyncMFADevice- , module Network.AWS.IAM.ResyncMFADevice-- -- ** DeleteAccessKey- , module Network.AWS.IAM.DeleteAccessKey-- -- ** UpdateAccessKey- , module Network.AWS.IAM.UpdateAccessKey-- -- ** ListAccessKeys (Paginated)- , module Network.AWS.IAM.ListAccessKeys-- -- ** GetRolePolicy- , module Network.AWS.IAM.GetRolePolicy-- -- ** CreateUser- , module Network.AWS.IAM.CreateUser-- -- ** PutRolePolicy- , module Network.AWS.IAM.PutRolePolicy-- -- ** GetContextKeysForCustomPolicy- , module Network.AWS.IAM.GetContextKeysForCustomPolicy-- -- ** UploadSigningCertificate- , module Network.AWS.IAM.UploadSigningCertificate-- -- ** DeleteRolePolicy- , module Network.AWS.IAM.DeleteRolePolicy-- -- ** GetAccountPasswordPolicy- , module Network.AWS.IAM.GetAccountPasswordPolicy-- -- ** GetAccessKeyLastUsed- , module Network.AWS.IAM.GetAccessKeyLastUsed-- -- ** UpdateUser- , module Network.AWS.IAM.UpdateUser-- -- ** DeleteUser- , module Network.AWS.IAM.DeleteUser-- -- ** AddClientIdToOpenIdConnectProvider- , module Network.AWS.IAM.AddClientIdToOpenIdConnectProvider-- -- ** ListRolePolicies (Paginated)- , module Network.AWS.IAM.ListRolePolicies-- -- ** CreateAccountAlias- , module Network.AWS.IAM.CreateAccountAlias-- -- ** ListInstanceProfiles (Paginated)- , module Network.AWS.IAM.ListInstanceProfiles-- -- ** EnableMFADevice- , module Network.AWS.IAM.EnableMFADevice-- -- ** ListAccountAliases (Paginated)- , module Network.AWS.IAM.ListAccountAliases-- -- ** DeleteSAMLProvider- , module Network.AWS.IAM.DeleteSAMLProvider-- -- ** UpdateSAMLProvider- , module Network.AWS.IAM.UpdateSAMLProvider-- -- ** CreateGroup- , module Network.AWS.IAM.CreateGroup-- -- ** ListMFADevices (Paginated)- , module Network.AWS.IAM.ListMFADevices-- -- ** UploadServerCertificate- , module Network.AWS.IAM.UploadServerCertificate-- -- ** SetDefaultPolicyVersion- , module Network.AWS.IAM.SetDefaultPolicyVersion-- -- ** ListPolicyVersions (Paginated)- , module Network.AWS.IAM.ListPolicyVersions-- -- ** UpdateRoleDescription- , module Network.AWS.IAM.UpdateRoleDescription-- -- ** ListSAMLProviders- , module Network.AWS.IAM.ListSAMLProviders-- -- ** GetServerCertificate- , module Network.AWS.IAM.GetServerCertificate-- -- ** DeleteGroup- , module Network.AWS.IAM.DeleteGroup-- -- ** UpdateGroup- , module Network.AWS.IAM.UpdateGroup-- -- ** ListGroups (Paginated)- , module Network.AWS.IAM.ListGroups-- -- ** GenerateCredentialReport- , module Network.AWS.IAM.GenerateCredentialReport-- -- ** GetPolicy- , module Network.AWS.IAM.GetPolicy-- -- ** UpdateLoginProfile- , module Network.AWS.IAM.UpdateLoginProfile-- -- ** DeleteLoginProfile- , module Network.AWS.IAM.DeleteLoginProfile-- -- ** GetGroup (Paginated)- , module Network.AWS.IAM.GetGroup-- -- ** DeleteServerCertificate- , module Network.AWS.IAM.DeleteServerCertificate-- -- ** UpdateServerCertificate- , module Network.AWS.IAM.UpdateServerCertificate-- -- ** ListAttachedGroupPolicies (Paginated)- , module Network.AWS.IAM.ListAttachedGroupPolicies-- -- * Types-- -- ** AssignmentStatusType- , AssignmentStatusType (..)-- -- ** ContextKeyTypeEnum- , ContextKeyTypeEnum (..)-- -- ** DeletionTaskStatusType- , DeletionTaskStatusType (..)-- -- ** EncodingType- , EncodingType (..)-- -- ** EntityType- , EntityType (..)-- -- ** PolicyEvaluationDecisionType- , PolicyEvaluationDecisionType (..)-- -- ** PolicyScopeType- , PolicyScopeType (..)-- -- ** PolicySourceType- , PolicySourceType (..)-- -- ** ReportFormatType- , ReportFormatType (..)-- -- ** ReportStateType- , ReportStateType (..)-- -- ** StatusType- , StatusType (..)-- -- ** SummaryKeyType- , SummaryKeyType (..)-- -- ** AccessKeyInfo- , AccessKeyInfo- , accessKeyInfo- , akiCreateDate- , akiUserName- , akiAccessKeyId- , akiStatus- , akiSecretAccessKey-- -- ** AccessKeyLastUsed- , AccessKeyLastUsed- , accessKeyLastUsed- , akluLastUsedDate- , akluServiceName- , akluRegion-- -- ** AccessKeyMetadata- , AccessKeyMetadata- , accessKeyMetadata- , akmStatus- , akmCreateDate- , akmUserName- , akmAccessKeyId-- -- ** AttachedPolicy- , AttachedPolicy- , attachedPolicy- , apPolicyName- , apPolicyARN-- -- ** ContextEntry- , ContextEntry- , contextEntry- , ceContextKeyValues- , ceContextKeyName- , ceContextKeyType-- -- ** DeletionTaskFailureReasonType- , DeletionTaskFailureReasonType- , deletionTaskFailureReasonType- , dtfrtRoleUsageList- , dtfrtReason-- -- ** EvaluationResult- , EvaluationResult- , evaluationResult- , erMatchedStatements- , erEvalDecisionDetails- , erResourceSpecificResults- , erEvalResourceName- , erMissingContextValues- , erOrganizationsDecisionDetail- , erEvalActionName- , erEvalDecision-- -- ** GetContextKeysForPolicyResponse- , GetContextKeysForPolicyResponse- , getContextKeysForPolicyResponse- , gckfpContextKeyNames-- -- ** Group- , Group- , group'- , gPath- , gGroupName- , gGroupId- , gARN- , gCreateDate-- -- ** GroupDetail- , GroupDetail- , groupDetail- , gdARN- , gdPath- , gdCreateDate- , gdGroupId- , gdGroupPolicyList- , gdGroupName- , gdAttachedManagedPolicies-- -- ** InstanceProfile- , InstanceProfile- , instanceProfile- , ipPath- , ipInstanceProfileName- , ipInstanceProfileId- , ipARN- , ipCreateDate- , ipRoles-- -- ** LoginProfile- , LoginProfile- , loginProfile- , lpPasswordResetRequired- , lpUserName- , lpCreateDate-- -- ** MFADevice- , MFADevice- , mfaDevice- , mdUserName- , mdSerialNumber- , mdEnableDate-- -- ** ManagedPolicyDetail- , ManagedPolicyDetail- , managedPolicyDetail- , mpdPolicyName- , mpdARN- , mpdUpdateDate- , mpdPolicyId- , mpdPath- , mpdPolicyVersionList- , mpdCreateDate- , mpdIsAttachable- , mpdDefaultVersionId- , mpdAttachmentCount- , mpdDescription-- -- ** OpenIdConnectProviderListEntry- , OpenIdConnectProviderListEntry- , openIdConnectProviderListEntry- , oicpleARN-- -- ** OrganizationsDecisionDetail- , OrganizationsDecisionDetail- , organizationsDecisionDetail- , oddAllowedByOrganizations-- -- ** PasswordPolicy- , PasswordPolicy- , passwordPolicy- , ppExpirePasswords- , ppMinimumPasswordLength- , ppRequireNumbers- , ppPasswordReusePrevention- , ppRequireLowercaseCharacters- , ppMaxPasswordAge- , ppHardExpiry- , ppRequireSymbols- , ppRequireUppercaseCharacters- , ppAllowUsersToChangePassword-- -- ** Policy- , Policy- , policy- , pPolicyName- , pARN- , pUpdateDate- , pPolicyId- , pPath- , pCreateDate- , pIsAttachable- , pDefaultVersionId- , pAttachmentCount- , pDescription-- -- ** PolicyDetail- , PolicyDetail- , policyDetail- , pdPolicyDocument- , pdPolicyName-- -- ** PolicyGroup- , PolicyGroup- , policyGroup- , pgGroupId- , pgGroupName-- -- ** PolicyRole- , PolicyRole- , policyRole- , prRoleName- , prRoleId-- -- ** PolicyUser- , PolicyUser- , policyUser- , puUserName- , puUserId-- -- ** PolicyVersion- , PolicyVersion- , policyVersion- , pvVersionId- , pvCreateDate- , pvDocument- , pvIsDefaultVersion-- -- ** Position- , Position- , position- , pLine- , pColumn-- -- ** ResourceSpecificResult- , ResourceSpecificResult- , resourceSpecificResult- , rsrMatchedStatements- , rsrEvalDecisionDetails- , rsrMissingContextValues- , rsrEvalResourceName- , rsrEvalResourceDecision-- -- ** Role- , Role- , role'- , rMaxSessionDuration- , rAssumeRolePolicyDocument- , rDescription- , rPath- , rRoleName- , rRoleId- , rARN- , rCreateDate-- -- ** RoleDetail- , RoleDetail- , roleDetail- , rdAssumeRolePolicyDocument- , rdARN- , rdPath- , rdInstanceProfileList- , rdCreateDate- , rdRoleName- , rdRoleId- , rdRolePolicyList- , rdAttachedManagedPolicies-- -- ** RoleUsageType- , RoleUsageType- , roleUsageType- , rutResources- , rutRegion-- -- ** SAMLProviderListEntry- , SAMLProviderListEntry- , sAMLProviderListEntry- , samlpleARN- , samlpleCreateDate- , samlpleValidUntil-- -- ** SSHPublicKey- , SSHPublicKey- , sshPublicKey- , spkUploadDate- , spkUserName- , spkSSHPublicKeyId- , spkFingerprint- , spkSSHPublicKeyBody- , spkStatus-- -- ** SSHPublicKeyMetadata- , SSHPublicKeyMetadata- , sshPublicKeyMetadata- , spkmUserName- , spkmSSHPublicKeyId- , spkmStatus- , spkmUploadDate-- -- ** ServerCertificate- , ServerCertificate- , serverCertificate- , sCertificateChain- , sServerCertificateMetadata- , sCertificateBody-- -- ** ServerCertificateMetadata- , ServerCertificateMetadata- , serverCertificateMetadata- , scmUploadDate- , scmExpiration- , scmPath- , scmServerCertificateName- , scmServerCertificateId- , scmARN-- -- ** ServiceSpecificCredential- , ServiceSpecificCredential- , serviceSpecificCredential- , sscCreateDate- , sscServiceName- , sscServiceUserName- , sscServicePassword- , sscServiceSpecificCredentialId- , sscUserName- , sscStatus-- -- ** ServiceSpecificCredentialMetadata- , ServiceSpecificCredentialMetadata- , serviceSpecificCredentialMetadata- , sscmUserName- , sscmStatus- , sscmServiceUserName- , sscmCreateDate- , sscmServiceSpecificCredentialId- , sscmServiceName-- -- ** SigningCertificate- , SigningCertificate- , signingCertificate- , scUploadDate- , scUserName- , scCertificateId- , scCertificateBody- , scStatus-- -- ** SimulatePolicyResponse- , SimulatePolicyResponse- , simulatePolicyResponse- , spEvaluationResults- , spMarker- , spIsTruncated-- -- ** Statement- , Statement- , statement- , sSourcePolicyType- , sSourcePolicyId- , sEndPosition- , sStartPosition-- -- ** User- , User- , user- , uPasswordLastUsed- , uPath- , uUserName- , uUserId- , uARN- , uCreateDate-- -- ** UserDetail- , UserDetail- , userDetail- , udGroupList- , udARN- , udPath- , udCreateDate- , udUserName- , udUserId- , udUserPolicyList- , udAttachedManagedPolicies-- -- ** VirtualMFADevice- , VirtualMFADevice- , virtualMFADevice- , vmdQRCodePNG- , vmdBase32StringSeed- , vmdUser- , vmdEnableDate- , vmdSerialNumber- ) where--import Network.AWS.IAM.AddClientIdToOpenIdConnectProvider-import Network.AWS.IAM.AddRoleToInstanceProfile-import Network.AWS.IAM.AddUserToGroup-import Network.AWS.IAM.AttachGroupPolicy-import Network.AWS.IAM.AttachRolePolicy-import Network.AWS.IAM.AttachUserPolicy-import Network.AWS.IAM.ChangePassword-import Network.AWS.IAM.CreateAccessKey-import Network.AWS.IAM.CreateAccountAlias-import Network.AWS.IAM.CreateGroup-import Network.AWS.IAM.CreateInstanceProfile-import Network.AWS.IAM.CreateLoginProfile-import Network.AWS.IAM.CreateOpenIdConnectProvider-import Network.AWS.IAM.CreatePolicy-import Network.AWS.IAM.CreatePolicyVersion-import Network.AWS.IAM.CreateRole-import Network.AWS.IAM.CreateSAMLProvider-import Network.AWS.IAM.CreateServiceLinkedRole-import Network.AWS.IAM.CreateServiceSpecificCredential-import Network.AWS.IAM.CreateUser-import Network.AWS.IAM.CreateVirtualMFADevice-import Network.AWS.IAM.DeactivateMFADevice-import Network.AWS.IAM.DeleteAccessKey-import Network.AWS.IAM.DeleteAccountAlias-import Network.AWS.IAM.DeleteAccountPasswordPolicy-import Network.AWS.IAM.DeleteGroup-import Network.AWS.IAM.DeleteGroupPolicy-import Network.AWS.IAM.DeleteInstanceProfile-import Network.AWS.IAM.DeleteLoginProfile-import Network.AWS.IAM.DeleteOpenIdConnectProvider-import Network.AWS.IAM.DeletePolicy-import Network.AWS.IAM.DeletePolicyVersion-import Network.AWS.IAM.DeleteRole-import Network.AWS.IAM.DeleteRolePolicy-import Network.AWS.IAM.DeleteSAMLProvider-import Network.AWS.IAM.DeleteServerCertificate-import Network.AWS.IAM.DeleteServiceLinkedRole-import Network.AWS.IAM.DeleteServiceSpecificCredential-import Network.AWS.IAM.DeleteSigningCertificate-import Network.AWS.IAM.DeleteSSHPublicKey-import Network.AWS.IAM.DeleteUser-import Network.AWS.IAM.DeleteUserPolicy-import Network.AWS.IAM.DeleteVirtualMFADevice-import Network.AWS.IAM.DetachGroupPolicy-import Network.AWS.IAM.DetachRolePolicy-import Network.AWS.IAM.DetachUserPolicy-import Network.AWS.IAM.EnableMFADevice-import Network.AWS.IAM.GenerateCredentialReport-import Network.AWS.IAM.GetAccessKeyLastUsed-import Network.AWS.IAM.GetAccountAuthorizationDetails-import Network.AWS.IAM.GetAccountPasswordPolicy-import Network.AWS.IAM.GetAccountSummary-import Network.AWS.IAM.GetContextKeysForCustomPolicy-import Network.AWS.IAM.GetContextKeysForPrincipalPolicy-import Network.AWS.IAM.GetCredentialReport-import Network.AWS.IAM.GetGroup-import Network.AWS.IAM.GetGroupPolicy-import Network.AWS.IAM.GetInstanceProfile-import Network.AWS.IAM.GetLoginProfile-import Network.AWS.IAM.GetOpenIdConnectProvider-import Network.AWS.IAM.GetPolicy-import Network.AWS.IAM.GetPolicyVersion-import Network.AWS.IAM.GetRole-import Network.AWS.IAM.GetRolePolicy-import Network.AWS.IAM.GetSAMLProvider-import Network.AWS.IAM.GetServerCertificate-import Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus-import Network.AWS.IAM.GetSSHPublicKey-import Network.AWS.IAM.GetUser-import Network.AWS.IAM.GetUserPolicy-import Network.AWS.IAM.ListAccessKeys-import Network.AWS.IAM.ListAccountAliases-import Network.AWS.IAM.ListAttachedGroupPolicies-import Network.AWS.IAM.ListAttachedRolePolicies-import Network.AWS.IAM.ListAttachedUserPolicies-import Network.AWS.IAM.ListEntitiesForPolicy-import Network.AWS.IAM.ListGroupPolicies-import Network.AWS.IAM.ListGroups-import Network.AWS.IAM.ListGroupsForUser-import Network.AWS.IAM.ListInstanceProfiles-import Network.AWS.IAM.ListInstanceProfilesForRole-import Network.AWS.IAM.ListMFADevices-import Network.AWS.IAM.ListOpenIdConnectProviders-import Network.AWS.IAM.ListPolicies-import Network.AWS.IAM.ListPolicyVersions-import Network.AWS.IAM.ListRolePolicies-import Network.AWS.IAM.ListRoles-import Network.AWS.IAM.ListSAMLProviders-import Network.AWS.IAM.ListServerCertificates-import Network.AWS.IAM.ListServiceSpecificCredentials-import Network.AWS.IAM.ListSigningCertificates-import Network.AWS.IAM.ListSSHPublicKeys-import Network.AWS.IAM.ListUserPolicies-import Network.AWS.IAM.ListUsers-import Network.AWS.IAM.ListVirtualMFADevices-import Network.AWS.IAM.PutGroupPolicy-import Network.AWS.IAM.PutRolePolicy-import Network.AWS.IAM.PutUserPolicy-import Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider-import Network.AWS.IAM.RemoveRoleFromInstanceProfile-import Network.AWS.IAM.RemoveUserFromGroup-import Network.AWS.IAM.ResetServiceSpecificCredential-import Network.AWS.IAM.ResyncMFADevice-import Network.AWS.IAM.SetDefaultPolicyVersion-import Network.AWS.IAM.SimulateCustomPolicy-import Network.AWS.IAM.SimulatePrincipalPolicy-import Network.AWS.IAM.Types-import Network.AWS.IAM.UpdateAccessKey-import Network.AWS.IAM.UpdateAccountPasswordPolicy-import Network.AWS.IAM.UpdateAssumeRolePolicy-import Network.AWS.IAM.UpdateGroup-import Network.AWS.IAM.UpdateLoginProfile-import Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint-import Network.AWS.IAM.UpdateRole-import Network.AWS.IAM.UpdateRoleDescription-import Network.AWS.IAM.UpdateSAMLProvider-import Network.AWS.IAM.UpdateServerCertificate-import Network.AWS.IAM.UpdateServiceSpecificCredential-import Network.AWS.IAM.UpdateSigningCertificate-import Network.AWS.IAM.UpdateSSHPublicKey-import Network.AWS.IAM.UpdateUser-import Network.AWS.IAM.UploadServerCertificate-import Network.AWS.IAM.UploadSigningCertificate-import Network.AWS.IAM.UploadSSHPublicKey-import Network.AWS.IAM.Waiters--{- $errors-Error matchers are designed for use with the functions provided by-<http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.-This allows catching (and rethrowing) service specific errors returned-by 'IAM'.--}--{- $operations-Some AWS operations return results that are incomplete and require subsequent-requests in order to obtain the entire result set. The process of sending-subsequent requests to continue where a previous request left off is called-pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to-1000 objects at a time, and you must send subsequent requests with the-appropriate Marker in order to retrieve the next page of results.--Operations that have an 'AWSPager' instance can transparently perform subsequent-requests, correctly setting Markers and other request facets to iterate through-the entire result set of a truncated API operation. Operations which support-this have an additional note in the documentation.--Many operations have the ability to filter results on the server side. See the-individual operation parameters for details.--}--{- $waiters-Waiters poll by repeatedly sending a request until some remote success condition-configured by the 'Wait' specification is fulfilled. The 'Wait' specification-determines how many attempts should be made, in addition to delay and retry strategies.--}
− gen/Network/AWS/IAM/AddClientIdToOpenIdConnectProvider.hs
@@ -1,131 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.AddClientIdToOpenIdConnectProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Adds a new client ID (also known as audience) to the list of client IDs already registered for the specified IAM OpenID Connect (OIDC) provider resource.--------- This operation is idempotent; it does not fail or return an error if you add an existing client ID to the provider.----module Network.AWS.IAM.AddClientIdToOpenIdConnectProvider- (- -- * Creating a Request- addClientIdToOpenIdConnectProvider- , AddClientIdToOpenIdConnectProvider- -- * Request Lenses- , acitoicpOpenIdConnectProviderARN- , acitoicpClientId-- -- * Destructuring the Response- , addClientIdToOpenIdConnectProviderResponse- , AddClientIdToOpenIdConnectProviderResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'addClientIdToOpenIdConnectProvider' smart constructor.-data AddClientIdToOpenIdConnectProvider = AddClientIdToOpenIdConnectProvider'- { _acitoicpOpenIdConnectProviderARN :: !Text- , _acitoicpClientId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AddClientIdToOpenIdConnectProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'acitoicpOpenIdConnectProviderARN' - The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider resource to add the client ID to. You can get a list of OIDC provider ARNs by using the 'ListOpenIDConnectProviders' operation.------ * 'acitoicpClientId' - The client ID (also known as audience) to add to the IAM OpenID Connect provider resource.-addClientIdToOpenIdConnectProvider- :: Text -- ^ 'acitoicpOpenIdConnectProviderARN'- -> Text -- ^ 'acitoicpClientId'- -> AddClientIdToOpenIdConnectProvider-addClientIdToOpenIdConnectProvider pOpenIdConnectProviderARN_ pClientId_ =- AddClientIdToOpenIdConnectProvider'- { _acitoicpOpenIdConnectProviderARN = pOpenIdConnectProviderARN_- , _acitoicpClientId = pClientId_- }----- | The Amazon Resource Name (ARN) of the IAM OpenID Connect (OIDC) provider resource to add the client ID to. You can get a list of OIDC provider ARNs by using the 'ListOpenIDConnectProviders' operation.-acitoicpOpenIdConnectProviderARN :: Lens' AddClientIdToOpenIdConnectProvider Text-acitoicpOpenIdConnectProviderARN = lens _acitoicpOpenIdConnectProviderARN (\ s a -> s{_acitoicpOpenIdConnectProviderARN = a})---- | The client ID (also known as audience) to add to the IAM OpenID Connect provider resource.-acitoicpClientId :: Lens' AddClientIdToOpenIdConnectProvider Text-acitoicpClientId = lens _acitoicpClientId (\ s a -> s{_acitoicpClientId = a})--instance AWSRequest- AddClientIdToOpenIdConnectProvider- where- type Rs AddClientIdToOpenIdConnectProvider =- AddClientIdToOpenIdConnectProviderResponse- request = postQuery iam- response- = receiveNull- AddClientIdToOpenIdConnectProviderResponse'--instance Hashable AddClientIdToOpenIdConnectProvider- where--instance NFData AddClientIdToOpenIdConnectProvider- where--instance ToHeaders AddClientIdToOpenIdConnectProvider- where- toHeaders = const mempty--instance ToPath AddClientIdToOpenIdConnectProvider- where- toPath = const "/"--instance ToQuery AddClientIdToOpenIdConnectProvider- where- toQuery AddClientIdToOpenIdConnectProvider'{..}- = mconcat- ["Action" =:- ("AddClientIDToOpenIDConnectProvider" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "OpenIDConnectProviderArn" =:- _acitoicpOpenIdConnectProviderARN,- "ClientID" =: _acitoicpClientId]---- | /See:/ 'addClientIdToOpenIdConnectProviderResponse' smart constructor.-data AddClientIdToOpenIdConnectProviderResponse =- AddClientIdToOpenIdConnectProviderResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AddClientIdToOpenIdConnectProviderResponse' with the minimum fields required to make a request.----addClientIdToOpenIdConnectProviderResponse- :: AddClientIdToOpenIdConnectProviderResponse-addClientIdToOpenIdConnectProviderResponse =- AddClientIdToOpenIdConnectProviderResponse'---instance NFData- AddClientIdToOpenIdConnectProviderResponse- where
− gen/Network/AWS/IAM/AddRoleToInstanceProfile.hs
@@ -1,120 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.AddRoleToInstanceProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Adds the specified IAM role to the specified instance profile. An instance profile can contain only one role, and this limit cannot be increased. You can remove the existing role and then add a different role to an instance profile. You must then wait for the change to appear across all of AWS because of <https://en.wikipedia.org/wiki/Eventual_consistency eventual consistency> . To force the change, you must <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DisassociateIamInstanceProfile.html disassociate the instance profile> and then <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_AssociateIamInstanceProfile.html associate the instance profile> , or you can stop your instance and then restart it.--------- For more information about roles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with Roles> . For more information about instance profiles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About Instance Profiles> .----module Network.AWS.IAM.AddRoleToInstanceProfile- (- -- * Creating a Request- addRoleToInstanceProfile- , AddRoleToInstanceProfile- -- * Request Lenses- , artipInstanceProfileName- , artipRoleName-- -- * Destructuring the Response- , addRoleToInstanceProfileResponse- , AddRoleToInstanceProfileResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'addRoleToInstanceProfile' smart constructor.-data AddRoleToInstanceProfile = AddRoleToInstanceProfile'- { _artipInstanceProfileName :: !Text- , _artipRoleName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AddRoleToInstanceProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'artipInstanceProfileName' - The name of the instance profile to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'artipRoleName' - The name of the role to add. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--addRoleToInstanceProfile- :: Text -- ^ 'artipInstanceProfileName'- -> Text -- ^ 'artipRoleName'- -> AddRoleToInstanceProfile-addRoleToInstanceProfile pInstanceProfileName_ pRoleName_ =- AddRoleToInstanceProfile'- { _artipInstanceProfileName = pInstanceProfileName_- , _artipRoleName = pRoleName_- }----- | The name of the instance profile to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--artipInstanceProfileName :: Lens' AddRoleToInstanceProfile Text-artipInstanceProfileName = lens _artipInstanceProfileName (\ s a -> s{_artipInstanceProfileName = a})---- | The name of the role to add. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--artipRoleName :: Lens' AddRoleToInstanceProfile Text-artipRoleName = lens _artipRoleName (\ s a -> s{_artipRoleName = a})--instance AWSRequest AddRoleToInstanceProfile where- type Rs AddRoleToInstanceProfile =- AddRoleToInstanceProfileResponse- request = postQuery iam- response- = receiveNull AddRoleToInstanceProfileResponse'--instance Hashable AddRoleToInstanceProfile where--instance NFData AddRoleToInstanceProfile where--instance ToHeaders AddRoleToInstanceProfile where- toHeaders = const mempty--instance ToPath AddRoleToInstanceProfile where- toPath = const "/"--instance ToQuery AddRoleToInstanceProfile where- toQuery AddRoleToInstanceProfile'{..}- = mconcat- ["Action" =:- ("AddRoleToInstanceProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "InstanceProfileName" =: _artipInstanceProfileName,- "RoleName" =: _artipRoleName]---- | /See:/ 'addRoleToInstanceProfileResponse' smart constructor.-data AddRoleToInstanceProfileResponse =- AddRoleToInstanceProfileResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AddRoleToInstanceProfileResponse' with the minimum fields required to make a request.----addRoleToInstanceProfileResponse- :: AddRoleToInstanceProfileResponse-addRoleToInstanceProfileResponse = AddRoleToInstanceProfileResponse'---instance NFData AddRoleToInstanceProfileResponse- where
− gen/Network/AWS/IAM/AddUserToGroup.hs
@@ -1,111 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.AddUserToGroup--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Adds the specified user to the specified group.-------module Network.AWS.IAM.AddUserToGroup- (- -- * Creating a Request- addUserToGroup- , AddUserToGroup- -- * Request Lenses- , autgGroupName- , autgUserName-- -- * Destructuring the Response- , addUserToGroupResponse- , AddUserToGroupResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'addUserToGroup' smart constructor.-data AddUserToGroup = AddUserToGroup'- { _autgGroupName :: !Text- , _autgUserName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AddUserToGroup' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'autgGroupName' - The name of the group to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'autgUserName' - The name of the user to add. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--addUserToGroup- :: Text -- ^ 'autgGroupName'- -> Text -- ^ 'autgUserName'- -> AddUserToGroup-addUserToGroup pGroupName_ pUserName_ =- AddUserToGroup' {_autgGroupName = pGroupName_, _autgUserName = pUserName_}----- | The name of the group to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--autgGroupName :: Lens' AddUserToGroup Text-autgGroupName = lens _autgGroupName (\ s a -> s{_autgGroupName = a})---- | The name of the user to add. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--autgUserName :: Lens' AddUserToGroup Text-autgUserName = lens _autgUserName (\ s a -> s{_autgUserName = a})--instance AWSRequest AddUserToGroup where- type Rs AddUserToGroup = AddUserToGroupResponse- request = postQuery iam- response = receiveNull AddUserToGroupResponse'--instance Hashable AddUserToGroup where--instance NFData AddUserToGroup where--instance ToHeaders AddUserToGroup where- toHeaders = const mempty--instance ToPath AddUserToGroup where- toPath = const "/"--instance ToQuery AddUserToGroup where- toQuery AddUserToGroup'{..}- = mconcat- ["Action" =: ("AddUserToGroup" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "GroupName" =: _autgGroupName,- "UserName" =: _autgUserName]---- | /See:/ 'addUserToGroupResponse' smart constructor.-data AddUserToGroupResponse =- AddUserToGroupResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AddUserToGroupResponse' with the minimum fields required to make a request.----addUserToGroupResponse- :: AddUserToGroupResponse-addUserToGroupResponse = AddUserToGroupResponse'---instance NFData AddUserToGroupResponse where
− gen/Network/AWS/IAM/AttachGroupPolicy.hs
@@ -1,115 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.AttachGroupPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Attaches the specified managed policy to the specified IAM group.--------- You use this API to attach a managed policy to a group. To embed an inline policy in a group, use 'PutGroupPolicy' .------ For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.AttachGroupPolicy- (- -- * Creating a Request- attachGroupPolicy- , AttachGroupPolicy- -- * Request Lenses- , agpGroupName- , agpPolicyARN-- -- * Destructuring the Response- , attachGroupPolicyResponse- , AttachGroupPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'attachGroupPolicy' smart constructor.-data AttachGroupPolicy = AttachGroupPolicy'- { _agpGroupName :: !Text- , _agpPolicyARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AttachGroupPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'agpGroupName' - The name (friendly name, not ARN) of the group to attach the policy to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'agpPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy you want to attach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-attachGroupPolicy- :: Text -- ^ 'agpGroupName'- -> Text -- ^ 'agpPolicyARN'- -> AttachGroupPolicy-attachGroupPolicy pGroupName_ pPolicyARN_ =- AttachGroupPolicy' {_agpGroupName = pGroupName_, _agpPolicyARN = pPolicyARN_}----- | The name (friendly name, not ARN) of the group to attach the policy to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--agpGroupName :: Lens' AttachGroupPolicy Text-agpGroupName = lens _agpGroupName (\ s a -> s{_agpGroupName = a})---- | The Amazon Resource Name (ARN) of the IAM policy you want to attach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-agpPolicyARN :: Lens' AttachGroupPolicy Text-agpPolicyARN = lens _agpPolicyARN (\ s a -> s{_agpPolicyARN = a})--instance AWSRequest AttachGroupPolicy where- type Rs AttachGroupPolicy = AttachGroupPolicyResponse- request = postQuery iam- response = receiveNull AttachGroupPolicyResponse'--instance Hashable AttachGroupPolicy where--instance NFData AttachGroupPolicy where--instance ToHeaders AttachGroupPolicy where- toHeaders = const mempty--instance ToPath AttachGroupPolicy where- toPath = const "/"--instance ToQuery AttachGroupPolicy where- toQuery AttachGroupPolicy'{..}- = mconcat- ["Action" =: ("AttachGroupPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "GroupName" =: _agpGroupName,- "PolicyArn" =: _agpPolicyARN]---- | /See:/ 'attachGroupPolicyResponse' smart constructor.-data AttachGroupPolicyResponse =- AttachGroupPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AttachGroupPolicyResponse' with the minimum fields required to make a request.----attachGroupPolicyResponse- :: AttachGroupPolicyResponse-attachGroupPolicyResponse = AttachGroupPolicyResponse'---instance NFData AttachGroupPolicyResponse where
− gen/Network/AWS/IAM/AttachRolePolicy.hs
@@ -1,113 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.AttachRolePolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Attaches the specified managed policy to the specified IAM role. When you attach a managed policy to a role, the managed policy becomes part of the role's permission (access) policy.--------- Use this API to attach a /managed/ policy to a role. To embed an inline policy in a role, use 'PutRolePolicy' . For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.AttachRolePolicy- (- -- * Creating a Request- attachRolePolicy- , AttachRolePolicy- -- * Request Lenses- , arpRoleName- , arpPolicyARN-- -- * Destructuring the Response- , attachRolePolicyResponse- , AttachRolePolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'attachRolePolicy' smart constructor.-data AttachRolePolicy = AttachRolePolicy'- { _arpRoleName :: !Text- , _arpPolicyARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AttachRolePolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'arpRoleName' - The name (friendly name, not ARN) of the role to attach the policy to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'arpPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy you want to attach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-attachRolePolicy- :: Text -- ^ 'arpRoleName'- -> Text -- ^ 'arpPolicyARN'- -> AttachRolePolicy-attachRolePolicy pRoleName_ pPolicyARN_ =- AttachRolePolicy' {_arpRoleName = pRoleName_, _arpPolicyARN = pPolicyARN_}----- | The name (friendly name, not ARN) of the role to attach the policy to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--arpRoleName :: Lens' AttachRolePolicy Text-arpRoleName = lens _arpRoleName (\ s a -> s{_arpRoleName = a})---- | The Amazon Resource Name (ARN) of the IAM policy you want to attach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-arpPolicyARN :: Lens' AttachRolePolicy Text-arpPolicyARN = lens _arpPolicyARN (\ s a -> s{_arpPolicyARN = a})--instance AWSRequest AttachRolePolicy where- type Rs AttachRolePolicy = AttachRolePolicyResponse- request = postQuery iam- response = receiveNull AttachRolePolicyResponse'--instance Hashable AttachRolePolicy where--instance NFData AttachRolePolicy where--instance ToHeaders AttachRolePolicy where- toHeaders = const mempty--instance ToPath AttachRolePolicy where- toPath = const "/"--instance ToQuery AttachRolePolicy where- toQuery AttachRolePolicy'{..}- = mconcat- ["Action" =: ("AttachRolePolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _arpRoleName,- "PolicyArn" =: _arpPolicyARN]---- | /See:/ 'attachRolePolicyResponse' smart constructor.-data AttachRolePolicyResponse =- AttachRolePolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AttachRolePolicyResponse' with the minimum fields required to make a request.----attachRolePolicyResponse- :: AttachRolePolicyResponse-attachRolePolicyResponse = AttachRolePolicyResponse'---instance NFData AttachRolePolicyResponse where
− gen/Network/AWS/IAM/AttachUserPolicy.hs
@@ -1,115 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.AttachUserPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Attaches the specified managed policy to the specified user.--------- You use this API to attach a /managed/ policy to a user. To embed an inline policy in a user, use 'PutUserPolicy' .------ For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.AttachUserPolicy- (- -- * Creating a Request- attachUserPolicy- , AttachUserPolicy- -- * Request Lenses- , aupUserName- , aupPolicyARN-- -- * Destructuring the Response- , attachUserPolicyResponse- , AttachUserPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'attachUserPolicy' smart constructor.-data AttachUserPolicy = AttachUserPolicy'- { _aupUserName :: !Text- , _aupPolicyARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AttachUserPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aupUserName' - The name (friendly name, not ARN) of the IAM user to attach the policy to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'aupPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy you want to attach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-attachUserPolicy- :: Text -- ^ 'aupUserName'- -> Text -- ^ 'aupPolicyARN'- -> AttachUserPolicy-attachUserPolicy pUserName_ pPolicyARN_ =- AttachUserPolicy' {_aupUserName = pUserName_, _aupPolicyARN = pPolicyARN_}----- | The name (friendly name, not ARN) of the IAM user to attach the policy to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--aupUserName :: Lens' AttachUserPolicy Text-aupUserName = lens _aupUserName (\ s a -> s{_aupUserName = a})---- | The Amazon Resource Name (ARN) of the IAM policy you want to attach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-aupPolicyARN :: Lens' AttachUserPolicy Text-aupPolicyARN = lens _aupPolicyARN (\ s a -> s{_aupPolicyARN = a})--instance AWSRequest AttachUserPolicy where- type Rs AttachUserPolicy = AttachUserPolicyResponse- request = postQuery iam- response = receiveNull AttachUserPolicyResponse'--instance Hashable AttachUserPolicy where--instance NFData AttachUserPolicy where--instance ToHeaders AttachUserPolicy where- toHeaders = const mempty--instance ToPath AttachUserPolicy where- toPath = const "/"--instance ToQuery AttachUserPolicy where- toQuery AttachUserPolicy'{..}- = mconcat- ["Action" =: ("AttachUserPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _aupUserName,- "PolicyArn" =: _aupPolicyARN]---- | /See:/ 'attachUserPolicyResponse' smart constructor.-data AttachUserPolicyResponse =- AttachUserPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AttachUserPolicyResponse' with the minimum fields required to make a request.----attachUserPolicyResponse- :: AttachUserPolicyResponse-attachUserPolicyResponse = AttachUserPolicyResponse'---instance NFData AttachUserPolicyResponse where
− gen/Network/AWS/IAM/ChangePassword.hs
@@ -1,116 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ChangePassword--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Changes the password of the IAM user who is calling this operation. The AWS account root user password is not affected by this operation.--------- To change the password for a different user, see 'UpdateLoginProfile' . For more information about modifying passwords, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html Managing Passwords> in the /IAM User Guide/ .----module Network.AWS.IAM.ChangePassword- (- -- * Creating a Request- changePassword- , ChangePassword- -- * Request Lenses- , cpOldPassword- , cpNewPassword-- -- * Destructuring the Response- , changePasswordResponse- , ChangePasswordResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'changePassword' smart constructor.-data ChangePassword = ChangePassword'- { _cpOldPassword :: !(Sensitive Text)- , _cpNewPassword :: !(Sensitive Text)- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'ChangePassword' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cpOldPassword' - The IAM user's current password.------ * 'cpNewPassword' - The new password. The new password must conform to the AWS account's password policy, if one exists. The <http://wikipedia.org/wiki/regex regex pattern> that is used to validate this parameter is a string of characters. That string can include almost any printable ASCII character from the space (\u0020) through the end of the ASCII character range (\u00FF). You can also include the tab (\u0009), line feed (\u000A), and carriage return (\u000D) characters. Any of these characters are valid in a password. However, many tools, such as the AWS Management Console, might restrict the ability to type certain characters because they have special meaning within that tool.-changePassword- :: Text -- ^ 'cpOldPassword'- -> Text -- ^ 'cpNewPassword'- -> ChangePassword-changePassword pOldPassword_ pNewPassword_ =- ChangePassword'- { _cpOldPassword = _Sensitive # pOldPassword_- , _cpNewPassword = _Sensitive # pNewPassword_- }----- | The IAM user's current password.-cpOldPassword :: Lens' ChangePassword Text-cpOldPassword = lens _cpOldPassword (\ s a -> s{_cpOldPassword = a}) . _Sensitive---- | The new password. The new password must conform to the AWS account's password policy, if one exists. The <http://wikipedia.org/wiki/regex regex pattern> that is used to validate this parameter is a string of characters. That string can include almost any printable ASCII character from the space (\u0020) through the end of the ASCII character range (\u00FF). You can also include the tab (\u0009), line feed (\u000A), and carriage return (\u000D) characters. Any of these characters are valid in a password. However, many tools, such as the AWS Management Console, might restrict the ability to type certain characters because they have special meaning within that tool.-cpNewPassword :: Lens' ChangePassword Text-cpNewPassword = lens _cpNewPassword (\ s a -> s{_cpNewPassword = a}) . _Sensitive--instance AWSRequest ChangePassword where- type Rs ChangePassword = ChangePasswordResponse- request = postQuery iam- response = receiveNull ChangePasswordResponse'--instance Hashable ChangePassword where--instance NFData ChangePassword where--instance ToHeaders ChangePassword where- toHeaders = const mempty--instance ToPath ChangePassword where- toPath = const "/"--instance ToQuery ChangePassword where- toQuery ChangePassword'{..}- = mconcat- ["Action" =: ("ChangePassword" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "OldPassword" =: _cpOldPassword,- "NewPassword" =: _cpNewPassword]---- | /See:/ 'changePasswordResponse' smart constructor.-data ChangePasswordResponse =- ChangePasswordResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ChangePasswordResponse' with the minimum fields required to make a request.----changePasswordResponse- :: ChangePasswordResponse-changePasswordResponse = ChangePasswordResponse'---instance NFData ChangePasswordResponse where
− gen/Network/AWS/IAM/CreateAccessKey.hs
@@ -1,134 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateAccessKey--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a new AWS secret access key and corresponding AWS access key ID for the specified user. The default status for new keys is @Active@ .--------- If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request. Because this operation works for access keys under the AWS account, you can use this operation to manage AWS account root user credentials. This is true even if the AWS account has no associated users.------ For information about limits on the number of keys you can create, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .------ /Important:/ To ensure the security of your AWS account, the secret access key is accessible only during key and user creation. You must save the key (for example, in a text file) if you want to be able to access it again. If a secret key is lost, you can delete the access keys for the associated user and then create new keys.----module Network.AWS.IAM.CreateAccessKey- (- -- * Creating a Request- createAccessKey- , CreateAccessKey- -- * Request Lenses- , cakUserName-- -- * Destructuring the Response- , createAccessKeyResponse- , CreateAccessKeyResponse- -- * Response Lenses- , cakrsResponseStatus- , cakrsAccessKey- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createAccessKey' smart constructor.-newtype CreateAccessKey = CreateAccessKey'- { _cakUserName :: Maybe Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateAccessKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cakUserName' - The name of the IAM user that the new key will belong to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--createAccessKey- :: CreateAccessKey-createAccessKey = CreateAccessKey' {_cakUserName = Nothing}----- | The name of the IAM user that the new key will belong to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--cakUserName :: Lens' CreateAccessKey (Maybe Text)-cakUserName = lens _cakUserName (\ s a -> s{_cakUserName = a})--instance AWSRequest CreateAccessKey where- type Rs CreateAccessKey = CreateAccessKeyResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateAccessKeyResult"- (\ s h x ->- CreateAccessKeyResponse' <$>- (pure (fromEnum s)) <*> (x .@ "AccessKey"))--instance Hashable CreateAccessKey where--instance NFData CreateAccessKey where--instance ToHeaders CreateAccessKey where- toHeaders = const mempty--instance ToPath CreateAccessKey where- toPath = const "/"--instance ToQuery CreateAccessKey where- toQuery CreateAccessKey'{..}- = mconcat- ["Action" =: ("CreateAccessKey" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _cakUserName]---- | Contains the response to a successful 'CreateAccessKey' request.------------ /See:/ 'createAccessKeyResponse' smart constructor.-data CreateAccessKeyResponse = CreateAccessKeyResponse'- { _cakrsResponseStatus :: !Int- , _cakrsAccessKey :: !AccessKeyInfo- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateAccessKeyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cakrsResponseStatus' - -- | The response status code.------ * 'cakrsAccessKey' - A structure with details about the access key.-createAccessKeyResponse- :: Int -- ^ 'cakrsResponseStatus'- -> AccessKeyInfo -- ^ 'cakrsAccessKey'- -> CreateAccessKeyResponse-createAccessKeyResponse pResponseStatus_ pAccessKey_ =- CreateAccessKeyResponse'- {_cakrsResponseStatus = pResponseStatus_, _cakrsAccessKey = pAccessKey_}----- | -- | The response status code.-cakrsResponseStatus :: Lens' CreateAccessKeyResponse Int-cakrsResponseStatus = lens _cakrsResponseStatus (\ s a -> s{_cakrsResponseStatus = a})---- | A structure with details about the access key.-cakrsAccessKey :: Lens' CreateAccessKeyResponse AccessKeyInfo-cakrsAccessKey = lens _cakrsAccessKey (\ s a -> s{_cakrsAccessKey = a})--instance NFData CreateAccessKeyResponse where
− gen/Network/AWS/IAM/CreateAccountAlias.hs
@@ -1,102 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateAccountAlias--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates an alias for your AWS account. For information about using an AWS account alias, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html Using an Alias for Your AWS Account ID> in the /IAM User Guide/ .-------module Network.AWS.IAM.CreateAccountAlias- (- -- * Creating a Request- createAccountAlias- , CreateAccountAlias- -- * Request Lenses- , caaAccountAlias-- -- * Destructuring the Response- , createAccountAliasResponse- , CreateAccountAliasResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createAccountAlias' smart constructor.-newtype CreateAccountAlias = CreateAccountAlias'- { _caaAccountAlias :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateAccountAlias' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'caaAccountAlias' - The account alias to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have two dashes in a row.-createAccountAlias- :: Text -- ^ 'caaAccountAlias'- -> CreateAccountAlias-createAccountAlias pAccountAlias_ =- CreateAccountAlias' {_caaAccountAlias = pAccountAlias_}----- | The account alias to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have two dashes in a row.-caaAccountAlias :: Lens' CreateAccountAlias Text-caaAccountAlias = lens _caaAccountAlias (\ s a -> s{_caaAccountAlias = a})--instance AWSRequest CreateAccountAlias where- type Rs CreateAccountAlias =- CreateAccountAliasResponse- request = postQuery iam- response = receiveNull CreateAccountAliasResponse'--instance Hashable CreateAccountAlias where--instance NFData CreateAccountAlias where--instance ToHeaders CreateAccountAlias where- toHeaders = const mempty--instance ToPath CreateAccountAlias where- toPath = const "/"--instance ToQuery CreateAccountAlias where- toQuery CreateAccountAlias'{..}- = mconcat- ["Action" =: ("CreateAccountAlias" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "AccountAlias" =: _caaAccountAlias]---- | /See:/ 'createAccountAliasResponse' smart constructor.-data CreateAccountAliasResponse =- CreateAccountAliasResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateAccountAliasResponse' with the minimum fields required to make a request.----createAccountAliasResponse- :: CreateAccountAliasResponse-createAccountAliasResponse = CreateAccountAliasResponse'---instance NFData CreateAccountAliasResponse where
− gen/Network/AWS/IAM/CreateGroup.hs
@@ -1,140 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateGroup--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a new group.--------- For information about the number of groups you can create, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .----module Network.AWS.IAM.CreateGroup- (- -- * Creating a Request- createGroup- , CreateGroup- -- * Request Lenses- , cgPath- , cgGroupName-- -- * Destructuring the Response- , createGroupResponse- , CreateGroupResponse- -- * Response Lenses- , cgrsResponseStatus- , cgrsGroup- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createGroup' smart constructor.-data CreateGroup = CreateGroup'- { _cgPath :: !(Maybe Text)- , _cgGroupName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateGroup' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cgPath' - The path to the group. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'cgGroupName' - The name of the group to create. Do not include the path in this value. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-. The group name must be unique within the account. Group names are not distinguished by case. For example, you cannot create groups named both "ADMINS" and "admins".-createGroup- :: Text -- ^ 'cgGroupName'- -> CreateGroup-createGroup pGroupName_ =- CreateGroup' {_cgPath = Nothing, _cgGroupName = pGroupName_}----- | The path to the group. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-cgPath :: Lens' CreateGroup (Maybe Text)-cgPath = lens _cgPath (\ s a -> s{_cgPath = a})---- | The name of the group to create. Do not include the path in this value. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-. The group name must be unique within the account. Group names are not distinguished by case. For example, you cannot create groups named both "ADMINS" and "admins".-cgGroupName :: Lens' CreateGroup Text-cgGroupName = lens _cgGroupName (\ s a -> s{_cgGroupName = a})--instance AWSRequest CreateGroup where- type Rs CreateGroup = CreateGroupResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateGroupResult"- (\ s h x ->- CreateGroupResponse' <$>- (pure (fromEnum s)) <*> (x .@ "Group"))--instance Hashable CreateGroup where--instance NFData CreateGroup where--instance ToHeaders CreateGroup where- toHeaders = const mempty--instance ToPath CreateGroup where- toPath = const "/"--instance ToQuery CreateGroup where- toQuery CreateGroup'{..}- = mconcat- ["Action" =: ("CreateGroup" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Path" =: _cgPath, "GroupName" =: _cgGroupName]---- | Contains the response to a successful 'CreateGroup' request.------------ /See:/ 'createGroupResponse' smart constructor.-data CreateGroupResponse = CreateGroupResponse'- { _cgrsResponseStatus :: !Int- , _cgrsGroup :: !Group- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateGroupResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cgrsResponseStatus' - -- | The response status code.------ * 'cgrsGroup' - A structure containing details about the new group.-createGroupResponse- :: Int -- ^ 'cgrsResponseStatus'- -> Group -- ^ 'cgrsGroup'- -> CreateGroupResponse-createGroupResponse pResponseStatus_ pGroup_ =- CreateGroupResponse'- {_cgrsResponseStatus = pResponseStatus_, _cgrsGroup = pGroup_}----- | -- | The response status code.-cgrsResponseStatus :: Lens' CreateGroupResponse Int-cgrsResponseStatus = lens _cgrsResponseStatus (\ s a -> s{_cgrsResponseStatus = a})---- | A structure containing details about the new group.-cgrsGroup :: Lens' CreateGroupResponse Group-cgrsGroup = lens _cgrsGroup (\ s a -> s{_cgrsGroup = a})--instance NFData CreateGroupResponse where
− gen/Network/AWS/IAM/CreateInstanceProfile.hs
@@ -1,145 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateInstanceProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a new instance profile. For information about instance profiles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About Instance Profiles> .--------- For information about the number of instance profiles you can create, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .----module Network.AWS.IAM.CreateInstanceProfile- (- -- * Creating a Request- createInstanceProfile- , CreateInstanceProfile- -- * Request Lenses- , cipPath- , cipInstanceProfileName-- -- * Destructuring the Response- , createInstanceProfileResponse- , CreateInstanceProfileResponse- -- * Response Lenses- , ciprsResponseStatus- , ciprsInstanceProfile- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createInstanceProfile' smart constructor.-data CreateInstanceProfile = CreateInstanceProfile'- { _cipPath :: !(Maybe Text)- , _cipInstanceProfileName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateInstanceProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cipPath' - The path to the instance profile. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'cipInstanceProfileName' - The name of the instance profile to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--createInstanceProfile- :: Text -- ^ 'cipInstanceProfileName'- -> CreateInstanceProfile-createInstanceProfile pInstanceProfileName_ =- CreateInstanceProfile'- {_cipPath = Nothing, _cipInstanceProfileName = pInstanceProfileName_}----- | The path to the instance profile. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-cipPath :: Lens' CreateInstanceProfile (Maybe Text)-cipPath = lens _cipPath (\ s a -> s{_cipPath = a})---- | The name of the instance profile to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--cipInstanceProfileName :: Lens' CreateInstanceProfile Text-cipInstanceProfileName = lens _cipInstanceProfileName (\ s a -> s{_cipInstanceProfileName = a})--instance AWSRequest CreateInstanceProfile where- type Rs CreateInstanceProfile =- CreateInstanceProfileResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateInstanceProfileResult"- (\ s h x ->- CreateInstanceProfileResponse' <$>- (pure (fromEnum s)) <*> (x .@ "InstanceProfile"))--instance Hashable CreateInstanceProfile where--instance NFData CreateInstanceProfile where--instance ToHeaders CreateInstanceProfile where- toHeaders = const mempty--instance ToPath CreateInstanceProfile where- toPath = const "/"--instance ToQuery CreateInstanceProfile where- toQuery CreateInstanceProfile'{..}- = mconcat- ["Action" =: ("CreateInstanceProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Path" =: _cipPath,- "InstanceProfileName" =: _cipInstanceProfileName]---- | Contains the response to a successful 'CreateInstanceProfile' request.------------ /See:/ 'createInstanceProfileResponse' smart constructor.-data CreateInstanceProfileResponse = CreateInstanceProfileResponse'- { _ciprsResponseStatus :: !Int- , _ciprsInstanceProfile :: !InstanceProfile- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateInstanceProfileResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ciprsResponseStatus' - -- | The response status code.------ * 'ciprsInstanceProfile' - A structure containing details about the new instance profile.-createInstanceProfileResponse- :: Int -- ^ 'ciprsResponseStatus'- -> InstanceProfile -- ^ 'ciprsInstanceProfile'- -> CreateInstanceProfileResponse-createInstanceProfileResponse pResponseStatus_ pInstanceProfile_ =- CreateInstanceProfileResponse'- { _ciprsResponseStatus = pResponseStatus_- , _ciprsInstanceProfile = pInstanceProfile_- }----- | -- | The response status code.-ciprsResponseStatus :: Lens' CreateInstanceProfileResponse Int-ciprsResponseStatus = lens _ciprsResponseStatus (\ s a -> s{_ciprsResponseStatus = a})---- | A structure containing details about the new instance profile.-ciprsInstanceProfile :: Lens' CreateInstanceProfileResponse InstanceProfile-ciprsInstanceProfile = lens _ciprsInstanceProfile (\ s a -> s{_ciprsInstanceProfile = a})--instance NFData CreateInstanceProfileResponse where
− gen/Network/AWS/IAM/CreateLoginProfile.hs
@@ -1,156 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateLoginProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a password for the specified user, giving the user the ability to access AWS services through the AWS Management Console. For more information about managing passwords, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html Managing Passwords> in the /IAM User Guide/ .-------module Network.AWS.IAM.CreateLoginProfile- (- -- * Creating a Request- createLoginProfile- , CreateLoginProfile- -- * Request Lenses- , clpPasswordResetRequired- , clpUserName- , clpPassword-- -- * Destructuring the Response- , createLoginProfileResponse- , CreateLoginProfileResponse- -- * Response Lenses- , clprsResponseStatus- , clprsLoginProfile- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createLoginProfile' smart constructor.-data CreateLoginProfile = CreateLoginProfile'- { _clpPasswordResetRequired :: !(Maybe Bool)- , _clpUserName :: !Text- , _clpPassword :: !(Sensitive Text)- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateLoginProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'clpPasswordResetRequired' - Specifies whether the user is required to set a new password on next sign-in.------ * 'clpUserName' - The name of the IAM user to create a password for. The user must already exist. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'clpPassword' - The new password for the user. The <http://wikipedia.org/wiki/regex regex pattern> that is used to validate this parameter is a string of characters. That string can include almost any printable ASCII character from the space (\u0020) through the end of the ASCII character range (\u00FF). You can also include the tab (\u0009), line feed (\u000A), and carriage return (\u000D) characters. Any of these characters are valid in a password. However, many tools, such as the AWS Management Console, might restrict the ability to type certain characters because they have special meaning within that tool.-createLoginProfile- :: Text -- ^ 'clpUserName'- -> Text -- ^ 'clpPassword'- -> CreateLoginProfile-createLoginProfile pUserName_ pPassword_ =- CreateLoginProfile'- { _clpPasswordResetRequired = Nothing- , _clpUserName = pUserName_- , _clpPassword = _Sensitive # pPassword_- }----- | Specifies whether the user is required to set a new password on next sign-in.-clpPasswordResetRequired :: Lens' CreateLoginProfile (Maybe Bool)-clpPasswordResetRequired = lens _clpPasswordResetRequired (\ s a -> s{_clpPasswordResetRequired = a})---- | The name of the IAM user to create a password for. The user must already exist. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--clpUserName :: Lens' CreateLoginProfile Text-clpUserName = lens _clpUserName (\ s a -> s{_clpUserName = a})---- | The new password for the user. The <http://wikipedia.org/wiki/regex regex pattern> that is used to validate this parameter is a string of characters. That string can include almost any printable ASCII character from the space (\u0020) through the end of the ASCII character range (\u00FF). You can also include the tab (\u0009), line feed (\u000A), and carriage return (\u000D) characters. Any of these characters are valid in a password. However, many tools, such as the AWS Management Console, might restrict the ability to type certain characters because they have special meaning within that tool.-clpPassword :: Lens' CreateLoginProfile Text-clpPassword = lens _clpPassword (\ s a -> s{_clpPassword = a}) . _Sensitive--instance AWSRequest CreateLoginProfile where- type Rs CreateLoginProfile =- CreateLoginProfileResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateLoginProfileResult"- (\ s h x ->- CreateLoginProfileResponse' <$>- (pure (fromEnum s)) <*> (x .@ "LoginProfile"))--instance Hashable CreateLoginProfile where--instance NFData CreateLoginProfile where--instance ToHeaders CreateLoginProfile where- toHeaders = const mempty--instance ToPath CreateLoginProfile where- toPath = const "/"--instance ToQuery CreateLoginProfile where- toQuery CreateLoginProfile'{..}- = mconcat- ["Action" =: ("CreateLoginProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PasswordResetRequired" =: _clpPasswordResetRequired,- "UserName" =: _clpUserName,- "Password" =: _clpPassword]---- | Contains the response to a successful 'CreateLoginProfile' request.------------ /See:/ 'createLoginProfileResponse' smart constructor.-data CreateLoginProfileResponse = CreateLoginProfileResponse'- { _clprsResponseStatus :: !Int- , _clprsLoginProfile :: !LoginProfile- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateLoginProfileResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'clprsResponseStatus' - -- | The response status code.------ * 'clprsLoginProfile' - A structure containing the user name and password create date.-createLoginProfileResponse- :: Int -- ^ 'clprsResponseStatus'- -> LoginProfile -- ^ 'clprsLoginProfile'- -> CreateLoginProfileResponse-createLoginProfileResponse pResponseStatus_ pLoginProfile_ =- CreateLoginProfileResponse'- { _clprsResponseStatus = pResponseStatus_- , _clprsLoginProfile = pLoginProfile_- }----- | -- | The response status code.-clprsResponseStatus :: Lens' CreateLoginProfileResponse Int-clprsResponseStatus = lens _clprsResponseStatus (\ s a -> s{_clprsResponseStatus = a})---- | A structure containing the user name and password create date.-clprsLoginProfile :: Lens' CreateLoginProfileResponse LoginProfile-clprsLoginProfile = lens _clprsLoginProfile (\ s a -> s{_clprsLoginProfile = a})--instance NFData CreateLoginProfileResponse where
− gen/Network/AWS/IAM/CreateOpenIdConnectProvider.hs
@@ -1,175 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateOpenIdConnectProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates an IAM entity to describe an identity provider (IdP) that supports <http://openid.net/connect/ OpenID Connect (OIDC)> .--------- The OIDC provider that you create with this operation can be used as a principal in a role's trust policy. Such a policy establishes a trust relationship between AWS and the OIDC provider.------ When you create the IAM OIDC provider, you specify the following:------ * The URL of the OIDC identity provider (IdP) to trust------ * A list of client IDs (also known as audiences) that identify the application or applications that are allowed to authenticate using the OIDC provider------ * A list of thumbprints of the server certificate(s) that the IdP uses.------------ You get all of this information from the OIDC IdP that you want to use to access AWS.----module Network.AWS.IAM.CreateOpenIdConnectProvider- (- -- * Creating a Request- createOpenIdConnectProvider- , CreateOpenIdConnectProvider- -- * Request Lenses- , coicpClientIdList- , coicpURL- , coicpThumbprintList-- -- * Destructuring the Response- , createOpenIdConnectProviderResponse- , CreateOpenIdConnectProviderResponse- -- * Response Lenses- , coicprsOpenIdConnectProviderARN- , coicprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createOpenIdConnectProvider' smart constructor.-data CreateOpenIdConnectProvider = CreateOpenIdConnectProvider'- { _coicpClientIdList :: !(Maybe [Text])- , _coicpURL :: !Text- , _coicpThumbprintList :: ![Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateOpenIdConnectProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'coicpClientIdList' - A list of client IDs (also known as audiences). When a mobile or web app registers with an OpenID Connect provider, they establish a value that identifies the application. (This is the value that's sent as the @client_id@ parameter on OAuth requests.) You can register multiple client IDs with the same provider. For example, you might have multiple applications that use the same OIDC provider. You cannot register more than 100 client IDs with a single IAM OIDC provider. There is no defined format for a client ID. The @CreateOpenIDConnectProviderRequest@ operation accepts client IDs up to 255 characters long.------ * 'coicpURL' - The URL of the identity provider. The URL must begin with @https://@ and should correspond to the @iss@ claim in the provider's OpenID Connect ID tokens. Per the OIDC standard, path components are allowed but query parameters are not. Typically the URL consists of only a hostname, like @https://server.example.org@ or @https://example.com@ . You cannot register the same provider multiple times in a single AWS account. If you try to submit a URL that has already been used for an OpenID Connect provider in the AWS account, you will get an error.------ * 'coicpThumbprintList' - A list of server certificate thumbprints for the OpenID Connect (OIDC) identity provider's server certificates. Typically this list includes only one entry. However, IAM lets you have up to five thumbprints for an OIDC provider. This lets you maintain multiple thumbprints if the identity provider is rotating certificates. The server certificate thumbprint is the hex-encoded SHA-1 hash value of the X.509 certificate used by the domain where the OpenID Connect provider makes its keys available. It is always a 40-character string. You must provide at least one thumbprint when creating an IAM OIDC provider. For example, assume that the OIDC provider is @server.example.com@ and the provider stores its keys at https://keys.server.example.com/openid-connect. In that case, the thumbprint string would be the hex-encoded SHA-1 hash value of the certificate used by https://keys.server.example.com. For more information about obtaining the OIDC provider's thumbprint, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html Obtaining the Thumbprint for an OpenID Connect Provider> in the /IAM User Guide/ .-createOpenIdConnectProvider- :: Text -- ^ 'coicpURL'- -> CreateOpenIdConnectProvider-createOpenIdConnectProvider pURL_ =- CreateOpenIdConnectProvider'- { _coicpClientIdList = Nothing- , _coicpURL = pURL_- , _coicpThumbprintList = mempty- }----- | A list of client IDs (also known as audiences). When a mobile or web app registers with an OpenID Connect provider, they establish a value that identifies the application. (This is the value that's sent as the @client_id@ parameter on OAuth requests.) You can register multiple client IDs with the same provider. For example, you might have multiple applications that use the same OIDC provider. You cannot register more than 100 client IDs with a single IAM OIDC provider. There is no defined format for a client ID. The @CreateOpenIDConnectProviderRequest@ operation accepts client IDs up to 255 characters long.-coicpClientIdList :: Lens' CreateOpenIdConnectProvider [Text]-coicpClientIdList = lens _coicpClientIdList (\ s a -> s{_coicpClientIdList = a}) . _Default . _Coerce---- | The URL of the identity provider. The URL must begin with @https://@ and should correspond to the @iss@ claim in the provider's OpenID Connect ID tokens. Per the OIDC standard, path components are allowed but query parameters are not. Typically the URL consists of only a hostname, like @https://server.example.org@ or @https://example.com@ . You cannot register the same provider multiple times in a single AWS account. If you try to submit a URL that has already been used for an OpenID Connect provider in the AWS account, you will get an error.-coicpURL :: Lens' CreateOpenIdConnectProvider Text-coicpURL = lens _coicpURL (\ s a -> s{_coicpURL = a})---- | A list of server certificate thumbprints for the OpenID Connect (OIDC) identity provider's server certificates. Typically this list includes only one entry. However, IAM lets you have up to five thumbprints for an OIDC provider. This lets you maintain multiple thumbprints if the identity provider is rotating certificates. The server certificate thumbprint is the hex-encoded SHA-1 hash value of the X.509 certificate used by the domain where the OpenID Connect provider makes its keys available. It is always a 40-character string. You must provide at least one thumbprint when creating an IAM OIDC provider. For example, assume that the OIDC provider is @server.example.com@ and the provider stores its keys at https://keys.server.example.com/openid-connect. In that case, the thumbprint string would be the hex-encoded SHA-1 hash value of the certificate used by https://keys.server.example.com. For more information about obtaining the OIDC provider's thumbprint, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/identity-providers-oidc-obtain-thumbprint.html Obtaining the Thumbprint for an OpenID Connect Provider> in the /IAM User Guide/ .-coicpThumbprintList :: Lens' CreateOpenIdConnectProvider [Text]-coicpThumbprintList = lens _coicpThumbprintList (\ s a -> s{_coicpThumbprintList = a}) . _Coerce--instance AWSRequest CreateOpenIdConnectProvider where- type Rs CreateOpenIdConnectProvider =- CreateOpenIdConnectProviderResponse- request = postQuery iam- response- = receiveXMLWrapper- "CreateOpenIDConnectProviderResult"- (\ s h x ->- CreateOpenIdConnectProviderResponse' <$>- (x .@? "OpenIDConnectProviderArn") <*>- (pure (fromEnum s)))--instance Hashable CreateOpenIdConnectProvider where--instance NFData CreateOpenIdConnectProvider where--instance ToHeaders CreateOpenIdConnectProvider where- toHeaders = const mempty--instance ToPath CreateOpenIdConnectProvider where- toPath = const "/"--instance ToQuery CreateOpenIdConnectProvider where- toQuery CreateOpenIdConnectProvider'{..}- = mconcat- ["Action" =:- ("CreateOpenIDConnectProvider" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "ClientIDList" =:- toQuery- (toQueryList "member" <$> _coicpClientIdList),- "Url" =: _coicpURL,- "ThumbprintList" =:- toQueryList "member" _coicpThumbprintList]---- | Contains the response to a successful 'CreateOpenIDConnectProvider' request.------------ /See:/ 'createOpenIdConnectProviderResponse' smart constructor.-data CreateOpenIdConnectProviderResponse = CreateOpenIdConnectProviderResponse'- { _coicprsOpenIdConnectProviderARN :: !(Maybe Text)- , _coicprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateOpenIdConnectProviderResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'coicprsOpenIdConnectProviderARN' - The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider that is created. For more information, see 'OpenIDConnectProviderListEntry' .------ * 'coicprsResponseStatus' - -- | The response status code.-createOpenIdConnectProviderResponse- :: Int -- ^ 'coicprsResponseStatus'- -> CreateOpenIdConnectProviderResponse-createOpenIdConnectProviderResponse pResponseStatus_ =- CreateOpenIdConnectProviderResponse'- { _coicprsOpenIdConnectProviderARN = Nothing- , _coicprsResponseStatus = pResponseStatus_- }----- | The Amazon Resource Name (ARN) of the new IAM OpenID Connect provider that is created. For more information, see 'OpenIDConnectProviderListEntry' .-coicprsOpenIdConnectProviderARN :: Lens' CreateOpenIdConnectProviderResponse (Maybe Text)-coicprsOpenIdConnectProviderARN = lens _coicprsOpenIdConnectProviderARN (\ s a -> s{_coicprsOpenIdConnectProviderARN = a})---- | -- | The response status code.-coicprsResponseStatus :: Lens' CreateOpenIdConnectProviderResponse Int-coicprsResponseStatus = lens _coicprsResponseStatus (\ s a -> s{_coicprsResponseStatus = a})--instance NFData CreateOpenIdConnectProviderResponse- where
− gen/Network/AWS/IAM/CreatePolicy.hs
@@ -1,165 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreatePolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a new managed policy for your AWS account.--------- This operation creates a policy version with a version identifier of @v1@ and sets v1 as the policy's default version. For more information about policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .------ For more information about managed policies in general, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.CreatePolicy- (- -- * Creating a Request- createPolicy- , CreatePolicy- -- * Request Lenses- , cpPath- , cpDescription- , cpPolicyName- , cpPolicyDocument-- -- * Destructuring the Response- , createPolicyResponse- , CreatePolicyResponse- -- * Response Lenses- , cprsPolicy- , cprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createPolicy' smart constructor.-data CreatePolicy = CreatePolicy'- { _cpPath :: !(Maybe Text)- , _cpDescription :: !(Maybe Text)- , _cpPolicyName :: !Text- , _cpPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreatePolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cpPath' - The path for the policy. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'cpDescription' - A friendly description of the policy. Typically used to store information about the permissions defined in the policy. For example, "Grants access to production DynamoDB tables." The policy description is immutable. After a value is assigned, it cannot be changed.------ * 'cpPolicyName' - The friendly name of the policy. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'cpPolicyDocument' - The JSON policy document that you want to use as the content for the new policy. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-createPolicy- :: Text -- ^ 'cpPolicyName'- -> Text -- ^ 'cpPolicyDocument'- -> CreatePolicy-createPolicy pPolicyName_ pPolicyDocument_ =- CreatePolicy'- { _cpPath = Nothing- , _cpDescription = Nothing- , _cpPolicyName = pPolicyName_- , _cpPolicyDocument = pPolicyDocument_- }----- | The path for the policy. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-cpPath :: Lens' CreatePolicy (Maybe Text)-cpPath = lens _cpPath (\ s a -> s{_cpPath = a})---- | A friendly description of the policy. Typically used to store information about the permissions defined in the policy. For example, "Grants access to production DynamoDB tables." The policy description is immutable. After a value is assigned, it cannot be changed.-cpDescription :: Lens' CreatePolicy (Maybe Text)-cpDescription = lens _cpDescription (\ s a -> s{_cpDescription = a})---- | The friendly name of the policy. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--cpPolicyName :: Lens' CreatePolicy Text-cpPolicyName = lens _cpPolicyName (\ s a -> s{_cpPolicyName = a})---- | The JSON policy document that you want to use as the content for the new policy. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-cpPolicyDocument :: Lens' CreatePolicy Text-cpPolicyDocument = lens _cpPolicyDocument (\ s a -> s{_cpPolicyDocument = a})--instance AWSRequest CreatePolicy where- type Rs CreatePolicy = CreatePolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "CreatePolicyResult"- (\ s h x ->- CreatePolicyResponse' <$>- (x .@? "Policy") <*> (pure (fromEnum s)))--instance Hashable CreatePolicy where--instance NFData CreatePolicy where--instance ToHeaders CreatePolicy where- toHeaders = const mempty--instance ToPath CreatePolicy where- toPath = const "/"--instance ToQuery CreatePolicy where- toQuery CreatePolicy'{..}- = mconcat- ["Action" =: ("CreatePolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Path" =: _cpPath, "Description" =: _cpDescription,- "PolicyName" =: _cpPolicyName,- "PolicyDocument" =: _cpPolicyDocument]---- | Contains the response to a successful 'CreatePolicy' request.------------ /See:/ 'createPolicyResponse' smart constructor.-data CreatePolicyResponse = CreatePolicyResponse'- { _cprsPolicy :: !(Maybe Policy)- , _cprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreatePolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cprsPolicy' - A structure containing details about the new policy.------ * 'cprsResponseStatus' - -- | The response status code.-createPolicyResponse- :: Int -- ^ 'cprsResponseStatus'- -> CreatePolicyResponse-createPolicyResponse pResponseStatus_ =- CreatePolicyResponse'- {_cprsPolicy = Nothing, _cprsResponseStatus = pResponseStatus_}----- | A structure containing details about the new policy.-cprsPolicy :: Lens' CreatePolicyResponse (Maybe Policy)-cprsPolicy = lens _cprsPolicy (\ s a -> s{_cprsPolicy = a})---- | -- | The response status code.-cprsResponseStatus :: Lens' CreatePolicyResponse Int-cprsResponseStatus = lens _cprsResponseStatus (\ s a -> s{_cprsResponseStatus = a})--instance NFData CreatePolicyResponse where
− gen/Network/AWS/IAM/CreatePolicyVersion.hs
@@ -1,157 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreatePolicyVersion--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a new version of the specified managed policy. To update a managed policy, you create a new policy version. A managed policy can have up to five versions. If the policy has five versions, you must delete an existing version using 'DeletePolicyVersion' before you create a new version.--------- Optionally, you can set the new version as the policy's default version. The default version is the version that is in effect for the IAM users, groups, and roles to which the policy is attached.------ For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.CreatePolicyVersion- (- -- * Creating a Request- createPolicyVersion- , CreatePolicyVersion- -- * Request Lenses- , cpvSetAsDefault- , cpvPolicyARN- , cpvPolicyDocument-- -- * Destructuring the Response- , createPolicyVersionResponse- , CreatePolicyVersionResponse- -- * Response Lenses- , cpvrsPolicyVersion- , cpvrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createPolicyVersion' smart constructor.-data CreatePolicyVersion = CreatePolicyVersion'- { _cpvSetAsDefault :: !(Maybe Bool)- , _cpvPolicyARN :: !Text- , _cpvPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreatePolicyVersion' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cpvSetAsDefault' - Specifies whether to set this version as the policy's default version. When this parameter is @true@ , the new policy version becomes the operative version. That is, it becomes the version that is in effect for the IAM users, groups, and roles that the policy is attached to. For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .------ * 'cpvPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy to which you want to add a new version. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'cpvPolicyDocument' - The JSON policy document that you want to use as the content for this new version of the policy. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-createPolicyVersion- :: Text -- ^ 'cpvPolicyARN'- -> Text -- ^ 'cpvPolicyDocument'- -> CreatePolicyVersion-createPolicyVersion pPolicyARN_ pPolicyDocument_ =- CreatePolicyVersion'- { _cpvSetAsDefault = Nothing- , _cpvPolicyARN = pPolicyARN_- , _cpvPolicyDocument = pPolicyDocument_- }----- | Specifies whether to set this version as the policy's default version. When this parameter is @true@ , the new policy version becomes the operative version. That is, it becomes the version that is in effect for the IAM users, groups, and roles that the policy is attached to. For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .-cpvSetAsDefault :: Lens' CreatePolicyVersion (Maybe Bool)-cpvSetAsDefault = lens _cpvSetAsDefault (\ s a -> s{_cpvSetAsDefault = a})---- | The Amazon Resource Name (ARN) of the IAM policy to which you want to add a new version. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-cpvPolicyARN :: Lens' CreatePolicyVersion Text-cpvPolicyARN = lens _cpvPolicyARN (\ s a -> s{_cpvPolicyARN = a})---- | The JSON policy document that you want to use as the content for this new version of the policy. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-cpvPolicyDocument :: Lens' CreatePolicyVersion Text-cpvPolicyDocument = lens _cpvPolicyDocument (\ s a -> s{_cpvPolicyDocument = a})--instance AWSRequest CreatePolicyVersion where- type Rs CreatePolicyVersion =- CreatePolicyVersionResponse- request = postQuery iam- response- = receiveXMLWrapper "CreatePolicyVersionResult"- (\ s h x ->- CreatePolicyVersionResponse' <$>- (x .@? "PolicyVersion") <*> (pure (fromEnum s)))--instance Hashable CreatePolicyVersion where--instance NFData CreatePolicyVersion where--instance ToHeaders CreatePolicyVersion where- toHeaders = const mempty--instance ToPath CreatePolicyVersion where- toPath = const "/"--instance ToQuery CreatePolicyVersion where- toQuery CreatePolicyVersion'{..}- = mconcat- ["Action" =: ("CreatePolicyVersion" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "SetAsDefault" =: _cpvSetAsDefault,- "PolicyArn" =: _cpvPolicyARN,- "PolicyDocument" =: _cpvPolicyDocument]---- | Contains the response to a successful 'CreatePolicyVersion' request.------------ /See:/ 'createPolicyVersionResponse' smart constructor.-data CreatePolicyVersionResponse = CreatePolicyVersionResponse'- { _cpvrsPolicyVersion :: !(Maybe PolicyVersion)- , _cpvrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreatePolicyVersionResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cpvrsPolicyVersion' - A structure containing details about the new policy version.------ * 'cpvrsResponseStatus' - -- | The response status code.-createPolicyVersionResponse- :: Int -- ^ 'cpvrsResponseStatus'- -> CreatePolicyVersionResponse-createPolicyVersionResponse pResponseStatus_ =- CreatePolicyVersionResponse'- {_cpvrsPolicyVersion = Nothing, _cpvrsResponseStatus = pResponseStatus_}----- | A structure containing details about the new policy version.-cpvrsPolicyVersion :: Lens' CreatePolicyVersionResponse (Maybe PolicyVersion)-cpvrsPolicyVersion = lens _cpvrsPolicyVersion (\ s a -> s{_cpvrsPolicyVersion = a})---- | -- | The response status code.-cpvrsResponseStatus :: Lens' CreatePolicyVersionResponse Int-cpvrsResponseStatus = lens _cpvrsResponseStatus (\ s a -> s{_cpvrsResponseStatus = a})--instance NFData CreatePolicyVersionResponse where
− gen/Network/AWS/IAM/CreateRole.hs
@@ -1,173 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateRole--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a new role for your AWS account. For more information about roles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html IAM Roles> . For information about limitations on role names and the number of roles you can create, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .-------module Network.AWS.IAM.CreateRole- (- -- * Creating a Request- createRole- , CreateRole- -- * Request Lenses- , crMaxSessionDuration- , crPath- , crDescription- , crRoleName- , crAssumeRolePolicyDocument-- -- * Destructuring the Response- , createRoleResponse- , CreateRoleResponse- -- * Response Lenses- , crrsResponseStatus- , crrsRole- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createRole' smart constructor.-data CreateRole = CreateRole'- { _crMaxSessionDuration :: !(Maybe Nat)- , _crPath :: !(Maybe Text)- , _crDescription :: !(Maybe Text)- , _crRoleName :: !Text- , _crAssumeRolePolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateRole' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'crMaxSessionDuration' - The maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours. Anyone who assumes the role from the AWS CLI or API can use the @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter to request a longer session. The @MaxSessionDuration@ setting determines the maximum duration that can be requested using the @DurationSeconds@ parameter. If users don't specify a value for the @DurationSeconds@ parameter, their security credentials are valid for one hour by default. This applies when you use the @AssumeRole*@ API operations or the @assume-role*@ CLI operations but does not apply when you use those operations to create a console URL. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM Roles> in the /IAM User Guide/ .------ * 'crPath' - The path to the role. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'crDescription' - A description of the role.------ * 'crRoleName' - The name of the role to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@- Role names are not distinguished by case. For example, you cannot create roles named both "PRODROLE" and "prodrole".------ * 'crAssumeRolePolicyDocument' - The trust relationship policy document that grants an entity permission to assume the role. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-createRole- :: Text -- ^ 'crRoleName'- -> Text -- ^ 'crAssumeRolePolicyDocument'- -> CreateRole-createRole pRoleName_ pAssumeRolePolicyDocument_ =- CreateRole'- { _crMaxSessionDuration = Nothing- , _crPath = Nothing- , _crDescription = Nothing- , _crRoleName = pRoleName_- , _crAssumeRolePolicyDocument = pAssumeRolePolicyDocument_- }----- | The maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours. Anyone who assumes the role from the AWS CLI or API can use the @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter to request a longer session. The @MaxSessionDuration@ setting determines the maximum duration that can be requested using the @DurationSeconds@ parameter. If users don't specify a value for the @DurationSeconds@ parameter, their security credentials are valid for one hour by default. This applies when you use the @AssumeRole*@ API operations or the @assume-role*@ CLI operations but does not apply when you use those operations to create a console URL. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM Roles> in the /IAM User Guide/ .-crMaxSessionDuration :: Lens' CreateRole (Maybe Natural)-crMaxSessionDuration = lens _crMaxSessionDuration (\ s a -> s{_crMaxSessionDuration = a}) . mapping _Nat---- | The path to the role. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-crPath :: Lens' CreateRole (Maybe Text)-crPath = lens _crPath (\ s a -> s{_crPath = a})---- | A description of the role.-crDescription :: Lens' CreateRole (Maybe Text)-crDescription = lens _crDescription (\ s a -> s{_crDescription = a})---- | The name of the role to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@- Role names are not distinguished by case. For example, you cannot create roles named both "PRODROLE" and "prodrole".-crRoleName :: Lens' CreateRole Text-crRoleName = lens _crRoleName (\ s a -> s{_crRoleName = a})---- | The trust relationship policy document that grants an entity permission to assume the role. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-crAssumeRolePolicyDocument :: Lens' CreateRole Text-crAssumeRolePolicyDocument = lens _crAssumeRolePolicyDocument (\ s a -> s{_crAssumeRolePolicyDocument = a})--instance AWSRequest CreateRole where- type Rs CreateRole = CreateRoleResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateRoleResult"- (\ s h x ->- CreateRoleResponse' <$>- (pure (fromEnum s)) <*> (x .@ "Role"))--instance Hashable CreateRole where--instance NFData CreateRole where--instance ToHeaders CreateRole where- toHeaders = const mempty--instance ToPath CreateRole where- toPath = const "/"--instance ToQuery CreateRole where- toQuery CreateRole'{..}- = mconcat- ["Action" =: ("CreateRole" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "MaxSessionDuration" =: _crMaxSessionDuration,- "Path" =: _crPath, "Description" =: _crDescription,- "RoleName" =: _crRoleName,- "AssumeRolePolicyDocument" =:- _crAssumeRolePolicyDocument]---- | Contains the response to a successful 'CreateRole' request.------------ /See:/ 'createRoleResponse' smart constructor.-data CreateRoleResponse = CreateRoleResponse'- { _crrsResponseStatus :: !Int- , _crrsRole :: !Role- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateRoleResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'crrsResponseStatus' - -- | The response status code.------ * 'crrsRole' - A structure containing details about the new role.-createRoleResponse- :: Int -- ^ 'crrsResponseStatus'- -> Role -- ^ 'crrsRole'- -> CreateRoleResponse-createRoleResponse pResponseStatus_ pRole_ =- CreateRoleResponse'- {_crrsResponseStatus = pResponseStatus_, _crrsRole = pRole_}----- | -- | The response status code.-crrsResponseStatus :: Lens' CreateRoleResponse Int-crrsResponseStatus = lens _crrsResponseStatus (\ s a -> s{_crrsResponseStatus = a})---- | A structure containing details about the new role.-crrsRole :: Lens' CreateRoleResponse Role-crrsRole = lens _crrsRole (\ s a -> s{_crrsRole = a})--instance NFData CreateRoleResponse where
− gen/Network/AWS/IAM/CreateSAMLProvider.hs
@@ -1,150 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateSAMLProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates an IAM resource that describes an identity provider (IdP) that supports SAML 2.0.--------- The SAML provider resource that you create with this operation can be used as a principal in an IAM role's trust policy. Such a policy can enable federated users who sign-in using the SAML IdP to assume the role. You can create an IAM role that supports Web-based single sign-on (SSO) to the AWS Management Console or one that supports API access to AWS.------ When you create the SAML provider resource, you upload a SAML metadata document that you get from your IdP. That document includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that the IdP sends. You must generate the metadata document using the identity management software that is used as your organization's IdP.------ For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-saml.html Enabling SAML 2.0 Federated Users to Access the AWS Management Console> and <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based Federation> in the /IAM User Guide/ .----module Network.AWS.IAM.CreateSAMLProvider- (- -- * Creating a Request- createSAMLProvider- , CreateSAMLProvider- -- * Request Lenses- , csamlpSAMLMetadataDocument- , csamlpName-- -- * Destructuring the Response- , createSAMLProviderResponse- , CreateSAMLProviderResponse- -- * Response Lenses- , csamlprsSAMLProviderARN- , csamlprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createSAMLProvider' smart constructor.-data CreateSAMLProvider = CreateSAMLProvider'- { _csamlpSAMLMetadataDocument :: !Text- , _csamlpName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateSAMLProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csamlpSAMLMetadataDocument' - An XML document generated by an identity provider (IdP) that supports SAML 2.0. The document includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that are received from the IdP. You must generate the metadata document using the identity management software that is used as your organization's IdP. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based Federation> in the /IAM User Guide/------ * 'csamlpName' - The name of the provider to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--createSAMLProvider- :: Text -- ^ 'csamlpSAMLMetadataDocument'- -> Text -- ^ 'csamlpName'- -> CreateSAMLProvider-createSAMLProvider pSAMLMetadataDocument_ pName_ =- CreateSAMLProvider'- {_csamlpSAMLMetadataDocument = pSAMLMetadataDocument_, _csamlpName = pName_}----- | An XML document generated by an identity provider (IdP) that supports SAML 2.0. The document includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that are received from the IdP. You must generate the metadata document using the identity management software that is used as your organization's IdP. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html About SAML 2.0-based Federation> in the /IAM User Guide/-csamlpSAMLMetadataDocument :: Lens' CreateSAMLProvider Text-csamlpSAMLMetadataDocument = lens _csamlpSAMLMetadataDocument (\ s a -> s{_csamlpSAMLMetadataDocument = a})---- | The name of the provider to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--csamlpName :: Lens' CreateSAMLProvider Text-csamlpName = lens _csamlpName (\ s a -> s{_csamlpName = a})--instance AWSRequest CreateSAMLProvider where- type Rs CreateSAMLProvider =- CreateSAMLProviderResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateSAMLProviderResult"- (\ s h x ->- CreateSAMLProviderResponse' <$>- (x .@? "SAMLProviderArn") <*> (pure (fromEnum s)))--instance Hashable CreateSAMLProvider where--instance NFData CreateSAMLProvider where--instance ToHeaders CreateSAMLProvider where- toHeaders = const mempty--instance ToPath CreateSAMLProvider where- toPath = const "/"--instance ToQuery CreateSAMLProvider where- toQuery CreateSAMLProvider'{..}- = mconcat- ["Action" =: ("CreateSAMLProvider" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "SAMLMetadataDocument" =:- _csamlpSAMLMetadataDocument,- "Name" =: _csamlpName]---- | Contains the response to a successful 'CreateSAMLProvider' request.------------ /See:/ 'createSAMLProviderResponse' smart constructor.-data CreateSAMLProviderResponse = CreateSAMLProviderResponse'- { _csamlprsSAMLProviderARN :: !(Maybe Text)- , _csamlprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateSAMLProviderResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csamlprsSAMLProviderARN' - The Amazon Resource Name (ARN) of the new SAML provider resource in IAM.------ * 'csamlprsResponseStatus' - -- | The response status code.-createSAMLProviderResponse- :: Int -- ^ 'csamlprsResponseStatus'- -> CreateSAMLProviderResponse-createSAMLProviderResponse pResponseStatus_ =- CreateSAMLProviderResponse'- { _csamlprsSAMLProviderARN = Nothing- , _csamlprsResponseStatus = pResponseStatus_- }----- | The Amazon Resource Name (ARN) of the new SAML provider resource in IAM.-csamlprsSAMLProviderARN :: Lens' CreateSAMLProviderResponse (Maybe Text)-csamlprsSAMLProviderARN = lens _csamlprsSAMLProviderARN (\ s a -> s{_csamlprsSAMLProviderARN = a})---- | -- | The response status code.-csamlprsResponseStatus :: Lens' CreateSAMLProviderResponse Int-csamlprsResponseStatus = lens _csamlprsResponseStatus (\ s a -> s{_csamlprsResponseStatus = a})--instance NFData CreateSAMLProviderResponse where
− gen/Network/AWS/IAM/CreateServiceLinkedRole.hs
@@ -1,153 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateServiceLinkedRole--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates an IAM role that is linked to a specific AWS service. The service controls the attached policies and when the role can be deleted. This helps ensure that the service is not broken by an unexpectedly changed or deleted role, which could put your AWS resources into an unknown state. Allowing the service to control the role helps improve service stability and proper cleanup when a service and its role are no longer needed.--------- The name of the role is generated by combining the string that you specify for the @AWSServiceName@ parameter with the string that you specify for the @CustomSuffix@ parameter. The resulting name must be unique in your account or the request fails.------ To attach a policy to this service-linked role, you must make the request using the AWS service that depends on this role.----module Network.AWS.IAM.CreateServiceLinkedRole- (- -- * Creating a Request- createServiceLinkedRole- , CreateServiceLinkedRole- -- * Request Lenses- , cslrCustomSuffix- , cslrDescription- , cslrAWSServiceName-- -- * Destructuring the Response- , createServiceLinkedRoleResponse- , CreateServiceLinkedRoleResponse- -- * Response Lenses- , cslrrsRole- , cslrrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createServiceLinkedRole' smart constructor.-data CreateServiceLinkedRole = CreateServiceLinkedRole'- { _cslrCustomSuffix :: !(Maybe Text)- , _cslrDescription :: !(Maybe Text)- , _cslrAWSServiceName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateServiceLinkedRole' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cslrCustomSuffix' - A string that you provide, which is combined with the service name to form the complete role name. If you make multiple requests for the same service, then you must supply a different @CustomSuffix@ for each request. Otherwise the request fails with a duplicate role name error. For example, you could add @-1@ or @-debug@ to the suffix.------ * 'cslrDescription' - The description of the role.------ * 'cslrAWSServiceName' - The AWS service to which this role is attached. You use a string similar to a URL but without the http:// in front. For example: @elasticbeanstalk.amazonaws.com@-createServiceLinkedRole- :: Text -- ^ 'cslrAWSServiceName'- -> CreateServiceLinkedRole-createServiceLinkedRole pAWSServiceName_ =- CreateServiceLinkedRole'- { _cslrCustomSuffix = Nothing- , _cslrDescription = Nothing- , _cslrAWSServiceName = pAWSServiceName_- }----- | A string that you provide, which is combined with the service name to form the complete role name. If you make multiple requests for the same service, then you must supply a different @CustomSuffix@ for each request. Otherwise the request fails with a duplicate role name error. For example, you could add @-1@ or @-debug@ to the suffix.-cslrCustomSuffix :: Lens' CreateServiceLinkedRole (Maybe Text)-cslrCustomSuffix = lens _cslrCustomSuffix (\ s a -> s{_cslrCustomSuffix = a})---- | The description of the role.-cslrDescription :: Lens' CreateServiceLinkedRole (Maybe Text)-cslrDescription = lens _cslrDescription (\ s a -> s{_cslrDescription = a})---- | The AWS service to which this role is attached. You use a string similar to a URL but without the http:// in front. For example: @elasticbeanstalk.amazonaws.com@-cslrAWSServiceName :: Lens' CreateServiceLinkedRole Text-cslrAWSServiceName = lens _cslrAWSServiceName (\ s a -> s{_cslrAWSServiceName = a})--instance AWSRequest CreateServiceLinkedRole where- type Rs CreateServiceLinkedRole =- CreateServiceLinkedRoleResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateServiceLinkedRoleResult"- (\ s h x ->- CreateServiceLinkedRoleResponse' <$>- (x .@? "Role") <*> (pure (fromEnum s)))--instance Hashable CreateServiceLinkedRole where--instance NFData CreateServiceLinkedRole where--instance ToHeaders CreateServiceLinkedRole where- toHeaders = const mempty--instance ToPath CreateServiceLinkedRole where- toPath = const "/"--instance ToQuery CreateServiceLinkedRole where- toQuery CreateServiceLinkedRole'{..}- = mconcat- ["Action" =:- ("CreateServiceLinkedRole" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "CustomSuffix" =: _cslrCustomSuffix,- "Description" =: _cslrDescription,- "AWSServiceName" =: _cslrAWSServiceName]---- | /See:/ 'createServiceLinkedRoleResponse' smart constructor.-data CreateServiceLinkedRoleResponse = CreateServiceLinkedRoleResponse'- { _cslrrsRole :: !(Maybe Role)- , _cslrrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateServiceLinkedRoleResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cslrrsRole' - A 'Role' object that contains details about the newly created role.------ * 'cslrrsResponseStatus' - -- | The response status code.-createServiceLinkedRoleResponse- :: Int -- ^ 'cslrrsResponseStatus'- -> CreateServiceLinkedRoleResponse-createServiceLinkedRoleResponse pResponseStatus_ =- CreateServiceLinkedRoleResponse'- {_cslrrsRole = Nothing, _cslrrsResponseStatus = pResponseStatus_}----- | A 'Role' object that contains details about the newly created role.-cslrrsRole :: Lens' CreateServiceLinkedRoleResponse (Maybe Role)-cslrrsRole = lens _cslrrsRole (\ s a -> s{_cslrrsRole = a})---- | -- | The response status code.-cslrrsResponseStatus :: Lens' CreateServiceLinkedRoleResponse Int-cslrrsResponseStatus = lens _cslrrsResponseStatus (\ s a -> s{_cslrrsResponseStatus = a})--instance NFData CreateServiceLinkedRoleResponse where
− gen/Network/AWS/IAM/CreateServiceSpecificCredential.hs
@@ -1,156 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateServiceSpecificCredential--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Generates a set of credentials consisting of a user name and password that can be used to access the service specified in the request. These credentials are generated by IAM, and can be used only for the specified service.--------- You can have a maximum of two sets of service-specific credentials for each supported service per user.------ The only supported service at this time is AWS CodeCommit.------ You can reset the password to a new service-generated value by calling 'ResetServiceSpecificCredential' .------ For more information about service-specific credentials, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html Using IAM with AWS CodeCommit: Git Credentials, SSH Keys, and AWS Access Keys> in the /IAM User Guide/ .----module Network.AWS.IAM.CreateServiceSpecificCredential- (- -- * Creating a Request- createServiceSpecificCredential- , CreateServiceSpecificCredential- -- * Request Lenses- , csscUserName- , csscServiceName-- -- * Destructuring the Response- , createServiceSpecificCredentialResponse- , CreateServiceSpecificCredentialResponse- -- * Response Lenses- , csscrsServiceSpecificCredential- , csscrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createServiceSpecificCredential' smart constructor.-data CreateServiceSpecificCredential = CreateServiceSpecificCredential'- { _csscUserName :: !Text- , _csscServiceName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateServiceSpecificCredential' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csscUserName' - The name of the IAM user that is to be associated with the credentials. The new service-specific credentials have the same permissions as the associated user except that they can be used only to access the specified service. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'csscServiceName' - The name of the AWS service that is to be associated with the credentials. The service you specify here is the only service that can be accessed using these credentials.-createServiceSpecificCredential- :: Text -- ^ 'csscUserName'- -> Text -- ^ 'csscServiceName'- -> CreateServiceSpecificCredential-createServiceSpecificCredential pUserName_ pServiceName_ =- CreateServiceSpecificCredential'- {_csscUserName = pUserName_, _csscServiceName = pServiceName_}----- | The name of the IAM user that is to be associated with the credentials. The new service-specific credentials have the same permissions as the associated user except that they can be used only to access the specified service. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--csscUserName :: Lens' CreateServiceSpecificCredential Text-csscUserName = lens _csscUserName (\ s a -> s{_csscUserName = a})---- | The name of the AWS service that is to be associated with the credentials. The service you specify here is the only service that can be accessed using these credentials.-csscServiceName :: Lens' CreateServiceSpecificCredential Text-csscServiceName = lens _csscServiceName (\ s a -> s{_csscServiceName = a})--instance AWSRequest CreateServiceSpecificCredential- where- type Rs CreateServiceSpecificCredential =- CreateServiceSpecificCredentialResponse- request = postQuery iam- response- = receiveXMLWrapper- "CreateServiceSpecificCredentialResult"- (\ s h x ->- CreateServiceSpecificCredentialResponse' <$>- (x .@? "ServiceSpecificCredential") <*>- (pure (fromEnum s)))--instance Hashable CreateServiceSpecificCredential- where--instance NFData CreateServiceSpecificCredential where--instance ToHeaders CreateServiceSpecificCredential- where- toHeaders = const mempty--instance ToPath CreateServiceSpecificCredential where- toPath = const "/"--instance ToQuery CreateServiceSpecificCredential- where- toQuery CreateServiceSpecificCredential'{..}- = mconcat- ["Action" =:- ("CreateServiceSpecificCredential" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _csscUserName,- "ServiceName" =: _csscServiceName]---- | /See:/ 'createServiceSpecificCredentialResponse' smart constructor.-data CreateServiceSpecificCredentialResponse = CreateServiceSpecificCredentialResponse'- { _csscrsServiceSpecificCredential :: !(Maybe ServiceSpecificCredential)- , _csscrsResponseStatus :: !Int- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateServiceSpecificCredentialResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csscrsServiceSpecificCredential' - A structure that contains information about the newly created service-specific credential. /Important:/ This is the only time that the password for this credential set is available. It cannot be recovered later. Instead, you will have to reset the password with 'ResetServiceSpecificCredential' .------ * 'csscrsResponseStatus' - -- | The response status code.-createServiceSpecificCredentialResponse- :: Int -- ^ 'csscrsResponseStatus'- -> CreateServiceSpecificCredentialResponse-createServiceSpecificCredentialResponse pResponseStatus_ =- CreateServiceSpecificCredentialResponse'- { _csscrsServiceSpecificCredential = Nothing- , _csscrsResponseStatus = pResponseStatus_- }----- | A structure that contains information about the newly created service-specific credential. /Important:/ This is the only time that the password for this credential set is available. It cannot be recovered later. Instead, you will have to reset the password with 'ResetServiceSpecificCredential' .-csscrsServiceSpecificCredential :: Lens' CreateServiceSpecificCredentialResponse (Maybe ServiceSpecificCredential)-csscrsServiceSpecificCredential = lens _csscrsServiceSpecificCredential (\ s a -> s{_csscrsServiceSpecificCredential = a})---- | -- | The response status code.-csscrsResponseStatus :: Lens' CreateServiceSpecificCredentialResponse Int-csscrsResponseStatus = lens _csscrsResponseStatus (\ s a -> s{_csscrsResponseStatus = a})--instance NFData- CreateServiceSpecificCredentialResponse- where
− gen/Network/AWS/IAM/CreateUser.hs
@@ -1,139 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateUser--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a new IAM user for your AWS account.--------- For information about limitations on the number of IAM users you can create, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .----module Network.AWS.IAM.CreateUser- (- -- * Creating a Request- createUser- , CreateUser- -- * Request Lenses- , cuPath- , cuUserName-- -- * Destructuring the Response- , createUserResponse- , CreateUserResponse- -- * Response Lenses- , cursUser- , cursResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createUser' smart constructor.-data CreateUser = CreateUser'- { _cuPath :: !(Maybe Text)- , _cuUserName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateUser' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cuPath' - The path for the user name. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'cuUserName' - The name of the user to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-. User names are not distinguished by case. For example, you cannot create users named both "TESTUSER" and "testuser".-createUser- :: Text -- ^ 'cuUserName'- -> CreateUser-createUser pUserName_ =- CreateUser' {_cuPath = Nothing, _cuUserName = pUserName_}----- | The path for the user name. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-cuPath :: Lens' CreateUser (Maybe Text)-cuPath = lens _cuPath (\ s a -> s{_cuPath = a})---- | The name of the user to create. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-. User names are not distinguished by case. For example, you cannot create users named both "TESTUSER" and "testuser".-cuUserName :: Lens' CreateUser Text-cuUserName = lens _cuUserName (\ s a -> s{_cuUserName = a})--instance AWSRequest CreateUser where- type Rs CreateUser = CreateUserResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateUserResult"- (\ s h x ->- CreateUserResponse' <$>- (x .@? "User") <*> (pure (fromEnum s)))--instance Hashable CreateUser where--instance NFData CreateUser where--instance ToHeaders CreateUser where- toHeaders = const mempty--instance ToPath CreateUser where- toPath = const "/"--instance ToQuery CreateUser where- toQuery CreateUser'{..}- = mconcat- ["Action" =: ("CreateUser" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Path" =: _cuPath, "UserName" =: _cuUserName]---- | Contains the response to a successful 'CreateUser' request.------------ /See:/ 'createUserResponse' smart constructor.-data CreateUserResponse = CreateUserResponse'- { _cursUser :: !(Maybe User)- , _cursResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateUserResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cursUser' - A structure with details about the new IAM user.------ * 'cursResponseStatus' - -- | The response status code.-createUserResponse- :: Int -- ^ 'cursResponseStatus'- -> CreateUserResponse-createUserResponse pResponseStatus_ =- CreateUserResponse'- {_cursUser = Nothing, _cursResponseStatus = pResponseStatus_}----- | A structure with details about the new IAM user.-cursUser :: Lens' CreateUserResponse (Maybe User)-cursUser = lens _cursUser (\ s a -> s{_cursUser = a})---- | -- | The response status code.-cursResponseStatus :: Lens' CreateUserResponse Int-cursResponseStatus = lens _cursResponseStatus (\ s a -> s{_cursResponseStatus = a})--instance NFData CreateUserResponse where
− gen/Network/AWS/IAM/CreateVirtualMFADevice.hs
@@ -1,148 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.CreateVirtualMFADevice--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Creates a new virtual MFA device for the AWS account. After creating the virtual MFA, use 'EnableMFADevice' to attach the MFA device to an IAM user. For more information about creating and working with virtual MFA devices, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html Using a Virtual MFA Device> in the /IAM User Guide/ .--------- For information about limits on the number of MFA devices you can create, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on Entities> in the /IAM User Guide/ .------ /Important:/ The seed information contained in the QR code and the Base32 string should be treated like any other secret access information, such as your AWS access keys or your passwords. After you provision your virtual device, you should ensure that the information is destroyed following secure procedures.----module Network.AWS.IAM.CreateVirtualMFADevice- (- -- * Creating a Request- createVirtualMFADevice- , CreateVirtualMFADevice- -- * Request Lenses- , cvmdPath- , cvmdVirtualMFADeviceName-- -- * Destructuring the Response- , createVirtualMFADeviceResponse- , CreateVirtualMFADeviceResponse- -- * Response Lenses- , cvmdrsResponseStatus- , cvmdrsVirtualMFADevice- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'createVirtualMFADevice' smart constructor.-data CreateVirtualMFADevice = CreateVirtualMFADevice'- { _cvmdPath :: !(Maybe Text)- , _cvmdVirtualMFADeviceName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateVirtualMFADevice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cvmdPath' - The path for the virtual MFA device. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'cvmdVirtualMFADeviceName' - The name of the virtual MFA device. Use with path to uniquely identify a virtual MFA device. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--createVirtualMFADevice- :: Text -- ^ 'cvmdVirtualMFADeviceName'- -> CreateVirtualMFADevice-createVirtualMFADevice pVirtualMFADeviceName_ =- CreateVirtualMFADevice'- {_cvmdPath = Nothing, _cvmdVirtualMFADeviceName = pVirtualMFADeviceName_}----- | The path for the virtual MFA device. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-cvmdPath :: Lens' CreateVirtualMFADevice (Maybe Text)-cvmdPath = lens _cvmdPath (\ s a -> s{_cvmdPath = a})---- | The name of the virtual MFA device. Use with path to uniquely identify a virtual MFA device. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--cvmdVirtualMFADeviceName :: Lens' CreateVirtualMFADevice Text-cvmdVirtualMFADeviceName = lens _cvmdVirtualMFADeviceName (\ s a -> s{_cvmdVirtualMFADeviceName = a})--instance AWSRequest CreateVirtualMFADevice where- type Rs CreateVirtualMFADevice =- CreateVirtualMFADeviceResponse- request = postQuery iam- response- = receiveXMLWrapper "CreateVirtualMFADeviceResult"- (\ s h x ->- CreateVirtualMFADeviceResponse' <$>- (pure (fromEnum s)) <*> (x .@ "VirtualMFADevice"))--instance Hashable CreateVirtualMFADevice where--instance NFData CreateVirtualMFADevice where--instance ToHeaders CreateVirtualMFADevice where- toHeaders = const mempty--instance ToPath CreateVirtualMFADevice where- toPath = const "/"--instance ToQuery CreateVirtualMFADevice where- toQuery CreateVirtualMFADevice'{..}- = mconcat- ["Action" =:- ("CreateVirtualMFADevice" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Path" =: _cvmdPath,- "VirtualMFADeviceName" =: _cvmdVirtualMFADeviceName]---- | Contains the response to a successful 'CreateVirtualMFADevice' request.------------ /See:/ 'createVirtualMFADeviceResponse' smart constructor.-data CreateVirtualMFADeviceResponse = CreateVirtualMFADeviceResponse'- { _cvmdrsResponseStatus :: !Int- , _cvmdrsVirtualMFADevice :: !VirtualMFADevice- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'CreateVirtualMFADeviceResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cvmdrsResponseStatus' - -- | The response status code.------ * 'cvmdrsVirtualMFADevice' - A structure containing details about the new virtual MFA device.-createVirtualMFADeviceResponse- :: Int -- ^ 'cvmdrsResponseStatus'- -> VirtualMFADevice -- ^ 'cvmdrsVirtualMFADevice'- -> CreateVirtualMFADeviceResponse-createVirtualMFADeviceResponse pResponseStatus_ pVirtualMFADevice_ =- CreateVirtualMFADeviceResponse'- { _cvmdrsResponseStatus = pResponseStatus_- , _cvmdrsVirtualMFADevice = pVirtualMFADevice_- }----- | -- | The response status code.-cvmdrsResponseStatus :: Lens' CreateVirtualMFADeviceResponse Int-cvmdrsResponseStatus = lens _cvmdrsResponseStatus (\ s a -> s{_cvmdrsResponseStatus = a})---- | A structure containing details about the new virtual MFA device.-cvmdrsVirtualMFADevice :: Lens' CreateVirtualMFADeviceResponse VirtualMFADevice-cvmdrsVirtualMFADevice = lens _cvmdrsVirtualMFADevice (\ s a -> s{_cvmdrsVirtualMFADevice = a})--instance NFData CreateVirtualMFADeviceResponse where
− gen/Network/AWS/IAM/DeactivateMFADevice.hs
@@ -1,115 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeactivateMFADevice--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deactivates the specified MFA device and removes it from association with the user name for which it was originally enabled.--------- For more information about creating and working with virtual MFA devices, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html Using a Virtual MFA Device> in the /IAM User Guide/ .----module Network.AWS.IAM.DeactivateMFADevice- (- -- * Creating a Request- deactivateMFADevice- , DeactivateMFADevice- -- * Request Lenses- , dmdUserName- , dmdSerialNumber-- -- * Destructuring the Response- , deactivateMFADeviceResponse- , DeactivateMFADeviceResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deactivateMFADevice' smart constructor.-data DeactivateMFADevice = DeactivateMFADevice'- { _dmdUserName :: !Text- , _dmdSerialNumber :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeactivateMFADevice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dmdUserName' - The name of the user whose MFA device you want to deactivate. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dmdSerialNumber' - The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@:/--deactivateMFADevice- :: Text -- ^ 'dmdUserName'- -> Text -- ^ 'dmdSerialNumber'- -> DeactivateMFADevice-deactivateMFADevice pUserName_ pSerialNumber_ =- DeactivateMFADevice'- {_dmdUserName = pUserName_, _dmdSerialNumber = pSerialNumber_}----- | The name of the user whose MFA device you want to deactivate. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dmdUserName :: Lens' DeactivateMFADevice Text-dmdUserName = lens _dmdUserName (\ s a -> s{_dmdUserName = a})---- | The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@:/--dmdSerialNumber :: Lens' DeactivateMFADevice Text-dmdSerialNumber = lens _dmdSerialNumber (\ s a -> s{_dmdSerialNumber = a})--instance AWSRequest DeactivateMFADevice where- type Rs DeactivateMFADevice =- DeactivateMFADeviceResponse- request = postQuery iam- response = receiveNull DeactivateMFADeviceResponse'--instance Hashable DeactivateMFADevice where--instance NFData DeactivateMFADevice where--instance ToHeaders DeactivateMFADevice where- toHeaders = const mempty--instance ToPath DeactivateMFADevice where- toPath = const "/"--instance ToQuery DeactivateMFADevice where- toQuery DeactivateMFADevice'{..}- = mconcat- ["Action" =: ("DeactivateMFADevice" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _dmdUserName,- "SerialNumber" =: _dmdSerialNumber]---- | /See:/ 'deactivateMFADeviceResponse' smart constructor.-data DeactivateMFADeviceResponse =- DeactivateMFADeviceResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeactivateMFADeviceResponse' with the minimum fields required to make a request.----deactivateMFADeviceResponse- :: DeactivateMFADeviceResponse-deactivateMFADeviceResponse = DeactivateMFADeviceResponse'---instance NFData DeactivateMFADeviceResponse where
− gen/Network/AWS/IAM/DeleteAccessKey.hs
@@ -1,112 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteAccessKey--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the access key pair associated with the specified IAM user.--------- If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request. Because this operation works for access keys under the AWS account, you can use this operation to manage AWS account root user credentials even if the AWS account has no associated users.----module Network.AWS.IAM.DeleteAccessKey- (- -- * Creating a Request- deleteAccessKey- , DeleteAccessKey- -- * Request Lenses- , dakUserName- , dakAccessKeyId-- -- * Destructuring the Response- , deleteAccessKeyResponse- , DeleteAccessKeyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteAccessKey' smart constructor.-data DeleteAccessKey = DeleteAccessKey'- { _dakUserName :: !(Maybe Text)- , _dakAccessKeyId :: !AccessKey- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteAccessKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dakUserName' - The name of the user whose access key pair you want to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dakAccessKeyId' - The access key ID for the access key ID and secret access key you want to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-deleteAccessKey- :: AccessKey -- ^ 'dakAccessKeyId'- -> DeleteAccessKey-deleteAccessKey pAccessKeyId_ =- DeleteAccessKey' {_dakUserName = Nothing, _dakAccessKeyId = pAccessKeyId_}----- | The name of the user whose access key pair you want to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dakUserName :: Lens' DeleteAccessKey (Maybe Text)-dakUserName = lens _dakUserName (\ s a -> s{_dakUserName = a})---- | The access key ID for the access key ID and secret access key you want to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-dakAccessKeyId :: Lens' DeleteAccessKey AccessKey-dakAccessKeyId = lens _dakAccessKeyId (\ s a -> s{_dakAccessKeyId = a})--instance AWSRequest DeleteAccessKey where- type Rs DeleteAccessKey = DeleteAccessKeyResponse- request = postQuery iam- response = receiveNull DeleteAccessKeyResponse'--instance Hashable DeleteAccessKey where--instance NFData DeleteAccessKey where--instance ToHeaders DeleteAccessKey where- toHeaders = const mempty--instance ToPath DeleteAccessKey where- toPath = const "/"--instance ToQuery DeleteAccessKey where- toQuery DeleteAccessKey'{..}- = mconcat- ["Action" =: ("DeleteAccessKey" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _dakUserName,- "AccessKeyId" =: _dakAccessKeyId]---- | /See:/ 'deleteAccessKeyResponse' smart constructor.-data DeleteAccessKeyResponse =- DeleteAccessKeyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteAccessKeyResponse' with the minimum fields required to make a request.----deleteAccessKeyResponse- :: DeleteAccessKeyResponse-deleteAccessKeyResponse = DeleteAccessKeyResponse'---instance NFData DeleteAccessKeyResponse where
− gen/Network/AWS/IAM/DeleteAccountAlias.hs
@@ -1,102 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteAccountAlias--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified AWS account alias. For information about using an AWS account alias, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html Using an Alias for Your AWS Account ID> in the /IAM User Guide/ .-------module Network.AWS.IAM.DeleteAccountAlias- (- -- * Creating a Request- deleteAccountAlias- , DeleteAccountAlias- -- * Request Lenses- , daaAccountAlias-- -- * Destructuring the Response- , deleteAccountAliasResponse- , DeleteAccountAliasResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteAccountAlias' smart constructor.-newtype DeleteAccountAlias = DeleteAccountAlias'- { _daaAccountAlias :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteAccountAlias' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'daaAccountAlias' - The name of the account alias to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have two dashes in a row.-deleteAccountAlias- :: Text -- ^ 'daaAccountAlias'- -> DeleteAccountAlias-deleteAccountAlias pAccountAlias_ =- DeleteAccountAlias' {_daaAccountAlias = pAccountAlias_}----- | The name of the account alias to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of lowercase letters, digits, and dashes. You cannot start or finish with a dash, nor can you have two dashes in a row.-daaAccountAlias :: Lens' DeleteAccountAlias Text-daaAccountAlias = lens _daaAccountAlias (\ s a -> s{_daaAccountAlias = a})--instance AWSRequest DeleteAccountAlias where- type Rs DeleteAccountAlias =- DeleteAccountAliasResponse- request = postQuery iam- response = receiveNull DeleteAccountAliasResponse'--instance Hashable DeleteAccountAlias where--instance NFData DeleteAccountAlias where--instance ToHeaders DeleteAccountAlias where- toHeaders = const mempty--instance ToPath DeleteAccountAlias where- toPath = const "/"--instance ToQuery DeleteAccountAlias where- toQuery DeleteAccountAlias'{..}- = mconcat- ["Action" =: ("DeleteAccountAlias" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "AccountAlias" =: _daaAccountAlias]---- | /See:/ 'deleteAccountAliasResponse' smart constructor.-data DeleteAccountAliasResponse =- DeleteAccountAliasResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteAccountAliasResponse' with the minimum fields required to make a request.----deleteAccountAliasResponse- :: DeleteAccountAliasResponse-deleteAccountAliasResponse = DeleteAccountAliasResponse'---instance NFData DeleteAccountAliasResponse where
− gen/Network/AWS/IAM/DeleteAccountPasswordPolicy.hs
@@ -1,94 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteAccountPasswordPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the password policy for the AWS account. There are no parameters.-------module Network.AWS.IAM.DeleteAccountPasswordPolicy- (- -- * Creating a Request- deleteAccountPasswordPolicy- , DeleteAccountPasswordPolicy-- -- * Destructuring the Response- , deleteAccountPasswordPolicyResponse- , DeleteAccountPasswordPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteAccountPasswordPolicy' smart constructor.-data DeleteAccountPasswordPolicy =- DeleteAccountPasswordPolicy'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteAccountPasswordPolicy' with the minimum fields required to make a request.----deleteAccountPasswordPolicy- :: DeleteAccountPasswordPolicy-deleteAccountPasswordPolicy = DeleteAccountPasswordPolicy'---instance AWSRequest DeleteAccountPasswordPolicy where- type Rs DeleteAccountPasswordPolicy =- DeleteAccountPasswordPolicyResponse- request = postQuery iam- response- = receiveNull DeleteAccountPasswordPolicyResponse'--instance Hashable DeleteAccountPasswordPolicy where--instance NFData DeleteAccountPasswordPolicy where--instance ToHeaders DeleteAccountPasswordPolicy where- toHeaders = const mempty--instance ToPath DeleteAccountPasswordPolicy where- toPath = const "/"--instance ToQuery DeleteAccountPasswordPolicy where- toQuery- = const- (mconcat- ["Action" =:- ("DeleteAccountPasswordPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString)])---- | /See:/ 'deleteAccountPasswordPolicyResponse' smart constructor.-data DeleteAccountPasswordPolicyResponse =- DeleteAccountPasswordPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteAccountPasswordPolicyResponse' with the minimum fields required to make a request.----deleteAccountPasswordPolicyResponse- :: DeleteAccountPasswordPolicyResponse-deleteAccountPasswordPolicyResponse = DeleteAccountPasswordPolicyResponse'---instance NFData DeleteAccountPasswordPolicyResponse- where
− gen/Network/AWS/IAM/DeleteGroup.hs
@@ -1,100 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteGroup--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified IAM group. The group must not contain any users or have any attached policies.-------module Network.AWS.IAM.DeleteGroup- (- -- * Creating a Request- deleteGroup- , DeleteGroup- -- * Request Lenses- , dgGroupName-- -- * Destructuring the Response- , deleteGroupResponse- , DeleteGroupResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteGroup' smart constructor.-newtype DeleteGroup = DeleteGroup'- { _dgGroupName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteGroup' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dgGroupName' - The name of the IAM group to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteGroup- :: Text -- ^ 'dgGroupName'- -> DeleteGroup-deleteGroup pGroupName_ = DeleteGroup' {_dgGroupName = pGroupName_}----- | The name of the IAM group to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dgGroupName :: Lens' DeleteGroup Text-dgGroupName = lens _dgGroupName (\ s a -> s{_dgGroupName = a})--instance AWSRequest DeleteGroup where- type Rs DeleteGroup = DeleteGroupResponse- request = postQuery iam- response = receiveNull DeleteGroupResponse'--instance Hashable DeleteGroup where--instance NFData DeleteGroup where--instance ToHeaders DeleteGroup where- toHeaders = const mempty--instance ToPath DeleteGroup where- toPath = const "/"--instance ToQuery DeleteGroup where- toQuery DeleteGroup'{..}- = mconcat- ["Action" =: ("DeleteGroup" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "GroupName" =: _dgGroupName]---- | /See:/ 'deleteGroupResponse' smart constructor.-data DeleteGroupResponse =- DeleteGroupResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteGroupResponse' with the minimum fields required to make a request.----deleteGroupResponse- :: DeleteGroupResponse-deleteGroupResponse = DeleteGroupResponse'---instance NFData DeleteGroupResponse where
− gen/Network/AWS/IAM/DeleteGroupPolicy.hs
@@ -1,113 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteGroupPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified inline policy that is embedded in the specified IAM group.--------- A group can also have managed policies attached to it. To detach a managed policy from a group, use 'DetachGroupPolicy' . For more information about policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.DeleteGroupPolicy- (- -- * Creating a Request- deleteGroupPolicy- , DeleteGroupPolicy- -- * Request Lenses- , dGroupName- , dPolicyName-- -- * Destructuring the Response- , deleteGroupPolicyResponse- , DeleteGroupPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteGroupPolicy' smart constructor.-data DeleteGroupPolicy = DeleteGroupPolicy'- { _dGroupName :: !Text- , _dPolicyName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteGroupPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dGroupName' - The name (friendly name, not ARN) identifying the group that the policy is embedded in. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dPolicyName' - The name identifying the policy document to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteGroupPolicy- :: Text -- ^ 'dGroupName'- -> Text -- ^ 'dPolicyName'- -> DeleteGroupPolicy-deleteGroupPolicy pGroupName_ pPolicyName_ =- DeleteGroupPolicy' {_dGroupName = pGroupName_, _dPolicyName = pPolicyName_}----- | The name (friendly name, not ARN) identifying the group that the policy is embedded in. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dGroupName :: Lens' DeleteGroupPolicy Text-dGroupName = lens _dGroupName (\ s a -> s{_dGroupName = a})---- | The name identifying the policy document to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dPolicyName :: Lens' DeleteGroupPolicy Text-dPolicyName = lens _dPolicyName (\ s a -> s{_dPolicyName = a})--instance AWSRequest DeleteGroupPolicy where- type Rs DeleteGroupPolicy = DeleteGroupPolicyResponse- request = postQuery iam- response = receiveNull DeleteGroupPolicyResponse'--instance Hashable DeleteGroupPolicy where--instance NFData DeleteGroupPolicy where--instance ToHeaders DeleteGroupPolicy where- toHeaders = const mempty--instance ToPath DeleteGroupPolicy where- toPath = const "/"--instance ToQuery DeleteGroupPolicy where- toQuery DeleteGroupPolicy'{..}- = mconcat- ["Action" =: ("DeleteGroupPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "GroupName" =: _dGroupName,- "PolicyName" =: _dPolicyName]---- | /See:/ 'deleteGroupPolicyResponse' smart constructor.-data DeleteGroupPolicyResponse =- DeleteGroupPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteGroupPolicyResponse' with the minimum fields required to make a request.----deleteGroupPolicyResponse- :: DeleteGroupPolicyResponse-deleteGroupPolicyResponse = DeleteGroupPolicyResponse'---instance NFData DeleteGroupPolicyResponse where
− gen/Network/AWS/IAM/DeleteInstanceProfile.hs
@@ -1,106 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteInstanceProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified instance profile. The instance profile must not have an associated role.--------- /Important:/ Make sure that you do not have any Amazon EC2 instances running with the instance profile you are about to delete. Deleting a role or instance profile that is associated with a running instance will break any applications running on the instance.------ For more information about instance profiles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About Instance Profiles> .----module Network.AWS.IAM.DeleteInstanceProfile- (- -- * Creating a Request- deleteInstanceProfile- , DeleteInstanceProfile- -- * Request Lenses- , dipInstanceProfileName-- -- * Destructuring the Response- , deleteInstanceProfileResponse- , DeleteInstanceProfileResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteInstanceProfile' smart constructor.-newtype DeleteInstanceProfile = DeleteInstanceProfile'- { _dipInstanceProfileName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteInstanceProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dipInstanceProfileName' - The name of the instance profile to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteInstanceProfile- :: Text -- ^ 'dipInstanceProfileName'- -> DeleteInstanceProfile-deleteInstanceProfile pInstanceProfileName_ =- DeleteInstanceProfile' {_dipInstanceProfileName = pInstanceProfileName_}----- | The name of the instance profile to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dipInstanceProfileName :: Lens' DeleteInstanceProfile Text-dipInstanceProfileName = lens _dipInstanceProfileName (\ s a -> s{_dipInstanceProfileName = a})--instance AWSRequest DeleteInstanceProfile where- type Rs DeleteInstanceProfile =- DeleteInstanceProfileResponse- request = postQuery iam- response = receiveNull DeleteInstanceProfileResponse'--instance Hashable DeleteInstanceProfile where--instance NFData DeleteInstanceProfile where--instance ToHeaders DeleteInstanceProfile where- toHeaders = const mempty--instance ToPath DeleteInstanceProfile where- toPath = const "/"--instance ToQuery DeleteInstanceProfile where- toQuery DeleteInstanceProfile'{..}- = mconcat- ["Action" =: ("DeleteInstanceProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "InstanceProfileName" =: _dipInstanceProfileName]---- | /See:/ 'deleteInstanceProfileResponse' smart constructor.-data DeleteInstanceProfileResponse =- DeleteInstanceProfileResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteInstanceProfileResponse' with the minimum fields required to make a request.----deleteInstanceProfileResponse- :: DeleteInstanceProfileResponse-deleteInstanceProfileResponse = DeleteInstanceProfileResponse'---instance NFData DeleteInstanceProfileResponse where
− gen/Network/AWS/IAM/DeleteLoginProfile.hs
@@ -1,103 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteLoginProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the password for the specified IAM user, which terminates the user's ability to access AWS services through the AWS Management Console.--------- /Important:/ Deleting a user's password does not prevent a user from accessing AWS through the command line interface or the API. To prevent all user access you must also either make any access keys inactive or delete them. For more information about making keys inactive or deleting them, see 'UpdateAccessKey' and 'DeleteAccessKey' .----module Network.AWS.IAM.DeleteLoginProfile- (- -- * Creating a Request- deleteLoginProfile- , DeleteLoginProfile- -- * Request Lenses- , dlpUserName-- -- * Destructuring the Response- , deleteLoginProfileResponse- , DeleteLoginProfileResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteLoginProfile' smart constructor.-newtype DeleteLoginProfile = DeleteLoginProfile'- { _dlpUserName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteLoginProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dlpUserName' - The name of the user whose password you want to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteLoginProfile- :: Text -- ^ 'dlpUserName'- -> DeleteLoginProfile-deleteLoginProfile pUserName_ = DeleteLoginProfile' {_dlpUserName = pUserName_}----- | The name of the user whose password you want to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dlpUserName :: Lens' DeleteLoginProfile Text-dlpUserName = lens _dlpUserName (\ s a -> s{_dlpUserName = a})--instance AWSRequest DeleteLoginProfile where- type Rs DeleteLoginProfile =- DeleteLoginProfileResponse- request = postQuery iam- response = receiveNull DeleteLoginProfileResponse'--instance Hashable DeleteLoginProfile where--instance NFData DeleteLoginProfile where--instance ToHeaders DeleteLoginProfile where- toHeaders = const mempty--instance ToPath DeleteLoginProfile where- toPath = const "/"--instance ToQuery DeleteLoginProfile where- toQuery DeleteLoginProfile'{..}- = mconcat- ["Action" =: ("DeleteLoginProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _dlpUserName]---- | /See:/ 'deleteLoginProfileResponse' smart constructor.-data DeleteLoginProfileResponse =- DeleteLoginProfileResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteLoginProfileResponse' with the minimum fields required to make a request.----deleteLoginProfileResponse- :: DeleteLoginProfileResponse-deleteLoginProfileResponse = DeleteLoginProfileResponse'---instance NFData DeleteLoginProfileResponse where
− gen/Network/AWS/IAM/DeleteOpenIdConnectProvider.hs
@@ -1,111 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteOpenIdConnectProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes an OpenID Connect identity provider (IdP) resource object in IAM.--------- Deleting an IAM OIDC provider resource does not update any roles that reference the provider as a principal in their trust policies. Any attempt to assume a role that references a deleted provider fails.------ This operation is idempotent; it does not fail or return an error if you call the operation for a provider that does not exist.----module Network.AWS.IAM.DeleteOpenIdConnectProvider- (- -- * Creating a Request- deleteOpenIdConnectProvider- , DeleteOpenIdConnectProvider- -- * Request Lenses- , doicpOpenIdConnectProviderARN-- -- * Destructuring the Response- , deleteOpenIdConnectProviderResponse- , DeleteOpenIdConnectProviderResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteOpenIdConnectProvider' smart constructor.-newtype DeleteOpenIdConnectProvider = DeleteOpenIdConnectProvider'- { _doicpOpenIdConnectProviderARN :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteOpenIdConnectProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'doicpOpenIdConnectProviderARN' - The Amazon Resource Name (ARN) of the IAM OpenID Connect provider resource object to delete. You can get a list of OpenID Connect provider resource ARNs by using the 'ListOpenIDConnectProviders' operation.-deleteOpenIdConnectProvider- :: Text -- ^ 'doicpOpenIdConnectProviderARN'- -> DeleteOpenIdConnectProvider-deleteOpenIdConnectProvider pOpenIdConnectProviderARN_ =- DeleteOpenIdConnectProvider'- {_doicpOpenIdConnectProviderARN = pOpenIdConnectProviderARN_}----- | The Amazon Resource Name (ARN) of the IAM OpenID Connect provider resource object to delete. You can get a list of OpenID Connect provider resource ARNs by using the 'ListOpenIDConnectProviders' operation.-doicpOpenIdConnectProviderARN :: Lens' DeleteOpenIdConnectProvider Text-doicpOpenIdConnectProviderARN = lens _doicpOpenIdConnectProviderARN (\ s a -> s{_doicpOpenIdConnectProviderARN = a})--instance AWSRequest DeleteOpenIdConnectProvider where- type Rs DeleteOpenIdConnectProvider =- DeleteOpenIdConnectProviderResponse- request = postQuery iam- response- = receiveNull DeleteOpenIdConnectProviderResponse'--instance Hashable DeleteOpenIdConnectProvider where--instance NFData DeleteOpenIdConnectProvider where--instance ToHeaders DeleteOpenIdConnectProvider where- toHeaders = const mempty--instance ToPath DeleteOpenIdConnectProvider where- toPath = const "/"--instance ToQuery DeleteOpenIdConnectProvider where- toQuery DeleteOpenIdConnectProvider'{..}- = mconcat- ["Action" =:- ("DeleteOpenIDConnectProvider" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "OpenIDConnectProviderArn" =:- _doicpOpenIdConnectProviderARN]---- | /See:/ 'deleteOpenIdConnectProviderResponse' smart constructor.-data DeleteOpenIdConnectProviderResponse =- DeleteOpenIdConnectProviderResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteOpenIdConnectProviderResponse' with the minimum fields required to make a request.----deleteOpenIdConnectProviderResponse- :: DeleteOpenIdConnectProviderResponse-deleteOpenIdConnectProviderResponse = DeleteOpenIdConnectProviderResponse'---instance NFData DeleteOpenIdConnectProviderResponse- where
− gen/Network/AWS/IAM/DeletePolicy.hs
@@ -1,112 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeletePolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified managed policy.--------- Before you can delete a managed policy, you must first detach the policy from all users, groups, and roles that it is attached to. In addition you must delete all the policy's versions. The following steps describe the process for deleting a managed policy:------ * Detach the policy from all users, groups, and roles that the policy is attached to, using the 'DetachUserPolicy' , 'DetachGroupPolicy' , or 'DetachRolePolicy' API operations. To list all the users, groups, and roles that a policy is attached to, use 'ListEntitiesForPolicy' .------ * Delete all versions of the policy using 'DeletePolicyVersion' . To list the policy's versions, use 'ListPolicyVersions' . You cannot use 'DeletePolicyVersion' to delete the version that is marked as the default version. You delete the policy's default version in the next step of the process.------ * Delete the policy (this automatically deletes the policy's default version) using this API.------------ For information about managed policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.DeletePolicy- (- -- * Creating a Request- deletePolicy- , DeletePolicy- -- * Request Lenses- , dpPolicyARN-- -- * Destructuring the Response- , deletePolicyResponse- , DeletePolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deletePolicy' smart constructor.-newtype DeletePolicy = DeletePolicy'- { _dpPolicyARN :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeletePolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dpPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy you want to delete. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-deletePolicy- :: Text -- ^ 'dpPolicyARN'- -> DeletePolicy-deletePolicy pPolicyARN_ = DeletePolicy' {_dpPolicyARN = pPolicyARN_}----- | The Amazon Resource Name (ARN) of the IAM policy you want to delete. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-dpPolicyARN :: Lens' DeletePolicy Text-dpPolicyARN = lens _dpPolicyARN (\ s a -> s{_dpPolicyARN = a})--instance AWSRequest DeletePolicy where- type Rs DeletePolicy = DeletePolicyResponse- request = postQuery iam- response = receiveNull DeletePolicyResponse'--instance Hashable DeletePolicy where--instance NFData DeletePolicy where--instance ToHeaders DeletePolicy where- toHeaders = const mempty--instance ToPath DeletePolicy where- toPath = const "/"--instance ToQuery DeletePolicy where- toQuery DeletePolicy'{..}- = mconcat- ["Action" =: ("DeletePolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PolicyArn" =: _dpPolicyARN]---- | /See:/ 'deletePolicyResponse' smart constructor.-data DeletePolicyResponse =- DeletePolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeletePolicyResponse' with the minimum fields required to make a request.----deletePolicyResponse- :: DeletePolicyResponse-deletePolicyResponse = DeletePolicyResponse'---instance NFData DeletePolicyResponse where
− gen/Network/AWS/IAM/DeletePolicyVersion.hs
@@ -1,117 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeletePolicyVersion--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified version from the specified managed policy.--------- You cannot delete the default version from a policy using this API. To delete the default version from a policy, use 'DeletePolicy' . To find out which version of a policy is marked as the default version, use 'ListPolicyVersions' .------ For information about versions for managed policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.DeletePolicyVersion- (- -- * Creating a Request- deletePolicyVersion- , DeletePolicyVersion- -- * Request Lenses- , dpvPolicyARN- , dpvVersionId-- -- * Destructuring the Response- , deletePolicyVersionResponse- , DeletePolicyVersionResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deletePolicyVersion' smart constructor.-data DeletePolicyVersion = DeletePolicyVersion'- { _dpvPolicyARN :: !Text- , _dpvVersionId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeletePolicyVersion' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dpvPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy from which you want to delete a version. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'dpvVersionId' - The policy version to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that consists of the lowercase letter 'v' followed by one or two digits, and optionally followed by a period '.' and a string of letters and digits. For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .-deletePolicyVersion- :: Text -- ^ 'dpvPolicyARN'- -> Text -- ^ 'dpvVersionId'- -> DeletePolicyVersion-deletePolicyVersion pPolicyARN_ pVersionId_ =- DeletePolicyVersion'- {_dpvPolicyARN = pPolicyARN_, _dpvVersionId = pVersionId_}----- | The Amazon Resource Name (ARN) of the IAM policy from which you want to delete a version. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-dpvPolicyARN :: Lens' DeletePolicyVersion Text-dpvPolicyARN = lens _dpvPolicyARN (\ s a -> s{_dpvPolicyARN = a})---- | The policy version to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that consists of the lowercase letter 'v' followed by one or two digits, and optionally followed by a period '.' and a string of letters and digits. For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .-dpvVersionId :: Lens' DeletePolicyVersion Text-dpvVersionId = lens _dpvVersionId (\ s a -> s{_dpvVersionId = a})--instance AWSRequest DeletePolicyVersion where- type Rs DeletePolicyVersion =- DeletePolicyVersionResponse- request = postQuery iam- response = receiveNull DeletePolicyVersionResponse'--instance Hashable DeletePolicyVersion where--instance NFData DeletePolicyVersion where--instance ToHeaders DeletePolicyVersion where- toHeaders = const mempty--instance ToPath DeletePolicyVersion where- toPath = const "/"--instance ToQuery DeletePolicyVersion where- toQuery DeletePolicyVersion'{..}- = mconcat- ["Action" =: ("DeletePolicyVersion" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PolicyArn" =: _dpvPolicyARN,- "VersionId" =: _dpvVersionId]---- | /See:/ 'deletePolicyVersionResponse' smart constructor.-data DeletePolicyVersionResponse =- DeletePolicyVersionResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeletePolicyVersionResponse' with the minimum fields required to make a request.----deletePolicyVersionResponse- :: DeletePolicyVersionResponse-deletePolicyVersionResponse = DeletePolicyVersionResponse'---instance NFData DeletePolicyVersionResponse where
− gen/Network/AWS/IAM/DeleteRole.hs
@@ -1,102 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteRole--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified role. The role must not have any policies attached. For more information about roles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with Roles> .--------- /Important:/ Make sure that you do not have any Amazon EC2 instances running with the role you are about to delete. Deleting a role or instance profile that is associated with a running instance will break any applications running on the instance.----module Network.AWS.IAM.DeleteRole- (- -- * Creating a Request- deleteRole- , DeleteRole- -- * Request Lenses- , drRoleName-- -- * Destructuring the Response- , deleteRoleResponse- , DeleteRoleResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteRole' smart constructor.-newtype DeleteRole = DeleteRole'- { _drRoleName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteRole' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'drRoleName' - The name of the role to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteRole- :: Text -- ^ 'drRoleName'- -> DeleteRole-deleteRole pRoleName_ = DeleteRole' {_drRoleName = pRoleName_}----- | The name of the role to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--drRoleName :: Lens' DeleteRole Text-drRoleName = lens _drRoleName (\ s a -> s{_drRoleName = a})--instance AWSRequest DeleteRole where- type Rs DeleteRole = DeleteRoleResponse- request = postQuery iam- response = receiveNull DeleteRoleResponse'--instance Hashable DeleteRole where--instance NFData DeleteRole where--instance ToHeaders DeleteRole where- toHeaders = const mempty--instance ToPath DeleteRole where- toPath = const "/"--instance ToQuery DeleteRole where- toQuery DeleteRole'{..}- = mconcat- ["Action" =: ("DeleteRole" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _drRoleName]---- | /See:/ 'deleteRoleResponse' smart constructor.-data DeleteRoleResponse =- DeleteRoleResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteRoleResponse' with the minimum fields required to make a request.----deleteRoleResponse- :: DeleteRoleResponse-deleteRoleResponse = DeleteRoleResponse'---instance NFData DeleteRoleResponse where
− gen/Network/AWS/IAM/DeleteRolePolicy.hs
@@ -1,113 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteRolePolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified inline policy that is embedded in the specified IAM role.--------- A role can also have managed policies attached to it. To detach a managed policy from a role, use 'DetachRolePolicy' . For more information about policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.DeleteRolePolicy- (- -- * Creating a Request- deleteRolePolicy- , DeleteRolePolicy- -- * Request Lenses- , delRoleName- , delPolicyName-- -- * Destructuring the Response- , deleteRolePolicyResponse- , DeleteRolePolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteRolePolicy' smart constructor.-data DeleteRolePolicy = DeleteRolePolicy'- { _delRoleName :: !Text- , _delPolicyName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteRolePolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'delRoleName' - The name (friendly name, not ARN) identifying the role that the policy is embedded in. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'delPolicyName' - The name of the inline policy to delete from the specified IAM role. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteRolePolicy- :: Text -- ^ 'delRoleName'- -> Text -- ^ 'delPolicyName'- -> DeleteRolePolicy-deleteRolePolicy pRoleName_ pPolicyName_ =- DeleteRolePolicy' {_delRoleName = pRoleName_, _delPolicyName = pPolicyName_}----- | The name (friendly name, not ARN) identifying the role that the policy is embedded in. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--delRoleName :: Lens' DeleteRolePolicy Text-delRoleName = lens _delRoleName (\ s a -> s{_delRoleName = a})---- | The name of the inline policy to delete from the specified IAM role. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--delPolicyName :: Lens' DeleteRolePolicy Text-delPolicyName = lens _delPolicyName (\ s a -> s{_delPolicyName = a})--instance AWSRequest DeleteRolePolicy where- type Rs DeleteRolePolicy = DeleteRolePolicyResponse- request = postQuery iam- response = receiveNull DeleteRolePolicyResponse'--instance Hashable DeleteRolePolicy where--instance NFData DeleteRolePolicy where--instance ToHeaders DeleteRolePolicy where- toHeaders = const mempty--instance ToPath DeleteRolePolicy where- toPath = const "/"--instance ToQuery DeleteRolePolicy where- toQuery DeleteRolePolicy'{..}- = mconcat- ["Action" =: ("DeleteRolePolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _delRoleName,- "PolicyName" =: _delPolicyName]---- | /See:/ 'deleteRolePolicyResponse' smart constructor.-data DeleteRolePolicyResponse =- DeleteRolePolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteRolePolicyResponse' with the minimum fields required to make a request.----deleteRolePolicyResponse- :: DeleteRolePolicyResponse-deleteRolePolicyResponse = DeleteRolePolicyResponse'---instance NFData DeleteRolePolicyResponse where
− gen/Network/AWS/IAM/DeleteSAMLProvider.hs
@@ -1,104 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteSAMLProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes a SAML provider resource in IAM.--------- Deleting the provider resource from IAM does not update any roles that reference the SAML provider resource's ARN as a principal in their trust policies. Any attempt to assume a role that references a non-existent provider resource ARN fails.----module Network.AWS.IAM.DeleteSAMLProvider- (- -- * Creating a Request- deleteSAMLProvider- , DeleteSAMLProvider- -- * Request Lenses- , dsamlpSAMLProviderARN-- -- * Destructuring the Response- , deleteSAMLProviderResponse- , DeleteSAMLProviderResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteSAMLProvider' smart constructor.-newtype DeleteSAMLProvider = DeleteSAMLProvider'- { _dsamlpSAMLProviderARN :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteSAMLProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dsamlpSAMLProviderARN' - The Amazon Resource Name (ARN) of the SAML provider to delete.-deleteSAMLProvider- :: Text -- ^ 'dsamlpSAMLProviderARN'- -> DeleteSAMLProvider-deleteSAMLProvider pSAMLProviderARN_ =- DeleteSAMLProvider' {_dsamlpSAMLProviderARN = pSAMLProviderARN_}----- | The Amazon Resource Name (ARN) of the SAML provider to delete.-dsamlpSAMLProviderARN :: Lens' DeleteSAMLProvider Text-dsamlpSAMLProviderARN = lens _dsamlpSAMLProviderARN (\ s a -> s{_dsamlpSAMLProviderARN = a})--instance AWSRequest DeleteSAMLProvider where- type Rs DeleteSAMLProvider =- DeleteSAMLProviderResponse- request = postQuery iam- response = receiveNull DeleteSAMLProviderResponse'--instance Hashable DeleteSAMLProvider where--instance NFData DeleteSAMLProvider where--instance ToHeaders DeleteSAMLProvider where- toHeaders = const mempty--instance ToPath DeleteSAMLProvider where- toPath = const "/"--instance ToQuery DeleteSAMLProvider where- toQuery DeleteSAMLProvider'{..}- = mconcat- ["Action" =: ("DeleteSAMLProvider" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "SAMLProviderArn" =: _dsamlpSAMLProviderARN]---- | /See:/ 'deleteSAMLProviderResponse' smart constructor.-data DeleteSAMLProviderResponse =- DeleteSAMLProviderResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteSAMLProviderResponse' with the minimum fields required to make a request.----deleteSAMLProviderResponse- :: DeleteSAMLProviderResponse-deleteSAMLProviderResponse = DeleteSAMLProviderResponse'---instance NFData DeleteSAMLProviderResponse where
− gen/Network/AWS/IAM/DeleteSSHPublicKey.hs
@@ -1,115 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteSSHPublicKey--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified SSH public key.--------- The SSH public key deleted by this operation is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see <http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up AWS CodeCommit for SSH Connections> in the /AWS CodeCommit User Guide/ .----module Network.AWS.IAM.DeleteSSHPublicKey- (- -- * Creating a Request- deleteSSHPublicKey- , DeleteSSHPublicKey- -- * Request Lenses- , dspkUserName- , dspkSSHPublicKeyId-- -- * Destructuring the Response- , deleteSSHPublicKeyResponse- , DeleteSSHPublicKeyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteSSHPublicKey' smart constructor.-data DeleteSSHPublicKey = DeleteSSHPublicKey'- { _dspkUserName :: !Text- , _dspkSSHPublicKeyId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteSSHPublicKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dspkUserName' - The name of the IAM user associated with the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dspkSSHPublicKeyId' - The unique identifier for the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-deleteSSHPublicKey- :: Text -- ^ 'dspkUserName'- -> Text -- ^ 'dspkSSHPublicKeyId'- -> DeleteSSHPublicKey-deleteSSHPublicKey pUserName_ pSSHPublicKeyId_ =- DeleteSSHPublicKey'- {_dspkUserName = pUserName_, _dspkSSHPublicKeyId = pSSHPublicKeyId_}----- | The name of the IAM user associated with the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dspkUserName :: Lens' DeleteSSHPublicKey Text-dspkUserName = lens _dspkUserName (\ s a -> s{_dspkUserName = a})---- | The unique identifier for the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-dspkSSHPublicKeyId :: Lens' DeleteSSHPublicKey Text-dspkSSHPublicKeyId = lens _dspkSSHPublicKeyId (\ s a -> s{_dspkSSHPublicKeyId = a})--instance AWSRequest DeleteSSHPublicKey where- type Rs DeleteSSHPublicKey =- DeleteSSHPublicKeyResponse- request = postQuery iam- response = receiveNull DeleteSSHPublicKeyResponse'--instance Hashable DeleteSSHPublicKey where--instance NFData DeleteSSHPublicKey where--instance ToHeaders DeleteSSHPublicKey where- toHeaders = const mempty--instance ToPath DeleteSSHPublicKey where- toPath = const "/"--instance ToQuery DeleteSSHPublicKey where- toQuery DeleteSSHPublicKey'{..}- = mconcat- ["Action" =: ("DeleteSSHPublicKey" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _dspkUserName,- "SSHPublicKeyId" =: _dspkSSHPublicKeyId]---- | /See:/ 'deleteSSHPublicKeyResponse' smart constructor.-data DeleteSSHPublicKeyResponse =- DeleteSSHPublicKeyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteSSHPublicKeyResponse' with the minimum fields required to make a request.----deleteSSHPublicKeyResponse- :: DeleteSSHPublicKeyResponse-deleteSSHPublicKeyResponse = DeleteSSHPublicKeyResponse'---instance NFData DeleteSSHPublicKeyResponse where
− gen/Network/AWS/IAM/DeleteServerCertificate.hs
@@ -1,108 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteServerCertificate--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified server certificate.--------- For more information about working with server certificates, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with Server Certificates> in the /IAM User Guide/ . This topic also includes a list of AWS services that can use the server certificates that you manage with IAM.------ /Important:/ If you are using a server certificate with Elastic Load Balancing, deleting the certificate could have implications for your application. If Elastic Load Balancing doesn't detect the deletion of bound certificates, it may continue to use the certificates. This could cause Elastic Load Balancing to stop accepting traffic. We recommend that you remove the reference to the certificate from Elastic Load Balancing before using this command to delete the certificate. For more information, go to <http://docs.aws.amazon.com/ElasticLoadBalancing/latest/APIReference/API_DeleteLoadBalancerListeners.html DeleteLoadBalancerListeners> in the /Elastic Load Balancing API Reference/ .----module Network.AWS.IAM.DeleteServerCertificate- (- -- * Creating a Request- deleteServerCertificate- , DeleteServerCertificate- -- * Request Lenses- , dscServerCertificateName-- -- * Destructuring the Response- , deleteServerCertificateResponse- , DeleteServerCertificateResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteServerCertificate' smart constructor.-newtype DeleteServerCertificate = DeleteServerCertificate'- { _dscServerCertificateName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteServerCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dscServerCertificateName' - The name of the server certificate you want to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteServerCertificate- :: Text -- ^ 'dscServerCertificateName'- -> DeleteServerCertificate-deleteServerCertificate pServerCertificateName_ =- DeleteServerCertificate' {_dscServerCertificateName = pServerCertificateName_}----- | The name of the server certificate you want to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dscServerCertificateName :: Lens' DeleteServerCertificate Text-dscServerCertificateName = lens _dscServerCertificateName (\ s a -> s{_dscServerCertificateName = a})--instance AWSRequest DeleteServerCertificate where- type Rs DeleteServerCertificate =- DeleteServerCertificateResponse- request = postQuery iam- response- = receiveNull DeleteServerCertificateResponse'--instance Hashable DeleteServerCertificate where--instance NFData DeleteServerCertificate where--instance ToHeaders DeleteServerCertificate where- toHeaders = const mempty--instance ToPath DeleteServerCertificate where- toPath = const "/"--instance ToQuery DeleteServerCertificate where- toQuery DeleteServerCertificate'{..}- = mconcat- ["Action" =:- ("DeleteServerCertificate" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "ServerCertificateName" =: _dscServerCertificateName]---- | /See:/ 'deleteServerCertificateResponse' smart constructor.-data DeleteServerCertificateResponse =- DeleteServerCertificateResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteServerCertificateResponse' with the minimum fields required to make a request.----deleteServerCertificateResponse- :: DeleteServerCertificateResponse-deleteServerCertificateResponse = DeleteServerCertificateResponse'---instance NFData DeleteServerCertificateResponse where
− gen/Network/AWS/IAM/DeleteServiceLinkedRole.hs
@@ -1,134 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteServiceLinkedRole--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Submits a service-linked role deletion request and returns a @DeletionTaskId@ , which you can use to check the status of the deletion. Before you call this operation, confirm that the role has no active sessions and that any resources used by the role in the linked service are deleted. If you call this operation more than once for the same service-linked role and an earlier deletion task is not complete, then the @DeletionTaskId@ of the earlier request is returned.--------- If you submit a deletion request for a service-linked role whose linked service is still accessing a resource, then the deletion task fails. If it fails, the 'GetServiceLinkedRoleDeletionStatus' API operation returns the reason for the failure, usually including the resources that must be deleted. To delete the service-linked role, you must first remove those resources from the linked service and then submit the deletion request again. Resources are specific to the service that is linked to the role. For more information about removing resources from a service, see the <http://docs.aws.amazon.com/ AWS documentation> for your service.------ For more information about service-linked roles, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role Roles Terms and Concepts: AWS Service-Linked Role> in the /IAM User Guide/ .----module Network.AWS.IAM.DeleteServiceLinkedRole- (- -- * Creating a Request- deleteServiceLinkedRole- , DeleteServiceLinkedRole- -- * Request Lenses- , dslrRoleName-- -- * Destructuring the Response- , deleteServiceLinkedRoleResponse- , DeleteServiceLinkedRoleResponse- -- * Response Lenses- , dslrrsResponseStatus- , dslrrsDeletionTaskId- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteServiceLinkedRole' smart constructor.-newtype DeleteServiceLinkedRole = DeleteServiceLinkedRole'- { _dslrRoleName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteServiceLinkedRole' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dslrRoleName' - The name of the service-linked role to be deleted.-deleteServiceLinkedRole- :: Text -- ^ 'dslrRoleName'- -> DeleteServiceLinkedRole-deleteServiceLinkedRole pRoleName_ =- DeleteServiceLinkedRole' {_dslrRoleName = pRoleName_}----- | The name of the service-linked role to be deleted.-dslrRoleName :: Lens' DeleteServiceLinkedRole Text-dslrRoleName = lens _dslrRoleName (\ s a -> s{_dslrRoleName = a})--instance AWSRequest DeleteServiceLinkedRole where- type Rs DeleteServiceLinkedRole =- DeleteServiceLinkedRoleResponse- request = postQuery iam- response- = receiveXMLWrapper "DeleteServiceLinkedRoleResult"- (\ s h x ->- DeleteServiceLinkedRoleResponse' <$>- (pure (fromEnum s)) <*> (x .@ "DeletionTaskId"))--instance Hashable DeleteServiceLinkedRole where--instance NFData DeleteServiceLinkedRole where--instance ToHeaders DeleteServiceLinkedRole where- toHeaders = const mempty--instance ToPath DeleteServiceLinkedRole where- toPath = const "/"--instance ToQuery DeleteServiceLinkedRole where- toQuery DeleteServiceLinkedRole'{..}- = mconcat- ["Action" =:- ("DeleteServiceLinkedRole" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _dslrRoleName]---- | /See:/ 'deleteServiceLinkedRoleResponse' smart constructor.-data DeleteServiceLinkedRoleResponse = DeleteServiceLinkedRoleResponse'- { _dslrrsResponseStatus :: !Int- , _dslrrsDeletionTaskId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteServiceLinkedRoleResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dslrrsResponseStatus' - -- | The response status code.------ * 'dslrrsDeletionTaskId' - The deletion task identifier that you can use to check the status of the deletion. This identifier is returned in the format @task/aws-service-role/<service-principal-name>/<role-name>/<task-uuid>@ .-deleteServiceLinkedRoleResponse- :: Int -- ^ 'dslrrsResponseStatus'- -> Text -- ^ 'dslrrsDeletionTaskId'- -> DeleteServiceLinkedRoleResponse-deleteServiceLinkedRoleResponse pResponseStatus_ pDeletionTaskId_ =- DeleteServiceLinkedRoleResponse'- { _dslrrsResponseStatus = pResponseStatus_- , _dslrrsDeletionTaskId = pDeletionTaskId_- }----- | -- | The response status code.-dslrrsResponseStatus :: Lens' DeleteServiceLinkedRoleResponse Int-dslrrsResponseStatus = lens _dslrrsResponseStatus (\ s a -> s{_dslrrsResponseStatus = a})---- | The deletion task identifier that you can use to check the status of the deletion. This identifier is returned in the format @task/aws-service-role/<service-principal-name>/<role-name>/<task-uuid>@ .-dslrrsDeletionTaskId :: Lens' DeleteServiceLinkedRoleResponse Text-dslrrsDeletionTaskId = lens _dslrrsDeletionTaskId (\ s a -> s{_dslrrsDeletionTaskId = a})--instance NFData DeleteServiceLinkedRoleResponse where
− gen/Network/AWS/IAM/DeleteServiceSpecificCredential.hs
@@ -1,125 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteServiceSpecificCredential--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified service-specific credential.-------module Network.AWS.IAM.DeleteServiceSpecificCredential- (- -- * Creating a Request- deleteServiceSpecificCredential- , DeleteServiceSpecificCredential- -- * Request Lenses- , dsscUserName- , dsscServiceSpecificCredentialId-- -- * Destructuring the Response- , deleteServiceSpecificCredentialResponse- , DeleteServiceSpecificCredentialResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteServiceSpecificCredential' smart constructor.-data DeleteServiceSpecificCredential = DeleteServiceSpecificCredential'- { _dsscUserName :: !(Maybe Text)- , _dsscServiceSpecificCredentialId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteServiceSpecificCredential' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dsscUserName' - The name of the IAM user associated with the service-specific credential. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dsscServiceSpecificCredentialId' - The unique identifier of the service-specific credential. You can get this value by calling 'ListServiceSpecificCredentials' . This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-deleteServiceSpecificCredential- :: Text -- ^ 'dsscServiceSpecificCredentialId'- -> DeleteServiceSpecificCredential-deleteServiceSpecificCredential pServiceSpecificCredentialId_ =- DeleteServiceSpecificCredential'- { _dsscUserName = Nothing- , _dsscServiceSpecificCredentialId = pServiceSpecificCredentialId_- }----- | The name of the IAM user associated with the service-specific credential. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dsscUserName :: Lens' DeleteServiceSpecificCredential (Maybe Text)-dsscUserName = lens _dsscUserName (\ s a -> s{_dsscUserName = a})---- | The unique identifier of the service-specific credential. You can get this value by calling 'ListServiceSpecificCredentials' . This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-dsscServiceSpecificCredentialId :: Lens' DeleteServiceSpecificCredential Text-dsscServiceSpecificCredentialId = lens _dsscServiceSpecificCredentialId (\ s a -> s{_dsscServiceSpecificCredentialId = a})--instance AWSRequest DeleteServiceSpecificCredential- where- type Rs DeleteServiceSpecificCredential =- DeleteServiceSpecificCredentialResponse- request = postQuery iam- response- = receiveNull- DeleteServiceSpecificCredentialResponse'--instance Hashable DeleteServiceSpecificCredential- where--instance NFData DeleteServiceSpecificCredential where--instance ToHeaders DeleteServiceSpecificCredential- where- toHeaders = const mempty--instance ToPath DeleteServiceSpecificCredential where- toPath = const "/"--instance ToQuery DeleteServiceSpecificCredential- where- toQuery DeleteServiceSpecificCredential'{..}- = mconcat- ["Action" =:- ("DeleteServiceSpecificCredential" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _dsscUserName,- "ServiceSpecificCredentialId" =:- _dsscServiceSpecificCredentialId]---- | /See:/ 'deleteServiceSpecificCredentialResponse' smart constructor.-data DeleteServiceSpecificCredentialResponse =- DeleteServiceSpecificCredentialResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteServiceSpecificCredentialResponse' with the minimum fields required to make a request.----deleteServiceSpecificCredentialResponse- :: DeleteServiceSpecificCredentialResponse-deleteServiceSpecificCredentialResponse =- DeleteServiceSpecificCredentialResponse'---instance NFData- DeleteServiceSpecificCredentialResponse- where
− gen/Network/AWS/IAM/DeleteSigningCertificate.hs
@@ -1,117 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteSigningCertificate--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes a signing certificate associated with the specified IAM user.--------- If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request. Because this operation works for access keys under the AWS account, you can use this operation to manage AWS account root user credentials even if the AWS account has no associated IAM users.----module Network.AWS.IAM.DeleteSigningCertificate- (- -- * Creating a Request- deleteSigningCertificate- , DeleteSigningCertificate- -- * Request Lenses- , dscUserName- , dscCertificateId-- -- * Destructuring the Response- , deleteSigningCertificateResponse- , DeleteSigningCertificateResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteSigningCertificate' smart constructor.-data DeleteSigningCertificate = DeleteSigningCertificate'- { _dscUserName :: !(Maybe Text)- , _dscCertificateId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteSigningCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dscUserName' - The name of the user the signing certificate belongs to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dscCertificateId' - The ID of the signing certificate to delete. The format of this parameter, as described by its <http://wikipedia.org/wiki/regex regex> pattern, is a string of characters that can be upper- or lower-cased letters or digits.-deleteSigningCertificate- :: Text -- ^ 'dscCertificateId'- -> DeleteSigningCertificate-deleteSigningCertificate pCertificateId_ =- DeleteSigningCertificate'- {_dscUserName = Nothing, _dscCertificateId = pCertificateId_}----- | The name of the user the signing certificate belongs to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dscUserName :: Lens' DeleteSigningCertificate (Maybe Text)-dscUserName = lens _dscUserName (\ s a -> s{_dscUserName = a})---- | The ID of the signing certificate to delete. The format of this parameter, as described by its <http://wikipedia.org/wiki/regex regex> pattern, is a string of characters that can be upper- or lower-cased letters or digits.-dscCertificateId :: Lens' DeleteSigningCertificate Text-dscCertificateId = lens _dscCertificateId (\ s a -> s{_dscCertificateId = a})--instance AWSRequest DeleteSigningCertificate where- type Rs DeleteSigningCertificate =- DeleteSigningCertificateResponse- request = postQuery iam- response- = receiveNull DeleteSigningCertificateResponse'--instance Hashable DeleteSigningCertificate where--instance NFData DeleteSigningCertificate where--instance ToHeaders DeleteSigningCertificate where- toHeaders = const mempty--instance ToPath DeleteSigningCertificate where- toPath = const "/"--instance ToQuery DeleteSigningCertificate where- toQuery DeleteSigningCertificate'{..}- = mconcat- ["Action" =:- ("DeleteSigningCertificate" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _dscUserName,- "CertificateId" =: _dscCertificateId]---- | /See:/ 'deleteSigningCertificateResponse' smart constructor.-data DeleteSigningCertificateResponse =- DeleteSigningCertificateResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteSigningCertificateResponse' with the minimum fields required to make a request.----deleteSigningCertificateResponse- :: DeleteSigningCertificateResponse-deleteSigningCertificateResponse = DeleteSigningCertificateResponse'---instance NFData DeleteSigningCertificateResponse- where
− gen/Network/AWS/IAM/DeleteUser.hs
@@ -1,100 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteUser--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified IAM user. The user must not belong to any groups or have any access keys, signing certificates, or attached policies.-------module Network.AWS.IAM.DeleteUser- (- -- * Creating a Request- deleteUser- , DeleteUser- -- * Request Lenses- , duUserName-- -- * Destructuring the Response- , deleteUserResponse- , DeleteUserResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteUser' smart constructor.-newtype DeleteUser = DeleteUser'- { _duUserName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteUser' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'duUserName' - The name of the user to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteUser- :: Text -- ^ 'duUserName'- -> DeleteUser-deleteUser pUserName_ = DeleteUser' {_duUserName = pUserName_}----- | The name of the user to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--duUserName :: Lens' DeleteUser Text-duUserName = lens _duUserName (\ s a -> s{_duUserName = a})--instance AWSRequest DeleteUser where- type Rs DeleteUser = DeleteUserResponse- request = postQuery iam- response = receiveNull DeleteUserResponse'--instance Hashable DeleteUser where--instance NFData DeleteUser where--instance ToHeaders DeleteUser where- toHeaders = const mempty--instance ToPath DeleteUser where- toPath = const "/"--instance ToQuery DeleteUser where- toQuery DeleteUser'{..}- = mconcat- ["Action" =: ("DeleteUser" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _duUserName]---- | /See:/ 'deleteUserResponse' smart constructor.-data DeleteUserResponse =- DeleteUserResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteUserResponse' with the minimum fields required to make a request.----deleteUserResponse- :: DeleteUserResponse-deleteUserResponse = DeleteUserResponse'---instance NFData DeleteUserResponse where
− gen/Network/AWS/IAM/DeleteUserPolicy.hs
@@ -1,113 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteUserPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes the specified inline policy that is embedded in the specified IAM user.--------- A user can also have managed policies attached to it. To detach a managed policy from a user, use 'DetachUserPolicy' . For more information about policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.DeleteUserPolicy- (- -- * Creating a Request- deleteUserPolicy- , DeleteUserPolicy- -- * Request Lenses- , dupUserName- , dupPolicyName-- -- * Destructuring the Response- , deleteUserPolicyResponse- , DeleteUserPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteUserPolicy' smart constructor.-data DeleteUserPolicy = DeleteUserPolicy'- { _dupUserName :: !Text- , _dupPolicyName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteUserPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dupUserName' - The name (friendly name, not ARN) identifying the user that the policy is embedded in. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dupPolicyName' - The name identifying the policy document to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--deleteUserPolicy- :: Text -- ^ 'dupUserName'- -> Text -- ^ 'dupPolicyName'- -> DeleteUserPolicy-deleteUserPolicy pUserName_ pPolicyName_ =- DeleteUserPolicy' {_dupUserName = pUserName_, _dupPolicyName = pPolicyName_}----- | The name (friendly name, not ARN) identifying the user that the policy is embedded in. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dupUserName :: Lens' DeleteUserPolicy Text-dupUserName = lens _dupUserName (\ s a -> s{_dupUserName = a})---- | The name identifying the policy document to delete. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dupPolicyName :: Lens' DeleteUserPolicy Text-dupPolicyName = lens _dupPolicyName (\ s a -> s{_dupPolicyName = a})--instance AWSRequest DeleteUserPolicy where- type Rs DeleteUserPolicy = DeleteUserPolicyResponse- request = postQuery iam- response = receiveNull DeleteUserPolicyResponse'--instance Hashable DeleteUserPolicy where--instance NFData DeleteUserPolicy where--instance ToHeaders DeleteUserPolicy where- toHeaders = const mempty--instance ToPath DeleteUserPolicy where- toPath = const "/"--instance ToQuery DeleteUserPolicy where- toQuery DeleteUserPolicy'{..}- = mconcat- ["Action" =: ("DeleteUserPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _dupUserName,- "PolicyName" =: _dupPolicyName]---- | /See:/ 'deleteUserPolicyResponse' smart constructor.-data DeleteUserPolicyResponse =- DeleteUserPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteUserPolicyResponse' with the minimum fields required to make a request.----deleteUserPolicyResponse- :: DeleteUserPolicyResponse-deleteUserPolicyResponse = DeleteUserPolicyResponse'---instance NFData DeleteUserPolicyResponse where
− gen/Network/AWS/IAM/DeleteVirtualMFADevice.hs
@@ -1,104 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DeleteVirtualMFADevice--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Deletes a virtual MFA device.-------module Network.AWS.IAM.DeleteVirtualMFADevice- (- -- * Creating a Request- deleteVirtualMFADevice- , DeleteVirtualMFADevice- -- * Request Lenses- , dvmdSerialNumber-- -- * Destructuring the Response- , deleteVirtualMFADeviceResponse- , DeleteVirtualMFADeviceResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'deleteVirtualMFADevice' smart constructor.-newtype DeleteVirtualMFADevice = DeleteVirtualMFADevice'- { _dvmdSerialNumber :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteVirtualMFADevice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dvmdSerialNumber' - The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the same as the ARN. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@:/--deleteVirtualMFADevice- :: Text -- ^ 'dvmdSerialNumber'- -> DeleteVirtualMFADevice-deleteVirtualMFADevice pSerialNumber_ =- DeleteVirtualMFADevice' {_dvmdSerialNumber = pSerialNumber_}----- | The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the same as the ARN. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@:/--dvmdSerialNumber :: Lens' DeleteVirtualMFADevice Text-dvmdSerialNumber = lens _dvmdSerialNumber (\ s a -> s{_dvmdSerialNumber = a})--instance AWSRequest DeleteVirtualMFADevice where- type Rs DeleteVirtualMFADevice =- DeleteVirtualMFADeviceResponse- request = postQuery iam- response- = receiveNull DeleteVirtualMFADeviceResponse'--instance Hashable DeleteVirtualMFADevice where--instance NFData DeleteVirtualMFADevice where--instance ToHeaders DeleteVirtualMFADevice where- toHeaders = const mempty--instance ToPath DeleteVirtualMFADevice where- toPath = const "/"--instance ToQuery DeleteVirtualMFADevice where- toQuery DeleteVirtualMFADevice'{..}- = mconcat- ["Action" =:- ("DeleteVirtualMFADevice" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "SerialNumber" =: _dvmdSerialNumber]---- | /See:/ 'deleteVirtualMFADeviceResponse' smart constructor.-data DeleteVirtualMFADeviceResponse =- DeleteVirtualMFADeviceResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeleteVirtualMFADeviceResponse' with the minimum fields required to make a request.----deleteVirtualMFADeviceResponse- :: DeleteVirtualMFADeviceResponse-deleteVirtualMFADeviceResponse = DeleteVirtualMFADeviceResponse'---instance NFData DeleteVirtualMFADeviceResponse where
− gen/Network/AWS/IAM/DetachGroupPolicy.hs
@@ -1,113 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DetachGroupPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Removes the specified managed policy from the specified IAM group.--------- A group can also have inline policies embedded with it. To delete an inline policy, use the 'DeleteGroupPolicy' API. For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.DetachGroupPolicy- (- -- * Creating a Request- detachGroupPolicy- , DetachGroupPolicy- -- * Request Lenses- , dgpGroupName- , dgpPolicyARN-- -- * Destructuring the Response- , detachGroupPolicyResponse- , DetachGroupPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'detachGroupPolicy' smart constructor.-data DetachGroupPolicy = DetachGroupPolicy'- { _dgpGroupName :: !Text- , _dgpPolicyARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DetachGroupPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dgpGroupName' - The name (friendly name, not ARN) of the IAM group to detach the policy from. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dgpPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy you want to detach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-detachGroupPolicy- :: Text -- ^ 'dgpGroupName'- -> Text -- ^ 'dgpPolicyARN'- -> DetachGroupPolicy-detachGroupPolicy pGroupName_ pPolicyARN_ =- DetachGroupPolicy' {_dgpGroupName = pGroupName_, _dgpPolicyARN = pPolicyARN_}----- | The name (friendly name, not ARN) of the IAM group to detach the policy from. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dgpGroupName :: Lens' DetachGroupPolicy Text-dgpGroupName = lens _dgpGroupName (\ s a -> s{_dgpGroupName = a})---- | The Amazon Resource Name (ARN) of the IAM policy you want to detach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-dgpPolicyARN :: Lens' DetachGroupPolicy Text-dgpPolicyARN = lens _dgpPolicyARN (\ s a -> s{_dgpPolicyARN = a})--instance AWSRequest DetachGroupPolicy where- type Rs DetachGroupPolicy = DetachGroupPolicyResponse- request = postQuery iam- response = receiveNull DetachGroupPolicyResponse'--instance Hashable DetachGroupPolicy where--instance NFData DetachGroupPolicy where--instance ToHeaders DetachGroupPolicy where- toHeaders = const mempty--instance ToPath DetachGroupPolicy where- toPath = const "/"--instance ToQuery DetachGroupPolicy where- toQuery DetachGroupPolicy'{..}- = mconcat- ["Action" =: ("DetachGroupPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "GroupName" =: _dgpGroupName,- "PolicyArn" =: _dgpPolicyARN]---- | /See:/ 'detachGroupPolicyResponse' smart constructor.-data DetachGroupPolicyResponse =- DetachGroupPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DetachGroupPolicyResponse' with the minimum fields required to make a request.----detachGroupPolicyResponse- :: DetachGroupPolicyResponse-detachGroupPolicyResponse = DetachGroupPolicyResponse'---instance NFData DetachGroupPolicyResponse where
− gen/Network/AWS/IAM/DetachRolePolicy.hs
@@ -1,113 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DetachRolePolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Removes the specified managed policy from the specified role.--------- A role can also have inline policies embedded with it. To delete an inline policy, use the 'DeleteRolePolicy' API. For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.DetachRolePolicy- (- -- * Creating a Request- detachRolePolicy- , DetachRolePolicy- -- * Request Lenses- , drpRoleName- , drpPolicyARN-- -- * Destructuring the Response- , detachRolePolicyResponse- , DetachRolePolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'detachRolePolicy' smart constructor.-data DetachRolePolicy = DetachRolePolicy'- { _drpRoleName :: !Text- , _drpPolicyARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DetachRolePolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'drpRoleName' - The name (friendly name, not ARN) of the IAM role to detach the policy from. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'drpPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy you want to detach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-detachRolePolicy- :: Text -- ^ 'drpRoleName'- -> Text -- ^ 'drpPolicyARN'- -> DetachRolePolicy-detachRolePolicy pRoleName_ pPolicyARN_ =- DetachRolePolicy' {_drpRoleName = pRoleName_, _drpPolicyARN = pPolicyARN_}----- | The name (friendly name, not ARN) of the IAM role to detach the policy from. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--drpRoleName :: Lens' DetachRolePolicy Text-drpRoleName = lens _drpRoleName (\ s a -> s{_drpRoleName = a})---- | The Amazon Resource Name (ARN) of the IAM policy you want to detach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-drpPolicyARN :: Lens' DetachRolePolicy Text-drpPolicyARN = lens _drpPolicyARN (\ s a -> s{_drpPolicyARN = a})--instance AWSRequest DetachRolePolicy where- type Rs DetachRolePolicy = DetachRolePolicyResponse- request = postQuery iam- response = receiveNull DetachRolePolicyResponse'--instance Hashable DetachRolePolicy where--instance NFData DetachRolePolicy where--instance ToHeaders DetachRolePolicy where- toHeaders = const mempty--instance ToPath DetachRolePolicy where- toPath = const "/"--instance ToQuery DetachRolePolicy where- toQuery DetachRolePolicy'{..}- = mconcat- ["Action" =: ("DetachRolePolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _drpRoleName,- "PolicyArn" =: _drpPolicyARN]---- | /See:/ 'detachRolePolicyResponse' smart constructor.-data DetachRolePolicyResponse =- DetachRolePolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DetachRolePolicyResponse' with the minimum fields required to make a request.----detachRolePolicyResponse- :: DetachRolePolicyResponse-detachRolePolicyResponse = DetachRolePolicyResponse'---instance NFData DetachRolePolicyResponse where
− gen/Network/AWS/IAM/DetachUserPolicy.hs
@@ -1,112 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.DetachUserPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Removes the specified managed policy from the specified user.--------- A user can also have inline policies embedded with it. To delete an inline policy, use the 'DeleteUserPolicy' API. For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.DetachUserPolicy- (- -- * Creating a Request- detachUserPolicy- , DetachUserPolicy- -- * Request Lenses- , dUserName- , dPolicyARN-- -- * Destructuring the Response- , detachUserPolicyResponse- , DetachUserPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'detachUserPolicy' smart constructor.-data DetachUserPolicy = DetachUserPolicy'- { _dUserName :: !Text- , _dPolicyARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DetachUserPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dUserName' - The name (friendly name, not ARN) of the IAM user to detach the policy from. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'dPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy you want to detach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-detachUserPolicy- :: Text -- ^ 'dUserName'- -> Text -- ^ 'dPolicyARN'- -> DetachUserPolicy-detachUserPolicy pUserName_ pPolicyARN_ =- DetachUserPolicy' {_dUserName = pUserName_, _dPolicyARN = pPolicyARN_}----- | The name (friendly name, not ARN) of the IAM user to detach the policy from. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--dUserName :: Lens' DetachUserPolicy Text-dUserName = lens _dUserName (\ s a -> s{_dUserName = a})---- | The Amazon Resource Name (ARN) of the IAM policy you want to detach. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-dPolicyARN :: Lens' DetachUserPolicy Text-dPolicyARN = lens _dPolicyARN (\ s a -> s{_dPolicyARN = a})--instance AWSRequest DetachUserPolicy where- type Rs DetachUserPolicy = DetachUserPolicyResponse- request = postQuery iam- response = receiveNull DetachUserPolicyResponse'--instance Hashable DetachUserPolicy where--instance NFData DetachUserPolicy where--instance ToHeaders DetachUserPolicy where- toHeaders = const mempty--instance ToPath DetachUserPolicy where- toPath = const "/"--instance ToQuery DetachUserPolicy where- toQuery DetachUserPolicy'{..}- = mconcat- ["Action" =: ("DetachUserPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _dUserName, "PolicyArn" =: _dPolicyARN]---- | /See:/ 'detachUserPolicyResponse' smart constructor.-data DetachUserPolicyResponse =- DetachUserPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DetachUserPolicyResponse' with the minimum fields required to make a request.----detachUserPolicyResponse- :: DetachUserPolicyResponse-detachUserPolicyResponse = DetachUserPolicyResponse'---instance NFData DetachUserPolicyResponse where
− gen/Network/AWS/IAM/EnableMFADevice.hs
@@ -1,136 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.EnableMFADevice--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Enables the specified MFA device and associates it with the specified IAM user. When enabled, the MFA device is required for every subsequent login by the IAM user associated with the device.-------module Network.AWS.IAM.EnableMFADevice- (- -- * Creating a Request- enableMFADevice- , EnableMFADevice- -- * Request Lenses- , emdUserName- , emdSerialNumber- , emdAuthenticationCode1- , emdAuthenticationCode2-- -- * Destructuring the Response- , enableMFADeviceResponse- , EnableMFADeviceResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'enableMFADevice' smart constructor.-data EnableMFADevice = EnableMFADevice'- { _emdUserName :: !Text- , _emdSerialNumber :: !Text- , _emdAuthenticationCode1 :: !Text- , _emdAuthenticationCode2 :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'EnableMFADevice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'emdUserName' - The name of the IAM user for whom you want to enable the MFA device. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'emdSerialNumber' - The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@:/------- * 'emdAuthenticationCode1' - An authentication code emitted by the device. The format for this parameter is a string of six digits. /Important:/ Submit your request immediately after generating the authentication codes. If you generate the codes and then wait too long to submit the request, the MFA device successfully associates with the user but the MFA device becomes out of sync. This happens because time-based one-time passwords (TOTP) expire after a short period of time. If this happens, you can <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device> .------ * 'emdAuthenticationCode2' - A subsequent authentication code emitted by the device. The format for this parameter is a string of six digits. /Important:/ Submit your request immediately after generating the authentication codes. If you generate the codes and then wait too long to submit the request, the MFA device successfully associates with the user but the MFA device becomes out of sync. This happens because time-based one-time passwords (TOTP) expire after a short period of time. If this happens, you can <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device> .-enableMFADevice- :: Text -- ^ 'emdUserName'- -> Text -- ^ 'emdSerialNumber'- -> Text -- ^ 'emdAuthenticationCode1'- -> Text -- ^ 'emdAuthenticationCode2'- -> EnableMFADevice-enableMFADevice pUserName_ pSerialNumber_ pAuthenticationCode1_ pAuthenticationCode2_ =- EnableMFADevice'- { _emdUserName = pUserName_- , _emdSerialNumber = pSerialNumber_- , _emdAuthenticationCode1 = pAuthenticationCode1_- , _emdAuthenticationCode2 = pAuthenticationCode2_- }----- | The name of the IAM user for whom you want to enable the MFA device. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--emdUserName :: Lens' EnableMFADevice Text-emdUserName = lens _emdUserName (\ s a -> s{_emdUserName = a})---- | The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: =,.@:/--emdSerialNumber :: Lens' EnableMFADevice Text-emdSerialNumber = lens _emdSerialNumber (\ s a -> s{_emdSerialNumber = a})---- | An authentication code emitted by the device. The format for this parameter is a string of six digits. /Important:/ Submit your request immediately after generating the authentication codes. If you generate the codes and then wait too long to submit the request, the MFA device successfully associates with the user but the MFA device becomes out of sync. This happens because time-based one-time passwords (TOTP) expire after a short period of time. If this happens, you can <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device> .-emdAuthenticationCode1 :: Lens' EnableMFADevice Text-emdAuthenticationCode1 = lens _emdAuthenticationCode1 (\ s a -> s{_emdAuthenticationCode1 = a})---- | A subsequent authentication code emitted by the device. The format for this parameter is a string of six digits. /Important:/ Submit your request immediately after generating the authentication codes. If you generate the codes and then wait too long to submit the request, the MFA device successfully associates with the user but the MFA device becomes out of sync. This happens because time-based one-time passwords (TOTP) expire after a short period of time. If this happens, you can <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_sync.html resync the device> .-emdAuthenticationCode2 :: Lens' EnableMFADevice Text-emdAuthenticationCode2 = lens _emdAuthenticationCode2 (\ s a -> s{_emdAuthenticationCode2 = a})--instance AWSRequest EnableMFADevice where- type Rs EnableMFADevice = EnableMFADeviceResponse- request = postQuery iam- response = receiveNull EnableMFADeviceResponse'--instance Hashable EnableMFADevice where--instance NFData EnableMFADevice where--instance ToHeaders EnableMFADevice where- toHeaders = const mempty--instance ToPath EnableMFADevice where- toPath = const "/"--instance ToQuery EnableMFADevice where- toQuery EnableMFADevice'{..}- = mconcat- ["Action" =: ("EnableMFADevice" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _emdUserName,- "SerialNumber" =: _emdSerialNumber,- "AuthenticationCode1" =: _emdAuthenticationCode1,- "AuthenticationCode2" =: _emdAuthenticationCode2]---- | /See:/ 'enableMFADeviceResponse' smart constructor.-data EnableMFADeviceResponse =- EnableMFADeviceResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'EnableMFADeviceResponse' with the minimum fields required to make a request.----enableMFADeviceResponse- :: EnableMFADeviceResponse-enableMFADeviceResponse = EnableMFADeviceResponse'---instance NFData EnableMFADeviceResponse where
− gen/Network/AWS/IAM/GenerateCredentialReport.hs
@@ -1,133 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GenerateCredentialReport--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Generates a credential report for the AWS account. For more information about the credential report, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Getting Credential Reports> in the /IAM User Guide/ .-------module Network.AWS.IAM.GenerateCredentialReport- (- -- * Creating a Request- generateCredentialReport- , GenerateCredentialReport-- -- * Destructuring the Response- , generateCredentialReportResponse- , GenerateCredentialReportResponse- -- * Response Lenses- , gcrrsState- , gcrrsDescription- , gcrrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'generateCredentialReport' smart constructor.-data GenerateCredentialReport =- GenerateCredentialReport'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GenerateCredentialReport' with the minimum fields required to make a request.----generateCredentialReport- :: GenerateCredentialReport-generateCredentialReport = GenerateCredentialReport'---instance AWSRequest GenerateCredentialReport where- type Rs GenerateCredentialReport =- GenerateCredentialReportResponse- request = postQuery iam- response- = receiveXMLWrapper "GenerateCredentialReportResult"- (\ s h x ->- GenerateCredentialReportResponse' <$>- (x .@? "State") <*> (x .@? "Description") <*>- (pure (fromEnum s)))--instance Hashable GenerateCredentialReport where--instance NFData GenerateCredentialReport where--instance ToHeaders GenerateCredentialReport where- toHeaders = const mempty--instance ToPath GenerateCredentialReport where- toPath = const "/"--instance ToQuery GenerateCredentialReport where- toQuery- = const- (mconcat- ["Action" =:- ("GenerateCredentialReport" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString)])---- | Contains the response to a successful 'GenerateCredentialReport' request.------------ /See:/ 'generateCredentialReportResponse' smart constructor.-data GenerateCredentialReportResponse = GenerateCredentialReportResponse'- { _gcrrsState :: !(Maybe ReportStateType)- , _gcrrsDescription :: !(Maybe Text)- , _gcrrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GenerateCredentialReportResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gcrrsState' - Information about the state of the credential report.------ * 'gcrrsDescription' - Information about the credential report.------ * 'gcrrsResponseStatus' - -- | The response status code.-generateCredentialReportResponse- :: Int -- ^ 'gcrrsResponseStatus'- -> GenerateCredentialReportResponse-generateCredentialReportResponse pResponseStatus_ =- GenerateCredentialReportResponse'- { _gcrrsState = Nothing- , _gcrrsDescription = Nothing- , _gcrrsResponseStatus = pResponseStatus_- }----- | Information about the state of the credential report.-gcrrsState :: Lens' GenerateCredentialReportResponse (Maybe ReportStateType)-gcrrsState = lens _gcrrsState (\ s a -> s{_gcrrsState = a})---- | Information about the credential report.-gcrrsDescription :: Lens' GenerateCredentialReportResponse (Maybe Text)-gcrrsDescription = lens _gcrrsDescription (\ s a -> s{_gcrrsDescription = a})---- | -- | The response status code.-gcrrsResponseStatus :: Lens' GenerateCredentialReportResponse Int-gcrrsResponseStatus = lens _gcrrsResponseStatus (\ s a -> s{_gcrrsResponseStatus = a})--instance NFData GenerateCredentialReportResponse- where
− gen/Network/AWS/IAM/GetAccessKeyLastUsed.hs
@@ -1,142 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetAccessKeyLastUsed--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about when the specified access key was last used. The information includes the date and time of last use, along with the AWS service and region that were specified in the last request made with that key.-------module Network.AWS.IAM.GetAccessKeyLastUsed- (- -- * Creating a Request- getAccessKeyLastUsed- , GetAccessKeyLastUsed- -- * Request Lenses- , gakluAccessKeyId-- -- * Destructuring the Response- , getAccessKeyLastUsedResponse- , GetAccessKeyLastUsedResponse- -- * Response Lenses- , gaklursUserName- , gaklursAccessKeyLastUsed- , gaklursResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getAccessKeyLastUsed' smart constructor.-newtype GetAccessKeyLastUsed = GetAccessKeyLastUsed'- { _gakluAccessKeyId :: AccessKey- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetAccessKeyLastUsed' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gakluAccessKeyId' - The identifier of an access key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-getAccessKeyLastUsed- :: AccessKey -- ^ 'gakluAccessKeyId'- -> GetAccessKeyLastUsed-getAccessKeyLastUsed pAccessKeyId_ =- GetAccessKeyLastUsed' {_gakluAccessKeyId = pAccessKeyId_}----- | The identifier of an access key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-gakluAccessKeyId :: Lens' GetAccessKeyLastUsed AccessKey-gakluAccessKeyId = lens _gakluAccessKeyId (\ s a -> s{_gakluAccessKeyId = a})--instance AWSRequest GetAccessKeyLastUsed where- type Rs GetAccessKeyLastUsed =- GetAccessKeyLastUsedResponse- request = postQuery iam- response- = receiveXMLWrapper "GetAccessKeyLastUsedResult"- (\ s h x ->- GetAccessKeyLastUsedResponse' <$>- (x .@? "UserName") <*> (x .@? "AccessKeyLastUsed")- <*> (pure (fromEnum s)))--instance Hashable GetAccessKeyLastUsed where--instance NFData GetAccessKeyLastUsed where--instance ToHeaders GetAccessKeyLastUsed where- toHeaders = const mempty--instance ToPath GetAccessKeyLastUsed where- toPath = const "/"--instance ToQuery GetAccessKeyLastUsed where- toQuery GetAccessKeyLastUsed'{..}- = mconcat- ["Action" =: ("GetAccessKeyLastUsed" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "AccessKeyId" =: _gakluAccessKeyId]---- | Contains the response to a successful 'GetAccessKeyLastUsed' request. It is also returned as a member of the 'AccessKeyMetaData' structure returned by the 'ListAccessKeys' action.------------ /See:/ 'getAccessKeyLastUsedResponse' smart constructor.-data GetAccessKeyLastUsedResponse = GetAccessKeyLastUsedResponse'- { _gaklursUserName :: !(Maybe Text)- , _gaklursAccessKeyLastUsed :: !(Maybe AccessKeyLastUsed)- , _gaklursResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetAccessKeyLastUsedResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gaklursUserName' - The name of the AWS IAM user that owns this access key.------ * 'gaklursAccessKeyLastUsed' - Contains information about the last time the access key was used.------ * 'gaklursResponseStatus' - -- | The response status code.-getAccessKeyLastUsedResponse- :: Int -- ^ 'gaklursResponseStatus'- -> GetAccessKeyLastUsedResponse-getAccessKeyLastUsedResponse pResponseStatus_ =- GetAccessKeyLastUsedResponse'- { _gaklursUserName = Nothing- , _gaklursAccessKeyLastUsed = Nothing- , _gaklursResponseStatus = pResponseStatus_- }----- | The name of the AWS IAM user that owns this access key.-gaklursUserName :: Lens' GetAccessKeyLastUsedResponse (Maybe Text)-gaklursUserName = lens _gaklursUserName (\ s a -> s{_gaklursUserName = a})---- | Contains information about the last time the access key was used.-gaklursAccessKeyLastUsed :: Lens' GetAccessKeyLastUsedResponse (Maybe AccessKeyLastUsed)-gaklursAccessKeyLastUsed = lens _gaklursAccessKeyLastUsed (\ s a -> s{_gaklursAccessKeyLastUsed = a})---- | -- | The response status code.-gaklursResponseStatus :: Lens' GetAccessKeyLastUsedResponse Int-gaklursResponseStatus = lens _gaklursResponseStatus (\ s a -> s{_gaklursResponseStatus = a})--instance NFData GetAccessKeyLastUsedResponse where
− gen/Network/AWS/IAM/GetAccountAuthorizationDetails.hs
@@ -1,228 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetAccountAuthorizationDetails--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about all IAM users, groups, roles, and policies in your AWS account, including their relationships to one another. Use this API to obtain a snapshot of the configuration of IAM permissions (users, groups, roles, and policies) in your account.--------- You can optionally filter the results using the @Filter@ parameter. You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.GetAccountAuthorizationDetails- (- -- * Creating a Request- getAccountAuthorizationDetails- , GetAccountAuthorizationDetails- -- * Request Lenses- , gaadMarker- , gaadMaxItems- , gaadFilter-- -- * Destructuring the Response- , getAccountAuthorizationDetailsResponse- , GetAccountAuthorizationDetailsResponse- -- * Response Lenses- , gaadrsRoleDetailList- , gaadrsGroupDetailList- , gaadrsUserDetailList- , gaadrsMarker- , gaadrsIsTruncated- , gaadrsPolicies- , gaadrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getAccountAuthorizationDetails' smart constructor.-data GetAccountAuthorizationDetails = GetAccountAuthorizationDetails'- { _gaadMarker :: !(Maybe Text)- , _gaadMaxItems :: !(Maybe Nat)- , _gaadFilter :: !(Maybe [EntityType])- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetAccountAuthorizationDetails' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gaadMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'gaadMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'gaadFilter' - A list of entity types used to filter the results. Only the entities that match the types you specify are included in the output. Use the value @LocalManagedPolicy@ to include customer managed policies. The format for this parameter is a comma-separated (if more than one) list of strings. Each string value in the list must be one of the valid values listed below.-getAccountAuthorizationDetails- :: GetAccountAuthorizationDetails-getAccountAuthorizationDetails =- GetAccountAuthorizationDetails'- {_gaadMarker = Nothing, _gaadMaxItems = Nothing, _gaadFilter = Nothing}----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-gaadMarker :: Lens' GetAccountAuthorizationDetails (Maybe Text)-gaadMarker = lens _gaadMarker (\ s a -> s{_gaadMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-gaadMaxItems :: Lens' GetAccountAuthorizationDetails (Maybe Natural)-gaadMaxItems = lens _gaadMaxItems (\ s a -> s{_gaadMaxItems = a}) . mapping _Nat---- | A list of entity types used to filter the results. Only the entities that match the types you specify are included in the output. Use the value @LocalManagedPolicy@ to include customer managed policies. The format for this parameter is a comma-separated (if more than one) list of strings. Each string value in the list must be one of the valid values listed below.-gaadFilter :: Lens' GetAccountAuthorizationDetails [EntityType]-gaadFilter = lens _gaadFilter (\ s a -> s{_gaadFilter = a}) . _Default . _Coerce--instance AWSPager GetAccountAuthorizationDetails- where- page rq rs- | stop (rs ^. gaadrsIsTruncated) = Nothing- | isNothing (rs ^. gaadrsMarker) = Nothing- | otherwise =- Just $ rq & gaadMarker .~ rs ^. gaadrsMarker--instance AWSRequest GetAccountAuthorizationDetails- where- type Rs GetAccountAuthorizationDetails =- GetAccountAuthorizationDetailsResponse- request = postQuery iam- response- = receiveXMLWrapper- "GetAccountAuthorizationDetailsResult"- (\ s h x ->- GetAccountAuthorizationDetailsResponse' <$>- (x .@? "RoleDetailList" .!@ mempty >>=- may (parseXMLList "member"))- <*>- (x .@? "GroupDetailList" .!@ mempty >>=- may (parseXMLList "member"))- <*>- (x .@? "UserDetailList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Marker")- <*> (x .@? "IsTruncated")- <*>- (x .@? "Policies" .!@ mempty >>=- may (parseXMLList "member"))- <*> (pure (fromEnum s)))--instance Hashable GetAccountAuthorizationDetails- where--instance NFData GetAccountAuthorizationDetails where--instance ToHeaders GetAccountAuthorizationDetails- where- toHeaders = const mempty--instance ToPath GetAccountAuthorizationDetails where- toPath = const "/"--instance ToQuery GetAccountAuthorizationDetails where- toQuery GetAccountAuthorizationDetails'{..}- = mconcat- ["Action" =:- ("GetAccountAuthorizationDetails" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _gaadMarker, "MaxItems" =: _gaadMaxItems,- "Filter" =:- toQuery (toQueryList "member" <$> _gaadFilter)]---- | Contains the response to a successful 'GetAccountAuthorizationDetails' request.------------ /See:/ 'getAccountAuthorizationDetailsResponse' smart constructor.-data GetAccountAuthorizationDetailsResponse = GetAccountAuthorizationDetailsResponse'- { _gaadrsRoleDetailList :: !(Maybe [RoleDetail])- , _gaadrsGroupDetailList :: !(Maybe [GroupDetail])- , _gaadrsUserDetailList :: !(Maybe [UserDetail])- , _gaadrsMarker :: !(Maybe Text)- , _gaadrsIsTruncated :: !(Maybe Bool)- , _gaadrsPolicies :: !(Maybe [ManagedPolicyDetail])- , _gaadrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetAccountAuthorizationDetailsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gaadrsRoleDetailList' - A list containing information about IAM roles.------ * 'gaadrsGroupDetailList' - A list containing information about IAM groups.------ * 'gaadrsUserDetailList' - A list containing information about IAM users.------ * 'gaadrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'gaadrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'gaadrsPolicies' - A list containing information about managed policies.------ * 'gaadrsResponseStatus' - -- | The response status code.-getAccountAuthorizationDetailsResponse- :: Int -- ^ 'gaadrsResponseStatus'- -> GetAccountAuthorizationDetailsResponse-getAccountAuthorizationDetailsResponse pResponseStatus_ =- GetAccountAuthorizationDetailsResponse'- { _gaadrsRoleDetailList = Nothing- , _gaadrsGroupDetailList = Nothing- , _gaadrsUserDetailList = Nothing- , _gaadrsMarker = Nothing- , _gaadrsIsTruncated = Nothing- , _gaadrsPolicies = Nothing- , _gaadrsResponseStatus = pResponseStatus_- }----- | A list containing information about IAM roles.-gaadrsRoleDetailList :: Lens' GetAccountAuthorizationDetailsResponse [RoleDetail]-gaadrsRoleDetailList = lens _gaadrsRoleDetailList (\ s a -> s{_gaadrsRoleDetailList = a}) . _Default . _Coerce---- | A list containing information about IAM groups.-gaadrsGroupDetailList :: Lens' GetAccountAuthorizationDetailsResponse [GroupDetail]-gaadrsGroupDetailList = lens _gaadrsGroupDetailList (\ s a -> s{_gaadrsGroupDetailList = a}) . _Default . _Coerce---- | A list containing information about IAM users.-gaadrsUserDetailList :: Lens' GetAccountAuthorizationDetailsResponse [UserDetail]-gaadrsUserDetailList = lens _gaadrsUserDetailList (\ s a -> s{_gaadrsUserDetailList = a}) . _Default . _Coerce---- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-gaadrsMarker :: Lens' GetAccountAuthorizationDetailsResponse (Maybe Text)-gaadrsMarker = lens _gaadrsMarker (\ s a -> s{_gaadrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-gaadrsIsTruncated :: Lens' GetAccountAuthorizationDetailsResponse (Maybe Bool)-gaadrsIsTruncated = lens _gaadrsIsTruncated (\ s a -> s{_gaadrsIsTruncated = a})---- | A list containing information about managed policies.-gaadrsPolicies :: Lens' GetAccountAuthorizationDetailsResponse [ManagedPolicyDetail]-gaadrsPolicies = lens _gaadrsPolicies (\ s a -> s{_gaadrsPolicies = a}) . _Default . _Coerce---- | -- | The response status code.-gaadrsResponseStatus :: Lens' GetAccountAuthorizationDetailsResponse Int-gaadrsResponseStatus = lens _gaadrsResponseStatus (\ s a -> s{_gaadrsResponseStatus = a})--instance NFData- GetAccountAuthorizationDetailsResponse- where
− gen/Network/AWS/IAM/GetAccountPasswordPolicy.hs
@@ -1,124 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetAccountPasswordPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves the password policy for the AWS account. For more information about using a password policy, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingPasswordPolicies.html Managing an IAM Password Policy> .-------module Network.AWS.IAM.GetAccountPasswordPolicy- (- -- * Creating a Request- getAccountPasswordPolicy- , GetAccountPasswordPolicy-- -- * Destructuring the Response- , getAccountPasswordPolicyResponse- , GetAccountPasswordPolicyResponse- -- * Response Lenses- , gapprsResponseStatus- , gapprsPasswordPolicy- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getAccountPasswordPolicy' smart constructor.-data GetAccountPasswordPolicy =- GetAccountPasswordPolicy'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetAccountPasswordPolicy' with the minimum fields required to make a request.----getAccountPasswordPolicy- :: GetAccountPasswordPolicy-getAccountPasswordPolicy = GetAccountPasswordPolicy'---instance AWSRequest GetAccountPasswordPolicy where- type Rs GetAccountPasswordPolicy =- GetAccountPasswordPolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "GetAccountPasswordPolicyResult"- (\ s h x ->- GetAccountPasswordPolicyResponse' <$>- (pure (fromEnum s)) <*> (x .@ "PasswordPolicy"))--instance Hashable GetAccountPasswordPolicy where--instance NFData GetAccountPasswordPolicy where--instance ToHeaders GetAccountPasswordPolicy where- toHeaders = const mempty--instance ToPath GetAccountPasswordPolicy where- toPath = const "/"--instance ToQuery GetAccountPasswordPolicy where- toQuery- = const- (mconcat- ["Action" =:- ("GetAccountPasswordPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString)])---- | Contains the response to a successful 'GetAccountPasswordPolicy' request.------------ /See:/ 'getAccountPasswordPolicyResponse' smart constructor.-data GetAccountPasswordPolicyResponse = GetAccountPasswordPolicyResponse'- { _gapprsResponseStatus :: !Int- , _gapprsPasswordPolicy :: !PasswordPolicy- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetAccountPasswordPolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gapprsResponseStatus' - -- | The response status code.------ * 'gapprsPasswordPolicy' - A structure that contains details about the account's password policy.-getAccountPasswordPolicyResponse- :: Int -- ^ 'gapprsResponseStatus'- -> PasswordPolicy -- ^ 'gapprsPasswordPolicy'- -> GetAccountPasswordPolicyResponse-getAccountPasswordPolicyResponse pResponseStatus_ pPasswordPolicy_ =- GetAccountPasswordPolicyResponse'- { _gapprsResponseStatus = pResponseStatus_- , _gapprsPasswordPolicy = pPasswordPolicy_- }----- | -- | The response status code.-gapprsResponseStatus :: Lens' GetAccountPasswordPolicyResponse Int-gapprsResponseStatus = lens _gapprsResponseStatus (\ s a -> s{_gapprsResponseStatus = a})---- | A structure that contains details about the account's password policy.-gapprsPasswordPolicy :: Lens' GetAccountPasswordPolicyResponse PasswordPolicy-gapprsPasswordPolicy = lens _gapprsPasswordPolicy (\ s a -> s{_gapprsPasswordPolicy = a})--instance NFData GetAccountPasswordPolicyResponse- where
− gen/Network/AWS/IAM/GetAccountSummary.hs
@@ -1,122 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetAccountSummary--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about IAM entity usage and IAM quotas in the AWS account.--------- For information about limitations on IAM entities, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .----module Network.AWS.IAM.GetAccountSummary- (- -- * Creating a Request- getAccountSummary- , GetAccountSummary-- -- * Destructuring the Response- , getAccountSummaryResponse- , GetAccountSummaryResponse- -- * Response Lenses- , gasrsSummaryMap- , gasrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getAccountSummary' smart constructor.-data GetAccountSummary =- GetAccountSummary'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetAccountSummary' with the minimum fields required to make a request.----getAccountSummary- :: GetAccountSummary-getAccountSummary = GetAccountSummary'---instance AWSRequest GetAccountSummary where- type Rs GetAccountSummary = GetAccountSummaryResponse- request = postQuery iam- response- = receiveXMLWrapper "GetAccountSummaryResult"- (\ s h x ->- GetAccountSummaryResponse' <$>- (x .@? "SummaryMap" .!@ mempty >>=- may (parseXMLMap "entry" "key" "value"))- <*> (pure (fromEnum s)))--instance Hashable GetAccountSummary where--instance NFData GetAccountSummary where--instance ToHeaders GetAccountSummary where- toHeaders = const mempty--instance ToPath GetAccountSummary where- toPath = const "/"--instance ToQuery GetAccountSummary where- toQuery- = const- (mconcat- ["Action" =: ("GetAccountSummary" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString)])---- | Contains the response to a successful 'GetAccountSummary' request.------------ /See:/ 'getAccountSummaryResponse' smart constructor.-data GetAccountSummaryResponse = GetAccountSummaryResponse'- { _gasrsSummaryMap :: !(Maybe (Map SummaryKeyType Int))- , _gasrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetAccountSummaryResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gasrsSummaryMap' - A set of key value pairs containing information about IAM entity usage and IAM quotas.------ * 'gasrsResponseStatus' - -- | The response status code.-getAccountSummaryResponse- :: Int -- ^ 'gasrsResponseStatus'- -> GetAccountSummaryResponse-getAccountSummaryResponse pResponseStatus_ =- GetAccountSummaryResponse'- {_gasrsSummaryMap = Nothing, _gasrsResponseStatus = pResponseStatus_}----- | A set of key value pairs containing information about IAM entity usage and IAM quotas.-gasrsSummaryMap :: Lens' GetAccountSummaryResponse (HashMap SummaryKeyType Int)-gasrsSummaryMap = lens _gasrsSummaryMap (\ s a -> s{_gasrsSummaryMap = a}) . _Default . _Map---- | -- | The response status code.-gasrsResponseStatus :: Lens' GetAccountSummaryResponse Int-gasrsResponseStatus = lens _gasrsResponseStatus (\ s a -> s{_gasrsResponseStatus = a})--instance NFData GetAccountSummaryResponse where
− gen/Network/AWS/IAM/GetContextKeysForCustomPolicy.hs
@@ -1,97 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetContextKeysForCustomPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Gets a list of all of the context keys referenced in the input policies. The policies are supplied as a list of one or more strings. To get the context keys from policies associated with an IAM user, group, or role, use 'GetContextKeysForPrincipalPolicy' .--------- Context keys are variables maintained by AWS and its services that provide details about the context of an API query request. Context keys can be evaluated by testing against a value specified in an IAM policy. Use @GetContextKeysForCustomPolicy@ to understand what key names and values you must supply when you call 'SimulateCustomPolicy' . Note that all parameters are shown in unencoded form here for clarity but must be URL encoded to be included as a part of a real HTML request.----module Network.AWS.IAM.GetContextKeysForCustomPolicy- (- -- * Creating a Request- getContextKeysForCustomPolicy- , GetContextKeysForCustomPolicy- -- * Request Lenses- , gckfcpPolicyInputList-- -- * Destructuring the Response- , getContextKeysForPolicyResponse- , GetContextKeysForPolicyResponse- -- * Response Lenses- , gckfpContextKeyNames- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getContextKeysForCustomPolicy' smart constructor.-newtype GetContextKeysForCustomPolicy = GetContextKeysForCustomPolicy'- { _gckfcpPolicyInputList :: [Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetContextKeysForCustomPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gckfcpPolicyInputList' - A list of policies for which you want the list of context keys referenced in those policies. Each document is specified as a string containing the complete, valid JSON text of an IAM policy. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-getContextKeysForCustomPolicy- :: GetContextKeysForCustomPolicy-getContextKeysForCustomPolicy =- GetContextKeysForCustomPolicy' {_gckfcpPolicyInputList = mempty}----- | A list of policies for which you want the list of context keys referenced in those policies. Each document is specified as a string containing the complete, valid JSON text of an IAM policy. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-gckfcpPolicyInputList :: Lens' GetContextKeysForCustomPolicy [Text]-gckfcpPolicyInputList = lens _gckfcpPolicyInputList (\ s a -> s{_gckfcpPolicyInputList = a}) . _Coerce--instance AWSRequest GetContextKeysForCustomPolicy- where- type Rs GetContextKeysForCustomPolicy =- GetContextKeysForPolicyResponse- request = postQuery iam- response- = receiveXMLWrapper- "GetContextKeysForCustomPolicyResult"- (\ s h x -> parseXML x)--instance Hashable GetContextKeysForCustomPolicy where--instance NFData GetContextKeysForCustomPolicy where--instance ToHeaders GetContextKeysForCustomPolicy- where- toHeaders = const mempty--instance ToPath GetContextKeysForCustomPolicy where- toPath = const "/"--instance ToQuery GetContextKeysForCustomPolicy where- toQuery GetContextKeysForCustomPolicy'{..}- = mconcat- ["Action" =:- ("GetContextKeysForCustomPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PolicyInputList" =:- toQueryList "member" _gckfcpPolicyInputList]
− gen/Network/AWS/IAM/GetContextKeysForPrincipalPolicy.hs
@@ -1,119 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetContextKeysForPrincipalPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Gets a list of all of the context keys referenced in all the IAM policies that are attached to the specified IAM entity. The entity can be an IAM user, group, or role. If you specify a user, then the request also includes all of the policies attached to groups that the user is a member of.--------- You can optionally include a list of one or more additional policies, specified as strings. If you want to include /only/ a list of policies by string, use 'GetContextKeysForCustomPolicy' instead.------ __Note:__ This API discloses information about the permissions granted to other users. If you do not want users to see other user's permissions, then consider allowing them to use 'GetContextKeysForCustomPolicy' instead.------ Context keys are variables maintained by AWS and its services that provide details about the context of an API query request. Context keys can be evaluated by testing against a value in an IAM policy. Use 'GetContextKeysForPrincipalPolicy' to understand what key names and values you must supply when you call 'SimulatePrincipalPolicy' .----module Network.AWS.IAM.GetContextKeysForPrincipalPolicy- (- -- * Creating a Request- getContextKeysForPrincipalPolicy- , GetContextKeysForPrincipalPolicy- -- * Request Lenses- , gckfppPolicyInputList- , gckfppPolicySourceARN-- -- * Destructuring the Response- , getContextKeysForPolicyResponse- , GetContextKeysForPolicyResponse- -- * Response Lenses- , gckfpContextKeyNames- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getContextKeysForPrincipalPolicy' smart constructor.-data GetContextKeysForPrincipalPolicy = GetContextKeysForPrincipalPolicy'- { _gckfppPolicyInputList :: !(Maybe [Text])- , _gckfppPolicySourceARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetContextKeysForPrincipalPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gckfppPolicyInputList' - An optional list of additional policies for which you want the list of context keys that are referenced. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)------ * 'gckfppPolicySourceARN' - The ARN of a user, group, or role whose policies contain the context keys that you want listed. If you specify a user, the list includes context keys that are found in all policies that are attached to the user. The list also includes all groups that the user is a member of. If you pick a group or a role, then it includes only those context keys that are found in policies attached to that entity. Note that all parameters are shown in unencoded form here for clarity, but must be URL encoded to be included as a part of a real HTML request. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-getContextKeysForPrincipalPolicy- :: Text -- ^ 'gckfppPolicySourceARN'- -> GetContextKeysForPrincipalPolicy-getContextKeysForPrincipalPolicy pPolicySourceARN_ =- GetContextKeysForPrincipalPolicy'- { _gckfppPolicyInputList = Nothing- , _gckfppPolicySourceARN = pPolicySourceARN_- }----- | An optional list of additional policies for which you want the list of context keys that are referenced. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-gckfppPolicyInputList :: Lens' GetContextKeysForPrincipalPolicy [Text]-gckfppPolicyInputList = lens _gckfppPolicyInputList (\ s a -> s{_gckfppPolicyInputList = a}) . _Default . _Coerce---- | The ARN of a user, group, or role whose policies contain the context keys that you want listed. If you specify a user, the list includes context keys that are found in all policies that are attached to the user. The list also includes all groups that the user is a member of. If you pick a group or a role, then it includes only those context keys that are found in policies attached to that entity. Note that all parameters are shown in unencoded form here for clarity, but must be URL encoded to be included as a part of a real HTML request. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-gckfppPolicySourceARN :: Lens' GetContextKeysForPrincipalPolicy Text-gckfppPolicySourceARN = lens _gckfppPolicySourceARN (\ s a -> s{_gckfppPolicySourceARN = a})--instance AWSRequest GetContextKeysForPrincipalPolicy- where- type Rs GetContextKeysForPrincipalPolicy =- GetContextKeysForPolicyResponse- request = postQuery iam- response- = receiveXMLWrapper- "GetContextKeysForPrincipalPolicyResult"- (\ s h x -> parseXML x)--instance Hashable GetContextKeysForPrincipalPolicy- where--instance NFData GetContextKeysForPrincipalPolicy- where--instance ToHeaders GetContextKeysForPrincipalPolicy- where- toHeaders = const mempty--instance ToPath GetContextKeysForPrincipalPolicy- where- toPath = const "/"--instance ToQuery GetContextKeysForPrincipalPolicy- where- toQuery GetContextKeysForPrincipalPolicy'{..}- = mconcat- ["Action" =:- ("GetContextKeysForPrincipalPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PolicyInputList" =:- toQuery- (toQueryList "member" <$> _gckfppPolicyInputList),- "PolicySourceArn" =: _gckfppPolicySourceARN]
− gen/Network/AWS/IAM/GetCredentialReport.hs
@@ -1,141 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetCredentialReport--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves a credential report for the AWS account. For more information about the credential report, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Getting Credential Reports> in the /IAM User Guide/ .-------module Network.AWS.IAM.GetCredentialReport- (- -- * Creating a Request- getCredentialReport- , GetCredentialReport-- -- * Destructuring the Response- , getCredentialReportResponse- , GetCredentialReportResponse- -- * Response Lenses- , grsContent- , grsGeneratedTime- , grsReportFormat- , grsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getCredentialReport' smart constructor.-data GetCredentialReport =- GetCredentialReport'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetCredentialReport' with the minimum fields required to make a request.----getCredentialReport- :: GetCredentialReport-getCredentialReport = GetCredentialReport'---instance AWSRequest GetCredentialReport where- type Rs GetCredentialReport =- GetCredentialReportResponse- request = postQuery iam- response- = receiveXMLWrapper "GetCredentialReportResult"- (\ s h x ->- GetCredentialReportResponse' <$>- (x .@? "Content") <*> (x .@? "GeneratedTime") <*>- (x .@? "ReportFormat")- <*> (pure (fromEnum s)))--instance Hashable GetCredentialReport where--instance NFData GetCredentialReport where--instance ToHeaders GetCredentialReport where- toHeaders = const mempty--instance ToPath GetCredentialReport where- toPath = const "/"--instance ToQuery GetCredentialReport where- toQuery- = const- (mconcat- ["Action" =: ("GetCredentialReport" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString)])---- | Contains the response to a successful 'GetCredentialReport' request.------------ /See:/ 'getCredentialReportResponse' smart constructor.-data GetCredentialReportResponse = GetCredentialReportResponse'- { _grsContent :: !(Maybe Base64)- , _grsGeneratedTime :: !(Maybe ISO8601)- , _grsReportFormat :: !(Maybe ReportFormatType)- , _grsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetCredentialReportResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'grsContent' - Contains the credential report. The report is Base64-encoded.-- /Note:/ This 'Lens' automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This 'Lens' accepts and returns only raw unencoded data.------ * 'grsGeneratedTime' - The date and time when the credential report was created, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> .------ * 'grsReportFormat' - The format (MIME type) of the credential report.------ * 'grsResponseStatus' - -- | The response status code.-getCredentialReportResponse- :: Int -- ^ 'grsResponseStatus'- -> GetCredentialReportResponse-getCredentialReportResponse pResponseStatus_ =- GetCredentialReportResponse'- { _grsContent = Nothing- , _grsGeneratedTime = Nothing- , _grsReportFormat = Nothing- , _grsResponseStatus = pResponseStatus_- }----- | Contains the credential report. The report is Base64-encoded.-- /Note:/ This 'Lens' automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This 'Lens' accepts and returns only raw unencoded data.-grsContent :: Lens' GetCredentialReportResponse (Maybe ByteString)-grsContent = lens _grsContent (\ s a -> s{_grsContent = a}) . mapping _Base64---- | The date and time when the credential report was created, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> .-grsGeneratedTime :: Lens' GetCredentialReportResponse (Maybe UTCTime)-grsGeneratedTime = lens _grsGeneratedTime (\ s a -> s{_grsGeneratedTime = a}) . mapping _Time---- | The format (MIME type) of the credential report.-grsReportFormat :: Lens' GetCredentialReportResponse (Maybe ReportFormatType)-grsReportFormat = lens _grsReportFormat (\ s a -> s{_grsReportFormat = a})---- | -- | The response status code.-grsResponseStatus :: Lens' GetCredentialReportResponse Int-grsResponseStatus = lens _grsResponseStatus (\ s a -> s{_grsResponseStatus = a})--instance NFData GetCredentialReportResponse where
− gen/Network/AWS/IAM/GetGroup.hs
@@ -1,191 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetGroup--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Returns a list of IAM users that are in the specified IAM group. You can paginate the results using the @MaxItems@ and @Marker@ parameters.------------ This operation returns paginated results.-module Network.AWS.IAM.GetGroup- (- -- * Creating a Request- getGroup- , GetGroup- -- * Request Lenses- , ggMarker- , ggMaxItems- , ggGroupName-- -- * Destructuring the Response- , getGroupResponse- , GetGroupResponse- -- * Response Lenses- , ggrsMarker- , ggrsIsTruncated- , ggrsResponseStatus- , ggrsGroup- , ggrsUsers- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getGroup' smart constructor.-data GetGroup = GetGroup'- { _ggMarker :: !(Maybe Text)- , _ggMaxItems :: !(Maybe Nat)- , _ggGroupName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetGroup' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ggMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'ggMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'ggGroupName' - The name of the group. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getGroup- :: Text -- ^ 'ggGroupName'- -> GetGroup-getGroup pGroupName_ =- GetGroup'- {_ggMarker = Nothing, _ggMaxItems = Nothing, _ggGroupName = pGroupName_}----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-ggMarker :: Lens' GetGroup (Maybe Text)-ggMarker = lens _ggMarker (\ s a -> s{_ggMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-ggMaxItems :: Lens' GetGroup (Maybe Natural)-ggMaxItems = lens _ggMaxItems (\ s a -> s{_ggMaxItems = a}) . mapping _Nat---- | The name of the group. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--ggGroupName :: Lens' GetGroup Text-ggGroupName = lens _ggGroupName (\ s a -> s{_ggGroupName = a})--instance AWSPager GetGroup where- page rq rs- | stop (rs ^. ggrsIsTruncated) = Nothing- | isNothing (rs ^. ggrsMarker) = Nothing- | otherwise =- Just $ rq & ggMarker .~ rs ^. ggrsMarker--instance AWSRequest GetGroup where- type Rs GetGroup = GetGroupResponse- request = postQuery iam- response- = receiveXMLWrapper "GetGroupResult"- (\ s h x ->- GetGroupResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*> (x .@ "Group")- <*>- (x .@? "Users" .!@ mempty >>= parseXMLList "member"))--instance Hashable GetGroup where--instance NFData GetGroup where--instance ToHeaders GetGroup where- toHeaders = const mempty--instance ToPath GetGroup where- toPath = const "/"--instance ToQuery GetGroup where- toQuery GetGroup'{..}- = mconcat- ["Action" =: ("GetGroup" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _ggMarker, "MaxItems" =: _ggMaxItems,- "GroupName" =: _ggGroupName]---- | Contains the response to a successful 'GetGroup' request.------------ /See:/ 'getGroupResponse' smart constructor.-data GetGroupResponse = GetGroupResponse'- { _ggrsMarker :: !(Maybe Text)- , _ggrsIsTruncated :: !(Maybe Bool)- , _ggrsResponseStatus :: !Int- , _ggrsGroup :: !Group- , _ggrsUsers :: ![User]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetGroupResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ggrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'ggrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'ggrsResponseStatus' - -- | The response status code.------ * 'ggrsGroup' - A structure that contains details about the group.------ * 'ggrsUsers' - A list of users in the group.-getGroupResponse- :: Int -- ^ 'ggrsResponseStatus'- -> Group -- ^ 'ggrsGroup'- -> GetGroupResponse-getGroupResponse pResponseStatus_ pGroup_ =- GetGroupResponse'- { _ggrsMarker = Nothing- , _ggrsIsTruncated = Nothing- , _ggrsResponseStatus = pResponseStatus_- , _ggrsGroup = pGroup_- , _ggrsUsers = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-ggrsMarker :: Lens' GetGroupResponse (Maybe Text)-ggrsMarker = lens _ggrsMarker (\ s a -> s{_ggrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-ggrsIsTruncated :: Lens' GetGroupResponse (Maybe Bool)-ggrsIsTruncated = lens _ggrsIsTruncated (\ s a -> s{_ggrsIsTruncated = a})---- | -- | The response status code.-ggrsResponseStatus :: Lens' GetGroupResponse Int-ggrsResponseStatus = lens _ggrsResponseStatus (\ s a -> s{_ggrsResponseStatus = a})---- | A structure that contains details about the group.-ggrsGroup :: Lens' GetGroupResponse Group-ggrsGroup = lens _ggrsGroup (\ s a -> s{_ggrsGroup = a})---- | A list of users in the group.-ggrsUsers :: Lens' GetGroupResponse [User]-ggrsUsers = lens _ggrsUsers (\ s a -> s{_ggrsUsers = a}) . _Coerce--instance NFData GetGroupResponse where
− gen/Network/AWS/IAM/GetGroupPolicy.hs
@@ -1,168 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetGroupPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves the specified inline policy document that is embedded in the specified IAM group.--------- An IAM group can also have managed policies attached to it. To retrieve a managed policy document that is attached to a group, use 'GetPolicy' to determine the policy's default version, then use 'GetPolicyVersion' to retrieve the policy document.------ For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.GetGroupPolicy- (- -- * Creating a Request- getGroupPolicy- , GetGroupPolicy- -- * Request Lenses- , ggpGroupName- , ggpPolicyName-- -- * Destructuring the Response- , getGroupPolicyResponse- , GetGroupPolicyResponse- -- * Response Lenses- , ggprsResponseStatus- , ggprsGroupName- , ggprsPolicyName- , ggprsPolicyDocument- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getGroupPolicy' smart constructor.-data GetGroupPolicy = GetGroupPolicy'- { _ggpGroupName :: !Text- , _ggpPolicyName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetGroupPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ggpGroupName' - The name of the group the policy is associated with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'ggpPolicyName' - The name of the policy document to get. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getGroupPolicy- :: Text -- ^ 'ggpGroupName'- -> Text -- ^ 'ggpPolicyName'- -> GetGroupPolicy-getGroupPolicy pGroupName_ pPolicyName_ =- GetGroupPolicy' {_ggpGroupName = pGroupName_, _ggpPolicyName = pPolicyName_}----- | The name of the group the policy is associated with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--ggpGroupName :: Lens' GetGroupPolicy Text-ggpGroupName = lens _ggpGroupName (\ s a -> s{_ggpGroupName = a})---- | The name of the policy document to get. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--ggpPolicyName :: Lens' GetGroupPolicy Text-ggpPolicyName = lens _ggpPolicyName (\ s a -> s{_ggpPolicyName = a})--instance AWSRequest GetGroupPolicy where- type Rs GetGroupPolicy = GetGroupPolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "GetGroupPolicyResult"- (\ s h x ->- GetGroupPolicyResponse' <$>- (pure (fromEnum s)) <*> (x .@ "GroupName") <*>- (x .@ "PolicyName")- <*> (x .@ "PolicyDocument"))--instance Hashable GetGroupPolicy where--instance NFData GetGroupPolicy where--instance ToHeaders GetGroupPolicy where- toHeaders = const mempty--instance ToPath GetGroupPolicy where- toPath = const "/"--instance ToQuery GetGroupPolicy where- toQuery GetGroupPolicy'{..}- = mconcat- ["Action" =: ("GetGroupPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "GroupName" =: _ggpGroupName,- "PolicyName" =: _ggpPolicyName]---- | Contains the response to a successful 'GetGroupPolicy' request.------------ /See:/ 'getGroupPolicyResponse' smart constructor.-data GetGroupPolicyResponse = GetGroupPolicyResponse'- { _ggprsResponseStatus :: !Int- , _ggprsGroupName :: !Text- , _ggprsPolicyName :: !Text- , _ggprsPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetGroupPolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ggprsResponseStatus' - -- | The response status code.------ * 'ggprsGroupName' - The group the policy is associated with.------ * 'ggprsPolicyName' - The name of the policy.------ * 'ggprsPolicyDocument' - The policy document.-getGroupPolicyResponse- :: Int -- ^ 'ggprsResponseStatus'- -> Text -- ^ 'ggprsGroupName'- -> Text -- ^ 'ggprsPolicyName'- -> Text -- ^ 'ggprsPolicyDocument'- -> GetGroupPolicyResponse-getGroupPolicyResponse pResponseStatus_ pGroupName_ pPolicyName_ pPolicyDocument_ =- GetGroupPolicyResponse'- { _ggprsResponseStatus = pResponseStatus_- , _ggprsGroupName = pGroupName_- , _ggprsPolicyName = pPolicyName_- , _ggprsPolicyDocument = pPolicyDocument_- }----- | -- | The response status code.-ggprsResponseStatus :: Lens' GetGroupPolicyResponse Int-ggprsResponseStatus = lens _ggprsResponseStatus (\ s a -> s{_ggprsResponseStatus = a})---- | The group the policy is associated with.-ggprsGroupName :: Lens' GetGroupPolicyResponse Text-ggprsGroupName = lens _ggprsGroupName (\ s a -> s{_ggprsGroupName = a})---- | The name of the policy.-ggprsPolicyName :: Lens' GetGroupPolicyResponse Text-ggprsPolicyName = lens _ggprsPolicyName (\ s a -> s{_ggprsPolicyName = a})---- | The policy document.-ggprsPolicyDocument :: Lens' GetGroupPolicyResponse Text-ggprsPolicyDocument = lens _ggprsPolicyDocument (\ s a -> s{_ggprsPolicyDocument = a})--instance NFData GetGroupPolicyResponse where
− gen/Network/AWS/IAM/GetInstanceProfile.hs
@@ -1,133 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetInstanceProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about the specified instance profile, including the instance profile's path, GUID, ARN, and role. For more information about instance profiles, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About Instance Profiles> in the /IAM User Guide/ .-------module Network.AWS.IAM.GetInstanceProfile- (- -- * Creating a Request- getInstanceProfile- , GetInstanceProfile- -- * Request Lenses- , gipInstanceProfileName-- -- * Destructuring the Response- , getInstanceProfileResponse- , GetInstanceProfileResponse- -- * Response Lenses- , giprsResponseStatus- , giprsInstanceProfile- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getInstanceProfile' smart constructor.-newtype GetInstanceProfile = GetInstanceProfile'- { _gipInstanceProfileName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetInstanceProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gipInstanceProfileName' - The name of the instance profile to get information about. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getInstanceProfile- :: Text -- ^ 'gipInstanceProfileName'- -> GetInstanceProfile-getInstanceProfile pInstanceProfileName_ =- GetInstanceProfile' {_gipInstanceProfileName = pInstanceProfileName_}----- | The name of the instance profile to get information about. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--gipInstanceProfileName :: Lens' GetInstanceProfile Text-gipInstanceProfileName = lens _gipInstanceProfileName (\ s a -> s{_gipInstanceProfileName = a})--instance AWSRequest GetInstanceProfile where- type Rs GetInstanceProfile =- GetInstanceProfileResponse- request = postQuery iam- response- = receiveXMLWrapper "GetInstanceProfileResult"- (\ s h x ->- GetInstanceProfileResponse' <$>- (pure (fromEnum s)) <*> (x .@ "InstanceProfile"))--instance Hashable GetInstanceProfile where--instance NFData GetInstanceProfile where--instance ToHeaders GetInstanceProfile where- toHeaders = const mempty--instance ToPath GetInstanceProfile where- toPath = const "/"--instance ToQuery GetInstanceProfile where- toQuery GetInstanceProfile'{..}- = mconcat- ["Action" =: ("GetInstanceProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "InstanceProfileName" =: _gipInstanceProfileName]---- | Contains the response to a successful 'GetInstanceProfile' request.------------ /See:/ 'getInstanceProfileResponse' smart constructor.-data GetInstanceProfileResponse = GetInstanceProfileResponse'- { _giprsResponseStatus :: !Int- , _giprsInstanceProfile :: !InstanceProfile- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetInstanceProfileResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'giprsResponseStatus' - -- | The response status code.------ * 'giprsInstanceProfile' - A structure containing details about the instance profile.-getInstanceProfileResponse- :: Int -- ^ 'giprsResponseStatus'- -> InstanceProfile -- ^ 'giprsInstanceProfile'- -> GetInstanceProfileResponse-getInstanceProfileResponse pResponseStatus_ pInstanceProfile_ =- GetInstanceProfileResponse'- { _giprsResponseStatus = pResponseStatus_- , _giprsInstanceProfile = pInstanceProfile_- }----- | -- | The response status code.-giprsResponseStatus :: Lens' GetInstanceProfileResponse Int-giprsResponseStatus = lens _giprsResponseStatus (\ s a -> s{_giprsResponseStatus = a})---- | A structure containing details about the instance profile.-giprsInstanceProfile :: Lens' GetInstanceProfileResponse InstanceProfile-giprsInstanceProfile = lens _giprsInstanceProfile (\ s a -> s{_giprsInstanceProfile = a})--instance NFData GetInstanceProfileResponse where
− gen/Network/AWS/IAM/GetLoginProfile.hs
@@ -1,131 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetLoginProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves the user name and password-creation date for the specified IAM user. If the user has not been assigned a password, the operation returns a 404 (@NoSuchEntity@ ) error.-------module Network.AWS.IAM.GetLoginProfile- (- -- * Creating a Request- getLoginProfile- , GetLoginProfile- -- * Request Lenses- , glpUserName-- -- * Destructuring the Response- , getLoginProfileResponse- , GetLoginProfileResponse- -- * Response Lenses- , glprsResponseStatus- , glprsLoginProfile- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getLoginProfile' smart constructor.-newtype GetLoginProfile = GetLoginProfile'- { _glpUserName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetLoginProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'glpUserName' - The name of the user whose login profile you want to retrieve. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getLoginProfile- :: Text -- ^ 'glpUserName'- -> GetLoginProfile-getLoginProfile pUserName_ = GetLoginProfile' {_glpUserName = pUserName_}----- | The name of the user whose login profile you want to retrieve. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--glpUserName :: Lens' GetLoginProfile Text-glpUserName = lens _glpUserName (\ s a -> s{_glpUserName = a})--instance AWSRequest GetLoginProfile where- type Rs GetLoginProfile = GetLoginProfileResponse- request = postQuery iam- response- = receiveXMLWrapper "GetLoginProfileResult"- (\ s h x ->- GetLoginProfileResponse' <$>- (pure (fromEnum s)) <*> (x .@ "LoginProfile"))--instance Hashable GetLoginProfile where--instance NFData GetLoginProfile where--instance ToHeaders GetLoginProfile where- toHeaders = const mempty--instance ToPath GetLoginProfile where- toPath = const "/"--instance ToQuery GetLoginProfile where- toQuery GetLoginProfile'{..}- = mconcat- ["Action" =: ("GetLoginProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _glpUserName]---- | Contains the response to a successful 'GetLoginProfile' request.------------ /See:/ 'getLoginProfileResponse' smart constructor.-data GetLoginProfileResponse = GetLoginProfileResponse'- { _glprsResponseStatus :: !Int- , _glprsLoginProfile :: !LoginProfile- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetLoginProfileResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'glprsResponseStatus' - -- | The response status code.------ * 'glprsLoginProfile' - A structure containing the user name and password create date for the user.-getLoginProfileResponse- :: Int -- ^ 'glprsResponseStatus'- -> LoginProfile -- ^ 'glprsLoginProfile'- -> GetLoginProfileResponse-getLoginProfileResponse pResponseStatus_ pLoginProfile_ =- GetLoginProfileResponse'- { _glprsResponseStatus = pResponseStatus_- , _glprsLoginProfile = pLoginProfile_- }----- | -- | The response status code.-glprsResponseStatus :: Lens' GetLoginProfileResponse Int-glprsResponseStatus = lens _glprsResponseStatus (\ s a -> s{_glprsResponseStatus = a})---- | A structure containing the user name and password create date for the user.-glprsLoginProfile :: Lens' GetLoginProfileResponse LoginProfile-glprsLoginProfile = lens _glprsLoginProfile (\ s a -> s{_glprsLoginProfile = a})--instance NFData GetLoginProfileResponse where
− gen/Network/AWS/IAM/GetOpenIdConnectProvider.hs
@@ -1,169 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetOpenIdConnectProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Returns information about the specified OpenID Connect (OIDC) provider resource object in IAM.-------module Network.AWS.IAM.GetOpenIdConnectProvider- (- -- * Creating a Request- getOpenIdConnectProvider- , GetOpenIdConnectProvider- -- * Request Lenses- , goicpOpenIdConnectProviderARN-- -- * Destructuring the Response- , getOpenIdConnectProviderResponse- , GetOpenIdConnectProviderResponse- -- * Response Lenses- , goicprsCreateDate- , goicprsURL- , goicprsThumbprintList- , goicprsClientIdList- , goicprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getOpenIdConnectProvider' smart constructor.-newtype GetOpenIdConnectProvider = GetOpenIdConnectProvider'- { _goicpOpenIdConnectProviderARN :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetOpenIdConnectProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'goicpOpenIdConnectProviderARN' - The Amazon Resource Name (ARN) of the OIDC provider resource object in IAM to get information for. You can get a list of OIDC provider resource ARNs by using the 'ListOpenIDConnectProviders' operation. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-getOpenIdConnectProvider- :: Text -- ^ 'goicpOpenIdConnectProviderARN'- -> GetOpenIdConnectProvider-getOpenIdConnectProvider pOpenIdConnectProviderARN_ =- GetOpenIdConnectProvider'- {_goicpOpenIdConnectProviderARN = pOpenIdConnectProviderARN_}----- | The Amazon Resource Name (ARN) of the OIDC provider resource object in IAM to get information for. You can get a list of OIDC provider resource ARNs by using the 'ListOpenIDConnectProviders' operation. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-goicpOpenIdConnectProviderARN :: Lens' GetOpenIdConnectProvider Text-goicpOpenIdConnectProviderARN = lens _goicpOpenIdConnectProviderARN (\ s a -> s{_goicpOpenIdConnectProviderARN = a})--instance AWSRequest GetOpenIdConnectProvider where- type Rs GetOpenIdConnectProvider =- GetOpenIdConnectProviderResponse- request = postQuery iam- response- = receiveXMLWrapper "GetOpenIDConnectProviderResult"- (\ s h x ->- GetOpenIdConnectProviderResponse' <$>- (x .@? "CreateDate") <*> (x .@? "Url") <*>- (x .@? "ThumbprintList" .!@ mempty >>=- may (parseXMLList "member"))- <*>- (x .@? "ClientIDList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (pure (fromEnum s)))--instance Hashable GetOpenIdConnectProvider where--instance NFData GetOpenIdConnectProvider where--instance ToHeaders GetOpenIdConnectProvider where- toHeaders = const mempty--instance ToPath GetOpenIdConnectProvider where- toPath = const "/"--instance ToQuery GetOpenIdConnectProvider where- toQuery GetOpenIdConnectProvider'{..}- = mconcat- ["Action" =:- ("GetOpenIDConnectProvider" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "OpenIDConnectProviderArn" =:- _goicpOpenIdConnectProviderARN]---- | Contains the response to a successful 'GetOpenIDConnectProvider' request.------------ /See:/ 'getOpenIdConnectProviderResponse' smart constructor.-data GetOpenIdConnectProviderResponse = GetOpenIdConnectProviderResponse'- { _goicprsCreateDate :: !(Maybe ISO8601)- , _goicprsURL :: !(Maybe Text)- , _goicprsThumbprintList :: !(Maybe [Text])- , _goicprsClientIdList :: !(Maybe [Text])- , _goicprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetOpenIdConnectProviderResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'goicprsCreateDate' - The date and time when the IAM OIDC provider resource object was created in the AWS account.------ * 'goicprsURL' - The URL that the IAM OIDC provider resource object is associated with. For more information, see 'CreateOpenIDConnectProvider' .------ * 'goicprsThumbprintList' - A list of certificate thumbprints that are associated with the specified IAM OIDC provider resource object. For more information, see 'CreateOpenIDConnectProvider' .------ * 'goicprsClientIdList' - A list of client IDs (also known as audiences) that are associated with the specified IAM OIDC provider resource object. For more information, see 'CreateOpenIDConnectProvider' .------ * 'goicprsResponseStatus' - -- | The response status code.-getOpenIdConnectProviderResponse- :: Int -- ^ 'goicprsResponseStatus'- -> GetOpenIdConnectProviderResponse-getOpenIdConnectProviderResponse pResponseStatus_ =- GetOpenIdConnectProviderResponse'- { _goicprsCreateDate = Nothing- , _goicprsURL = Nothing- , _goicprsThumbprintList = Nothing- , _goicprsClientIdList = Nothing- , _goicprsResponseStatus = pResponseStatus_- }----- | The date and time when the IAM OIDC provider resource object was created in the AWS account.-goicprsCreateDate :: Lens' GetOpenIdConnectProviderResponse (Maybe UTCTime)-goicprsCreateDate = lens _goicprsCreateDate (\ s a -> s{_goicprsCreateDate = a}) . mapping _Time---- | The URL that the IAM OIDC provider resource object is associated with. For more information, see 'CreateOpenIDConnectProvider' .-goicprsURL :: Lens' GetOpenIdConnectProviderResponse (Maybe Text)-goicprsURL = lens _goicprsURL (\ s a -> s{_goicprsURL = a})---- | A list of certificate thumbprints that are associated with the specified IAM OIDC provider resource object. For more information, see 'CreateOpenIDConnectProvider' .-goicprsThumbprintList :: Lens' GetOpenIdConnectProviderResponse [Text]-goicprsThumbprintList = lens _goicprsThumbprintList (\ s a -> s{_goicprsThumbprintList = a}) . _Default . _Coerce---- | A list of client IDs (also known as audiences) that are associated with the specified IAM OIDC provider resource object. For more information, see 'CreateOpenIDConnectProvider' .-goicprsClientIdList :: Lens' GetOpenIdConnectProviderResponse [Text]-goicprsClientIdList = lens _goicprsClientIdList (\ s a -> s{_goicprsClientIdList = a}) . _Default . _Coerce---- | -- | The response status code.-goicprsResponseStatus :: Lens' GetOpenIdConnectProviderResponse Int-goicprsResponseStatus = lens _goicprsResponseStatus (\ s a -> s{_goicprsResponseStatus = a})--instance NFData GetOpenIdConnectProviderResponse- where
− gen/Network/AWS/IAM/GetPolicy.hs
@@ -1,132 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about the specified managed policy, including the policy's default version and the total number of IAM users, groups, and roles to which the policy is attached. To retrieve the list of the specific users, groups, and roles that the policy is attached to, use the 'ListEntitiesForPolicy' API. This API returns metadata about the policy. To retrieve the actual policy document for a specific version of the policy, use 'GetPolicyVersion' .--------- This API retrieves information about managed policies. To retrieve information about an inline policy that is embedded with an IAM user, group, or role, use the 'GetUserPolicy' , 'GetGroupPolicy' , or 'GetRolePolicy' API.------ For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.GetPolicy- (- -- * Creating a Request- getPolicy- , GetPolicy- -- * Request Lenses- , gpPolicyARN-- -- * Destructuring the Response- , getPolicyResponse- , GetPolicyResponse- -- * Response Lenses- , gprsPolicy- , gprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getPolicy' smart constructor.-newtype GetPolicy = GetPolicy'- { _gpPolicyARN :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gpPolicyARN' - The Amazon Resource Name (ARN) of the managed policy that you want information about. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-getPolicy- :: Text -- ^ 'gpPolicyARN'- -> GetPolicy-getPolicy pPolicyARN_ = GetPolicy' {_gpPolicyARN = pPolicyARN_}----- | The Amazon Resource Name (ARN) of the managed policy that you want information about. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-gpPolicyARN :: Lens' GetPolicy Text-gpPolicyARN = lens _gpPolicyARN (\ s a -> s{_gpPolicyARN = a})--instance AWSRequest GetPolicy where- type Rs GetPolicy = GetPolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "GetPolicyResult"- (\ s h x ->- GetPolicyResponse' <$>- (x .@? "Policy") <*> (pure (fromEnum s)))--instance Hashable GetPolicy where--instance NFData GetPolicy where--instance ToHeaders GetPolicy where- toHeaders = const mempty--instance ToPath GetPolicy where- toPath = const "/"--instance ToQuery GetPolicy where- toQuery GetPolicy'{..}- = mconcat- ["Action" =: ("GetPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PolicyArn" =: _gpPolicyARN]---- | Contains the response to a successful 'GetPolicy' request.------------ /See:/ 'getPolicyResponse' smart constructor.-data GetPolicyResponse = GetPolicyResponse'- { _gprsPolicy :: !(Maybe Policy)- , _gprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetPolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gprsPolicy' - A structure containing details about the policy.------ * 'gprsResponseStatus' - -- | The response status code.-getPolicyResponse- :: Int -- ^ 'gprsResponseStatus'- -> GetPolicyResponse-getPolicyResponse pResponseStatus_ =- GetPolicyResponse'- {_gprsPolicy = Nothing, _gprsResponseStatus = pResponseStatus_}----- | A structure containing details about the policy.-gprsPolicy :: Lens' GetPolicyResponse (Maybe Policy)-gprsPolicy = lens _gprsPolicy (\ s a -> s{_gprsPolicy = a})---- | -- | The response status code.-gprsResponseStatus :: Lens' GetPolicyResponse Int-gprsResponseStatus = lens _gprsResponseStatus (\ s a -> s{_gprsResponseStatus = a})--instance NFData GetPolicyResponse where
− gen/Network/AWS/IAM/GetPolicyVersion.hs
@@ -1,147 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetPolicyVersion--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about the specified version of the specified managed policy, including the policy document.--------- To list the available versions for a policy, use 'ListPolicyVersions' .------ This API retrieves information about managed policies. To retrieve information about an inline policy that is embedded in a user, group, or role, use the 'GetUserPolicy' , 'GetGroupPolicy' , or 'GetRolePolicy' API.------ For more information about the types of policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.GetPolicyVersion- (- -- * Creating a Request- getPolicyVersion- , GetPolicyVersion- -- * Request Lenses- , gpvPolicyARN- , gpvVersionId-- -- * Destructuring the Response- , getPolicyVersionResponse- , GetPolicyVersionResponse- -- * Response Lenses- , gpvrsPolicyVersion- , gpvrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getPolicyVersion' smart constructor.-data GetPolicyVersion = GetPolicyVersion'- { _gpvPolicyARN :: !Text- , _gpvVersionId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetPolicyVersion' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gpvPolicyARN' - The Amazon Resource Name (ARN) of the managed policy that you want information about. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'gpvVersionId' - Identifies the policy version to retrieve. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that consists of the lowercase letter 'v' followed by one or two digits, and optionally followed by a period '.' and a string of letters and digits.-getPolicyVersion- :: Text -- ^ 'gpvPolicyARN'- -> Text -- ^ 'gpvVersionId'- -> GetPolicyVersion-getPolicyVersion pPolicyARN_ pVersionId_ =- GetPolicyVersion' {_gpvPolicyARN = pPolicyARN_, _gpvVersionId = pVersionId_}----- | The Amazon Resource Name (ARN) of the managed policy that you want information about. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-gpvPolicyARN :: Lens' GetPolicyVersion Text-gpvPolicyARN = lens _gpvPolicyARN (\ s a -> s{_gpvPolicyARN = a})---- | Identifies the policy version to retrieve. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that consists of the lowercase letter 'v' followed by one or two digits, and optionally followed by a period '.' and a string of letters and digits.-gpvVersionId :: Lens' GetPolicyVersion Text-gpvVersionId = lens _gpvVersionId (\ s a -> s{_gpvVersionId = a})--instance AWSRequest GetPolicyVersion where- type Rs GetPolicyVersion = GetPolicyVersionResponse- request = postQuery iam- response- = receiveXMLWrapper "GetPolicyVersionResult"- (\ s h x ->- GetPolicyVersionResponse' <$>- (x .@? "PolicyVersion") <*> (pure (fromEnum s)))--instance Hashable GetPolicyVersion where--instance NFData GetPolicyVersion where--instance ToHeaders GetPolicyVersion where- toHeaders = const mempty--instance ToPath GetPolicyVersion where- toPath = const "/"--instance ToQuery GetPolicyVersion where- toQuery GetPolicyVersion'{..}- = mconcat- ["Action" =: ("GetPolicyVersion" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PolicyArn" =: _gpvPolicyARN,- "VersionId" =: _gpvVersionId]---- | Contains the response to a successful 'GetPolicyVersion' request.------------ /See:/ 'getPolicyVersionResponse' smart constructor.-data GetPolicyVersionResponse = GetPolicyVersionResponse'- { _gpvrsPolicyVersion :: !(Maybe PolicyVersion)- , _gpvrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetPolicyVersionResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gpvrsPolicyVersion' - A structure containing details about the policy version.------ * 'gpvrsResponseStatus' - -- | The response status code.-getPolicyVersionResponse- :: Int -- ^ 'gpvrsResponseStatus'- -> GetPolicyVersionResponse-getPolicyVersionResponse pResponseStatus_ =- GetPolicyVersionResponse'- {_gpvrsPolicyVersion = Nothing, _gpvrsResponseStatus = pResponseStatus_}----- | A structure containing details about the policy version.-gpvrsPolicyVersion :: Lens' GetPolicyVersionResponse (Maybe PolicyVersion)-gpvrsPolicyVersion = lens _gpvrsPolicyVersion (\ s a -> s{_gpvrsPolicyVersion = a})---- | -- | The response status code.-gpvrsResponseStatus :: Lens' GetPolicyVersionResponse Int-gpvrsResponseStatus = lens _gpvrsResponseStatus (\ s a -> s{_gpvrsResponseStatus = a})--instance NFData GetPolicyVersionResponse where
− gen/Network/AWS/IAM/GetRole.hs
@@ -1,128 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetRole--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about the specified role, including the role's path, GUID, ARN, and the role's trust policy that grants permission to assume the role. For more information about roles, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with Roles> .-------module Network.AWS.IAM.GetRole- (- -- * Creating a Request- getRole- , GetRole- -- * Request Lenses- , grRoleName-- -- * Destructuring the Response- , getRoleResponse- , GetRoleResponse- -- * Response Lenses- , grrsResponseStatus- , grrsRole- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getRole' smart constructor.-newtype GetRole = GetRole'- { _grRoleName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetRole' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'grRoleName' - The name of the IAM role to get information about. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getRole- :: Text -- ^ 'grRoleName'- -> GetRole-getRole pRoleName_ = GetRole' {_grRoleName = pRoleName_}----- | The name of the IAM role to get information about. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--grRoleName :: Lens' GetRole Text-grRoleName = lens _grRoleName (\ s a -> s{_grRoleName = a})--instance AWSRequest GetRole where- type Rs GetRole = GetRoleResponse- request = postQuery iam- response- = receiveXMLWrapper "GetRoleResult"- (\ s h x ->- GetRoleResponse' <$>- (pure (fromEnum s)) <*> (x .@ "Role"))--instance Hashable GetRole where--instance NFData GetRole where--instance ToHeaders GetRole where- toHeaders = const mempty--instance ToPath GetRole where- toPath = const "/"--instance ToQuery GetRole where- toQuery GetRole'{..}- = mconcat- ["Action" =: ("GetRole" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _grRoleName]---- | Contains the response to a successful 'GetRole' request.------------ /See:/ 'getRoleResponse' smart constructor.-data GetRoleResponse = GetRoleResponse'- { _grrsResponseStatus :: !Int- , _grrsRole :: !Role- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetRoleResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'grrsResponseStatus' - -- | The response status code.------ * 'grrsRole' - A structure containing details about the IAM role.-getRoleResponse- :: Int -- ^ 'grrsResponseStatus'- -> Role -- ^ 'grrsRole'- -> GetRoleResponse-getRoleResponse pResponseStatus_ pRole_ =- GetRoleResponse' {_grrsResponseStatus = pResponseStatus_, _grrsRole = pRole_}----- | -- | The response status code.-grrsResponseStatus :: Lens' GetRoleResponse Int-grrsResponseStatus = lens _grrsResponseStatus (\ s a -> s{_grrsResponseStatus = a})---- | A structure containing details about the IAM role.-grrsRole :: Lens' GetRoleResponse Role-grrsRole = lens _grrsRole (\ s a -> s{_grrsRole = a})--instance NFData GetRoleResponse where
− gen/Network/AWS/IAM/GetRolePolicy.hs
@@ -1,170 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetRolePolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves the specified inline policy document that is embedded with the specified IAM role.--------- An IAM role can also have managed policies attached to it. To retrieve a managed policy document that is attached to a role, use 'GetPolicy' to determine the policy's default version, then use 'GetPolicyVersion' to retrieve the policy document.------ For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ For more information about roles, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html Using Roles to Delegate Permissions and Federate Identities> .----module Network.AWS.IAM.GetRolePolicy- (- -- * Creating a Request- getRolePolicy- , GetRolePolicy- -- * Request Lenses- , grpRoleName- , grpPolicyName-- -- * Destructuring the Response- , getRolePolicyResponse- , GetRolePolicyResponse- -- * Response Lenses- , grprsResponseStatus- , grprsRoleName- , grprsPolicyName- , grprsPolicyDocument- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getRolePolicy' smart constructor.-data GetRolePolicy = GetRolePolicy'- { _grpRoleName :: !Text- , _grpPolicyName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetRolePolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'grpRoleName' - The name of the role associated with the policy. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'grpPolicyName' - The name of the policy document to get. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getRolePolicy- :: Text -- ^ 'grpRoleName'- -> Text -- ^ 'grpPolicyName'- -> GetRolePolicy-getRolePolicy pRoleName_ pPolicyName_ =- GetRolePolicy' {_grpRoleName = pRoleName_, _grpPolicyName = pPolicyName_}----- | The name of the role associated with the policy. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--grpRoleName :: Lens' GetRolePolicy Text-grpRoleName = lens _grpRoleName (\ s a -> s{_grpRoleName = a})---- | The name of the policy document to get. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--grpPolicyName :: Lens' GetRolePolicy Text-grpPolicyName = lens _grpPolicyName (\ s a -> s{_grpPolicyName = a})--instance AWSRequest GetRolePolicy where- type Rs GetRolePolicy = GetRolePolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "GetRolePolicyResult"- (\ s h x ->- GetRolePolicyResponse' <$>- (pure (fromEnum s)) <*> (x .@ "RoleName") <*>- (x .@ "PolicyName")- <*> (x .@ "PolicyDocument"))--instance Hashable GetRolePolicy where--instance NFData GetRolePolicy where--instance ToHeaders GetRolePolicy where- toHeaders = const mempty--instance ToPath GetRolePolicy where- toPath = const "/"--instance ToQuery GetRolePolicy where- toQuery GetRolePolicy'{..}- = mconcat- ["Action" =: ("GetRolePolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _grpRoleName,- "PolicyName" =: _grpPolicyName]---- | Contains the response to a successful 'GetRolePolicy' request.------------ /See:/ 'getRolePolicyResponse' smart constructor.-data GetRolePolicyResponse = GetRolePolicyResponse'- { _grprsResponseStatus :: !Int- , _grprsRoleName :: !Text- , _grprsPolicyName :: !Text- , _grprsPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetRolePolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'grprsResponseStatus' - -- | The response status code.------ * 'grprsRoleName' - The role the policy is associated with.------ * 'grprsPolicyName' - The name of the policy.------ * 'grprsPolicyDocument' - The policy document.-getRolePolicyResponse- :: Int -- ^ 'grprsResponseStatus'- -> Text -- ^ 'grprsRoleName'- -> Text -- ^ 'grprsPolicyName'- -> Text -- ^ 'grprsPolicyDocument'- -> GetRolePolicyResponse-getRolePolicyResponse pResponseStatus_ pRoleName_ pPolicyName_ pPolicyDocument_ =- GetRolePolicyResponse'- { _grprsResponseStatus = pResponseStatus_- , _grprsRoleName = pRoleName_- , _grprsPolicyName = pPolicyName_- , _grprsPolicyDocument = pPolicyDocument_- }----- | -- | The response status code.-grprsResponseStatus :: Lens' GetRolePolicyResponse Int-grprsResponseStatus = lens _grprsResponseStatus (\ s a -> s{_grprsResponseStatus = a})---- | The role the policy is associated with.-grprsRoleName :: Lens' GetRolePolicyResponse Text-grprsRoleName = lens _grprsRoleName (\ s a -> s{_grprsRoleName = a})---- | The name of the policy.-grprsPolicyName :: Lens' GetRolePolicyResponse Text-grprsPolicyName = lens _grprsPolicyName (\ s a -> s{_grprsPolicyName = a})---- | The policy document.-grprsPolicyDocument :: Lens' GetRolePolicyResponse Text-grprsPolicyDocument = lens _grprsPolicyDocument (\ s a -> s{_grprsPolicyDocument = a})--instance NFData GetRolePolicyResponse where
− gen/Network/AWS/IAM/GetSAMLProvider.hs
@@ -1,151 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetSAMLProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Returns the SAML provider metadocument that was uploaded when the IAM SAML provider resource object was created or updated.-------module Network.AWS.IAM.GetSAMLProvider- (- -- * Creating a Request- getSAMLProvider- , GetSAMLProvider- -- * Request Lenses- , gsamlpSAMLProviderARN-- -- * Destructuring the Response- , getSAMLProviderResponse- , GetSAMLProviderResponse- -- * Response Lenses- , gsamlprsCreateDate- , gsamlprsValidUntil- , gsamlprsSAMLMetadataDocument- , gsamlprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getSAMLProvider' smart constructor.-newtype GetSAMLProvider = GetSAMLProvider'- { _gsamlpSAMLProviderARN :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetSAMLProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gsamlpSAMLProviderARN' - The Amazon Resource Name (ARN) of the SAML provider resource object in IAM to get information about. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-getSAMLProvider- :: Text -- ^ 'gsamlpSAMLProviderARN'- -> GetSAMLProvider-getSAMLProvider pSAMLProviderARN_ =- GetSAMLProvider' {_gsamlpSAMLProviderARN = pSAMLProviderARN_}----- | The Amazon Resource Name (ARN) of the SAML provider resource object in IAM to get information about. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-gsamlpSAMLProviderARN :: Lens' GetSAMLProvider Text-gsamlpSAMLProviderARN = lens _gsamlpSAMLProviderARN (\ s a -> s{_gsamlpSAMLProviderARN = a})--instance AWSRequest GetSAMLProvider where- type Rs GetSAMLProvider = GetSAMLProviderResponse- request = postQuery iam- response- = receiveXMLWrapper "GetSAMLProviderResult"- (\ s h x ->- GetSAMLProviderResponse' <$>- (x .@? "CreateDate") <*> (x .@? "ValidUntil") <*>- (x .@? "SAMLMetadataDocument")- <*> (pure (fromEnum s)))--instance Hashable GetSAMLProvider where--instance NFData GetSAMLProvider where--instance ToHeaders GetSAMLProvider where- toHeaders = const mempty--instance ToPath GetSAMLProvider where- toPath = const "/"--instance ToQuery GetSAMLProvider where- toQuery GetSAMLProvider'{..}- = mconcat- ["Action" =: ("GetSAMLProvider" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "SAMLProviderArn" =: _gsamlpSAMLProviderARN]---- | Contains the response to a successful 'GetSAMLProvider' request.------------ /See:/ 'getSAMLProviderResponse' smart constructor.-data GetSAMLProviderResponse = GetSAMLProviderResponse'- { _gsamlprsCreateDate :: !(Maybe ISO8601)- , _gsamlprsValidUntil :: !(Maybe ISO8601)- , _gsamlprsSAMLMetadataDocument :: !(Maybe Text)- , _gsamlprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetSAMLProviderResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gsamlprsCreateDate' - The date and time when the SAML provider was created.------ * 'gsamlprsValidUntil' - The expiration date and time for the SAML provider.------ * 'gsamlprsSAMLMetadataDocument' - The XML metadata document that includes information about an identity provider.------ * 'gsamlprsResponseStatus' - -- | The response status code.-getSAMLProviderResponse- :: Int -- ^ 'gsamlprsResponseStatus'- -> GetSAMLProviderResponse-getSAMLProviderResponse pResponseStatus_ =- GetSAMLProviderResponse'- { _gsamlprsCreateDate = Nothing- , _gsamlprsValidUntil = Nothing- , _gsamlprsSAMLMetadataDocument = Nothing- , _gsamlprsResponseStatus = pResponseStatus_- }----- | The date and time when the SAML provider was created.-gsamlprsCreateDate :: Lens' GetSAMLProviderResponse (Maybe UTCTime)-gsamlprsCreateDate = lens _gsamlprsCreateDate (\ s a -> s{_gsamlprsCreateDate = a}) . mapping _Time---- | The expiration date and time for the SAML provider.-gsamlprsValidUntil :: Lens' GetSAMLProviderResponse (Maybe UTCTime)-gsamlprsValidUntil = lens _gsamlprsValidUntil (\ s a -> s{_gsamlprsValidUntil = a}) . mapping _Time---- | The XML metadata document that includes information about an identity provider.-gsamlprsSAMLMetadataDocument :: Lens' GetSAMLProviderResponse (Maybe Text)-gsamlprsSAMLMetadataDocument = lens _gsamlprsSAMLMetadataDocument (\ s a -> s{_gsamlprsSAMLMetadataDocument = a})---- | -- | The response status code.-gsamlprsResponseStatus :: Lens' GetSAMLProviderResponse Int-gsamlprsResponseStatus = lens _gsamlprsResponseStatus (\ s a -> s{_gsamlprsResponseStatus = a})--instance NFData GetSAMLProviderResponse where
− gen/Network/AWS/IAM/GetSSHPublicKey.hs
@@ -1,155 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetSSHPublicKey--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves the specified SSH public key, including metadata about the key.--------- The SSH public key retrieved by this operation is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see <http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up AWS CodeCommit for SSH Connections> in the /AWS CodeCommit User Guide/ .----module Network.AWS.IAM.GetSSHPublicKey- (- -- * Creating a Request- getSSHPublicKey- , GetSSHPublicKey- -- * Request Lenses- , gspkUserName- , gspkSSHPublicKeyId- , gspkEncoding-- -- * Destructuring the Response- , getSSHPublicKeyResponse- , GetSSHPublicKeyResponse- -- * Response Lenses- , gspkrsSSHPublicKey- , gspkrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getSSHPublicKey' smart constructor.-data GetSSHPublicKey = GetSSHPublicKey'- { _gspkUserName :: !Text- , _gspkSSHPublicKeyId :: !Text- , _gspkEncoding :: !EncodingType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetSSHPublicKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gspkUserName' - The name of the IAM user associated with the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'gspkSSHPublicKeyId' - The unique identifier for the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.------ * 'gspkEncoding' - Specifies the public key encoding format to use in the response. To retrieve the public key in ssh-rsa format, use @SSH@ . To retrieve the public key in PEM format, use @PEM@ .-getSSHPublicKey- :: Text -- ^ 'gspkUserName'- -> Text -- ^ 'gspkSSHPublicKeyId'- -> EncodingType -- ^ 'gspkEncoding'- -> GetSSHPublicKey-getSSHPublicKey pUserName_ pSSHPublicKeyId_ pEncoding_ =- GetSSHPublicKey'- { _gspkUserName = pUserName_- , _gspkSSHPublicKeyId = pSSHPublicKeyId_- , _gspkEncoding = pEncoding_- }----- | The name of the IAM user associated with the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--gspkUserName :: Lens' GetSSHPublicKey Text-gspkUserName = lens _gspkUserName (\ s a -> s{_gspkUserName = a})---- | The unique identifier for the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-gspkSSHPublicKeyId :: Lens' GetSSHPublicKey Text-gspkSSHPublicKeyId = lens _gspkSSHPublicKeyId (\ s a -> s{_gspkSSHPublicKeyId = a})---- | Specifies the public key encoding format to use in the response. To retrieve the public key in ssh-rsa format, use @SSH@ . To retrieve the public key in PEM format, use @PEM@ .-gspkEncoding :: Lens' GetSSHPublicKey EncodingType-gspkEncoding = lens _gspkEncoding (\ s a -> s{_gspkEncoding = a})--instance AWSRequest GetSSHPublicKey where- type Rs GetSSHPublicKey = GetSSHPublicKeyResponse- request = postQuery iam- response- = receiveXMLWrapper "GetSSHPublicKeyResult"- (\ s h x ->- GetSSHPublicKeyResponse' <$>- (x .@? "SSHPublicKey") <*> (pure (fromEnum s)))--instance Hashable GetSSHPublicKey where--instance NFData GetSSHPublicKey where--instance ToHeaders GetSSHPublicKey where- toHeaders = const mempty--instance ToPath GetSSHPublicKey where- toPath = const "/"--instance ToQuery GetSSHPublicKey where- toQuery GetSSHPublicKey'{..}- = mconcat- ["Action" =: ("GetSSHPublicKey" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _gspkUserName,- "SSHPublicKeyId" =: _gspkSSHPublicKeyId,- "Encoding" =: _gspkEncoding]---- | Contains the response to a successful 'GetSSHPublicKey' request.------------ /See:/ 'getSSHPublicKeyResponse' smart constructor.-data GetSSHPublicKeyResponse = GetSSHPublicKeyResponse'- { _gspkrsSSHPublicKey :: !(Maybe SSHPublicKey)- , _gspkrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetSSHPublicKeyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gspkrsSSHPublicKey' - A structure containing details about the SSH public key.------ * 'gspkrsResponseStatus' - -- | The response status code.-getSSHPublicKeyResponse- :: Int -- ^ 'gspkrsResponseStatus'- -> GetSSHPublicKeyResponse-getSSHPublicKeyResponse pResponseStatus_ =- GetSSHPublicKeyResponse'- {_gspkrsSSHPublicKey = Nothing, _gspkrsResponseStatus = pResponseStatus_}----- | A structure containing details about the SSH public key.-gspkrsSSHPublicKey :: Lens' GetSSHPublicKeyResponse (Maybe SSHPublicKey)-gspkrsSSHPublicKey = lens _gspkrsSSHPublicKey (\ s a -> s{_gspkrsSSHPublicKey = a})---- | -- | The response status code.-gspkrsResponseStatus :: Lens' GetSSHPublicKeyResponse Int-gspkrsResponseStatus = lens _gspkrsResponseStatus (\ s a -> s{_gspkrsResponseStatus = a})--instance NFData GetSSHPublicKeyResponse where
− gen/Network/AWS/IAM/GetServerCertificate.hs
@@ -1,135 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetServerCertificate--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about the specified server certificate stored in IAM.--------- For more information about working with server certificates, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with Server Certificates> in the /IAM User Guide/ . This topic includes a list of AWS services that can use the server certificates that you manage with IAM.----module Network.AWS.IAM.GetServerCertificate- (- -- * Creating a Request- getServerCertificate- , GetServerCertificate- -- * Request Lenses- , gscServerCertificateName-- -- * Destructuring the Response- , getServerCertificateResponse- , GetServerCertificateResponse- -- * Response Lenses- , gscrsResponseStatus- , gscrsServerCertificate- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getServerCertificate' smart constructor.-newtype GetServerCertificate = GetServerCertificate'- { _gscServerCertificateName :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetServerCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gscServerCertificateName' - The name of the server certificate you want to retrieve information about. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getServerCertificate- :: Text -- ^ 'gscServerCertificateName'- -> GetServerCertificate-getServerCertificate pServerCertificateName_ =- GetServerCertificate' {_gscServerCertificateName = pServerCertificateName_}----- | The name of the server certificate you want to retrieve information about. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--gscServerCertificateName :: Lens' GetServerCertificate Text-gscServerCertificateName = lens _gscServerCertificateName (\ s a -> s{_gscServerCertificateName = a})--instance AWSRequest GetServerCertificate where- type Rs GetServerCertificate =- GetServerCertificateResponse- request = postQuery iam- response- = receiveXMLWrapper "GetServerCertificateResult"- (\ s h x ->- GetServerCertificateResponse' <$>- (pure (fromEnum s)) <*> (x .@ "ServerCertificate"))--instance Hashable GetServerCertificate where--instance NFData GetServerCertificate where--instance ToHeaders GetServerCertificate where- toHeaders = const mempty--instance ToPath GetServerCertificate where- toPath = const "/"--instance ToQuery GetServerCertificate where- toQuery GetServerCertificate'{..}- = mconcat- ["Action" =: ("GetServerCertificate" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "ServerCertificateName" =: _gscServerCertificateName]---- | Contains the response to a successful 'GetServerCertificate' request.------------ /See:/ 'getServerCertificateResponse' smart constructor.-data GetServerCertificateResponse = GetServerCertificateResponse'- { _gscrsResponseStatus :: !Int- , _gscrsServerCertificate :: !ServerCertificate- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetServerCertificateResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gscrsResponseStatus' - -- | The response status code.------ * 'gscrsServerCertificate' - A structure containing details about the server certificate.-getServerCertificateResponse- :: Int -- ^ 'gscrsResponseStatus'- -> ServerCertificate -- ^ 'gscrsServerCertificate'- -> GetServerCertificateResponse-getServerCertificateResponse pResponseStatus_ pServerCertificate_ =- GetServerCertificateResponse'- { _gscrsResponseStatus = pResponseStatus_- , _gscrsServerCertificate = pServerCertificate_- }----- | -- | The response status code.-gscrsResponseStatus :: Lens' GetServerCertificateResponse Int-gscrsResponseStatus = lens _gscrsResponseStatus (\ s a -> s{_gscrsResponseStatus = a})---- | A structure containing details about the server certificate.-gscrsServerCertificate :: Lens' GetServerCertificateResponse ServerCertificate-gscrsServerCertificate = lens _gscrsServerCertificate (\ s a -> s{_gscrsServerCertificate = a})--instance NFData GetServerCertificateResponse where
− gen/Network/AWS/IAM/GetServiceLinkedRoleDeletionStatus.hs
@@ -1,150 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves the status of your service-linked role deletion. After you use the 'DeleteServiceLinkedRole' API operation to submit a service-linked role for deletion, you can use the @DeletionTaskId@ parameter in @GetServiceLinkedRoleDeletionStatus@ to check the status of the deletion. If the deletion fails, this operation returns the reason that it failed, if that information is returned by the service.-------module Network.AWS.IAM.GetServiceLinkedRoleDeletionStatus- (- -- * Creating a Request- getServiceLinkedRoleDeletionStatus- , GetServiceLinkedRoleDeletionStatus- -- * Request Lenses- , gslrdsDeletionTaskId-- -- * Destructuring the Response- , getServiceLinkedRoleDeletionStatusResponse- , GetServiceLinkedRoleDeletionStatusResponse- -- * Response Lenses- , gslrdsrsReason- , gslrdsrsResponseStatus- , gslrdsrsStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getServiceLinkedRoleDeletionStatus' smart constructor.-newtype GetServiceLinkedRoleDeletionStatus = GetServiceLinkedRoleDeletionStatus'- { _gslrdsDeletionTaskId :: Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetServiceLinkedRoleDeletionStatus' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gslrdsDeletionTaskId' - The deletion task identifier. This identifier is returned by the 'DeleteServiceLinkedRole' operation in the format @task/aws-service-role/<service-principal-name>/<role-name>/<task-uuid>@ .-getServiceLinkedRoleDeletionStatus- :: Text -- ^ 'gslrdsDeletionTaskId'- -> GetServiceLinkedRoleDeletionStatus-getServiceLinkedRoleDeletionStatus pDeletionTaskId_ =- GetServiceLinkedRoleDeletionStatus' {_gslrdsDeletionTaskId = pDeletionTaskId_}----- | The deletion task identifier. This identifier is returned by the 'DeleteServiceLinkedRole' operation in the format @task/aws-service-role/<service-principal-name>/<role-name>/<task-uuid>@ .-gslrdsDeletionTaskId :: Lens' GetServiceLinkedRoleDeletionStatus Text-gslrdsDeletionTaskId = lens _gslrdsDeletionTaskId (\ s a -> s{_gslrdsDeletionTaskId = a})--instance AWSRequest- GetServiceLinkedRoleDeletionStatus- where- type Rs GetServiceLinkedRoleDeletionStatus =- GetServiceLinkedRoleDeletionStatusResponse- request = postQuery iam- response- = receiveXMLWrapper- "GetServiceLinkedRoleDeletionStatusResult"- (\ s h x ->- GetServiceLinkedRoleDeletionStatusResponse' <$>- (x .@? "Reason") <*> (pure (fromEnum s)) <*>- (x .@ "Status"))--instance Hashable GetServiceLinkedRoleDeletionStatus- where--instance NFData GetServiceLinkedRoleDeletionStatus- where--instance ToHeaders GetServiceLinkedRoleDeletionStatus- where- toHeaders = const mempty--instance ToPath GetServiceLinkedRoleDeletionStatus- where- toPath = const "/"--instance ToQuery GetServiceLinkedRoleDeletionStatus- where- toQuery GetServiceLinkedRoleDeletionStatus'{..}- = mconcat- ["Action" =:- ("GetServiceLinkedRoleDeletionStatus" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "DeletionTaskId" =: _gslrdsDeletionTaskId]---- | /See:/ 'getServiceLinkedRoleDeletionStatusResponse' smart constructor.-data GetServiceLinkedRoleDeletionStatusResponse = GetServiceLinkedRoleDeletionStatusResponse'- { _gslrdsrsReason :: !(Maybe DeletionTaskFailureReasonType)- , _gslrdsrsResponseStatus :: !Int- , _gslrdsrsStatus :: !DeletionTaskStatusType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetServiceLinkedRoleDeletionStatusResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gslrdsrsReason' - An object that contains details about the reason the deletion failed.------ * 'gslrdsrsResponseStatus' - -- | The response status code.------ * 'gslrdsrsStatus' - The status of the deletion.-getServiceLinkedRoleDeletionStatusResponse- :: Int -- ^ 'gslrdsrsResponseStatus'- -> DeletionTaskStatusType -- ^ 'gslrdsrsStatus'- -> GetServiceLinkedRoleDeletionStatusResponse-getServiceLinkedRoleDeletionStatusResponse pResponseStatus_ pStatus_ =- GetServiceLinkedRoleDeletionStatusResponse'- { _gslrdsrsReason = Nothing- , _gslrdsrsResponseStatus = pResponseStatus_- , _gslrdsrsStatus = pStatus_- }----- | An object that contains details about the reason the deletion failed.-gslrdsrsReason :: Lens' GetServiceLinkedRoleDeletionStatusResponse (Maybe DeletionTaskFailureReasonType)-gslrdsrsReason = lens _gslrdsrsReason (\ s a -> s{_gslrdsrsReason = a})---- | -- | The response status code.-gslrdsrsResponseStatus :: Lens' GetServiceLinkedRoleDeletionStatusResponse Int-gslrdsrsResponseStatus = lens _gslrdsrsResponseStatus (\ s a -> s{_gslrdsrsResponseStatus = a})---- | The status of the deletion.-gslrdsrsStatus :: Lens' GetServiceLinkedRoleDeletionStatusResponse DeletionTaskStatusType-gslrdsrsStatus = lens _gslrdsrsStatus (\ s a -> s{_gslrdsrsStatus = a})--instance NFData- GetServiceLinkedRoleDeletionStatusResponse- where
− gen/Network/AWS/IAM/GetUser.hs
@@ -1,129 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetUser--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves information about the specified IAM user, including the user's creation date, path, unique ID, and ARN.--------- If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID used to sign the request to this API.----module Network.AWS.IAM.GetUser- (- -- * Creating a Request- getUser- , GetUser- -- * Request Lenses- , guUserName-- -- * Destructuring the Response- , getUserResponse- , GetUserResponse- -- * Response Lenses- , gursResponseStatus- , gursUser- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getUser' smart constructor.-newtype GetUser = GetUser'- { _guUserName :: Maybe Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetUser' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'guUserName' - The name of the user to get information about. This parameter is optional. If it is not included, it defaults to the user making the request. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getUser- :: GetUser-getUser = GetUser' {_guUserName = Nothing}----- | The name of the user to get information about. This parameter is optional. If it is not included, it defaults to the user making the request. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--guUserName :: Lens' GetUser (Maybe Text)-guUserName = lens _guUserName (\ s a -> s{_guUserName = a})--instance AWSRequest GetUser where- type Rs GetUser = GetUserResponse- request = postQuery iam- response- = receiveXMLWrapper "GetUserResult"- (\ s h x ->- GetUserResponse' <$>- (pure (fromEnum s)) <*> (x .@ "User"))--instance Hashable GetUser where--instance NFData GetUser where--instance ToHeaders GetUser where- toHeaders = const mempty--instance ToPath GetUser where- toPath = const "/"--instance ToQuery GetUser where- toQuery GetUser'{..}- = mconcat- ["Action" =: ("GetUser" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _guUserName]---- | Contains the response to a successful 'GetUser' request.------------ /See:/ 'getUserResponse' smart constructor.-data GetUserResponse = GetUserResponse'- { _gursResponseStatus :: !Int- , _gursUser :: !User- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetUserResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gursResponseStatus' - -- | The response status code.------ * 'gursUser' - A structure containing details about the IAM user.-getUserResponse- :: Int -- ^ 'gursResponseStatus'- -> User -- ^ 'gursUser'- -> GetUserResponse-getUserResponse pResponseStatus_ pUser_ =- GetUserResponse' {_gursResponseStatus = pResponseStatus_, _gursUser = pUser_}----- | -- | The response status code.-gursResponseStatus :: Lens' GetUserResponse Int-gursResponseStatus = lens _gursResponseStatus (\ s a -> s{_gursResponseStatus = a})---- | A structure containing details about the IAM user.-gursUser :: Lens' GetUserResponse User-gursUser = lens _gursUser (\ s a -> s{_gursUser = a})--instance NFData GetUserResponse where
− gen/Network/AWS/IAM/GetUserPolicy.hs
@@ -1,168 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.GetUserPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Retrieves the specified inline policy document that is embedded in the specified IAM user.--------- An IAM user can also have managed policies attached to it. To retrieve a managed policy document that is attached to a user, use 'GetPolicy' to determine the policy's default version, then use 'GetPolicyVersion' to retrieve the policy document.------ For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.GetUserPolicy- (- -- * Creating a Request- getUserPolicy- , GetUserPolicy- -- * Request Lenses- , gupUserName- , gupPolicyName-- -- * Destructuring the Response- , getUserPolicyResponse- , GetUserPolicyResponse- -- * Response Lenses- , guprsResponseStatus- , guprsUserName- , guprsPolicyName- , guprsPolicyDocument- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'getUserPolicy' smart constructor.-data GetUserPolicy = GetUserPolicy'- { _gupUserName :: !Text- , _gupPolicyName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetUserPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gupUserName' - The name of the user who the policy is associated with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'gupPolicyName' - The name of the policy document to get. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--getUserPolicy- :: Text -- ^ 'gupUserName'- -> Text -- ^ 'gupPolicyName'- -> GetUserPolicy-getUserPolicy pUserName_ pPolicyName_ =- GetUserPolicy' {_gupUserName = pUserName_, _gupPolicyName = pPolicyName_}----- | The name of the user who the policy is associated with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--gupUserName :: Lens' GetUserPolicy Text-gupUserName = lens _gupUserName (\ s a -> s{_gupUserName = a})---- | The name of the policy document to get. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--gupPolicyName :: Lens' GetUserPolicy Text-gupPolicyName = lens _gupPolicyName (\ s a -> s{_gupPolicyName = a})--instance AWSRequest GetUserPolicy where- type Rs GetUserPolicy = GetUserPolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "GetUserPolicyResult"- (\ s h x ->- GetUserPolicyResponse' <$>- (pure (fromEnum s)) <*> (x .@ "UserName") <*>- (x .@ "PolicyName")- <*> (x .@ "PolicyDocument"))--instance Hashable GetUserPolicy where--instance NFData GetUserPolicy where--instance ToHeaders GetUserPolicy where- toHeaders = const mempty--instance ToPath GetUserPolicy where- toPath = const "/"--instance ToQuery GetUserPolicy where- toQuery GetUserPolicy'{..}- = mconcat- ["Action" =: ("GetUserPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _gupUserName,- "PolicyName" =: _gupPolicyName]---- | Contains the response to a successful 'GetUserPolicy' request.------------ /See:/ 'getUserPolicyResponse' smart constructor.-data GetUserPolicyResponse = GetUserPolicyResponse'- { _guprsResponseStatus :: !Int- , _guprsUserName :: !Text- , _guprsPolicyName :: !Text- , _guprsPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetUserPolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'guprsResponseStatus' - -- | The response status code.------ * 'guprsUserName' - The user the policy is associated with.------ * 'guprsPolicyName' - The name of the policy.------ * 'guprsPolicyDocument' - The policy document.-getUserPolicyResponse- :: Int -- ^ 'guprsResponseStatus'- -> Text -- ^ 'guprsUserName'- -> Text -- ^ 'guprsPolicyName'- -> Text -- ^ 'guprsPolicyDocument'- -> GetUserPolicyResponse-getUserPolicyResponse pResponseStatus_ pUserName_ pPolicyName_ pPolicyDocument_ =- GetUserPolicyResponse'- { _guprsResponseStatus = pResponseStatus_- , _guprsUserName = pUserName_- , _guprsPolicyName = pPolicyName_- , _guprsPolicyDocument = pPolicyDocument_- }----- | -- | The response status code.-guprsResponseStatus :: Lens' GetUserPolicyResponse Int-guprsResponseStatus = lens _guprsResponseStatus (\ s a -> s{_guprsResponseStatus = a})---- | The user the policy is associated with.-guprsUserName :: Lens' GetUserPolicyResponse Text-guprsUserName = lens _guprsUserName (\ s a -> s{_guprsUserName = a})---- | The name of the policy.-guprsPolicyName :: Lens' GetUserPolicyResponse Text-guprsPolicyName = lens _guprsPolicyName (\ s a -> s{_guprsPolicyName = a})---- | The policy document.-guprsPolicyDocument :: Lens' GetUserPolicyResponse Text-guprsPolicyDocument = lens _guprsPolicyDocument (\ s a -> s{_guprsPolicyDocument = a})--instance NFData GetUserPolicyResponse where
− gen/Network/AWS/IAM/ListAccessKeys.hs
@@ -1,184 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListAccessKeys--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Returns information about the access key IDs associated with the specified IAM user. If there are none, the operation returns an empty list.--------- Although each user is limited to a small number of keys, you can still paginate the results using the @MaxItems@ and @Marker@ parameters.------ If the @UserName@ field is not specified, the user name is determined implicitly based on the AWS access key ID used to sign the request. Because this operation works for access keys under the AWS account, you can use this operation to manage AWS account root user credentials even if the AWS account has no associated users.--------- This operation returns paginated results.-module Network.AWS.IAM.ListAccessKeys- (- -- * Creating a Request- listAccessKeys- , ListAccessKeys- -- * Request Lenses- , lakUserName- , lakMarker- , lakMaxItems-- -- * Destructuring the Response- , listAccessKeysResponse- , ListAccessKeysResponse- -- * Response Lenses- , lakrsMarker- , lakrsIsTruncated- , lakrsResponseStatus- , lakrsAccessKeyMetadata- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listAccessKeys' smart constructor.-data ListAccessKeys = ListAccessKeys'- { _lakUserName :: !(Maybe Text)- , _lakMarker :: !(Maybe Text)- , _lakMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAccessKeys' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lakUserName' - The name of the user. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'lakMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lakMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listAccessKeys- :: ListAccessKeys-listAccessKeys =- ListAccessKeys'- {_lakUserName = Nothing, _lakMarker = Nothing, _lakMaxItems = Nothing}----- | The name of the user. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lakUserName :: Lens' ListAccessKeys (Maybe Text)-lakUserName = lens _lakUserName (\ s a -> s{_lakUserName = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lakMarker :: Lens' ListAccessKeys (Maybe Text)-lakMarker = lens _lakMarker (\ s a -> s{_lakMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lakMaxItems :: Lens' ListAccessKeys (Maybe Natural)-lakMaxItems = lens _lakMaxItems (\ s a -> s{_lakMaxItems = a}) . mapping _Nat--instance AWSPager ListAccessKeys where- page rq rs- | stop (rs ^. lakrsIsTruncated) = Nothing- | isNothing (rs ^. lakrsMarker) = Nothing- | otherwise =- Just $ rq & lakMarker .~ rs ^. lakrsMarker--instance AWSRequest ListAccessKeys where- type Rs ListAccessKeys = ListAccessKeysResponse- request = postQuery iam- response- = receiveXMLWrapper "ListAccessKeysResult"- (\ s h x ->- ListAccessKeysResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "AccessKeyMetadata" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListAccessKeys where--instance NFData ListAccessKeys where--instance ToHeaders ListAccessKeys where- toHeaders = const mempty--instance ToPath ListAccessKeys where- toPath = const "/"--instance ToQuery ListAccessKeys where- toQuery ListAccessKeys'{..}- = mconcat- ["Action" =: ("ListAccessKeys" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _lakUserName, "Marker" =: _lakMarker,- "MaxItems" =: _lakMaxItems]---- | Contains the response to a successful 'ListAccessKeys' request.------------ /See:/ 'listAccessKeysResponse' smart constructor.-data ListAccessKeysResponse = ListAccessKeysResponse'- { _lakrsMarker :: !(Maybe Text)- , _lakrsIsTruncated :: !(Maybe Bool)- , _lakrsResponseStatus :: !Int- , _lakrsAccessKeyMetadata :: ![AccessKeyMetadata]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAccessKeysResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lakrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lakrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lakrsResponseStatus' - -- | The response status code.------ * 'lakrsAccessKeyMetadata' - A list of objects containing metadata about the access keys.-listAccessKeysResponse- :: Int -- ^ 'lakrsResponseStatus'- -> ListAccessKeysResponse-listAccessKeysResponse pResponseStatus_ =- ListAccessKeysResponse'- { _lakrsMarker = Nothing- , _lakrsIsTruncated = Nothing- , _lakrsResponseStatus = pResponseStatus_- , _lakrsAccessKeyMetadata = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lakrsMarker :: Lens' ListAccessKeysResponse (Maybe Text)-lakrsMarker = lens _lakrsMarker (\ s a -> s{_lakrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lakrsIsTruncated :: Lens' ListAccessKeysResponse (Maybe Bool)-lakrsIsTruncated = lens _lakrsIsTruncated (\ s a -> s{_lakrsIsTruncated = a})---- | -- | The response status code.-lakrsResponseStatus :: Lens' ListAccessKeysResponse Int-lakrsResponseStatus = lens _lakrsResponseStatus (\ s a -> s{_lakrsResponseStatus = a})---- | A list of objects containing metadata about the access keys.-lakrsAccessKeyMetadata :: Lens' ListAccessKeysResponse [AccessKeyMetadata]-lakrsAccessKeyMetadata = lens _lakrsAccessKeyMetadata (\ s a -> s{_lakrsAccessKeyMetadata = a}) . _Coerce--instance NFData ListAccessKeysResponse where
− gen/Network/AWS/IAM/ListAccountAliases.hs
@@ -1,171 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListAccountAliases--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the account alias associated with the AWS account (Note: you can have only one). For information about using an AWS account alias, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/AccountAlias.html Using an Alias for Your AWS Account ID> in the /IAM User Guide/ .------------ This operation returns paginated results.-module Network.AWS.IAM.ListAccountAliases- (- -- * Creating a Request- listAccountAliases- , ListAccountAliases- -- * Request Lenses- , laaMarker- , laaMaxItems-- -- * Destructuring the Response- , listAccountAliasesResponse- , ListAccountAliasesResponse- -- * Response Lenses- , laarsMarker- , laarsIsTruncated- , laarsResponseStatus- , laarsAccountAliases- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listAccountAliases' smart constructor.-data ListAccountAliases = ListAccountAliases'- { _laaMarker :: !(Maybe Text)- , _laaMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAccountAliases' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'laaMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'laaMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listAccountAliases- :: ListAccountAliases-listAccountAliases =- ListAccountAliases' {_laaMarker = Nothing, _laaMaxItems = Nothing}----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-laaMarker :: Lens' ListAccountAliases (Maybe Text)-laaMarker = lens _laaMarker (\ s a -> s{_laaMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-laaMaxItems :: Lens' ListAccountAliases (Maybe Natural)-laaMaxItems = lens _laaMaxItems (\ s a -> s{_laaMaxItems = a}) . mapping _Nat--instance AWSPager ListAccountAliases where- page rq rs- | stop (rs ^. laarsIsTruncated) = Nothing- | isNothing (rs ^. laarsMarker) = Nothing- | otherwise =- Just $ rq & laaMarker .~ rs ^. laarsMarker--instance AWSRequest ListAccountAliases where- type Rs ListAccountAliases =- ListAccountAliasesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListAccountAliasesResult"- (\ s h x ->- ListAccountAliasesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "AccountAliases" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListAccountAliases where--instance NFData ListAccountAliases where--instance ToHeaders ListAccountAliases where- toHeaders = const mempty--instance ToPath ListAccountAliases where- toPath = const "/"--instance ToQuery ListAccountAliases where- toQuery ListAccountAliases'{..}- = mconcat- ["Action" =: ("ListAccountAliases" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _laaMarker, "MaxItems" =: _laaMaxItems]---- | Contains the response to a successful 'ListAccountAliases' request.------------ /See:/ 'listAccountAliasesResponse' smart constructor.-data ListAccountAliasesResponse = ListAccountAliasesResponse'- { _laarsMarker :: !(Maybe Text)- , _laarsIsTruncated :: !(Maybe Bool)- , _laarsResponseStatus :: !Int- , _laarsAccountAliases :: ![Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAccountAliasesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'laarsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'laarsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'laarsResponseStatus' - -- | The response status code.------ * 'laarsAccountAliases' - A list of aliases associated with the account. AWS supports only one alias per account.-listAccountAliasesResponse- :: Int -- ^ 'laarsResponseStatus'- -> ListAccountAliasesResponse-listAccountAliasesResponse pResponseStatus_ =- ListAccountAliasesResponse'- { _laarsMarker = Nothing- , _laarsIsTruncated = Nothing- , _laarsResponseStatus = pResponseStatus_- , _laarsAccountAliases = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-laarsMarker :: Lens' ListAccountAliasesResponse (Maybe Text)-laarsMarker = lens _laarsMarker (\ s a -> s{_laarsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-laarsIsTruncated :: Lens' ListAccountAliasesResponse (Maybe Bool)-laarsIsTruncated = lens _laarsIsTruncated (\ s a -> s{_laarsIsTruncated = a})---- | -- | The response status code.-laarsResponseStatus :: Lens' ListAccountAliasesResponse Int-laarsResponseStatus = lens _laarsResponseStatus (\ s a -> s{_laarsResponseStatus = a})---- | A list of aliases associated with the account. AWS supports only one alias per account.-laarsAccountAliases :: Lens' ListAccountAliasesResponse [Text]-laarsAccountAliases = lens _laarsAccountAliases (\ s a -> s{_laarsAccountAliases = a}) . _Coerce--instance NFData ListAccountAliasesResponse where
− gen/Network/AWS/IAM/ListAttachedGroupPolicies.hs
@@ -1,201 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListAttachedGroupPolicies--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists all managed policies that are attached to the specified IAM group.--------- An IAM group can also have inline policies embedded with it. To list the inline policies for a group, use the 'ListGroupPolicies' API. For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ You can paginate the results using the @MaxItems@ and @Marker@ parameters. You can use the @PathPrefix@ parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified group (or none that match the specified path prefix), the operation returns an empty list.--------- This operation returns paginated results.-module Network.AWS.IAM.ListAttachedGroupPolicies- (- -- * Creating a Request- listAttachedGroupPolicies- , ListAttachedGroupPolicies- -- * Request Lenses- , lagpPathPrefix- , lagpMarker- , lagpMaxItems- , lagpGroupName-- -- * Destructuring the Response- , listAttachedGroupPoliciesResponse- , ListAttachedGroupPoliciesResponse- -- * Response Lenses- , lagprsAttachedPolicies- , lagprsMarker- , lagprsIsTruncated- , lagprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listAttachedGroupPolicies' smart constructor.-data ListAttachedGroupPolicies = ListAttachedGroupPolicies'- { _lagpPathPrefix :: !(Maybe Text)- , _lagpMarker :: !(Maybe Text)- , _lagpMaxItems :: !(Maybe Nat)- , _lagpGroupName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAttachedGroupPolicies' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lagpPathPrefix' - The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'lagpMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lagpMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'lagpGroupName' - The name (friendly name, not ARN) of the group to list attached policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listAttachedGroupPolicies- :: Text -- ^ 'lagpGroupName'- -> ListAttachedGroupPolicies-listAttachedGroupPolicies pGroupName_ =- ListAttachedGroupPolicies'- { _lagpPathPrefix = Nothing- , _lagpMarker = Nothing- , _lagpMaxItems = Nothing- , _lagpGroupName = pGroupName_- }----- | The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-lagpPathPrefix :: Lens' ListAttachedGroupPolicies (Maybe Text)-lagpPathPrefix = lens _lagpPathPrefix (\ s a -> s{_lagpPathPrefix = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lagpMarker :: Lens' ListAttachedGroupPolicies (Maybe Text)-lagpMarker = lens _lagpMarker (\ s a -> s{_lagpMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lagpMaxItems :: Lens' ListAttachedGroupPolicies (Maybe Natural)-lagpMaxItems = lens _lagpMaxItems (\ s a -> s{_lagpMaxItems = a}) . mapping _Nat---- | The name (friendly name, not ARN) of the group to list attached policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lagpGroupName :: Lens' ListAttachedGroupPolicies Text-lagpGroupName = lens _lagpGroupName (\ s a -> s{_lagpGroupName = a})--instance AWSPager ListAttachedGroupPolicies where- page rq rs- | stop (rs ^. lagprsIsTruncated) = Nothing- | isNothing (rs ^. lagprsMarker) = Nothing- | otherwise =- Just $ rq & lagpMarker .~ rs ^. lagprsMarker--instance AWSRequest ListAttachedGroupPolicies where- type Rs ListAttachedGroupPolicies =- ListAttachedGroupPoliciesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListAttachedGroupPoliciesResult"- (\ s h x ->- ListAttachedGroupPoliciesResponse' <$>- (x .@? "AttachedPolicies" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Marker")- <*> (x .@? "IsTruncated")- <*> (pure (fromEnum s)))--instance Hashable ListAttachedGroupPolicies where--instance NFData ListAttachedGroupPolicies where--instance ToHeaders ListAttachedGroupPolicies where- toHeaders = const mempty--instance ToPath ListAttachedGroupPolicies where- toPath = const "/"--instance ToQuery ListAttachedGroupPolicies where- toQuery ListAttachedGroupPolicies'{..}- = mconcat- ["Action" =:- ("ListAttachedGroupPolicies" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _lagpPathPrefix,- "Marker" =: _lagpMarker, "MaxItems" =: _lagpMaxItems,- "GroupName" =: _lagpGroupName]---- | Contains the response to a successful 'ListAttachedGroupPolicies' request.------------ /See:/ 'listAttachedGroupPoliciesResponse' smart constructor.-data ListAttachedGroupPoliciesResponse = ListAttachedGroupPoliciesResponse'- { _lagprsAttachedPolicies :: !(Maybe [AttachedPolicy])- , _lagprsMarker :: !(Maybe Text)- , _lagprsIsTruncated :: !(Maybe Bool)- , _lagprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAttachedGroupPoliciesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lagprsAttachedPolicies' - A list of the attached policies.------ * 'lagprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lagprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lagprsResponseStatus' - -- | The response status code.-listAttachedGroupPoliciesResponse- :: Int -- ^ 'lagprsResponseStatus'- -> ListAttachedGroupPoliciesResponse-listAttachedGroupPoliciesResponse pResponseStatus_ =- ListAttachedGroupPoliciesResponse'- { _lagprsAttachedPolicies = Nothing- , _lagprsMarker = Nothing- , _lagprsIsTruncated = Nothing- , _lagprsResponseStatus = pResponseStatus_- }----- | A list of the attached policies.-lagprsAttachedPolicies :: Lens' ListAttachedGroupPoliciesResponse [AttachedPolicy]-lagprsAttachedPolicies = lens _lagprsAttachedPolicies (\ s a -> s{_lagprsAttachedPolicies = a}) . _Default . _Coerce---- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lagprsMarker :: Lens' ListAttachedGroupPoliciesResponse (Maybe Text)-lagprsMarker = lens _lagprsMarker (\ s a -> s{_lagprsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lagprsIsTruncated :: Lens' ListAttachedGroupPoliciesResponse (Maybe Bool)-lagprsIsTruncated = lens _lagprsIsTruncated (\ s a -> s{_lagprsIsTruncated = a})---- | -- | The response status code.-lagprsResponseStatus :: Lens' ListAttachedGroupPoliciesResponse Int-lagprsResponseStatus = lens _lagprsResponseStatus (\ s a -> s{_lagprsResponseStatus = a})--instance NFData ListAttachedGroupPoliciesResponse- where
− gen/Network/AWS/IAM/ListAttachedRolePolicies.hs
@@ -1,201 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListAttachedRolePolicies--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists all managed policies that are attached to the specified IAM role.--------- An IAM role can also have inline policies embedded with it. To list the inline policies for a role, use the 'ListRolePolicies' API. For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ You can paginate the results using the @MaxItems@ and @Marker@ parameters. You can use the @PathPrefix@ parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified role (or none that match the specified path prefix), the operation returns an empty list.--------- This operation returns paginated results.-module Network.AWS.IAM.ListAttachedRolePolicies- (- -- * Creating a Request- listAttachedRolePolicies- , ListAttachedRolePolicies- -- * Request Lenses- , larpPathPrefix- , larpMarker- , larpMaxItems- , larpRoleName-- -- * Destructuring the Response- , listAttachedRolePoliciesResponse- , ListAttachedRolePoliciesResponse- -- * Response Lenses- , larprsAttachedPolicies- , larprsMarker- , larprsIsTruncated- , larprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listAttachedRolePolicies' smart constructor.-data ListAttachedRolePolicies = ListAttachedRolePolicies'- { _larpPathPrefix :: !(Maybe Text)- , _larpMarker :: !(Maybe Text)- , _larpMaxItems :: !(Maybe Nat)- , _larpRoleName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAttachedRolePolicies' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'larpPathPrefix' - The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'larpMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'larpMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'larpRoleName' - The name (friendly name, not ARN) of the role to list attached policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listAttachedRolePolicies- :: Text -- ^ 'larpRoleName'- -> ListAttachedRolePolicies-listAttachedRolePolicies pRoleName_ =- ListAttachedRolePolicies'- { _larpPathPrefix = Nothing- , _larpMarker = Nothing- , _larpMaxItems = Nothing- , _larpRoleName = pRoleName_- }----- | The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-larpPathPrefix :: Lens' ListAttachedRolePolicies (Maybe Text)-larpPathPrefix = lens _larpPathPrefix (\ s a -> s{_larpPathPrefix = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-larpMarker :: Lens' ListAttachedRolePolicies (Maybe Text)-larpMarker = lens _larpMarker (\ s a -> s{_larpMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-larpMaxItems :: Lens' ListAttachedRolePolicies (Maybe Natural)-larpMaxItems = lens _larpMaxItems (\ s a -> s{_larpMaxItems = a}) . mapping _Nat---- | The name (friendly name, not ARN) of the role to list attached policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--larpRoleName :: Lens' ListAttachedRolePolicies Text-larpRoleName = lens _larpRoleName (\ s a -> s{_larpRoleName = a})--instance AWSPager ListAttachedRolePolicies where- page rq rs- | stop (rs ^. larprsIsTruncated) = Nothing- | isNothing (rs ^. larprsMarker) = Nothing- | otherwise =- Just $ rq & larpMarker .~ rs ^. larprsMarker--instance AWSRequest ListAttachedRolePolicies where- type Rs ListAttachedRolePolicies =- ListAttachedRolePoliciesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListAttachedRolePoliciesResult"- (\ s h x ->- ListAttachedRolePoliciesResponse' <$>- (x .@? "AttachedPolicies" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Marker")- <*> (x .@? "IsTruncated")- <*> (pure (fromEnum s)))--instance Hashable ListAttachedRolePolicies where--instance NFData ListAttachedRolePolicies where--instance ToHeaders ListAttachedRolePolicies where- toHeaders = const mempty--instance ToPath ListAttachedRolePolicies where- toPath = const "/"--instance ToQuery ListAttachedRolePolicies where- toQuery ListAttachedRolePolicies'{..}- = mconcat- ["Action" =:- ("ListAttachedRolePolicies" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _larpPathPrefix,- "Marker" =: _larpMarker, "MaxItems" =: _larpMaxItems,- "RoleName" =: _larpRoleName]---- | Contains the response to a successful 'ListAttachedRolePolicies' request.------------ /See:/ 'listAttachedRolePoliciesResponse' smart constructor.-data ListAttachedRolePoliciesResponse = ListAttachedRolePoliciesResponse'- { _larprsAttachedPolicies :: !(Maybe [AttachedPolicy])- , _larprsMarker :: !(Maybe Text)- , _larprsIsTruncated :: !(Maybe Bool)- , _larprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAttachedRolePoliciesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'larprsAttachedPolicies' - A list of the attached policies.------ * 'larprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'larprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'larprsResponseStatus' - -- | The response status code.-listAttachedRolePoliciesResponse- :: Int -- ^ 'larprsResponseStatus'- -> ListAttachedRolePoliciesResponse-listAttachedRolePoliciesResponse pResponseStatus_ =- ListAttachedRolePoliciesResponse'- { _larprsAttachedPolicies = Nothing- , _larprsMarker = Nothing- , _larprsIsTruncated = Nothing- , _larprsResponseStatus = pResponseStatus_- }----- | A list of the attached policies.-larprsAttachedPolicies :: Lens' ListAttachedRolePoliciesResponse [AttachedPolicy]-larprsAttachedPolicies = lens _larprsAttachedPolicies (\ s a -> s{_larprsAttachedPolicies = a}) . _Default . _Coerce---- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-larprsMarker :: Lens' ListAttachedRolePoliciesResponse (Maybe Text)-larprsMarker = lens _larprsMarker (\ s a -> s{_larprsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-larprsIsTruncated :: Lens' ListAttachedRolePoliciesResponse (Maybe Bool)-larprsIsTruncated = lens _larprsIsTruncated (\ s a -> s{_larprsIsTruncated = a})---- | -- | The response status code.-larprsResponseStatus :: Lens' ListAttachedRolePoliciesResponse Int-larprsResponseStatus = lens _larprsResponseStatus (\ s a -> s{_larprsResponseStatus = a})--instance NFData ListAttachedRolePoliciesResponse- where
− gen/Network/AWS/IAM/ListAttachedUserPolicies.hs
@@ -1,201 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListAttachedUserPolicies--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists all managed policies that are attached to the specified IAM user.--------- An IAM user can also have inline policies embedded with it. To list the inline policies for a user, use the 'ListUserPolicies' API. For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ You can paginate the results using the @MaxItems@ and @Marker@ parameters. You can use the @PathPrefix@ parameter to limit the list of policies to only those matching the specified path prefix. If there are no policies attached to the specified group (or none that match the specified path prefix), the operation returns an empty list.--------- This operation returns paginated results.-module Network.AWS.IAM.ListAttachedUserPolicies- (- -- * Creating a Request- listAttachedUserPolicies- , ListAttachedUserPolicies- -- * Request Lenses- , laupPathPrefix- , laupMarker- , laupMaxItems- , laupUserName-- -- * Destructuring the Response- , listAttachedUserPoliciesResponse- , ListAttachedUserPoliciesResponse- -- * Response Lenses- , lauprsAttachedPolicies- , lauprsMarker- , lauprsIsTruncated- , lauprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listAttachedUserPolicies' smart constructor.-data ListAttachedUserPolicies = ListAttachedUserPolicies'- { _laupPathPrefix :: !(Maybe Text)- , _laupMarker :: !(Maybe Text)- , _laupMaxItems :: !(Maybe Nat)- , _laupUserName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAttachedUserPolicies' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'laupPathPrefix' - The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'laupMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'laupMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'laupUserName' - The name (friendly name, not ARN) of the user to list attached policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listAttachedUserPolicies- :: Text -- ^ 'laupUserName'- -> ListAttachedUserPolicies-listAttachedUserPolicies pUserName_ =- ListAttachedUserPolicies'- { _laupPathPrefix = Nothing- , _laupMarker = Nothing- , _laupMaxItems = Nothing- , _laupUserName = pUserName_- }----- | The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-laupPathPrefix :: Lens' ListAttachedUserPolicies (Maybe Text)-laupPathPrefix = lens _laupPathPrefix (\ s a -> s{_laupPathPrefix = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-laupMarker :: Lens' ListAttachedUserPolicies (Maybe Text)-laupMarker = lens _laupMarker (\ s a -> s{_laupMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-laupMaxItems :: Lens' ListAttachedUserPolicies (Maybe Natural)-laupMaxItems = lens _laupMaxItems (\ s a -> s{_laupMaxItems = a}) . mapping _Nat---- | The name (friendly name, not ARN) of the user to list attached policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--laupUserName :: Lens' ListAttachedUserPolicies Text-laupUserName = lens _laupUserName (\ s a -> s{_laupUserName = a})--instance AWSPager ListAttachedUserPolicies where- page rq rs- | stop (rs ^. lauprsIsTruncated) = Nothing- | isNothing (rs ^. lauprsMarker) = Nothing- | otherwise =- Just $ rq & laupMarker .~ rs ^. lauprsMarker--instance AWSRequest ListAttachedUserPolicies where- type Rs ListAttachedUserPolicies =- ListAttachedUserPoliciesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListAttachedUserPoliciesResult"- (\ s h x ->- ListAttachedUserPoliciesResponse' <$>- (x .@? "AttachedPolicies" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Marker")- <*> (x .@? "IsTruncated")- <*> (pure (fromEnum s)))--instance Hashable ListAttachedUserPolicies where--instance NFData ListAttachedUserPolicies where--instance ToHeaders ListAttachedUserPolicies where- toHeaders = const mempty--instance ToPath ListAttachedUserPolicies where- toPath = const "/"--instance ToQuery ListAttachedUserPolicies where- toQuery ListAttachedUserPolicies'{..}- = mconcat- ["Action" =:- ("ListAttachedUserPolicies" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _laupPathPrefix,- "Marker" =: _laupMarker, "MaxItems" =: _laupMaxItems,- "UserName" =: _laupUserName]---- | Contains the response to a successful 'ListAttachedUserPolicies' request.------------ /See:/ 'listAttachedUserPoliciesResponse' smart constructor.-data ListAttachedUserPoliciesResponse = ListAttachedUserPoliciesResponse'- { _lauprsAttachedPolicies :: !(Maybe [AttachedPolicy])- , _lauprsMarker :: !(Maybe Text)- , _lauprsIsTruncated :: !(Maybe Bool)- , _lauprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListAttachedUserPoliciesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lauprsAttachedPolicies' - A list of the attached policies.------ * 'lauprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lauprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lauprsResponseStatus' - -- | The response status code.-listAttachedUserPoliciesResponse- :: Int -- ^ 'lauprsResponseStatus'- -> ListAttachedUserPoliciesResponse-listAttachedUserPoliciesResponse pResponseStatus_ =- ListAttachedUserPoliciesResponse'- { _lauprsAttachedPolicies = Nothing- , _lauprsMarker = Nothing- , _lauprsIsTruncated = Nothing- , _lauprsResponseStatus = pResponseStatus_- }----- | A list of the attached policies.-lauprsAttachedPolicies :: Lens' ListAttachedUserPoliciesResponse [AttachedPolicy]-lauprsAttachedPolicies = lens _lauprsAttachedPolicies (\ s a -> s{_lauprsAttachedPolicies = a}) . _Default . _Coerce---- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lauprsMarker :: Lens' ListAttachedUserPoliciesResponse (Maybe Text)-lauprsMarker = lens _lauprsMarker (\ s a -> s{_lauprsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lauprsIsTruncated :: Lens' ListAttachedUserPoliciesResponse (Maybe Bool)-lauprsIsTruncated = lens _lauprsIsTruncated (\ s a -> s{_lauprsIsTruncated = a})---- | -- | The response status code.-lauprsResponseStatus :: Lens' ListAttachedUserPoliciesResponse Int-lauprsResponseStatus = lens _lauprsResponseStatus (\ s a -> s{_lauprsResponseStatus = a})--instance NFData ListAttachedUserPoliciesResponse- where
− gen/Network/AWS/IAM/ListEntitiesForPolicy.hs
@@ -1,233 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListEntitiesForPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists all IAM users, groups, and roles that the specified managed policy is attached to.--------- You can use the optional @EntityFilter@ parameter to limit the results to a particular type of entity (users, groups, or roles). For example, to list only the roles that are attached to the specified policy, set @EntityFilter@ to @Role@ .------ You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListEntitiesForPolicy- (- -- * Creating a Request- listEntitiesForPolicy- , ListEntitiesForPolicy- -- * Request Lenses- , lefpPathPrefix- , lefpEntityFilter- , lefpMarker- , lefpMaxItems- , lefpPolicyARN-- -- * Destructuring the Response- , listEntitiesForPolicyResponse- , ListEntitiesForPolicyResponse- -- * Response Lenses- , lefprsPolicyGroups- , lefprsPolicyRoles- , lefprsMarker- , lefprsPolicyUsers- , lefprsIsTruncated- , lefprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listEntitiesForPolicy' smart constructor.-data ListEntitiesForPolicy = ListEntitiesForPolicy'- { _lefpPathPrefix :: !(Maybe Text)- , _lefpEntityFilter :: !(Maybe EntityType)- , _lefpMarker :: !(Maybe Text)- , _lefpMaxItems :: !(Maybe Nat)- , _lefpPolicyARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListEntitiesForPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lefpPathPrefix' - The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all entities. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'lefpEntityFilter' - The entity type to use for filtering the results. For example, when @EntityFilter@ is @Role@ , only the roles that are attached to the specified policy are returned. This parameter is optional. If it is not included, all attached entities (users, groups, and roles) are returned. The argument for this parameter must be one of the valid values listed below.------ * 'lefpMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lefpMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'lefpPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy for which you want the versions. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-listEntitiesForPolicy- :: Text -- ^ 'lefpPolicyARN'- -> ListEntitiesForPolicy-listEntitiesForPolicy pPolicyARN_ =- ListEntitiesForPolicy'- { _lefpPathPrefix = Nothing- , _lefpEntityFilter = Nothing- , _lefpMarker = Nothing- , _lefpMaxItems = Nothing- , _lefpPolicyARN = pPolicyARN_- }----- | The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all entities. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-lefpPathPrefix :: Lens' ListEntitiesForPolicy (Maybe Text)-lefpPathPrefix = lens _lefpPathPrefix (\ s a -> s{_lefpPathPrefix = a})---- | The entity type to use for filtering the results. For example, when @EntityFilter@ is @Role@ , only the roles that are attached to the specified policy are returned. This parameter is optional. If it is not included, all attached entities (users, groups, and roles) are returned. The argument for this parameter must be one of the valid values listed below.-lefpEntityFilter :: Lens' ListEntitiesForPolicy (Maybe EntityType)-lefpEntityFilter = lens _lefpEntityFilter (\ s a -> s{_lefpEntityFilter = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lefpMarker :: Lens' ListEntitiesForPolicy (Maybe Text)-lefpMarker = lens _lefpMarker (\ s a -> s{_lefpMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lefpMaxItems :: Lens' ListEntitiesForPolicy (Maybe Natural)-lefpMaxItems = lens _lefpMaxItems (\ s a -> s{_lefpMaxItems = a}) . mapping _Nat---- | The Amazon Resource Name (ARN) of the IAM policy for which you want the versions. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-lefpPolicyARN :: Lens' ListEntitiesForPolicy Text-lefpPolicyARN = lens _lefpPolicyARN (\ s a -> s{_lefpPolicyARN = a})--instance AWSPager ListEntitiesForPolicy where- page rq rs- | stop (rs ^. lefprsIsTruncated) = Nothing- | isNothing (rs ^. lefprsMarker) = Nothing- | otherwise =- Just $ rq & lefpMarker .~ rs ^. lefprsMarker--instance AWSRequest ListEntitiesForPolicy where- type Rs ListEntitiesForPolicy =- ListEntitiesForPolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "ListEntitiesForPolicyResult"- (\ s h x ->- ListEntitiesForPolicyResponse' <$>- (x .@? "PolicyGroups" .!@ mempty >>=- may (parseXMLList "member"))- <*>- (x .@? "PolicyRoles" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Marker")- <*>- (x .@? "PolicyUsers" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "IsTruncated")- <*> (pure (fromEnum s)))--instance Hashable ListEntitiesForPolicy where--instance NFData ListEntitiesForPolicy where--instance ToHeaders ListEntitiesForPolicy where- toHeaders = const mempty--instance ToPath ListEntitiesForPolicy where- toPath = const "/"--instance ToQuery ListEntitiesForPolicy where- toQuery ListEntitiesForPolicy'{..}- = mconcat- ["Action" =: ("ListEntitiesForPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _lefpPathPrefix,- "EntityFilter" =: _lefpEntityFilter,- "Marker" =: _lefpMarker, "MaxItems" =: _lefpMaxItems,- "PolicyArn" =: _lefpPolicyARN]---- | Contains the response to a successful 'ListEntitiesForPolicy' request.------------ /See:/ 'listEntitiesForPolicyResponse' smart constructor.-data ListEntitiesForPolicyResponse = ListEntitiesForPolicyResponse'- { _lefprsPolicyGroups :: !(Maybe [PolicyGroup])- , _lefprsPolicyRoles :: !(Maybe [PolicyRole])- , _lefprsMarker :: !(Maybe Text)- , _lefprsPolicyUsers :: !(Maybe [PolicyUser])- , _lefprsIsTruncated :: !(Maybe Bool)- , _lefprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListEntitiesForPolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lefprsPolicyGroups' - A list of IAM groups that the policy is attached to.------ * 'lefprsPolicyRoles' - A list of IAM roles that the policy is attached to.------ * 'lefprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lefprsPolicyUsers' - A list of IAM users that the policy is attached to.------ * 'lefprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lefprsResponseStatus' - -- | The response status code.-listEntitiesForPolicyResponse- :: Int -- ^ 'lefprsResponseStatus'- -> ListEntitiesForPolicyResponse-listEntitiesForPolicyResponse pResponseStatus_ =- ListEntitiesForPolicyResponse'- { _lefprsPolicyGroups = Nothing- , _lefprsPolicyRoles = Nothing- , _lefprsMarker = Nothing- , _lefprsPolicyUsers = Nothing- , _lefprsIsTruncated = Nothing- , _lefprsResponseStatus = pResponseStatus_- }----- | A list of IAM groups that the policy is attached to.-lefprsPolicyGroups :: Lens' ListEntitiesForPolicyResponse [PolicyGroup]-lefprsPolicyGroups = lens _lefprsPolicyGroups (\ s a -> s{_lefprsPolicyGroups = a}) . _Default . _Coerce---- | A list of IAM roles that the policy is attached to.-lefprsPolicyRoles :: Lens' ListEntitiesForPolicyResponse [PolicyRole]-lefprsPolicyRoles = lens _lefprsPolicyRoles (\ s a -> s{_lefprsPolicyRoles = a}) . _Default . _Coerce---- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lefprsMarker :: Lens' ListEntitiesForPolicyResponse (Maybe Text)-lefprsMarker = lens _lefprsMarker (\ s a -> s{_lefprsMarker = a})---- | A list of IAM users that the policy is attached to.-lefprsPolicyUsers :: Lens' ListEntitiesForPolicyResponse [PolicyUser]-lefprsPolicyUsers = lens _lefprsPolicyUsers (\ s a -> s{_lefprsPolicyUsers = a}) . _Default . _Coerce---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lefprsIsTruncated :: Lens' ListEntitiesForPolicyResponse (Maybe Bool)-lefprsIsTruncated = lens _lefprsIsTruncated (\ s a -> s{_lefprsIsTruncated = a})---- | -- | The response status code.-lefprsResponseStatus :: Lens' ListEntitiesForPolicyResponse Int-lefprsResponseStatus = lens _lefprsResponseStatus (\ s a -> s{_lefprsResponseStatus = a})--instance NFData ListEntitiesForPolicyResponse where
− gen/Network/AWS/IAM/ListGroupPolicies.hs
@@ -1,185 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListGroupPolicies--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the names of the inline policies that are embedded in the specified IAM group.--------- An IAM group can also have managed policies attached to it. To list the managed policies that are attached to a group, use 'ListAttachedGroupPolicies' . For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ You can paginate the results using the @MaxItems@ and @Marker@ parameters. If there are no inline policies embedded with the specified group, the operation returns an empty list.--------- This operation returns paginated results.-module Network.AWS.IAM.ListGroupPolicies- (- -- * Creating a Request- listGroupPolicies- , ListGroupPolicies- -- * Request Lenses- , lgpMarker- , lgpMaxItems- , lgpGroupName-- -- * Destructuring the Response- , listGroupPoliciesResponse- , ListGroupPoliciesResponse- -- * Response Lenses- , lgprsMarker- , lgprsIsTruncated- , lgprsResponseStatus- , lgprsPolicyNames- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listGroupPolicies' smart constructor.-data ListGroupPolicies = ListGroupPolicies'- { _lgpMarker :: !(Maybe Text)- , _lgpMaxItems :: !(Maybe Nat)- , _lgpGroupName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListGroupPolicies' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lgpMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lgpMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'lgpGroupName' - The name of the group to list policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listGroupPolicies- :: Text -- ^ 'lgpGroupName'- -> ListGroupPolicies-listGroupPolicies pGroupName_ =- ListGroupPolicies'- {_lgpMarker = Nothing, _lgpMaxItems = Nothing, _lgpGroupName = pGroupName_}----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lgpMarker :: Lens' ListGroupPolicies (Maybe Text)-lgpMarker = lens _lgpMarker (\ s a -> s{_lgpMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lgpMaxItems :: Lens' ListGroupPolicies (Maybe Natural)-lgpMaxItems = lens _lgpMaxItems (\ s a -> s{_lgpMaxItems = a}) . mapping _Nat---- | The name of the group to list policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lgpGroupName :: Lens' ListGroupPolicies Text-lgpGroupName = lens _lgpGroupName (\ s a -> s{_lgpGroupName = a})--instance AWSPager ListGroupPolicies where- page rq rs- | stop (rs ^. lgprsIsTruncated) = Nothing- | isNothing (rs ^. lgprsMarker) = Nothing- | otherwise =- Just $ rq & lgpMarker .~ rs ^. lgprsMarker--instance AWSRequest ListGroupPolicies where- type Rs ListGroupPolicies = ListGroupPoliciesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListGroupPoliciesResult"- (\ s h x ->- ListGroupPoliciesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "PolicyNames" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListGroupPolicies where--instance NFData ListGroupPolicies where--instance ToHeaders ListGroupPolicies where- toHeaders = const mempty--instance ToPath ListGroupPolicies where- toPath = const "/"--instance ToQuery ListGroupPolicies where- toQuery ListGroupPolicies'{..}- = mconcat- ["Action" =: ("ListGroupPolicies" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _lgpMarker, "MaxItems" =: _lgpMaxItems,- "GroupName" =: _lgpGroupName]---- | Contains the response to a successful 'ListGroupPolicies' request.------------ /See:/ 'listGroupPoliciesResponse' smart constructor.-data ListGroupPoliciesResponse = ListGroupPoliciesResponse'- { _lgprsMarker :: !(Maybe Text)- , _lgprsIsTruncated :: !(Maybe Bool)- , _lgprsResponseStatus :: !Int- , _lgprsPolicyNames :: ![Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListGroupPoliciesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lgprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lgprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lgprsResponseStatus' - -- | The response status code.------ * 'lgprsPolicyNames' - A list of policy names. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listGroupPoliciesResponse- :: Int -- ^ 'lgprsResponseStatus'- -> ListGroupPoliciesResponse-listGroupPoliciesResponse pResponseStatus_ =- ListGroupPoliciesResponse'- { _lgprsMarker = Nothing- , _lgprsIsTruncated = Nothing- , _lgprsResponseStatus = pResponseStatus_- , _lgprsPolicyNames = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lgprsMarker :: Lens' ListGroupPoliciesResponse (Maybe Text)-lgprsMarker = lens _lgprsMarker (\ s a -> s{_lgprsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lgprsIsTruncated :: Lens' ListGroupPoliciesResponse (Maybe Bool)-lgprsIsTruncated = lens _lgprsIsTruncated (\ s a -> s{_lgprsIsTruncated = a})---- | -- | The response status code.-lgprsResponseStatus :: Lens' ListGroupPoliciesResponse Int-lgprsResponseStatus = lens _lgprsResponseStatus (\ s a -> s{_lgprsResponseStatus = a})---- | A list of policy names. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lgprsPolicyNames :: Lens' ListGroupPoliciesResponse [Text]-lgprsPolicyNames = lens _lgprsPolicyNames (\ s a -> s{_lgprsPolicyNames = a}) . _Coerce--instance NFData ListGroupPoliciesResponse where
− gen/Network/AWS/IAM/ListGroups.hs
@@ -1,182 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListGroups--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the IAM groups that have the specified path prefix.--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListGroups- (- -- * Creating a Request- listGroups- , ListGroups- -- * Request Lenses- , lgPathPrefix- , lgMarker- , lgMaxItems-- -- * Destructuring the Response- , listGroupsResponse- , ListGroupsResponse- -- * Response Lenses- , lgrsMarker- , lgrsIsTruncated- , lgrsResponseStatus- , lgrsGroups- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listGroups' smart constructor.-data ListGroups = ListGroups'- { _lgPathPrefix :: !(Maybe Text)- , _lgMarker :: !(Maybe Text)- , _lgMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListGroups' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lgPathPrefix' - The path prefix for filtering the results. For example, the prefix @/division_abc/subdivision_xyz/@ gets all groups whose path starts with @/division_abc/subdivision_xyz/@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all groups. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'lgMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lgMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listGroups- :: ListGroups-listGroups =- ListGroups'- {_lgPathPrefix = Nothing, _lgMarker = Nothing, _lgMaxItems = Nothing}----- | The path prefix for filtering the results. For example, the prefix @/division_abc/subdivision_xyz/@ gets all groups whose path starts with @/division_abc/subdivision_xyz/@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all groups. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-lgPathPrefix :: Lens' ListGroups (Maybe Text)-lgPathPrefix = lens _lgPathPrefix (\ s a -> s{_lgPathPrefix = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lgMarker :: Lens' ListGroups (Maybe Text)-lgMarker = lens _lgMarker (\ s a -> s{_lgMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lgMaxItems :: Lens' ListGroups (Maybe Natural)-lgMaxItems = lens _lgMaxItems (\ s a -> s{_lgMaxItems = a}) . mapping _Nat--instance AWSPager ListGroups where- page rq rs- | stop (rs ^. lgrsIsTruncated) = Nothing- | isNothing (rs ^. lgrsMarker) = Nothing- | otherwise =- Just $ rq & lgMarker .~ rs ^. lgrsMarker--instance AWSRequest ListGroups where- type Rs ListGroups = ListGroupsResponse- request = postQuery iam- response- = receiveXMLWrapper "ListGroupsResult"- (\ s h x ->- ListGroupsResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "Groups" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListGroups where--instance NFData ListGroups where--instance ToHeaders ListGroups where- toHeaders = const mempty--instance ToPath ListGroups where- toPath = const "/"--instance ToQuery ListGroups where- toQuery ListGroups'{..}- = mconcat- ["Action" =: ("ListGroups" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _lgPathPrefix, "Marker" =: _lgMarker,- "MaxItems" =: _lgMaxItems]---- | Contains the response to a successful 'ListGroups' request.------------ /See:/ 'listGroupsResponse' smart constructor.-data ListGroupsResponse = ListGroupsResponse'- { _lgrsMarker :: !(Maybe Text)- , _lgrsIsTruncated :: !(Maybe Bool)- , _lgrsResponseStatus :: !Int- , _lgrsGroups :: ![Group]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListGroupsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lgrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lgrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lgrsResponseStatus' - -- | The response status code.------ * 'lgrsGroups' - A list of groups.-listGroupsResponse- :: Int -- ^ 'lgrsResponseStatus'- -> ListGroupsResponse-listGroupsResponse pResponseStatus_ =- ListGroupsResponse'- { _lgrsMarker = Nothing- , _lgrsIsTruncated = Nothing- , _lgrsResponseStatus = pResponseStatus_- , _lgrsGroups = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lgrsMarker :: Lens' ListGroupsResponse (Maybe Text)-lgrsMarker = lens _lgrsMarker (\ s a -> s{_lgrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lgrsIsTruncated :: Lens' ListGroupsResponse (Maybe Bool)-lgrsIsTruncated = lens _lgrsIsTruncated (\ s a -> s{_lgrsIsTruncated = a})---- | -- | The response status code.-lgrsResponseStatus :: Lens' ListGroupsResponse Int-lgrsResponseStatus = lens _lgrsResponseStatus (\ s a -> s{_lgrsResponseStatus = a})---- | A list of groups.-lgrsGroups :: Lens' ListGroupsResponse [Group]-lgrsGroups = lens _lgrsGroups (\ s a -> s{_lgrsGroups = a}) . _Coerce--instance NFData ListGroupsResponse where
− gen/Network/AWS/IAM/ListGroupsForUser.hs
@@ -1,183 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListGroupsForUser--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the IAM groups that the specified IAM user belongs to.--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListGroupsForUser- (- -- * Creating a Request- listGroupsForUser- , ListGroupsForUser- -- * Request Lenses- , lgfuMarker- , lgfuMaxItems- , lgfuUserName-- -- * Destructuring the Response- , listGroupsForUserResponse- , ListGroupsForUserResponse- -- * Response Lenses- , lgfursMarker- , lgfursIsTruncated- , lgfursResponseStatus- , lgfursGroups- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listGroupsForUser' smart constructor.-data ListGroupsForUser = ListGroupsForUser'- { _lgfuMarker :: !(Maybe Text)- , _lgfuMaxItems :: !(Maybe Nat)- , _lgfuUserName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListGroupsForUser' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lgfuMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lgfuMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'lgfuUserName' - The name of the user to list groups for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listGroupsForUser- :: Text -- ^ 'lgfuUserName'- -> ListGroupsForUser-listGroupsForUser pUserName_ =- ListGroupsForUser'- {_lgfuMarker = Nothing, _lgfuMaxItems = Nothing, _lgfuUserName = pUserName_}----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lgfuMarker :: Lens' ListGroupsForUser (Maybe Text)-lgfuMarker = lens _lgfuMarker (\ s a -> s{_lgfuMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lgfuMaxItems :: Lens' ListGroupsForUser (Maybe Natural)-lgfuMaxItems = lens _lgfuMaxItems (\ s a -> s{_lgfuMaxItems = a}) . mapping _Nat---- | The name of the user to list groups for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lgfuUserName :: Lens' ListGroupsForUser Text-lgfuUserName = lens _lgfuUserName (\ s a -> s{_lgfuUserName = a})--instance AWSPager ListGroupsForUser where- page rq rs- | stop (rs ^. lgfursIsTruncated) = Nothing- | isNothing (rs ^. lgfursMarker) = Nothing- | otherwise =- Just $ rq & lgfuMarker .~ rs ^. lgfursMarker--instance AWSRequest ListGroupsForUser where- type Rs ListGroupsForUser = ListGroupsForUserResponse- request = postQuery iam- response- = receiveXMLWrapper "ListGroupsForUserResult"- (\ s h x ->- ListGroupsForUserResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "Groups" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListGroupsForUser where--instance NFData ListGroupsForUser where--instance ToHeaders ListGroupsForUser where- toHeaders = const mempty--instance ToPath ListGroupsForUser where- toPath = const "/"--instance ToQuery ListGroupsForUser where- toQuery ListGroupsForUser'{..}- = mconcat- ["Action" =: ("ListGroupsForUser" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _lgfuMarker, "MaxItems" =: _lgfuMaxItems,- "UserName" =: _lgfuUserName]---- | Contains the response to a successful 'ListGroupsForUser' request.------------ /See:/ 'listGroupsForUserResponse' smart constructor.-data ListGroupsForUserResponse = ListGroupsForUserResponse'- { _lgfursMarker :: !(Maybe Text)- , _lgfursIsTruncated :: !(Maybe Bool)- , _lgfursResponseStatus :: !Int- , _lgfursGroups :: ![Group]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListGroupsForUserResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lgfursMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lgfursIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lgfursResponseStatus' - -- | The response status code.------ * 'lgfursGroups' - A list of groups.-listGroupsForUserResponse- :: Int -- ^ 'lgfursResponseStatus'- -> ListGroupsForUserResponse-listGroupsForUserResponse pResponseStatus_ =- ListGroupsForUserResponse'- { _lgfursMarker = Nothing- , _lgfursIsTruncated = Nothing- , _lgfursResponseStatus = pResponseStatus_- , _lgfursGroups = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lgfursMarker :: Lens' ListGroupsForUserResponse (Maybe Text)-lgfursMarker = lens _lgfursMarker (\ s a -> s{_lgfursMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lgfursIsTruncated :: Lens' ListGroupsForUserResponse (Maybe Bool)-lgfursIsTruncated = lens _lgfursIsTruncated (\ s a -> s{_lgfursIsTruncated = a})---- | -- | The response status code.-lgfursResponseStatus :: Lens' ListGroupsForUserResponse Int-lgfursResponseStatus = lens _lgfursResponseStatus (\ s a -> s{_lgfursResponseStatus = a})---- | A list of groups.-lgfursGroups :: Lens' ListGroupsForUserResponse [Group]-lgfursGroups = lens _lgfursGroups (\ s a -> s{_lgfursGroups = a}) . _Coerce--instance NFData ListGroupsForUserResponse where
− gen/Network/AWS/IAM/ListInstanceProfiles.hs
@@ -1,183 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListInstanceProfiles--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the instance profiles that have the specified path prefix. If there are none, the operation returns an empty list. For more information about instance profiles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About Instance Profiles> .--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListInstanceProfiles- (- -- * Creating a Request- listInstanceProfiles- , ListInstanceProfiles- -- * Request Lenses- , lipPathPrefix- , lipMarker- , lipMaxItems-- -- * Destructuring the Response- , listInstanceProfilesResponse- , ListInstanceProfilesResponse- -- * Response Lenses- , liprsMarker- , liprsIsTruncated- , liprsResponseStatus- , liprsInstanceProfiles- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listInstanceProfiles' smart constructor.-data ListInstanceProfiles = ListInstanceProfiles'- { _lipPathPrefix :: !(Maybe Text)- , _lipMarker :: !(Maybe Text)- , _lipMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListInstanceProfiles' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lipPathPrefix' - The path prefix for filtering the results. For example, the prefix @/application_abc/component_xyz/@ gets all instance profiles whose path starts with @/application_abc/component_xyz/@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all instance profiles. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'lipMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lipMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listInstanceProfiles- :: ListInstanceProfiles-listInstanceProfiles =- ListInstanceProfiles'- {_lipPathPrefix = Nothing, _lipMarker = Nothing, _lipMaxItems = Nothing}----- | The path prefix for filtering the results. For example, the prefix @/application_abc/component_xyz/@ gets all instance profiles whose path starts with @/application_abc/component_xyz/@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all instance profiles. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-lipPathPrefix :: Lens' ListInstanceProfiles (Maybe Text)-lipPathPrefix = lens _lipPathPrefix (\ s a -> s{_lipPathPrefix = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lipMarker :: Lens' ListInstanceProfiles (Maybe Text)-lipMarker = lens _lipMarker (\ s a -> s{_lipMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lipMaxItems :: Lens' ListInstanceProfiles (Maybe Natural)-lipMaxItems = lens _lipMaxItems (\ s a -> s{_lipMaxItems = a}) . mapping _Nat--instance AWSPager ListInstanceProfiles where- page rq rs- | stop (rs ^. liprsIsTruncated) = Nothing- | isNothing (rs ^. liprsMarker) = Nothing- | otherwise =- Just $ rq & lipMarker .~ rs ^. liprsMarker--instance AWSRequest ListInstanceProfiles where- type Rs ListInstanceProfiles =- ListInstanceProfilesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListInstanceProfilesResult"- (\ s h x ->- ListInstanceProfilesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "InstanceProfiles" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListInstanceProfiles where--instance NFData ListInstanceProfiles where--instance ToHeaders ListInstanceProfiles where- toHeaders = const mempty--instance ToPath ListInstanceProfiles where- toPath = const "/"--instance ToQuery ListInstanceProfiles where- toQuery ListInstanceProfiles'{..}- = mconcat- ["Action" =: ("ListInstanceProfiles" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _lipPathPrefix,- "Marker" =: _lipMarker, "MaxItems" =: _lipMaxItems]---- | Contains the response to a successful 'ListInstanceProfiles' request.------------ /See:/ 'listInstanceProfilesResponse' smart constructor.-data ListInstanceProfilesResponse = ListInstanceProfilesResponse'- { _liprsMarker :: !(Maybe Text)- , _liprsIsTruncated :: !(Maybe Bool)- , _liprsResponseStatus :: !Int- , _liprsInstanceProfiles :: ![InstanceProfile]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListInstanceProfilesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'liprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'liprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'liprsResponseStatus' - -- | The response status code.------ * 'liprsInstanceProfiles' - A list of instance profiles.-listInstanceProfilesResponse- :: Int -- ^ 'liprsResponseStatus'- -> ListInstanceProfilesResponse-listInstanceProfilesResponse pResponseStatus_ =- ListInstanceProfilesResponse'- { _liprsMarker = Nothing- , _liprsIsTruncated = Nothing- , _liprsResponseStatus = pResponseStatus_- , _liprsInstanceProfiles = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-liprsMarker :: Lens' ListInstanceProfilesResponse (Maybe Text)-liprsMarker = lens _liprsMarker (\ s a -> s{_liprsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-liprsIsTruncated :: Lens' ListInstanceProfilesResponse (Maybe Bool)-liprsIsTruncated = lens _liprsIsTruncated (\ s a -> s{_liprsIsTruncated = a})---- | -- | The response status code.-liprsResponseStatus :: Lens' ListInstanceProfilesResponse Int-liprsResponseStatus = lens _liprsResponseStatus (\ s a -> s{_liprsResponseStatus = a})---- | A list of instance profiles.-liprsInstanceProfiles :: Lens' ListInstanceProfilesResponse [InstanceProfile]-liprsInstanceProfiles = lens _liprsInstanceProfiles (\ s a -> s{_liprsInstanceProfiles = a}) . _Coerce--instance NFData ListInstanceProfilesResponse where
− gen/Network/AWS/IAM/ListInstanceProfilesForRole.hs
@@ -1,191 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListInstanceProfilesForRole--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the instance profiles that have the specified associated IAM role. If there are none, the operation returns an empty list. For more information about instance profiles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About Instance Profiles> .--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListInstanceProfilesForRole- (- -- * Creating a Request- listInstanceProfilesForRole- , ListInstanceProfilesForRole- -- * Request Lenses- , lipfrMarker- , lipfrMaxItems- , lipfrRoleName-- -- * Destructuring the Response- , listInstanceProfilesForRoleResponse- , ListInstanceProfilesForRoleResponse- -- * Response Lenses- , lipfrrsMarker- , lipfrrsIsTruncated- , lipfrrsResponseStatus- , lipfrrsInstanceProfiles- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listInstanceProfilesForRole' smart constructor.-data ListInstanceProfilesForRole = ListInstanceProfilesForRole'- { _lipfrMarker :: !(Maybe Text)- , _lipfrMaxItems :: !(Maybe Nat)- , _lipfrRoleName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListInstanceProfilesForRole' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lipfrMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lipfrMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'lipfrRoleName' - The name of the role to list instance profiles for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listInstanceProfilesForRole- :: Text -- ^ 'lipfrRoleName'- -> ListInstanceProfilesForRole-listInstanceProfilesForRole pRoleName_ =- ListInstanceProfilesForRole'- { _lipfrMarker = Nothing- , _lipfrMaxItems = Nothing- , _lipfrRoleName = pRoleName_- }----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lipfrMarker :: Lens' ListInstanceProfilesForRole (Maybe Text)-lipfrMarker = lens _lipfrMarker (\ s a -> s{_lipfrMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lipfrMaxItems :: Lens' ListInstanceProfilesForRole (Maybe Natural)-lipfrMaxItems = lens _lipfrMaxItems (\ s a -> s{_lipfrMaxItems = a}) . mapping _Nat---- | The name of the role to list instance profiles for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lipfrRoleName :: Lens' ListInstanceProfilesForRole Text-lipfrRoleName = lens _lipfrRoleName (\ s a -> s{_lipfrRoleName = a})--instance AWSPager ListInstanceProfilesForRole where- page rq rs- | stop (rs ^. lipfrrsIsTruncated) = Nothing- | isNothing (rs ^. lipfrrsMarker) = Nothing- | otherwise =- Just $ rq & lipfrMarker .~ rs ^. lipfrrsMarker--instance AWSRequest ListInstanceProfilesForRole where- type Rs ListInstanceProfilesForRole =- ListInstanceProfilesForRoleResponse- request = postQuery iam- response- = receiveXMLWrapper- "ListInstanceProfilesForRoleResult"- (\ s h x ->- ListInstanceProfilesForRoleResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "InstanceProfiles" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListInstanceProfilesForRole where--instance NFData ListInstanceProfilesForRole where--instance ToHeaders ListInstanceProfilesForRole where- toHeaders = const mempty--instance ToPath ListInstanceProfilesForRole where- toPath = const "/"--instance ToQuery ListInstanceProfilesForRole where- toQuery ListInstanceProfilesForRole'{..}- = mconcat- ["Action" =:- ("ListInstanceProfilesForRole" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _lipfrMarker,- "MaxItems" =: _lipfrMaxItems,- "RoleName" =: _lipfrRoleName]---- | Contains the response to a successful 'ListInstanceProfilesForRole' request.------------ /See:/ 'listInstanceProfilesForRoleResponse' smart constructor.-data ListInstanceProfilesForRoleResponse = ListInstanceProfilesForRoleResponse'- { _lipfrrsMarker :: !(Maybe Text)- , _lipfrrsIsTruncated :: !(Maybe Bool)- , _lipfrrsResponseStatus :: !Int- , _lipfrrsInstanceProfiles :: ![InstanceProfile]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListInstanceProfilesForRoleResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lipfrrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lipfrrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lipfrrsResponseStatus' - -- | The response status code.------ * 'lipfrrsInstanceProfiles' - A list of instance profiles.-listInstanceProfilesForRoleResponse- :: Int -- ^ 'lipfrrsResponseStatus'- -> ListInstanceProfilesForRoleResponse-listInstanceProfilesForRoleResponse pResponseStatus_ =- ListInstanceProfilesForRoleResponse'- { _lipfrrsMarker = Nothing- , _lipfrrsIsTruncated = Nothing- , _lipfrrsResponseStatus = pResponseStatus_- , _lipfrrsInstanceProfiles = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lipfrrsMarker :: Lens' ListInstanceProfilesForRoleResponse (Maybe Text)-lipfrrsMarker = lens _lipfrrsMarker (\ s a -> s{_lipfrrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lipfrrsIsTruncated :: Lens' ListInstanceProfilesForRoleResponse (Maybe Bool)-lipfrrsIsTruncated = lens _lipfrrsIsTruncated (\ s a -> s{_lipfrrsIsTruncated = a})---- | -- | The response status code.-lipfrrsResponseStatus :: Lens' ListInstanceProfilesForRoleResponse Int-lipfrrsResponseStatus = lens _lipfrrsResponseStatus (\ s a -> s{_lipfrrsResponseStatus = a})---- | A list of instance profiles.-lipfrrsInstanceProfiles :: Lens' ListInstanceProfilesForRoleResponse [InstanceProfile]-lipfrrsInstanceProfiles = lens _lipfrrsInstanceProfiles (\ s a -> s{_lipfrrsInstanceProfiles = a}) . _Coerce--instance NFData ListInstanceProfilesForRoleResponse- where
− gen/Network/AWS/IAM/ListMFADevices.hs
@@ -1,182 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListMFADevices--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the MFA devices for an IAM user. If the request includes a IAM user name, then this operation lists all the MFA devices associated with the specified user. If you do not specify a user name, IAM determines the user name implicitly based on the AWS access key ID signing the request for this API.--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListMFADevices- (- -- * Creating a Request- listMFADevices- , ListMFADevices- -- * Request Lenses- , lmdUserName- , lmdMarker- , lmdMaxItems-- -- * Destructuring the Response- , listMFADevicesResponse- , ListMFADevicesResponse- -- * Response Lenses- , lmdrsMarker- , lmdrsIsTruncated- , lmdrsResponseStatus- , lmdrsMFADevices- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listMFADevices' smart constructor.-data ListMFADevices = ListMFADevices'- { _lmdUserName :: !(Maybe Text)- , _lmdMarker :: !(Maybe Text)- , _lmdMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListMFADevices' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lmdUserName' - The name of the user whose MFA devices you want to list. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'lmdMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lmdMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listMFADevices- :: ListMFADevices-listMFADevices =- ListMFADevices'- {_lmdUserName = Nothing, _lmdMarker = Nothing, _lmdMaxItems = Nothing}----- | The name of the user whose MFA devices you want to list. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lmdUserName :: Lens' ListMFADevices (Maybe Text)-lmdUserName = lens _lmdUserName (\ s a -> s{_lmdUserName = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lmdMarker :: Lens' ListMFADevices (Maybe Text)-lmdMarker = lens _lmdMarker (\ s a -> s{_lmdMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lmdMaxItems :: Lens' ListMFADevices (Maybe Natural)-lmdMaxItems = lens _lmdMaxItems (\ s a -> s{_lmdMaxItems = a}) . mapping _Nat--instance AWSPager ListMFADevices where- page rq rs- | stop (rs ^. lmdrsIsTruncated) = Nothing- | isNothing (rs ^. lmdrsMarker) = Nothing- | otherwise =- Just $ rq & lmdMarker .~ rs ^. lmdrsMarker--instance AWSRequest ListMFADevices where- type Rs ListMFADevices = ListMFADevicesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListMFADevicesResult"- (\ s h x ->- ListMFADevicesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "MFADevices" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListMFADevices where--instance NFData ListMFADevices where--instance ToHeaders ListMFADevices where- toHeaders = const mempty--instance ToPath ListMFADevices where- toPath = const "/"--instance ToQuery ListMFADevices where- toQuery ListMFADevices'{..}- = mconcat- ["Action" =: ("ListMFADevices" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _lmdUserName, "Marker" =: _lmdMarker,- "MaxItems" =: _lmdMaxItems]---- | Contains the response to a successful 'ListMFADevices' request.------------ /See:/ 'listMFADevicesResponse' smart constructor.-data ListMFADevicesResponse = ListMFADevicesResponse'- { _lmdrsMarker :: !(Maybe Text)- , _lmdrsIsTruncated :: !(Maybe Bool)- , _lmdrsResponseStatus :: !Int- , _lmdrsMFADevices :: ![MFADevice]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListMFADevicesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lmdrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lmdrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lmdrsResponseStatus' - -- | The response status code.------ * 'lmdrsMFADevices' - A list of MFA devices.-listMFADevicesResponse- :: Int -- ^ 'lmdrsResponseStatus'- -> ListMFADevicesResponse-listMFADevicesResponse pResponseStatus_ =- ListMFADevicesResponse'- { _lmdrsMarker = Nothing- , _lmdrsIsTruncated = Nothing- , _lmdrsResponseStatus = pResponseStatus_- , _lmdrsMFADevices = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lmdrsMarker :: Lens' ListMFADevicesResponse (Maybe Text)-lmdrsMarker = lens _lmdrsMarker (\ s a -> s{_lmdrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lmdrsIsTruncated :: Lens' ListMFADevicesResponse (Maybe Bool)-lmdrsIsTruncated = lens _lmdrsIsTruncated (\ s a -> s{_lmdrsIsTruncated = a})---- | -- | The response status code.-lmdrsResponseStatus :: Lens' ListMFADevicesResponse Int-lmdrsResponseStatus = lens _lmdrsResponseStatus (\ s a -> s{_lmdrsResponseStatus = a})---- | A list of MFA devices.-lmdrsMFADevices :: Lens' ListMFADevicesResponse [MFADevice]-lmdrsMFADevices = lens _lmdrsMFADevices (\ s a -> s{_lmdrsMFADevices = a}) . _Coerce--instance NFData ListMFADevicesResponse where
− gen/Network/AWS/IAM/ListOpenIdConnectProviders.hs
@@ -1,126 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListOpenIdConnectProviders--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists information about the IAM OpenID Connect (OIDC) provider resource objects defined in the AWS account.-------module Network.AWS.IAM.ListOpenIdConnectProviders- (- -- * Creating a Request- listOpenIdConnectProviders- , ListOpenIdConnectProviders-- -- * Destructuring the Response- , listOpenIdConnectProvidersResponse- , ListOpenIdConnectProvidersResponse- -- * Response Lenses- , loicprsOpenIdConnectProviderList- , loicprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listOpenIdConnectProviders' smart constructor.-data ListOpenIdConnectProviders =- ListOpenIdConnectProviders'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListOpenIdConnectProviders' with the minimum fields required to make a request.----listOpenIdConnectProviders- :: ListOpenIdConnectProviders-listOpenIdConnectProviders = ListOpenIdConnectProviders'---instance AWSRequest ListOpenIdConnectProviders where- type Rs ListOpenIdConnectProviders =- ListOpenIdConnectProvidersResponse- request = postQuery iam- response- = receiveXMLWrapper- "ListOpenIDConnectProvidersResult"- (\ s h x ->- ListOpenIdConnectProvidersResponse' <$>- (x .@? "OpenIDConnectProviderList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (pure (fromEnum s)))--instance Hashable ListOpenIdConnectProviders where--instance NFData ListOpenIdConnectProviders where--instance ToHeaders ListOpenIdConnectProviders where- toHeaders = const mempty--instance ToPath ListOpenIdConnectProviders where- toPath = const "/"--instance ToQuery ListOpenIdConnectProviders where- toQuery- = const- (mconcat- ["Action" =:- ("ListOpenIDConnectProviders" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString)])---- | Contains the response to a successful 'ListOpenIDConnectProviders' request.------------ /See:/ 'listOpenIdConnectProvidersResponse' smart constructor.-data ListOpenIdConnectProvidersResponse = ListOpenIdConnectProvidersResponse'- { _loicprsOpenIdConnectProviderList :: !(Maybe [OpenIdConnectProviderListEntry])- , _loicprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListOpenIdConnectProvidersResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'loicprsOpenIdConnectProviderList' - The list of IAM OIDC provider resource objects defined in the AWS account.------ * 'loicprsResponseStatus' - -- | The response status code.-listOpenIdConnectProvidersResponse- :: Int -- ^ 'loicprsResponseStatus'- -> ListOpenIdConnectProvidersResponse-listOpenIdConnectProvidersResponse pResponseStatus_ =- ListOpenIdConnectProvidersResponse'- { _loicprsOpenIdConnectProviderList = Nothing- , _loicprsResponseStatus = pResponseStatus_- }----- | The list of IAM OIDC provider resource objects defined in the AWS account.-loicprsOpenIdConnectProviderList :: Lens' ListOpenIdConnectProvidersResponse [OpenIdConnectProviderListEntry]-loicprsOpenIdConnectProviderList = lens _loicprsOpenIdConnectProviderList (\ s a -> s{_loicprsOpenIdConnectProviderList = a}) . _Default . _Coerce---- | -- | The response status code.-loicprsResponseStatus :: Lens' ListOpenIdConnectProvidersResponse Int-loicprsResponseStatus = lens _loicprsResponseStatus (\ s a -> s{_loicprsResponseStatus = a})--instance NFData ListOpenIdConnectProvidersResponse- where
− gen/Network/AWS/IAM/ListPolicies.hs
@@ -1,208 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListPolicies--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists all the managed policies that are available in your AWS account, including your own customer-defined managed policies and all AWS managed policies.--------- You can filter the list of policies that is returned using the optional @OnlyAttached@ , @Scope@ , and @PathPrefix@ parameters. For example, to list only the customer managed policies in your AWS account, set @Scope@ to @Local@ . To list only AWS managed policies, set @Scope@ to @AWS@ .------ You can paginate the results using the @MaxItems@ and @Marker@ parameters.------ For more information about managed policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .--------- This operation returns paginated results.-module Network.AWS.IAM.ListPolicies- (- -- * Creating a Request- listPolicies- , ListPolicies- -- * Request Lenses- , lpPathPrefix- , lpOnlyAttached- , lpMarker- , lpScope- , lpMaxItems-- -- * Destructuring the Response- , listPoliciesResponse- , ListPoliciesResponse- -- * Response Lenses- , lprsMarker- , lprsIsTruncated- , lprsPolicies- , lprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listPolicies' smart constructor.-data ListPolicies = ListPolicies'- { _lpPathPrefix :: !(Maybe Text)- , _lpOnlyAttached :: !(Maybe Bool)- , _lpMarker :: !(Maybe Text)- , _lpScope :: !(Maybe PolicyScopeType)- , _lpMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListPolicies' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lpPathPrefix' - The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'lpOnlyAttached' - A flag to filter the results to only the attached policies. When @OnlyAttached@ is @true@ , the returned list contains only the policies that are attached to an IAM user, group, or role. When @OnlyAttached@ is @false@ , or when the parameter is not included, all policies are returned.------ * 'lpMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lpScope' - The scope to use for filtering the results. To list only AWS managed policies, set @Scope@ to @AWS@ . To list only the customer managed policies in your AWS account, set @Scope@ to @Local@ . This parameter is optional. If it is not included, or if it is set to @All@ , all policies are returned.------ * 'lpMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listPolicies- :: ListPolicies-listPolicies =- ListPolicies'- { _lpPathPrefix = Nothing- , _lpOnlyAttached = Nothing- , _lpMarker = Nothing- , _lpScope = Nothing- , _lpMaxItems = Nothing- }----- | The path prefix for filtering the results. This parameter is optional. If it is not included, it defaults to a slash (/), listing all policies. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-lpPathPrefix :: Lens' ListPolicies (Maybe Text)-lpPathPrefix = lens _lpPathPrefix (\ s a -> s{_lpPathPrefix = a})---- | A flag to filter the results to only the attached policies. When @OnlyAttached@ is @true@ , the returned list contains only the policies that are attached to an IAM user, group, or role. When @OnlyAttached@ is @false@ , or when the parameter is not included, all policies are returned.-lpOnlyAttached :: Lens' ListPolicies (Maybe Bool)-lpOnlyAttached = lens _lpOnlyAttached (\ s a -> s{_lpOnlyAttached = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lpMarker :: Lens' ListPolicies (Maybe Text)-lpMarker = lens _lpMarker (\ s a -> s{_lpMarker = a})---- | The scope to use for filtering the results. To list only AWS managed policies, set @Scope@ to @AWS@ . To list only the customer managed policies in your AWS account, set @Scope@ to @Local@ . This parameter is optional. If it is not included, or if it is set to @All@ , all policies are returned.-lpScope :: Lens' ListPolicies (Maybe PolicyScopeType)-lpScope = lens _lpScope (\ s a -> s{_lpScope = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lpMaxItems :: Lens' ListPolicies (Maybe Natural)-lpMaxItems = lens _lpMaxItems (\ s a -> s{_lpMaxItems = a}) . mapping _Nat--instance AWSPager ListPolicies where- page rq rs- | stop (rs ^. lprsIsTruncated) = Nothing- | isNothing (rs ^. lprsMarker) = Nothing- | otherwise =- Just $ rq & lpMarker .~ rs ^. lprsMarker--instance AWSRequest ListPolicies where- type Rs ListPolicies = ListPoliciesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListPoliciesResult"- (\ s h x ->- ListPoliciesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (x .@? "Policies" .!@ mempty >>=- may (parseXMLList "member"))- <*> (pure (fromEnum s)))--instance Hashable ListPolicies where--instance NFData ListPolicies where--instance ToHeaders ListPolicies where- toHeaders = const mempty--instance ToPath ListPolicies where- toPath = const "/"--instance ToQuery ListPolicies where- toQuery ListPolicies'{..}- = mconcat- ["Action" =: ("ListPolicies" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _lpPathPrefix,- "OnlyAttached" =: _lpOnlyAttached,- "Marker" =: _lpMarker, "Scope" =: _lpScope,- "MaxItems" =: _lpMaxItems]---- | Contains the response to a successful 'ListPolicies' request.------------ /See:/ 'listPoliciesResponse' smart constructor.-data ListPoliciesResponse = ListPoliciesResponse'- { _lprsMarker :: !(Maybe Text)- , _lprsIsTruncated :: !(Maybe Bool)- , _lprsPolicies :: !(Maybe [Policy])- , _lprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListPoliciesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lprsPolicies' - A list of policies.------ * 'lprsResponseStatus' - -- | The response status code.-listPoliciesResponse- :: Int -- ^ 'lprsResponseStatus'- -> ListPoliciesResponse-listPoliciesResponse pResponseStatus_ =- ListPoliciesResponse'- { _lprsMarker = Nothing- , _lprsIsTruncated = Nothing- , _lprsPolicies = Nothing- , _lprsResponseStatus = pResponseStatus_- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lprsMarker :: Lens' ListPoliciesResponse (Maybe Text)-lprsMarker = lens _lprsMarker (\ s a -> s{_lprsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lprsIsTruncated :: Lens' ListPoliciesResponse (Maybe Bool)-lprsIsTruncated = lens _lprsIsTruncated (\ s a -> s{_lprsIsTruncated = a})---- | A list of policies.-lprsPolicies :: Lens' ListPoliciesResponse [Policy]-lprsPolicies = lens _lprsPolicies (\ s a -> s{_lprsPolicies = a}) . _Default . _Coerce---- | -- | The response status code.-lprsResponseStatus :: Lens' ListPoliciesResponse Int-lprsResponseStatus = lens _lprsResponseStatus (\ s a -> s{_lprsResponseStatus = a})--instance NFData ListPoliciesResponse where
− gen/Network/AWS/IAM/ListPolicyVersions.hs
@@ -1,184 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListPolicyVersions--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists information about the versions of the specified managed policy, including the version that is currently set as the policy's default version.--------- For more information about managed policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .--------- This operation returns paginated results.-module Network.AWS.IAM.ListPolicyVersions- (- -- * Creating a Request- listPolicyVersions- , ListPolicyVersions- -- * Request Lenses- , lpvMarker- , lpvMaxItems- , lpvPolicyARN-- -- * Destructuring the Response- , listPolicyVersionsResponse- , ListPolicyVersionsResponse- -- * Response Lenses- , lpvrsVersions- , lpvrsMarker- , lpvrsIsTruncated- , lpvrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listPolicyVersions' smart constructor.-data ListPolicyVersions = ListPolicyVersions'- { _lpvMarker :: !(Maybe Text)- , _lpvMaxItems :: !(Maybe Nat)- , _lpvPolicyARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListPolicyVersions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lpvMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lpvMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'lpvPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy for which you want the versions. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-listPolicyVersions- :: Text -- ^ 'lpvPolicyARN'- -> ListPolicyVersions-listPolicyVersions pPolicyARN_ =- ListPolicyVersions'- {_lpvMarker = Nothing, _lpvMaxItems = Nothing, _lpvPolicyARN = pPolicyARN_}----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lpvMarker :: Lens' ListPolicyVersions (Maybe Text)-lpvMarker = lens _lpvMarker (\ s a -> s{_lpvMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lpvMaxItems :: Lens' ListPolicyVersions (Maybe Natural)-lpvMaxItems = lens _lpvMaxItems (\ s a -> s{_lpvMaxItems = a}) . mapping _Nat---- | The Amazon Resource Name (ARN) of the IAM policy for which you want the versions. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-lpvPolicyARN :: Lens' ListPolicyVersions Text-lpvPolicyARN = lens _lpvPolicyARN (\ s a -> s{_lpvPolicyARN = a})--instance AWSPager ListPolicyVersions where- page rq rs- | stop (rs ^. lpvrsIsTruncated) = Nothing- | isNothing (rs ^. lpvrsMarker) = Nothing- | otherwise =- Just $ rq & lpvMarker .~ rs ^. lpvrsMarker--instance AWSRequest ListPolicyVersions where- type Rs ListPolicyVersions =- ListPolicyVersionsResponse- request = postQuery iam- response- = receiveXMLWrapper "ListPolicyVersionsResult"- (\ s h x ->- ListPolicyVersionsResponse' <$>- (x .@? "Versions" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Marker")- <*> (x .@? "IsTruncated")- <*> (pure (fromEnum s)))--instance Hashable ListPolicyVersions where--instance NFData ListPolicyVersions where--instance ToHeaders ListPolicyVersions where- toHeaders = const mempty--instance ToPath ListPolicyVersions where- toPath = const "/"--instance ToQuery ListPolicyVersions where- toQuery ListPolicyVersions'{..}- = mconcat- ["Action" =: ("ListPolicyVersions" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _lpvMarker, "MaxItems" =: _lpvMaxItems,- "PolicyArn" =: _lpvPolicyARN]---- | Contains the response to a successful 'ListPolicyVersions' request.------------ /See:/ 'listPolicyVersionsResponse' smart constructor.-data ListPolicyVersionsResponse = ListPolicyVersionsResponse'- { _lpvrsVersions :: !(Maybe [PolicyVersion])- , _lpvrsMarker :: !(Maybe Text)- , _lpvrsIsTruncated :: !(Maybe Bool)- , _lpvrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListPolicyVersionsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lpvrsVersions' - A list of policy versions. For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .------ * 'lpvrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lpvrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lpvrsResponseStatus' - -- | The response status code.-listPolicyVersionsResponse- :: Int -- ^ 'lpvrsResponseStatus'- -> ListPolicyVersionsResponse-listPolicyVersionsResponse pResponseStatus_ =- ListPolicyVersionsResponse'- { _lpvrsVersions = Nothing- , _lpvrsMarker = Nothing- , _lpvrsIsTruncated = Nothing- , _lpvrsResponseStatus = pResponseStatus_- }----- | A list of policy versions. For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .-lpvrsVersions :: Lens' ListPolicyVersionsResponse [PolicyVersion]-lpvrsVersions = lens _lpvrsVersions (\ s a -> s{_lpvrsVersions = a}) . _Default . _Coerce---- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lpvrsMarker :: Lens' ListPolicyVersionsResponse (Maybe Text)-lpvrsMarker = lens _lpvrsMarker (\ s a -> s{_lpvrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lpvrsIsTruncated :: Lens' ListPolicyVersionsResponse (Maybe Bool)-lpvrsIsTruncated = lens _lpvrsIsTruncated (\ s a -> s{_lpvrsIsTruncated = a})---- | -- | The response status code.-lpvrsResponseStatus :: Lens' ListPolicyVersionsResponse Int-lpvrsResponseStatus = lens _lpvrsResponseStatus (\ s a -> s{_lpvrsResponseStatus = a})--instance NFData ListPolicyVersionsResponse where
− gen/Network/AWS/IAM/ListRolePolicies.hs
@@ -1,185 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListRolePolicies--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the names of the inline policies that are embedded in the specified IAM role.--------- An IAM role can also have managed policies attached to it. To list the managed policies that are attached to a role, use 'ListAttachedRolePolicies' . For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ You can paginate the results using the @MaxItems@ and @Marker@ parameters. If there are no inline policies embedded with the specified role, the operation returns an empty list.--------- This operation returns paginated results.-module Network.AWS.IAM.ListRolePolicies- (- -- * Creating a Request- listRolePolicies- , ListRolePolicies- -- * Request Lenses- , lrpMarker- , lrpMaxItems- , lrpRoleName-- -- * Destructuring the Response- , listRolePoliciesResponse- , ListRolePoliciesResponse- -- * Response Lenses- , lrprsMarker- , lrprsIsTruncated- , lrprsResponseStatus- , lrprsPolicyNames- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listRolePolicies' smart constructor.-data ListRolePolicies = ListRolePolicies'- { _lrpMarker :: !(Maybe Text)- , _lrpMaxItems :: !(Maybe Nat)- , _lrpRoleName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListRolePolicies' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lrpMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lrpMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'lrpRoleName' - The name of the role to list policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listRolePolicies- :: Text -- ^ 'lrpRoleName'- -> ListRolePolicies-listRolePolicies pRoleName_ =- ListRolePolicies'- {_lrpMarker = Nothing, _lrpMaxItems = Nothing, _lrpRoleName = pRoleName_}----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lrpMarker :: Lens' ListRolePolicies (Maybe Text)-lrpMarker = lens _lrpMarker (\ s a -> s{_lrpMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lrpMaxItems :: Lens' ListRolePolicies (Maybe Natural)-lrpMaxItems = lens _lrpMaxItems (\ s a -> s{_lrpMaxItems = a}) . mapping _Nat---- | The name of the role to list policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lrpRoleName :: Lens' ListRolePolicies Text-lrpRoleName = lens _lrpRoleName (\ s a -> s{_lrpRoleName = a})--instance AWSPager ListRolePolicies where- page rq rs- | stop (rs ^. lrprsIsTruncated) = Nothing- | isNothing (rs ^. lrprsMarker) = Nothing- | otherwise =- Just $ rq & lrpMarker .~ rs ^. lrprsMarker--instance AWSRequest ListRolePolicies where- type Rs ListRolePolicies = ListRolePoliciesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListRolePoliciesResult"- (\ s h x ->- ListRolePoliciesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "PolicyNames" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListRolePolicies where--instance NFData ListRolePolicies where--instance ToHeaders ListRolePolicies where- toHeaders = const mempty--instance ToPath ListRolePolicies where- toPath = const "/"--instance ToQuery ListRolePolicies where- toQuery ListRolePolicies'{..}- = mconcat- ["Action" =: ("ListRolePolicies" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _lrpMarker, "MaxItems" =: _lrpMaxItems,- "RoleName" =: _lrpRoleName]---- | Contains the response to a successful 'ListRolePolicies' request.------------ /See:/ 'listRolePoliciesResponse' smart constructor.-data ListRolePoliciesResponse = ListRolePoliciesResponse'- { _lrprsMarker :: !(Maybe Text)- , _lrprsIsTruncated :: !(Maybe Bool)- , _lrprsResponseStatus :: !Int- , _lrprsPolicyNames :: ![Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListRolePoliciesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lrprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lrprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lrprsResponseStatus' - -- | The response status code.------ * 'lrprsPolicyNames' - A list of policy names.-listRolePoliciesResponse- :: Int -- ^ 'lrprsResponseStatus'- -> ListRolePoliciesResponse-listRolePoliciesResponse pResponseStatus_ =- ListRolePoliciesResponse'- { _lrprsMarker = Nothing- , _lrprsIsTruncated = Nothing- , _lrprsResponseStatus = pResponseStatus_- , _lrprsPolicyNames = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lrprsMarker :: Lens' ListRolePoliciesResponse (Maybe Text)-lrprsMarker = lens _lrprsMarker (\ s a -> s{_lrprsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lrprsIsTruncated :: Lens' ListRolePoliciesResponse (Maybe Bool)-lrprsIsTruncated = lens _lrprsIsTruncated (\ s a -> s{_lrprsIsTruncated = a})---- | -- | The response status code.-lrprsResponseStatus :: Lens' ListRolePoliciesResponse Int-lrprsResponseStatus = lens _lrprsResponseStatus (\ s a -> s{_lrprsResponseStatus = a})---- | A list of policy names.-lrprsPolicyNames :: Lens' ListRolePoliciesResponse [Text]-lrprsPolicyNames = lens _lrprsPolicyNames (\ s a -> s{_lrprsPolicyNames = a}) . _Coerce--instance NFData ListRolePoliciesResponse where
− gen/Network/AWS/IAM/ListRoles.hs
@@ -1,181 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListRoles--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the IAM roles that have the specified path prefix. If there are none, the operation returns an empty list. For more information about roles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with Roles> .--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListRoles- (- -- * Creating a Request- listRoles- , ListRoles- -- * Request Lenses- , lrPathPrefix- , lrMarker- , lrMaxItems-- -- * Destructuring the Response- , listRolesResponse- , ListRolesResponse- -- * Response Lenses- , lrrsMarker- , lrrsIsTruncated- , lrrsResponseStatus- , lrrsRoles- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listRoles' smart constructor.-data ListRoles = ListRoles'- { _lrPathPrefix :: !(Maybe Text)- , _lrMarker :: !(Maybe Text)- , _lrMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListRoles' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lrPathPrefix' - The path prefix for filtering the results. For example, the prefix @/application_abc/component_xyz/@ gets all roles whose path starts with @/application_abc/component_xyz/@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all roles. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'lrMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lrMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listRoles- :: ListRoles-listRoles =- ListRoles'- {_lrPathPrefix = Nothing, _lrMarker = Nothing, _lrMaxItems = Nothing}----- | The path prefix for filtering the results. For example, the prefix @/application_abc/component_xyz/@ gets all roles whose path starts with @/application_abc/component_xyz/@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all roles. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-lrPathPrefix :: Lens' ListRoles (Maybe Text)-lrPathPrefix = lens _lrPathPrefix (\ s a -> s{_lrPathPrefix = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lrMarker :: Lens' ListRoles (Maybe Text)-lrMarker = lens _lrMarker (\ s a -> s{_lrMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lrMaxItems :: Lens' ListRoles (Maybe Natural)-lrMaxItems = lens _lrMaxItems (\ s a -> s{_lrMaxItems = a}) . mapping _Nat--instance AWSPager ListRoles where- page rq rs- | stop (rs ^. lrrsIsTruncated) = Nothing- | isNothing (rs ^. lrrsMarker) = Nothing- | otherwise =- Just $ rq & lrMarker .~ rs ^. lrrsMarker--instance AWSRequest ListRoles where- type Rs ListRoles = ListRolesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListRolesResult"- (\ s h x ->- ListRolesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "Roles" .!@ mempty >>= parseXMLList "member"))--instance Hashable ListRoles where--instance NFData ListRoles where--instance ToHeaders ListRoles where- toHeaders = const mempty--instance ToPath ListRoles where- toPath = const "/"--instance ToQuery ListRoles where- toQuery ListRoles'{..}- = mconcat- ["Action" =: ("ListRoles" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _lrPathPrefix, "Marker" =: _lrMarker,- "MaxItems" =: _lrMaxItems]---- | Contains the response to a successful 'ListRoles' request.------------ /See:/ 'listRolesResponse' smart constructor.-data ListRolesResponse = ListRolesResponse'- { _lrrsMarker :: !(Maybe Text)- , _lrrsIsTruncated :: !(Maybe Bool)- , _lrrsResponseStatus :: !Int- , _lrrsRoles :: ![Role]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListRolesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lrrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lrrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lrrsResponseStatus' - -- | The response status code.------ * 'lrrsRoles' - A list of roles.-listRolesResponse- :: Int -- ^ 'lrrsResponseStatus'- -> ListRolesResponse-listRolesResponse pResponseStatus_ =- ListRolesResponse'- { _lrrsMarker = Nothing- , _lrrsIsTruncated = Nothing- , _lrrsResponseStatus = pResponseStatus_- , _lrrsRoles = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lrrsMarker :: Lens' ListRolesResponse (Maybe Text)-lrrsMarker = lens _lrrsMarker (\ s a -> s{_lrrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lrrsIsTruncated :: Lens' ListRolesResponse (Maybe Bool)-lrrsIsTruncated = lens _lrrsIsTruncated (\ s a -> s{_lrrsIsTruncated = a})---- | -- | The response status code.-lrrsResponseStatus :: Lens' ListRolesResponse Int-lrrsResponseStatus = lens _lrrsResponseStatus (\ s a -> s{_lrrsResponseStatus = a})---- | A list of roles.-lrrsRoles :: Lens' ListRolesResponse [Role]-lrrsRoles = lens _lrrsRoles (\ s a -> s{_lrrsRoles = a}) . _Coerce--instance NFData ListRolesResponse where
− gen/Network/AWS/IAM/ListSAMLProviders.hs
@@ -1,122 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListSAMLProviders--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the SAML provider resource objects defined in IAM in the account.-------module Network.AWS.IAM.ListSAMLProviders- (- -- * Creating a Request- listSAMLProviders- , ListSAMLProviders-- -- * Destructuring the Response- , listSAMLProvidersResponse- , ListSAMLProvidersResponse- -- * Response Lenses- , lsamlprsSAMLProviderList- , lsamlprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listSAMLProviders' smart constructor.-data ListSAMLProviders =- ListSAMLProviders'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListSAMLProviders' with the minimum fields required to make a request.----listSAMLProviders- :: ListSAMLProviders-listSAMLProviders = ListSAMLProviders'---instance AWSRequest ListSAMLProviders where- type Rs ListSAMLProviders = ListSAMLProvidersResponse- request = postQuery iam- response- = receiveXMLWrapper "ListSAMLProvidersResult"- (\ s h x ->- ListSAMLProvidersResponse' <$>- (x .@? "SAMLProviderList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (pure (fromEnum s)))--instance Hashable ListSAMLProviders where--instance NFData ListSAMLProviders where--instance ToHeaders ListSAMLProviders where- toHeaders = const mempty--instance ToPath ListSAMLProviders where- toPath = const "/"--instance ToQuery ListSAMLProviders where- toQuery- = const- (mconcat- ["Action" =: ("ListSAMLProviders" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString)])---- | Contains the response to a successful 'ListSAMLProviders' request.------------ /See:/ 'listSAMLProvidersResponse' smart constructor.-data ListSAMLProvidersResponse = ListSAMLProvidersResponse'- { _lsamlprsSAMLProviderList :: !(Maybe [SAMLProviderListEntry])- , _lsamlprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListSAMLProvidersResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lsamlprsSAMLProviderList' - The list of SAML provider resource objects defined in IAM for this AWS account.------ * 'lsamlprsResponseStatus' - -- | The response status code.-listSAMLProvidersResponse- :: Int -- ^ 'lsamlprsResponseStatus'- -> ListSAMLProvidersResponse-listSAMLProvidersResponse pResponseStatus_ =- ListSAMLProvidersResponse'- { _lsamlprsSAMLProviderList = Nothing- , _lsamlprsResponseStatus = pResponseStatus_- }----- | The list of SAML provider resource objects defined in IAM for this AWS account.-lsamlprsSAMLProviderList :: Lens' ListSAMLProvidersResponse [SAMLProviderListEntry]-lsamlprsSAMLProviderList = lens _lsamlprsSAMLProviderList (\ s a -> s{_lsamlprsSAMLProviderList = a}) . _Default . _Coerce---- | -- | The response status code.-lsamlprsResponseStatus :: Lens' ListSAMLProvidersResponse Int-lsamlprsResponseStatus = lens _lsamlprsResponseStatus (\ s a -> s{_lsamlprsResponseStatus = a})--instance NFData ListSAMLProvidersResponse where
− gen/Network/AWS/IAM/ListSSHPublicKeys.hs
@@ -1,184 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListSSHPublicKeys--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Returns information about the SSH public keys associated with the specified IAM user. If there are none, the operation returns an empty list.--------- The SSH public keys returned by this operation are used only for authenticating the IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see <http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up AWS CodeCommit for SSH Connections> in the /AWS CodeCommit User Guide/ .------ Although each user is limited to a small number of keys, you can still paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListSSHPublicKeys- (- -- * Creating a Request- listSSHPublicKeys- , ListSSHPublicKeys- -- * Request Lenses- , lspkUserName- , lspkMarker- , lspkMaxItems-- -- * Destructuring the Response- , listSSHPublicKeysResponse- , ListSSHPublicKeysResponse- -- * Response Lenses- , lspkrsSSHPublicKeys- , lspkrsMarker- , lspkrsIsTruncated- , lspkrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listSSHPublicKeys' smart constructor.-data ListSSHPublicKeys = ListSSHPublicKeys'- { _lspkUserName :: !(Maybe Text)- , _lspkMarker :: !(Maybe Text)- , _lspkMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListSSHPublicKeys' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lspkUserName' - The name of the IAM user to list SSH public keys for. If none is specified, the @UserName@ field is determined implicitly based on the AWS access key used to sign the request. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'lspkMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lspkMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listSSHPublicKeys- :: ListSSHPublicKeys-listSSHPublicKeys =- ListSSHPublicKeys'- {_lspkUserName = Nothing, _lspkMarker = Nothing, _lspkMaxItems = Nothing}----- | The name of the IAM user to list SSH public keys for. If none is specified, the @UserName@ field is determined implicitly based on the AWS access key used to sign the request. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lspkUserName :: Lens' ListSSHPublicKeys (Maybe Text)-lspkUserName = lens _lspkUserName (\ s a -> s{_lspkUserName = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lspkMarker :: Lens' ListSSHPublicKeys (Maybe Text)-lspkMarker = lens _lspkMarker (\ s a -> s{_lspkMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lspkMaxItems :: Lens' ListSSHPublicKeys (Maybe Natural)-lspkMaxItems = lens _lspkMaxItems (\ s a -> s{_lspkMaxItems = a}) . mapping _Nat--instance AWSPager ListSSHPublicKeys where- page rq rs- | stop (rs ^. lspkrsIsTruncated) = Nothing- | isNothing (rs ^. lspkrsMarker) = Nothing- | otherwise =- Just $ rq & lspkMarker .~ rs ^. lspkrsMarker--instance AWSRequest ListSSHPublicKeys where- type Rs ListSSHPublicKeys = ListSSHPublicKeysResponse- request = postQuery iam- response- = receiveXMLWrapper "ListSSHPublicKeysResult"- (\ s h x ->- ListSSHPublicKeysResponse' <$>- (x .@? "SSHPublicKeys" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Marker")- <*> (x .@? "IsTruncated")- <*> (pure (fromEnum s)))--instance Hashable ListSSHPublicKeys where--instance NFData ListSSHPublicKeys where--instance ToHeaders ListSSHPublicKeys where- toHeaders = const mempty--instance ToPath ListSSHPublicKeys where- toPath = const "/"--instance ToQuery ListSSHPublicKeys where- toQuery ListSSHPublicKeys'{..}- = mconcat- ["Action" =: ("ListSSHPublicKeys" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _lspkUserName, "Marker" =: _lspkMarker,- "MaxItems" =: _lspkMaxItems]---- | Contains the response to a successful 'ListSSHPublicKeys' request.------------ /See:/ 'listSSHPublicKeysResponse' smart constructor.-data ListSSHPublicKeysResponse = ListSSHPublicKeysResponse'- { _lspkrsSSHPublicKeys :: !(Maybe [SSHPublicKeyMetadata])- , _lspkrsMarker :: !(Maybe Text)- , _lspkrsIsTruncated :: !(Maybe Bool)- , _lspkrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListSSHPublicKeysResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lspkrsSSHPublicKeys' - A list of the SSH public keys assigned to IAM user.------ * 'lspkrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lspkrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lspkrsResponseStatus' - -- | The response status code.-listSSHPublicKeysResponse- :: Int -- ^ 'lspkrsResponseStatus'- -> ListSSHPublicKeysResponse-listSSHPublicKeysResponse pResponseStatus_ =- ListSSHPublicKeysResponse'- { _lspkrsSSHPublicKeys = Nothing- , _lspkrsMarker = Nothing- , _lspkrsIsTruncated = Nothing- , _lspkrsResponseStatus = pResponseStatus_- }----- | A list of the SSH public keys assigned to IAM user.-lspkrsSSHPublicKeys :: Lens' ListSSHPublicKeysResponse [SSHPublicKeyMetadata]-lspkrsSSHPublicKeys = lens _lspkrsSSHPublicKeys (\ s a -> s{_lspkrsSSHPublicKeys = a}) . _Default . _Coerce---- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lspkrsMarker :: Lens' ListSSHPublicKeysResponse (Maybe Text)-lspkrsMarker = lens _lspkrsMarker (\ s a -> s{_lspkrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lspkrsIsTruncated :: Lens' ListSSHPublicKeysResponse (Maybe Bool)-lspkrsIsTruncated = lens _lspkrsIsTruncated (\ s a -> s{_lspkrsIsTruncated = a})---- | -- | The response status code.-lspkrsResponseStatus :: Lens' ListSSHPublicKeysResponse Int-lspkrsResponseStatus = lens _lspkrsResponseStatus (\ s a -> s{_lspkrsResponseStatus = a})--instance NFData ListSSHPublicKeysResponse where
− gen/Network/AWS/IAM/ListServerCertificates.hs
@@ -1,186 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListServerCertificates--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the server certificates stored in IAM that have the specified path prefix. If none exist, the operation returns an empty list.--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.------ For more information about working with server certificates, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with Server Certificates> in the /IAM User Guide/ . This topic also includes a list of AWS services that can use the server certificates that you manage with IAM.--------- This operation returns paginated results.-module Network.AWS.IAM.ListServerCertificates- (- -- * Creating a Request- listServerCertificates- , ListServerCertificates- -- * Request Lenses- , lscPathPrefix- , lscMarker- , lscMaxItems-- -- * Destructuring the Response- , listServerCertificatesResponse- , ListServerCertificatesResponse- -- * Response Lenses- , lscrsMarker- , lscrsIsTruncated- , lscrsResponseStatus- , lscrsServerCertificateMetadataList- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listServerCertificates' smart constructor.-data ListServerCertificates = ListServerCertificates'- { _lscPathPrefix :: !(Maybe Text)- , _lscMarker :: !(Maybe Text)- , _lscMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListServerCertificates' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lscPathPrefix' - The path prefix for filtering the results. For example: @/company/servercerts@ would get all server certificates for which the path starts with @/company/servercerts@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all server certificates. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'lscMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lscMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listServerCertificates- :: ListServerCertificates-listServerCertificates =- ListServerCertificates'- {_lscPathPrefix = Nothing, _lscMarker = Nothing, _lscMaxItems = Nothing}----- | The path prefix for filtering the results. For example: @/company/servercerts@ would get all server certificates for which the path starts with @/company/servercerts@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all server certificates. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-lscPathPrefix :: Lens' ListServerCertificates (Maybe Text)-lscPathPrefix = lens _lscPathPrefix (\ s a -> s{_lscPathPrefix = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lscMarker :: Lens' ListServerCertificates (Maybe Text)-lscMarker = lens _lscMarker (\ s a -> s{_lscMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lscMaxItems :: Lens' ListServerCertificates (Maybe Natural)-lscMaxItems = lens _lscMaxItems (\ s a -> s{_lscMaxItems = a}) . mapping _Nat--instance AWSPager ListServerCertificates where- page rq rs- | stop (rs ^. lscrsIsTruncated) = Nothing- | isNothing (rs ^. lscrsMarker) = Nothing- | otherwise =- Just $ rq & lscMarker .~ rs ^. lscrsMarker--instance AWSRequest ListServerCertificates where- type Rs ListServerCertificates =- ListServerCertificatesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListServerCertificatesResult"- (\ s h x ->- ListServerCertificatesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "ServerCertificateMetadataList" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListServerCertificates where--instance NFData ListServerCertificates where--instance ToHeaders ListServerCertificates where- toHeaders = const mempty--instance ToPath ListServerCertificates where- toPath = const "/"--instance ToQuery ListServerCertificates where- toQuery ListServerCertificates'{..}- = mconcat- ["Action" =:- ("ListServerCertificates" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _lscPathPrefix,- "Marker" =: _lscMarker, "MaxItems" =: _lscMaxItems]---- | Contains the response to a successful 'ListServerCertificates' request.------------ /See:/ 'listServerCertificatesResponse' smart constructor.-data ListServerCertificatesResponse = ListServerCertificatesResponse'- { _lscrsMarker :: !(Maybe Text)- , _lscrsIsTruncated :: !(Maybe Bool)- , _lscrsResponseStatus :: !Int- , _lscrsServerCertificateMetadataList :: ![ServerCertificateMetadata]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListServerCertificatesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lscrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lscrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lscrsResponseStatus' - -- | The response status code.------ * 'lscrsServerCertificateMetadataList' - A list of server certificates.-listServerCertificatesResponse- :: Int -- ^ 'lscrsResponseStatus'- -> ListServerCertificatesResponse-listServerCertificatesResponse pResponseStatus_ =- ListServerCertificatesResponse'- { _lscrsMarker = Nothing- , _lscrsIsTruncated = Nothing- , _lscrsResponseStatus = pResponseStatus_- , _lscrsServerCertificateMetadataList = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lscrsMarker :: Lens' ListServerCertificatesResponse (Maybe Text)-lscrsMarker = lens _lscrsMarker (\ s a -> s{_lscrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lscrsIsTruncated :: Lens' ListServerCertificatesResponse (Maybe Bool)-lscrsIsTruncated = lens _lscrsIsTruncated (\ s a -> s{_lscrsIsTruncated = a})---- | -- | The response status code.-lscrsResponseStatus :: Lens' ListServerCertificatesResponse Int-lscrsResponseStatus = lens _lscrsResponseStatus (\ s a -> s{_lscrsResponseStatus = a})---- | A list of server certificates.-lscrsServerCertificateMetadataList :: Lens' ListServerCertificatesResponse [ServerCertificateMetadata]-lscrsServerCertificateMetadataList = lens _lscrsServerCertificateMetadataList (\ s a -> s{_lscrsServerCertificateMetadataList = a}) . _Coerce--instance NFData ListServerCertificatesResponse where
− gen/Network/AWS/IAM/ListServiceSpecificCredentials.hs
@@ -1,146 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListServiceSpecificCredentials--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Returns information about the service-specific credentials associated with the specified IAM user. If there are none, the operation returns an empty list. The service-specific credentials returned by this operation are used only for authenticating the IAM user to a specific service. For more information about using service-specific credentials to authenticate to an AWS service, see <http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html Set Up service-specific credentials> in the AWS CodeCommit User Guide.-------module Network.AWS.IAM.ListServiceSpecificCredentials- (- -- * Creating a Request- listServiceSpecificCredentials- , ListServiceSpecificCredentials- -- * Request Lenses- , lsscUserName- , lsscServiceName-- -- * Destructuring the Response- , listServiceSpecificCredentialsResponse- , ListServiceSpecificCredentialsResponse- -- * Response Lenses- , lsscrsServiceSpecificCredentials- , lsscrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listServiceSpecificCredentials' smart constructor.-data ListServiceSpecificCredentials = ListServiceSpecificCredentials'- { _lsscUserName :: !(Maybe Text)- , _lsscServiceName :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListServiceSpecificCredentials' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lsscUserName' - The name of the user whose service-specific credentials you want information about. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'lsscServiceName' - Filters the returned results to only those for the specified AWS service. If not specified, then AWS returns service-specific credentials for all services.-listServiceSpecificCredentials- :: ListServiceSpecificCredentials-listServiceSpecificCredentials =- ListServiceSpecificCredentials'- {_lsscUserName = Nothing, _lsscServiceName = Nothing}----- | The name of the user whose service-specific credentials you want information about. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lsscUserName :: Lens' ListServiceSpecificCredentials (Maybe Text)-lsscUserName = lens _lsscUserName (\ s a -> s{_lsscUserName = a})---- | Filters the returned results to only those for the specified AWS service. If not specified, then AWS returns service-specific credentials for all services.-lsscServiceName :: Lens' ListServiceSpecificCredentials (Maybe Text)-lsscServiceName = lens _lsscServiceName (\ s a -> s{_lsscServiceName = a})--instance AWSRequest ListServiceSpecificCredentials- where- type Rs ListServiceSpecificCredentials =- ListServiceSpecificCredentialsResponse- request = postQuery iam- response- = receiveXMLWrapper- "ListServiceSpecificCredentialsResult"- (\ s h x ->- ListServiceSpecificCredentialsResponse' <$>- (x .@? "ServiceSpecificCredentials" .!@ mempty >>=- may (parseXMLList "member"))- <*> (pure (fromEnum s)))--instance Hashable ListServiceSpecificCredentials- where--instance NFData ListServiceSpecificCredentials where--instance ToHeaders ListServiceSpecificCredentials- where- toHeaders = const mempty--instance ToPath ListServiceSpecificCredentials where- toPath = const "/"--instance ToQuery ListServiceSpecificCredentials where- toQuery ListServiceSpecificCredentials'{..}- = mconcat- ["Action" =:- ("ListServiceSpecificCredentials" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _lsscUserName,- "ServiceName" =: _lsscServiceName]---- | /See:/ 'listServiceSpecificCredentialsResponse' smart constructor.-data ListServiceSpecificCredentialsResponse = ListServiceSpecificCredentialsResponse'- { _lsscrsServiceSpecificCredentials :: !(Maybe [ServiceSpecificCredentialMetadata])- , _lsscrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListServiceSpecificCredentialsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lsscrsServiceSpecificCredentials' - A list of structures that each contain details about a service-specific credential.------ * 'lsscrsResponseStatus' - -- | The response status code.-listServiceSpecificCredentialsResponse- :: Int -- ^ 'lsscrsResponseStatus'- -> ListServiceSpecificCredentialsResponse-listServiceSpecificCredentialsResponse pResponseStatus_ =- ListServiceSpecificCredentialsResponse'- { _lsscrsServiceSpecificCredentials = Nothing- , _lsscrsResponseStatus = pResponseStatus_- }----- | A list of structures that each contain details about a service-specific credential.-lsscrsServiceSpecificCredentials :: Lens' ListServiceSpecificCredentialsResponse [ServiceSpecificCredentialMetadata]-lsscrsServiceSpecificCredentials = lens _lsscrsServiceSpecificCredentials (\ s a -> s{_lsscrsServiceSpecificCredentials = a}) . _Default . _Coerce---- | -- | The response status code.-lsscrsResponseStatus :: Lens' ListServiceSpecificCredentialsResponse Int-lsscrsResponseStatus = lens _lsscrsResponseStatus (\ s a -> s{_lsscrsResponseStatus = a})--instance NFData- ListServiceSpecificCredentialsResponse- where
− gen/Network/AWS/IAM/ListSigningCertificates.hs
@@ -1,185 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListSigningCertificates--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Returns information about the signing certificates associated with the specified IAM user. If there are none, the operation returns an empty list.--------- Although each user is limited to a small number of signing certificates, you can still paginate the results using the @MaxItems@ and @Marker@ parameters.------ If the @UserName@ field is not specified, the user name is determined implicitly based on the AWS access key ID used to sign the request for this API. Because this operation works for access keys under the AWS account, you can use this operation to manage AWS account root user credentials even if the AWS account has no associated users.--------- This operation returns paginated results.-module Network.AWS.IAM.ListSigningCertificates- (- -- * Creating a Request- listSigningCertificates- , ListSigningCertificates- -- * Request Lenses- , lUserName- , lMarker- , lMaxItems-- -- * Destructuring the Response- , listSigningCertificatesResponse- , ListSigningCertificatesResponse- -- * Response Lenses- , lrsMarker- , lrsIsTruncated- , lrsResponseStatus- , lrsCertificates- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listSigningCertificates' smart constructor.-data ListSigningCertificates = ListSigningCertificates'- { _lUserName :: !(Maybe Text)- , _lMarker :: !(Maybe Text)- , _lMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListSigningCertificates' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lUserName' - The name of the IAM user whose signing certificates you want to examine. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'lMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listSigningCertificates- :: ListSigningCertificates-listSigningCertificates =- ListSigningCertificates'- {_lUserName = Nothing, _lMarker = Nothing, _lMaxItems = Nothing}----- | The name of the IAM user whose signing certificates you want to examine. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lUserName :: Lens' ListSigningCertificates (Maybe Text)-lUserName = lens _lUserName (\ s a -> s{_lUserName = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lMarker :: Lens' ListSigningCertificates (Maybe Text)-lMarker = lens _lMarker (\ s a -> s{_lMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lMaxItems :: Lens' ListSigningCertificates (Maybe Natural)-lMaxItems = lens _lMaxItems (\ s a -> s{_lMaxItems = a}) . mapping _Nat--instance AWSPager ListSigningCertificates where- page rq rs- | stop (rs ^. lrsIsTruncated) = Nothing- | isNothing (rs ^. lrsMarker) = Nothing- | otherwise = Just $ rq & lMarker .~ rs ^. lrsMarker--instance AWSRequest ListSigningCertificates where- type Rs ListSigningCertificates =- ListSigningCertificatesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListSigningCertificatesResult"- (\ s h x ->- ListSigningCertificatesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "Certificates" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListSigningCertificates where--instance NFData ListSigningCertificates where--instance ToHeaders ListSigningCertificates where- toHeaders = const mempty--instance ToPath ListSigningCertificates where- toPath = const "/"--instance ToQuery ListSigningCertificates where- toQuery ListSigningCertificates'{..}- = mconcat- ["Action" =:- ("ListSigningCertificates" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _lUserName, "Marker" =: _lMarker,- "MaxItems" =: _lMaxItems]---- | Contains the response to a successful 'ListSigningCertificates' request.------------ /See:/ 'listSigningCertificatesResponse' smart constructor.-data ListSigningCertificatesResponse = ListSigningCertificatesResponse'- { _lrsMarker :: !(Maybe Text)- , _lrsIsTruncated :: !(Maybe Bool)- , _lrsResponseStatus :: !Int- , _lrsCertificates :: ![SigningCertificate]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListSigningCertificatesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lrsResponseStatus' - -- | The response status code.------ * 'lrsCertificates' - A list of the user's signing certificate information.-listSigningCertificatesResponse- :: Int -- ^ 'lrsResponseStatus'- -> ListSigningCertificatesResponse-listSigningCertificatesResponse pResponseStatus_ =- ListSigningCertificatesResponse'- { _lrsMarker = Nothing- , _lrsIsTruncated = Nothing- , _lrsResponseStatus = pResponseStatus_- , _lrsCertificates = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lrsMarker :: Lens' ListSigningCertificatesResponse (Maybe Text)-lrsMarker = lens _lrsMarker (\ s a -> s{_lrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lrsIsTruncated :: Lens' ListSigningCertificatesResponse (Maybe Bool)-lrsIsTruncated = lens _lrsIsTruncated (\ s a -> s{_lrsIsTruncated = a})---- | -- | The response status code.-lrsResponseStatus :: Lens' ListSigningCertificatesResponse Int-lrsResponseStatus = lens _lrsResponseStatus (\ s a -> s{_lrsResponseStatus = a})---- | A list of the user's signing certificate information.-lrsCertificates :: Lens' ListSigningCertificatesResponse [SigningCertificate]-lrsCertificates = lens _lrsCertificates (\ s a -> s{_lrsCertificates = a}) . _Coerce--instance NFData ListSigningCertificatesResponse where
− gen/Network/AWS/IAM/ListUserPolicies.hs
@@ -1,185 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListUserPolicies--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the names of the inline policies embedded in the specified IAM user.--------- An IAM user can also have managed policies attached to it. To list the managed policies that are attached to a user, use 'ListAttachedUserPolicies' . For more information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ You can paginate the results using the @MaxItems@ and @Marker@ parameters. If there are no inline policies embedded with the specified user, the operation returns an empty list.--------- This operation returns paginated results.-module Network.AWS.IAM.ListUserPolicies- (- -- * Creating a Request- listUserPolicies- , ListUserPolicies- -- * Request Lenses- , lupMarker- , lupMaxItems- , lupUserName-- -- * Destructuring the Response- , listUserPoliciesResponse- , ListUserPoliciesResponse- -- * Response Lenses- , luprsMarker- , luprsIsTruncated- , luprsResponseStatus- , luprsPolicyNames- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listUserPolicies' smart constructor.-data ListUserPolicies = ListUserPolicies'- { _lupMarker :: !(Maybe Text)- , _lupMaxItems :: !(Maybe Nat)- , _lupUserName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListUserPolicies' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lupMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lupMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'lupUserName' - The name of the user to list policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--listUserPolicies- :: Text -- ^ 'lupUserName'- -> ListUserPolicies-listUserPolicies pUserName_ =- ListUserPolicies'- {_lupMarker = Nothing, _lupMaxItems = Nothing, _lupUserName = pUserName_}----- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lupMarker :: Lens' ListUserPolicies (Maybe Text)-lupMarker = lens _lupMarker (\ s a -> s{_lupMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lupMaxItems :: Lens' ListUserPolicies (Maybe Natural)-lupMaxItems = lens _lupMaxItems (\ s a -> s{_lupMaxItems = a}) . mapping _Nat---- | The name of the user to list policies for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--lupUserName :: Lens' ListUserPolicies Text-lupUserName = lens _lupUserName (\ s a -> s{_lupUserName = a})--instance AWSPager ListUserPolicies where- page rq rs- | stop (rs ^. luprsIsTruncated) = Nothing- | isNothing (rs ^. luprsMarker) = Nothing- | otherwise =- Just $ rq & lupMarker .~ rs ^. luprsMarker--instance AWSRequest ListUserPolicies where- type Rs ListUserPolicies = ListUserPoliciesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListUserPoliciesResult"- (\ s h x ->- ListUserPoliciesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "PolicyNames" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListUserPolicies where--instance NFData ListUserPolicies where--instance ToHeaders ListUserPolicies where- toHeaders = const mempty--instance ToPath ListUserPolicies where- toPath = const "/"--instance ToQuery ListUserPolicies where- toQuery ListUserPolicies'{..}- = mconcat- ["Action" =: ("ListUserPolicies" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Marker" =: _lupMarker, "MaxItems" =: _lupMaxItems,- "UserName" =: _lupUserName]---- | Contains the response to a successful 'ListUserPolicies' request.------------ /See:/ 'listUserPoliciesResponse' smart constructor.-data ListUserPoliciesResponse = ListUserPoliciesResponse'- { _luprsMarker :: !(Maybe Text)- , _luprsIsTruncated :: !(Maybe Bool)- , _luprsResponseStatus :: !Int- , _luprsPolicyNames :: ![Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListUserPoliciesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'luprsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'luprsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'luprsResponseStatus' - -- | The response status code.------ * 'luprsPolicyNames' - A list of policy names.-listUserPoliciesResponse- :: Int -- ^ 'luprsResponseStatus'- -> ListUserPoliciesResponse-listUserPoliciesResponse pResponseStatus_ =- ListUserPoliciesResponse'- { _luprsMarker = Nothing- , _luprsIsTruncated = Nothing- , _luprsResponseStatus = pResponseStatus_- , _luprsPolicyNames = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-luprsMarker :: Lens' ListUserPoliciesResponse (Maybe Text)-luprsMarker = lens _luprsMarker (\ s a -> s{_luprsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-luprsIsTruncated :: Lens' ListUserPoliciesResponse (Maybe Bool)-luprsIsTruncated = lens _luprsIsTruncated (\ s a -> s{_luprsIsTruncated = a})---- | -- | The response status code.-luprsResponseStatus :: Lens' ListUserPoliciesResponse Int-luprsResponseStatus = lens _luprsResponseStatus (\ s a -> s{_luprsResponseStatus = a})---- | A list of policy names.-luprsPolicyNames :: Lens' ListUserPoliciesResponse [Text]-luprsPolicyNames = lens _luprsPolicyNames (\ s a -> s{_luprsPolicyNames = a}) . _Coerce--instance NFData ListUserPoliciesResponse where
− gen/Network/AWS/IAM/ListUsers.hs
@@ -1,181 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListUsers--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the IAM users that have the specified path prefix. If no path prefix is specified, the operation returns all users in the AWS account. If there are none, the operation returns an empty list.--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListUsers- (- -- * Creating a Request- listUsers- , ListUsers- -- * Request Lenses- , luPathPrefix- , luMarker- , luMaxItems-- -- * Destructuring the Response- , listUsersResponse- , ListUsersResponse- -- * Response Lenses- , lursMarker- , lursIsTruncated- , lursResponseStatus- , lursUsers- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listUsers' smart constructor.-data ListUsers = ListUsers'- { _luPathPrefix :: !(Maybe Text)- , _luMarker :: !(Maybe Text)- , _luMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListUsers' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'luPathPrefix' - The path prefix for filtering the results. For example: @/division_abc/subdivision_xyz/@ , which would get all user names whose path starts with @/division_abc/subdivision_xyz/@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all user names. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'luMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'luMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listUsers- :: ListUsers-listUsers =- ListUsers'- {_luPathPrefix = Nothing, _luMarker = Nothing, _luMaxItems = Nothing}----- | The path prefix for filtering the results. For example: @/division_abc/subdivision_xyz/@ , which would get all user names whose path starts with @/division_abc/subdivision_xyz/@ . This parameter is optional. If it is not included, it defaults to a slash (/), listing all user names. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-luPathPrefix :: Lens' ListUsers (Maybe Text)-luPathPrefix = lens _luPathPrefix (\ s a -> s{_luPathPrefix = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-luMarker :: Lens' ListUsers (Maybe Text)-luMarker = lens _luMarker (\ s a -> s{_luMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-luMaxItems :: Lens' ListUsers (Maybe Natural)-luMaxItems = lens _luMaxItems (\ s a -> s{_luMaxItems = a}) . mapping _Nat--instance AWSPager ListUsers where- page rq rs- | stop (rs ^. lursIsTruncated) = Nothing- | isNothing (rs ^. lursMarker) = Nothing- | otherwise =- Just $ rq & luMarker .~ rs ^. lursMarker--instance AWSRequest ListUsers where- type Rs ListUsers = ListUsersResponse- request = postQuery iam- response- = receiveXMLWrapper "ListUsersResult"- (\ s h x ->- ListUsersResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "Users" .!@ mempty >>= parseXMLList "member"))--instance Hashable ListUsers where--instance NFData ListUsers where--instance ToHeaders ListUsers where- toHeaders = const mempty--instance ToPath ListUsers where- toPath = const "/"--instance ToQuery ListUsers where- toQuery ListUsers'{..}- = mconcat- ["Action" =: ("ListUsers" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PathPrefix" =: _luPathPrefix, "Marker" =: _luMarker,- "MaxItems" =: _luMaxItems]---- | Contains the response to a successful 'ListUsers' request.------------ /See:/ 'listUsersResponse' smart constructor.-data ListUsersResponse = ListUsersResponse'- { _lursMarker :: !(Maybe Text)- , _lursIsTruncated :: !(Maybe Bool)- , _lursResponseStatus :: !Int- , _lursUsers :: ![User]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListUsersResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lursMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lursIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lursResponseStatus' - -- | The response status code.------ * 'lursUsers' - A list of users.-listUsersResponse- :: Int -- ^ 'lursResponseStatus'- -> ListUsersResponse-listUsersResponse pResponseStatus_ =- ListUsersResponse'- { _lursMarker = Nothing- , _lursIsTruncated = Nothing- , _lursResponseStatus = pResponseStatus_- , _lursUsers = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lursMarker :: Lens' ListUsersResponse (Maybe Text)-lursMarker = lens _lursMarker (\ s a -> s{_lursMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lursIsTruncated :: Lens' ListUsersResponse (Maybe Bool)-lursIsTruncated = lens _lursIsTruncated (\ s a -> s{_lursIsTruncated = a})---- | -- | The response status code.-lursResponseStatus :: Lens' ListUsersResponse Int-lursResponseStatus = lens _lursResponseStatus (\ s a -> s{_lursResponseStatus = a})---- | A list of users.-lursUsers :: Lens' ListUsersResponse [User]-lursUsers = lens _lursUsers (\ s a -> s{_lursUsers = a}) . _Coerce--instance NFData ListUsersResponse where
− gen/Network/AWS/IAM/ListVirtualMFADevices.hs
@@ -1,186 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ListVirtualMFADevices--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Lists the virtual MFA devices defined in the AWS account by assignment status. If you do not specify an assignment status, the operation returns a list of all virtual MFA devices. Assignment status can be @Assigned@ , @Unassigned@ , or @Any@ .--------- You can paginate the results using the @MaxItems@ and @Marker@ parameters.--------- This operation returns paginated results.-module Network.AWS.IAM.ListVirtualMFADevices- (- -- * Creating a Request- listVirtualMFADevices- , ListVirtualMFADevices- -- * Request Lenses- , lvmdAssignmentStatus- , lvmdMarker- , lvmdMaxItems-- -- * Destructuring the Response- , listVirtualMFADevicesResponse- , ListVirtualMFADevicesResponse- -- * Response Lenses- , lvmdrsMarker- , lvmdrsIsTruncated- , lvmdrsResponseStatus- , lvmdrsVirtualMFADevices- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'listVirtualMFADevices' smart constructor.-data ListVirtualMFADevices = ListVirtualMFADevices'- { _lvmdAssignmentStatus :: !(Maybe AssignmentStatusType)- , _lvmdMarker :: !(Maybe Text)- , _lvmdMaxItems :: !(Maybe Nat)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ListVirtualMFADevices' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lvmdAssignmentStatus' - The status (@Unassigned@ or @Assigned@ ) of the devices to list. If you do not specify an @AssignmentStatus@ , the operation defaults to @Any@ which lists both assigned and unassigned virtual MFA devices.------ * 'lvmdMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'lvmdMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-listVirtualMFADevices- :: ListVirtualMFADevices-listVirtualMFADevices =- ListVirtualMFADevices'- { _lvmdAssignmentStatus = Nothing- , _lvmdMarker = Nothing- , _lvmdMaxItems = Nothing- }----- | The status (@Unassigned@ or @Assigned@ ) of the devices to list. If you do not specify an @AssignmentStatus@ , the operation defaults to @Any@ which lists both assigned and unassigned virtual MFA devices.-lvmdAssignmentStatus :: Lens' ListVirtualMFADevices (Maybe AssignmentStatusType)-lvmdAssignmentStatus = lens _lvmdAssignmentStatus (\ s a -> s{_lvmdAssignmentStatus = a})---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-lvmdMarker :: Lens' ListVirtualMFADevices (Maybe Text)-lvmdMarker = lens _lvmdMarker (\ s a -> s{_lvmdMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-lvmdMaxItems :: Lens' ListVirtualMFADevices (Maybe Natural)-lvmdMaxItems = lens _lvmdMaxItems (\ s a -> s{_lvmdMaxItems = a}) . mapping _Nat--instance AWSPager ListVirtualMFADevices where- page rq rs- | stop (rs ^. lvmdrsIsTruncated) = Nothing- | isNothing (rs ^. lvmdrsMarker) = Nothing- | otherwise =- Just $ rq & lvmdMarker .~ rs ^. lvmdrsMarker--instance AWSRequest ListVirtualMFADevices where- type Rs ListVirtualMFADevices =- ListVirtualMFADevicesResponse- request = postQuery iam- response- = receiveXMLWrapper "ListVirtualMFADevicesResult"- (\ s h x ->- ListVirtualMFADevicesResponse' <$>- (x .@? "Marker") <*> (x .@? "IsTruncated") <*>- (pure (fromEnum s))- <*>- (x .@? "VirtualMFADevices" .!@ mempty >>=- parseXMLList "member"))--instance Hashable ListVirtualMFADevices where--instance NFData ListVirtualMFADevices where--instance ToHeaders ListVirtualMFADevices where- toHeaders = const mempty--instance ToPath ListVirtualMFADevices where- toPath = const "/"--instance ToQuery ListVirtualMFADevices where- toQuery ListVirtualMFADevices'{..}- = mconcat- ["Action" =: ("ListVirtualMFADevices" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "AssignmentStatus" =: _lvmdAssignmentStatus,- "Marker" =: _lvmdMarker, "MaxItems" =: _lvmdMaxItems]---- | Contains the response to a successful 'ListVirtualMFADevices' request.------------ /See:/ 'listVirtualMFADevicesResponse' smart constructor.-data ListVirtualMFADevicesResponse = ListVirtualMFADevicesResponse'- { _lvmdrsMarker :: !(Maybe Text)- , _lvmdrsIsTruncated :: !(Maybe Bool)- , _lvmdrsResponseStatus :: !Int- , _lvmdrsVirtualMFADevices :: ![VirtualMFADevice]- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'ListVirtualMFADevicesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lvmdrsMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'lvmdrsIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.------ * 'lvmdrsResponseStatus' - -- | The response status code.------ * 'lvmdrsVirtualMFADevices' - The list of virtual MFA devices in the current account that match the @AssignmentStatus@ value that was passed in the request.-listVirtualMFADevicesResponse- :: Int -- ^ 'lvmdrsResponseStatus'- -> ListVirtualMFADevicesResponse-listVirtualMFADevicesResponse pResponseStatus_ =- ListVirtualMFADevicesResponse'- { _lvmdrsMarker = Nothing- , _lvmdrsIsTruncated = Nothing- , _lvmdrsResponseStatus = pResponseStatus_- , _lvmdrsVirtualMFADevices = mempty- }----- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-lvmdrsMarker :: Lens' ListVirtualMFADevicesResponse (Maybe Text)-lvmdrsMarker = lens _lvmdrsMarker (\ s a -> s{_lvmdrsMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-lvmdrsIsTruncated :: Lens' ListVirtualMFADevicesResponse (Maybe Bool)-lvmdrsIsTruncated = lens _lvmdrsIsTruncated (\ s a -> s{_lvmdrsIsTruncated = a})---- | -- | The response status code.-lvmdrsResponseStatus :: Lens' ListVirtualMFADevicesResponse Int-lvmdrsResponseStatus = lens _lvmdrsResponseStatus (\ s a -> s{_lvmdrsResponseStatus = a})---- | The list of virtual MFA devices in the current account that match the @AssignmentStatus@ value that was passed in the request.-lvmdrsVirtualMFADevices :: Lens' ListVirtualMFADevicesResponse [VirtualMFADevice]-lvmdrsVirtualMFADevices = lens _lvmdrsVirtualMFADevices (\ s a -> s{_lvmdrsVirtualMFADevices = a}) . _Coerce--instance NFData ListVirtualMFADevicesResponse where
− gen/Network/AWS/IAM/PutGroupPolicy.hs
@@ -1,129 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.PutGroupPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Adds or updates an inline policy document that is embedded in the specified IAM group.--------- A user can also have managed policies attached to it. To attach a managed policy to a group, use 'AttachGroupPolicy' . To create a new managed policy, use 'CreatePolicy' . For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ For information about limits on the number of inline policies that you can embed in a group, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .----module Network.AWS.IAM.PutGroupPolicy- (- -- * Creating a Request- putGroupPolicy- , PutGroupPolicy- -- * Request Lenses- , pgpGroupName- , pgpPolicyName- , pgpPolicyDocument-- -- * Destructuring the Response- , putGroupPolicyResponse- , PutGroupPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'putGroupPolicy' smart constructor.-data PutGroupPolicy = PutGroupPolicy'- { _pgpGroupName :: !Text- , _pgpPolicyName :: !Text- , _pgpPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PutGroupPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pgpGroupName' - The name of the group to associate the policy with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'pgpPolicyName' - The name of the policy document. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'pgpPolicyDocument' - The policy document. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-putGroupPolicy- :: Text -- ^ 'pgpGroupName'- -> Text -- ^ 'pgpPolicyName'- -> Text -- ^ 'pgpPolicyDocument'- -> PutGroupPolicy-putGroupPolicy pGroupName_ pPolicyName_ pPolicyDocument_ =- PutGroupPolicy'- { _pgpGroupName = pGroupName_- , _pgpPolicyName = pPolicyName_- , _pgpPolicyDocument = pPolicyDocument_- }----- | The name of the group to associate the policy with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--pgpGroupName :: Lens' PutGroupPolicy Text-pgpGroupName = lens _pgpGroupName (\ s a -> s{_pgpGroupName = a})---- | The name of the policy document. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--pgpPolicyName :: Lens' PutGroupPolicy Text-pgpPolicyName = lens _pgpPolicyName (\ s a -> s{_pgpPolicyName = a})---- | The policy document. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-pgpPolicyDocument :: Lens' PutGroupPolicy Text-pgpPolicyDocument = lens _pgpPolicyDocument (\ s a -> s{_pgpPolicyDocument = a})--instance AWSRequest PutGroupPolicy where- type Rs PutGroupPolicy = PutGroupPolicyResponse- request = postQuery iam- response = receiveNull PutGroupPolicyResponse'--instance Hashable PutGroupPolicy where--instance NFData PutGroupPolicy where--instance ToHeaders PutGroupPolicy where- toHeaders = const mempty--instance ToPath PutGroupPolicy where- toPath = const "/"--instance ToQuery PutGroupPolicy where- toQuery PutGroupPolicy'{..}- = mconcat- ["Action" =: ("PutGroupPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "GroupName" =: _pgpGroupName,- "PolicyName" =: _pgpPolicyName,- "PolicyDocument" =: _pgpPolicyDocument]---- | /See:/ 'putGroupPolicyResponse' smart constructor.-data PutGroupPolicyResponse =- PutGroupPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PutGroupPolicyResponse' with the minimum fields required to make a request.----putGroupPolicyResponse- :: PutGroupPolicyResponse-putGroupPolicyResponse = PutGroupPolicyResponse'---instance NFData PutGroupPolicyResponse where
− gen/Network/AWS/IAM/PutRolePolicy.hs
@@ -1,131 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.PutRolePolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Adds or updates an inline policy document that is embedded in the specified IAM role.--------- When you embed an inline policy in a role, the inline policy is used as part of the role's access (permissions) policy. The role's trust policy is created at the same time as the role, using 'CreateRole' . You can update a role's trust policy using 'UpdateAssumeRolePolicy' . For more information about IAM roles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html Using Roles to Delegate Permissions and Federate Identities> .------ A role can also have a managed policy attached to it. To attach a managed policy to a role, use 'AttachRolePolicy' . To create a new managed policy, use 'CreatePolicy' . For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ For information about limits on the number of inline policies that you can embed with a role, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .----module Network.AWS.IAM.PutRolePolicy- (- -- * Creating a Request- putRolePolicy- , PutRolePolicy- -- * Request Lenses- , prpRoleName- , prpPolicyName- , prpPolicyDocument-- -- * Destructuring the Response- , putRolePolicyResponse- , PutRolePolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'putRolePolicy' smart constructor.-data PutRolePolicy = PutRolePolicy'- { _prpRoleName :: !Text- , _prpPolicyName :: !Text- , _prpPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PutRolePolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'prpRoleName' - The name of the role to associate the policy with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'prpPolicyName' - The name of the policy document. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'prpPolicyDocument' - The policy document. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-putRolePolicy- :: Text -- ^ 'prpRoleName'- -> Text -- ^ 'prpPolicyName'- -> Text -- ^ 'prpPolicyDocument'- -> PutRolePolicy-putRolePolicy pRoleName_ pPolicyName_ pPolicyDocument_ =- PutRolePolicy'- { _prpRoleName = pRoleName_- , _prpPolicyName = pPolicyName_- , _prpPolicyDocument = pPolicyDocument_- }----- | The name of the role to associate the policy with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--prpRoleName :: Lens' PutRolePolicy Text-prpRoleName = lens _prpRoleName (\ s a -> s{_prpRoleName = a})---- | The name of the policy document. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--prpPolicyName :: Lens' PutRolePolicy Text-prpPolicyName = lens _prpPolicyName (\ s a -> s{_prpPolicyName = a})---- | The policy document. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-prpPolicyDocument :: Lens' PutRolePolicy Text-prpPolicyDocument = lens _prpPolicyDocument (\ s a -> s{_prpPolicyDocument = a})--instance AWSRequest PutRolePolicy where- type Rs PutRolePolicy = PutRolePolicyResponse- request = postQuery iam- response = receiveNull PutRolePolicyResponse'--instance Hashable PutRolePolicy where--instance NFData PutRolePolicy where--instance ToHeaders PutRolePolicy where- toHeaders = const mempty--instance ToPath PutRolePolicy where- toPath = const "/"--instance ToQuery PutRolePolicy where- toQuery PutRolePolicy'{..}- = mconcat- ["Action" =: ("PutRolePolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _prpRoleName,- "PolicyName" =: _prpPolicyName,- "PolicyDocument" =: _prpPolicyDocument]---- | /See:/ 'putRolePolicyResponse' smart constructor.-data PutRolePolicyResponse =- PutRolePolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PutRolePolicyResponse' with the minimum fields required to make a request.----putRolePolicyResponse- :: PutRolePolicyResponse-putRolePolicyResponse = PutRolePolicyResponse'---instance NFData PutRolePolicyResponse where
− gen/Network/AWS/IAM/PutUserPolicy.hs
@@ -1,129 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.PutUserPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Adds or updates an inline policy document that is embedded in the specified IAM user.--------- An IAM user can also have a managed policy attached to it. To attach a managed policy to a user, use 'AttachUserPolicy' . To create a new managed policy, use 'CreatePolicy' . For information about policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .------ For information about limits on the number of inline policies that you can embed in a user, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/LimitationsOnEntities.html Limitations on IAM Entities> in the /IAM User Guide/ .----module Network.AWS.IAM.PutUserPolicy- (- -- * Creating a Request- putUserPolicy- , PutUserPolicy- -- * Request Lenses- , pupUserName- , pupPolicyName- , pupPolicyDocument-- -- * Destructuring the Response- , putUserPolicyResponse- , PutUserPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'putUserPolicy' smart constructor.-data PutUserPolicy = PutUserPolicy'- { _pupUserName :: !Text- , _pupPolicyName :: !Text- , _pupPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PutUserPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pupUserName' - The name of the user to associate the policy with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'pupPolicyName' - The name of the policy document. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'pupPolicyDocument' - The policy document. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-putUserPolicy- :: Text -- ^ 'pupUserName'- -> Text -- ^ 'pupPolicyName'- -> Text -- ^ 'pupPolicyDocument'- -> PutUserPolicy-putUserPolicy pUserName_ pPolicyName_ pPolicyDocument_ =- PutUserPolicy'- { _pupUserName = pUserName_- , _pupPolicyName = pPolicyName_- , _pupPolicyDocument = pPolicyDocument_- }----- | The name of the user to associate the policy with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--pupUserName :: Lens' PutUserPolicy Text-pupUserName = lens _pupUserName (\ s a -> s{_pupUserName = a})---- | The name of the policy document. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--pupPolicyName :: Lens' PutUserPolicy Text-pupPolicyName = lens _pupPolicyName (\ s a -> s{_pupPolicyName = a})---- | The policy document. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-pupPolicyDocument :: Lens' PutUserPolicy Text-pupPolicyDocument = lens _pupPolicyDocument (\ s a -> s{_pupPolicyDocument = a})--instance AWSRequest PutUserPolicy where- type Rs PutUserPolicy = PutUserPolicyResponse- request = postQuery iam- response = receiveNull PutUserPolicyResponse'--instance Hashable PutUserPolicy where--instance NFData PutUserPolicy where--instance ToHeaders PutUserPolicy where- toHeaders = const mempty--instance ToPath PutUserPolicy where- toPath = const "/"--instance ToQuery PutUserPolicy where- toQuery PutUserPolicy'{..}- = mconcat- ["Action" =: ("PutUserPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _pupUserName,- "PolicyName" =: _pupPolicyName,- "PolicyDocument" =: _pupPolicyDocument]---- | /See:/ 'putUserPolicyResponse' smart constructor.-data PutUserPolicyResponse =- PutUserPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PutUserPolicyResponse' with the minimum fields required to make a request.----putUserPolicyResponse- :: PutUserPolicyResponse-putUserPolicyResponse = PutUserPolicyResponse'---instance NFData PutUserPolicyResponse where
− gen/Network/AWS/IAM/RemoveClientIdFromOpenIdConnectProvider.hs
@@ -1,137 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Removes the specified client ID (also known as audience) from the list of client IDs registered for the specified IAM OpenID Connect (OIDC) provider resource object.--------- This operation is idempotent; it does not fail or return an error if you try to remove a client ID that does not exist.----module Network.AWS.IAM.RemoveClientIdFromOpenIdConnectProvider- (- -- * Creating a Request- removeClientIdFromOpenIdConnectProvider- , RemoveClientIdFromOpenIdConnectProvider- -- * Request Lenses- , rcifoicpOpenIdConnectProviderARN- , rcifoicpClientId-- -- * Destructuring the Response- , removeClientIdFromOpenIdConnectProviderResponse- , RemoveClientIdFromOpenIdConnectProviderResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'removeClientIdFromOpenIdConnectProvider' smart constructor.-data RemoveClientIdFromOpenIdConnectProvider = RemoveClientIdFromOpenIdConnectProvider'- { _rcifoicpOpenIdConnectProviderARN :: !Text- , _rcifoicpClientId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RemoveClientIdFromOpenIdConnectProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rcifoicpOpenIdConnectProviderARN' - The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove the client ID from. You can get a list of OIDC provider ARNs by using the 'ListOpenIDConnectProviders' operation. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'rcifoicpClientId' - The client ID (also known as audience) to remove from the IAM OIDC provider resource. For more information about client IDs, see 'CreateOpenIDConnectProvider' .-removeClientIdFromOpenIdConnectProvider- :: Text -- ^ 'rcifoicpOpenIdConnectProviderARN'- -> Text -- ^ 'rcifoicpClientId'- -> RemoveClientIdFromOpenIdConnectProvider-removeClientIdFromOpenIdConnectProvider pOpenIdConnectProviderARN_ pClientId_ =- RemoveClientIdFromOpenIdConnectProvider'- { _rcifoicpOpenIdConnectProviderARN = pOpenIdConnectProviderARN_- , _rcifoicpClientId = pClientId_- }----- | The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove the client ID from. You can get a list of OIDC provider ARNs by using the 'ListOpenIDConnectProviders' operation. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-rcifoicpOpenIdConnectProviderARN :: Lens' RemoveClientIdFromOpenIdConnectProvider Text-rcifoicpOpenIdConnectProviderARN = lens _rcifoicpOpenIdConnectProviderARN (\ s a -> s{_rcifoicpOpenIdConnectProviderARN = a})---- | The client ID (also known as audience) to remove from the IAM OIDC provider resource. For more information about client IDs, see 'CreateOpenIDConnectProvider' .-rcifoicpClientId :: Lens' RemoveClientIdFromOpenIdConnectProvider Text-rcifoicpClientId = lens _rcifoicpClientId (\ s a -> s{_rcifoicpClientId = a})--instance AWSRequest- RemoveClientIdFromOpenIdConnectProvider- where- type Rs RemoveClientIdFromOpenIdConnectProvider =- RemoveClientIdFromOpenIdConnectProviderResponse- request = postQuery iam- response- = receiveNull- RemoveClientIdFromOpenIdConnectProviderResponse'--instance Hashable- RemoveClientIdFromOpenIdConnectProvider- where--instance NFData- RemoveClientIdFromOpenIdConnectProvider- where--instance ToHeaders- RemoveClientIdFromOpenIdConnectProvider- where- toHeaders = const mempty--instance ToPath- RemoveClientIdFromOpenIdConnectProvider- where- toPath = const "/"--instance ToQuery- RemoveClientIdFromOpenIdConnectProvider- where- toQuery RemoveClientIdFromOpenIdConnectProvider'{..}- = mconcat- ["Action" =:- ("RemoveClientIDFromOpenIDConnectProvider" ::- ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "OpenIDConnectProviderArn" =:- _rcifoicpOpenIdConnectProviderARN,- "ClientID" =: _rcifoicpClientId]---- | /See:/ 'removeClientIdFromOpenIdConnectProviderResponse' smart constructor.-data RemoveClientIdFromOpenIdConnectProviderResponse =- RemoveClientIdFromOpenIdConnectProviderResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RemoveClientIdFromOpenIdConnectProviderResponse' with the minimum fields required to make a request.----removeClientIdFromOpenIdConnectProviderResponse- :: RemoveClientIdFromOpenIdConnectProviderResponse-removeClientIdFromOpenIdConnectProviderResponse =- RemoveClientIdFromOpenIdConnectProviderResponse'---instance NFData- RemoveClientIdFromOpenIdConnectProviderResponse- where
− gen/Network/AWS/IAM/RemoveRoleFromInstanceProfile.hs
@@ -1,124 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.RemoveRoleFromInstanceProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Removes the specified IAM role from the specified EC2 instance profile.--------- /Important:/ Make sure that you do not have any Amazon EC2 instances running with the role you are about to remove from the instance profile. Removing a role from an instance profile that is associated with a running instance might break any applications running on the instance.------ For more information about IAM roles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/WorkingWithRoles.html Working with Roles> . For more information about instance profiles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/AboutInstanceProfiles.html About Instance Profiles> .----module Network.AWS.IAM.RemoveRoleFromInstanceProfile- (- -- * Creating a Request- removeRoleFromInstanceProfile- , RemoveRoleFromInstanceProfile- -- * Request Lenses- , rrfipInstanceProfileName- , rrfipRoleName-- -- * Destructuring the Response- , removeRoleFromInstanceProfileResponse- , RemoveRoleFromInstanceProfileResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'removeRoleFromInstanceProfile' smart constructor.-data RemoveRoleFromInstanceProfile = RemoveRoleFromInstanceProfile'- { _rrfipInstanceProfileName :: !Text- , _rrfipRoleName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RemoveRoleFromInstanceProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rrfipInstanceProfileName' - The name of the instance profile to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'rrfipRoleName' - The name of the role to remove. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--removeRoleFromInstanceProfile- :: Text -- ^ 'rrfipInstanceProfileName'- -> Text -- ^ 'rrfipRoleName'- -> RemoveRoleFromInstanceProfile-removeRoleFromInstanceProfile pInstanceProfileName_ pRoleName_ =- RemoveRoleFromInstanceProfile'- { _rrfipInstanceProfileName = pInstanceProfileName_- , _rrfipRoleName = pRoleName_- }----- | The name of the instance profile to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--rrfipInstanceProfileName :: Lens' RemoveRoleFromInstanceProfile Text-rrfipInstanceProfileName = lens _rrfipInstanceProfileName (\ s a -> s{_rrfipInstanceProfileName = a})---- | The name of the role to remove. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--rrfipRoleName :: Lens' RemoveRoleFromInstanceProfile Text-rrfipRoleName = lens _rrfipRoleName (\ s a -> s{_rrfipRoleName = a})--instance AWSRequest RemoveRoleFromInstanceProfile- where- type Rs RemoveRoleFromInstanceProfile =- RemoveRoleFromInstanceProfileResponse- request = postQuery iam- response- = receiveNull RemoveRoleFromInstanceProfileResponse'--instance Hashable RemoveRoleFromInstanceProfile where--instance NFData RemoveRoleFromInstanceProfile where--instance ToHeaders RemoveRoleFromInstanceProfile- where- toHeaders = const mempty--instance ToPath RemoveRoleFromInstanceProfile where- toPath = const "/"--instance ToQuery RemoveRoleFromInstanceProfile where- toQuery RemoveRoleFromInstanceProfile'{..}- = mconcat- ["Action" =:- ("RemoveRoleFromInstanceProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "InstanceProfileName" =: _rrfipInstanceProfileName,- "RoleName" =: _rrfipRoleName]---- | /See:/ 'removeRoleFromInstanceProfileResponse' smart constructor.-data RemoveRoleFromInstanceProfileResponse =- RemoveRoleFromInstanceProfileResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RemoveRoleFromInstanceProfileResponse' with the minimum fields required to make a request.----removeRoleFromInstanceProfileResponse- :: RemoveRoleFromInstanceProfileResponse-removeRoleFromInstanceProfileResponse = RemoveRoleFromInstanceProfileResponse'---instance NFData RemoveRoleFromInstanceProfileResponse- where
− gen/Network/AWS/IAM/RemoveUserFromGroup.hs
@@ -1,113 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.RemoveUserFromGroup--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Removes the specified user from the specified group.-------module Network.AWS.IAM.RemoveUserFromGroup- (- -- * Creating a Request- removeUserFromGroup- , RemoveUserFromGroup- -- * Request Lenses- , rufgGroupName- , rufgUserName-- -- * Destructuring the Response- , removeUserFromGroupResponse- , RemoveUserFromGroupResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'removeUserFromGroup' smart constructor.-data RemoveUserFromGroup = RemoveUserFromGroup'- { _rufgGroupName :: !Text- , _rufgUserName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RemoveUserFromGroup' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rufgGroupName' - The name of the group to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'rufgUserName' - The name of the user to remove. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--removeUserFromGroup- :: Text -- ^ 'rufgGroupName'- -> Text -- ^ 'rufgUserName'- -> RemoveUserFromGroup-removeUserFromGroup pGroupName_ pUserName_ =- RemoveUserFromGroup'- {_rufgGroupName = pGroupName_, _rufgUserName = pUserName_}----- | The name of the group to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--rufgGroupName :: Lens' RemoveUserFromGroup Text-rufgGroupName = lens _rufgGroupName (\ s a -> s{_rufgGroupName = a})---- | The name of the user to remove. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--rufgUserName :: Lens' RemoveUserFromGroup Text-rufgUserName = lens _rufgUserName (\ s a -> s{_rufgUserName = a})--instance AWSRequest RemoveUserFromGroup where- type Rs RemoveUserFromGroup =- RemoveUserFromGroupResponse- request = postQuery iam- response = receiveNull RemoveUserFromGroupResponse'--instance Hashable RemoveUserFromGroup where--instance NFData RemoveUserFromGroup where--instance ToHeaders RemoveUserFromGroup where- toHeaders = const mempty--instance ToPath RemoveUserFromGroup where- toPath = const "/"--instance ToQuery RemoveUserFromGroup where- toQuery RemoveUserFromGroup'{..}- = mconcat- ["Action" =: ("RemoveUserFromGroup" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "GroupName" =: _rufgGroupName,- "UserName" =: _rufgUserName]---- | /See:/ 'removeUserFromGroupResponse' smart constructor.-data RemoveUserFromGroupResponse =- RemoveUserFromGroupResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RemoveUserFromGroupResponse' with the minimum fields required to make a request.----removeUserFromGroupResponse- :: RemoveUserFromGroupResponse-removeUserFromGroupResponse = RemoveUserFromGroupResponse'---instance NFData RemoveUserFromGroupResponse where
− gen/Network/AWS/IAM/ResetServiceSpecificCredential.hs
@@ -1,149 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ResetServiceSpecificCredential--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Resets the password for a service-specific credential. The new password is AWS generated and cryptographically strong. It cannot be configured by the user. Resetting the password immediately invalidates the previous password associated with this user.-------module Network.AWS.IAM.ResetServiceSpecificCredential- (- -- * Creating a Request- resetServiceSpecificCredential- , ResetServiceSpecificCredential- -- * Request Lenses- , rsscUserName- , rsscServiceSpecificCredentialId-- -- * Destructuring the Response- , resetServiceSpecificCredentialResponse- , ResetServiceSpecificCredentialResponse- -- * Response Lenses- , rsscrsServiceSpecificCredential- , rsscrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'resetServiceSpecificCredential' smart constructor.-data ResetServiceSpecificCredential = ResetServiceSpecificCredential'- { _rsscUserName :: !(Maybe Text)- , _rsscServiceSpecificCredentialId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ResetServiceSpecificCredential' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rsscUserName' - The name of the IAM user associated with the service-specific credential. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'rsscServiceSpecificCredentialId' - The unique identifier of the service-specific credential. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-resetServiceSpecificCredential- :: Text -- ^ 'rsscServiceSpecificCredentialId'- -> ResetServiceSpecificCredential-resetServiceSpecificCredential pServiceSpecificCredentialId_ =- ResetServiceSpecificCredential'- { _rsscUserName = Nothing- , _rsscServiceSpecificCredentialId = pServiceSpecificCredentialId_- }----- | The name of the IAM user associated with the service-specific credential. If this value is not specified, then the operation assumes the user whose credentials are used to call the operation. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--rsscUserName :: Lens' ResetServiceSpecificCredential (Maybe Text)-rsscUserName = lens _rsscUserName (\ s a -> s{_rsscUserName = a})---- | The unique identifier of the service-specific credential. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-rsscServiceSpecificCredentialId :: Lens' ResetServiceSpecificCredential Text-rsscServiceSpecificCredentialId = lens _rsscServiceSpecificCredentialId (\ s a -> s{_rsscServiceSpecificCredentialId = a})--instance AWSRequest ResetServiceSpecificCredential- where- type Rs ResetServiceSpecificCredential =- ResetServiceSpecificCredentialResponse- request = postQuery iam- response- = receiveXMLWrapper- "ResetServiceSpecificCredentialResult"- (\ s h x ->- ResetServiceSpecificCredentialResponse' <$>- (x .@? "ServiceSpecificCredential") <*>- (pure (fromEnum s)))--instance Hashable ResetServiceSpecificCredential- where--instance NFData ResetServiceSpecificCredential where--instance ToHeaders ResetServiceSpecificCredential- where- toHeaders = const mempty--instance ToPath ResetServiceSpecificCredential where- toPath = const "/"--instance ToQuery ResetServiceSpecificCredential where- toQuery ResetServiceSpecificCredential'{..}- = mconcat- ["Action" =:- ("ResetServiceSpecificCredential" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _rsscUserName,- "ServiceSpecificCredentialId" =:- _rsscServiceSpecificCredentialId]---- | /See:/ 'resetServiceSpecificCredentialResponse' smart constructor.-data ResetServiceSpecificCredentialResponse = ResetServiceSpecificCredentialResponse'- { _rsscrsServiceSpecificCredential :: !(Maybe ServiceSpecificCredential)- , _rsscrsResponseStatus :: !Int- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'ResetServiceSpecificCredentialResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rsscrsServiceSpecificCredential' - A structure with details about the updated service-specific credential, including the new password. /Important:/ This is the __only__ time that you can access the password. You cannot recover the password later, but you can reset it again.------ * 'rsscrsResponseStatus' - -- | The response status code.-resetServiceSpecificCredentialResponse- :: Int -- ^ 'rsscrsResponseStatus'- -> ResetServiceSpecificCredentialResponse-resetServiceSpecificCredentialResponse pResponseStatus_ =- ResetServiceSpecificCredentialResponse'- { _rsscrsServiceSpecificCredential = Nothing- , _rsscrsResponseStatus = pResponseStatus_- }----- | A structure with details about the updated service-specific credential, including the new password. /Important:/ This is the __only__ time that you can access the password. You cannot recover the password later, but you can reset it again.-rsscrsServiceSpecificCredential :: Lens' ResetServiceSpecificCredentialResponse (Maybe ServiceSpecificCredential)-rsscrsServiceSpecificCredential = lens _rsscrsServiceSpecificCredential (\ s a -> s{_rsscrsServiceSpecificCredential = a})---- | -- | The response status code.-rsscrsResponseStatus :: Lens' ResetServiceSpecificCredentialResponse Int-rsscrsResponseStatus = lens _rsscrsResponseStatus (\ s a -> s{_rsscrsResponseStatus = a})--instance NFData- ResetServiceSpecificCredentialResponse- where
− gen/Network/AWS/IAM/ResyncMFADevice.hs
@@ -1,138 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.ResyncMFADevice--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Synchronizes the specified MFA device with its IAM resource object on the AWS servers.--------- For more information about creating and working with virtual MFA devices, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_VirtualMFA.html Using a Virtual MFA Device> in the /IAM User Guide/ .----module Network.AWS.IAM.ResyncMFADevice- (- -- * Creating a Request- resyncMFADevice- , ResyncMFADevice- -- * Request Lenses- , rmdUserName- , rmdSerialNumber- , rmdAuthenticationCode1- , rmdAuthenticationCode2-- -- * Destructuring the Response- , resyncMFADeviceResponse- , ResyncMFADeviceResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'resyncMFADevice' smart constructor.-data ResyncMFADevice = ResyncMFADevice'- { _rmdUserName :: !Text- , _rmdSerialNumber :: !Text- , _rmdAuthenticationCode1 :: !Text- , _rmdAuthenticationCode2 :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ResyncMFADevice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rmdUserName' - The name of the user whose MFA device you want to resynchronize. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'rmdSerialNumber' - Serial number that uniquely identifies the MFA device. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'rmdAuthenticationCode1' - An authentication code emitted by the device. The format for this parameter is a sequence of six digits.------ * 'rmdAuthenticationCode2' - A subsequent authentication code emitted by the device. The format for this parameter is a sequence of six digits.-resyncMFADevice- :: Text -- ^ 'rmdUserName'- -> Text -- ^ 'rmdSerialNumber'- -> Text -- ^ 'rmdAuthenticationCode1'- -> Text -- ^ 'rmdAuthenticationCode2'- -> ResyncMFADevice-resyncMFADevice pUserName_ pSerialNumber_ pAuthenticationCode1_ pAuthenticationCode2_ =- ResyncMFADevice'- { _rmdUserName = pUserName_- , _rmdSerialNumber = pSerialNumber_- , _rmdAuthenticationCode1 = pAuthenticationCode1_- , _rmdAuthenticationCode2 = pAuthenticationCode2_- }----- | The name of the user whose MFA device you want to resynchronize. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--rmdUserName :: Lens' ResyncMFADevice Text-rmdUserName = lens _rmdUserName (\ s a -> s{_rmdUserName = a})---- | Serial number that uniquely identifies the MFA device. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--rmdSerialNumber :: Lens' ResyncMFADevice Text-rmdSerialNumber = lens _rmdSerialNumber (\ s a -> s{_rmdSerialNumber = a})---- | An authentication code emitted by the device. The format for this parameter is a sequence of six digits.-rmdAuthenticationCode1 :: Lens' ResyncMFADevice Text-rmdAuthenticationCode1 = lens _rmdAuthenticationCode1 (\ s a -> s{_rmdAuthenticationCode1 = a})---- | A subsequent authentication code emitted by the device. The format for this parameter is a sequence of six digits.-rmdAuthenticationCode2 :: Lens' ResyncMFADevice Text-rmdAuthenticationCode2 = lens _rmdAuthenticationCode2 (\ s a -> s{_rmdAuthenticationCode2 = a})--instance AWSRequest ResyncMFADevice where- type Rs ResyncMFADevice = ResyncMFADeviceResponse- request = postQuery iam- response = receiveNull ResyncMFADeviceResponse'--instance Hashable ResyncMFADevice where--instance NFData ResyncMFADevice where--instance ToHeaders ResyncMFADevice where- toHeaders = const mempty--instance ToPath ResyncMFADevice where- toPath = const "/"--instance ToQuery ResyncMFADevice where- toQuery ResyncMFADevice'{..}- = mconcat- ["Action" =: ("ResyncMFADevice" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _rmdUserName,- "SerialNumber" =: _rmdSerialNumber,- "AuthenticationCode1" =: _rmdAuthenticationCode1,- "AuthenticationCode2" =: _rmdAuthenticationCode2]---- | /See:/ 'resyncMFADeviceResponse' smart constructor.-data ResyncMFADeviceResponse =- ResyncMFADeviceResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ResyncMFADeviceResponse' with the minimum fields required to make a request.----resyncMFADeviceResponse- :: ResyncMFADeviceResponse-resyncMFADeviceResponse = ResyncMFADeviceResponse'---instance NFData ResyncMFADeviceResponse where
− gen/Network/AWS/IAM/SetDefaultPolicyVersion.hs
@@ -1,119 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.SetDefaultPolicyVersion--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Sets the specified version of the specified policy as the policy's default (operative) version.--------- This operation affects all users, groups, and roles that the policy is attached to. To list the users, groups, and roles that the policy is attached to, use the 'ListEntitiesForPolicy' API.------ For information about managed policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /IAM User Guide/ .----module Network.AWS.IAM.SetDefaultPolicyVersion- (- -- * Creating a Request- setDefaultPolicyVersion- , SetDefaultPolicyVersion- -- * Request Lenses- , sdpvPolicyARN- , sdpvVersionId-- -- * Destructuring the Response- , setDefaultPolicyVersionResponse- , SetDefaultPolicyVersionResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'setDefaultPolicyVersion' smart constructor.-data SetDefaultPolicyVersion = SetDefaultPolicyVersion'- { _sdpvPolicyARN :: !Text- , _sdpvVersionId :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SetDefaultPolicyVersion' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sdpvPolicyARN' - The Amazon Resource Name (ARN) of the IAM policy whose default version you want to set. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'sdpvVersionId' - The version of the policy to set as the default (operative) version. For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .-setDefaultPolicyVersion- :: Text -- ^ 'sdpvPolicyARN'- -> Text -- ^ 'sdpvVersionId'- -> SetDefaultPolicyVersion-setDefaultPolicyVersion pPolicyARN_ pVersionId_ =- SetDefaultPolicyVersion'- {_sdpvPolicyARN = pPolicyARN_, _sdpvVersionId = pVersionId_}----- | The Amazon Resource Name (ARN) of the IAM policy whose default version you want to set. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-sdpvPolicyARN :: Lens' SetDefaultPolicyVersion Text-sdpvPolicyARN = lens _sdpvPolicyARN (\ s a -> s{_sdpvPolicyARN = a})---- | The version of the policy to set as the default (operative) version. For more information about managed policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /IAM User Guide/ .-sdpvVersionId :: Lens' SetDefaultPolicyVersion Text-sdpvVersionId = lens _sdpvVersionId (\ s a -> s{_sdpvVersionId = a})--instance AWSRequest SetDefaultPolicyVersion where- type Rs SetDefaultPolicyVersion =- SetDefaultPolicyVersionResponse- request = postQuery iam- response- = receiveNull SetDefaultPolicyVersionResponse'--instance Hashable SetDefaultPolicyVersion where--instance NFData SetDefaultPolicyVersion where--instance ToHeaders SetDefaultPolicyVersion where- toHeaders = const mempty--instance ToPath SetDefaultPolicyVersion where- toPath = const "/"--instance ToQuery SetDefaultPolicyVersion where- toQuery SetDefaultPolicyVersion'{..}- = mconcat- ["Action" =:- ("SetDefaultPolicyVersion" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PolicyArn" =: _sdpvPolicyARN,- "VersionId" =: _sdpvVersionId]---- | /See:/ 'setDefaultPolicyVersionResponse' smart constructor.-data SetDefaultPolicyVersionResponse =- SetDefaultPolicyVersionResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SetDefaultPolicyVersionResponse' with the minimum fields required to make a request.----setDefaultPolicyVersionResponse- :: SetDefaultPolicyVersionResponse-setDefaultPolicyVersionResponse = SetDefaultPolicyVersionResponse'---instance NFData SetDefaultPolicyVersionResponse where
− gen/Network/AWS/IAM/SimulateCustomPolicy.hs
@@ -1,205 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.SimulateCustomPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Simulate how a set of IAM policies and optionally a resource-based policy works with a list of API operations and AWS resources to determine the policies' effective permissions. The policies are provided as strings.--------- The simulation does not perform the API operations; it only checks the authorization to determine if the simulated policies allow or deny the operations.------ If you want to simulate existing policies attached to an IAM user, group, or role, use 'SimulatePrincipalPolicy' instead.------ Context keys are variables maintained by AWS and its services that provide details about the context of an API query request. You can use the @Condition@ element of an IAM policy to evaluate context keys. To get the list of context keys that the policies require for correct simulation, use 'GetContextKeysForCustomPolicy' .------ If the output is long, you can use @MaxItems@ and @Marker@ parameters to paginate the results.--------- This operation returns paginated results.-module Network.AWS.IAM.SimulateCustomPolicy- (- -- * Creating a Request- simulateCustomPolicy- , SimulateCustomPolicy- -- * Request Lenses- , scpResourcePolicy- , scpCallerARN- , scpResourceHandlingOption- , scpResourceARNs- , scpMarker- , scpMaxItems- , scpContextEntries- , scpResourceOwner- , scpPolicyInputList- , scpActionNames-- -- * Destructuring the Response- , simulatePolicyResponse- , SimulatePolicyResponse- -- * Response Lenses- , spEvaluationResults- , spMarker- , spIsTruncated- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'simulateCustomPolicy' smart constructor.-data SimulateCustomPolicy = SimulateCustomPolicy'- { _scpResourcePolicy :: !(Maybe Text)- , _scpCallerARN :: !(Maybe Text)- , _scpResourceHandlingOption :: !(Maybe Text)- , _scpResourceARNs :: !(Maybe [Text])- , _scpMarker :: !(Maybe Text)- , _scpMaxItems :: !(Maybe Nat)- , _scpContextEntries :: !(Maybe [ContextEntry])- , _scpResourceOwner :: !(Maybe Text)- , _scpPolicyInputList :: ![Text]- , _scpActionNames :: ![Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SimulateCustomPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'scpResourcePolicy' - A resource-based policy to include in the simulation provided as a string. Each resource in the simulation is treated as if it had this policy attached. You can include only one resource-based policy in a simulation. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)------ * 'scpCallerARN' - The ARN of the IAM user that you want to use as the simulated caller of the API operations. @CallerArn@ is required if you include a @ResourcePolicy@ so that the policy's @Principal@ element has a value to use in evaluating the policy. You can specify only the ARN of an IAM user. You cannot specify the ARN of an assumed role, federated user, or a service principal.------ * 'scpResourceHandlingOption' - Specifies the type of simulation to run. Different API operations that support resource-based policies require different combinations of resources. By specifying the type of simulation to run, you enable the policy simulator to enforce the presence of the required resources to ensure reliable simulation results. If your simulation does not match one of the following scenarios, then you can omit this parameter. The following list shows each of the supported scenario values and the resources that you must define to run the simulation. Each of the EC2 scenarios requires that you specify instance, image, and security-group resources. If your scenario includes an EBS volume, then you must specify that volume as a resource. If the EC2 scenario includes VPC, then you must supply the network-interface resource. If it includes an IP subnet, then you must specify the subnet resource. For more information on the EC2 scenario options, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported Platforms> in the /Amazon EC2 User Guide/ . * __EC2-Classic-InstanceStore__ instance, image, security-group * __EC2-Classic-EBS__ instance, image, security-group, volume * __EC2-VPC-InstanceStore__ instance, image, security-group, network-interface * __EC2-VPC-InstanceStore-Subnet__ instance, image, security-group, network-interface, subnet * __EC2-VPC-EBS__ instance, image, security-group, network-interface, volume * __EC2-VPC-EBS-Subnet__ instance, image, security-group, network-interface, subnet, volume------ * 'scpResourceARNs' - A list of ARNs of AWS resources to include in the simulation. If this parameter is not provided then the value defaults to @*@ (all resources). Each API in the @ActionNames@ parameter is evaluated for each resource in this list. The simulation determines the access result (allowed or denied) of each combination and reports it in the response. The simulation does not automatically retrieve policies for the specified resources. If you want to include a resource policy in the simulation, then you must include the policy as a string in the @ResourcePolicy@ parameter. If you include a @ResourcePolicy@ , then it must be applicable to all of the resources included in the simulation or you receive an invalid input error. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'scpMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'scpMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'scpContextEntries' - A list of context keys and corresponding values for the simulation to use. Whenever a context key is evaluated in one of the simulated IAM permission policies, the corresponding value is supplied.------ * 'scpResourceOwner' - An AWS account ID that specifies the owner of any simulated resource that does not identify its owner in the resource ARN, such as an S3 bucket or object. If @ResourceOwner@ is specified, it is also used as the account owner of any @ResourcePolicy@ included in the simulation. If the @ResourceOwner@ parameter is not specified, then the owner of the resources and the resource policy defaults to the account of the identity provided in @CallerArn@ . This parameter is required only if you specify a resource-based policy and account that owns the resource is different from the account that owns the simulated calling user @CallerArn@ .------ * 'scpPolicyInputList' - A list of policy documents to include in the simulation. Each document is specified as a string containing the complete, valid JSON text of an IAM policy. Do not include any resource-based policies in this parameter. Any resource-based policy must be submitted with the @ResourcePolicy@ parameter. The policies cannot be "scope-down" policies, such as you could include in a call to <http://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html GetFederationToken> or one of the <http://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html AssumeRole> API operations. In other words, do not use policies designed to restrict what a user can do while using the temporary credentials. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)------ * 'scpActionNames' - A list of names of API operations to evaluate in the simulation. Each operation is evaluated against each resource. Each operation must include the service identifier, such as @iam:CreateUser@ .-simulateCustomPolicy- :: SimulateCustomPolicy-simulateCustomPolicy =- SimulateCustomPolicy'- { _scpResourcePolicy = Nothing- , _scpCallerARN = Nothing- , _scpResourceHandlingOption = Nothing- , _scpResourceARNs = Nothing- , _scpMarker = Nothing- , _scpMaxItems = Nothing- , _scpContextEntries = Nothing- , _scpResourceOwner = Nothing- , _scpPolicyInputList = mempty- , _scpActionNames = mempty- }----- | A resource-based policy to include in the simulation provided as a string. Each resource in the simulation is treated as if it had this policy attached. You can include only one resource-based policy in a simulation. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-scpResourcePolicy :: Lens' SimulateCustomPolicy (Maybe Text)-scpResourcePolicy = lens _scpResourcePolicy (\ s a -> s{_scpResourcePolicy = a})---- | The ARN of the IAM user that you want to use as the simulated caller of the API operations. @CallerArn@ is required if you include a @ResourcePolicy@ so that the policy's @Principal@ element has a value to use in evaluating the policy. You can specify only the ARN of an IAM user. You cannot specify the ARN of an assumed role, federated user, or a service principal.-scpCallerARN :: Lens' SimulateCustomPolicy (Maybe Text)-scpCallerARN = lens _scpCallerARN (\ s a -> s{_scpCallerARN = a})---- | Specifies the type of simulation to run. Different API operations that support resource-based policies require different combinations of resources. By specifying the type of simulation to run, you enable the policy simulator to enforce the presence of the required resources to ensure reliable simulation results. If your simulation does not match one of the following scenarios, then you can omit this parameter. The following list shows each of the supported scenario values and the resources that you must define to run the simulation. Each of the EC2 scenarios requires that you specify instance, image, and security-group resources. If your scenario includes an EBS volume, then you must specify that volume as a resource. If the EC2 scenario includes VPC, then you must supply the network-interface resource. If it includes an IP subnet, then you must specify the subnet resource. For more information on the EC2 scenario options, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported Platforms> in the /Amazon EC2 User Guide/ . * __EC2-Classic-InstanceStore__ instance, image, security-group * __EC2-Classic-EBS__ instance, image, security-group, volume * __EC2-VPC-InstanceStore__ instance, image, security-group, network-interface * __EC2-VPC-InstanceStore-Subnet__ instance, image, security-group, network-interface, subnet * __EC2-VPC-EBS__ instance, image, security-group, network-interface, volume * __EC2-VPC-EBS-Subnet__ instance, image, security-group, network-interface, subnet, volume-scpResourceHandlingOption :: Lens' SimulateCustomPolicy (Maybe Text)-scpResourceHandlingOption = lens _scpResourceHandlingOption (\ s a -> s{_scpResourceHandlingOption = a})---- | A list of ARNs of AWS resources to include in the simulation. If this parameter is not provided then the value defaults to @*@ (all resources). Each API in the @ActionNames@ parameter is evaluated for each resource in this list. The simulation determines the access result (allowed or denied) of each combination and reports it in the response. The simulation does not automatically retrieve policies for the specified resources. If you want to include a resource policy in the simulation, then you must include the policy as a string in the @ResourcePolicy@ parameter. If you include a @ResourcePolicy@ , then it must be applicable to all of the resources included in the simulation or you receive an invalid input error. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-scpResourceARNs :: Lens' SimulateCustomPolicy [Text]-scpResourceARNs = lens _scpResourceARNs (\ s a -> s{_scpResourceARNs = a}) . _Default . _Coerce---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-scpMarker :: Lens' SimulateCustomPolicy (Maybe Text)-scpMarker = lens _scpMarker (\ s a -> s{_scpMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-scpMaxItems :: Lens' SimulateCustomPolicy (Maybe Natural)-scpMaxItems = lens _scpMaxItems (\ s a -> s{_scpMaxItems = a}) . mapping _Nat---- | A list of context keys and corresponding values for the simulation to use. Whenever a context key is evaluated in one of the simulated IAM permission policies, the corresponding value is supplied.-scpContextEntries :: Lens' SimulateCustomPolicy [ContextEntry]-scpContextEntries = lens _scpContextEntries (\ s a -> s{_scpContextEntries = a}) . _Default . _Coerce---- | An AWS account ID that specifies the owner of any simulated resource that does not identify its owner in the resource ARN, such as an S3 bucket or object. If @ResourceOwner@ is specified, it is also used as the account owner of any @ResourcePolicy@ included in the simulation. If the @ResourceOwner@ parameter is not specified, then the owner of the resources and the resource policy defaults to the account of the identity provided in @CallerArn@ . This parameter is required only if you specify a resource-based policy and account that owns the resource is different from the account that owns the simulated calling user @CallerArn@ .-scpResourceOwner :: Lens' SimulateCustomPolicy (Maybe Text)-scpResourceOwner = lens _scpResourceOwner (\ s a -> s{_scpResourceOwner = a})---- | A list of policy documents to include in the simulation. Each document is specified as a string containing the complete, valid JSON text of an IAM policy. Do not include any resource-based policies in this parameter. Any resource-based policy must be submitted with the @ResourcePolicy@ parameter. The policies cannot be "scope-down" policies, such as you could include in a call to <http://docs.aws.amazon.com/IAM/latest/APIReference/API_GetFederationToken.html GetFederationToken> or one of the <http://docs.aws.amazon.com/IAM/latest/APIReference/API_AssumeRole.html AssumeRole> API operations. In other words, do not use policies designed to restrict what a user can do while using the temporary credentials. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-scpPolicyInputList :: Lens' SimulateCustomPolicy [Text]-scpPolicyInputList = lens _scpPolicyInputList (\ s a -> s{_scpPolicyInputList = a}) . _Coerce---- | A list of names of API operations to evaluate in the simulation. Each operation is evaluated against each resource. Each operation must include the service identifier, such as @iam:CreateUser@ .-scpActionNames :: Lens' SimulateCustomPolicy [Text]-scpActionNames = lens _scpActionNames (\ s a -> s{_scpActionNames = a}) . _Coerce--instance AWSPager SimulateCustomPolicy where- page rq rs- | stop (rs ^. spIsTruncated) = Nothing- | isNothing (rs ^. spMarker) = Nothing- | otherwise = Just $ rq & scpMarker .~ rs ^. spMarker--instance AWSRequest SimulateCustomPolicy where- type Rs SimulateCustomPolicy = SimulatePolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "SimulateCustomPolicyResult"- (\ s h x -> parseXML x)--instance Hashable SimulateCustomPolicy where--instance NFData SimulateCustomPolicy where--instance ToHeaders SimulateCustomPolicy where- toHeaders = const mempty--instance ToPath SimulateCustomPolicy where- toPath = const "/"--instance ToQuery SimulateCustomPolicy where- toQuery SimulateCustomPolicy'{..}- = mconcat- ["Action" =: ("SimulateCustomPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "ResourcePolicy" =: _scpResourcePolicy,- "CallerArn" =: _scpCallerARN,- "ResourceHandlingOption" =:- _scpResourceHandlingOption,- "ResourceArns" =:- toQuery (toQueryList "member" <$> _scpResourceARNs),- "Marker" =: _scpMarker, "MaxItems" =: _scpMaxItems,- "ContextEntries" =:- toQuery- (toQueryList "member" <$> _scpContextEntries),- "ResourceOwner" =: _scpResourceOwner,- "PolicyInputList" =:- toQueryList "member" _scpPolicyInputList,- "ActionNames" =:- toQueryList "member" _scpActionNames]
− gen/Network/AWS/IAM/SimulatePrincipalPolicy.hs
@@ -1,223 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.SimulatePrincipalPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Simulate how a set of IAM policies attached to an IAM entity works with a list of API operations and AWS resources to determine the policies' effective permissions. The entity can be an IAM user, group, or role. If you specify a user, then the simulation also includes all of the policies that are attached to groups that the user belongs to.--------- You can optionally include a list of one or more additional policies specified as strings to include in the simulation. If you want to simulate only policies specified as strings, use 'SimulateCustomPolicy' instead.------ You can also optionally include one resource-based policy to be evaluated with each of the resources included in the simulation.------ The simulation does not perform the API operations, it only checks the authorization to determine if the simulated policies allow or deny the operations.------ __Note:__ This API discloses information about the permissions granted to other users. If you do not want users to see other user's permissions, then consider allowing them to use 'SimulateCustomPolicy' instead.------ Context keys are variables maintained by AWS and its services that provide details about the context of an API query request. You can use the @Condition@ element of an IAM policy to evaluate context keys. To get the list of context keys that the policies require for correct simulation, use 'GetContextKeysForPrincipalPolicy' .------ If the output is long, you can use the @MaxItems@ and @Marker@ parameters to paginate the results.--------- This operation returns paginated results.-module Network.AWS.IAM.SimulatePrincipalPolicy- (- -- * Creating a Request- simulatePrincipalPolicy- , SimulatePrincipalPolicy- -- * Request Lenses- , sppPolicyInputList- , sppResourcePolicy- , sppCallerARN- , sppResourceHandlingOption- , sppResourceARNs- , sppMarker- , sppMaxItems- , sppContextEntries- , sppResourceOwner- , sppPolicySourceARN- , sppActionNames-- -- * Destructuring the Response- , simulatePolicyResponse- , SimulatePolicyResponse- -- * Response Lenses- , spEvaluationResults- , spMarker- , spIsTruncated- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Pager-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'simulatePrincipalPolicy' smart constructor.-data SimulatePrincipalPolicy = SimulatePrincipalPolicy'- { _sppPolicyInputList :: !(Maybe [Text])- , _sppResourcePolicy :: !(Maybe Text)- , _sppCallerARN :: !(Maybe Text)- , _sppResourceHandlingOption :: !(Maybe Text)- , _sppResourceARNs :: !(Maybe [Text])- , _sppMarker :: !(Maybe Text)- , _sppMaxItems :: !(Maybe Nat)- , _sppContextEntries :: !(Maybe [ContextEntry])- , _sppResourceOwner :: !(Maybe Text)- , _sppPolicySourceARN :: !Text- , _sppActionNames :: ![Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SimulatePrincipalPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sppPolicyInputList' - An optional list of additional policy documents to include in the simulation. Each document is specified as a string containing the complete, valid JSON text of an IAM policy. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)------ * 'sppResourcePolicy' - A resource-based policy to include in the simulation provided as a string. Each resource in the simulation is treated as if it had this policy attached. You can include only one resource-based policy in a simulation. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)------ * 'sppCallerARN' - The ARN of the IAM user that you want to specify as the simulated caller of the API operations. If you do not specify a @CallerArn@ , it defaults to the ARN of the user that you specify in @PolicySourceArn@ , if you specified a user. If you include both a @PolicySourceArn@ (for example, @arn:aws:iam::123456789012:user/David@ ) and a @CallerArn@ (for example, @arn:aws:iam::123456789012:user/Bob@ ), the result is that you simulate calling the API operations as Bob, as if Bob had David's policies. You can specify only the ARN of an IAM user. You cannot specify the ARN of an assumed role, federated user, or a service principal. @CallerArn@ is required if you include a @ResourcePolicy@ and the @PolicySourceArn@ is not the ARN for an IAM user. This is required so that the resource-based policy's @Principal@ element has a value to use in evaluating the policy. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'sppResourceHandlingOption' - Specifies the type of simulation to run. Different API operations that support resource-based policies require different combinations of resources. By specifying the type of simulation to run, you enable the policy simulator to enforce the presence of the required resources to ensure reliable simulation results. If your simulation does not match one of the following scenarios, then you can omit this parameter. The following list shows each of the supported scenario values and the resources that you must define to run the simulation. Each of the EC2 scenarios requires that you specify instance, image, and security-group resources. If your scenario includes an EBS volume, then you must specify that volume as a resource. If the EC2 scenario includes VPC, then you must supply the network-interface resource. If it includes an IP subnet, then you must specify the subnet resource. For more information on the EC2 scenario options, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported Platforms> in the /Amazon EC2 User Guide/ . * __EC2-Classic-InstanceStore__ instance, image, security-group * __EC2-Classic-EBS__ instance, image, security-group, volume * __EC2-VPC-InstanceStore__ instance, image, security-group, network-interface * __EC2-VPC-InstanceStore-Subnet__ instance, image, security-group, network-interface, subnet * __EC2-VPC-EBS__ instance, image, security-group, network-interface, volume * __EC2-VPC-EBS-Subnet__ instance, image, security-group, network-interface, subnet, volume------ * 'sppResourceARNs' - A list of ARNs of AWS resources to include in the simulation. If this parameter is not provided, then the value defaults to @*@ (all resources). Each API in the @ActionNames@ parameter is evaluated for each resource in this list. The simulation determines the access result (allowed or denied) of each combination and reports it in the response. The simulation does not automatically retrieve policies for the specified resources. If you want to include a resource policy in the simulation, then you must include the policy as a string in the @ResourcePolicy@ parameter. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'sppMarker' - Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.------ * 'sppMaxItems' - (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.------ * 'sppContextEntries' - A list of context keys and corresponding values for the simulation to use. Whenever a context key is evaluated in one of the simulated IAM permission policies, the corresponding value is supplied.------ * 'sppResourceOwner' - An AWS account ID that specifies the owner of any simulated resource that does not identify its owner in the resource ARN, such as an S3 bucket or object. If @ResourceOwner@ is specified, it is also used as the account owner of any @ResourcePolicy@ included in the simulation. If the @ResourceOwner@ parameter is not specified, then the owner of the resources and the resource policy defaults to the account of the identity provided in @CallerArn@ . This parameter is required only if you specify a resource-based policy and account that owns the resource is different from the account that owns the simulated calling user @CallerArn@ .------ * 'sppPolicySourceARN' - The Amazon Resource Name (ARN) of a user, group, or role whose policies you want to include in the simulation. If you specify a user, group, or role, the simulation includes all policies that are associated with that entity. If you specify a user, the simulation also includes all policies that are attached to any groups the user belongs to. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'sppActionNames' - A list of names of API operations to evaluate in the simulation. Each operation is evaluated for each resource. Each operation must include the service identifier, such as @iam:CreateUser@ .-simulatePrincipalPolicy- :: Text -- ^ 'sppPolicySourceARN'- -> SimulatePrincipalPolicy-simulatePrincipalPolicy pPolicySourceARN_ =- SimulatePrincipalPolicy'- { _sppPolicyInputList = Nothing- , _sppResourcePolicy = Nothing- , _sppCallerARN = Nothing- , _sppResourceHandlingOption = Nothing- , _sppResourceARNs = Nothing- , _sppMarker = Nothing- , _sppMaxItems = Nothing- , _sppContextEntries = Nothing- , _sppResourceOwner = Nothing- , _sppPolicySourceARN = pPolicySourceARN_- , _sppActionNames = mempty- }----- | An optional list of additional policy documents to include in the simulation. Each document is specified as a string containing the complete, valid JSON text of an IAM policy. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-sppPolicyInputList :: Lens' SimulatePrincipalPolicy [Text]-sppPolicyInputList = lens _sppPolicyInputList (\ s a -> s{_sppPolicyInputList = a}) . _Default . _Coerce---- | A resource-based policy to include in the simulation provided as a string. Each resource in the simulation is treated as if it had this policy attached. You can include only one resource-based policy in a simulation. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-sppResourcePolicy :: Lens' SimulatePrincipalPolicy (Maybe Text)-sppResourcePolicy = lens _sppResourcePolicy (\ s a -> s{_sppResourcePolicy = a})---- | The ARN of the IAM user that you want to specify as the simulated caller of the API operations. If you do not specify a @CallerArn@ , it defaults to the ARN of the user that you specify in @PolicySourceArn@ , if you specified a user. If you include both a @PolicySourceArn@ (for example, @arn:aws:iam::123456789012:user/David@ ) and a @CallerArn@ (for example, @arn:aws:iam::123456789012:user/Bob@ ), the result is that you simulate calling the API operations as Bob, as if Bob had David's policies. You can specify only the ARN of an IAM user. You cannot specify the ARN of an assumed role, federated user, or a service principal. @CallerArn@ is required if you include a @ResourcePolicy@ and the @PolicySourceArn@ is not the ARN for an IAM user. This is required so that the resource-based policy's @Principal@ element has a value to use in evaluating the policy. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-sppCallerARN :: Lens' SimulatePrincipalPolicy (Maybe Text)-sppCallerARN = lens _sppCallerARN (\ s a -> s{_sppCallerARN = a})---- | Specifies the type of simulation to run. Different API operations that support resource-based policies require different combinations of resources. By specifying the type of simulation to run, you enable the policy simulator to enforce the presence of the required resources to ensure reliable simulation results. If your simulation does not match one of the following scenarios, then you can omit this parameter. The following list shows each of the supported scenario values and the resources that you must define to run the simulation. Each of the EC2 scenarios requires that you specify instance, image, and security-group resources. If your scenario includes an EBS volume, then you must specify that volume as a resource. If the EC2 scenario includes VPC, then you must supply the network-interface resource. If it includes an IP subnet, then you must specify the subnet resource. For more information on the EC2 scenario options, see <http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-supported-platforms.html Supported Platforms> in the /Amazon EC2 User Guide/ . * __EC2-Classic-InstanceStore__ instance, image, security-group * __EC2-Classic-EBS__ instance, image, security-group, volume * __EC2-VPC-InstanceStore__ instance, image, security-group, network-interface * __EC2-VPC-InstanceStore-Subnet__ instance, image, security-group, network-interface, subnet * __EC2-VPC-EBS__ instance, image, security-group, network-interface, volume * __EC2-VPC-EBS-Subnet__ instance, image, security-group, network-interface, subnet, volume-sppResourceHandlingOption :: Lens' SimulatePrincipalPolicy (Maybe Text)-sppResourceHandlingOption = lens _sppResourceHandlingOption (\ s a -> s{_sppResourceHandlingOption = a})---- | A list of ARNs of AWS resources to include in the simulation. If this parameter is not provided, then the value defaults to @*@ (all resources). Each API in the @ActionNames@ parameter is evaluated for each resource in this list. The simulation determines the access result (allowed or denied) of each combination and reports it in the response. The simulation does not automatically retrieve policies for the specified resources. If you want to include a resource policy in the simulation, then you must include the policy as a string in the @ResourcePolicy@ parameter. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-sppResourceARNs :: Lens' SimulatePrincipalPolicy [Text]-sppResourceARNs = lens _sppResourceARNs (\ s a -> s{_sppResourceARNs = a}) . _Default . _Coerce---- | Use this parameter only when paginating results and only after you receive a response indicating that the results are truncated. Set it to the value of the @Marker@ element in the response that you received to indicate where the next call should start.-sppMarker :: Lens' SimulatePrincipalPolicy (Maybe Text)-sppMarker = lens _sppMarker (\ s a -> s{_sppMarker = a})---- | (Optional) Use this only when paginating results to indicate the maximum number of items you want in the response. If additional items exist beyond the maximum you specify, the @IsTruncated@ response element is @true@ . If you do not include this parameter, it defaults to 100. Note that IAM might return fewer results, even when there are more results available. In that case, the @IsTruncated@ response element returns @true@ and @Marker@ contains a value to include in the subsequent call that tells the service where to continue from.-sppMaxItems :: Lens' SimulatePrincipalPolicy (Maybe Natural)-sppMaxItems = lens _sppMaxItems (\ s a -> s{_sppMaxItems = a}) . mapping _Nat---- | A list of context keys and corresponding values for the simulation to use. Whenever a context key is evaluated in one of the simulated IAM permission policies, the corresponding value is supplied.-sppContextEntries :: Lens' SimulatePrincipalPolicy [ContextEntry]-sppContextEntries = lens _sppContextEntries (\ s a -> s{_sppContextEntries = a}) . _Default . _Coerce---- | An AWS account ID that specifies the owner of any simulated resource that does not identify its owner in the resource ARN, such as an S3 bucket or object. If @ResourceOwner@ is specified, it is also used as the account owner of any @ResourcePolicy@ included in the simulation. If the @ResourceOwner@ parameter is not specified, then the owner of the resources and the resource policy defaults to the account of the identity provided in @CallerArn@ . This parameter is required only if you specify a resource-based policy and account that owns the resource is different from the account that owns the simulated calling user @CallerArn@ .-sppResourceOwner :: Lens' SimulatePrincipalPolicy (Maybe Text)-sppResourceOwner = lens _sppResourceOwner (\ s a -> s{_sppResourceOwner = a})---- | The Amazon Resource Name (ARN) of a user, group, or role whose policies you want to include in the simulation. If you specify a user, group, or role, the simulation includes all policies that are associated with that entity. If you specify a user, the simulation also includes all policies that are attached to any groups the user belongs to. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-sppPolicySourceARN :: Lens' SimulatePrincipalPolicy Text-sppPolicySourceARN = lens _sppPolicySourceARN (\ s a -> s{_sppPolicySourceARN = a})---- | A list of names of API operations to evaluate in the simulation. Each operation is evaluated for each resource. Each operation must include the service identifier, such as @iam:CreateUser@ .-sppActionNames :: Lens' SimulatePrincipalPolicy [Text]-sppActionNames = lens _sppActionNames (\ s a -> s{_sppActionNames = a}) . _Coerce--instance AWSPager SimulatePrincipalPolicy where- page rq rs- | stop (rs ^. spIsTruncated) = Nothing- | isNothing (rs ^. spMarker) = Nothing- | otherwise = Just $ rq & sppMarker .~ rs ^. spMarker--instance AWSRequest SimulatePrincipalPolicy where- type Rs SimulatePrincipalPolicy =- SimulatePolicyResponse- request = postQuery iam- response- = receiveXMLWrapper "SimulatePrincipalPolicyResult"- (\ s h x -> parseXML x)--instance Hashable SimulatePrincipalPolicy where--instance NFData SimulatePrincipalPolicy where--instance ToHeaders SimulatePrincipalPolicy where- toHeaders = const mempty--instance ToPath SimulatePrincipalPolicy where- toPath = const "/"--instance ToQuery SimulatePrincipalPolicy where- toQuery SimulatePrincipalPolicy'{..}- = mconcat- ["Action" =:- ("SimulatePrincipalPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "PolicyInputList" =:- toQuery- (toQueryList "member" <$> _sppPolicyInputList),- "ResourcePolicy" =: _sppResourcePolicy,- "CallerArn" =: _sppCallerARN,- "ResourceHandlingOption" =:- _sppResourceHandlingOption,- "ResourceArns" =:- toQuery (toQueryList "member" <$> _sppResourceARNs),- "Marker" =: _sppMarker, "MaxItems" =: _sppMaxItems,- "ContextEntries" =:- toQuery- (toQueryList "member" <$> _sppContextEntries),- "ResourceOwner" =: _sppResourceOwner,- "PolicySourceArn" =: _sppPolicySourceARN,- "ActionNames" =:- toQueryList "member" _sppActionNames]
− gen/Network/AWS/IAM/Types.hs
@@ -1,675 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.Types--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.IAM.Types- (- -- * Service Configuration- iam-- -- * Errors- , _CredentialReportNotPresentException- , _CredentialReportNotReadyException- , _MalformedPolicyDocumentException- , _EntityAlreadyExistsException- , _MalformedCertificateException- , _CredentialReportExpiredException- , _UnmodifiableEntityException- , _DuplicateCertificateException- , _DeleteConflictException- , _NoSuchEntityException- , _InvalidCertificateException- , _PolicyNotAttachableException- , _ServiceNotSupportedException- , _UnrecognizedPublicKeyEncodingException- , _InvalidUserTypeException- , _ServiceFailureException- , _InvalidInputException- , _InvalidPublicKeyException- , _InvalidAuthenticationCodeException- , _EntityTemporarilyUnmodifiableException- , _DuplicateSSHPublicKeyException- , _KeyPairMismatchException- , _PolicyEvaluationException- , _PasswordPolicyViolationException- , _LimitExceededException-- -- * AssignmentStatusType- , AssignmentStatusType (..)-- -- * ContextKeyTypeEnum- , ContextKeyTypeEnum (..)-- -- * DeletionTaskStatusType- , DeletionTaskStatusType (..)-- -- * EncodingType- , EncodingType (..)-- -- * EntityType- , EntityType (..)-- -- * PolicyEvaluationDecisionType- , PolicyEvaluationDecisionType (..)-- -- * PolicyScopeType- , PolicyScopeType (..)-- -- * PolicySourceType- , PolicySourceType (..)-- -- * ReportFormatType- , ReportFormatType (..)-- -- * ReportStateType- , ReportStateType (..)-- -- * StatusType- , StatusType (..)-- -- * SummaryKeyType- , SummaryKeyType (..)-- -- * AccessKeyInfo- , AccessKeyInfo- , accessKeyInfo- , akiCreateDate- , akiUserName- , akiAccessKeyId- , akiStatus- , akiSecretAccessKey-- -- * AccessKeyLastUsed- , AccessKeyLastUsed- , accessKeyLastUsed- , akluLastUsedDate- , akluServiceName- , akluRegion-- -- * AccessKeyMetadata- , AccessKeyMetadata- , accessKeyMetadata- , akmStatus- , akmCreateDate- , akmUserName- , akmAccessKeyId-- -- * AttachedPolicy- , AttachedPolicy- , attachedPolicy- , apPolicyName- , apPolicyARN-- -- * ContextEntry- , ContextEntry- , contextEntry- , ceContextKeyValues- , ceContextKeyName- , ceContextKeyType-- -- * DeletionTaskFailureReasonType- , DeletionTaskFailureReasonType- , deletionTaskFailureReasonType- , dtfrtRoleUsageList- , dtfrtReason-- -- * EvaluationResult- , EvaluationResult- , evaluationResult- , erMatchedStatements- , erEvalDecisionDetails- , erResourceSpecificResults- , erEvalResourceName- , erMissingContextValues- , erOrganizationsDecisionDetail- , erEvalActionName- , erEvalDecision-- -- * GetContextKeysForPolicyResponse- , GetContextKeysForPolicyResponse- , getContextKeysForPolicyResponse- , gckfpContextKeyNames-- -- * Group- , Group- , group'- , gPath- , gGroupName- , gGroupId- , gARN- , gCreateDate-- -- * GroupDetail- , GroupDetail- , groupDetail- , gdARN- , gdPath- , gdCreateDate- , gdGroupId- , gdGroupPolicyList- , gdGroupName- , gdAttachedManagedPolicies-- -- * InstanceProfile- , InstanceProfile- , instanceProfile- , ipPath- , ipInstanceProfileName- , ipInstanceProfileId- , ipARN- , ipCreateDate- , ipRoles-- -- * LoginProfile- , LoginProfile- , loginProfile- , lpPasswordResetRequired- , lpUserName- , lpCreateDate-- -- * MFADevice- , MFADevice- , mfaDevice- , mdUserName- , mdSerialNumber- , mdEnableDate-- -- * ManagedPolicyDetail- , ManagedPolicyDetail- , managedPolicyDetail- , mpdPolicyName- , mpdARN- , mpdUpdateDate- , mpdPolicyId- , mpdPath- , mpdPolicyVersionList- , mpdCreateDate- , mpdIsAttachable- , mpdDefaultVersionId- , mpdAttachmentCount- , mpdDescription-- -- * OpenIdConnectProviderListEntry- , OpenIdConnectProviderListEntry- , openIdConnectProviderListEntry- , oicpleARN-- -- * OrganizationsDecisionDetail- , OrganizationsDecisionDetail- , organizationsDecisionDetail- , oddAllowedByOrganizations-- -- * PasswordPolicy- , PasswordPolicy- , passwordPolicy- , ppExpirePasswords- , ppMinimumPasswordLength- , ppRequireNumbers- , ppPasswordReusePrevention- , ppRequireLowercaseCharacters- , ppMaxPasswordAge- , ppHardExpiry- , ppRequireSymbols- , ppRequireUppercaseCharacters- , ppAllowUsersToChangePassword-- -- * Policy- , Policy- , policy- , pPolicyName- , pARN- , pUpdateDate- , pPolicyId- , pPath- , pCreateDate- , pIsAttachable- , pDefaultVersionId- , pAttachmentCount- , pDescription-- -- * PolicyDetail- , PolicyDetail- , policyDetail- , pdPolicyDocument- , pdPolicyName-- -- * PolicyGroup- , PolicyGroup- , policyGroup- , pgGroupId- , pgGroupName-- -- * PolicyRole- , PolicyRole- , policyRole- , prRoleName- , prRoleId-- -- * PolicyUser- , PolicyUser- , policyUser- , puUserName- , puUserId-- -- * PolicyVersion- , PolicyVersion- , policyVersion- , pvVersionId- , pvCreateDate- , pvDocument- , pvIsDefaultVersion-- -- * Position- , Position- , position- , pLine- , pColumn-- -- * ResourceSpecificResult- , ResourceSpecificResult- , resourceSpecificResult- , rsrMatchedStatements- , rsrEvalDecisionDetails- , rsrMissingContextValues- , rsrEvalResourceName- , rsrEvalResourceDecision-- -- * Role- , Role- , role'- , rMaxSessionDuration- , rAssumeRolePolicyDocument- , rDescription- , rPath- , rRoleName- , rRoleId- , rARN- , rCreateDate-- -- * RoleDetail- , RoleDetail- , roleDetail- , rdAssumeRolePolicyDocument- , rdARN- , rdPath- , rdInstanceProfileList- , rdCreateDate- , rdRoleName- , rdRoleId- , rdRolePolicyList- , rdAttachedManagedPolicies-- -- * RoleUsageType- , RoleUsageType- , roleUsageType- , rutResources- , rutRegion-- -- * SAMLProviderListEntry- , SAMLProviderListEntry- , sAMLProviderListEntry- , samlpleARN- , samlpleCreateDate- , samlpleValidUntil-- -- * SSHPublicKey- , SSHPublicKey- , sshPublicKey- , spkUploadDate- , spkUserName- , spkSSHPublicKeyId- , spkFingerprint- , spkSSHPublicKeyBody- , spkStatus-- -- * SSHPublicKeyMetadata- , SSHPublicKeyMetadata- , sshPublicKeyMetadata- , spkmUserName- , spkmSSHPublicKeyId- , spkmStatus- , spkmUploadDate-- -- * ServerCertificate- , ServerCertificate- , serverCertificate- , sCertificateChain- , sServerCertificateMetadata- , sCertificateBody-- -- * ServerCertificateMetadata- , ServerCertificateMetadata- , serverCertificateMetadata- , scmUploadDate- , scmExpiration- , scmPath- , scmServerCertificateName- , scmServerCertificateId- , scmARN-- -- * ServiceSpecificCredential- , ServiceSpecificCredential- , serviceSpecificCredential- , sscCreateDate- , sscServiceName- , sscServiceUserName- , sscServicePassword- , sscServiceSpecificCredentialId- , sscUserName- , sscStatus-- -- * ServiceSpecificCredentialMetadata- , ServiceSpecificCredentialMetadata- , serviceSpecificCredentialMetadata- , sscmUserName- , sscmStatus- , sscmServiceUserName- , sscmCreateDate- , sscmServiceSpecificCredentialId- , sscmServiceName-- -- * SigningCertificate- , SigningCertificate- , signingCertificate- , scUploadDate- , scUserName- , scCertificateId- , scCertificateBody- , scStatus-- -- * SimulatePolicyResponse- , SimulatePolicyResponse- , simulatePolicyResponse- , spEvaluationResults- , spMarker- , spIsTruncated-- -- * Statement- , Statement- , statement- , sSourcePolicyType- , sSourcePolicyId- , sEndPosition- , sStartPosition-- -- * User- , User- , user- , uPasswordLastUsed- , uPath- , uUserName- , uUserId- , uARN- , uCreateDate-- -- * UserDetail- , UserDetail- , userDetail- , udGroupList- , udARN- , udPath- , udCreateDate- , udUserName- , udUserId- , udUserPolicyList- , udAttachedManagedPolicies-- -- * VirtualMFADevice- , VirtualMFADevice- , virtualMFADevice- , vmdQRCodePNG- , vmdBase32StringSeed- , vmdUser- , vmdEnableDate- , vmdSerialNumber- ) where--import Network.AWS.IAM.Types.Product-import Network.AWS.IAM.Types.Sum-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Sign.V4---- | API version @2010-05-08@ of the Amazon Identity and Access Management SDK configuration.-iam :: Service-iam =- Service- { _svcAbbrev = "IAM"- , _svcSigner = v4- , _svcPrefix = "iam"- , _svcVersion = "2010-05-08"- , _svcEndpoint = defaultEndpoint iam- , _svcTimeout = Just 70- , _svcCheck = statusSuccess- , _svcError = parseXMLError "IAM"- , _svcRetry = retry- }- where- retry =- Exponential- { _retryBase = 5.0e-2- , _retryGrowth = 2- , _retryAttempts = 5- , _retryCheck = check- }- check e- | has (hasCode "ThrottledException" . hasStatus 400) e =- Just "throttled_exception"- | has (hasStatus 429) e = Just "too_many_requests"- | has (hasCode "ThrottlingException" . hasStatus 400) e =- Just "throttling_exception"- | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"- | has (hasStatus 504) e = Just "gateway_timeout"- | has (hasCode "RequestThrottledException" . hasStatus 400) e =- Just "request_throttled_exception"- | has (hasStatus 502) e = Just "bad_gateway"- | has (hasStatus 503) e = Just "service_unavailable"- | has (hasStatus 500) e = Just "general_server_error"- | has (hasStatus 509) e = Just "limit_exceeded"- | otherwise = Nothing----- | The request was rejected because the credential report does not exist. To generate a credential report, use 'GenerateCredentialReport' .-------_CredentialReportNotPresentException :: AsError a => Getting (First ServiceError) a ServiceError-_CredentialReportNotPresentException =- _MatchServiceError iam "ReportNotPresent" . hasStatus 410----- | The request was rejected because the credential report is still being generated.-------_CredentialReportNotReadyException :: AsError a => Getting (First ServiceError) a ServiceError-_CredentialReportNotReadyException =- _MatchServiceError iam "ReportInProgress" . hasStatus 404----- | The request was rejected because the policy document was malformed. The error message describes the specific error.-------_MalformedPolicyDocumentException :: AsError a => Getting (First ServiceError) a ServiceError-_MalformedPolicyDocumentException =- _MatchServiceError iam "MalformedPolicyDocument" . hasStatus 400----- | The request was rejected because it attempted to create a resource that already exists.-------_EntityAlreadyExistsException :: AsError a => Getting (First ServiceError) a ServiceError-_EntityAlreadyExistsException =- _MatchServiceError iam "EntityAlreadyExists" . hasStatus 409----- | The request was rejected because the certificate was malformed or expired. The error message describes the specific error.-------_MalformedCertificateException :: AsError a => Getting (First ServiceError) a ServiceError-_MalformedCertificateException =- _MatchServiceError iam "MalformedCertificate" . hasStatus 400----- | The request was rejected because the most recent credential report has expired. To generate a new credential report, use 'GenerateCredentialReport' . For more information about credential report expiration, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Getting Credential Reports> in the /IAM User Guide/ .-------_CredentialReportExpiredException :: AsError a => Getting (First ServiceError) a ServiceError-_CredentialReportExpiredException =- _MatchServiceError iam "ReportExpired" . hasStatus 410----- | The request was rejected because only the service that depends on the service-linked role can modify or delete the role on your behalf. The error message includes the name of the service that depends on this service-linked role. You must request the change through that service.-------_UnmodifiableEntityException :: AsError a => Getting (First ServiceError) a ServiceError-_UnmodifiableEntityException =- _MatchServiceError iam "UnmodifiableEntity" . hasStatus 400----- | The request was rejected because the same certificate is associated with an IAM user in the account.-------_DuplicateCertificateException :: AsError a => Getting (First ServiceError) a ServiceError-_DuplicateCertificateException =- _MatchServiceError iam "DuplicateCertificate" . hasStatus 409----- | The request was rejected because it attempted to delete a resource that has attached subordinate entities. The error message describes these entities.-------_DeleteConflictException :: AsError a => Getting (First ServiceError) a ServiceError-_DeleteConflictException =- _MatchServiceError iam "DeleteConflict" . hasStatus 409----- | The request was rejected because it referenced an entity that does not exist. The error message describes the entity.-------_NoSuchEntityException :: AsError a => Getting (First ServiceError) a ServiceError-_NoSuchEntityException = _MatchServiceError iam "NoSuchEntity" . hasStatus 404----- | The request was rejected because the certificate is invalid.-------_InvalidCertificateException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidCertificateException =- _MatchServiceError iam "InvalidCertificate" . hasStatus 400----- | The request failed because AWS service role policies can only be attached to the service-linked role for that service.-------_PolicyNotAttachableException :: AsError a => Getting (First ServiceError) a ServiceError-_PolicyNotAttachableException =- _MatchServiceError iam "PolicyNotAttachable" . hasStatus 400----- | The specified service does not support service-specific credentials.-------_ServiceNotSupportedException :: AsError a => Getting (First ServiceError) a ServiceError-_ServiceNotSupportedException =- _MatchServiceError iam "NotSupportedService" . hasStatus 404----- | The request was rejected because the public key encoding format is unsupported or unrecognized.-------_UnrecognizedPublicKeyEncodingException :: AsError a => Getting (First ServiceError) a ServiceError-_UnrecognizedPublicKeyEncodingException =- _MatchServiceError iam "UnrecognizedPublicKeyEncoding" . hasStatus 400----- | The request was rejected because the type of user for the transaction was incorrect.-------_InvalidUserTypeException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidUserTypeException =- _MatchServiceError iam "InvalidUserType" . hasStatus 400----- | The request processing has failed because of an unknown error, exception or failure.-------_ServiceFailureException :: AsError a => Getting (First ServiceError) a ServiceError-_ServiceFailureException =- _MatchServiceError iam "ServiceFailure" . hasStatus 500----- | The request was rejected because an invalid or out-of-range value was supplied for an input parameter.-------_InvalidInputException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidInputException = _MatchServiceError iam "InvalidInput" . hasStatus 400----- | The request was rejected because the public key is malformed or otherwise invalid.-------_InvalidPublicKeyException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidPublicKeyException =- _MatchServiceError iam "InvalidPublicKey" . hasStatus 400----- | The request was rejected because the authentication code was not recognized. The error message describes the specific error.-------_InvalidAuthenticationCodeException :: AsError a => Getting (First ServiceError) a ServiceError-_InvalidAuthenticationCodeException =- _MatchServiceError iam "InvalidAuthenticationCode" . hasStatus 403----- | The request was rejected because it referenced an entity that is temporarily unmodifiable, such as a user name that was deleted and then recreated. The error indicates that the request is likely to succeed if you try again after waiting several minutes. The error message describes the entity.-------_EntityTemporarilyUnmodifiableException :: AsError a => Getting (First ServiceError) a ServiceError-_EntityTemporarilyUnmodifiableException =- _MatchServiceError iam "EntityTemporarilyUnmodifiable" . hasStatus 409----- | The request was rejected because the SSH public key is already associated with the specified IAM user.-------_DuplicateSSHPublicKeyException :: AsError a => Getting (First ServiceError) a ServiceError-_DuplicateSSHPublicKeyException =- _MatchServiceError iam "DuplicateSSHPublicKey" . hasStatus 400----- | The request was rejected because the public key certificate and the private key do not match.-------_KeyPairMismatchException :: AsError a => Getting (First ServiceError) a ServiceError-_KeyPairMismatchException =- _MatchServiceError iam "KeyPairMismatch" . hasStatus 400----- | The request failed because a provided policy could not be successfully evaluated. An additional detailed message indicates the source of the failure.-------_PolicyEvaluationException :: AsError a => Getting (First ServiceError) a ServiceError-_PolicyEvaluationException =- _MatchServiceError iam "PolicyEvaluation" . hasStatus 500----- | The request was rejected because the provided password did not meet the requirements imposed by the account password policy.-------_PasswordPolicyViolationException :: AsError a => Getting (First ServiceError) a ServiceError-_PasswordPolicyViolationException =- _MatchServiceError iam "PasswordPolicyViolation" . hasStatus 400----- | The request was rejected because it attempted to create resources beyond the current AWS account limits. The error message describes the limit exceeded.-------_LimitExceededException :: AsError a => Getting (First ServiceError) a ServiceError-_LimitExceededException = _MatchServiceError iam "LimitExceeded" . hasStatus 409-
− gen/Network/AWS/IAM/Types/Product.hs
@@ -1,2982 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.Types.Product--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.IAM.Types.Product where--import Network.AWS.IAM.Types.Sum-import Network.AWS.Lens-import Network.AWS.Prelude---- | Contains information about an AWS access key.--------- This data type is used as a response element in the 'CreateAccessKey' and 'ListAccessKeys' operations.--------- /See:/ 'accessKeyInfo' smart constructor.-data AccessKeyInfo = AccessKeyInfo'- { _akiCreateDate :: !(Maybe ISO8601)- , _akiUserName :: !Text- , _akiAccessKeyId :: !AccessKey- , _akiStatus :: !StatusType- , _akiSecretAccessKey :: !(Sensitive Text)- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'AccessKeyInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'akiCreateDate' - The date when the access key was created.------ * 'akiUserName' - The name of the IAM user that the access key is associated with.------ * 'akiAccessKeyId' - The ID for this access key.------ * 'akiStatus' - The status of the access key. @Active@ means that the key is valid for API calls, while @Inactive@ means it is not.------ * 'akiSecretAccessKey' - The secret key used to sign requests.-accessKeyInfo- :: Text -- ^ 'akiUserName'- -> AccessKey -- ^ 'akiAccessKeyId'- -> StatusType -- ^ 'akiStatus'- -> Text -- ^ 'akiSecretAccessKey'- -> AccessKeyInfo-accessKeyInfo pUserName_ pAccessKeyId_ pStatus_ pSecretAccessKey_ =- AccessKeyInfo'- { _akiCreateDate = Nothing- , _akiUserName = pUserName_- , _akiAccessKeyId = pAccessKeyId_- , _akiStatus = pStatus_- , _akiSecretAccessKey = _Sensitive # pSecretAccessKey_- }----- | The date when the access key was created.-akiCreateDate :: Lens' AccessKeyInfo (Maybe UTCTime)-akiCreateDate = lens _akiCreateDate (\ s a -> s{_akiCreateDate = a}) . mapping _Time---- | The name of the IAM user that the access key is associated with.-akiUserName :: Lens' AccessKeyInfo Text-akiUserName = lens _akiUserName (\ s a -> s{_akiUserName = a})---- | The ID for this access key.-akiAccessKeyId :: Lens' AccessKeyInfo AccessKey-akiAccessKeyId = lens _akiAccessKeyId (\ s a -> s{_akiAccessKeyId = a})---- | The status of the access key. @Active@ means that the key is valid for API calls, while @Inactive@ means it is not.-akiStatus :: Lens' AccessKeyInfo StatusType-akiStatus = lens _akiStatus (\ s a -> s{_akiStatus = a})---- | The secret key used to sign requests.-akiSecretAccessKey :: Lens' AccessKeyInfo Text-akiSecretAccessKey = lens _akiSecretAccessKey (\ s a -> s{_akiSecretAccessKey = a}) . _Sensitive--instance FromXML AccessKeyInfo where- parseXML x- = AccessKeyInfo' <$>- (x .@? "CreateDate") <*> (x .@ "UserName") <*>- (x .@ "AccessKeyId")- <*> (x .@ "Status")- <*> (x .@ "SecretAccessKey")--instance Hashable AccessKeyInfo where--instance NFData AccessKeyInfo where---- | Contains information about the last time an AWS access key was used.--------- This data type is used as a response element in the 'GetAccessKeyLastUsed' operation.--------- /See:/ 'accessKeyLastUsed' smart constructor.-data AccessKeyLastUsed = AccessKeyLastUsed'- { _akluLastUsedDate :: !ISO8601- , _akluServiceName :: !Text- , _akluRegion :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AccessKeyLastUsed' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'akluLastUsedDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the access key was most recently used. This field is null in the following situations: * The user does not have an access key. * An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015. * There is no sign-in data associated with the user------ * 'akluServiceName' - The name of the AWS service with which this access key was most recently used. This field displays "N/A" in the following situations: * The user does not have an access key. * An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015. * There is no sign-in data associated with the user------ * 'akluRegion' - The AWS region where this access key was most recently used. This field is displays "N/A" in the following situations: * The user does not have an access key. * An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015. * There is no sign-in data associated with the user For more information about AWS regions, see <http://docs.aws.amazon.com/general/latest/gr/rande.html Regions and Endpoints> in the Amazon Web Services General Reference.-accessKeyLastUsed- :: UTCTime -- ^ 'akluLastUsedDate'- -> Text -- ^ 'akluServiceName'- -> Text -- ^ 'akluRegion'- -> AccessKeyLastUsed-accessKeyLastUsed pLastUsedDate_ pServiceName_ pRegion_ =- AccessKeyLastUsed'- { _akluLastUsedDate = _Time # pLastUsedDate_- , _akluServiceName = pServiceName_- , _akluRegion = pRegion_- }----- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the access key was most recently used. This field is null in the following situations: * The user does not have an access key. * An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015. * There is no sign-in data associated with the user-akluLastUsedDate :: Lens' AccessKeyLastUsed UTCTime-akluLastUsedDate = lens _akluLastUsedDate (\ s a -> s{_akluLastUsedDate = a}) . _Time---- | The name of the AWS service with which this access key was most recently used. This field displays "N/A" in the following situations: * The user does not have an access key. * An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015. * There is no sign-in data associated with the user-akluServiceName :: Lens' AccessKeyLastUsed Text-akluServiceName = lens _akluServiceName (\ s a -> s{_akluServiceName = a})---- | The AWS region where this access key was most recently used. This field is displays "N/A" in the following situations: * The user does not have an access key. * An access key exists but has never been used, at least not since IAM started tracking this information on April 22nd, 2015. * There is no sign-in data associated with the user For more information about AWS regions, see <http://docs.aws.amazon.com/general/latest/gr/rande.html Regions and Endpoints> in the Amazon Web Services General Reference.-akluRegion :: Lens' AccessKeyLastUsed Text-akluRegion = lens _akluRegion (\ s a -> s{_akluRegion = a})--instance FromXML AccessKeyLastUsed where- parseXML x- = AccessKeyLastUsed' <$>- (x .@ "LastUsedDate") <*> (x .@ "ServiceName") <*>- (x .@ "Region")--instance Hashable AccessKeyLastUsed where--instance NFData AccessKeyLastUsed where---- | Contains information about an AWS access key, without its secret key.--------- This data type is used as a response element in the 'ListAccessKeys' operation.--------- /See:/ 'accessKeyMetadata' smart constructor.-data AccessKeyMetadata = AccessKeyMetadata'- { _akmStatus :: !(Maybe StatusType)- , _akmCreateDate :: !(Maybe ISO8601)- , _akmUserName :: !(Maybe Text)- , _akmAccessKeyId :: !(Maybe AccessKey)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AccessKeyMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'akmStatus' - The status of the access key. @Active@ means the key is valid for API calls; @Inactive@ means it is not.------ * 'akmCreateDate' - The date when the access key was created.------ * 'akmUserName' - The name of the IAM user that the key is associated with.------ * 'akmAccessKeyId' - The ID for this access key.-accessKeyMetadata- :: AccessKeyMetadata-accessKeyMetadata =- AccessKeyMetadata'- { _akmStatus = Nothing- , _akmCreateDate = Nothing- , _akmUserName = Nothing- , _akmAccessKeyId = Nothing- }----- | The status of the access key. @Active@ means the key is valid for API calls; @Inactive@ means it is not.-akmStatus :: Lens' AccessKeyMetadata (Maybe StatusType)-akmStatus = lens _akmStatus (\ s a -> s{_akmStatus = a})---- | The date when the access key was created.-akmCreateDate :: Lens' AccessKeyMetadata (Maybe UTCTime)-akmCreateDate = lens _akmCreateDate (\ s a -> s{_akmCreateDate = a}) . mapping _Time---- | The name of the IAM user that the key is associated with.-akmUserName :: Lens' AccessKeyMetadata (Maybe Text)-akmUserName = lens _akmUserName (\ s a -> s{_akmUserName = a})---- | The ID for this access key.-akmAccessKeyId :: Lens' AccessKeyMetadata (Maybe AccessKey)-akmAccessKeyId = lens _akmAccessKeyId (\ s a -> s{_akmAccessKeyId = a})--instance FromXML AccessKeyMetadata where- parseXML x- = AccessKeyMetadata' <$>- (x .@? "Status") <*> (x .@? "CreateDate") <*>- (x .@? "UserName")- <*> (x .@? "AccessKeyId")--instance Hashable AccessKeyMetadata where--instance NFData AccessKeyMetadata where---- | Contains information about an attached policy.--------- An attached policy is a managed policy that has been attached to a user, group, or role. This data type is used as a response element in the 'ListAttachedGroupPolicies' , 'ListAttachedRolePolicies' , 'ListAttachedUserPolicies' , and 'GetAccountAuthorizationDetails' operations.------ For more information about managed policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /Using IAM/ guide.--------- /See:/ 'attachedPolicy' smart constructor.-data AttachedPolicy = AttachedPolicy'- { _apPolicyName :: !(Maybe Text)- , _apPolicyARN :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'AttachedPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'apPolicyName' - The friendly name of the attached policy.------ * 'apPolicyARN' - Undocumented member.-attachedPolicy- :: AttachedPolicy-attachedPolicy =- AttachedPolicy' {_apPolicyName = Nothing, _apPolicyARN = Nothing}----- | The friendly name of the attached policy.-apPolicyName :: Lens' AttachedPolicy (Maybe Text)-apPolicyName = lens _apPolicyName (\ s a -> s{_apPolicyName = a})---- | Undocumented member.-apPolicyARN :: Lens' AttachedPolicy (Maybe Text)-apPolicyARN = lens _apPolicyARN (\ s a -> s{_apPolicyARN = a})--instance FromXML AttachedPolicy where- parseXML x- = AttachedPolicy' <$>- (x .@? "PolicyName") <*> (x .@? "PolicyArn")--instance Hashable AttachedPolicy where--instance NFData AttachedPolicy where---- | Contains information about a condition context key. It includes the name of the key and specifies the value (or values, if the context key supports multiple values) to use in the simulation. This information is used when evaluating the @Condition@ elements of the input policies.--------- This data type is used as an input parameter to @'SimulateCustomPolicy' @ and @'SimulateCustomPolicy' @ .--------- /See:/ 'contextEntry' smart constructor.-data ContextEntry = ContextEntry'- { _ceContextKeyValues :: !(Maybe [Text])- , _ceContextKeyName :: !(Maybe Text)- , _ceContextKeyType :: !(Maybe ContextKeyTypeEnum)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ContextEntry' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ceContextKeyValues' - The value (or values, if the condition context key supports multiple values) to provide to the simulation when the key is referenced by a @Condition@ element in an input policy.------ * 'ceContextKeyName' - The full name of a condition context key, including the service prefix. For example, @aws:SourceIp@ or @s3:VersionId@ .------ * 'ceContextKeyType' - The data type of the value (or values) specified in the @ContextKeyValues@ parameter.-contextEntry- :: ContextEntry-contextEntry =- ContextEntry'- { _ceContextKeyValues = Nothing- , _ceContextKeyName = Nothing- , _ceContextKeyType = Nothing- }----- | The value (or values, if the condition context key supports multiple values) to provide to the simulation when the key is referenced by a @Condition@ element in an input policy.-ceContextKeyValues :: Lens' ContextEntry [Text]-ceContextKeyValues = lens _ceContextKeyValues (\ s a -> s{_ceContextKeyValues = a}) . _Default . _Coerce---- | The full name of a condition context key, including the service prefix. For example, @aws:SourceIp@ or @s3:VersionId@ .-ceContextKeyName :: Lens' ContextEntry (Maybe Text)-ceContextKeyName = lens _ceContextKeyName (\ s a -> s{_ceContextKeyName = a})---- | The data type of the value (or values) specified in the @ContextKeyValues@ parameter.-ceContextKeyType :: Lens' ContextEntry (Maybe ContextKeyTypeEnum)-ceContextKeyType = lens _ceContextKeyType (\ s a -> s{_ceContextKeyType = a})--instance Hashable ContextEntry where--instance NFData ContextEntry where--instance ToQuery ContextEntry where- toQuery ContextEntry'{..}- = mconcat- ["ContextKeyValues" =:- toQuery- (toQueryList "member" <$> _ceContextKeyValues),- "ContextKeyName" =: _ceContextKeyName,- "ContextKeyType" =: _ceContextKeyType]---- | The reason that the service-linked role deletion failed.--------- This data type is used as a response element in the 'GetServiceLinkedRoleDeletionStatus' operation.--------- /See:/ 'deletionTaskFailureReasonType' smart constructor.-data DeletionTaskFailureReasonType = DeletionTaskFailureReasonType'- { _dtfrtRoleUsageList :: !(Maybe [RoleUsageType])- , _dtfrtReason :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeletionTaskFailureReasonType' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dtfrtRoleUsageList' - A list of objects that contains details about the service-linked role deletion failure, if that information is returned by the service. If the service-linked role has active sessions or if any resources that were used by the role have not been deleted from the linked service, the role can't be deleted. This parameter includes a list of the resources that are associated with the role and the region in which the resources are being used.------ * 'dtfrtReason' - A short description of the reason that the service-linked role deletion failed.-deletionTaskFailureReasonType- :: DeletionTaskFailureReasonType-deletionTaskFailureReasonType =- DeletionTaskFailureReasonType'- {_dtfrtRoleUsageList = Nothing, _dtfrtReason = Nothing}----- | A list of objects that contains details about the service-linked role deletion failure, if that information is returned by the service. If the service-linked role has active sessions or if any resources that were used by the role have not been deleted from the linked service, the role can't be deleted. This parameter includes a list of the resources that are associated with the role and the region in which the resources are being used.-dtfrtRoleUsageList :: Lens' DeletionTaskFailureReasonType [RoleUsageType]-dtfrtRoleUsageList = lens _dtfrtRoleUsageList (\ s a -> s{_dtfrtRoleUsageList = a}) . _Default . _Coerce---- | A short description of the reason that the service-linked role deletion failed.-dtfrtReason :: Lens' DeletionTaskFailureReasonType (Maybe Text)-dtfrtReason = lens _dtfrtReason (\ s a -> s{_dtfrtReason = a})--instance FromXML DeletionTaskFailureReasonType where- parseXML x- = DeletionTaskFailureReasonType' <$>- (x .@? "RoleUsageList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Reason")--instance Hashable DeletionTaskFailureReasonType where--instance NFData DeletionTaskFailureReasonType where---- | Contains the results of a simulation.--------- This data type is used by the return parameter of @'SimulateCustomPolicy' @ and @'SimulatePrincipalPolicy' @ .--------- /See:/ 'evaluationResult' smart constructor.-data EvaluationResult = EvaluationResult'- { _erMatchedStatements :: !(Maybe [Statement])- , _erEvalDecisionDetails :: !(Maybe (Map Text PolicyEvaluationDecisionType))- , _erResourceSpecificResults :: !(Maybe [ResourceSpecificResult])- , _erEvalResourceName :: !(Maybe Text)- , _erMissingContextValues :: !(Maybe [Text])- , _erOrganizationsDecisionDetail :: !(Maybe OrganizationsDecisionDetail)- , _erEvalActionName :: !Text- , _erEvalDecision :: !PolicyEvaluationDecisionType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'EvaluationResult' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'erMatchedStatements' - A list of the statements in the input policies that determine the result for this scenario. Remember that even if multiple statements allow the operation on the resource, if only one statement denies that operation, then the explicit deny overrides any allow, and the deny statement is the only entry included in the result.------ * 'erEvalDecisionDetails' - Additional details about the results of the evaluation decision. When there are both IAM policies and resource policies, this parameter explains how each set of policies contributes to the final evaluation decision. When simulating cross-account access to a resource, both the resource-based policy and the caller's IAM policy must grant access. See <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html How IAM Roles Differ from Resource-based Policies>------ * 'erResourceSpecificResults' - The individual results of the simulation of the API operation specified in EvalActionName on each resource.------ * 'erEvalResourceName' - The ARN of the resource that the indicated API operation was tested on.------ * 'erMissingContextValues' - A list of context keys that are required by the included input policies but that were not provided by one of the input parameters. This list is used when the resource in a simulation is "*", either explicitly, or when the @ResourceArns@ parameter blank. If you include a list of resources, then any missing context values are instead included under the @ResourceSpecificResults@ section. To discover the context keys used by a set of policies, you can call 'GetContextKeysForCustomPolicy' or 'GetContextKeysForPrincipalPolicy' .------ * 'erOrganizationsDecisionDetail' - A structure that details how AWS Organizations and its service control policies affect the results of the simulation. Only applies if the simulated user's account is part of an organization.------ * 'erEvalActionName' - The name of the API operation tested on the indicated resource.------ * 'erEvalDecision' - The result of the simulation.-evaluationResult- :: Text -- ^ 'erEvalActionName'- -> PolicyEvaluationDecisionType -- ^ 'erEvalDecision'- -> EvaluationResult-evaluationResult pEvalActionName_ pEvalDecision_ =- EvaluationResult'- { _erMatchedStatements = Nothing- , _erEvalDecisionDetails = Nothing- , _erResourceSpecificResults = Nothing- , _erEvalResourceName = Nothing- , _erMissingContextValues = Nothing- , _erOrganizationsDecisionDetail = Nothing- , _erEvalActionName = pEvalActionName_- , _erEvalDecision = pEvalDecision_- }----- | A list of the statements in the input policies that determine the result for this scenario. Remember that even if multiple statements allow the operation on the resource, if only one statement denies that operation, then the explicit deny overrides any allow, and the deny statement is the only entry included in the result.-erMatchedStatements :: Lens' EvaluationResult [Statement]-erMatchedStatements = lens _erMatchedStatements (\ s a -> s{_erMatchedStatements = a}) . _Default . _Coerce---- | Additional details about the results of the evaluation decision. When there are both IAM policies and resource policies, this parameter explains how each set of policies contributes to the final evaluation decision. When simulating cross-account access to a resource, both the resource-based policy and the caller's IAM policy must grant access. See <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html How IAM Roles Differ from Resource-based Policies>-erEvalDecisionDetails :: Lens' EvaluationResult (HashMap Text PolicyEvaluationDecisionType)-erEvalDecisionDetails = lens _erEvalDecisionDetails (\ s a -> s{_erEvalDecisionDetails = a}) . _Default . _Map---- | The individual results of the simulation of the API operation specified in EvalActionName on each resource.-erResourceSpecificResults :: Lens' EvaluationResult [ResourceSpecificResult]-erResourceSpecificResults = lens _erResourceSpecificResults (\ s a -> s{_erResourceSpecificResults = a}) . _Default . _Coerce---- | The ARN of the resource that the indicated API operation was tested on.-erEvalResourceName :: Lens' EvaluationResult (Maybe Text)-erEvalResourceName = lens _erEvalResourceName (\ s a -> s{_erEvalResourceName = a})---- | A list of context keys that are required by the included input policies but that were not provided by one of the input parameters. This list is used when the resource in a simulation is "*", either explicitly, or when the @ResourceArns@ parameter blank. If you include a list of resources, then any missing context values are instead included under the @ResourceSpecificResults@ section. To discover the context keys used by a set of policies, you can call 'GetContextKeysForCustomPolicy' or 'GetContextKeysForPrincipalPolicy' .-erMissingContextValues :: Lens' EvaluationResult [Text]-erMissingContextValues = lens _erMissingContextValues (\ s a -> s{_erMissingContextValues = a}) . _Default . _Coerce---- | A structure that details how AWS Organizations and its service control policies affect the results of the simulation. Only applies if the simulated user's account is part of an organization.-erOrganizationsDecisionDetail :: Lens' EvaluationResult (Maybe OrganizationsDecisionDetail)-erOrganizationsDecisionDetail = lens _erOrganizationsDecisionDetail (\ s a -> s{_erOrganizationsDecisionDetail = a})---- | The name of the API operation tested on the indicated resource.-erEvalActionName :: Lens' EvaluationResult Text-erEvalActionName = lens _erEvalActionName (\ s a -> s{_erEvalActionName = a})---- | The result of the simulation.-erEvalDecision :: Lens' EvaluationResult PolicyEvaluationDecisionType-erEvalDecision = lens _erEvalDecision (\ s a -> s{_erEvalDecision = a})--instance FromXML EvaluationResult where- parseXML x- = EvaluationResult' <$>- (x .@? "MatchedStatements" .!@ mempty >>=- may (parseXMLList "member"))- <*>- (x .@? "EvalDecisionDetails" .!@ mempty >>=- may (parseXMLMap "entry" "key" "value"))- <*>- (x .@? "ResourceSpecificResults" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "EvalResourceName")- <*>- (x .@? "MissingContextValues" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "OrganizationsDecisionDetail")- <*> (x .@ "EvalActionName")- <*> (x .@ "EvalDecision")--instance Hashable EvaluationResult where--instance NFData EvaluationResult where---- | Contains the response to a successful 'GetContextKeysForPrincipalPolicy' or 'GetContextKeysForCustomPolicy' request.------------ /See:/ 'getContextKeysForPolicyResponse' smart constructor.-newtype GetContextKeysForPolicyResponse = GetContextKeysForPolicyResponse'- { _gckfpContextKeyNames :: Maybe [Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GetContextKeysForPolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gckfpContextKeyNames' - The list of context keys that are referenced in the input policies.-getContextKeysForPolicyResponse- :: GetContextKeysForPolicyResponse-getContextKeysForPolicyResponse =- GetContextKeysForPolicyResponse' {_gckfpContextKeyNames = Nothing}----- | The list of context keys that are referenced in the input policies.-gckfpContextKeyNames :: Lens' GetContextKeysForPolicyResponse [Text]-gckfpContextKeyNames = lens _gckfpContextKeyNames (\ s a -> s{_gckfpContextKeyNames = a}) . _Default . _Coerce--instance FromXML GetContextKeysForPolicyResponse- where- parseXML x- = GetContextKeysForPolicyResponse' <$>- (x .@? "ContextKeyNames" .!@ mempty >>=- may (parseXMLList "member"))--instance Hashable GetContextKeysForPolicyResponse- where--instance NFData GetContextKeysForPolicyResponse where---- | Contains information about an IAM group entity.--------- This data type is used as a response element in the following operations:------ * 'CreateGroup'------ * 'GetGroup'------ * 'ListGroups'--------------- /See:/ 'group'' smart constructor.-data Group = Group'- { _gPath :: !Text- , _gGroupName :: !Text- , _gGroupId :: !Text- , _gARN :: !Text- , _gCreateDate :: !ISO8601- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Group' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gPath' - The path to the group. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'gGroupName' - The friendly name that identifies the group.------ * 'gGroupId' - The stable and unique string identifying the group. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'gARN' - The Amazon Resource Name (ARN) specifying the group. For more information about ARNs and how to use them in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'gCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the group was created.-group'- :: Text -- ^ 'gPath'- -> Text -- ^ 'gGroupName'- -> Text -- ^ 'gGroupId'- -> Text -- ^ 'gARN'- -> UTCTime -- ^ 'gCreateDate'- -> Group-group' pPath_ pGroupName_ pGroupId_ pARN_ pCreateDate_ =- Group'- { _gPath = pPath_- , _gGroupName = pGroupName_- , _gGroupId = pGroupId_- , _gARN = pARN_- , _gCreateDate = _Time # pCreateDate_- }----- | The path to the group. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-gPath :: Lens' Group Text-gPath = lens _gPath (\ s a -> s{_gPath = a})---- | The friendly name that identifies the group.-gGroupName :: Lens' Group Text-gGroupName = lens _gGroupName (\ s a -> s{_gGroupName = a})---- | The stable and unique string identifying the group. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-gGroupId :: Lens' Group Text-gGroupId = lens _gGroupId (\ s a -> s{_gGroupId = a})---- | The Amazon Resource Name (ARN) specifying the group. For more information about ARNs and how to use them in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-gARN :: Lens' Group Text-gARN = lens _gARN (\ s a -> s{_gARN = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the group was created.-gCreateDate :: Lens' Group UTCTime-gCreateDate = lens _gCreateDate (\ s a -> s{_gCreateDate = a}) . _Time--instance FromXML Group where- parseXML x- = Group' <$>- (x .@ "Path") <*> (x .@ "GroupName") <*>- (x .@ "GroupId")- <*> (x .@ "Arn")- <*> (x .@ "CreateDate")--instance Hashable Group where--instance NFData Group where---- | Contains information about an IAM group, including all of the group's policies.--------- This data type is used as a response element in the 'GetAccountAuthorizationDetails' operation.--------- /See:/ 'groupDetail' smart constructor.-data GroupDetail = GroupDetail'- { _gdARN :: !(Maybe Text)- , _gdPath :: !(Maybe Text)- , _gdCreateDate :: !(Maybe ISO8601)- , _gdGroupId :: !(Maybe Text)- , _gdGroupPolicyList :: !(Maybe [PolicyDetail])- , _gdGroupName :: !(Maybe Text)- , _gdAttachedManagedPolicies :: !(Maybe [AttachedPolicy])- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'GroupDetail' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gdARN' - Undocumented member.------ * 'gdPath' - The path to the group. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'gdCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the group was created.------ * 'gdGroupId' - The stable and unique string identifying the group. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'gdGroupPolicyList' - A list of the inline policies embedded in the group.------ * 'gdGroupName' - The friendly name that identifies the group.------ * 'gdAttachedManagedPolicies' - A list of the managed policies attached to the group.-groupDetail- :: GroupDetail-groupDetail =- GroupDetail'- { _gdARN = Nothing- , _gdPath = Nothing- , _gdCreateDate = Nothing- , _gdGroupId = Nothing- , _gdGroupPolicyList = Nothing- , _gdGroupName = Nothing- , _gdAttachedManagedPolicies = Nothing- }----- | Undocumented member.-gdARN :: Lens' GroupDetail (Maybe Text)-gdARN = lens _gdARN (\ s a -> s{_gdARN = a})---- | The path to the group. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-gdPath :: Lens' GroupDetail (Maybe Text)-gdPath = lens _gdPath (\ s a -> s{_gdPath = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the group was created.-gdCreateDate :: Lens' GroupDetail (Maybe UTCTime)-gdCreateDate = lens _gdCreateDate (\ s a -> s{_gdCreateDate = a}) . mapping _Time---- | The stable and unique string identifying the group. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-gdGroupId :: Lens' GroupDetail (Maybe Text)-gdGroupId = lens _gdGroupId (\ s a -> s{_gdGroupId = a})---- | A list of the inline policies embedded in the group.-gdGroupPolicyList :: Lens' GroupDetail [PolicyDetail]-gdGroupPolicyList = lens _gdGroupPolicyList (\ s a -> s{_gdGroupPolicyList = a}) . _Default . _Coerce---- | The friendly name that identifies the group.-gdGroupName :: Lens' GroupDetail (Maybe Text)-gdGroupName = lens _gdGroupName (\ s a -> s{_gdGroupName = a})---- | A list of the managed policies attached to the group.-gdAttachedManagedPolicies :: Lens' GroupDetail [AttachedPolicy]-gdAttachedManagedPolicies = lens _gdAttachedManagedPolicies (\ s a -> s{_gdAttachedManagedPolicies = a}) . _Default . _Coerce--instance FromXML GroupDetail where- parseXML x- = GroupDetail' <$>- (x .@? "Arn") <*> (x .@? "Path") <*>- (x .@? "CreateDate")- <*> (x .@? "GroupId")- <*>- (x .@? "GroupPolicyList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "GroupName")- <*>- (x .@? "AttachedManagedPolicies" .!@ mempty >>=- may (parseXMLList "member"))--instance Hashable GroupDetail where--instance NFData GroupDetail where---- | Contains information about an instance profile.--------- This data type is used as a response element in the following operations:------ * 'CreateInstanceProfile'------ * 'GetInstanceProfile'------ * 'ListInstanceProfiles'------ * 'ListInstanceProfilesForRole'--------------- /See:/ 'instanceProfile' smart constructor.-data InstanceProfile = InstanceProfile'- { _ipPath :: !Text- , _ipInstanceProfileName :: !Text- , _ipInstanceProfileId :: !Text- , _ipARN :: !Text- , _ipCreateDate :: !ISO8601- , _ipRoles :: ![Role]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'InstanceProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ipPath' - The path to the instance profile. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'ipInstanceProfileName' - The name identifying the instance profile.------ * 'ipInstanceProfileId' - The stable and unique string identifying the instance profile. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'ipARN' - The Amazon Resource Name (ARN) specifying the instance profile. For more information about ARNs and how to use them in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'ipCreateDate' - The date when the instance profile was created.------ * 'ipRoles' - The role associated with the instance profile.-instanceProfile- :: Text -- ^ 'ipPath'- -> Text -- ^ 'ipInstanceProfileName'- -> Text -- ^ 'ipInstanceProfileId'- -> Text -- ^ 'ipARN'- -> UTCTime -- ^ 'ipCreateDate'- -> InstanceProfile-instanceProfile pPath_ pInstanceProfileName_ pInstanceProfileId_ pARN_ pCreateDate_ =- InstanceProfile'- { _ipPath = pPath_- , _ipInstanceProfileName = pInstanceProfileName_- , _ipInstanceProfileId = pInstanceProfileId_- , _ipARN = pARN_- , _ipCreateDate = _Time # pCreateDate_- , _ipRoles = mempty- }----- | The path to the instance profile. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-ipPath :: Lens' InstanceProfile Text-ipPath = lens _ipPath (\ s a -> s{_ipPath = a})---- | The name identifying the instance profile.-ipInstanceProfileName :: Lens' InstanceProfile Text-ipInstanceProfileName = lens _ipInstanceProfileName (\ s a -> s{_ipInstanceProfileName = a})---- | The stable and unique string identifying the instance profile. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-ipInstanceProfileId :: Lens' InstanceProfile Text-ipInstanceProfileId = lens _ipInstanceProfileId (\ s a -> s{_ipInstanceProfileId = a})---- | The Amazon Resource Name (ARN) specifying the instance profile. For more information about ARNs and how to use them in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-ipARN :: Lens' InstanceProfile Text-ipARN = lens _ipARN (\ s a -> s{_ipARN = a})---- | The date when the instance profile was created.-ipCreateDate :: Lens' InstanceProfile UTCTime-ipCreateDate = lens _ipCreateDate (\ s a -> s{_ipCreateDate = a}) . _Time---- | The role associated with the instance profile.-ipRoles :: Lens' InstanceProfile [Role]-ipRoles = lens _ipRoles (\ s a -> s{_ipRoles = a}) . _Coerce--instance FromXML InstanceProfile where- parseXML x- = InstanceProfile' <$>- (x .@ "Path") <*> (x .@ "InstanceProfileName") <*>- (x .@ "InstanceProfileId")- <*> (x .@ "Arn")- <*> (x .@ "CreateDate")- <*>- (x .@? "Roles" .!@ mempty >>= parseXMLList "member")--instance Hashable InstanceProfile where--instance NFData InstanceProfile where---- | Contains the user name and password create date for a user.--------- This data type is used as a response element in the 'CreateLoginProfile' and 'GetLoginProfile' operations.--------- /See:/ 'loginProfile' smart constructor.-data LoginProfile = LoginProfile'- { _lpPasswordResetRequired :: !(Maybe Bool)- , _lpUserName :: !Text- , _lpCreateDate :: !ISO8601- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'LoginProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lpPasswordResetRequired' - Specifies whether the user is required to set a new password on next sign-in.------ * 'lpUserName' - The name of the user, which can be used for signing in to the AWS Management Console.------ * 'lpCreateDate' - The date when the password for the user was created.-loginProfile- :: Text -- ^ 'lpUserName'- -> UTCTime -- ^ 'lpCreateDate'- -> LoginProfile-loginProfile pUserName_ pCreateDate_ =- LoginProfile'- { _lpPasswordResetRequired = Nothing- , _lpUserName = pUserName_- , _lpCreateDate = _Time # pCreateDate_- }----- | Specifies whether the user is required to set a new password on next sign-in.-lpPasswordResetRequired :: Lens' LoginProfile (Maybe Bool)-lpPasswordResetRequired = lens _lpPasswordResetRequired (\ s a -> s{_lpPasswordResetRequired = a})---- | The name of the user, which can be used for signing in to the AWS Management Console.-lpUserName :: Lens' LoginProfile Text-lpUserName = lens _lpUserName (\ s a -> s{_lpUserName = a})---- | The date when the password for the user was created.-lpCreateDate :: Lens' LoginProfile UTCTime-lpCreateDate = lens _lpCreateDate (\ s a -> s{_lpCreateDate = a}) . _Time--instance FromXML LoginProfile where- parseXML x- = LoginProfile' <$>- (x .@? "PasswordResetRequired") <*> (x .@ "UserName")- <*> (x .@ "CreateDate")--instance Hashable LoginProfile where--instance NFData LoginProfile where---- | Contains information about an MFA device.--------- This data type is used as a response element in the 'ListMFADevices' operation.--------- /See:/ 'mfaDevice' smart constructor.-data MFADevice = MFADevice'- { _mdUserName :: !Text- , _mdSerialNumber :: !Text- , _mdEnableDate :: !ISO8601- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'MFADevice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mdUserName' - The user with whom the MFA device is associated.------ * 'mdSerialNumber' - The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN.------ * 'mdEnableDate' - The date when the MFA device was enabled for the user.-mfaDevice- :: Text -- ^ 'mdUserName'- -> Text -- ^ 'mdSerialNumber'- -> UTCTime -- ^ 'mdEnableDate'- -> MFADevice-mfaDevice pUserName_ pSerialNumber_ pEnableDate_ =- MFADevice'- { _mdUserName = pUserName_- , _mdSerialNumber = pSerialNumber_- , _mdEnableDate = _Time # pEnableDate_- }----- | The user with whom the MFA device is associated.-mdUserName :: Lens' MFADevice Text-mdUserName = lens _mdUserName (\ s a -> s{_mdUserName = a})---- | The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN.-mdSerialNumber :: Lens' MFADevice Text-mdSerialNumber = lens _mdSerialNumber (\ s a -> s{_mdSerialNumber = a})---- | The date when the MFA device was enabled for the user.-mdEnableDate :: Lens' MFADevice UTCTime-mdEnableDate = lens _mdEnableDate (\ s a -> s{_mdEnableDate = a}) . _Time--instance FromXML MFADevice where- parseXML x- = MFADevice' <$>- (x .@ "UserName") <*> (x .@ "SerialNumber") <*>- (x .@ "EnableDate")--instance Hashable MFADevice where--instance NFData MFADevice where---- | Contains information about a managed policy, including the policy's ARN, versions, and the number of principal entities (users, groups, and roles) that the policy is attached to.--------- This data type is used as a response element in the 'GetAccountAuthorizationDetails' operation.------ For more information about managed policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /Using IAM/ guide.--------- /See:/ 'managedPolicyDetail' smart constructor.-data ManagedPolicyDetail = ManagedPolicyDetail'- { _mpdPolicyName :: !(Maybe Text)- , _mpdARN :: !(Maybe Text)- , _mpdUpdateDate :: !(Maybe ISO8601)- , _mpdPolicyId :: !(Maybe Text)- , _mpdPath :: !(Maybe Text)- , _mpdPolicyVersionList :: !(Maybe [PolicyVersion])- , _mpdCreateDate :: !(Maybe ISO8601)- , _mpdIsAttachable :: !(Maybe Bool)- , _mpdDefaultVersionId :: !(Maybe Text)- , _mpdAttachmentCount :: !(Maybe Int)- , _mpdDescription :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ManagedPolicyDetail' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mpdPolicyName' - The friendly name (not ARN) identifying the policy.------ * 'mpdARN' - Undocumented member.------ * 'mpdUpdateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy was last updated. When a policy has only one version, this field contains the date and time when the policy was created. When a policy has more than one version, this field contains the date and time when the most recent policy version was created.------ * 'mpdPolicyId' - The stable and unique string identifying the policy. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'mpdPath' - The path to the policy. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'mpdPolicyVersionList' - A list containing information about the versions of the policy.------ * 'mpdCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy was created.------ * 'mpdIsAttachable' - Specifies whether the policy can be attached to an IAM user, group, or role.------ * 'mpdDefaultVersionId' - The identifier for the version of the policy that is set as the default (operative) version. For more information about policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /Using IAM/ guide.------ * 'mpdAttachmentCount' - The number of principal entities (users, groups, and roles) that the policy is attached to.------ * 'mpdDescription' - A friendly description of the policy.-managedPolicyDetail- :: ManagedPolicyDetail-managedPolicyDetail =- ManagedPolicyDetail'- { _mpdPolicyName = Nothing- , _mpdARN = Nothing- , _mpdUpdateDate = Nothing- , _mpdPolicyId = Nothing- , _mpdPath = Nothing- , _mpdPolicyVersionList = Nothing- , _mpdCreateDate = Nothing- , _mpdIsAttachable = Nothing- , _mpdDefaultVersionId = Nothing- , _mpdAttachmentCount = Nothing- , _mpdDescription = Nothing- }----- | The friendly name (not ARN) identifying the policy.-mpdPolicyName :: Lens' ManagedPolicyDetail (Maybe Text)-mpdPolicyName = lens _mpdPolicyName (\ s a -> s{_mpdPolicyName = a})---- | Undocumented member.-mpdARN :: Lens' ManagedPolicyDetail (Maybe Text)-mpdARN = lens _mpdARN (\ s a -> s{_mpdARN = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy was last updated. When a policy has only one version, this field contains the date and time when the policy was created. When a policy has more than one version, this field contains the date and time when the most recent policy version was created.-mpdUpdateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)-mpdUpdateDate = lens _mpdUpdateDate (\ s a -> s{_mpdUpdateDate = a}) . mapping _Time---- | The stable and unique string identifying the policy. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-mpdPolicyId :: Lens' ManagedPolicyDetail (Maybe Text)-mpdPolicyId = lens _mpdPolicyId (\ s a -> s{_mpdPolicyId = a})---- | The path to the policy. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-mpdPath :: Lens' ManagedPolicyDetail (Maybe Text)-mpdPath = lens _mpdPath (\ s a -> s{_mpdPath = a})---- | A list containing information about the versions of the policy.-mpdPolicyVersionList :: Lens' ManagedPolicyDetail [PolicyVersion]-mpdPolicyVersionList = lens _mpdPolicyVersionList (\ s a -> s{_mpdPolicyVersionList = a}) . _Default . _Coerce---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy was created.-mpdCreateDate :: Lens' ManagedPolicyDetail (Maybe UTCTime)-mpdCreateDate = lens _mpdCreateDate (\ s a -> s{_mpdCreateDate = a}) . mapping _Time---- | Specifies whether the policy can be attached to an IAM user, group, or role.-mpdIsAttachable :: Lens' ManagedPolicyDetail (Maybe Bool)-mpdIsAttachable = lens _mpdIsAttachable (\ s a -> s{_mpdIsAttachable = a})---- | The identifier for the version of the policy that is set as the default (operative) version. For more information about policy versions, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html Versioning for Managed Policies> in the /Using IAM/ guide.-mpdDefaultVersionId :: Lens' ManagedPolicyDetail (Maybe Text)-mpdDefaultVersionId = lens _mpdDefaultVersionId (\ s a -> s{_mpdDefaultVersionId = a})---- | The number of principal entities (users, groups, and roles) that the policy is attached to.-mpdAttachmentCount :: Lens' ManagedPolicyDetail (Maybe Int)-mpdAttachmentCount = lens _mpdAttachmentCount (\ s a -> s{_mpdAttachmentCount = a})---- | A friendly description of the policy.-mpdDescription :: Lens' ManagedPolicyDetail (Maybe Text)-mpdDescription = lens _mpdDescription (\ s a -> s{_mpdDescription = a})--instance FromXML ManagedPolicyDetail where- parseXML x- = ManagedPolicyDetail' <$>- (x .@? "PolicyName") <*> (x .@? "Arn") <*>- (x .@? "UpdateDate")- <*> (x .@? "PolicyId")- <*> (x .@? "Path")- <*>- (x .@? "PolicyVersionList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "CreateDate")- <*> (x .@? "IsAttachable")- <*> (x .@? "DefaultVersionId")- <*> (x .@? "AttachmentCount")- <*> (x .@? "Description")--instance Hashable ManagedPolicyDetail where--instance NFData ManagedPolicyDetail where---- | Contains the Amazon Resource Name (ARN) for an IAM OpenID Connect provider.------------ /See:/ 'openIdConnectProviderListEntry' smart constructor.-newtype OpenIdConnectProviderListEntry = OpenIdConnectProviderListEntry'- { _oicpleARN :: Maybe Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'OpenIdConnectProviderListEntry' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'oicpleARN' - Undocumented member.-openIdConnectProviderListEntry- :: OpenIdConnectProviderListEntry-openIdConnectProviderListEntry =- OpenIdConnectProviderListEntry' {_oicpleARN = Nothing}----- | Undocumented member.-oicpleARN :: Lens' OpenIdConnectProviderListEntry (Maybe Text)-oicpleARN = lens _oicpleARN (\ s a -> s{_oicpleARN = a})--instance FromXML OpenIdConnectProviderListEntry where- parseXML x- = OpenIdConnectProviderListEntry' <$> (x .@? "Arn")--instance Hashable OpenIdConnectProviderListEntry- where--instance NFData OpenIdConnectProviderListEntry where---- | Contains information about AWS Organizations's effect on a policy simulation.------------ /See:/ 'organizationsDecisionDetail' smart constructor.-newtype OrganizationsDecisionDetail = OrganizationsDecisionDetail'- { _oddAllowedByOrganizations :: Maybe Bool- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'OrganizationsDecisionDetail' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'oddAllowedByOrganizations' - Specifies whether the simulated operation is allowed by the AWS Organizations service control policies that impact the simulated user's account.-organizationsDecisionDetail- :: OrganizationsDecisionDetail-organizationsDecisionDetail =- OrganizationsDecisionDetail' {_oddAllowedByOrganizations = Nothing}----- | Specifies whether the simulated operation is allowed by the AWS Organizations service control policies that impact the simulated user's account.-oddAllowedByOrganizations :: Lens' OrganizationsDecisionDetail (Maybe Bool)-oddAllowedByOrganizations = lens _oddAllowedByOrganizations (\ s a -> s{_oddAllowedByOrganizations = a})--instance FromXML OrganizationsDecisionDetail where- parseXML x- = OrganizationsDecisionDetail' <$>- (x .@? "AllowedByOrganizations")--instance Hashable OrganizationsDecisionDetail where--instance NFData OrganizationsDecisionDetail where---- | Contains information about the account password policy.--------- This data type is used as a response element in the 'GetAccountPasswordPolicy' operation.--------- /See:/ 'passwordPolicy' smart constructor.-data PasswordPolicy = PasswordPolicy'- { _ppExpirePasswords :: !(Maybe Bool)- , _ppMinimumPasswordLength :: !(Maybe Nat)- , _ppRequireNumbers :: !(Maybe Bool)- , _ppPasswordReusePrevention :: !(Maybe Nat)- , _ppRequireLowercaseCharacters :: !(Maybe Bool)- , _ppMaxPasswordAge :: !(Maybe Nat)- , _ppHardExpiry :: !(Maybe Bool)- , _ppRequireSymbols :: !(Maybe Bool)- , _ppRequireUppercaseCharacters :: !(Maybe Bool)- , _ppAllowUsersToChangePassword :: !(Maybe Bool)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PasswordPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ppExpirePasswords' - Indicates whether passwords in the account expire. Returns true if @MaxPasswordAge@ contains a value greater than 0. Returns false if MaxPasswordAge is 0 or not present.------ * 'ppMinimumPasswordLength' - Minimum length to require for IAM user passwords.------ * 'ppRequireNumbers' - Specifies whether to require numbers for IAM user passwords.------ * 'ppPasswordReusePrevention' - Specifies the number of previous passwords that IAM users are prevented from reusing.------ * 'ppRequireLowercaseCharacters' - Specifies whether to require lowercase characters for IAM user passwords.------ * 'ppMaxPasswordAge' - The number of days that an IAM user password is valid.------ * 'ppHardExpiry' - Specifies whether IAM users are prevented from setting a new password after their password has expired.------ * 'ppRequireSymbols' - Specifies whether to require symbols for IAM user passwords.------ * 'ppRequireUppercaseCharacters' - Specifies whether to require uppercase characters for IAM user passwords.------ * 'ppAllowUsersToChangePassword' - Specifies whether IAM users are allowed to change their own password.-passwordPolicy- :: PasswordPolicy-passwordPolicy =- PasswordPolicy'- { _ppExpirePasswords = Nothing- , _ppMinimumPasswordLength = Nothing- , _ppRequireNumbers = Nothing- , _ppPasswordReusePrevention = Nothing- , _ppRequireLowercaseCharacters = Nothing- , _ppMaxPasswordAge = Nothing- , _ppHardExpiry = Nothing- , _ppRequireSymbols = Nothing- , _ppRequireUppercaseCharacters = Nothing- , _ppAllowUsersToChangePassword = Nothing- }----- | Indicates whether passwords in the account expire. Returns true if @MaxPasswordAge@ contains a value greater than 0. Returns false if MaxPasswordAge is 0 or not present.-ppExpirePasswords :: Lens' PasswordPolicy (Maybe Bool)-ppExpirePasswords = lens _ppExpirePasswords (\ s a -> s{_ppExpirePasswords = a})---- | Minimum length to require for IAM user passwords.-ppMinimumPasswordLength :: Lens' PasswordPolicy (Maybe Natural)-ppMinimumPasswordLength = lens _ppMinimumPasswordLength (\ s a -> s{_ppMinimumPasswordLength = a}) . mapping _Nat---- | Specifies whether to require numbers for IAM user passwords.-ppRequireNumbers :: Lens' PasswordPolicy (Maybe Bool)-ppRequireNumbers = lens _ppRequireNumbers (\ s a -> s{_ppRequireNumbers = a})---- | Specifies the number of previous passwords that IAM users are prevented from reusing.-ppPasswordReusePrevention :: Lens' PasswordPolicy (Maybe Natural)-ppPasswordReusePrevention = lens _ppPasswordReusePrevention (\ s a -> s{_ppPasswordReusePrevention = a}) . mapping _Nat---- | Specifies whether to require lowercase characters for IAM user passwords.-ppRequireLowercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)-ppRequireLowercaseCharacters = lens _ppRequireLowercaseCharacters (\ s a -> s{_ppRequireLowercaseCharacters = a})---- | The number of days that an IAM user password is valid.-ppMaxPasswordAge :: Lens' PasswordPolicy (Maybe Natural)-ppMaxPasswordAge = lens _ppMaxPasswordAge (\ s a -> s{_ppMaxPasswordAge = a}) . mapping _Nat---- | Specifies whether IAM users are prevented from setting a new password after their password has expired.-ppHardExpiry :: Lens' PasswordPolicy (Maybe Bool)-ppHardExpiry = lens _ppHardExpiry (\ s a -> s{_ppHardExpiry = a})---- | Specifies whether to require symbols for IAM user passwords.-ppRequireSymbols :: Lens' PasswordPolicy (Maybe Bool)-ppRequireSymbols = lens _ppRequireSymbols (\ s a -> s{_ppRequireSymbols = a})---- | Specifies whether to require uppercase characters for IAM user passwords.-ppRequireUppercaseCharacters :: Lens' PasswordPolicy (Maybe Bool)-ppRequireUppercaseCharacters = lens _ppRequireUppercaseCharacters (\ s a -> s{_ppRequireUppercaseCharacters = a})---- | Specifies whether IAM users are allowed to change their own password.-ppAllowUsersToChangePassword :: Lens' PasswordPolicy (Maybe Bool)-ppAllowUsersToChangePassword = lens _ppAllowUsersToChangePassword (\ s a -> s{_ppAllowUsersToChangePassword = a})--instance FromXML PasswordPolicy where- parseXML x- = PasswordPolicy' <$>- (x .@? "ExpirePasswords") <*>- (x .@? "MinimumPasswordLength")- <*> (x .@? "RequireNumbers")- <*> (x .@? "PasswordReusePrevention")- <*> (x .@? "RequireLowercaseCharacters")- <*> (x .@? "MaxPasswordAge")- <*> (x .@? "HardExpiry")- <*> (x .@? "RequireSymbols")- <*> (x .@? "RequireUppercaseCharacters")- <*> (x .@? "AllowUsersToChangePassword")--instance Hashable PasswordPolicy where--instance NFData PasswordPolicy where---- | Contains information about a managed policy.--------- This data type is used as a response element in the 'CreatePolicy' , 'GetPolicy' , and 'ListPolicies' operations.------ For more information about managed policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /Using IAM/ guide.--------- /See:/ 'policy' smart constructor.-data Policy = Policy'- { _pPolicyName :: !(Maybe Text)- , _pARN :: !(Maybe Text)- , _pUpdateDate :: !(Maybe ISO8601)- , _pPolicyId :: !(Maybe Text)- , _pPath :: !(Maybe Text)- , _pCreateDate :: !(Maybe ISO8601)- , _pIsAttachable :: !(Maybe Bool)- , _pDefaultVersionId :: !(Maybe Text)- , _pAttachmentCount :: !(Maybe Int)- , _pDescription :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Policy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pPolicyName' - The friendly name (not ARN) identifying the policy.------ * 'pARN' - Undocumented member.------ * 'pUpdateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy was last updated. When a policy has only one version, this field contains the date and time when the policy was created. When a policy has more than one version, this field contains the date and time when the most recent policy version was created.------ * 'pPolicyId' - The stable and unique string identifying the policy. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'pPath' - The path to the policy. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'pCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy was created.------ * 'pIsAttachable' - Specifies whether the policy can be attached to an IAM user, group, or role.------ * 'pDefaultVersionId' - The identifier for the version of the policy that is set as the default version.------ * 'pAttachmentCount' - The number of entities (users, groups, and roles) that the policy is attached to.------ * 'pDescription' - A friendly description of the policy. This element is included in the response to the 'GetPolicy' operation. It is not included in the response to the 'ListPolicies' operation.-policy- :: Policy-policy =- Policy'- { _pPolicyName = Nothing- , _pARN = Nothing- , _pUpdateDate = Nothing- , _pPolicyId = Nothing- , _pPath = Nothing- , _pCreateDate = Nothing- , _pIsAttachable = Nothing- , _pDefaultVersionId = Nothing- , _pAttachmentCount = Nothing- , _pDescription = Nothing- }----- | The friendly name (not ARN) identifying the policy.-pPolicyName :: Lens' Policy (Maybe Text)-pPolicyName = lens _pPolicyName (\ s a -> s{_pPolicyName = a})---- | Undocumented member.-pARN :: Lens' Policy (Maybe Text)-pARN = lens _pARN (\ s a -> s{_pARN = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy was last updated. When a policy has only one version, this field contains the date and time when the policy was created. When a policy has more than one version, this field contains the date and time when the most recent policy version was created.-pUpdateDate :: Lens' Policy (Maybe UTCTime)-pUpdateDate = lens _pUpdateDate (\ s a -> s{_pUpdateDate = a}) . mapping _Time---- | The stable and unique string identifying the policy. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-pPolicyId :: Lens' Policy (Maybe Text)-pPolicyId = lens _pPolicyId (\ s a -> s{_pPolicyId = a})---- | The path to the policy. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-pPath :: Lens' Policy (Maybe Text)-pPath = lens _pPath (\ s a -> s{_pPath = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy was created.-pCreateDate :: Lens' Policy (Maybe UTCTime)-pCreateDate = lens _pCreateDate (\ s a -> s{_pCreateDate = a}) . mapping _Time---- | Specifies whether the policy can be attached to an IAM user, group, or role.-pIsAttachable :: Lens' Policy (Maybe Bool)-pIsAttachable = lens _pIsAttachable (\ s a -> s{_pIsAttachable = a})---- | The identifier for the version of the policy that is set as the default version.-pDefaultVersionId :: Lens' Policy (Maybe Text)-pDefaultVersionId = lens _pDefaultVersionId (\ s a -> s{_pDefaultVersionId = a})---- | The number of entities (users, groups, and roles) that the policy is attached to.-pAttachmentCount :: Lens' Policy (Maybe Int)-pAttachmentCount = lens _pAttachmentCount (\ s a -> s{_pAttachmentCount = a})---- | A friendly description of the policy. This element is included in the response to the 'GetPolicy' operation. It is not included in the response to the 'ListPolicies' operation.-pDescription :: Lens' Policy (Maybe Text)-pDescription = lens _pDescription (\ s a -> s{_pDescription = a})--instance FromXML Policy where- parseXML x- = Policy' <$>- (x .@? "PolicyName") <*> (x .@? "Arn") <*>- (x .@? "UpdateDate")- <*> (x .@? "PolicyId")- <*> (x .@? "Path")- <*> (x .@? "CreateDate")- <*> (x .@? "IsAttachable")- <*> (x .@? "DefaultVersionId")- <*> (x .@? "AttachmentCount")- <*> (x .@? "Description")--instance Hashable Policy where--instance NFData Policy where---- | Contains information about an IAM policy, including the policy document.--------- This data type is used as a response element in the 'GetAccountAuthorizationDetails' operation.--------- /See:/ 'policyDetail' smart constructor.-data PolicyDetail = PolicyDetail'- { _pdPolicyDocument :: !(Maybe Text)- , _pdPolicyName :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PolicyDetail' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pdPolicyDocument' - The policy document.------ * 'pdPolicyName' - The name of the policy.-policyDetail- :: PolicyDetail-policyDetail =- PolicyDetail' {_pdPolicyDocument = Nothing, _pdPolicyName = Nothing}----- | The policy document.-pdPolicyDocument :: Lens' PolicyDetail (Maybe Text)-pdPolicyDocument = lens _pdPolicyDocument (\ s a -> s{_pdPolicyDocument = a})---- | The name of the policy.-pdPolicyName :: Lens' PolicyDetail (Maybe Text)-pdPolicyName = lens _pdPolicyName (\ s a -> s{_pdPolicyName = a})--instance FromXML PolicyDetail where- parseXML x- = PolicyDetail' <$>- (x .@? "PolicyDocument") <*> (x .@? "PolicyName")--instance Hashable PolicyDetail where--instance NFData PolicyDetail where---- | Contains information about a group that a managed policy is attached to.--------- This data type is used as a response element in the 'ListEntitiesForPolicy' operation.------ For more information about managed policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /Using IAM/ guide.--------- /See:/ 'policyGroup' smart constructor.-data PolicyGroup = PolicyGroup'- { _pgGroupId :: !(Maybe Text)- , _pgGroupName :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PolicyGroup' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pgGroupId' - The stable and unique string identifying the group. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM Identifiers> in the /IAM User Guide/ .------ * 'pgGroupName' - The name (friendly name, not ARN) identifying the group.-policyGroup- :: PolicyGroup-policyGroup = PolicyGroup' {_pgGroupId = Nothing, _pgGroupName = Nothing}----- | The stable and unique string identifying the group. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM Identifiers> in the /IAM User Guide/ .-pgGroupId :: Lens' PolicyGroup (Maybe Text)-pgGroupId = lens _pgGroupId (\ s a -> s{_pgGroupId = a})---- | The name (friendly name, not ARN) identifying the group.-pgGroupName :: Lens' PolicyGroup (Maybe Text)-pgGroupName = lens _pgGroupName (\ s a -> s{_pgGroupName = a})--instance FromXML PolicyGroup where- parseXML x- = PolicyGroup' <$>- (x .@? "GroupId") <*> (x .@? "GroupName")--instance Hashable PolicyGroup where--instance NFData PolicyGroup where---- | Contains information about a role that a managed policy is attached to.--------- This data type is used as a response element in the 'ListEntitiesForPolicy' operation.------ For more information about managed policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /Using IAM/ guide.--------- /See:/ 'policyRole' smart constructor.-data PolicyRole = PolicyRole'- { _prRoleName :: !(Maybe Text)- , _prRoleId :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PolicyRole' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'prRoleName' - The name (friendly name, not ARN) identifying the role.------ * 'prRoleId' - The stable and unique string identifying the role. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM Identifiers> in the /IAM User Guide/ .-policyRole- :: PolicyRole-policyRole = PolicyRole' {_prRoleName = Nothing, _prRoleId = Nothing}----- | The name (friendly name, not ARN) identifying the role.-prRoleName :: Lens' PolicyRole (Maybe Text)-prRoleName = lens _prRoleName (\ s a -> s{_prRoleName = a})---- | The stable and unique string identifying the role. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM Identifiers> in the /IAM User Guide/ .-prRoleId :: Lens' PolicyRole (Maybe Text)-prRoleId = lens _prRoleId (\ s a -> s{_prRoleId = a})--instance FromXML PolicyRole where- parseXML x- = PolicyRole' <$>- (x .@? "RoleName") <*> (x .@? "RoleId")--instance Hashable PolicyRole where--instance NFData PolicyRole where---- | Contains information about a user that a managed policy is attached to.--------- This data type is used as a response element in the 'ListEntitiesForPolicy' operation.------ For more information about managed policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /Using IAM/ guide.--------- /See:/ 'policyUser' smart constructor.-data PolicyUser = PolicyUser'- { _puUserName :: !(Maybe Text)- , _puUserId :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PolicyUser' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'puUserName' - The name (friendly name, not ARN) identifying the user.------ * 'puUserId' - The stable and unique string identifying the user. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM Identifiers> in the /IAM User Guide/ .-policyUser- :: PolicyUser-policyUser = PolicyUser' {_puUserName = Nothing, _puUserId = Nothing}----- | The name (friendly name, not ARN) identifying the user.-puUserName :: Lens' PolicyUser (Maybe Text)-puUserName = lens _puUserName (\ s a -> s{_puUserName = a})---- | The stable and unique string identifying the user. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM Identifiers> in the /IAM User Guide/ .-puUserId :: Lens' PolicyUser (Maybe Text)-puUserId = lens _puUserId (\ s a -> s{_puUserId = a})--instance FromXML PolicyUser where- parseXML x- = PolicyUser' <$>- (x .@? "UserName") <*> (x .@? "UserId")--instance Hashable PolicyUser where--instance NFData PolicyUser where---- | Contains information about a version of a managed policy.--------- This data type is used as a response element in the 'CreatePolicyVersion' , 'GetPolicyVersion' , 'ListPolicyVersions' , and 'GetAccountAuthorizationDetails' operations.------ For more information about managed policies, refer to <http://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-vs-inline.html Managed Policies and Inline Policies> in the /Using IAM/ guide.--------- /See:/ 'policyVersion' smart constructor.-data PolicyVersion = PolicyVersion'- { _pvVersionId :: !(Maybe Text)- , _pvCreateDate :: !(Maybe ISO8601)- , _pvDocument :: !(Maybe Text)- , _pvIsDefaultVersion :: !(Maybe Bool)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'PolicyVersion' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pvVersionId' - The identifier for the policy version. Policy version identifiers always begin with @v@ (always lowercase). When a policy is created, the first policy version is @v1@ .------ * 'pvCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy version was created.------ * 'pvDocument' - The policy document. The policy document is returned in the response to the 'GetPolicyVersion' and 'GetAccountAuthorizationDetails' operations. It is not returned in the response to the 'CreatePolicyVersion' or 'ListPolicyVersions' operations. The policy document returned in this structure is URL-encoded compliant with <https://tools.ietf.org/html/rfc3986 RFC 3986> . You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the @decode@ method of the @java.net.URLDecoder@ utility class in the Java SDK. Other languages and SDKs provide similar functionality.------ * 'pvIsDefaultVersion' - Specifies whether the policy version is set as the policy's default version.-policyVersion- :: PolicyVersion-policyVersion =- PolicyVersion'- { _pvVersionId = Nothing- , _pvCreateDate = Nothing- , _pvDocument = Nothing- , _pvIsDefaultVersion = Nothing- }----- | The identifier for the policy version. Policy version identifiers always begin with @v@ (always lowercase). When a policy is created, the first policy version is @v1@ .-pvVersionId :: Lens' PolicyVersion (Maybe Text)-pvVersionId = lens _pvVersionId (\ s a -> s{_pvVersionId = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the policy version was created.-pvCreateDate :: Lens' PolicyVersion (Maybe UTCTime)-pvCreateDate = lens _pvCreateDate (\ s a -> s{_pvCreateDate = a}) . mapping _Time---- | The policy document. The policy document is returned in the response to the 'GetPolicyVersion' and 'GetAccountAuthorizationDetails' operations. It is not returned in the response to the 'CreatePolicyVersion' or 'ListPolicyVersions' operations. The policy document returned in this structure is URL-encoded compliant with <https://tools.ietf.org/html/rfc3986 RFC 3986> . You can use a URL decoding method to convert the policy back to plain JSON text. For example, if you use Java, you can use the @decode@ method of the @java.net.URLDecoder@ utility class in the Java SDK. Other languages and SDKs provide similar functionality.-pvDocument :: Lens' PolicyVersion (Maybe Text)-pvDocument = lens _pvDocument (\ s a -> s{_pvDocument = a})---- | Specifies whether the policy version is set as the policy's default version.-pvIsDefaultVersion :: Lens' PolicyVersion (Maybe Bool)-pvIsDefaultVersion = lens _pvIsDefaultVersion (\ s a -> s{_pvIsDefaultVersion = a})--instance FromXML PolicyVersion where- parseXML x- = PolicyVersion' <$>- (x .@? "VersionId") <*> (x .@? "CreateDate") <*>- (x .@? "Document")- <*> (x .@? "IsDefaultVersion")--instance Hashable PolicyVersion where--instance NFData PolicyVersion where---- | Contains the row and column of a location of a @Statement@ element in a policy document.--------- This data type is used as a member of the @'Statement' @ type.--------- /See:/ 'position' smart constructor.-data Position = Position'- { _pLine :: !(Maybe Int)- , _pColumn :: !(Maybe Int)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Position' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pLine' - The line containing the specified position in the document.------ * 'pColumn' - The column in the line containing the specified position in the document.-position- :: Position-position = Position' {_pLine = Nothing, _pColumn = Nothing}----- | The line containing the specified position in the document.-pLine :: Lens' Position (Maybe Int)-pLine = lens _pLine (\ s a -> s{_pLine = a})---- | The column in the line containing the specified position in the document.-pColumn :: Lens' Position (Maybe Int)-pColumn = lens _pColumn (\ s a -> s{_pColumn = a})--instance FromXML Position where- parseXML x- = Position' <$> (x .@? "Line") <*> (x .@? "Column")--instance Hashable Position where--instance NFData Position where---- | Contains the result of the simulation of a single API operation call on a single resource.--------- This data type is used by a member of the 'EvaluationResult' data type.--------- /See:/ 'resourceSpecificResult' smart constructor.-data ResourceSpecificResult = ResourceSpecificResult'- { _rsrMatchedStatements :: !(Maybe [Statement])- , _rsrEvalDecisionDetails :: !(Maybe (Map Text PolicyEvaluationDecisionType))- , _rsrMissingContextValues :: !(Maybe [Text])- , _rsrEvalResourceName :: !Text- , _rsrEvalResourceDecision :: !PolicyEvaluationDecisionType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ResourceSpecificResult' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rsrMatchedStatements' - A list of the statements in the input policies that determine the result for this part of the simulation. Remember that even if multiple statements allow the operation on the resource, if /any/ statement denies that operation, then the explicit deny overrides any allow, and the deny statement is the only entry included in the result.------ * 'rsrEvalDecisionDetails' - Additional details about the results of the evaluation decision. When there are both IAM policies and resource policies, this parameter explains how each set of policies contributes to the final evaluation decision. When simulating cross-account access to a resource, both the resource-based policy and the caller's IAM policy must grant access.------ * 'rsrMissingContextValues' - A list of context keys that are required by the included input policies but that were not provided by one of the input parameters. This list is used when a list of ARNs is included in the @ResourceArns@ parameter instead of "*". If you do not specify individual resources, by setting @ResourceArns@ to "*" or by not including the @ResourceArns@ parameter, then any missing context values are instead included under the @EvaluationResults@ section. To discover the context keys used by a set of policies, you can call 'GetContextKeysForCustomPolicy' or 'GetContextKeysForPrincipalPolicy' .------ * 'rsrEvalResourceName' - The name of the simulated resource, in Amazon Resource Name (ARN) format.------ * 'rsrEvalResourceDecision' - The result of the simulation of the simulated API operation on the resource specified in @EvalResourceName@ .-resourceSpecificResult- :: Text -- ^ 'rsrEvalResourceName'- -> PolicyEvaluationDecisionType -- ^ 'rsrEvalResourceDecision'- -> ResourceSpecificResult-resourceSpecificResult pEvalResourceName_ pEvalResourceDecision_ =- ResourceSpecificResult'- { _rsrMatchedStatements = Nothing- , _rsrEvalDecisionDetails = Nothing- , _rsrMissingContextValues = Nothing- , _rsrEvalResourceName = pEvalResourceName_- , _rsrEvalResourceDecision = pEvalResourceDecision_- }----- | A list of the statements in the input policies that determine the result for this part of the simulation. Remember that even if multiple statements allow the operation on the resource, if /any/ statement denies that operation, then the explicit deny overrides any allow, and the deny statement is the only entry included in the result.-rsrMatchedStatements :: Lens' ResourceSpecificResult [Statement]-rsrMatchedStatements = lens _rsrMatchedStatements (\ s a -> s{_rsrMatchedStatements = a}) . _Default . _Coerce---- | Additional details about the results of the evaluation decision. When there are both IAM policies and resource policies, this parameter explains how each set of policies contributes to the final evaluation decision. When simulating cross-account access to a resource, both the resource-based policy and the caller's IAM policy must grant access.-rsrEvalDecisionDetails :: Lens' ResourceSpecificResult (HashMap Text PolicyEvaluationDecisionType)-rsrEvalDecisionDetails = lens _rsrEvalDecisionDetails (\ s a -> s{_rsrEvalDecisionDetails = a}) . _Default . _Map---- | A list of context keys that are required by the included input policies but that were not provided by one of the input parameters. This list is used when a list of ARNs is included in the @ResourceArns@ parameter instead of "*". If you do not specify individual resources, by setting @ResourceArns@ to "*" or by not including the @ResourceArns@ parameter, then any missing context values are instead included under the @EvaluationResults@ section. To discover the context keys used by a set of policies, you can call 'GetContextKeysForCustomPolicy' or 'GetContextKeysForPrincipalPolicy' .-rsrMissingContextValues :: Lens' ResourceSpecificResult [Text]-rsrMissingContextValues = lens _rsrMissingContextValues (\ s a -> s{_rsrMissingContextValues = a}) . _Default . _Coerce---- | The name of the simulated resource, in Amazon Resource Name (ARN) format.-rsrEvalResourceName :: Lens' ResourceSpecificResult Text-rsrEvalResourceName = lens _rsrEvalResourceName (\ s a -> s{_rsrEvalResourceName = a})---- | The result of the simulation of the simulated API operation on the resource specified in @EvalResourceName@ .-rsrEvalResourceDecision :: Lens' ResourceSpecificResult PolicyEvaluationDecisionType-rsrEvalResourceDecision = lens _rsrEvalResourceDecision (\ s a -> s{_rsrEvalResourceDecision = a})--instance FromXML ResourceSpecificResult where- parseXML x- = ResourceSpecificResult' <$>- (x .@? "MatchedStatements" .!@ mempty >>=- may (parseXMLList "member"))- <*>- (x .@? "EvalDecisionDetails" .!@ mempty >>=- may (parseXMLMap "entry" "key" "value"))- <*>- (x .@? "MissingContextValues" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@ "EvalResourceName")- <*> (x .@ "EvalResourceDecision")--instance Hashable ResourceSpecificResult where--instance NFData ResourceSpecificResult where---- | Contains information about an IAM role. This structure is returned as a response element in several API operations that interact with roles.------------ /See:/ 'role'' smart constructor.-data Role = Role'- { _rMaxSessionDuration :: !(Maybe Nat)- , _rAssumeRolePolicyDocument :: !(Maybe Text)- , _rDescription :: !(Maybe Text)- , _rPath :: !Text- , _rRoleName :: !Text- , _rRoleId :: !Text- , _rARN :: !Text- , _rCreateDate :: !ISO8601- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Role' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rMaxSessionDuration' - The maximum session duration (in seconds) for the specified role. Anyone who uses the AWS CLI or API to assume the role can specify the duration using the optional @DurationSeconds@ API parameter or @duration-seconds@ CLI parameter.------ * 'rAssumeRolePolicyDocument' - The policy that grants an entity permission to assume the role.------ * 'rDescription' - A description of the role that you provide.------ * 'rPath' - The path to the role. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'rRoleName' - The friendly name that identifies the role.------ * 'rRoleId' - The stable and unique string identifying the role. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'rARN' - The Amazon Resource Name (ARN) specifying the role. For more information about ARNs and how to use them in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ guide.------ * 'rCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the role was created.-role'- :: Text -- ^ 'rPath'- -> Text -- ^ 'rRoleName'- -> Text -- ^ 'rRoleId'- -> Text -- ^ 'rARN'- -> UTCTime -- ^ 'rCreateDate'- -> Role-role' pPath_ pRoleName_ pRoleId_ pARN_ pCreateDate_ =- Role'- { _rMaxSessionDuration = Nothing- , _rAssumeRolePolicyDocument = Nothing- , _rDescription = Nothing- , _rPath = pPath_- , _rRoleName = pRoleName_- , _rRoleId = pRoleId_- , _rARN = pARN_- , _rCreateDate = _Time # pCreateDate_- }----- | The maximum session duration (in seconds) for the specified role. Anyone who uses the AWS CLI or API to assume the role can specify the duration using the optional @DurationSeconds@ API parameter or @duration-seconds@ CLI parameter.-rMaxSessionDuration :: Lens' Role (Maybe Natural)-rMaxSessionDuration = lens _rMaxSessionDuration (\ s a -> s{_rMaxSessionDuration = a}) . mapping _Nat---- | The policy that grants an entity permission to assume the role.-rAssumeRolePolicyDocument :: Lens' Role (Maybe Text)-rAssumeRolePolicyDocument = lens _rAssumeRolePolicyDocument (\ s a -> s{_rAssumeRolePolicyDocument = a})---- | A description of the role that you provide.-rDescription :: Lens' Role (Maybe Text)-rDescription = lens _rDescription (\ s a -> s{_rDescription = a})---- | The path to the role. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-rPath :: Lens' Role Text-rPath = lens _rPath (\ s a -> s{_rPath = a})---- | The friendly name that identifies the role.-rRoleName :: Lens' Role Text-rRoleName = lens _rRoleName (\ s a -> s{_rRoleName = a})---- | The stable and unique string identifying the role. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-rRoleId :: Lens' Role Text-rRoleId = lens _rRoleId (\ s a -> s{_rRoleId = a})---- | The Amazon Resource Name (ARN) specifying the role. For more information about ARNs and how to use them in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ guide.-rARN :: Lens' Role Text-rARN = lens _rARN (\ s a -> s{_rARN = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the role was created.-rCreateDate :: Lens' Role UTCTime-rCreateDate = lens _rCreateDate (\ s a -> s{_rCreateDate = a}) . _Time--instance FromXML Role where- parseXML x- = Role' <$>- (x .@? "MaxSessionDuration") <*>- (x .@? "AssumeRolePolicyDocument")- <*> (x .@? "Description")- <*> (x .@ "Path")- <*> (x .@ "RoleName")- <*> (x .@ "RoleId")- <*> (x .@ "Arn")- <*> (x .@ "CreateDate")--instance Hashable Role where--instance NFData Role where---- | Contains information about an IAM role, including all of the role's policies.--------- This data type is used as a response element in the 'GetAccountAuthorizationDetails' operation.--------- /See:/ 'roleDetail' smart constructor.-data RoleDetail = RoleDetail'- { _rdAssumeRolePolicyDocument :: !(Maybe Text)- , _rdARN :: !(Maybe Text)- , _rdPath :: !(Maybe Text)- , _rdInstanceProfileList :: !(Maybe [InstanceProfile])- , _rdCreateDate :: !(Maybe ISO8601)- , _rdRoleName :: !(Maybe Text)- , _rdRoleId :: !(Maybe Text)- , _rdRolePolicyList :: !(Maybe [PolicyDetail])- , _rdAttachedManagedPolicies :: !(Maybe [AttachedPolicy])- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RoleDetail' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rdAssumeRolePolicyDocument' - The trust policy that grants permission to assume the role.------ * 'rdARN' - Undocumented member.------ * 'rdPath' - The path to the role. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'rdInstanceProfileList' - A list of instance profiles that contain this role.------ * 'rdCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the role was created.------ * 'rdRoleName' - The friendly name that identifies the role.------ * 'rdRoleId' - The stable and unique string identifying the role. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'rdRolePolicyList' - A list of inline policies embedded in the role. These policies are the role's access (permissions) policies.------ * 'rdAttachedManagedPolicies' - A list of managed policies attached to the role. These policies are the role's access (permissions) policies.-roleDetail- :: RoleDetail-roleDetail =- RoleDetail'- { _rdAssumeRolePolicyDocument = Nothing- , _rdARN = Nothing- , _rdPath = Nothing- , _rdInstanceProfileList = Nothing- , _rdCreateDate = Nothing- , _rdRoleName = Nothing- , _rdRoleId = Nothing- , _rdRolePolicyList = Nothing- , _rdAttachedManagedPolicies = Nothing- }----- | The trust policy that grants permission to assume the role.-rdAssumeRolePolicyDocument :: Lens' RoleDetail (Maybe Text)-rdAssumeRolePolicyDocument = lens _rdAssumeRolePolicyDocument (\ s a -> s{_rdAssumeRolePolicyDocument = a})---- | Undocumented member.-rdARN :: Lens' RoleDetail (Maybe Text)-rdARN = lens _rdARN (\ s a -> s{_rdARN = a})---- | The path to the role. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-rdPath :: Lens' RoleDetail (Maybe Text)-rdPath = lens _rdPath (\ s a -> s{_rdPath = a})---- | A list of instance profiles that contain this role.-rdInstanceProfileList :: Lens' RoleDetail [InstanceProfile]-rdInstanceProfileList = lens _rdInstanceProfileList (\ s a -> s{_rdInstanceProfileList = a}) . _Default . _Coerce---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the role was created.-rdCreateDate :: Lens' RoleDetail (Maybe UTCTime)-rdCreateDate = lens _rdCreateDate (\ s a -> s{_rdCreateDate = a}) . mapping _Time---- | The friendly name that identifies the role.-rdRoleName :: Lens' RoleDetail (Maybe Text)-rdRoleName = lens _rdRoleName (\ s a -> s{_rdRoleName = a})---- | The stable and unique string identifying the role. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-rdRoleId :: Lens' RoleDetail (Maybe Text)-rdRoleId = lens _rdRoleId (\ s a -> s{_rdRoleId = a})---- | A list of inline policies embedded in the role. These policies are the role's access (permissions) policies.-rdRolePolicyList :: Lens' RoleDetail [PolicyDetail]-rdRolePolicyList = lens _rdRolePolicyList (\ s a -> s{_rdRolePolicyList = a}) . _Default . _Coerce---- | A list of managed policies attached to the role. These policies are the role's access (permissions) policies.-rdAttachedManagedPolicies :: Lens' RoleDetail [AttachedPolicy]-rdAttachedManagedPolicies = lens _rdAttachedManagedPolicies (\ s a -> s{_rdAttachedManagedPolicies = a}) . _Default . _Coerce--instance FromXML RoleDetail where- parseXML x- = RoleDetail' <$>- (x .@? "AssumeRolePolicyDocument") <*> (x .@? "Arn")- <*> (x .@? "Path")- <*>- (x .@? "InstanceProfileList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "CreateDate")- <*> (x .@? "RoleName")- <*> (x .@? "RoleId")- <*>- (x .@? "RolePolicyList" .!@ mempty >>=- may (parseXMLList "member"))- <*>- (x .@? "AttachedManagedPolicies" .!@ mempty >>=- may (parseXMLList "member"))--instance Hashable RoleDetail where--instance NFData RoleDetail where---- | An object that contains details about how a service-linked role is used, if that information is returned by the service.--------- This data type is used as a response element in the 'GetServiceLinkedRoleDeletionStatus' operation.--------- /See:/ 'roleUsageType' smart constructor.-data RoleUsageType = RoleUsageType'- { _rutResources :: !(Maybe [Text])- , _rutRegion :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RoleUsageType' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rutResources' - The name of the resource that is using the service-linked role.------ * 'rutRegion' - The name of the region where the service-linked role is being used.-roleUsageType- :: RoleUsageType-roleUsageType = RoleUsageType' {_rutResources = Nothing, _rutRegion = Nothing}----- | The name of the resource that is using the service-linked role.-rutResources :: Lens' RoleUsageType [Text]-rutResources = lens _rutResources (\ s a -> s{_rutResources = a}) . _Default . _Coerce---- | The name of the region where the service-linked role is being used.-rutRegion :: Lens' RoleUsageType (Maybe Text)-rutRegion = lens _rutRegion (\ s a -> s{_rutRegion = a})--instance FromXML RoleUsageType where- parseXML x- = RoleUsageType' <$>- (x .@? "Resources" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Region")--instance Hashable RoleUsageType where--instance NFData RoleUsageType where---- | Contains the list of SAML providers for this account.------------ /See:/ 'sAMLProviderListEntry' smart constructor.-data SAMLProviderListEntry = SAMLProviderListEntry'- { _samlpleARN :: !(Maybe Text)- , _samlpleCreateDate :: !(Maybe ISO8601)- , _samlpleValidUntil :: !(Maybe ISO8601)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SAMLProviderListEntry' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'samlpleARN' - The Amazon Resource Name (ARN) of the SAML provider.------ * 'samlpleCreateDate' - The date and time when the SAML provider was created.------ * 'samlpleValidUntil' - The expiration date and time for the SAML provider.-sAMLProviderListEntry- :: SAMLProviderListEntry-sAMLProviderListEntry =- SAMLProviderListEntry'- { _samlpleARN = Nothing- , _samlpleCreateDate = Nothing- , _samlpleValidUntil = Nothing- }----- | The Amazon Resource Name (ARN) of the SAML provider.-samlpleARN :: Lens' SAMLProviderListEntry (Maybe Text)-samlpleARN = lens _samlpleARN (\ s a -> s{_samlpleARN = a})---- | The date and time when the SAML provider was created.-samlpleCreateDate :: Lens' SAMLProviderListEntry (Maybe UTCTime)-samlpleCreateDate = lens _samlpleCreateDate (\ s a -> s{_samlpleCreateDate = a}) . mapping _Time---- | The expiration date and time for the SAML provider.-samlpleValidUntil :: Lens' SAMLProviderListEntry (Maybe UTCTime)-samlpleValidUntil = lens _samlpleValidUntil (\ s a -> s{_samlpleValidUntil = a}) . mapping _Time--instance FromXML SAMLProviderListEntry where- parseXML x- = SAMLProviderListEntry' <$>- (x .@? "Arn") <*> (x .@? "CreateDate") <*>- (x .@? "ValidUntil")--instance Hashable SAMLProviderListEntry where--instance NFData SAMLProviderListEntry where---- | Contains information about an SSH public key.--------- This data type is used as a response element in the 'GetSSHPublicKey' and 'UploadSSHPublicKey' operations.--------- /See:/ 'sshPublicKey' smart constructor.-data SSHPublicKey = SSHPublicKey'- { _spkUploadDate :: !(Maybe ISO8601)- , _spkUserName :: !Text- , _spkSSHPublicKeyId :: !Text- , _spkFingerprint :: !Text- , _spkSSHPublicKeyBody :: !Text- , _spkStatus :: !StatusType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SSHPublicKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'spkUploadDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the SSH public key was uploaded.------ * 'spkUserName' - The name of the IAM user associated with the SSH public key.------ * 'spkSSHPublicKeyId' - The unique identifier for the SSH public key.------ * 'spkFingerprint' - The MD5 message digest of the SSH public key.------ * 'spkSSHPublicKeyBody' - The SSH public key.------ * 'spkStatus' - The status of the SSH public key. @Active@ means that the key can be used for authentication with an AWS CodeCommit repository. @Inactive@ means that the key cannot be used.-sshPublicKey- :: Text -- ^ 'spkUserName'- -> Text -- ^ 'spkSSHPublicKeyId'- -> Text -- ^ 'spkFingerprint'- -> Text -- ^ 'spkSSHPublicKeyBody'- -> StatusType -- ^ 'spkStatus'- -> SSHPublicKey-sshPublicKey pUserName_ pSSHPublicKeyId_ pFingerprint_ pSSHPublicKeyBody_ pStatus_ =- SSHPublicKey'- { _spkUploadDate = Nothing- , _spkUserName = pUserName_- , _spkSSHPublicKeyId = pSSHPublicKeyId_- , _spkFingerprint = pFingerprint_- , _spkSSHPublicKeyBody = pSSHPublicKeyBody_- , _spkStatus = pStatus_- }----- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the SSH public key was uploaded.-spkUploadDate :: Lens' SSHPublicKey (Maybe UTCTime)-spkUploadDate = lens _spkUploadDate (\ s a -> s{_spkUploadDate = a}) . mapping _Time---- | The name of the IAM user associated with the SSH public key.-spkUserName :: Lens' SSHPublicKey Text-spkUserName = lens _spkUserName (\ s a -> s{_spkUserName = a})---- | The unique identifier for the SSH public key.-spkSSHPublicKeyId :: Lens' SSHPublicKey Text-spkSSHPublicKeyId = lens _spkSSHPublicKeyId (\ s a -> s{_spkSSHPublicKeyId = a})---- | The MD5 message digest of the SSH public key.-spkFingerprint :: Lens' SSHPublicKey Text-spkFingerprint = lens _spkFingerprint (\ s a -> s{_spkFingerprint = a})---- | The SSH public key.-spkSSHPublicKeyBody :: Lens' SSHPublicKey Text-spkSSHPublicKeyBody = lens _spkSSHPublicKeyBody (\ s a -> s{_spkSSHPublicKeyBody = a})---- | The status of the SSH public key. @Active@ means that the key can be used for authentication with an AWS CodeCommit repository. @Inactive@ means that the key cannot be used.-spkStatus :: Lens' SSHPublicKey StatusType-spkStatus = lens _spkStatus (\ s a -> s{_spkStatus = a})--instance FromXML SSHPublicKey where- parseXML x- = SSHPublicKey' <$>- (x .@? "UploadDate") <*> (x .@ "UserName") <*>- (x .@ "SSHPublicKeyId")- <*> (x .@ "Fingerprint")- <*> (x .@ "SSHPublicKeyBody")- <*> (x .@ "Status")--instance Hashable SSHPublicKey where--instance NFData SSHPublicKey where---- | Contains information about an SSH public key, without the key's body or fingerprint.--------- This data type is used as a response element in the 'ListSSHPublicKeys' operation.--------- /See:/ 'sshPublicKeyMetadata' smart constructor.-data SSHPublicKeyMetadata = SSHPublicKeyMetadata'- { _spkmUserName :: !Text- , _spkmSSHPublicKeyId :: !Text- , _spkmStatus :: !StatusType- , _spkmUploadDate :: !ISO8601- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SSHPublicKeyMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'spkmUserName' - The name of the IAM user associated with the SSH public key.------ * 'spkmSSHPublicKeyId' - The unique identifier for the SSH public key.------ * 'spkmStatus' - The status of the SSH public key. @Active@ means that the key can be used for authentication with an AWS CodeCommit repository. @Inactive@ means that the key cannot be used.------ * 'spkmUploadDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the SSH public key was uploaded.-sshPublicKeyMetadata- :: Text -- ^ 'spkmUserName'- -> Text -- ^ 'spkmSSHPublicKeyId'- -> StatusType -- ^ 'spkmStatus'- -> UTCTime -- ^ 'spkmUploadDate'- -> SSHPublicKeyMetadata-sshPublicKeyMetadata pUserName_ pSSHPublicKeyId_ pStatus_ pUploadDate_ =- SSHPublicKeyMetadata'- { _spkmUserName = pUserName_- , _spkmSSHPublicKeyId = pSSHPublicKeyId_- , _spkmStatus = pStatus_- , _spkmUploadDate = _Time # pUploadDate_- }----- | The name of the IAM user associated with the SSH public key.-spkmUserName :: Lens' SSHPublicKeyMetadata Text-spkmUserName = lens _spkmUserName (\ s a -> s{_spkmUserName = a})---- | The unique identifier for the SSH public key.-spkmSSHPublicKeyId :: Lens' SSHPublicKeyMetadata Text-spkmSSHPublicKeyId = lens _spkmSSHPublicKeyId (\ s a -> s{_spkmSSHPublicKeyId = a})---- | The status of the SSH public key. @Active@ means that the key can be used for authentication with an AWS CodeCommit repository. @Inactive@ means that the key cannot be used.-spkmStatus :: Lens' SSHPublicKeyMetadata StatusType-spkmStatus = lens _spkmStatus (\ s a -> s{_spkmStatus = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the SSH public key was uploaded.-spkmUploadDate :: Lens' SSHPublicKeyMetadata UTCTime-spkmUploadDate = lens _spkmUploadDate (\ s a -> s{_spkmUploadDate = a}) . _Time--instance FromXML SSHPublicKeyMetadata where- parseXML x- = SSHPublicKeyMetadata' <$>- (x .@ "UserName") <*> (x .@ "SSHPublicKeyId") <*>- (x .@ "Status")- <*> (x .@ "UploadDate")--instance Hashable SSHPublicKeyMetadata where--instance NFData SSHPublicKeyMetadata where---- | Contains information about a server certificate.--------- This data type is used as a response element in the 'GetServerCertificate' operation.--------- /See:/ 'serverCertificate' smart constructor.-data ServerCertificate = ServerCertificate'- { _sCertificateChain :: !(Maybe Text)- , _sServerCertificateMetadata :: !ServerCertificateMetadata- , _sCertificateBody :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ServerCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sCertificateChain' - The contents of the public key certificate chain.------ * 'sServerCertificateMetadata' - The meta information of the server certificate, such as its name, path, ID, and ARN.------ * 'sCertificateBody' - The contents of the public key certificate.-serverCertificate- :: ServerCertificateMetadata -- ^ 'sServerCertificateMetadata'- -> Text -- ^ 'sCertificateBody'- -> ServerCertificate-serverCertificate pServerCertificateMetadata_ pCertificateBody_ =- ServerCertificate'- { _sCertificateChain = Nothing- , _sServerCertificateMetadata = pServerCertificateMetadata_- , _sCertificateBody = pCertificateBody_- }----- | The contents of the public key certificate chain.-sCertificateChain :: Lens' ServerCertificate (Maybe Text)-sCertificateChain = lens _sCertificateChain (\ s a -> s{_sCertificateChain = a})---- | The meta information of the server certificate, such as its name, path, ID, and ARN.-sServerCertificateMetadata :: Lens' ServerCertificate ServerCertificateMetadata-sServerCertificateMetadata = lens _sServerCertificateMetadata (\ s a -> s{_sServerCertificateMetadata = a})---- | The contents of the public key certificate.-sCertificateBody :: Lens' ServerCertificate Text-sCertificateBody = lens _sCertificateBody (\ s a -> s{_sCertificateBody = a})--instance FromXML ServerCertificate where- parseXML x- = ServerCertificate' <$>- (x .@? "CertificateChain") <*>- (x .@ "ServerCertificateMetadata")- <*> (x .@ "CertificateBody")--instance Hashable ServerCertificate where--instance NFData ServerCertificate where---- | Contains information about a server certificate without its certificate body, certificate chain, and private key.--------- This data type is used as a response element in the 'UploadServerCertificate' and 'ListServerCertificates' operations.--------- /See:/ 'serverCertificateMetadata' smart constructor.-data ServerCertificateMetadata = ServerCertificateMetadata'- { _scmUploadDate :: !(Maybe ISO8601)- , _scmExpiration :: !(Maybe ISO8601)- , _scmPath :: !Text- , _scmServerCertificateName :: !Text- , _scmServerCertificateId :: !Text- , _scmARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ServerCertificateMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'scmUploadDate' - The date when the server certificate was uploaded.------ * 'scmExpiration' - The date on which the certificate is set to expire.------ * 'scmPath' - The path to the server certificate. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'scmServerCertificateName' - The name that identifies the server certificate.------ * 'scmServerCertificateId' - The stable and unique string identifying the server certificate. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'scmARN' - The Amazon Resource Name (ARN) specifying the server certificate. For more information about ARNs and how to use them in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-serverCertificateMetadata- :: Text -- ^ 'scmPath'- -> Text -- ^ 'scmServerCertificateName'- -> Text -- ^ 'scmServerCertificateId'- -> Text -- ^ 'scmARN'- -> ServerCertificateMetadata-serverCertificateMetadata pPath_ pServerCertificateName_ pServerCertificateId_ pARN_ =- ServerCertificateMetadata'- { _scmUploadDate = Nothing- , _scmExpiration = Nothing- , _scmPath = pPath_- , _scmServerCertificateName = pServerCertificateName_- , _scmServerCertificateId = pServerCertificateId_- , _scmARN = pARN_- }----- | The date when the server certificate was uploaded.-scmUploadDate :: Lens' ServerCertificateMetadata (Maybe UTCTime)-scmUploadDate = lens _scmUploadDate (\ s a -> s{_scmUploadDate = a}) . mapping _Time---- | The date on which the certificate is set to expire.-scmExpiration :: Lens' ServerCertificateMetadata (Maybe UTCTime)-scmExpiration = lens _scmExpiration (\ s a -> s{_scmExpiration = a}) . mapping _Time---- | The path to the server certificate. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-scmPath :: Lens' ServerCertificateMetadata Text-scmPath = lens _scmPath (\ s a -> s{_scmPath = a})---- | The name that identifies the server certificate.-scmServerCertificateName :: Lens' ServerCertificateMetadata Text-scmServerCertificateName = lens _scmServerCertificateName (\ s a -> s{_scmServerCertificateName = a})---- | The stable and unique string identifying the server certificate. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-scmServerCertificateId :: Lens' ServerCertificateMetadata Text-scmServerCertificateId = lens _scmServerCertificateId (\ s a -> s{_scmServerCertificateId = a})---- | The Amazon Resource Name (ARN) specifying the server certificate. For more information about ARNs and how to use them in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-scmARN :: Lens' ServerCertificateMetadata Text-scmARN = lens _scmARN (\ s a -> s{_scmARN = a})--instance FromXML ServerCertificateMetadata where- parseXML x- = ServerCertificateMetadata' <$>- (x .@? "UploadDate") <*> (x .@? "Expiration") <*>- (x .@ "Path")- <*> (x .@ "ServerCertificateName")- <*> (x .@ "ServerCertificateId")- <*> (x .@ "Arn")--instance Hashable ServerCertificateMetadata where--instance NFData ServerCertificateMetadata where---- | Contains the details of a service-specific credential.------------ /See:/ 'serviceSpecificCredential' smart constructor.-data ServiceSpecificCredential = ServiceSpecificCredential'- { _sscCreateDate :: !ISO8601- , _sscServiceName :: !Text- , _sscServiceUserName :: !Text- , _sscServicePassword :: !(Sensitive Text)- , _sscServiceSpecificCredentialId :: !Text- , _sscUserName :: !Text- , _sscStatus :: !StatusType- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'ServiceSpecificCredential' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sscCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the service-specific credential were created.------ * 'sscServiceName' - The name of the service associated with the service-specific credential.------ * 'sscServiceUserName' - The generated user name for the service-specific credential. This value is generated by combining the IAM user's name combined with the ID number of the AWS account, as in @jane-at-123456789012@ , for example. This value cannot be configured by the user.------ * 'sscServicePassword' - The generated password for the service-specific credential.------ * 'sscServiceSpecificCredentialId' - The unique identifier for the service-specific credential.------ * 'sscUserName' - The name of the IAM user associated with the service-specific credential.------ * 'sscStatus' - The status of the service-specific credential. @Active@ means that the key is valid for API calls, while @Inactive@ means it is not.-serviceSpecificCredential- :: UTCTime -- ^ 'sscCreateDate'- -> Text -- ^ 'sscServiceName'- -> Text -- ^ 'sscServiceUserName'- -> Text -- ^ 'sscServicePassword'- -> Text -- ^ 'sscServiceSpecificCredentialId'- -> Text -- ^ 'sscUserName'- -> StatusType -- ^ 'sscStatus'- -> ServiceSpecificCredential-serviceSpecificCredential pCreateDate_ pServiceName_ pServiceUserName_ pServicePassword_ pServiceSpecificCredentialId_ pUserName_ pStatus_ =- ServiceSpecificCredential'- { _sscCreateDate = _Time # pCreateDate_- , _sscServiceName = pServiceName_- , _sscServiceUserName = pServiceUserName_- , _sscServicePassword = _Sensitive # pServicePassword_- , _sscServiceSpecificCredentialId = pServiceSpecificCredentialId_- , _sscUserName = pUserName_- , _sscStatus = pStatus_- }----- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the service-specific credential were created.-sscCreateDate :: Lens' ServiceSpecificCredential UTCTime-sscCreateDate = lens _sscCreateDate (\ s a -> s{_sscCreateDate = a}) . _Time---- | The name of the service associated with the service-specific credential.-sscServiceName :: Lens' ServiceSpecificCredential Text-sscServiceName = lens _sscServiceName (\ s a -> s{_sscServiceName = a})---- | The generated user name for the service-specific credential. This value is generated by combining the IAM user's name combined with the ID number of the AWS account, as in @jane-at-123456789012@ , for example. This value cannot be configured by the user.-sscServiceUserName :: Lens' ServiceSpecificCredential Text-sscServiceUserName = lens _sscServiceUserName (\ s a -> s{_sscServiceUserName = a})---- | The generated password for the service-specific credential.-sscServicePassword :: Lens' ServiceSpecificCredential Text-sscServicePassword = lens _sscServicePassword (\ s a -> s{_sscServicePassword = a}) . _Sensitive---- | The unique identifier for the service-specific credential.-sscServiceSpecificCredentialId :: Lens' ServiceSpecificCredential Text-sscServiceSpecificCredentialId = lens _sscServiceSpecificCredentialId (\ s a -> s{_sscServiceSpecificCredentialId = a})---- | The name of the IAM user associated with the service-specific credential.-sscUserName :: Lens' ServiceSpecificCredential Text-sscUserName = lens _sscUserName (\ s a -> s{_sscUserName = a})---- | The status of the service-specific credential. @Active@ means that the key is valid for API calls, while @Inactive@ means it is not.-sscStatus :: Lens' ServiceSpecificCredential StatusType-sscStatus = lens _sscStatus (\ s a -> s{_sscStatus = a})--instance FromXML ServiceSpecificCredential where- parseXML x- = ServiceSpecificCredential' <$>- (x .@ "CreateDate") <*> (x .@ "ServiceName") <*>- (x .@ "ServiceUserName")- <*> (x .@ "ServicePassword")- <*> (x .@ "ServiceSpecificCredentialId")- <*> (x .@ "UserName")- <*> (x .@ "Status")--instance Hashable ServiceSpecificCredential where--instance NFData ServiceSpecificCredential where---- | Contains additional details about a service-specific credential.------------ /See:/ 'serviceSpecificCredentialMetadata' smart constructor.-data ServiceSpecificCredentialMetadata = ServiceSpecificCredentialMetadata'- { _sscmUserName :: !Text- , _sscmStatus :: !StatusType- , _sscmServiceUserName :: !Text- , _sscmCreateDate :: !ISO8601- , _sscmServiceSpecificCredentialId :: !Text- , _sscmServiceName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ServiceSpecificCredentialMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sscmUserName' - The name of the IAM user associated with the service-specific credential.------ * 'sscmStatus' - The status of the service-specific credential. @Active@ means that the key is valid for API calls, while @Inactive@ means it is not.------ * 'sscmServiceUserName' - The generated user name for the service-specific credential.------ * 'sscmCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the service-specific credential were created.------ * 'sscmServiceSpecificCredentialId' - The unique identifier for the service-specific credential.------ * 'sscmServiceName' - The name of the service associated with the service-specific credential.-serviceSpecificCredentialMetadata- :: Text -- ^ 'sscmUserName'- -> StatusType -- ^ 'sscmStatus'- -> Text -- ^ 'sscmServiceUserName'- -> UTCTime -- ^ 'sscmCreateDate'- -> Text -- ^ 'sscmServiceSpecificCredentialId'- -> Text -- ^ 'sscmServiceName'- -> ServiceSpecificCredentialMetadata-serviceSpecificCredentialMetadata pUserName_ pStatus_ pServiceUserName_ pCreateDate_ pServiceSpecificCredentialId_ pServiceName_ =- ServiceSpecificCredentialMetadata'- { _sscmUserName = pUserName_- , _sscmStatus = pStatus_- , _sscmServiceUserName = pServiceUserName_- , _sscmCreateDate = _Time # pCreateDate_- , _sscmServiceSpecificCredentialId = pServiceSpecificCredentialId_- , _sscmServiceName = pServiceName_- }----- | The name of the IAM user associated with the service-specific credential.-sscmUserName :: Lens' ServiceSpecificCredentialMetadata Text-sscmUserName = lens _sscmUserName (\ s a -> s{_sscmUserName = a})---- | The status of the service-specific credential. @Active@ means that the key is valid for API calls, while @Inactive@ means it is not.-sscmStatus :: Lens' ServiceSpecificCredentialMetadata StatusType-sscmStatus = lens _sscmStatus (\ s a -> s{_sscmStatus = a})---- | The generated user name for the service-specific credential.-sscmServiceUserName :: Lens' ServiceSpecificCredentialMetadata Text-sscmServiceUserName = lens _sscmServiceUserName (\ s a -> s{_sscmServiceUserName = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the service-specific credential were created.-sscmCreateDate :: Lens' ServiceSpecificCredentialMetadata UTCTime-sscmCreateDate = lens _sscmCreateDate (\ s a -> s{_sscmCreateDate = a}) . _Time---- | The unique identifier for the service-specific credential.-sscmServiceSpecificCredentialId :: Lens' ServiceSpecificCredentialMetadata Text-sscmServiceSpecificCredentialId = lens _sscmServiceSpecificCredentialId (\ s a -> s{_sscmServiceSpecificCredentialId = a})---- | The name of the service associated with the service-specific credential.-sscmServiceName :: Lens' ServiceSpecificCredentialMetadata Text-sscmServiceName = lens _sscmServiceName (\ s a -> s{_sscmServiceName = a})--instance FromXML ServiceSpecificCredentialMetadata- where- parseXML x- = ServiceSpecificCredentialMetadata' <$>- (x .@ "UserName") <*> (x .@ "Status") <*>- (x .@ "ServiceUserName")- <*> (x .@ "CreateDate")- <*> (x .@ "ServiceSpecificCredentialId")- <*> (x .@ "ServiceName")--instance Hashable ServiceSpecificCredentialMetadata- where--instance NFData ServiceSpecificCredentialMetadata- where---- | Contains information about an X.509 signing certificate.--------- This data type is used as a response element in the 'UploadSigningCertificate' and 'ListSigningCertificates' operations.--------- /See:/ 'signingCertificate' smart constructor.-data SigningCertificate = SigningCertificate'- { _scUploadDate :: !(Maybe ISO8601)- , _scUserName :: !Text- , _scCertificateId :: !Text- , _scCertificateBody :: !Text- , _scStatus :: !StatusType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SigningCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'scUploadDate' - The date when the signing certificate was uploaded.------ * 'scUserName' - The name of the user the signing certificate is associated with.------ * 'scCertificateId' - The ID for the signing certificate.------ * 'scCertificateBody' - The contents of the signing certificate.------ * 'scStatus' - The status of the signing certificate. @Active@ means that the key is valid for API calls, while @Inactive@ means it is not.-signingCertificate- :: Text -- ^ 'scUserName'- -> Text -- ^ 'scCertificateId'- -> Text -- ^ 'scCertificateBody'- -> StatusType -- ^ 'scStatus'- -> SigningCertificate-signingCertificate pUserName_ pCertificateId_ pCertificateBody_ pStatus_ =- SigningCertificate'- { _scUploadDate = Nothing- , _scUserName = pUserName_- , _scCertificateId = pCertificateId_- , _scCertificateBody = pCertificateBody_- , _scStatus = pStatus_- }----- | The date when the signing certificate was uploaded.-scUploadDate :: Lens' SigningCertificate (Maybe UTCTime)-scUploadDate = lens _scUploadDate (\ s a -> s{_scUploadDate = a}) . mapping _Time---- | The name of the user the signing certificate is associated with.-scUserName :: Lens' SigningCertificate Text-scUserName = lens _scUserName (\ s a -> s{_scUserName = a})---- | The ID for the signing certificate.-scCertificateId :: Lens' SigningCertificate Text-scCertificateId = lens _scCertificateId (\ s a -> s{_scCertificateId = a})---- | The contents of the signing certificate.-scCertificateBody :: Lens' SigningCertificate Text-scCertificateBody = lens _scCertificateBody (\ s a -> s{_scCertificateBody = a})---- | The status of the signing certificate. @Active@ means that the key is valid for API calls, while @Inactive@ means it is not.-scStatus :: Lens' SigningCertificate StatusType-scStatus = lens _scStatus (\ s a -> s{_scStatus = a})--instance FromXML SigningCertificate where- parseXML x- = SigningCertificate' <$>- (x .@? "UploadDate") <*> (x .@ "UserName") <*>- (x .@ "CertificateId")- <*> (x .@ "CertificateBody")- <*> (x .@ "Status")--instance Hashable SigningCertificate where--instance NFData SigningCertificate where---- | Contains the response to a successful 'SimulatePrincipalPolicy' or 'SimulateCustomPolicy' request.------------ /See:/ 'simulatePolicyResponse' smart constructor.-data SimulatePolicyResponse = SimulatePolicyResponse'- { _spEvaluationResults :: !(Maybe [EvaluationResult])- , _spMarker :: !(Maybe Text)- , _spIsTruncated :: !(Maybe Bool)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SimulatePolicyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'spEvaluationResults' - The results of the simulation.------ * 'spMarker' - When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.------ * 'spIsTruncated' - A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-simulatePolicyResponse- :: SimulatePolicyResponse-simulatePolicyResponse =- SimulatePolicyResponse'- { _spEvaluationResults = Nothing- , _spMarker = Nothing- , _spIsTruncated = Nothing- }----- | The results of the simulation.-spEvaluationResults :: Lens' SimulatePolicyResponse [EvaluationResult]-spEvaluationResults = lens _spEvaluationResults (\ s a -> s{_spEvaluationResults = a}) . _Default . _Coerce---- | When @IsTruncated@ is @true@ , this element is present and contains the value to use for the @Marker@ parameter in a subsequent pagination request.-spMarker :: Lens' SimulatePolicyResponse (Maybe Text)-spMarker = lens _spMarker (\ s a -> s{_spMarker = a})---- | A flag that indicates whether there are more items to return. If your results were truncated, you can make a subsequent pagination request using the @Marker@ request parameter to retrieve more items. Note that IAM might return fewer than the @MaxItems@ number of results even when there are more results available. We recommend that you check @IsTruncated@ after every call to ensure that you receive all of your results.-spIsTruncated :: Lens' SimulatePolicyResponse (Maybe Bool)-spIsTruncated = lens _spIsTruncated (\ s a -> s{_spIsTruncated = a})--instance FromXML SimulatePolicyResponse where- parseXML x- = SimulatePolicyResponse' <$>- (x .@? "EvaluationResults" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Marker")- <*> (x .@? "IsTruncated")--instance Hashable SimulatePolicyResponse where--instance NFData SimulatePolicyResponse where---- | Contains a reference to a @Statement@ element in a policy document that determines the result of the simulation.--------- This data type is used by the @MatchedStatements@ member of the @'EvaluationResult' @ type.--------- /See:/ 'statement' smart constructor.-data Statement = Statement'- { _sSourcePolicyType :: !(Maybe PolicySourceType)- , _sSourcePolicyId :: !(Maybe Text)- , _sEndPosition :: !(Maybe Position)- , _sStartPosition :: !(Maybe Position)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Statement' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sSourcePolicyType' - The type of the policy.------ * 'sSourcePolicyId' - The identifier of the policy that was provided as an input.------ * 'sEndPosition' - The row and column of the end of a @Statement@ in an IAM policy.------ * 'sStartPosition' - The row and column of the beginning of the @Statement@ in an IAM policy.-statement- :: Statement-statement =- Statement'- { _sSourcePolicyType = Nothing- , _sSourcePolicyId = Nothing- , _sEndPosition = Nothing- , _sStartPosition = Nothing- }----- | The type of the policy.-sSourcePolicyType :: Lens' Statement (Maybe PolicySourceType)-sSourcePolicyType = lens _sSourcePolicyType (\ s a -> s{_sSourcePolicyType = a})---- | The identifier of the policy that was provided as an input.-sSourcePolicyId :: Lens' Statement (Maybe Text)-sSourcePolicyId = lens _sSourcePolicyId (\ s a -> s{_sSourcePolicyId = a})---- | The row and column of the end of a @Statement@ in an IAM policy.-sEndPosition :: Lens' Statement (Maybe Position)-sEndPosition = lens _sEndPosition (\ s a -> s{_sEndPosition = a})---- | The row and column of the beginning of the @Statement@ in an IAM policy.-sStartPosition :: Lens' Statement (Maybe Position)-sStartPosition = lens _sStartPosition (\ s a -> s{_sStartPosition = a})--instance FromXML Statement where- parseXML x- = Statement' <$>- (x .@? "SourcePolicyType") <*>- (x .@? "SourcePolicyId")- <*> (x .@? "EndPosition")- <*> (x .@? "StartPosition")--instance Hashable Statement where--instance NFData Statement where---- | Contains information about an IAM user entity.--------- This data type is used as a response element in the following operations:------ * 'CreateUser'------ * 'GetUser'------ * 'ListUsers'--------------- /See:/ 'user' smart constructor.-data User = User'- { _uPasswordLastUsed :: !(Maybe ISO8601)- , _uPath :: !Text- , _uUserName :: !Text- , _uUserId :: !Text- , _uARN :: !Text- , _uCreateDate :: !ISO8601- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'User' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uPasswordLastUsed' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the user's password was last used to sign in to an AWS website. For a list of AWS websites that capture a user's last sign-in time, see the <http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Credential Reports> topic in the /Using IAM/ guide. If a password is used more than once in a five-minute span, only the first use is returned in this field. If the field is null (no value) then it indicates that they never signed in with a password. This can be because: * The user never had a password. * A password exists but has not been used since IAM started tracking this information on October 20th, 2014. A null does not mean that the user /never/ had a password. Also, if the user does not currently have a password, but had one in the past, then this field contains the date and time the most recent password was used. This value is returned only in the 'GetUser' and 'ListUsers' operations.------ * 'uPath' - The path to the user. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'uUserName' - The friendly name identifying the user.------ * 'uUserId' - The stable and unique string identifying the user. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'uARN' - The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'uCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the user was created.-user- :: Text -- ^ 'uPath'- -> Text -- ^ 'uUserName'- -> Text -- ^ 'uUserId'- -> Text -- ^ 'uARN'- -> UTCTime -- ^ 'uCreateDate'- -> User-user pPath_ pUserName_ pUserId_ pARN_ pCreateDate_ =- User'- { _uPasswordLastUsed = Nothing- , _uPath = pPath_- , _uUserName = pUserName_- , _uUserId = pUserId_- , _uARN = pARN_- , _uCreateDate = _Time # pCreateDate_- }----- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the user's password was last used to sign in to an AWS website. For a list of AWS websites that capture a user's last sign-in time, see the <http://docs.aws.amazon.com/IAM/latest/UserGuide/credential-reports.html Credential Reports> topic in the /Using IAM/ guide. If a password is used more than once in a five-minute span, only the first use is returned in this field. If the field is null (no value) then it indicates that they never signed in with a password. This can be because: * The user never had a password. * A password exists but has not been used since IAM started tracking this information on October 20th, 2014. A null does not mean that the user /never/ had a password. Also, if the user does not currently have a password, but had one in the past, then this field contains the date and time the most recent password was used. This value is returned only in the 'GetUser' and 'ListUsers' operations.-uPasswordLastUsed :: Lens' User (Maybe UTCTime)-uPasswordLastUsed = lens _uPasswordLastUsed (\ s a -> s{_uPasswordLastUsed = a}) . mapping _Time---- | The path to the user. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-uPath :: Lens' User Text-uPath = lens _uPath (\ s a -> s{_uPath = a})---- | The friendly name identifying the user.-uUserName :: Lens' User Text-uUserName = lens _uUserName (\ s a -> s{_uUserName = a})---- | The stable and unique string identifying the user. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-uUserId :: Lens' User Text-uUserId = lens _uUserId (\ s a -> s{_uUserId = a})---- | The Amazon Resource Name (ARN) that identifies the user. For more information about ARNs and how to use ARNs in policies, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-uARN :: Lens' User Text-uARN = lens _uARN (\ s a -> s{_uARN = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the user was created.-uCreateDate :: Lens' User UTCTime-uCreateDate = lens _uCreateDate (\ s a -> s{_uCreateDate = a}) . _Time--instance FromXML User where- parseXML x- = User' <$>- (x .@? "PasswordLastUsed") <*> (x .@ "Path") <*>- (x .@ "UserName")- <*> (x .@ "UserId")- <*> (x .@ "Arn")- <*> (x .@ "CreateDate")--instance Hashable User where--instance NFData User where---- | Contains information about an IAM user, including all the user's policies and all the IAM groups the user is in.--------- This data type is used as a response element in the 'GetAccountAuthorizationDetails' operation.--------- /See:/ 'userDetail' smart constructor.-data UserDetail = UserDetail'- { _udGroupList :: !(Maybe [Text])- , _udARN :: !(Maybe Text)- , _udPath :: !(Maybe Text)- , _udCreateDate :: !(Maybe ISO8601)- , _udUserName :: !(Maybe Text)- , _udUserId :: !(Maybe Text)- , _udUserPolicyList :: !(Maybe [PolicyDetail])- , _udAttachedManagedPolicies :: !(Maybe [AttachedPolicy])- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UserDetail' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'udGroupList' - A list of IAM groups that the user is in.------ * 'udARN' - Undocumented member.------ * 'udPath' - The path to the user. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'udCreateDate' - The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the user was created.------ * 'udUserName' - The friendly name identifying the user.------ * 'udUserId' - The stable and unique string identifying the user. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.------ * 'udUserPolicyList' - A list of the inline policies embedded in the user.------ * 'udAttachedManagedPolicies' - A list of the managed policies attached to the user.-userDetail- :: UserDetail-userDetail =- UserDetail'- { _udGroupList = Nothing- , _udARN = Nothing- , _udPath = Nothing- , _udCreateDate = Nothing- , _udUserName = Nothing- , _udUserId = Nothing- , _udUserPolicyList = Nothing- , _udAttachedManagedPolicies = Nothing- }----- | A list of IAM groups that the user is in.-udGroupList :: Lens' UserDetail [Text]-udGroupList = lens _udGroupList (\ s a -> s{_udGroupList = a}) . _Default . _Coerce---- | Undocumented member.-udARN :: Lens' UserDetail (Maybe Text)-udARN = lens _udARN (\ s a -> s{_udARN = a})---- | The path to the user. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-udPath :: Lens' UserDetail (Maybe Text)-udPath = lens _udPath (\ s a -> s{_udPath = a})---- | The date and time, in <http://www.iso.org/iso/iso8601 ISO 8601 date-time format> , when the user was created.-udCreateDate :: Lens' UserDetail (Maybe UTCTime)-udCreateDate = lens _udCreateDate (\ s a -> s{_udCreateDate = a}) . mapping _Time---- | The friendly name identifying the user.-udUserName :: Lens' UserDetail (Maybe Text)-udUserName = lens _udUserName (\ s a -> s{_udUserName = a})---- | The stable and unique string identifying the user. For more information about IDs, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /Using IAM/ guide.-udUserId :: Lens' UserDetail (Maybe Text)-udUserId = lens _udUserId (\ s a -> s{_udUserId = a})---- | A list of the inline policies embedded in the user.-udUserPolicyList :: Lens' UserDetail [PolicyDetail]-udUserPolicyList = lens _udUserPolicyList (\ s a -> s{_udUserPolicyList = a}) . _Default . _Coerce---- | A list of the managed policies attached to the user.-udAttachedManagedPolicies :: Lens' UserDetail [AttachedPolicy]-udAttachedManagedPolicies = lens _udAttachedManagedPolicies (\ s a -> s{_udAttachedManagedPolicies = a}) . _Default . _Coerce--instance FromXML UserDetail where- parseXML x- = UserDetail' <$>- (x .@? "GroupList" .!@ mempty >>=- may (parseXMLList "member"))- <*> (x .@? "Arn")- <*> (x .@? "Path")- <*> (x .@? "CreateDate")- <*> (x .@? "UserName")- <*> (x .@? "UserId")- <*>- (x .@? "UserPolicyList" .!@ mempty >>=- may (parseXMLList "member"))- <*>- (x .@? "AttachedManagedPolicies" .!@ mempty >>=- may (parseXMLList "member"))--instance Hashable UserDetail where--instance NFData UserDetail where---- | Contains information about a virtual MFA device.------------ /See:/ 'virtualMFADevice' smart constructor.-data VirtualMFADevice = VirtualMFADevice'- { _vmdQRCodePNG :: !(Maybe (Sensitive Base64))- , _vmdBase32StringSeed :: !(Maybe (Sensitive Base64))- , _vmdUser :: !(Maybe User)- , _vmdEnableDate :: !(Maybe ISO8601)- , _vmdSerialNumber :: !Text- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'VirtualMFADevice' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vmdQRCodePNG' - A QR code PNG image that encodes @otpauth://totp/$virtualMFADeviceName@$AccountName?secret=$Base32String@ where @> virtualMFADeviceName@ is one of the create call arguments, @AccountName@ is the user name if set (otherwise, the account ID otherwise), and @Base32String@ is the seed in Base32 format. The @Base32String@ value is Base64-encoded. -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This 'Lens' accepts and returns only raw unencoded data.------ * 'vmdBase32StringSeed' - The Base32 seed defined as specified in <https://tools.ietf.org/html/rfc3548.txt RFC3548> . The @Base32StringSeed@ is Base64-encoded. -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This 'Lens' accepts and returns only raw unencoded data.------ * 'vmdUser' - The IAM user associated with this virtual MFA device.------ * 'vmdEnableDate' - The date and time on which the virtual MFA device was enabled.------ * 'vmdSerialNumber' - The serial number associated with @VirtualMFADevice@ .-virtualMFADevice- :: Text -- ^ 'vmdSerialNumber'- -> VirtualMFADevice-virtualMFADevice pSerialNumber_ =- VirtualMFADevice'- { _vmdQRCodePNG = Nothing- , _vmdBase32StringSeed = Nothing- , _vmdUser = Nothing- , _vmdEnableDate = Nothing- , _vmdSerialNumber = pSerialNumber_- }----- | A QR code PNG image that encodes @otpauth://totp/$virtualMFADeviceName@$AccountName?secret=$Base32String@ where @> virtualMFADeviceName@ is one of the create call arguments, @AccountName@ is the user name if set (otherwise, the account ID otherwise), and @Base32String@ is the seed in Base32 format. The @Base32String@ value is Base64-encoded. -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This 'Lens' accepts and returns only raw unencoded data.-vmdQRCodePNG :: Lens' VirtualMFADevice (Maybe ByteString)-vmdQRCodePNG = lens _vmdQRCodePNG (\ s a -> s{_vmdQRCodePNG = a}) . mapping (_Sensitive . _Base64)---- | The Base32 seed defined as specified in <https://tools.ietf.org/html/rfc3548.txt RFC3548> . The @Base32StringSeed@ is Base64-encoded. -- /Note:/ This 'Lens' automatically encodes and decodes Base64 data. The underlying isomorphism will encode to Base64 representation during serialisation, and decode from Base64 representation during deserialisation. This 'Lens' accepts and returns only raw unencoded data.-vmdBase32StringSeed :: Lens' VirtualMFADevice (Maybe ByteString)-vmdBase32StringSeed = lens _vmdBase32StringSeed (\ s a -> s{_vmdBase32StringSeed = a}) . mapping (_Sensitive . _Base64)---- | The IAM user associated with this virtual MFA device.-vmdUser :: Lens' VirtualMFADevice (Maybe User)-vmdUser = lens _vmdUser (\ s a -> s{_vmdUser = a})---- | The date and time on which the virtual MFA device was enabled.-vmdEnableDate :: Lens' VirtualMFADevice (Maybe UTCTime)-vmdEnableDate = lens _vmdEnableDate (\ s a -> s{_vmdEnableDate = a}) . mapping _Time---- | The serial number associated with @VirtualMFADevice@ .-vmdSerialNumber :: Lens' VirtualMFADevice Text-vmdSerialNumber = lens _vmdSerialNumber (\ s a -> s{_vmdSerialNumber = a})--instance FromXML VirtualMFADevice where- parseXML x- = VirtualMFADevice' <$>- (x .@? "QRCodePNG") <*> (x .@? "Base32StringSeed")- <*> (x .@? "User")- <*> (x .@? "EnableDate")- <*> (x .@ "SerialNumber")--instance Hashable VirtualMFADevice where--instance NFData VirtualMFADevice where
− gen/Network/AWS/IAM/Types/Sum.hs
@@ -1,467 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE OverloadedStrings #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.Types.Sum--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)----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 DeletionTaskStatusType- = Failed- | InProgress- | NotStarted- | Succeeded- deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)---instance FromText DeletionTaskStatusType where- parser = takeLowerText >>= \case- "failed" -> pure Failed- "in_progress" -> pure InProgress- "not_started" -> pure NotStarted- "succeeded" -> pure Succeeded- e -> fromTextError $ "Failure parsing DeletionTaskStatusType from value: '" <> e- <> "'. Accepted values: failed, in_progress, not_started, succeeded"--instance ToText DeletionTaskStatusType where- toText = \case- Failed -> "FAILED"- InProgress -> "IN_PROGRESS"- NotStarted -> "NOT_STARTED"- Succeeded -> "SUCCEEDED"--instance Hashable DeletionTaskStatusType-instance NFData DeletionTaskStatusType-instance ToByteString DeletionTaskStatusType-instance ToQuery DeletionTaskStatusType-instance ToHeader DeletionTaskStatusType--instance FromXML DeletionTaskStatusType where- parseXML = parseXMLText "DeletionTaskStatusType"--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- = RSTComplete- | RSTInprogress- | RSTStarted- deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)---instance FromText ReportStateType where- parser = takeLowerText >>= \case- "complete" -> pure RSTComplete- "inprogress" -> pure RSTInprogress- "started" -> pure RSTStarted- e -> fromTextError $ "Failure parsing ReportStateType from value: '" <> e- <> "'. Accepted values: complete, inprogress, started"--instance ToText ReportStateType where- toText = \case- RSTComplete -> "COMPLETE"- RSTInprogress -> "INPROGRESS"- RSTStarted -> "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"
− gen/Network/AWS/IAM/UpdateAccessKey.hs
@@ -1,128 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateAccessKey--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Changes the status of the specified access key from Active to Inactive, or vice versa. This operation can be used to disable a user's key as part of a key rotation workflow.--------- If the @UserName@ field is not specified, the user name is determined implicitly based on the AWS access key ID used to sign the request. Because this operation works for access keys under the AWS account, you can use this operation to manage AWS account root user credentials even if the AWS account has no associated users.------ For information about rotating keys, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingCredentials.html Managing Keys and Certificates> in the /IAM User Guide/ .----module Network.AWS.IAM.UpdateAccessKey- (- -- * Creating a Request- updateAccessKey- , UpdateAccessKey- -- * Request Lenses- , uakUserName- , uakAccessKeyId- , uakStatus-- -- * Destructuring the Response- , updateAccessKeyResponse- , UpdateAccessKeyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateAccessKey' smart constructor.-data UpdateAccessKey = UpdateAccessKey'- { _uakUserName :: !(Maybe Text)- , _uakAccessKeyId :: !AccessKey- , _uakStatus :: !StatusType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateAccessKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uakUserName' - The name of the user whose key you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'uakAccessKeyId' - The access key ID of the secret access key you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.------ * 'uakStatus' - The status you want to assign to the secret access key. @Active@ means that the key can be used for API calls to AWS, while @Inactive@ means that the key cannot be used.-updateAccessKey- :: AccessKey -- ^ 'uakAccessKeyId'- -> StatusType -- ^ 'uakStatus'- -> UpdateAccessKey-updateAccessKey pAccessKeyId_ pStatus_ =- UpdateAccessKey'- { _uakUserName = Nothing- , _uakAccessKeyId = pAccessKeyId_- , _uakStatus = pStatus_- }----- | The name of the user whose key you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uakUserName :: Lens' UpdateAccessKey (Maybe Text)-uakUserName = lens _uakUserName (\ s a -> s{_uakUserName = a})---- | The access key ID of the secret access key you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-uakAccessKeyId :: Lens' UpdateAccessKey AccessKey-uakAccessKeyId = lens _uakAccessKeyId (\ s a -> s{_uakAccessKeyId = a})---- | The status you want to assign to the secret access key. @Active@ means that the key can be used for API calls to AWS, while @Inactive@ means that the key cannot be used.-uakStatus :: Lens' UpdateAccessKey StatusType-uakStatus = lens _uakStatus (\ s a -> s{_uakStatus = a})--instance AWSRequest UpdateAccessKey where- type Rs UpdateAccessKey = UpdateAccessKeyResponse- request = postQuery iam- response = receiveNull UpdateAccessKeyResponse'--instance Hashable UpdateAccessKey where--instance NFData UpdateAccessKey where--instance ToHeaders UpdateAccessKey where- toHeaders = const mempty--instance ToPath UpdateAccessKey where- toPath = const "/"--instance ToQuery UpdateAccessKey where- toQuery UpdateAccessKey'{..}- = mconcat- ["Action" =: ("UpdateAccessKey" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _uakUserName,- "AccessKeyId" =: _uakAccessKeyId,- "Status" =: _uakStatus]---- | /See:/ 'updateAccessKeyResponse' smart constructor.-data UpdateAccessKeyResponse =- UpdateAccessKeyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateAccessKeyResponse' with the minimum fields required to make a request.----updateAccessKeyResponse- :: UpdateAccessKeyResponse-updateAccessKeyResponse = UpdateAccessKeyResponse'---instance NFData UpdateAccessKeyResponse where
− gen/Network/AWS/IAM/UpdateAccountPasswordPolicy.hs
@@ -1,193 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateAccountPasswordPolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Updates the password policy settings for the AWS account.--------- For more information about using a password policy, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingPasswordPolicies.html Managing an IAM Password Policy> in the /IAM User Guide/ .----module Network.AWS.IAM.UpdateAccountPasswordPolicy- (- -- * Creating a Request- updateAccountPasswordPolicy- , UpdateAccountPasswordPolicy- -- * Request Lenses- , uappMinimumPasswordLength- , uappRequireNumbers- , uappPasswordReusePrevention- , uappRequireLowercaseCharacters- , uappMaxPasswordAge- , uappHardExpiry- , uappRequireSymbols- , uappRequireUppercaseCharacters- , uappAllowUsersToChangePassword-- -- * Destructuring the Response- , updateAccountPasswordPolicyResponse- , UpdateAccountPasswordPolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateAccountPasswordPolicy' smart constructor.-data UpdateAccountPasswordPolicy = UpdateAccountPasswordPolicy'- { _uappMinimumPasswordLength :: !(Maybe Nat)- , _uappRequireNumbers :: !(Maybe Bool)- , _uappPasswordReusePrevention :: !(Maybe Nat)- , _uappRequireLowercaseCharacters :: !(Maybe Bool)- , _uappMaxPasswordAge :: !(Maybe Nat)- , _uappHardExpiry :: !(Maybe Bool)- , _uappRequireSymbols :: !(Maybe Bool)- , _uappRequireUppercaseCharacters :: !(Maybe Bool)- , _uappAllowUsersToChangePassword :: !(Maybe Bool)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateAccountPasswordPolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uappMinimumPasswordLength' - The minimum number of characters allowed in an IAM user password. If you do not specify a value for this parameter, then the operation uses the default value of @6@ .------ * 'uappRequireNumbers' - Specifies whether IAM user passwords must contain at least one numeric character (0 to 9). If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that passwords do not require at least one numeric character.------ * 'uappPasswordReusePrevention' - Specifies the number of previous passwords that IAM users are prevented from reusing. If you do not specify a value for this parameter, then the operation uses the default value of @0@ . The result is that IAM users are not prevented from reusing previous passwords.------ * 'uappRequireLowercaseCharacters' - Specifies whether IAM user passwords must contain at least one lowercase character from the ISO basic Latin alphabet (a to z). If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that passwords do not require at least one lowercase character.------ * 'uappMaxPasswordAge' - The number of days that an IAM user password is valid. If you do not specify a value for this parameter, then the operation uses the default value of @0@ . The result is that IAM user passwords never expire.------ * 'uappHardExpiry' - Prevents IAM users from setting a new password after their password has expired. The IAM user cannot be accessed until an administrator resets the password. If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that IAM users can change their passwords after they expire and continue to sign in as the user.------ * 'uappRequireSymbols' - Specifies whether IAM user passwords must contain at least one of the following non-alphanumeric characters: ! @ # $ % ^ & * ( ) _ + - = [ ] { } | ' If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that passwords do not require at least one symbol character.------ * 'uappRequireUppercaseCharacters' - Specifies whether IAM user passwords must contain at least one uppercase character from the ISO basic Latin alphabet (A to Z). If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that passwords do not require at least one uppercase character.------ * 'uappAllowUsersToChangePassword' - Allows all IAM users in your account to use the AWS Management Console to change their own passwords. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/HowToPwdIAMUser.html Letting IAM Users Change Their Own Passwords> in the /IAM User Guide/ . If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that IAM users in the account do not automatically have permissions to change their own password.-updateAccountPasswordPolicy- :: UpdateAccountPasswordPolicy-updateAccountPasswordPolicy =- UpdateAccountPasswordPolicy'- { _uappMinimumPasswordLength = Nothing- , _uappRequireNumbers = Nothing- , _uappPasswordReusePrevention = Nothing- , _uappRequireLowercaseCharacters = Nothing- , _uappMaxPasswordAge = Nothing- , _uappHardExpiry = Nothing- , _uappRequireSymbols = Nothing- , _uappRequireUppercaseCharacters = Nothing- , _uappAllowUsersToChangePassword = Nothing- }----- | The minimum number of characters allowed in an IAM user password. If you do not specify a value for this parameter, then the operation uses the default value of @6@ .-uappMinimumPasswordLength :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)-uappMinimumPasswordLength = lens _uappMinimumPasswordLength (\ s a -> s{_uappMinimumPasswordLength = a}) . mapping _Nat---- | Specifies whether IAM user passwords must contain at least one numeric character (0 to 9). If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that passwords do not require at least one numeric character.-uappRequireNumbers :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)-uappRequireNumbers = lens _uappRequireNumbers (\ s a -> s{_uappRequireNumbers = a})---- | Specifies the number of previous passwords that IAM users are prevented from reusing. If you do not specify a value for this parameter, then the operation uses the default value of @0@ . The result is that IAM users are not prevented from reusing previous passwords.-uappPasswordReusePrevention :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)-uappPasswordReusePrevention = lens _uappPasswordReusePrevention (\ s a -> s{_uappPasswordReusePrevention = a}) . mapping _Nat---- | Specifies whether IAM user passwords must contain at least one lowercase character from the ISO basic Latin alphabet (a to z). If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that passwords do not require at least one lowercase character.-uappRequireLowercaseCharacters :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)-uappRequireLowercaseCharacters = lens _uappRequireLowercaseCharacters (\ s a -> s{_uappRequireLowercaseCharacters = a})---- | The number of days that an IAM user password is valid. If you do not specify a value for this parameter, then the operation uses the default value of @0@ . The result is that IAM user passwords never expire.-uappMaxPasswordAge :: Lens' UpdateAccountPasswordPolicy (Maybe Natural)-uappMaxPasswordAge = lens _uappMaxPasswordAge (\ s a -> s{_uappMaxPasswordAge = a}) . mapping _Nat---- | Prevents IAM users from setting a new password after their password has expired. The IAM user cannot be accessed until an administrator resets the password. If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that IAM users can change their passwords after they expire and continue to sign in as the user.-uappHardExpiry :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)-uappHardExpiry = lens _uappHardExpiry (\ s a -> s{_uappHardExpiry = a})---- | Specifies whether IAM user passwords must contain at least one of the following non-alphanumeric characters: ! @ # $ % ^ & * ( ) _ + - = [ ] { } | ' If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that passwords do not require at least one symbol character.-uappRequireSymbols :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)-uappRequireSymbols = lens _uappRequireSymbols (\ s a -> s{_uappRequireSymbols = a})---- | Specifies whether IAM user passwords must contain at least one uppercase character from the ISO basic Latin alphabet (A to Z). If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that passwords do not require at least one uppercase character.-uappRequireUppercaseCharacters :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)-uappRequireUppercaseCharacters = lens _uappRequireUppercaseCharacters (\ s a -> s{_uappRequireUppercaseCharacters = a})---- | Allows all IAM users in your account to use the AWS Management Console to change their own passwords. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/HowToPwdIAMUser.html Letting IAM Users Change Their Own Passwords> in the /IAM User Guide/ . If you do not specify a value for this parameter, then the operation uses the default value of @false@ . The result is that IAM users in the account do not automatically have permissions to change their own password.-uappAllowUsersToChangePassword :: Lens' UpdateAccountPasswordPolicy (Maybe Bool)-uappAllowUsersToChangePassword = lens _uappAllowUsersToChangePassword (\ s a -> s{_uappAllowUsersToChangePassword = a})--instance AWSRequest UpdateAccountPasswordPolicy where- type Rs UpdateAccountPasswordPolicy =- UpdateAccountPasswordPolicyResponse- request = postQuery iam- response- = receiveNull UpdateAccountPasswordPolicyResponse'--instance Hashable UpdateAccountPasswordPolicy where--instance NFData UpdateAccountPasswordPolicy where--instance ToHeaders UpdateAccountPasswordPolicy where- toHeaders = const mempty--instance ToPath UpdateAccountPasswordPolicy where- toPath = const "/"--instance ToQuery UpdateAccountPasswordPolicy where- toQuery UpdateAccountPasswordPolicy'{..}- = mconcat- ["Action" =:- ("UpdateAccountPasswordPolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "MinimumPasswordLength" =:- _uappMinimumPasswordLength,- "RequireNumbers" =: _uappRequireNumbers,- "PasswordReusePrevention" =:- _uappPasswordReusePrevention,- "RequireLowercaseCharacters" =:- _uappRequireLowercaseCharacters,- "MaxPasswordAge" =: _uappMaxPasswordAge,- "HardExpiry" =: _uappHardExpiry,- "RequireSymbols" =: _uappRequireSymbols,- "RequireUppercaseCharacters" =:- _uappRequireUppercaseCharacters,- "AllowUsersToChangePassword" =:- _uappAllowUsersToChangePassword]---- | /See:/ 'updateAccountPasswordPolicyResponse' smart constructor.-data UpdateAccountPasswordPolicyResponse =- UpdateAccountPasswordPolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateAccountPasswordPolicyResponse' with the minimum fields required to make a request.----updateAccountPasswordPolicyResponse- :: UpdateAccountPasswordPolicyResponse-updateAccountPasswordPolicyResponse = UpdateAccountPasswordPolicyResponse'---instance NFData UpdateAccountPasswordPolicyResponse- where
− gen/Network/AWS/IAM/UpdateAssumeRolePolicy.hs
@@ -1,115 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateAssumeRolePolicy--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Updates the policy that grants an IAM entity permission to assume a role. This is typically referred to as the "role trust policy". For more information about roles, go to <http://docs.aws.amazon.com/IAM/latest/UserGuide/roles-toplevel.html Using Roles to Delegate Permissions and Federate Identities> .-------module Network.AWS.IAM.UpdateAssumeRolePolicy- (- -- * Creating a Request- updateAssumeRolePolicy- , UpdateAssumeRolePolicy- -- * Request Lenses- , uarpRoleName- , uarpPolicyDocument-- -- * Destructuring the Response- , updateAssumeRolePolicyResponse- , UpdateAssumeRolePolicyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateAssumeRolePolicy' smart constructor.-data UpdateAssumeRolePolicy = UpdateAssumeRolePolicy'- { _uarpRoleName :: !Text- , _uarpPolicyDocument :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateAssumeRolePolicy' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uarpRoleName' - The name of the role to update with the new policy. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'uarpPolicyDocument' - The policy that grants an entity permission to assume the role. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-updateAssumeRolePolicy- :: Text -- ^ 'uarpRoleName'- -> Text -- ^ 'uarpPolicyDocument'- -> UpdateAssumeRolePolicy-updateAssumeRolePolicy pRoleName_ pPolicyDocument_ =- UpdateAssumeRolePolicy'- {_uarpRoleName = pRoleName_, _uarpPolicyDocument = pPolicyDocument_}----- | The name of the role to update with the new policy. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uarpRoleName :: Lens' UpdateAssumeRolePolicy Text-uarpRoleName = lens _uarpRoleName (\ s a -> s{_uarpRoleName = a})---- | The policy that grants an entity permission to assume the role. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-uarpPolicyDocument :: Lens' UpdateAssumeRolePolicy Text-uarpPolicyDocument = lens _uarpPolicyDocument (\ s a -> s{_uarpPolicyDocument = a})--instance AWSRequest UpdateAssumeRolePolicy where- type Rs UpdateAssumeRolePolicy =- UpdateAssumeRolePolicyResponse- request = postQuery iam- response- = receiveNull UpdateAssumeRolePolicyResponse'--instance Hashable UpdateAssumeRolePolicy where--instance NFData UpdateAssumeRolePolicy where--instance ToHeaders UpdateAssumeRolePolicy where- toHeaders = const mempty--instance ToPath UpdateAssumeRolePolicy where- toPath = const "/"--instance ToQuery UpdateAssumeRolePolicy where- toQuery UpdateAssumeRolePolicy'{..}- = mconcat- ["Action" =:- ("UpdateAssumeRolePolicy" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _uarpRoleName,- "PolicyDocument" =: _uarpPolicyDocument]---- | /See:/ 'updateAssumeRolePolicyResponse' smart constructor.-data UpdateAssumeRolePolicyResponse =- UpdateAssumeRolePolicyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateAssumeRolePolicyResponse' with the minimum fields required to make a request.----updateAssumeRolePolicyResponse- :: UpdateAssumeRolePolicyResponse-updateAssumeRolePolicyResponse = UpdateAssumeRolePolicyResponse'---instance NFData UpdateAssumeRolePolicyResponse where
− gen/Network/AWS/IAM/UpdateGroup.hs
@@ -1,124 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateGroup--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Updates the name and/or the path of the specified IAM group.--------- /Important:/ You should understand the implications of changing a group's path or name. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_WorkingWithGroupsAndUsers.html Renaming Users and Groups> in the /IAM User Guide/ .----module Network.AWS.IAM.UpdateGroup- (- -- * Creating a Request- updateGroup- , UpdateGroup- -- * Request Lenses- , ugNewGroupName- , ugNewPath- , ugGroupName-- -- * Destructuring the Response- , updateGroupResponse- , UpdateGroupResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateGroup' smart constructor.-data UpdateGroup = UpdateGroup'- { _ugNewGroupName :: !(Maybe Text)- , _ugNewPath :: !(Maybe Text)- , _ugGroupName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateGroup' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ugNewGroupName' - New name for the IAM group. Only include this if changing the group's name. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'ugNewPath' - New path for the IAM group. Only include this if changing the group's path. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'ugGroupName' - Name of the IAM group to update. If you're changing the name of the group, this is the original name. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--updateGroup- :: Text -- ^ 'ugGroupName'- -> UpdateGroup-updateGroup pGroupName_ =- UpdateGroup'- { _ugNewGroupName = Nothing- , _ugNewPath = Nothing- , _ugGroupName = pGroupName_- }----- | New name for the IAM group. Only include this if changing the group's name. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--ugNewGroupName :: Lens' UpdateGroup (Maybe Text)-ugNewGroupName = lens _ugNewGroupName (\ s a -> s{_ugNewGroupName = a})---- | New path for the IAM group. Only include this if changing the group's path. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-ugNewPath :: Lens' UpdateGroup (Maybe Text)-ugNewPath = lens _ugNewPath (\ s a -> s{_ugNewPath = a})---- | Name of the IAM group to update. If you're changing the name of the group, this is the original name. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--ugGroupName :: Lens' UpdateGroup Text-ugGroupName = lens _ugGroupName (\ s a -> s{_ugGroupName = a})--instance AWSRequest UpdateGroup where- type Rs UpdateGroup = UpdateGroupResponse- request = postQuery iam- response = receiveNull UpdateGroupResponse'--instance Hashable UpdateGroup where--instance NFData UpdateGroup where--instance ToHeaders UpdateGroup where- toHeaders = const mempty--instance ToPath UpdateGroup where- toPath = const "/"--instance ToQuery UpdateGroup where- toQuery UpdateGroup'{..}- = mconcat- ["Action" =: ("UpdateGroup" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "NewGroupName" =: _ugNewGroupName,- "NewPath" =: _ugNewPath, "GroupName" =: _ugGroupName]---- | /See:/ 'updateGroupResponse' smart constructor.-data UpdateGroupResponse =- UpdateGroupResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateGroupResponse' with the minimum fields required to make a request.----updateGroupResponse- :: UpdateGroupResponse-updateGroupResponse = UpdateGroupResponse'---instance NFData UpdateGroupResponse where
− gen/Network/AWS/IAM/UpdateLoginProfile.hs
@@ -1,126 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateLoginProfile--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Changes the password for the specified IAM user.--------- IAM users can change their own passwords by calling 'ChangePassword' . For more information about modifying passwords, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_ManagingLogins.html Managing Passwords> in the /IAM User Guide/ .----module Network.AWS.IAM.UpdateLoginProfile- (- -- * Creating a Request- updateLoginProfile- , UpdateLoginProfile- -- * Request Lenses- , ulpPassword- , ulpPasswordResetRequired- , ulpUserName-- -- * Destructuring the Response- , updateLoginProfileResponse- , UpdateLoginProfileResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateLoginProfile' smart constructor.-data UpdateLoginProfile = UpdateLoginProfile'- { _ulpPassword :: !(Maybe (Sensitive Text))- , _ulpPasswordResetRequired :: !(Maybe Bool)- , _ulpUserName :: !Text- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateLoginProfile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ulpPassword' - The new password for the specified IAM user. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D) However, the format can be further restricted by the account administrator by setting a password policy on the AWS account. For more information, see 'UpdateAccountPasswordPolicy' .------ * 'ulpPasswordResetRequired' - Allows this new password to be used only once by requiring the specified IAM user to set a new password on next sign-in.------ * 'ulpUserName' - The name of the user whose password you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--updateLoginProfile- :: Text -- ^ 'ulpUserName'- -> UpdateLoginProfile-updateLoginProfile pUserName_ =- UpdateLoginProfile'- { _ulpPassword = Nothing- , _ulpPasswordResetRequired = Nothing- , _ulpUserName = pUserName_- }----- | The new password for the specified IAM user. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D) However, the format can be further restricted by the account administrator by setting a password policy on the AWS account. For more information, see 'UpdateAccountPasswordPolicy' .-ulpPassword :: Lens' UpdateLoginProfile (Maybe Text)-ulpPassword = lens _ulpPassword (\ s a -> s{_ulpPassword = a}) . mapping _Sensitive---- | Allows this new password to be used only once by requiring the specified IAM user to set a new password on next sign-in.-ulpPasswordResetRequired :: Lens' UpdateLoginProfile (Maybe Bool)-ulpPasswordResetRequired = lens _ulpPasswordResetRequired (\ s a -> s{_ulpPasswordResetRequired = a})---- | The name of the user whose password you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--ulpUserName :: Lens' UpdateLoginProfile Text-ulpUserName = lens _ulpUserName (\ s a -> s{_ulpUserName = a})--instance AWSRequest UpdateLoginProfile where- type Rs UpdateLoginProfile =- UpdateLoginProfileResponse- request = postQuery iam- response = receiveNull UpdateLoginProfileResponse'--instance Hashable UpdateLoginProfile where--instance NFData UpdateLoginProfile where--instance ToHeaders UpdateLoginProfile where- toHeaders = const mempty--instance ToPath UpdateLoginProfile where- toPath = const "/"--instance ToQuery UpdateLoginProfile where- toQuery UpdateLoginProfile'{..}- = mconcat- ["Action" =: ("UpdateLoginProfile" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Password" =: _ulpPassword,- "PasswordResetRequired" =: _ulpPasswordResetRequired,- "UserName" =: _ulpUserName]---- | /See:/ 'updateLoginProfileResponse' smart constructor.-data UpdateLoginProfileResponse =- UpdateLoginProfileResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateLoginProfileResponse' with the minimum fields required to make a request.----updateLoginProfileResponse- :: UpdateLoginProfileResponse-updateLoginProfileResponse = UpdateLoginProfileResponse'---instance NFData UpdateLoginProfileResponse where
− gen/Network/AWS/IAM/UpdateOpenIdConnectProviderThumbprint.hs
@@ -1,137 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Replaces the existing list of server certificate thumbprints associated with an OpenID Connect (OIDC) provider resource object with a new list of thumbprints.--------- The list that you pass with this operation completely replaces the existing list of thumbprints. (The lists are not merged.)------ Typically, you need to update a thumbprint only when the identity provider's certificate changes, which occurs rarely. However, if the provider's certificate /does/ change, any attempt to assume an IAM role that specifies the OIDC provider as a principal fails until the certificate thumbprint is updated.----module Network.AWS.IAM.UpdateOpenIdConnectProviderThumbprint- (- -- * Creating a Request- updateOpenIdConnectProviderThumbprint- , UpdateOpenIdConnectProviderThumbprint- -- * Request Lenses- , uoicptOpenIdConnectProviderARN- , uoicptThumbprintList-- -- * Destructuring the Response- , updateOpenIdConnectProviderThumbprintResponse- , UpdateOpenIdConnectProviderThumbprintResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateOpenIdConnectProviderThumbprint' smart constructor.-data UpdateOpenIdConnectProviderThumbprint = UpdateOpenIdConnectProviderThumbprint'- { _uoicptOpenIdConnectProviderARN :: !Text- , _uoicptThumbprintList :: ![Text]- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateOpenIdConnectProviderThumbprint' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uoicptOpenIdConnectProviderARN' - The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for which you want to update the thumbprint. You can get a list of OIDC provider ARNs by using the 'ListOpenIDConnectProviders' operation. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .------ * 'uoicptThumbprintList' - A list of certificate thumbprints that are associated with the specified IAM OpenID Connect provider. For more information, see 'CreateOpenIDConnectProvider' .-updateOpenIdConnectProviderThumbprint- :: Text -- ^ 'uoicptOpenIdConnectProviderARN'- -> UpdateOpenIdConnectProviderThumbprint-updateOpenIdConnectProviderThumbprint pOpenIdConnectProviderARN_ =- UpdateOpenIdConnectProviderThumbprint'- { _uoicptOpenIdConnectProviderARN = pOpenIdConnectProviderARN_- , _uoicptThumbprintList = mempty- }----- | The Amazon Resource Name (ARN) of the IAM OIDC provider resource object for which you want to update the thumbprint. You can get a list of OIDC provider ARNs by using the 'ListOpenIDConnectProviders' operation. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-uoicptOpenIdConnectProviderARN :: Lens' UpdateOpenIdConnectProviderThumbprint Text-uoicptOpenIdConnectProviderARN = lens _uoicptOpenIdConnectProviderARN (\ s a -> s{_uoicptOpenIdConnectProviderARN = a})---- | A list of certificate thumbprints that are associated with the specified IAM OpenID Connect provider. For more information, see 'CreateOpenIDConnectProvider' .-uoicptThumbprintList :: Lens' UpdateOpenIdConnectProviderThumbprint [Text]-uoicptThumbprintList = lens _uoicptThumbprintList (\ s a -> s{_uoicptThumbprintList = a}) . _Coerce--instance AWSRequest- UpdateOpenIdConnectProviderThumbprint- where- type Rs UpdateOpenIdConnectProviderThumbprint =- UpdateOpenIdConnectProviderThumbprintResponse- request = postQuery iam- response- = receiveNull- UpdateOpenIdConnectProviderThumbprintResponse'--instance Hashable- UpdateOpenIdConnectProviderThumbprint- where--instance NFData UpdateOpenIdConnectProviderThumbprint- where--instance ToHeaders- UpdateOpenIdConnectProviderThumbprint- where- toHeaders = const mempty--instance ToPath UpdateOpenIdConnectProviderThumbprint- where- toPath = const "/"--instance ToQuery- UpdateOpenIdConnectProviderThumbprint- where- toQuery UpdateOpenIdConnectProviderThumbprint'{..}- = mconcat- ["Action" =:- ("UpdateOpenIDConnectProviderThumbprint" ::- ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "OpenIDConnectProviderArn" =:- _uoicptOpenIdConnectProviderARN,- "ThumbprintList" =:- toQueryList "member" _uoicptThumbprintList]---- | /See:/ 'updateOpenIdConnectProviderThumbprintResponse' smart constructor.-data UpdateOpenIdConnectProviderThumbprintResponse =- UpdateOpenIdConnectProviderThumbprintResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateOpenIdConnectProviderThumbprintResponse' with the minimum fields required to make a request.----updateOpenIdConnectProviderThumbprintResponse- :: UpdateOpenIdConnectProviderThumbprintResponse-updateOpenIdConnectProviderThumbprintResponse =- UpdateOpenIdConnectProviderThumbprintResponse'---instance NFData- UpdateOpenIdConnectProviderThumbprintResponse- where
− gen/Network/AWS/IAM/UpdateRole.hs
@@ -1,137 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateRole--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Updates the description or maximum session duration setting of a role.-------module Network.AWS.IAM.UpdateRole- (- -- * Creating a Request- updateRole- , UpdateRole- -- * Request Lenses- , urMaxSessionDuration- , urDescription- , urRoleName-- -- * Destructuring the Response- , updateRoleResponse- , UpdateRoleResponse- -- * Response Lenses- , urrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateRole' smart constructor.-data UpdateRole = UpdateRole'- { _urMaxSessionDuration :: !(Maybe Nat)- , _urDescription :: !(Maybe Text)- , _urRoleName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateRole' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'urMaxSessionDuration' - The maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours. Anyone who assumes the role from the AWS CLI or API can use the @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter to request a longer session. The @MaxSessionDuration@ setting determines the maximum duration that can be requested using the @DurationSeconds@ parameter. If users don't specify a value for the @DurationSeconds@ parameter, their security credentials are valid for one hour by default. This applies when you use the @AssumeRole*@ API operations or the @assume-role*@ CLI operations but does not apply when you use those operations to create a console URL. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM Roles> in the /IAM User Guide/ .------ * 'urDescription' - The new description that you want to apply to the specified role.------ * 'urRoleName' - The name of the role that you want to modify.-updateRole- :: Text -- ^ 'urRoleName'- -> UpdateRole-updateRole pRoleName_ =- UpdateRole'- { _urMaxSessionDuration = Nothing- , _urDescription = Nothing- , _urRoleName = pRoleName_- }----- | The maximum session duration (in seconds) that you want to set for the specified role. If you do not specify a value for this setting, the default maximum of one hour is applied. This setting can have a value from 1 hour to 12 hours. Anyone who assumes the role from the AWS CLI or API can use the @DurationSeconds@ API parameter or the @duration-seconds@ CLI parameter to request a longer session. The @MaxSessionDuration@ setting determines the maximum duration that can be requested using the @DurationSeconds@ parameter. If users don't specify a value for the @DurationSeconds@ parameter, their security credentials are valid for one hour by default. This applies when you use the @AssumeRole*@ API operations or the @assume-role*@ CLI operations but does not apply when you use those operations to create a console URL. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html Using IAM Roles> in the /IAM User Guide/ .-urMaxSessionDuration :: Lens' UpdateRole (Maybe Natural)-urMaxSessionDuration = lens _urMaxSessionDuration (\ s a -> s{_urMaxSessionDuration = a}) . mapping _Nat---- | The new description that you want to apply to the specified role.-urDescription :: Lens' UpdateRole (Maybe Text)-urDescription = lens _urDescription (\ s a -> s{_urDescription = a})---- | The name of the role that you want to modify.-urRoleName :: Lens' UpdateRole Text-urRoleName = lens _urRoleName (\ s a -> s{_urRoleName = a})--instance AWSRequest UpdateRole where- type Rs UpdateRole = UpdateRoleResponse- request = postQuery iam- response- = receiveXMLWrapper "UpdateRoleResult"- (\ s h x ->- UpdateRoleResponse' <$> (pure (fromEnum s)))--instance Hashable UpdateRole where--instance NFData UpdateRole where--instance ToHeaders UpdateRole where- toHeaders = const mempty--instance ToPath UpdateRole where- toPath = const "/"--instance ToQuery UpdateRole where- toQuery UpdateRole'{..}- = mconcat- ["Action" =: ("UpdateRole" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "MaxSessionDuration" =: _urMaxSessionDuration,- "Description" =: _urDescription,- "RoleName" =: _urRoleName]---- | /See:/ 'updateRoleResponse' smart constructor.-newtype UpdateRoleResponse = UpdateRoleResponse'- { _urrsResponseStatus :: Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateRoleResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'urrsResponseStatus' - -- | The response status code.-updateRoleResponse- :: Int -- ^ 'urrsResponseStatus'- -> UpdateRoleResponse-updateRoleResponse pResponseStatus_ =- UpdateRoleResponse' {_urrsResponseStatus = pResponseStatus_}----- | -- | The response status code.-urrsResponseStatus :: Lens' UpdateRoleResponse Int-urrsResponseStatus = lens _urrsResponseStatus (\ s a -> s{_urrsResponseStatus = a})--instance NFData UpdateRoleResponse where
− gen/Network/AWS/IAM/UpdateRoleDescription.hs
@@ -1,139 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateRoleDescription--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Use instead.--------- Modifies only the description of a role. This operation performs the same function as the @Description@ parameter in the @UpdateRole@ operation.----module Network.AWS.IAM.UpdateRoleDescription- (- -- * Creating a Request- updateRoleDescription- , UpdateRoleDescription- -- * Request Lenses- , urdRoleName- , urdDescription-- -- * Destructuring the Response- , updateRoleDescriptionResponse- , UpdateRoleDescriptionResponse- -- * Response Lenses- , urdrsRole- , urdrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateRoleDescription' smart constructor.-data UpdateRoleDescription = UpdateRoleDescription'- { _urdRoleName :: !Text- , _urdDescription :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateRoleDescription' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'urdRoleName' - The name of the role that you want to modify.------ * 'urdDescription' - The new description that you want to apply to the specified role.-updateRoleDescription- :: Text -- ^ 'urdRoleName'- -> Text -- ^ 'urdDescription'- -> UpdateRoleDescription-updateRoleDescription pRoleName_ pDescription_ =- UpdateRoleDescription'- {_urdRoleName = pRoleName_, _urdDescription = pDescription_}----- | The name of the role that you want to modify.-urdRoleName :: Lens' UpdateRoleDescription Text-urdRoleName = lens _urdRoleName (\ s a -> s{_urdRoleName = a})---- | The new description that you want to apply to the specified role.-urdDescription :: Lens' UpdateRoleDescription Text-urdDescription = lens _urdDescription (\ s a -> s{_urdDescription = a})--instance AWSRequest UpdateRoleDescription where- type Rs UpdateRoleDescription =- UpdateRoleDescriptionResponse- request = postQuery iam- response- = receiveXMLWrapper "UpdateRoleDescriptionResult"- (\ s h x ->- UpdateRoleDescriptionResponse' <$>- (x .@? "Role") <*> (pure (fromEnum s)))--instance Hashable UpdateRoleDescription where--instance NFData UpdateRoleDescription where--instance ToHeaders UpdateRoleDescription where- toHeaders = const mempty--instance ToPath UpdateRoleDescription where- toPath = const "/"--instance ToQuery UpdateRoleDescription where- toQuery UpdateRoleDescription'{..}- = mconcat- ["Action" =: ("UpdateRoleDescription" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "RoleName" =: _urdRoleName,- "Description" =: _urdDescription]---- | /See:/ 'updateRoleDescriptionResponse' smart constructor.-data UpdateRoleDescriptionResponse = UpdateRoleDescriptionResponse'- { _urdrsRole :: !(Maybe Role)- , _urdrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateRoleDescriptionResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'urdrsRole' - A structure that contains details about the modified role.------ * 'urdrsResponseStatus' - -- | The response status code.-updateRoleDescriptionResponse- :: Int -- ^ 'urdrsResponseStatus'- -> UpdateRoleDescriptionResponse-updateRoleDescriptionResponse pResponseStatus_ =- UpdateRoleDescriptionResponse'- {_urdrsRole = Nothing, _urdrsResponseStatus = pResponseStatus_}----- | A structure that contains details about the modified role.-urdrsRole :: Lens' UpdateRoleDescriptionResponse (Maybe Role)-urdrsRole = lens _urdrsRole (\ s a -> s{_urdrsRole = a})---- | -- | The response status code.-urdrsResponseStatus :: Lens' UpdateRoleDescriptionResponse Int-urdrsResponseStatus = lens _urdrsResponseStatus (\ s a -> s{_urdrsResponseStatus = a})--instance NFData UpdateRoleDescriptionResponse where
− gen/Network/AWS/IAM/UpdateSAMLProvider.hs
@@ -1,146 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateSAMLProvider--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Updates the metadata document for an existing SAML provider resource object.-------module Network.AWS.IAM.UpdateSAMLProvider- (- -- * Creating a Request- updateSAMLProvider- , UpdateSAMLProvider- -- * Request Lenses- , usamlpSAMLMetadataDocument- , usamlpSAMLProviderARN-- -- * Destructuring the Response- , updateSAMLProviderResponse- , UpdateSAMLProviderResponse- -- * Response Lenses- , usamlprsSAMLProviderARN- , usamlprsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateSAMLProvider' smart constructor.-data UpdateSAMLProvider = UpdateSAMLProvider'- { _usamlpSAMLMetadataDocument :: !Text- , _usamlpSAMLProviderARN :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateSAMLProvider' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usamlpSAMLMetadataDocument' - An XML document generated by an identity provider (IdP) that supports SAML 2.0. The document includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that are received from the IdP. You must generate the metadata document using the identity management software that is used as your organization's IdP.------ * 'usamlpSAMLProviderARN' - The Amazon Resource Name (ARN) of the SAML provider to update. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-updateSAMLProvider- :: Text -- ^ 'usamlpSAMLMetadataDocument'- -> Text -- ^ 'usamlpSAMLProviderARN'- -> UpdateSAMLProvider-updateSAMLProvider pSAMLMetadataDocument_ pSAMLProviderARN_ =- UpdateSAMLProvider'- { _usamlpSAMLMetadataDocument = pSAMLMetadataDocument_- , _usamlpSAMLProviderARN = pSAMLProviderARN_- }----- | An XML document generated by an identity provider (IdP) that supports SAML 2.0. The document includes the issuer's name, expiration information, and keys that can be used to validate the SAML authentication response (assertions) that are received from the IdP. You must generate the metadata document using the identity management software that is used as your organization's IdP.-usamlpSAMLMetadataDocument :: Lens' UpdateSAMLProvider Text-usamlpSAMLMetadataDocument = lens _usamlpSAMLMetadataDocument (\ s a -> s{_usamlpSAMLMetadataDocument = a})---- | The Amazon Resource Name (ARN) of the SAML provider to update. For more information about ARNs, see <http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces> in the /AWS General Reference/ .-usamlpSAMLProviderARN :: Lens' UpdateSAMLProvider Text-usamlpSAMLProviderARN = lens _usamlpSAMLProviderARN (\ s a -> s{_usamlpSAMLProviderARN = a})--instance AWSRequest UpdateSAMLProvider where- type Rs UpdateSAMLProvider =- UpdateSAMLProviderResponse- request = postQuery iam- response- = receiveXMLWrapper "UpdateSAMLProviderResult"- (\ s h x ->- UpdateSAMLProviderResponse' <$>- (x .@? "SAMLProviderArn") <*> (pure (fromEnum s)))--instance Hashable UpdateSAMLProvider where--instance NFData UpdateSAMLProvider where--instance ToHeaders UpdateSAMLProvider where- toHeaders = const mempty--instance ToPath UpdateSAMLProvider where- toPath = const "/"--instance ToQuery UpdateSAMLProvider where- toQuery UpdateSAMLProvider'{..}- = mconcat- ["Action" =: ("UpdateSAMLProvider" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "SAMLMetadataDocument" =:- _usamlpSAMLMetadataDocument,- "SAMLProviderArn" =: _usamlpSAMLProviderARN]---- | Contains the response to a successful 'UpdateSAMLProvider' request.------------ /See:/ 'updateSAMLProviderResponse' smart constructor.-data UpdateSAMLProviderResponse = UpdateSAMLProviderResponse'- { _usamlprsSAMLProviderARN :: !(Maybe Text)- , _usamlprsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateSAMLProviderResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usamlprsSAMLProviderARN' - The Amazon Resource Name (ARN) of the SAML provider that was updated.------ * 'usamlprsResponseStatus' - -- | The response status code.-updateSAMLProviderResponse- :: Int -- ^ 'usamlprsResponseStatus'- -> UpdateSAMLProviderResponse-updateSAMLProviderResponse pResponseStatus_ =- UpdateSAMLProviderResponse'- { _usamlprsSAMLProviderARN = Nothing- , _usamlprsResponseStatus = pResponseStatus_- }----- | The Amazon Resource Name (ARN) of the SAML provider that was updated.-usamlprsSAMLProviderARN :: Lens' UpdateSAMLProviderResponse (Maybe Text)-usamlprsSAMLProviderARN = lens _usamlprsSAMLProviderARN (\ s a -> s{_usamlprsSAMLProviderARN = a})---- | -- | The response status code.-usamlprsResponseStatus :: Lens' UpdateSAMLProviderResponse Int-usamlprsResponseStatus = lens _usamlprsResponseStatus (\ s a -> s{_usamlprsResponseStatus = a})--instance NFData UpdateSAMLProviderResponse where
− gen/Network/AWS/IAM/UpdateSSHPublicKey.hs
@@ -1,128 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateSSHPublicKey--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Sets the status of an IAM user's SSH public key to active or inactive. SSH public keys that are inactive cannot be used for authentication. This operation can be used to disable a user's SSH public key as part of a key rotation work flow.--------- The SSH public key affected by this operation is used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see <http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up AWS CodeCommit for SSH Connections> in the /AWS CodeCommit User Guide/ .----module Network.AWS.IAM.UpdateSSHPublicKey- (- -- * Creating a Request- updateSSHPublicKey- , UpdateSSHPublicKey- -- * Request Lenses- , uspkUserName- , uspkSSHPublicKeyId- , uspkStatus-- -- * Destructuring the Response- , updateSSHPublicKeyResponse- , UpdateSSHPublicKeyResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateSSHPublicKey' smart constructor.-data UpdateSSHPublicKey = UpdateSSHPublicKey'- { _uspkUserName :: !Text- , _uspkSSHPublicKeyId :: !Text- , _uspkStatus :: !StatusType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateSSHPublicKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uspkUserName' - The name of the IAM user associated with the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'uspkSSHPublicKeyId' - The unique identifier for the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.------ * 'uspkStatus' - The status to assign to the SSH public key. @Active@ means that the key can be used for authentication with an AWS CodeCommit repository. @Inactive@ means that the key cannot be used.-updateSSHPublicKey- :: Text -- ^ 'uspkUserName'- -> Text -- ^ 'uspkSSHPublicKeyId'- -> StatusType -- ^ 'uspkStatus'- -> UpdateSSHPublicKey-updateSSHPublicKey pUserName_ pSSHPublicKeyId_ pStatus_ =- UpdateSSHPublicKey'- { _uspkUserName = pUserName_- , _uspkSSHPublicKeyId = pSSHPublicKeyId_- , _uspkStatus = pStatus_- }----- | The name of the IAM user associated with the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uspkUserName :: Lens' UpdateSSHPublicKey Text-uspkUserName = lens _uspkUserName (\ s a -> s{_uspkUserName = a})---- | The unique identifier for the SSH public key. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-uspkSSHPublicKeyId :: Lens' UpdateSSHPublicKey Text-uspkSSHPublicKeyId = lens _uspkSSHPublicKeyId (\ s a -> s{_uspkSSHPublicKeyId = a})---- | The status to assign to the SSH public key. @Active@ means that the key can be used for authentication with an AWS CodeCommit repository. @Inactive@ means that the key cannot be used.-uspkStatus :: Lens' UpdateSSHPublicKey StatusType-uspkStatus = lens _uspkStatus (\ s a -> s{_uspkStatus = a})--instance AWSRequest UpdateSSHPublicKey where- type Rs UpdateSSHPublicKey =- UpdateSSHPublicKeyResponse- request = postQuery iam- response = receiveNull UpdateSSHPublicKeyResponse'--instance Hashable UpdateSSHPublicKey where--instance NFData UpdateSSHPublicKey where--instance ToHeaders UpdateSSHPublicKey where- toHeaders = const mempty--instance ToPath UpdateSSHPublicKey where- toPath = const "/"--instance ToQuery UpdateSSHPublicKey where- toQuery UpdateSSHPublicKey'{..}- = mconcat- ["Action" =: ("UpdateSSHPublicKey" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _uspkUserName,- "SSHPublicKeyId" =: _uspkSSHPublicKeyId,- "Status" =: _uspkStatus]---- | /See:/ 'updateSSHPublicKeyResponse' smart constructor.-data UpdateSSHPublicKeyResponse =- UpdateSSHPublicKeyResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateSSHPublicKeyResponse' with the minimum fields required to make a request.----updateSSHPublicKeyResponse- :: UpdateSSHPublicKeyResponse-updateSSHPublicKeyResponse = UpdateSSHPublicKeyResponse'---instance NFData UpdateSSHPublicKeyResponse where
− gen/Network/AWS/IAM/UpdateServerCertificate.hs
@@ -1,131 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateServerCertificate--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Updates the name and/or the path of the specified server certificate stored in IAM.--------- For more information about working with server certificates, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with Server Certificates> in the /IAM User Guide/ . This topic also includes a list of AWS services that can use the server certificates that you manage with IAM.------ /Important:/ You should understand the implications of changing a server certificate's path or name. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs_manage.html#RenamingServerCerts Renaming a Server Certificate> in the /IAM User Guide/ .----module Network.AWS.IAM.UpdateServerCertificate- (- -- * Creating a Request- updateServerCertificate- , UpdateServerCertificate- -- * Request Lenses- , uNewServerCertificateName- , uNewPath- , uServerCertificateName-- -- * Destructuring the Response- , updateServerCertificateResponse- , UpdateServerCertificateResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateServerCertificate' smart constructor.-data UpdateServerCertificate = UpdateServerCertificate'- { _uNewServerCertificateName :: !(Maybe Text)- , _uNewPath :: !(Maybe Text)- , _uServerCertificateName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateServerCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uNewServerCertificateName' - The new name for the server certificate. Include this only if you are updating the server certificate's name. The name of the certificate cannot contain any spaces. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'uNewPath' - The new path for the server certificate. Include this only if you are updating the server certificate's path. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'uServerCertificateName' - The name of the server certificate that you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--updateServerCertificate- :: Text -- ^ 'uServerCertificateName'- -> UpdateServerCertificate-updateServerCertificate pServerCertificateName_ =- UpdateServerCertificate'- { _uNewServerCertificateName = Nothing- , _uNewPath = Nothing- , _uServerCertificateName = pServerCertificateName_- }----- | The new name for the server certificate. Include this only if you are updating the server certificate's name. The name of the certificate cannot contain any spaces. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uNewServerCertificateName :: Lens' UpdateServerCertificate (Maybe Text)-uNewServerCertificateName = lens _uNewServerCertificateName (\ s a -> s{_uNewServerCertificateName = a})---- | The new path for the server certificate. Include this only if you are updating the server certificate's path. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-uNewPath :: Lens' UpdateServerCertificate (Maybe Text)-uNewPath = lens _uNewPath (\ s a -> s{_uNewPath = a})---- | The name of the server certificate that you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uServerCertificateName :: Lens' UpdateServerCertificate Text-uServerCertificateName = lens _uServerCertificateName (\ s a -> s{_uServerCertificateName = a})--instance AWSRequest UpdateServerCertificate where- type Rs UpdateServerCertificate =- UpdateServerCertificateResponse- request = postQuery iam- response- = receiveNull UpdateServerCertificateResponse'--instance Hashable UpdateServerCertificate where--instance NFData UpdateServerCertificate where--instance ToHeaders UpdateServerCertificate where- toHeaders = const mempty--instance ToPath UpdateServerCertificate where- toPath = const "/"--instance ToQuery UpdateServerCertificate where- toQuery UpdateServerCertificate'{..}- = mconcat- ["Action" =:- ("UpdateServerCertificate" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "NewServerCertificateName" =:- _uNewServerCertificateName,- "NewPath" =: _uNewPath,- "ServerCertificateName" =: _uServerCertificateName]---- | /See:/ 'updateServerCertificateResponse' smart constructor.-data UpdateServerCertificateResponse =- UpdateServerCertificateResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateServerCertificateResponse' with the minimum fields required to make a request.----updateServerCertificateResponse- :: UpdateServerCertificateResponse-updateServerCertificateResponse = UpdateServerCertificateResponse'---instance NFData UpdateServerCertificateResponse where
− gen/Network/AWS/IAM/UpdateServiceSpecificCredential.hs
@@ -1,136 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateServiceSpecificCredential--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Sets the status of a service-specific credential to @Active@ or @Inactive@ . Service-specific credentials that are inactive cannot be used for authentication to the service. This operation can be used to disable a user’s service-specific credential as part of a credential rotation work flow.-------module Network.AWS.IAM.UpdateServiceSpecificCredential- (- -- * Creating a Request- updateServiceSpecificCredential- , UpdateServiceSpecificCredential- -- * Request Lenses- , usscUserName- , usscServiceSpecificCredentialId- , usscStatus-- -- * Destructuring the Response- , updateServiceSpecificCredentialResponse- , UpdateServiceSpecificCredentialResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateServiceSpecificCredential' smart constructor.-data UpdateServiceSpecificCredential = UpdateServiceSpecificCredential'- { _usscUserName :: !(Maybe Text)- , _usscServiceSpecificCredentialId :: !Text- , _usscStatus :: !StatusType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateServiceSpecificCredential' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usscUserName' - The name of the IAM user associated with the service-specific credential. If you do not specify this value, then the operation assumes the user whose credentials are used to call the operation. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'usscServiceSpecificCredentialId' - The unique identifier of the service-specific credential. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.------ * 'usscStatus' - The status to be assigned to the service-specific credential.-updateServiceSpecificCredential- :: Text -- ^ 'usscServiceSpecificCredentialId'- -> StatusType -- ^ 'usscStatus'- -> UpdateServiceSpecificCredential-updateServiceSpecificCredential pServiceSpecificCredentialId_ pStatus_ =- UpdateServiceSpecificCredential'- { _usscUserName = Nothing- , _usscServiceSpecificCredentialId = pServiceSpecificCredentialId_- , _usscStatus = pStatus_- }----- | The name of the IAM user associated with the service-specific credential. If you do not specify this value, then the operation assumes the user whose credentials are used to call the operation. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--usscUserName :: Lens' UpdateServiceSpecificCredential (Maybe Text)-usscUserName = lens _usscUserName (\ s a -> s{_usscUserName = a})---- | The unique identifier of the service-specific credential. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-usscServiceSpecificCredentialId :: Lens' UpdateServiceSpecificCredential Text-usscServiceSpecificCredentialId = lens _usscServiceSpecificCredentialId (\ s a -> s{_usscServiceSpecificCredentialId = a})---- | The status to be assigned to the service-specific credential.-usscStatus :: Lens' UpdateServiceSpecificCredential StatusType-usscStatus = lens _usscStatus (\ s a -> s{_usscStatus = a})--instance AWSRequest UpdateServiceSpecificCredential- where- type Rs UpdateServiceSpecificCredential =- UpdateServiceSpecificCredentialResponse- request = postQuery iam- response- = receiveNull- UpdateServiceSpecificCredentialResponse'--instance Hashable UpdateServiceSpecificCredential- where--instance NFData UpdateServiceSpecificCredential where--instance ToHeaders UpdateServiceSpecificCredential- where- toHeaders = const mempty--instance ToPath UpdateServiceSpecificCredential where- toPath = const "/"--instance ToQuery UpdateServiceSpecificCredential- where- toQuery UpdateServiceSpecificCredential'{..}- = mconcat- ["Action" =:- ("UpdateServiceSpecificCredential" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _usscUserName,- "ServiceSpecificCredentialId" =:- _usscServiceSpecificCredentialId,- "Status" =: _usscStatus]---- | /See:/ 'updateServiceSpecificCredentialResponse' smart constructor.-data UpdateServiceSpecificCredentialResponse =- UpdateServiceSpecificCredentialResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateServiceSpecificCredentialResponse' with the minimum fields required to make a request.----updateServiceSpecificCredentialResponse- :: UpdateServiceSpecificCredentialResponse-updateServiceSpecificCredentialResponse =- UpdateServiceSpecificCredentialResponse'---instance NFData- UpdateServiceSpecificCredentialResponse- where
− gen/Network/AWS/IAM/UpdateSigningCertificate.hs
@@ -1,130 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateSigningCertificate--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Changes the status of the specified user signing certificate from active to disabled, or vice versa. This operation can be used to disable an IAM user's signing certificate as part of a certificate rotation work flow.--------- If the @UserName@ field is not specified, the user name is determined implicitly based on the AWS access key ID used to sign the request. Because this operation works for access keys under the AWS account, you can use this operation to manage AWS account root user credentials even if the AWS account has no associated users.----module Network.AWS.IAM.UpdateSigningCertificate- (- -- * Creating a Request- updateSigningCertificate- , UpdateSigningCertificate- -- * Request Lenses- , uscUserName- , uscCertificateId- , uscStatus-- -- * Destructuring the Response- , updateSigningCertificateResponse- , UpdateSigningCertificateResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateSigningCertificate' smart constructor.-data UpdateSigningCertificate = UpdateSigningCertificate'- { _uscUserName :: !(Maybe Text)- , _uscCertificateId :: !Text- , _uscStatus :: !StatusType- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateSigningCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uscUserName' - The name of the IAM user the signing certificate belongs to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'uscCertificateId' - The ID of the signing certificate you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.------ * 'uscStatus' - The status you want to assign to the certificate. @Active@ means that the certificate can be used for API calls to AWS @Inactive@ means that the certificate cannot be used.-updateSigningCertificate- :: Text -- ^ 'uscCertificateId'- -> StatusType -- ^ 'uscStatus'- -> UpdateSigningCertificate-updateSigningCertificate pCertificateId_ pStatus_ =- UpdateSigningCertificate'- { _uscUserName = Nothing- , _uscCertificateId = pCertificateId_- , _uscStatus = pStatus_- }----- | The name of the IAM user the signing certificate belongs to. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uscUserName :: Lens' UpdateSigningCertificate (Maybe Text)-uscUserName = lens _uscUserName (\ s a -> s{_uscUserName = a})---- | The ID of the signing certificate you want to update. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters that can consist of any upper or lowercased letter or digit.-uscCertificateId :: Lens' UpdateSigningCertificate Text-uscCertificateId = lens _uscCertificateId (\ s a -> s{_uscCertificateId = a})---- | The status you want to assign to the certificate. @Active@ means that the certificate can be used for API calls to AWS @Inactive@ means that the certificate cannot be used.-uscStatus :: Lens' UpdateSigningCertificate StatusType-uscStatus = lens _uscStatus (\ s a -> s{_uscStatus = a})--instance AWSRequest UpdateSigningCertificate where- type Rs UpdateSigningCertificate =- UpdateSigningCertificateResponse- request = postQuery iam- response- = receiveNull UpdateSigningCertificateResponse'--instance Hashable UpdateSigningCertificate where--instance NFData UpdateSigningCertificate where--instance ToHeaders UpdateSigningCertificate where- toHeaders = const mempty--instance ToPath UpdateSigningCertificate where- toPath = const "/"--instance ToQuery UpdateSigningCertificate where- toQuery UpdateSigningCertificate'{..}- = mconcat- ["Action" =:- ("UpdateSigningCertificate" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _uscUserName,- "CertificateId" =: _uscCertificateId,- "Status" =: _uscStatus]---- | /See:/ 'updateSigningCertificateResponse' smart constructor.-data UpdateSigningCertificateResponse =- UpdateSigningCertificateResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateSigningCertificateResponse' with the minimum fields required to make a request.----updateSigningCertificateResponse- :: UpdateSigningCertificateResponse-updateSigningCertificateResponse = UpdateSigningCertificateResponse'---instance NFData UpdateSigningCertificateResponse- where
− gen/Network/AWS/IAM/UpdateUser.hs
@@ -1,121 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UpdateUser--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Updates the name and/or the path of the specified IAM user.--------- /Important:/ You should understand the implications of changing an IAM user's path or name. For more information, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_manage.html#id_users_renaming Renaming an IAM User> and <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups_manage_rename.html Renaming an IAM Group> in the /IAM User Guide/ .----module Network.AWS.IAM.UpdateUser- (- -- * Creating a Request- updateUser- , UpdateUser- -- * Request Lenses- , uuNewUserName- , uuNewPath- , uuUserName-- -- * Destructuring the Response- , updateUserResponse- , UpdateUserResponse- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'updateUser' smart constructor.-data UpdateUser = UpdateUser'- { _uuNewUserName :: !(Maybe Text)- , _uuNewPath :: !(Maybe Text)- , _uuUserName :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateUser' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uuNewUserName' - New name for the user. Include this parameter only if you're changing the user's name. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'uuNewPath' - New path for the IAM user. Include this parameter only if you're changing the user's path. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'uuUserName' - Name of the user to update. If you're changing the name of the user, this is the original user name. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--updateUser- :: Text -- ^ 'uuUserName'- -> UpdateUser-updateUser pUserName_ =- UpdateUser'- {_uuNewUserName = Nothing, _uuNewPath = Nothing, _uuUserName = pUserName_}----- | New name for the user. Include this parameter only if you're changing the user's name. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uuNewUserName :: Lens' UpdateUser (Maybe Text)-uuNewUserName = lens _uuNewUserName (\ s a -> s{_uuNewUserName = a})---- | New path for the IAM user. Include this parameter only if you're changing the user's path. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-uuNewPath :: Lens' UpdateUser (Maybe Text)-uuNewPath = lens _uuNewPath (\ s a -> s{_uuNewPath = a})---- | Name of the user to update. If you're changing the name of the user, this is the original user name. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uuUserName :: Lens' UpdateUser Text-uuUserName = lens _uuUserName (\ s a -> s{_uuUserName = a})--instance AWSRequest UpdateUser where- type Rs UpdateUser = UpdateUserResponse- request = postQuery iam- response = receiveNull UpdateUserResponse'--instance Hashable UpdateUser where--instance NFData UpdateUser where--instance ToHeaders UpdateUser where- toHeaders = const mempty--instance ToPath UpdateUser where- toPath = const "/"--instance ToQuery UpdateUser where- toQuery UpdateUser'{..}- = mconcat- ["Action" =: ("UpdateUser" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "NewUserName" =: _uuNewUserName,- "NewPath" =: _uuNewPath, "UserName" =: _uuUserName]---- | /See:/ 'updateUserResponse' smart constructor.-data UpdateUserResponse =- UpdateUserResponse'- deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UpdateUserResponse' with the minimum fields required to make a request.----updateUserResponse- :: UpdateUserResponse-updateUserResponse = UpdateUserResponse'---instance NFData UpdateUserResponse where
− gen/Network/AWS/IAM/UploadSSHPublicKey.hs
@@ -1,143 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UploadSSHPublicKey--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Uploads an SSH public key and associates it with the specified IAM user.--------- The SSH public key uploaded by this operation can be used only for authenticating the associated IAM user to an AWS CodeCommit repository. For more information about using SSH keys to authenticate to an AWS CodeCommit repository, see <http://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-credentials-ssh.html Set up AWS CodeCommit for SSH Connections> in the /AWS CodeCommit User Guide/ .----module Network.AWS.IAM.UploadSSHPublicKey- (- -- * Creating a Request- uploadSSHPublicKey- , UploadSSHPublicKey- -- * Request Lenses- , usshpkUserName- , usshpkSSHPublicKeyBody-- -- * Destructuring the Response- , uploadSSHPublicKeyResponse- , UploadSSHPublicKeyResponse- -- * Response Lenses- , uspkrsSSHPublicKey- , uspkrsResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'uploadSSHPublicKey' smart constructor.-data UploadSSHPublicKey = UploadSSHPublicKey'- { _usshpkUserName :: !Text- , _usshpkSSHPublicKeyBody :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UploadSSHPublicKey' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'usshpkUserName' - The name of the IAM user to associate the SSH public key with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'usshpkSSHPublicKeyBody' - The SSH public key. The public key must be encoded in ssh-rsa format or PEM format. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-uploadSSHPublicKey- :: Text -- ^ 'usshpkUserName'- -> Text -- ^ 'usshpkSSHPublicKeyBody'- -> UploadSSHPublicKey-uploadSSHPublicKey pUserName_ pSSHPublicKeyBody_ =- UploadSSHPublicKey'- {_usshpkUserName = pUserName_, _usshpkSSHPublicKeyBody = pSSHPublicKeyBody_}----- | The name of the IAM user to associate the SSH public key with. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--usshpkUserName :: Lens' UploadSSHPublicKey Text-usshpkUserName = lens _usshpkUserName (\ s a -> s{_usshpkUserName = a})---- | The SSH public key. The public key must be encoded in ssh-rsa format or PEM format. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-usshpkSSHPublicKeyBody :: Lens' UploadSSHPublicKey Text-usshpkSSHPublicKeyBody = lens _usshpkSSHPublicKeyBody (\ s a -> s{_usshpkSSHPublicKeyBody = a})--instance AWSRequest UploadSSHPublicKey where- type Rs UploadSSHPublicKey =- UploadSSHPublicKeyResponse- request = postQuery iam- response- = receiveXMLWrapper "UploadSSHPublicKeyResult"- (\ s h x ->- UploadSSHPublicKeyResponse' <$>- (x .@? "SSHPublicKey") <*> (pure (fromEnum s)))--instance Hashable UploadSSHPublicKey where--instance NFData UploadSSHPublicKey where--instance ToHeaders UploadSSHPublicKey where- toHeaders = const mempty--instance ToPath UploadSSHPublicKey where- toPath = const "/"--instance ToQuery UploadSSHPublicKey where- toQuery UploadSSHPublicKey'{..}- = mconcat- ["Action" =: ("UploadSSHPublicKey" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _usshpkUserName,- "SSHPublicKeyBody" =: _usshpkSSHPublicKeyBody]---- | Contains the response to a successful 'UploadSSHPublicKey' request.------------ /See:/ 'uploadSSHPublicKeyResponse' smart constructor.-data UploadSSHPublicKeyResponse = UploadSSHPublicKeyResponse'- { _uspkrsSSHPublicKey :: !(Maybe SSHPublicKey)- , _uspkrsResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UploadSSHPublicKeyResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uspkrsSSHPublicKey' - Contains information about the SSH public key.------ * 'uspkrsResponseStatus' - -- | The response status code.-uploadSSHPublicKeyResponse- :: Int -- ^ 'uspkrsResponseStatus'- -> UploadSSHPublicKeyResponse-uploadSSHPublicKeyResponse pResponseStatus_ =- UploadSSHPublicKeyResponse'- {_uspkrsSSHPublicKey = Nothing, _uspkrsResponseStatus = pResponseStatus_}----- | Contains information about the SSH public key.-uspkrsSSHPublicKey :: Lens' UploadSSHPublicKeyResponse (Maybe SSHPublicKey)-uspkrsSSHPublicKey = lens _uspkrsSSHPublicKey (\ s a -> s{_uspkrsSSHPublicKey = a})---- | -- | The response status code.-uspkrsResponseStatus :: Lens' UploadSSHPublicKeyResponse Int-uspkrsResponseStatus = lens _uspkrsResponseStatus (\ s a -> s{_uspkrsResponseStatus = a})--instance NFData UploadSSHPublicKeyResponse where
− gen/Network/AWS/IAM/UploadServerCertificate.hs
@@ -1,184 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UploadServerCertificate--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Uploads a server certificate entity for the AWS account. The server certificate entity includes a public key certificate, a private key, and an optional certificate chain, which should all be PEM-encoded.--------- We recommend that you use <https://aws.amazon.com/certificate-manager/ AWS Certificate Manager> to provision, manage, and deploy your server certificates. With ACM you can request a certificate, deploy it to AWS resources, and let ACM handle certificate renewals for you. Certificates provided by ACM are free. For more information about using ACM, see the <http://docs.aws.amazon.com/acm/latest/userguide/ AWS Certificate Manager User Guide> .------ For more information about working with server certificates, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html Working with Server Certificates> in the /IAM User Guide/ . This topic includes a list of AWS services that can use the server certificates that you manage with IAM.------ For information about the number of server certificates you can upload, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html Limitations on IAM Entities and Objects> in the /IAM User Guide/ .----module Network.AWS.IAM.UploadServerCertificate- (- -- * Creating a Request- uploadServerCertificate- , UploadServerCertificate- -- * Request Lenses- , uscPath- , uscCertificateChain- , uscServerCertificateName- , uscCertificateBody- , uscPrivateKey-- -- * Destructuring the Response- , uploadServerCertificateResponse- , UploadServerCertificateResponse- -- * Response Lenses- , ursServerCertificateMetadata- , ursResponseStatus- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'uploadServerCertificate' smart constructor.-data UploadServerCertificate = UploadServerCertificate'- { _uscPath :: !(Maybe Text)- , _uscCertificateChain :: !(Maybe Text)- , _uscServerCertificateName :: !Text- , _uscCertificateBody :: !Text- , _uscPrivateKey :: !(Sensitive Text)- } deriving (Eq, Show, Data, Typeable, Generic)----- | Creates a value of 'UploadServerCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uscPath' - The path for the server certificate. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.------ * 'uscCertificateChain' - The contents of the certificate chain. This is typically a concatenation of the PEM-encoded public key certificates of the chain. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)------ * 'uscServerCertificateName' - The name for the server certificate. Do not include the path in this value. The name of the certificate cannot contain any spaces. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'uscCertificateBody' - The contents of the public key certificate in PEM-encoded format. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)------ * 'uscPrivateKey' - The contents of the private key in PEM-encoded format. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-uploadServerCertificate- :: Text -- ^ 'uscServerCertificateName'- -> Text -- ^ 'uscCertificateBody'- -> Text -- ^ 'uscPrivateKey'- -> UploadServerCertificate-uploadServerCertificate pServerCertificateName_ pCertificateBody_ pPrivateKey_ =- UploadServerCertificate'- { _uscPath = Nothing- , _uscCertificateChain = Nothing- , _uscServerCertificateName = pServerCertificateName_- , _uscCertificateBody = pCertificateBody_- , _uscPrivateKey = _Sensitive # pPrivateKey_- }----- | The path for the server certificate. For more information about paths, see <http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_Identifiers.html IAM Identifiers> in the /IAM User Guide/ . This parameter is optional. If it is not included, it defaults to a slash (/). This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of either a forward slash (/) by itself or a string that must begin and end with forward slashes. In addition, it can contain any ASCII character from the ! (\u0021) through the DEL character (\u007F), including most punctuation characters, digits, and upper and lowercased letters.-uscPath :: Lens' UploadServerCertificate (Maybe Text)-uscPath = lens _uscPath (\ s a -> s{_uscPath = a})---- | The contents of the certificate chain. This is typically a concatenation of the PEM-encoded public key certificates of the chain. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-uscCertificateChain :: Lens' UploadServerCertificate (Maybe Text)-uscCertificateChain = lens _uscCertificateChain (\ s a -> s{_uscCertificateChain = a})---- | The name for the server certificate. Do not include the path in this value. The name of the certificate cannot contain any spaces. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uscServerCertificateName :: Lens' UploadServerCertificate Text-uscServerCertificateName = lens _uscServerCertificateName (\ s a -> s{_uscServerCertificateName = a})---- | The contents of the public key certificate in PEM-encoded format. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-uscCertificateBody :: Lens' UploadServerCertificate Text-uscCertificateBody = lens _uscCertificateBody (\ s a -> s{_uscCertificateBody = a})---- | The contents of the private key in PEM-encoded format. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-uscPrivateKey :: Lens' UploadServerCertificate Text-uscPrivateKey = lens _uscPrivateKey (\ s a -> s{_uscPrivateKey = a}) . _Sensitive--instance AWSRequest UploadServerCertificate where- type Rs UploadServerCertificate =- UploadServerCertificateResponse- request = postQuery iam- response- = receiveXMLWrapper "UploadServerCertificateResult"- (\ s h x ->- UploadServerCertificateResponse' <$>- (x .@? "ServerCertificateMetadata") <*>- (pure (fromEnum s)))--instance Hashable UploadServerCertificate where--instance NFData UploadServerCertificate where--instance ToHeaders UploadServerCertificate where- toHeaders = const mempty--instance ToPath UploadServerCertificate where- toPath = const "/"--instance ToQuery UploadServerCertificate where- toQuery UploadServerCertificate'{..}- = mconcat- ["Action" =:- ("UploadServerCertificate" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "Path" =: _uscPath,- "CertificateChain" =: _uscCertificateChain,- "ServerCertificateName" =: _uscServerCertificateName,- "CertificateBody" =: _uscCertificateBody,- "PrivateKey" =: _uscPrivateKey]---- | Contains the response to a successful 'UploadServerCertificate' request.------------ /See:/ 'uploadServerCertificateResponse' smart constructor.-data UploadServerCertificateResponse = UploadServerCertificateResponse'- { _ursServerCertificateMetadata :: !(Maybe ServerCertificateMetadata)- , _ursResponseStatus :: !Int- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UploadServerCertificateResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ursServerCertificateMetadata' - The meta information of the uploaded server certificate without its certificate body, certificate chain, and private key.------ * 'ursResponseStatus' - -- | The response status code.-uploadServerCertificateResponse- :: Int -- ^ 'ursResponseStatus'- -> UploadServerCertificateResponse-uploadServerCertificateResponse pResponseStatus_ =- UploadServerCertificateResponse'- { _ursServerCertificateMetadata = Nothing- , _ursResponseStatus = pResponseStatus_- }----- | The meta information of the uploaded server certificate without its certificate body, certificate chain, and private key.-ursServerCertificateMetadata :: Lens' UploadServerCertificateResponse (Maybe ServerCertificateMetadata)-ursServerCertificateMetadata = lens _ursServerCertificateMetadata (\ s a -> s{_ursServerCertificateMetadata = a})---- | -- | The response status code.-ursResponseStatus :: Lens' UploadServerCertificateResponse Int-ursResponseStatus = lens _ursResponseStatus (\ s a -> s{_ursResponseStatus = a})--instance NFData UploadServerCertificateResponse where
− gen/Network/AWS/IAM/UploadSigningCertificate.hs
@@ -1,145 +0,0 @@-{-# LANGUAGE DeriveDataTypeable #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-unused-binds #-}-{-# OPTIONS_GHC -fno-warn-unused-matches #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.UploadSigningCertificate--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)------ Uploads an X.509 signing certificate and associates it with the specified IAM user. Some AWS services use X.509 signing certificates to validate requests that are signed with a corresponding private key. When you upload the certificate, its default status is @Active@ .--------- If the @UserName@ field is not specified, the IAM user name is determined implicitly based on the AWS access key ID used to sign the request. Because this operation works for access keys under the AWS account, you can use this operation to manage AWS account root user credentials even if the AWS account has no associated users.----module Network.AWS.IAM.UploadSigningCertificate- (- -- * Creating a Request- uploadSigningCertificate- , UploadSigningCertificate- -- * Request Lenses- , uplUserName- , uplCertificateBody-- -- * Destructuring the Response- , uploadSigningCertificateResponse- , UploadSigningCertificateResponse- -- * Response Lenses- , uscrsResponseStatus- , uscrsCertificate- ) where--import Network.AWS.IAM.Types-import Network.AWS.IAM.Types.Product-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Request-import Network.AWS.Response---- | /See:/ 'uploadSigningCertificate' smart constructor.-data UploadSigningCertificate = UploadSigningCertificate'- { _uplUserName :: !(Maybe Text)- , _uplCertificateBody :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UploadSigningCertificate' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uplUserName' - The name of the user the signing certificate is for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@------- * 'uplCertificateBody' - The contents of the signing certificate. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-uploadSigningCertificate- :: Text -- ^ 'uplCertificateBody'- -> UploadSigningCertificate-uploadSigningCertificate pCertificateBody_ =- UploadSigningCertificate'- {_uplUserName = Nothing, _uplCertificateBody = pCertificateBody_}----- | The name of the user the signing certificate is for. This parameter allows (per its <http://wikipedia.org/wiki/regex regex pattern> ) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@--uplUserName :: Lens' UploadSigningCertificate (Maybe Text)-uplUserName = lens _uplUserName (\ s a -> s{_uplUserName = a})---- | The contents of the signing certificate. The <http://wikipedia.org/wiki/regex regex pattern> used to validate this parameter is a string of characters consisting of the following: * Any printable ASCII character ranging from the space character (\u0020) through the end of the ASCII character range * The printable characters in the Basic Latin and Latin-1 Supplement character set (through \u00FF) * The special characters tab (\u0009), line feed (\u000A), and carriage return (\u000D)-uplCertificateBody :: Lens' UploadSigningCertificate Text-uplCertificateBody = lens _uplCertificateBody (\ s a -> s{_uplCertificateBody = a})--instance AWSRequest UploadSigningCertificate where- type Rs UploadSigningCertificate =- UploadSigningCertificateResponse- request = postQuery iam- response- = receiveXMLWrapper "UploadSigningCertificateResult"- (\ s h x ->- UploadSigningCertificateResponse' <$>- (pure (fromEnum s)) <*> (x .@ "Certificate"))--instance Hashable UploadSigningCertificate where--instance NFData UploadSigningCertificate where--instance ToHeaders UploadSigningCertificate where- toHeaders = const mempty--instance ToPath UploadSigningCertificate where- toPath = const "/"--instance ToQuery UploadSigningCertificate where- toQuery UploadSigningCertificate'{..}- = mconcat- ["Action" =:- ("UploadSigningCertificate" :: ByteString),- "Version" =: ("2010-05-08" :: ByteString),- "UserName" =: _uplUserName,- "CertificateBody" =: _uplCertificateBody]---- | Contains the response to a successful 'UploadSigningCertificate' request.------------ /See:/ 'uploadSigningCertificateResponse' smart constructor.-data UploadSigningCertificateResponse = UploadSigningCertificateResponse'- { _uscrsResponseStatus :: !Int- , _uscrsCertificate :: !SigningCertificate- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'UploadSigningCertificateResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'uscrsResponseStatus' - -- | The response status code.------ * 'uscrsCertificate' - Information about the certificate.-uploadSigningCertificateResponse- :: Int -- ^ 'uscrsResponseStatus'- -> SigningCertificate -- ^ 'uscrsCertificate'- -> UploadSigningCertificateResponse-uploadSigningCertificateResponse pResponseStatus_ pCertificate_ =- UploadSigningCertificateResponse'- {_uscrsResponseStatus = pResponseStatus_, _uscrsCertificate = pCertificate_}----- | -- | The response status code.-uscrsResponseStatus :: Lens' UploadSigningCertificateResponse Int-uscrsResponseStatus = lens _uscrsResponseStatus (\ s a -> s{_uscrsResponseStatus = a})---- | Information about the certificate.-uscrsCertificate :: Lens' UploadSigningCertificateResponse SigningCertificate-uscrsCertificate = lens _uscrsCertificate (\ s a -> s{_uscrsCertificate = a})--instance NFData UploadSigningCertificateResponse- where
− gen/Network/AWS/IAM/Waiters.hs
@@ -1,47 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE TypeFamilies #-}--{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Network.AWS.IAM.Waiters--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.IAM.Waiters where--import Network.AWS.IAM.GetInstanceProfile-import Network.AWS.IAM.GetUser-import Network.AWS.IAM.Types-import Network.AWS.Lens-import Network.AWS.Prelude-import Network.AWS.Waiter---- | Polls 'Network.AWS.IAM.GetInstanceProfile' every 1 seconds until a successful state is reached. An error is returned after 40 failed checks.-instanceProfileExists :: Wait GetInstanceProfile-instanceProfileExists =- Wait- { _waitName = "InstanceProfileExists"- , _waitAttempts = 40- , _waitDelay = 1- , _waitAcceptors =- [matchStatus 200 AcceptSuccess, matchStatus 404 AcceptRetry]- }----- | Polls 'Network.AWS.IAM.GetUser' every 1 seconds until a successful state is reached. An error is returned after 20 failed checks.-userExists :: Wait GetUser-userExists =- Wait- { _waitName = "UserExists"- , _waitAttempts = 20- , _waitDelay = 1- , _waitAcceptors =- [matchStatus 200 AcceptSuccess, matchError "NoSuchEntity" AcceptRetry]- }-
test/Main.hs view
@@ -2,20 +2,22 @@ -- | -- Module : Main--- Copyright : (c) 2013-2018 Brendan Hay+-- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions)--- module Main (main) where +import Test.Amazonka.IAM+import Test.Amazonka.IAM.Internal import Test.Tasty-import Test.AWS.IAM-import Test.AWS.IAM.Internal main :: IO ()-main = defaultMain $ testGroup "IAM"- [ testGroup "tests" tests- , testGroup "fixtures" fixtures- ]+main =+ defaultMain $+ testGroup+ "IAM"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
− test/Test/AWS/Gen/IAM.hs
@@ -1,2253 +0,0 @@-{-# OPTIONS_GHC -fno-warn-unused-imports #-}-{-# OPTIONS_GHC -fno-warn-orphans #-}---- Derived from AWS service descriptions, licensed under Apache 2.0.---- |--- Module : Test.AWS.Gen.IAM--- Copyright : (c) 2013-2018 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)----module Test.AWS.Gen.IAM where--import Data.Proxy-import Network.AWS.IAM-import Test.AWS.Fixture-import Test.AWS.IAM.Internal-import Test.AWS.Prelude-import Test.Tasty---- Auto-generated: the actual test selection needs to be manually placed into--- the top-level so that real test data can be incrementally added.------ This commented snippet is what the entire set should look like:---- fixtures :: TestTree--- fixtures =--- [ testGroup "request"--- [ requestGetContextKeysForPrincipalPolicy $--- getContextKeysForPrincipalPolicy------ , requestListPolicies $--- listPolicies------ , requestCreatePolicy $--- createPolicy------ , requestListInstanceProfilesForRole $--- listInstanceProfilesForRole------ , requestAttachGroupPolicy $--- attachGroupPolicy------ , requestCreateAccessKey $--- createAccessKey------ , requestListSSHPublicKeys $--- listSSHPublicKeys------ , requestListOpenIdConnectProviders $--- listOpenIdConnectProviders------ , requestCreateVirtualMFADevice $--- createVirtualMFADevice------ , requestDeleteAccountPasswordPolicy $--- deleteAccountPasswordPolicy------ , requestUpdateAccountPasswordPolicy $--- updateAccountPasswordPolicy------ , requestAttachRolePolicy $--- attachRolePolicy------ , requestUpdateSSHPublicKey $--- updateSSHPublicKey------ , requestDeleteSSHPublicKey $--- deleteSSHPublicKey------ , requestGetUserPolicy $--- getUserPolicy------ , requestUpdateServiceSpecificCredential $--- updateServiceSpecificCredential------ , requestDeleteServiceSpecificCredential $--- deleteServiceSpecificCredential------ , requestListAttachedRolePolicies $--- listAttachedRolePolicies------ , requestGetRole $--- getRole------ , requestDeactivateMFADevice $--- deactivateMFADevice------ , requestCreateOpenIdConnectProvider $--- createOpenIdConnectProvider------ , requestDeleteVirtualMFADevice $--- deleteVirtualMFADevice------ , requestListRoles $--- listRoles------ , requestListUserPolicies $--- listUserPolicies------ , requestUploadSSHPublicKey $--- uploadSSHPublicKey------ , requestSimulateCustomPolicy $--- simulateCustomPolicy------ , requestUpdateRole $--- updateRole------ , requestDeleteRole $--- deleteRole------ , requestListUsers $--- listUsers------ , requestUpdateOpenIdConnectProviderThumbprint $--- updateOpenIdConnectProviderThumbprint------ , requestPutUserPolicy $--- putUserPolicy------ , requestGetSSHPublicKey $--- getSSHPublicKey------ , requestDetachGroupPolicy $--- detachGroupPolicy------ , requestGetOpenIdConnectProvider $--- getOpenIdConnectProvider------ , requestDeleteUserPolicy $--- deleteUserPolicy------ , requestCreateRole $--- createRole------ , requestResetServiceSpecificCredential $--- resetServiceSpecificCredential------ , requestGetCredentialReport $--- getCredentialReport------ , requestGetAccountSummary $--- getAccountSummary------ , requestListGroupPolicies $--- listGroupPolicies------ , requestDeletePolicyVersion $--- deletePolicyVersion------ , requestDeleteInstanceProfile $--- deleteInstanceProfile------ , requestDetachRolePolicy $--- detachRolePolicy------ , requestRemoveRoleFromInstanceProfile $--- removeRoleFromInstanceProfile------ , requestCreatePolicyVersion $--- createPolicyVersion------ , requestCreateInstanceProfile $--- createInstanceProfile------ , requestCreateSAMLProvider $--- createSAMLProvider------ , requestGetAccountAuthorizationDetails $--- getAccountAuthorizationDetails------ , requestGetServiceLinkedRoleDeletionStatus $--- getServiceLinkedRoleDeletionStatus------ , requestDeleteAccountAlias $--- deleteAccountAlias------ , requestDetachUserPolicy $--- detachUserPolicy------ , requestRemoveUserFromGroup $--- removeUserFromGroup------ , requestDeleteGroupPolicy $--- deleteGroupPolicy------ , requestPutGroupPolicy $--- putGroupPolicy------ , requestGetLoginProfile $--- getLoginProfile------ , requestGetGroupPolicy $--- getGroupPolicy------ , requestChangePassword $--- changePassword------ , requestListServerCertificates $--- listServerCertificates------ , requestDeleteServiceLinkedRole $--- deleteServiceLinkedRole------ , requestDeletePolicy $--- deletePolicy------ , requestUpdateAssumeRolePolicy $--- updateAssumeRolePolicy------ , requestGetInstanceProfile $--- getInstanceProfile------ , requestCreateLoginProfile $--- createLoginProfile------ , requestGetSAMLProvider $--- getSAMLProvider------ , requestAddRoleToInstanceProfile $--- addRoleToInstanceProfile------ , requestListGroupsForUser $--- listGroupsForUser------ , requestListEntitiesForPolicy $--- listEntitiesForPolicy------ , requestAddUserToGroup $--- addUserToGroup------ , requestSimulatePrincipalPolicy $--- simulatePrincipalPolicy------ , requestGetPolicyVersion $--- getPolicyVersion------ , requestCreateServiceLinkedRole $--- createServiceLinkedRole------ , requestListServiceSpecificCredentials $--- listServiceSpecificCredentials------ , requestDeleteOpenIdConnectProvider $--- deleteOpenIdConnectProvider------ , requestGetUser $--- getUser------ , requestListSigningCertificates $--- listSigningCertificates------ , requestDeleteSigningCertificate $--- deleteSigningCertificate------ , requestUpdateSigningCertificate $--- updateSigningCertificate------ , requestListAttachedUserPolicies $--- listAttachedUserPolicies------ , requestRemoveClientIdFromOpenIdConnectProvider $--- removeClientIdFromOpenIdConnectProvider------ , requestAttachUserPolicy $--- attachUserPolicy------ , requestCreateServiceSpecificCredential $--- createServiceSpecificCredential------ , requestListVirtualMFADevices $--- listVirtualMFADevices------ , requestResyncMFADevice $--- resyncMFADevice------ , requestDeleteAccessKey $--- deleteAccessKey------ , requestUpdateAccessKey $--- updateAccessKey------ , requestListAccessKeys $--- listAccessKeys------ , requestGetRolePolicy $--- getRolePolicy------ , requestCreateUser $--- createUser------ , requestPutRolePolicy $--- putRolePolicy------ , requestGetContextKeysForCustomPolicy $--- getContextKeysForCustomPolicy------ , requestUploadSigningCertificate $--- uploadSigningCertificate------ , requestDeleteRolePolicy $--- deleteRolePolicy------ , requestGetAccountPasswordPolicy $--- getAccountPasswordPolicy------ , requestGetAccessKeyLastUsed $--- getAccessKeyLastUsed------ , requestUpdateUser $--- updateUser------ , requestDeleteUser $--- deleteUser------ , requestAddClientIdToOpenIdConnectProvider $--- addClientIdToOpenIdConnectProvider------ , requestListRolePolicies $--- listRolePolicies------ , requestCreateAccountAlias $--- createAccountAlias------ , requestListInstanceProfiles $--- listInstanceProfiles------ , requestEnableMFADevice $--- enableMFADevice------ , requestListAccountAliases $--- listAccountAliases------ , requestDeleteSAMLProvider $--- deleteSAMLProvider------ , requestUpdateSAMLProvider $--- updateSAMLProvider------ , requestCreateGroup $--- createGroup------ , requestListMFADevices $--- listMFADevices------ , requestUploadServerCertificate $--- uploadServerCertificate------ , requestSetDefaultPolicyVersion $--- setDefaultPolicyVersion------ , requestListPolicyVersions $--- listPolicyVersions------ , requestUpdateRoleDescription $--- updateRoleDescription------ , requestListSAMLProviders $--- listSAMLProviders------ , requestGetServerCertificate $--- getServerCertificate------ , requestDeleteGroup $--- deleteGroup------ , requestUpdateGroup $--- updateGroup------ , requestListGroups $--- listGroups------ , requestGenerateCredentialReport $--- generateCredentialReport------ , requestGetPolicy $--- getPolicy------ , requestUpdateLoginProfile $--- updateLoginProfile------ , requestDeleteLoginProfile $--- deleteLoginProfile------ , requestGetGroup $--- getGroup------ , requestDeleteServerCertificate $--- deleteServerCertificate------ , requestUpdateServerCertificate $--- updateServerCertificate------ , requestListAttachedGroupPolicies $--- listAttachedGroupPolicies------ ]---- , testGroup "response"--- [ responseGetContextKeysForPrincipalPolicy $--- getContextKeysForPolicyResponse------ , responseListPolicies $--- listPoliciesResponse------ , responseCreatePolicy $--- createPolicyResponse------ , responseListInstanceProfilesForRole $--- listInstanceProfilesForRoleResponse------ , responseAttachGroupPolicy $--- attachGroupPolicyResponse------ , responseCreateAccessKey $--- createAccessKeyResponse------ , responseListSSHPublicKeys $--- listSSHPublicKeysResponse------ , responseListOpenIdConnectProviders $--- listOpenIdConnectProvidersResponse------ , responseCreateVirtualMFADevice $--- createVirtualMFADeviceResponse------ , responseDeleteAccountPasswordPolicy $--- deleteAccountPasswordPolicyResponse------ , responseUpdateAccountPasswordPolicy $--- updateAccountPasswordPolicyResponse------ , responseAttachRolePolicy $--- attachRolePolicyResponse------ , responseUpdateSSHPublicKey $--- updateSSHPublicKeyResponse------ , responseDeleteSSHPublicKey $--- deleteSSHPublicKeyResponse------ , responseGetUserPolicy $--- getUserPolicyResponse------ , responseUpdateServiceSpecificCredential $--- updateServiceSpecificCredentialResponse------ , responseDeleteServiceSpecificCredential $--- deleteServiceSpecificCredentialResponse------ , responseListAttachedRolePolicies $--- listAttachedRolePoliciesResponse------ , responseGetRole $--- getRoleResponse------ , responseDeactivateMFADevice $--- deactivateMFADeviceResponse------ , responseCreateOpenIdConnectProvider $--- createOpenIdConnectProviderResponse------ , responseDeleteVirtualMFADevice $--- deleteVirtualMFADeviceResponse------ , responseListRoles $--- listRolesResponse------ , responseListUserPolicies $--- listUserPoliciesResponse------ , responseUploadSSHPublicKey $--- uploadSSHPublicKeyResponse------ , responseSimulateCustomPolicy $--- simulatePolicyResponse------ , responseUpdateRole $--- updateRoleResponse------ , responseDeleteRole $--- deleteRoleResponse------ , responseListUsers $--- listUsersResponse------ , responseUpdateOpenIdConnectProviderThumbprint $--- updateOpenIdConnectProviderThumbprintResponse------ , responsePutUserPolicy $--- putUserPolicyResponse------ , responseGetSSHPublicKey $--- getSSHPublicKeyResponse------ , responseDetachGroupPolicy $--- detachGroupPolicyResponse------ , responseGetOpenIdConnectProvider $--- getOpenIdConnectProviderResponse------ , responseDeleteUserPolicy $--- deleteUserPolicyResponse------ , responseCreateRole $--- createRoleResponse------ , responseResetServiceSpecificCredential $--- resetServiceSpecificCredentialResponse------ , responseGetCredentialReport $--- getCredentialReportResponse------ , responseGetAccountSummary $--- getAccountSummaryResponse------ , responseListGroupPolicies $--- listGroupPoliciesResponse------ , responseDeletePolicyVersion $--- deletePolicyVersionResponse------ , responseDeleteInstanceProfile $--- deleteInstanceProfileResponse------ , responseDetachRolePolicy $--- detachRolePolicyResponse------ , responseRemoveRoleFromInstanceProfile $--- removeRoleFromInstanceProfileResponse------ , responseCreatePolicyVersion $--- createPolicyVersionResponse------ , responseCreateInstanceProfile $--- createInstanceProfileResponse------ , responseCreateSAMLProvider $--- createSAMLProviderResponse------ , responseGetAccountAuthorizationDetails $--- getAccountAuthorizationDetailsResponse------ , responseGetServiceLinkedRoleDeletionStatus $--- getServiceLinkedRoleDeletionStatusResponse------ , responseDeleteAccountAlias $--- deleteAccountAliasResponse------ , responseDetachUserPolicy $--- detachUserPolicyResponse------ , responseRemoveUserFromGroup $--- removeUserFromGroupResponse------ , responseDeleteGroupPolicy $--- deleteGroupPolicyResponse------ , responsePutGroupPolicy $--- putGroupPolicyResponse------ , responseGetLoginProfile $--- getLoginProfileResponse------ , responseGetGroupPolicy $--- getGroupPolicyResponse------ , responseChangePassword $--- changePasswordResponse------ , responseListServerCertificates $--- listServerCertificatesResponse------ , responseDeleteServiceLinkedRole $--- deleteServiceLinkedRoleResponse------ , responseDeletePolicy $--- deletePolicyResponse------ , responseUpdateAssumeRolePolicy $--- updateAssumeRolePolicyResponse------ , responseGetInstanceProfile $--- getInstanceProfileResponse------ , responseCreateLoginProfile $--- createLoginProfileResponse------ , responseGetSAMLProvider $--- getSAMLProviderResponse------ , responseAddRoleToInstanceProfile $--- addRoleToInstanceProfileResponse------ , responseListGroupsForUser $--- listGroupsForUserResponse------ , responseListEntitiesForPolicy $--- listEntitiesForPolicyResponse------ , responseAddUserToGroup $--- addUserToGroupResponse------ , responseSimulatePrincipalPolicy $--- simulatePolicyResponse------ , responseGetPolicyVersion $--- getPolicyVersionResponse------ , responseCreateServiceLinkedRole $--- createServiceLinkedRoleResponse------ , responseListServiceSpecificCredentials $--- listServiceSpecificCredentialsResponse------ , responseDeleteOpenIdConnectProvider $--- deleteOpenIdConnectProviderResponse------ , responseGetUser $--- getUserResponse------ , responseListSigningCertificates $--- listSigningCertificatesResponse------ , responseDeleteSigningCertificate $--- deleteSigningCertificateResponse------ , responseUpdateSigningCertificate $--- updateSigningCertificateResponse------ , responseListAttachedUserPolicies $--- listAttachedUserPoliciesResponse------ , responseRemoveClientIdFromOpenIdConnectProvider $--- removeClientIdFromOpenIdConnectProviderResponse------ , responseAttachUserPolicy $--- attachUserPolicyResponse------ , responseCreateServiceSpecificCredential $--- createServiceSpecificCredentialResponse------ , responseListVirtualMFADevices $--- listVirtualMFADevicesResponse------ , responseResyncMFADevice $--- resyncMFADeviceResponse------ , responseDeleteAccessKey $--- deleteAccessKeyResponse------ , responseUpdateAccessKey $--- updateAccessKeyResponse------ , responseListAccessKeys $--- listAccessKeysResponse------ , responseGetRolePolicy $--- getRolePolicyResponse------ , responseCreateUser $--- createUserResponse------ , responsePutRolePolicy $--- putRolePolicyResponse------ , responseGetContextKeysForCustomPolicy $--- getContextKeysForPolicyResponse------ , responseUploadSigningCertificate $--- uploadSigningCertificateResponse------ , responseDeleteRolePolicy $--- deleteRolePolicyResponse------ , responseGetAccountPasswordPolicy $--- getAccountPasswordPolicyResponse------ , responseGetAccessKeyLastUsed $--- getAccessKeyLastUsedResponse------ , responseUpdateUser $--- updateUserResponse------ , responseDeleteUser $--- deleteUserResponse------ , responseAddClientIdToOpenIdConnectProvider $--- addClientIdToOpenIdConnectProviderResponse------ , responseListRolePolicies $--- listRolePoliciesResponse------ , responseCreateAccountAlias $--- createAccountAliasResponse------ , responseListInstanceProfiles $--- listInstanceProfilesResponse------ , responseEnableMFADevice $--- enableMFADeviceResponse------ , responseListAccountAliases $--- listAccountAliasesResponse------ , responseDeleteSAMLProvider $--- deleteSAMLProviderResponse------ , responseUpdateSAMLProvider $--- updateSAMLProviderResponse------ , responseCreateGroup $--- createGroupResponse------ , responseListMFADevices $--- listMFADevicesResponse------ , responseUploadServerCertificate $--- uploadServerCertificateResponse------ , responseSetDefaultPolicyVersion $--- setDefaultPolicyVersionResponse------ , responseListPolicyVersions $--- listPolicyVersionsResponse------ , responseUpdateRoleDescription $--- updateRoleDescriptionResponse------ , responseListSAMLProviders $--- listSAMLProvidersResponse------ , responseGetServerCertificate $--- getServerCertificateResponse------ , responseDeleteGroup $--- deleteGroupResponse------ , responseUpdateGroup $--- updateGroupResponse------ , responseListGroups $--- listGroupsResponse------ , responseGenerateCredentialReport $--- generateCredentialReportResponse------ , responseGetPolicy $--- getPolicyResponse------ , responseUpdateLoginProfile $--- updateLoginProfileResponse------ , responseDeleteLoginProfile $--- deleteLoginProfileResponse------ , responseGetGroup $--- getGroupResponse------ , responseDeleteServerCertificate $--- deleteServerCertificateResponse------ , responseUpdateServerCertificate $--- updateServerCertificateResponse------ , responseListAttachedGroupPolicies $--- listAttachedGroupPoliciesResponse------ ]--- ]---- Requests--requestGetContextKeysForPrincipalPolicy :: GetContextKeysForPrincipalPolicy -> TestTree-requestGetContextKeysForPrincipalPolicy = req- "GetContextKeysForPrincipalPolicy"- "fixture/GetContextKeysForPrincipalPolicy.yaml"--requestListPolicies :: ListPolicies -> TestTree-requestListPolicies = req- "ListPolicies"- "fixture/ListPolicies.yaml"--requestCreatePolicy :: CreatePolicy -> TestTree-requestCreatePolicy = req- "CreatePolicy"- "fixture/CreatePolicy.yaml"--requestListInstanceProfilesForRole :: ListInstanceProfilesForRole -> TestTree-requestListInstanceProfilesForRole = req- "ListInstanceProfilesForRole"- "fixture/ListInstanceProfilesForRole.yaml"--requestAttachGroupPolicy :: AttachGroupPolicy -> TestTree-requestAttachGroupPolicy = req- "AttachGroupPolicy"- "fixture/AttachGroupPolicy.yaml"--requestCreateAccessKey :: CreateAccessKey -> TestTree-requestCreateAccessKey = req- "CreateAccessKey"- "fixture/CreateAccessKey.yaml"--requestListSSHPublicKeys :: ListSSHPublicKeys -> TestTree-requestListSSHPublicKeys = req- "ListSSHPublicKeys"- "fixture/ListSSHPublicKeys.yaml"--requestListOpenIdConnectProviders :: ListOpenIdConnectProviders -> TestTree-requestListOpenIdConnectProviders = req- "ListOpenIdConnectProviders"- "fixture/ListOpenIdConnectProviders.yaml"--requestCreateVirtualMFADevice :: CreateVirtualMFADevice -> TestTree-requestCreateVirtualMFADevice = req- "CreateVirtualMFADevice"- "fixture/CreateVirtualMFADevice.yaml"--requestDeleteAccountPasswordPolicy :: DeleteAccountPasswordPolicy -> TestTree-requestDeleteAccountPasswordPolicy = req- "DeleteAccountPasswordPolicy"- "fixture/DeleteAccountPasswordPolicy.yaml"--requestUpdateAccountPasswordPolicy :: UpdateAccountPasswordPolicy -> TestTree-requestUpdateAccountPasswordPolicy = req- "UpdateAccountPasswordPolicy"- "fixture/UpdateAccountPasswordPolicy.yaml"--requestAttachRolePolicy :: AttachRolePolicy -> TestTree-requestAttachRolePolicy = req- "AttachRolePolicy"- "fixture/AttachRolePolicy.yaml"--requestUpdateSSHPublicKey :: UpdateSSHPublicKey -> TestTree-requestUpdateSSHPublicKey = req- "UpdateSSHPublicKey"- "fixture/UpdateSSHPublicKey.yaml"--requestDeleteSSHPublicKey :: DeleteSSHPublicKey -> TestTree-requestDeleteSSHPublicKey = req- "DeleteSSHPublicKey"- "fixture/DeleteSSHPublicKey.yaml"--requestGetUserPolicy :: GetUserPolicy -> TestTree-requestGetUserPolicy = req- "GetUserPolicy"- "fixture/GetUserPolicy.yaml"--requestUpdateServiceSpecificCredential :: UpdateServiceSpecificCredential -> TestTree-requestUpdateServiceSpecificCredential = req- "UpdateServiceSpecificCredential"- "fixture/UpdateServiceSpecificCredential.yaml"--requestDeleteServiceSpecificCredential :: DeleteServiceSpecificCredential -> TestTree-requestDeleteServiceSpecificCredential = req- "DeleteServiceSpecificCredential"- "fixture/DeleteServiceSpecificCredential.yaml"--requestListAttachedRolePolicies :: ListAttachedRolePolicies -> TestTree-requestListAttachedRolePolicies = req- "ListAttachedRolePolicies"- "fixture/ListAttachedRolePolicies.yaml"--requestGetRole :: GetRole -> TestTree-requestGetRole = req- "GetRole"- "fixture/GetRole.yaml"--requestDeactivateMFADevice :: DeactivateMFADevice -> TestTree-requestDeactivateMFADevice = req- "DeactivateMFADevice"- "fixture/DeactivateMFADevice.yaml"--requestCreateOpenIdConnectProvider :: CreateOpenIdConnectProvider -> TestTree-requestCreateOpenIdConnectProvider = req- "CreateOpenIdConnectProvider"- "fixture/CreateOpenIdConnectProvider.yaml"--requestDeleteVirtualMFADevice :: DeleteVirtualMFADevice -> TestTree-requestDeleteVirtualMFADevice = req- "DeleteVirtualMFADevice"- "fixture/DeleteVirtualMFADevice.yaml"--requestListRoles :: ListRoles -> TestTree-requestListRoles = req- "ListRoles"- "fixture/ListRoles.yaml"--requestListUserPolicies :: ListUserPolicies -> TestTree-requestListUserPolicies = req- "ListUserPolicies"- "fixture/ListUserPolicies.yaml"--requestUploadSSHPublicKey :: UploadSSHPublicKey -> TestTree-requestUploadSSHPublicKey = req- "UploadSSHPublicKey"- "fixture/UploadSSHPublicKey.yaml"--requestSimulateCustomPolicy :: SimulateCustomPolicy -> TestTree-requestSimulateCustomPolicy = req- "SimulateCustomPolicy"- "fixture/SimulateCustomPolicy.yaml"--requestUpdateRole :: UpdateRole -> TestTree-requestUpdateRole = req- "UpdateRole"- "fixture/UpdateRole.yaml"--requestDeleteRole :: DeleteRole -> TestTree-requestDeleteRole = req- "DeleteRole"- "fixture/DeleteRole.yaml"--requestListUsers :: ListUsers -> TestTree-requestListUsers = req- "ListUsers"- "fixture/ListUsers.yaml"--requestUpdateOpenIdConnectProviderThumbprint :: UpdateOpenIdConnectProviderThumbprint -> TestTree-requestUpdateOpenIdConnectProviderThumbprint = req- "UpdateOpenIdConnectProviderThumbprint"- "fixture/UpdateOpenIdConnectProviderThumbprint.yaml"--requestPutUserPolicy :: PutUserPolicy -> TestTree-requestPutUserPolicy = req- "PutUserPolicy"- "fixture/PutUserPolicy.yaml"--requestGetSSHPublicKey :: GetSSHPublicKey -> TestTree-requestGetSSHPublicKey = req- "GetSSHPublicKey"- "fixture/GetSSHPublicKey.yaml"--requestDetachGroupPolicy :: DetachGroupPolicy -> TestTree-requestDetachGroupPolicy = req- "DetachGroupPolicy"- "fixture/DetachGroupPolicy.yaml"--requestGetOpenIdConnectProvider :: GetOpenIdConnectProvider -> TestTree-requestGetOpenIdConnectProvider = req- "GetOpenIdConnectProvider"- "fixture/GetOpenIdConnectProvider.yaml"--requestDeleteUserPolicy :: DeleteUserPolicy -> TestTree-requestDeleteUserPolicy = req- "DeleteUserPolicy"- "fixture/DeleteUserPolicy.yaml"--requestCreateRole :: CreateRole -> TestTree-requestCreateRole = req- "CreateRole"- "fixture/CreateRole.yaml"--requestResetServiceSpecificCredential :: ResetServiceSpecificCredential -> TestTree-requestResetServiceSpecificCredential = req- "ResetServiceSpecificCredential"- "fixture/ResetServiceSpecificCredential.yaml"--requestGetCredentialReport :: GetCredentialReport -> TestTree-requestGetCredentialReport = req- "GetCredentialReport"- "fixture/GetCredentialReport.yaml"--requestGetAccountSummary :: GetAccountSummary -> TestTree-requestGetAccountSummary = req- "GetAccountSummary"- "fixture/GetAccountSummary.yaml"--requestListGroupPolicies :: ListGroupPolicies -> TestTree-requestListGroupPolicies = req- "ListGroupPolicies"- "fixture/ListGroupPolicies.yaml"--requestDeletePolicyVersion :: DeletePolicyVersion -> TestTree-requestDeletePolicyVersion = req- "DeletePolicyVersion"- "fixture/DeletePolicyVersion.yaml"--requestDeleteInstanceProfile :: DeleteInstanceProfile -> TestTree-requestDeleteInstanceProfile = req- "DeleteInstanceProfile"- "fixture/DeleteInstanceProfile.yaml"--requestDetachRolePolicy :: DetachRolePolicy -> TestTree-requestDetachRolePolicy = req- "DetachRolePolicy"- "fixture/DetachRolePolicy.yaml"--requestRemoveRoleFromInstanceProfile :: RemoveRoleFromInstanceProfile -> TestTree-requestRemoveRoleFromInstanceProfile = req- "RemoveRoleFromInstanceProfile"- "fixture/RemoveRoleFromInstanceProfile.yaml"--requestCreatePolicyVersion :: CreatePolicyVersion -> TestTree-requestCreatePolicyVersion = req- "CreatePolicyVersion"- "fixture/CreatePolicyVersion.yaml"--requestCreateInstanceProfile :: CreateInstanceProfile -> TestTree-requestCreateInstanceProfile = req- "CreateInstanceProfile"- "fixture/CreateInstanceProfile.yaml"--requestCreateSAMLProvider :: CreateSAMLProvider -> TestTree-requestCreateSAMLProvider = req- "CreateSAMLProvider"- "fixture/CreateSAMLProvider.yaml"--requestGetAccountAuthorizationDetails :: GetAccountAuthorizationDetails -> TestTree-requestGetAccountAuthorizationDetails = req- "GetAccountAuthorizationDetails"- "fixture/GetAccountAuthorizationDetails.yaml"--requestGetServiceLinkedRoleDeletionStatus :: GetServiceLinkedRoleDeletionStatus -> TestTree-requestGetServiceLinkedRoleDeletionStatus = req- "GetServiceLinkedRoleDeletionStatus"- "fixture/GetServiceLinkedRoleDeletionStatus.yaml"--requestDeleteAccountAlias :: DeleteAccountAlias -> TestTree-requestDeleteAccountAlias = req- "DeleteAccountAlias"- "fixture/DeleteAccountAlias.yaml"--requestDetachUserPolicy :: DetachUserPolicy -> TestTree-requestDetachUserPolicy = req- "DetachUserPolicy"- "fixture/DetachUserPolicy.yaml"--requestRemoveUserFromGroup :: RemoveUserFromGroup -> TestTree-requestRemoveUserFromGroup = req- "RemoveUserFromGroup"- "fixture/RemoveUserFromGroup.yaml"--requestDeleteGroupPolicy :: DeleteGroupPolicy -> TestTree-requestDeleteGroupPolicy = req- "DeleteGroupPolicy"- "fixture/DeleteGroupPolicy.yaml"--requestPutGroupPolicy :: PutGroupPolicy -> TestTree-requestPutGroupPolicy = req- "PutGroupPolicy"- "fixture/PutGroupPolicy.yaml"--requestGetLoginProfile :: GetLoginProfile -> TestTree-requestGetLoginProfile = req- "GetLoginProfile"- "fixture/GetLoginProfile.yaml"--requestGetGroupPolicy :: GetGroupPolicy -> TestTree-requestGetGroupPolicy = req- "GetGroupPolicy"- "fixture/GetGroupPolicy.yaml"--requestChangePassword :: ChangePassword -> TestTree-requestChangePassword = req- "ChangePassword"- "fixture/ChangePassword.yaml"--requestListServerCertificates :: ListServerCertificates -> TestTree-requestListServerCertificates = req- "ListServerCertificates"- "fixture/ListServerCertificates.yaml"--requestDeleteServiceLinkedRole :: DeleteServiceLinkedRole -> TestTree-requestDeleteServiceLinkedRole = req- "DeleteServiceLinkedRole"- "fixture/DeleteServiceLinkedRole.yaml"--requestDeletePolicy :: DeletePolicy -> TestTree-requestDeletePolicy = req- "DeletePolicy"- "fixture/DeletePolicy.yaml"--requestUpdateAssumeRolePolicy :: UpdateAssumeRolePolicy -> TestTree-requestUpdateAssumeRolePolicy = req- "UpdateAssumeRolePolicy"- "fixture/UpdateAssumeRolePolicy.yaml"--requestGetInstanceProfile :: GetInstanceProfile -> TestTree-requestGetInstanceProfile = req- "GetInstanceProfile"- "fixture/GetInstanceProfile.yaml"--requestCreateLoginProfile :: CreateLoginProfile -> TestTree-requestCreateLoginProfile = req- "CreateLoginProfile"- "fixture/CreateLoginProfile.yaml"--requestGetSAMLProvider :: GetSAMLProvider -> TestTree-requestGetSAMLProvider = req- "GetSAMLProvider"- "fixture/GetSAMLProvider.yaml"--requestAddRoleToInstanceProfile :: AddRoleToInstanceProfile -> TestTree-requestAddRoleToInstanceProfile = req- "AddRoleToInstanceProfile"- "fixture/AddRoleToInstanceProfile.yaml"--requestListGroupsForUser :: ListGroupsForUser -> TestTree-requestListGroupsForUser = req- "ListGroupsForUser"- "fixture/ListGroupsForUser.yaml"--requestListEntitiesForPolicy :: ListEntitiesForPolicy -> TestTree-requestListEntitiesForPolicy = req- "ListEntitiesForPolicy"- "fixture/ListEntitiesForPolicy.yaml"--requestAddUserToGroup :: AddUserToGroup -> TestTree-requestAddUserToGroup = req- "AddUserToGroup"- "fixture/AddUserToGroup.yaml"--requestSimulatePrincipalPolicy :: SimulatePrincipalPolicy -> TestTree-requestSimulatePrincipalPolicy = req- "SimulatePrincipalPolicy"- "fixture/SimulatePrincipalPolicy.yaml"--requestGetPolicyVersion :: GetPolicyVersion -> TestTree-requestGetPolicyVersion = req- "GetPolicyVersion"- "fixture/GetPolicyVersion.yaml"--requestCreateServiceLinkedRole :: CreateServiceLinkedRole -> TestTree-requestCreateServiceLinkedRole = req- "CreateServiceLinkedRole"- "fixture/CreateServiceLinkedRole.yaml"--requestListServiceSpecificCredentials :: ListServiceSpecificCredentials -> TestTree-requestListServiceSpecificCredentials = req- "ListServiceSpecificCredentials"- "fixture/ListServiceSpecificCredentials.yaml"--requestDeleteOpenIdConnectProvider :: DeleteOpenIdConnectProvider -> TestTree-requestDeleteOpenIdConnectProvider = req- "DeleteOpenIdConnectProvider"- "fixture/DeleteOpenIdConnectProvider.yaml"--requestGetUser :: GetUser -> TestTree-requestGetUser = req- "GetUser"- "fixture/GetUser.yaml"--requestListSigningCertificates :: ListSigningCertificates -> TestTree-requestListSigningCertificates = req- "ListSigningCertificates"- "fixture/ListSigningCertificates.yaml"--requestDeleteSigningCertificate :: DeleteSigningCertificate -> TestTree-requestDeleteSigningCertificate = req- "DeleteSigningCertificate"- "fixture/DeleteSigningCertificate.yaml"--requestUpdateSigningCertificate :: UpdateSigningCertificate -> TestTree-requestUpdateSigningCertificate = req- "UpdateSigningCertificate"- "fixture/UpdateSigningCertificate.yaml"--requestListAttachedUserPolicies :: ListAttachedUserPolicies -> TestTree-requestListAttachedUserPolicies = req- "ListAttachedUserPolicies"- "fixture/ListAttachedUserPolicies.yaml"--requestRemoveClientIdFromOpenIdConnectProvider :: RemoveClientIdFromOpenIdConnectProvider -> TestTree-requestRemoveClientIdFromOpenIdConnectProvider = req- "RemoveClientIdFromOpenIdConnectProvider"- "fixture/RemoveClientIdFromOpenIdConnectProvider.yaml"--requestAttachUserPolicy :: AttachUserPolicy -> TestTree-requestAttachUserPolicy = req- "AttachUserPolicy"- "fixture/AttachUserPolicy.yaml"--requestCreateServiceSpecificCredential :: CreateServiceSpecificCredential -> TestTree-requestCreateServiceSpecificCredential = req- "CreateServiceSpecificCredential"- "fixture/CreateServiceSpecificCredential.yaml"--requestListVirtualMFADevices :: ListVirtualMFADevices -> TestTree-requestListVirtualMFADevices = req- "ListVirtualMFADevices"- "fixture/ListVirtualMFADevices.yaml"--requestResyncMFADevice :: ResyncMFADevice -> TestTree-requestResyncMFADevice = req- "ResyncMFADevice"- "fixture/ResyncMFADevice.yaml"--requestDeleteAccessKey :: DeleteAccessKey -> TestTree-requestDeleteAccessKey = req- "DeleteAccessKey"- "fixture/DeleteAccessKey.yaml"--requestUpdateAccessKey :: UpdateAccessKey -> TestTree-requestUpdateAccessKey = req- "UpdateAccessKey"- "fixture/UpdateAccessKey.yaml"--requestListAccessKeys :: ListAccessKeys -> TestTree-requestListAccessKeys = req- "ListAccessKeys"- "fixture/ListAccessKeys.yaml"--requestGetRolePolicy :: GetRolePolicy -> TestTree-requestGetRolePolicy = req- "GetRolePolicy"- "fixture/GetRolePolicy.yaml"--requestCreateUser :: CreateUser -> TestTree-requestCreateUser = req- "CreateUser"- "fixture/CreateUser.yaml"--requestPutRolePolicy :: PutRolePolicy -> TestTree-requestPutRolePolicy = req- "PutRolePolicy"- "fixture/PutRolePolicy.yaml"--requestGetContextKeysForCustomPolicy :: GetContextKeysForCustomPolicy -> TestTree-requestGetContextKeysForCustomPolicy = req- "GetContextKeysForCustomPolicy"- "fixture/GetContextKeysForCustomPolicy.yaml"--requestUploadSigningCertificate :: UploadSigningCertificate -> TestTree-requestUploadSigningCertificate = req- "UploadSigningCertificate"- "fixture/UploadSigningCertificate.yaml"--requestDeleteRolePolicy :: DeleteRolePolicy -> TestTree-requestDeleteRolePolicy = req- "DeleteRolePolicy"- "fixture/DeleteRolePolicy.yaml"--requestGetAccountPasswordPolicy :: GetAccountPasswordPolicy -> TestTree-requestGetAccountPasswordPolicy = req- "GetAccountPasswordPolicy"- "fixture/GetAccountPasswordPolicy.yaml"--requestGetAccessKeyLastUsed :: GetAccessKeyLastUsed -> TestTree-requestGetAccessKeyLastUsed = req- "GetAccessKeyLastUsed"- "fixture/GetAccessKeyLastUsed.yaml"--requestUpdateUser :: UpdateUser -> TestTree-requestUpdateUser = req- "UpdateUser"- "fixture/UpdateUser.yaml"--requestDeleteUser :: DeleteUser -> TestTree-requestDeleteUser = req- "DeleteUser"- "fixture/DeleteUser.yaml"--requestAddClientIdToOpenIdConnectProvider :: AddClientIdToOpenIdConnectProvider -> TestTree-requestAddClientIdToOpenIdConnectProvider = req- "AddClientIdToOpenIdConnectProvider"- "fixture/AddClientIdToOpenIdConnectProvider.yaml"--requestListRolePolicies :: ListRolePolicies -> TestTree-requestListRolePolicies = req- "ListRolePolicies"- "fixture/ListRolePolicies.yaml"--requestCreateAccountAlias :: CreateAccountAlias -> TestTree-requestCreateAccountAlias = req- "CreateAccountAlias"- "fixture/CreateAccountAlias.yaml"--requestListInstanceProfiles :: ListInstanceProfiles -> TestTree-requestListInstanceProfiles = req- "ListInstanceProfiles"- "fixture/ListInstanceProfiles.yaml"--requestEnableMFADevice :: EnableMFADevice -> TestTree-requestEnableMFADevice = req- "EnableMFADevice"- "fixture/EnableMFADevice.yaml"--requestListAccountAliases :: ListAccountAliases -> TestTree-requestListAccountAliases = req- "ListAccountAliases"- "fixture/ListAccountAliases.yaml"--requestDeleteSAMLProvider :: DeleteSAMLProvider -> TestTree-requestDeleteSAMLProvider = req- "DeleteSAMLProvider"- "fixture/DeleteSAMLProvider.yaml"--requestUpdateSAMLProvider :: UpdateSAMLProvider -> TestTree-requestUpdateSAMLProvider = req- "UpdateSAMLProvider"- "fixture/UpdateSAMLProvider.yaml"--requestCreateGroup :: CreateGroup -> TestTree-requestCreateGroup = req- "CreateGroup"- "fixture/CreateGroup.yaml"--requestListMFADevices :: ListMFADevices -> TestTree-requestListMFADevices = req- "ListMFADevices"- "fixture/ListMFADevices.yaml"--requestUploadServerCertificate :: UploadServerCertificate -> TestTree-requestUploadServerCertificate = req- "UploadServerCertificate"- "fixture/UploadServerCertificate.yaml"--requestSetDefaultPolicyVersion :: SetDefaultPolicyVersion -> TestTree-requestSetDefaultPolicyVersion = req- "SetDefaultPolicyVersion"- "fixture/SetDefaultPolicyVersion.yaml"--requestListPolicyVersions :: ListPolicyVersions -> TestTree-requestListPolicyVersions = req- "ListPolicyVersions"- "fixture/ListPolicyVersions.yaml"--requestUpdateRoleDescription :: UpdateRoleDescription -> TestTree-requestUpdateRoleDescription = req- "UpdateRoleDescription"- "fixture/UpdateRoleDescription.yaml"--requestListSAMLProviders :: ListSAMLProviders -> TestTree-requestListSAMLProviders = req- "ListSAMLProviders"- "fixture/ListSAMLProviders.yaml"--requestGetServerCertificate :: GetServerCertificate -> TestTree-requestGetServerCertificate = req- "GetServerCertificate"- "fixture/GetServerCertificate.yaml"--requestDeleteGroup :: DeleteGroup -> TestTree-requestDeleteGroup = req- "DeleteGroup"- "fixture/DeleteGroup.yaml"--requestUpdateGroup :: UpdateGroup -> TestTree-requestUpdateGroup = req- "UpdateGroup"- "fixture/UpdateGroup.yaml"--requestListGroups :: ListGroups -> TestTree-requestListGroups = req- "ListGroups"- "fixture/ListGroups.yaml"--requestGenerateCredentialReport :: GenerateCredentialReport -> TestTree-requestGenerateCredentialReport = req- "GenerateCredentialReport"- "fixture/GenerateCredentialReport.yaml"--requestGetPolicy :: GetPolicy -> TestTree-requestGetPolicy = req- "GetPolicy"- "fixture/GetPolicy.yaml"--requestUpdateLoginProfile :: UpdateLoginProfile -> TestTree-requestUpdateLoginProfile = req- "UpdateLoginProfile"- "fixture/UpdateLoginProfile.yaml"--requestDeleteLoginProfile :: DeleteLoginProfile -> TestTree-requestDeleteLoginProfile = req- "DeleteLoginProfile"- "fixture/DeleteLoginProfile.yaml"--requestGetGroup :: GetGroup -> TestTree-requestGetGroup = req- "GetGroup"- "fixture/GetGroup.yaml"--requestDeleteServerCertificate :: DeleteServerCertificate -> TestTree-requestDeleteServerCertificate = req- "DeleteServerCertificate"- "fixture/DeleteServerCertificate.yaml"--requestUpdateServerCertificate :: UpdateServerCertificate -> TestTree-requestUpdateServerCertificate = req- "UpdateServerCertificate"- "fixture/UpdateServerCertificate.yaml"--requestListAttachedGroupPolicies :: ListAttachedGroupPolicies -> TestTree-requestListAttachedGroupPolicies = req- "ListAttachedGroupPolicies"- "fixture/ListAttachedGroupPolicies.yaml"---- Responses--responseGetContextKeysForPrincipalPolicy :: GetContextKeysForPolicyResponse -> TestTree-responseGetContextKeysForPrincipalPolicy = res- "GetContextKeysForPrincipalPolicyResponse"- "fixture/GetContextKeysForPrincipalPolicyResponse.proto"- iam- (Proxy :: Proxy GetContextKeysForPrincipalPolicy)--responseListPolicies :: ListPoliciesResponse -> TestTree-responseListPolicies = res- "ListPoliciesResponse"- "fixture/ListPoliciesResponse.proto"- iam- (Proxy :: Proxy ListPolicies)--responseCreatePolicy :: CreatePolicyResponse -> TestTree-responseCreatePolicy = res- "CreatePolicyResponse"- "fixture/CreatePolicyResponse.proto"- iam- (Proxy :: Proxy CreatePolicy)--responseListInstanceProfilesForRole :: ListInstanceProfilesForRoleResponse -> TestTree-responseListInstanceProfilesForRole = res- "ListInstanceProfilesForRoleResponse"- "fixture/ListInstanceProfilesForRoleResponse.proto"- iam- (Proxy :: Proxy ListInstanceProfilesForRole)--responseAttachGroupPolicy :: AttachGroupPolicyResponse -> TestTree-responseAttachGroupPolicy = res- "AttachGroupPolicyResponse"- "fixture/AttachGroupPolicyResponse.proto"- iam- (Proxy :: Proxy AttachGroupPolicy)--responseCreateAccessKey :: CreateAccessKeyResponse -> TestTree-responseCreateAccessKey = res- "CreateAccessKeyResponse"- "fixture/CreateAccessKeyResponse.proto"- iam- (Proxy :: Proxy CreateAccessKey)--responseListSSHPublicKeys :: ListSSHPublicKeysResponse -> TestTree-responseListSSHPublicKeys = res- "ListSSHPublicKeysResponse"- "fixture/ListSSHPublicKeysResponse.proto"- iam- (Proxy :: Proxy ListSSHPublicKeys)--responseListOpenIdConnectProviders :: ListOpenIdConnectProvidersResponse -> TestTree-responseListOpenIdConnectProviders = res- "ListOpenIdConnectProvidersResponse"- "fixture/ListOpenIdConnectProvidersResponse.proto"- iam- (Proxy :: Proxy ListOpenIdConnectProviders)--responseCreateVirtualMFADevice :: CreateVirtualMFADeviceResponse -> TestTree-responseCreateVirtualMFADevice = res- "CreateVirtualMFADeviceResponse"- "fixture/CreateVirtualMFADeviceResponse.proto"- iam- (Proxy :: Proxy CreateVirtualMFADevice)--responseDeleteAccountPasswordPolicy :: DeleteAccountPasswordPolicyResponse -> TestTree-responseDeleteAccountPasswordPolicy = res- "DeleteAccountPasswordPolicyResponse"- "fixture/DeleteAccountPasswordPolicyResponse.proto"- iam- (Proxy :: Proxy DeleteAccountPasswordPolicy)--responseUpdateAccountPasswordPolicy :: UpdateAccountPasswordPolicyResponse -> TestTree-responseUpdateAccountPasswordPolicy = res- "UpdateAccountPasswordPolicyResponse"- "fixture/UpdateAccountPasswordPolicyResponse.proto"- iam- (Proxy :: Proxy UpdateAccountPasswordPolicy)--responseAttachRolePolicy :: AttachRolePolicyResponse -> TestTree-responseAttachRolePolicy = res- "AttachRolePolicyResponse"- "fixture/AttachRolePolicyResponse.proto"- iam- (Proxy :: Proxy AttachRolePolicy)--responseUpdateSSHPublicKey :: UpdateSSHPublicKeyResponse -> TestTree-responseUpdateSSHPublicKey = res- "UpdateSSHPublicKeyResponse"- "fixture/UpdateSSHPublicKeyResponse.proto"- iam- (Proxy :: Proxy UpdateSSHPublicKey)--responseDeleteSSHPublicKey :: DeleteSSHPublicKeyResponse -> TestTree-responseDeleteSSHPublicKey = res- "DeleteSSHPublicKeyResponse"- "fixture/DeleteSSHPublicKeyResponse.proto"- iam- (Proxy :: Proxy DeleteSSHPublicKey)--responseGetUserPolicy :: GetUserPolicyResponse -> TestTree-responseGetUserPolicy = res- "GetUserPolicyResponse"- "fixture/GetUserPolicyResponse.proto"- iam- (Proxy :: Proxy GetUserPolicy)--responseUpdateServiceSpecificCredential :: UpdateServiceSpecificCredentialResponse -> TestTree-responseUpdateServiceSpecificCredential = res- "UpdateServiceSpecificCredentialResponse"- "fixture/UpdateServiceSpecificCredentialResponse.proto"- iam- (Proxy :: Proxy UpdateServiceSpecificCredential)--responseDeleteServiceSpecificCredential :: DeleteServiceSpecificCredentialResponse -> TestTree-responseDeleteServiceSpecificCredential = res- "DeleteServiceSpecificCredentialResponse"- "fixture/DeleteServiceSpecificCredentialResponse.proto"- iam- (Proxy :: Proxy DeleteServiceSpecificCredential)--responseListAttachedRolePolicies :: ListAttachedRolePoliciesResponse -> TestTree-responseListAttachedRolePolicies = res- "ListAttachedRolePoliciesResponse"- "fixture/ListAttachedRolePoliciesResponse.proto"- iam- (Proxy :: Proxy ListAttachedRolePolicies)--responseGetRole :: GetRoleResponse -> TestTree-responseGetRole = res- "GetRoleResponse"- "fixture/GetRoleResponse.proto"- iam- (Proxy :: Proxy GetRole)--responseDeactivateMFADevice :: DeactivateMFADeviceResponse -> TestTree-responseDeactivateMFADevice = res- "DeactivateMFADeviceResponse"- "fixture/DeactivateMFADeviceResponse.proto"- iam- (Proxy :: Proxy DeactivateMFADevice)--responseCreateOpenIdConnectProvider :: CreateOpenIdConnectProviderResponse -> TestTree-responseCreateOpenIdConnectProvider = res- "CreateOpenIdConnectProviderResponse"- "fixture/CreateOpenIdConnectProviderResponse.proto"- iam- (Proxy :: Proxy CreateOpenIdConnectProvider)--responseDeleteVirtualMFADevice :: DeleteVirtualMFADeviceResponse -> TestTree-responseDeleteVirtualMFADevice = res- "DeleteVirtualMFADeviceResponse"- "fixture/DeleteVirtualMFADeviceResponse.proto"- iam- (Proxy :: Proxy DeleteVirtualMFADevice)--responseListRoles :: ListRolesResponse -> TestTree-responseListRoles = res- "ListRolesResponse"- "fixture/ListRolesResponse.proto"- iam- (Proxy :: Proxy ListRoles)--responseListUserPolicies :: ListUserPoliciesResponse -> TestTree-responseListUserPolicies = res- "ListUserPoliciesResponse"- "fixture/ListUserPoliciesResponse.proto"- iam- (Proxy :: Proxy ListUserPolicies)--responseUploadSSHPublicKey :: UploadSSHPublicKeyResponse -> TestTree-responseUploadSSHPublicKey = res- "UploadSSHPublicKeyResponse"- "fixture/UploadSSHPublicKeyResponse.proto"- iam- (Proxy :: Proxy UploadSSHPublicKey)--responseSimulateCustomPolicy :: SimulatePolicyResponse -> TestTree-responseSimulateCustomPolicy = res- "SimulateCustomPolicyResponse"- "fixture/SimulateCustomPolicyResponse.proto"- iam- (Proxy :: Proxy SimulateCustomPolicy)--responseUpdateRole :: UpdateRoleResponse -> TestTree-responseUpdateRole = res- "UpdateRoleResponse"- "fixture/UpdateRoleResponse.proto"- iam- (Proxy :: Proxy UpdateRole)--responseDeleteRole :: DeleteRoleResponse -> TestTree-responseDeleteRole = res- "DeleteRoleResponse"- "fixture/DeleteRoleResponse.proto"- iam- (Proxy :: Proxy DeleteRole)--responseListUsers :: ListUsersResponse -> TestTree-responseListUsers = res- "ListUsersResponse"- "fixture/ListUsersResponse.proto"- iam- (Proxy :: Proxy ListUsers)--responseUpdateOpenIdConnectProviderThumbprint :: UpdateOpenIdConnectProviderThumbprintResponse -> TestTree-responseUpdateOpenIdConnectProviderThumbprint = res- "UpdateOpenIdConnectProviderThumbprintResponse"- "fixture/UpdateOpenIdConnectProviderThumbprintResponse.proto"- iam- (Proxy :: Proxy UpdateOpenIdConnectProviderThumbprint)--responsePutUserPolicy :: PutUserPolicyResponse -> TestTree-responsePutUserPolicy = res- "PutUserPolicyResponse"- "fixture/PutUserPolicyResponse.proto"- iam- (Proxy :: Proxy PutUserPolicy)--responseGetSSHPublicKey :: GetSSHPublicKeyResponse -> TestTree-responseGetSSHPublicKey = res- "GetSSHPublicKeyResponse"- "fixture/GetSSHPublicKeyResponse.proto"- iam- (Proxy :: Proxy GetSSHPublicKey)--responseDetachGroupPolicy :: DetachGroupPolicyResponse -> TestTree-responseDetachGroupPolicy = res- "DetachGroupPolicyResponse"- "fixture/DetachGroupPolicyResponse.proto"- iam- (Proxy :: Proxy DetachGroupPolicy)--responseGetOpenIdConnectProvider :: GetOpenIdConnectProviderResponse -> TestTree-responseGetOpenIdConnectProvider = res- "GetOpenIdConnectProviderResponse"- "fixture/GetOpenIdConnectProviderResponse.proto"- iam- (Proxy :: Proxy GetOpenIdConnectProvider)--responseDeleteUserPolicy :: DeleteUserPolicyResponse -> TestTree-responseDeleteUserPolicy = res- "DeleteUserPolicyResponse"- "fixture/DeleteUserPolicyResponse.proto"- iam- (Proxy :: Proxy DeleteUserPolicy)--responseCreateRole :: CreateRoleResponse -> TestTree-responseCreateRole = res- "CreateRoleResponse"- "fixture/CreateRoleResponse.proto"- iam- (Proxy :: Proxy CreateRole)--responseResetServiceSpecificCredential :: ResetServiceSpecificCredentialResponse -> TestTree-responseResetServiceSpecificCredential = res- "ResetServiceSpecificCredentialResponse"- "fixture/ResetServiceSpecificCredentialResponse.proto"- iam- (Proxy :: Proxy ResetServiceSpecificCredential)--responseGetCredentialReport :: GetCredentialReportResponse -> TestTree-responseGetCredentialReport = res- "GetCredentialReportResponse"- "fixture/GetCredentialReportResponse.proto"- iam- (Proxy :: Proxy GetCredentialReport)--responseGetAccountSummary :: GetAccountSummaryResponse -> TestTree-responseGetAccountSummary = res- "GetAccountSummaryResponse"- "fixture/GetAccountSummaryResponse.proto"- iam- (Proxy :: Proxy GetAccountSummary)--responseListGroupPolicies :: ListGroupPoliciesResponse -> TestTree-responseListGroupPolicies = res- "ListGroupPoliciesResponse"- "fixture/ListGroupPoliciesResponse.proto"- iam- (Proxy :: Proxy ListGroupPolicies)--responseDeletePolicyVersion :: DeletePolicyVersionResponse -> TestTree-responseDeletePolicyVersion = res- "DeletePolicyVersionResponse"- "fixture/DeletePolicyVersionResponse.proto"- iam- (Proxy :: Proxy DeletePolicyVersion)--responseDeleteInstanceProfile :: DeleteInstanceProfileResponse -> TestTree-responseDeleteInstanceProfile = res- "DeleteInstanceProfileResponse"- "fixture/DeleteInstanceProfileResponse.proto"- iam- (Proxy :: Proxy DeleteInstanceProfile)--responseDetachRolePolicy :: DetachRolePolicyResponse -> TestTree-responseDetachRolePolicy = res- "DetachRolePolicyResponse"- "fixture/DetachRolePolicyResponse.proto"- iam- (Proxy :: Proxy DetachRolePolicy)--responseRemoveRoleFromInstanceProfile :: RemoveRoleFromInstanceProfileResponse -> TestTree-responseRemoveRoleFromInstanceProfile = res- "RemoveRoleFromInstanceProfileResponse"- "fixture/RemoveRoleFromInstanceProfileResponse.proto"- iam- (Proxy :: Proxy RemoveRoleFromInstanceProfile)--responseCreatePolicyVersion :: CreatePolicyVersionResponse -> TestTree-responseCreatePolicyVersion = res- "CreatePolicyVersionResponse"- "fixture/CreatePolicyVersionResponse.proto"- iam- (Proxy :: Proxy CreatePolicyVersion)--responseCreateInstanceProfile :: CreateInstanceProfileResponse -> TestTree-responseCreateInstanceProfile = res- "CreateInstanceProfileResponse"- "fixture/CreateInstanceProfileResponse.proto"- iam- (Proxy :: Proxy CreateInstanceProfile)--responseCreateSAMLProvider :: CreateSAMLProviderResponse -> TestTree-responseCreateSAMLProvider = res- "CreateSAMLProviderResponse"- "fixture/CreateSAMLProviderResponse.proto"- iam- (Proxy :: Proxy CreateSAMLProvider)--responseGetAccountAuthorizationDetails :: GetAccountAuthorizationDetailsResponse -> TestTree-responseGetAccountAuthorizationDetails = res- "GetAccountAuthorizationDetailsResponse"- "fixture/GetAccountAuthorizationDetailsResponse.proto"- iam- (Proxy :: Proxy GetAccountAuthorizationDetails)--responseGetServiceLinkedRoleDeletionStatus :: GetServiceLinkedRoleDeletionStatusResponse -> TestTree-responseGetServiceLinkedRoleDeletionStatus = res- "GetServiceLinkedRoleDeletionStatusResponse"- "fixture/GetServiceLinkedRoleDeletionStatusResponse.proto"- iam- (Proxy :: Proxy GetServiceLinkedRoleDeletionStatus)--responseDeleteAccountAlias :: DeleteAccountAliasResponse -> TestTree-responseDeleteAccountAlias = res- "DeleteAccountAliasResponse"- "fixture/DeleteAccountAliasResponse.proto"- iam- (Proxy :: Proxy DeleteAccountAlias)--responseDetachUserPolicy :: DetachUserPolicyResponse -> TestTree-responseDetachUserPolicy = res- "DetachUserPolicyResponse"- "fixture/DetachUserPolicyResponse.proto"- iam- (Proxy :: Proxy DetachUserPolicy)--responseRemoveUserFromGroup :: RemoveUserFromGroupResponse -> TestTree-responseRemoveUserFromGroup = res- "RemoveUserFromGroupResponse"- "fixture/RemoveUserFromGroupResponse.proto"- iam- (Proxy :: Proxy RemoveUserFromGroup)--responseDeleteGroupPolicy :: DeleteGroupPolicyResponse -> TestTree-responseDeleteGroupPolicy = res- "DeleteGroupPolicyResponse"- "fixture/DeleteGroupPolicyResponse.proto"- iam- (Proxy :: Proxy DeleteGroupPolicy)--responsePutGroupPolicy :: PutGroupPolicyResponse -> TestTree-responsePutGroupPolicy = res- "PutGroupPolicyResponse"- "fixture/PutGroupPolicyResponse.proto"- iam- (Proxy :: Proxy PutGroupPolicy)--responseGetLoginProfile :: GetLoginProfileResponse -> TestTree-responseGetLoginProfile = res- "GetLoginProfileResponse"- "fixture/GetLoginProfileResponse.proto"- iam- (Proxy :: Proxy GetLoginProfile)--responseGetGroupPolicy :: GetGroupPolicyResponse -> TestTree-responseGetGroupPolicy = res- "GetGroupPolicyResponse"- "fixture/GetGroupPolicyResponse.proto"- iam- (Proxy :: Proxy GetGroupPolicy)--responseChangePassword :: ChangePasswordResponse -> TestTree-responseChangePassword = res- "ChangePasswordResponse"- "fixture/ChangePasswordResponse.proto"- iam- (Proxy :: Proxy ChangePassword)--responseListServerCertificates :: ListServerCertificatesResponse -> TestTree-responseListServerCertificates = res- "ListServerCertificatesResponse"- "fixture/ListServerCertificatesResponse.proto"- iam- (Proxy :: Proxy ListServerCertificates)--responseDeleteServiceLinkedRole :: DeleteServiceLinkedRoleResponse -> TestTree-responseDeleteServiceLinkedRole = res- "DeleteServiceLinkedRoleResponse"- "fixture/DeleteServiceLinkedRoleResponse.proto"- iam- (Proxy :: Proxy DeleteServiceLinkedRole)--responseDeletePolicy :: DeletePolicyResponse -> TestTree-responseDeletePolicy = res- "DeletePolicyResponse"- "fixture/DeletePolicyResponse.proto"- iam- (Proxy :: Proxy DeletePolicy)--responseUpdateAssumeRolePolicy :: UpdateAssumeRolePolicyResponse -> TestTree-responseUpdateAssumeRolePolicy = res- "UpdateAssumeRolePolicyResponse"- "fixture/UpdateAssumeRolePolicyResponse.proto"- iam- (Proxy :: Proxy UpdateAssumeRolePolicy)--responseGetInstanceProfile :: GetInstanceProfileResponse -> TestTree-responseGetInstanceProfile = res- "GetInstanceProfileResponse"- "fixture/GetInstanceProfileResponse.proto"- iam- (Proxy :: Proxy GetInstanceProfile)--responseCreateLoginProfile :: CreateLoginProfileResponse -> TestTree-responseCreateLoginProfile = res- "CreateLoginProfileResponse"- "fixture/CreateLoginProfileResponse.proto"- iam- (Proxy :: Proxy CreateLoginProfile)--responseGetSAMLProvider :: GetSAMLProviderResponse -> TestTree-responseGetSAMLProvider = res- "GetSAMLProviderResponse"- "fixture/GetSAMLProviderResponse.proto"- iam- (Proxy :: Proxy GetSAMLProvider)--responseAddRoleToInstanceProfile :: AddRoleToInstanceProfileResponse -> TestTree-responseAddRoleToInstanceProfile = res- "AddRoleToInstanceProfileResponse"- "fixture/AddRoleToInstanceProfileResponse.proto"- iam- (Proxy :: Proxy AddRoleToInstanceProfile)--responseListGroupsForUser :: ListGroupsForUserResponse -> TestTree-responseListGroupsForUser = res- "ListGroupsForUserResponse"- "fixture/ListGroupsForUserResponse.proto"- iam- (Proxy :: Proxy ListGroupsForUser)--responseListEntitiesForPolicy :: ListEntitiesForPolicyResponse -> TestTree-responseListEntitiesForPolicy = res- "ListEntitiesForPolicyResponse"- "fixture/ListEntitiesForPolicyResponse.proto"- iam- (Proxy :: Proxy ListEntitiesForPolicy)--responseAddUserToGroup :: AddUserToGroupResponse -> TestTree-responseAddUserToGroup = res- "AddUserToGroupResponse"- "fixture/AddUserToGroupResponse.proto"- iam- (Proxy :: Proxy AddUserToGroup)--responseSimulatePrincipalPolicy :: SimulatePolicyResponse -> TestTree-responseSimulatePrincipalPolicy = res- "SimulatePrincipalPolicyResponse"- "fixture/SimulatePrincipalPolicyResponse.proto"- iam- (Proxy :: Proxy SimulatePrincipalPolicy)--responseGetPolicyVersion :: GetPolicyVersionResponse -> TestTree-responseGetPolicyVersion = res- "GetPolicyVersionResponse"- "fixture/GetPolicyVersionResponse.proto"- iam- (Proxy :: Proxy GetPolicyVersion)--responseCreateServiceLinkedRole :: CreateServiceLinkedRoleResponse -> TestTree-responseCreateServiceLinkedRole = res- "CreateServiceLinkedRoleResponse"- "fixture/CreateServiceLinkedRoleResponse.proto"- iam- (Proxy :: Proxy CreateServiceLinkedRole)--responseListServiceSpecificCredentials :: ListServiceSpecificCredentialsResponse -> TestTree-responseListServiceSpecificCredentials = res- "ListServiceSpecificCredentialsResponse"- "fixture/ListServiceSpecificCredentialsResponse.proto"- iam- (Proxy :: Proxy ListServiceSpecificCredentials)--responseDeleteOpenIdConnectProvider :: DeleteOpenIdConnectProviderResponse -> TestTree-responseDeleteOpenIdConnectProvider = res- "DeleteOpenIdConnectProviderResponse"- "fixture/DeleteOpenIdConnectProviderResponse.proto"- iam- (Proxy :: Proxy DeleteOpenIdConnectProvider)--responseGetUser :: GetUserResponse -> TestTree-responseGetUser = res- "GetUserResponse"- "fixture/GetUserResponse.proto"- iam- (Proxy :: Proxy GetUser)--responseListSigningCertificates :: ListSigningCertificatesResponse -> TestTree-responseListSigningCertificates = res- "ListSigningCertificatesResponse"- "fixture/ListSigningCertificatesResponse.proto"- iam- (Proxy :: Proxy ListSigningCertificates)--responseDeleteSigningCertificate :: DeleteSigningCertificateResponse -> TestTree-responseDeleteSigningCertificate = res- "DeleteSigningCertificateResponse"- "fixture/DeleteSigningCertificateResponse.proto"- iam- (Proxy :: Proxy DeleteSigningCertificate)--responseUpdateSigningCertificate :: UpdateSigningCertificateResponse -> TestTree-responseUpdateSigningCertificate = res- "UpdateSigningCertificateResponse"- "fixture/UpdateSigningCertificateResponse.proto"- iam- (Proxy :: Proxy UpdateSigningCertificate)--responseListAttachedUserPolicies :: ListAttachedUserPoliciesResponse -> TestTree-responseListAttachedUserPolicies = res- "ListAttachedUserPoliciesResponse"- "fixture/ListAttachedUserPoliciesResponse.proto"- iam- (Proxy :: Proxy ListAttachedUserPolicies)--responseRemoveClientIdFromOpenIdConnectProvider :: RemoveClientIdFromOpenIdConnectProviderResponse -> TestTree-responseRemoveClientIdFromOpenIdConnectProvider = res- "RemoveClientIdFromOpenIdConnectProviderResponse"- "fixture/RemoveClientIdFromOpenIdConnectProviderResponse.proto"- iam- (Proxy :: Proxy RemoveClientIdFromOpenIdConnectProvider)--responseAttachUserPolicy :: AttachUserPolicyResponse -> TestTree-responseAttachUserPolicy = res- "AttachUserPolicyResponse"- "fixture/AttachUserPolicyResponse.proto"- iam- (Proxy :: Proxy AttachUserPolicy)--responseCreateServiceSpecificCredential :: CreateServiceSpecificCredentialResponse -> TestTree-responseCreateServiceSpecificCredential = res- "CreateServiceSpecificCredentialResponse"- "fixture/CreateServiceSpecificCredentialResponse.proto"- iam- (Proxy :: Proxy CreateServiceSpecificCredential)--responseListVirtualMFADevices :: ListVirtualMFADevicesResponse -> TestTree-responseListVirtualMFADevices = res- "ListVirtualMFADevicesResponse"- "fixture/ListVirtualMFADevicesResponse.proto"- iam- (Proxy :: Proxy ListVirtualMFADevices)--responseResyncMFADevice :: ResyncMFADeviceResponse -> TestTree-responseResyncMFADevice = res- "ResyncMFADeviceResponse"- "fixture/ResyncMFADeviceResponse.proto"- iam- (Proxy :: Proxy ResyncMFADevice)--responseDeleteAccessKey :: DeleteAccessKeyResponse -> TestTree-responseDeleteAccessKey = res- "DeleteAccessKeyResponse"- "fixture/DeleteAccessKeyResponse.proto"- iam- (Proxy :: Proxy DeleteAccessKey)--responseUpdateAccessKey :: UpdateAccessKeyResponse -> TestTree-responseUpdateAccessKey = res- "UpdateAccessKeyResponse"- "fixture/UpdateAccessKeyResponse.proto"- iam- (Proxy :: Proxy UpdateAccessKey)--responseListAccessKeys :: ListAccessKeysResponse -> TestTree-responseListAccessKeys = res- "ListAccessKeysResponse"- "fixture/ListAccessKeysResponse.proto"- iam- (Proxy :: Proxy ListAccessKeys)--responseGetRolePolicy :: GetRolePolicyResponse -> TestTree-responseGetRolePolicy = res- "GetRolePolicyResponse"- "fixture/GetRolePolicyResponse.proto"- iam- (Proxy :: Proxy GetRolePolicy)--responseCreateUser :: CreateUserResponse -> TestTree-responseCreateUser = res- "CreateUserResponse"- "fixture/CreateUserResponse.proto"- iam- (Proxy :: Proxy CreateUser)--responsePutRolePolicy :: PutRolePolicyResponse -> TestTree-responsePutRolePolicy = res- "PutRolePolicyResponse"- "fixture/PutRolePolicyResponse.proto"- iam- (Proxy :: Proxy PutRolePolicy)--responseGetContextKeysForCustomPolicy :: GetContextKeysForPolicyResponse -> TestTree-responseGetContextKeysForCustomPolicy = res- "GetContextKeysForCustomPolicyResponse"- "fixture/GetContextKeysForCustomPolicyResponse.proto"- iam- (Proxy :: Proxy GetContextKeysForCustomPolicy)--responseUploadSigningCertificate :: UploadSigningCertificateResponse -> TestTree-responseUploadSigningCertificate = res- "UploadSigningCertificateResponse"- "fixture/UploadSigningCertificateResponse.proto"- iam- (Proxy :: Proxy UploadSigningCertificate)--responseDeleteRolePolicy :: DeleteRolePolicyResponse -> TestTree-responseDeleteRolePolicy = res- "DeleteRolePolicyResponse"- "fixture/DeleteRolePolicyResponse.proto"- iam- (Proxy :: Proxy DeleteRolePolicy)--responseGetAccountPasswordPolicy :: GetAccountPasswordPolicyResponse -> TestTree-responseGetAccountPasswordPolicy = res- "GetAccountPasswordPolicyResponse"- "fixture/GetAccountPasswordPolicyResponse.proto"- iam- (Proxy :: Proxy GetAccountPasswordPolicy)--responseGetAccessKeyLastUsed :: GetAccessKeyLastUsedResponse -> TestTree-responseGetAccessKeyLastUsed = res- "GetAccessKeyLastUsedResponse"- "fixture/GetAccessKeyLastUsedResponse.proto"- iam- (Proxy :: Proxy GetAccessKeyLastUsed)--responseUpdateUser :: UpdateUserResponse -> TestTree-responseUpdateUser = res- "UpdateUserResponse"- "fixture/UpdateUserResponse.proto"- iam- (Proxy :: Proxy UpdateUser)--responseDeleteUser :: DeleteUserResponse -> TestTree-responseDeleteUser = res- "DeleteUserResponse"- "fixture/DeleteUserResponse.proto"- iam- (Proxy :: Proxy DeleteUser)--responseAddClientIdToOpenIdConnectProvider :: AddClientIdToOpenIdConnectProviderResponse -> TestTree-responseAddClientIdToOpenIdConnectProvider = res- "AddClientIdToOpenIdConnectProviderResponse"- "fixture/AddClientIdToOpenIdConnectProviderResponse.proto"- iam- (Proxy :: Proxy AddClientIdToOpenIdConnectProvider)--responseListRolePolicies :: ListRolePoliciesResponse -> TestTree-responseListRolePolicies = res- "ListRolePoliciesResponse"- "fixture/ListRolePoliciesResponse.proto"- iam- (Proxy :: Proxy ListRolePolicies)--responseCreateAccountAlias :: CreateAccountAliasResponse -> TestTree-responseCreateAccountAlias = res- "CreateAccountAliasResponse"- "fixture/CreateAccountAliasResponse.proto"- iam- (Proxy :: Proxy CreateAccountAlias)--responseListInstanceProfiles :: ListInstanceProfilesResponse -> TestTree-responseListInstanceProfiles = res- "ListInstanceProfilesResponse"- "fixture/ListInstanceProfilesResponse.proto"- iam- (Proxy :: Proxy ListInstanceProfiles)--responseEnableMFADevice :: EnableMFADeviceResponse -> TestTree-responseEnableMFADevice = res- "EnableMFADeviceResponse"- "fixture/EnableMFADeviceResponse.proto"- iam- (Proxy :: Proxy EnableMFADevice)--responseListAccountAliases :: ListAccountAliasesResponse -> TestTree-responseListAccountAliases = res- "ListAccountAliasesResponse"- "fixture/ListAccountAliasesResponse.proto"- iam- (Proxy :: Proxy ListAccountAliases)--responseDeleteSAMLProvider :: DeleteSAMLProviderResponse -> TestTree-responseDeleteSAMLProvider = res- "DeleteSAMLProviderResponse"- "fixture/DeleteSAMLProviderResponse.proto"- iam- (Proxy :: Proxy DeleteSAMLProvider)--responseUpdateSAMLProvider :: UpdateSAMLProviderResponse -> TestTree-responseUpdateSAMLProvider = res- "UpdateSAMLProviderResponse"- "fixture/UpdateSAMLProviderResponse.proto"- iam- (Proxy :: Proxy UpdateSAMLProvider)--responseCreateGroup :: CreateGroupResponse -> TestTree-responseCreateGroup = res- "CreateGroupResponse"- "fixture/CreateGroupResponse.proto"- iam- (Proxy :: Proxy CreateGroup)--responseListMFADevices :: ListMFADevicesResponse -> TestTree-responseListMFADevices = res- "ListMFADevicesResponse"- "fixture/ListMFADevicesResponse.proto"- iam- (Proxy :: Proxy ListMFADevices)--responseUploadServerCertificate :: UploadServerCertificateResponse -> TestTree-responseUploadServerCertificate = res- "UploadServerCertificateResponse"- "fixture/UploadServerCertificateResponse.proto"- iam- (Proxy :: Proxy UploadServerCertificate)--responseSetDefaultPolicyVersion :: SetDefaultPolicyVersionResponse -> TestTree-responseSetDefaultPolicyVersion = res- "SetDefaultPolicyVersionResponse"- "fixture/SetDefaultPolicyVersionResponse.proto"- iam- (Proxy :: Proxy SetDefaultPolicyVersion)--responseListPolicyVersions :: ListPolicyVersionsResponse -> TestTree-responseListPolicyVersions = res- "ListPolicyVersionsResponse"- "fixture/ListPolicyVersionsResponse.proto"- iam- (Proxy :: Proxy ListPolicyVersions)--responseUpdateRoleDescription :: UpdateRoleDescriptionResponse -> TestTree-responseUpdateRoleDescription = res- "UpdateRoleDescriptionResponse"- "fixture/UpdateRoleDescriptionResponse.proto"- iam- (Proxy :: Proxy UpdateRoleDescription)--responseListSAMLProviders :: ListSAMLProvidersResponse -> TestTree-responseListSAMLProviders = res- "ListSAMLProvidersResponse"- "fixture/ListSAMLProvidersResponse.proto"- iam- (Proxy :: Proxy ListSAMLProviders)--responseGetServerCertificate :: GetServerCertificateResponse -> TestTree-responseGetServerCertificate = res- "GetServerCertificateResponse"- "fixture/GetServerCertificateResponse.proto"- iam- (Proxy :: Proxy GetServerCertificate)--responseDeleteGroup :: DeleteGroupResponse -> TestTree-responseDeleteGroup = res- "DeleteGroupResponse"- "fixture/DeleteGroupResponse.proto"- iam- (Proxy :: Proxy DeleteGroup)--responseUpdateGroup :: UpdateGroupResponse -> TestTree-responseUpdateGroup = res- "UpdateGroupResponse"- "fixture/UpdateGroupResponse.proto"- iam- (Proxy :: Proxy UpdateGroup)--responseListGroups :: ListGroupsResponse -> TestTree-responseListGroups = res- "ListGroupsResponse"- "fixture/ListGroupsResponse.proto"- iam- (Proxy :: Proxy ListGroups)--responseGenerateCredentialReport :: GenerateCredentialReportResponse -> TestTree-responseGenerateCredentialReport = res- "GenerateCredentialReportResponse"- "fixture/GenerateCredentialReportResponse.proto"- iam- (Proxy :: Proxy GenerateCredentialReport)--responseGetPolicy :: GetPolicyResponse -> TestTree-responseGetPolicy = res- "GetPolicyResponse"- "fixture/GetPolicyResponse.proto"- iam- (Proxy :: Proxy GetPolicy)--responseUpdateLoginProfile :: UpdateLoginProfileResponse -> TestTree-responseUpdateLoginProfile = res- "UpdateLoginProfileResponse"- "fixture/UpdateLoginProfileResponse.proto"- iam- (Proxy :: Proxy UpdateLoginProfile)--responseDeleteLoginProfile :: DeleteLoginProfileResponse -> TestTree-responseDeleteLoginProfile = res- "DeleteLoginProfileResponse"- "fixture/DeleteLoginProfileResponse.proto"- iam- (Proxy :: Proxy DeleteLoginProfile)--responseGetGroup :: GetGroupResponse -> TestTree-responseGetGroup = res- "GetGroupResponse"- "fixture/GetGroupResponse.proto"- iam- (Proxy :: Proxy GetGroup)--responseDeleteServerCertificate :: DeleteServerCertificateResponse -> TestTree-responseDeleteServerCertificate = res- "DeleteServerCertificateResponse"- "fixture/DeleteServerCertificateResponse.proto"- iam- (Proxy :: Proxy DeleteServerCertificate)--responseUpdateServerCertificate :: UpdateServerCertificateResponse -> TestTree-responseUpdateServerCertificate = res- "UpdateServerCertificateResponse"- "fixture/UpdateServerCertificateResponse.proto"- iam- (Proxy :: Proxy UpdateServerCertificate)--responseListAttachedGroupPolicies :: ListAttachedGroupPoliciesResponse -> TestTree-responseListAttachedGroupPolicies = res- "ListAttachedGroupPoliciesResponse"- "fixture/ListAttachedGroupPoliciesResponse.proto"- iam- (Proxy :: Proxy ListAttachedGroupPolicies)
− test/Test/AWS/IAM.hs
@@ -1,26 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}---- Module : Test.AWS.IAM--- Copyright : (c) 2013-2018 Brendan Hay--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.--- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental--- Portability : non-portable (GHC extensions)--module Test.AWS.IAM- ( tests- , fixtures- ) where--import Network.AWS.IAM-import Test.AWS.Gen.IAM-import Test.Tasty--tests :: [TestTree]-tests = []--fixtures :: [TestTree]-fixtures = []
− test/Test/AWS/IAM/Internal.hs
@@ -1,16 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# OPTIONS_GHC -fno-warn-unused-imports #-}---- Module : Test.AWS.IAM.Internal--- Copyright : (c) 2013-2018 Brendan Hay--- License : This Source Code Form is subject to the terms of--- the Mozilla Public License, v. 2.0.--- A copy of the MPL can be found in the LICENSE file or--- you can obtain it at http://mozilla.org/MPL/2.0/.--- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental--- Portability : non-portable (GHC extensions)--module Test.AWS.IAM.Internal where--import Test.AWS.Prelude
+ test/Test/Amazonka/Gen/IAM.hs view
@@ -0,0 +1,3198 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.Amazonka.Gen.IAM+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.IAM where++import Amazonka.IAM+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.IAM.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestAddClientIDToOpenIDConnectProvider $+-- newAddClientIDToOpenIDConnectProvider+--+-- , requestAddRoleToInstanceProfile $+-- newAddRoleToInstanceProfile+--+-- , requestAddUserToGroup $+-- newAddUserToGroup+--+-- , requestAttachGroupPolicy $+-- newAttachGroupPolicy+--+-- , requestAttachRolePolicy $+-- newAttachRolePolicy+--+-- , requestAttachUserPolicy $+-- newAttachUserPolicy+--+-- , requestChangePassword $+-- newChangePassword+--+-- , requestCreateAccessKey $+-- newCreateAccessKey+--+-- , requestCreateAccountAlias $+-- newCreateAccountAlias+--+-- , requestCreateGroup $+-- newCreateGroup+--+-- , requestCreateInstanceProfile $+-- newCreateInstanceProfile+--+-- , requestCreateLoginProfile $+-- newCreateLoginProfile+--+-- , requestCreateOpenIDConnectProvider $+-- newCreateOpenIDConnectProvider+--+-- , requestCreatePolicy $+-- newCreatePolicy+--+-- , requestCreatePolicyVersion $+-- newCreatePolicyVersion+--+-- , requestCreateRole $+-- newCreateRole+--+-- , requestCreateSAMLProvider $+-- newCreateSAMLProvider+--+-- , requestCreateServiceLinkedRole $+-- newCreateServiceLinkedRole+--+-- , requestCreateServiceSpecificCredential $+-- newCreateServiceSpecificCredential+--+-- , requestCreateUser $+-- newCreateUser+--+-- , requestCreateVirtualMFADevice $+-- newCreateVirtualMFADevice+--+-- , requestDeactivateMFADevice $+-- newDeactivateMFADevice+--+-- , requestDeleteAccessKey $+-- newDeleteAccessKey+--+-- , requestDeleteAccountAlias $+-- newDeleteAccountAlias+--+-- , requestDeleteAccountPasswordPolicy $+-- newDeleteAccountPasswordPolicy+--+-- , requestDeleteGroup $+-- newDeleteGroup+--+-- , requestDeleteGroupPolicy $+-- newDeleteGroupPolicy+--+-- , requestDeleteInstanceProfile $+-- newDeleteInstanceProfile+--+-- , requestDeleteLoginProfile $+-- newDeleteLoginProfile+--+-- , requestDeleteOpenIDConnectProvider $+-- newDeleteOpenIDConnectProvider+--+-- , requestDeletePolicy $+-- newDeletePolicy+--+-- , requestDeletePolicyVersion $+-- newDeletePolicyVersion+--+-- , requestDeleteRole $+-- newDeleteRole+--+-- , requestDeleteRolePermissionsBoundary $+-- newDeleteRolePermissionsBoundary+--+-- , requestDeleteRolePolicy $+-- newDeleteRolePolicy+--+-- , requestDeleteSAMLProvider $+-- newDeleteSAMLProvider+--+-- , requestDeleteSSHPublicKey $+-- newDeleteSSHPublicKey+--+-- , requestDeleteServerCertificate $+-- newDeleteServerCertificate+--+-- , requestDeleteServiceLinkedRole $+-- newDeleteServiceLinkedRole+--+-- , requestDeleteServiceSpecificCredential $+-- newDeleteServiceSpecificCredential+--+-- , requestDeleteSigningCertificate $+-- newDeleteSigningCertificate+--+-- , requestDeleteUser $+-- newDeleteUser+--+-- , requestDeleteUserPermissionsBoundary $+-- newDeleteUserPermissionsBoundary+--+-- , requestDeleteUserPolicy $+-- newDeleteUserPolicy+--+-- , requestDeleteVirtualMFADevice $+-- newDeleteVirtualMFADevice+--+-- , requestDetachGroupPolicy $+-- newDetachGroupPolicy+--+-- , requestDetachRolePolicy $+-- newDetachRolePolicy+--+-- , requestDetachUserPolicy $+-- newDetachUserPolicy+--+-- , requestEnableMFADevice $+-- newEnableMFADevice+--+-- , requestGenerateCredentialReport $+-- newGenerateCredentialReport+--+-- , requestGenerateOrganizationsAccessReport $+-- newGenerateOrganizationsAccessReport+--+-- , requestGenerateServiceLastAccessedDetails $+-- newGenerateServiceLastAccessedDetails+--+-- , requestGetAccessKeyLastUsed $+-- newGetAccessKeyLastUsed+--+-- , requestGetAccountAuthorizationDetails $+-- newGetAccountAuthorizationDetails+--+-- , requestGetAccountPasswordPolicy $+-- newGetAccountPasswordPolicy+--+-- , requestGetAccountSummary $+-- newGetAccountSummary+--+-- , requestGetContextKeysForCustomPolicy $+-- newGetContextKeysForCustomPolicy+--+-- , requestGetContextKeysForPrincipalPolicy $+-- newGetContextKeysForPrincipalPolicy+--+-- , requestGetCredentialReport $+-- newGetCredentialReport+--+-- , requestGetGroup $+-- newGetGroup+--+-- , requestGetGroupPolicy $+-- newGetGroupPolicy+--+-- , requestGetInstanceProfile $+-- newGetInstanceProfile+--+-- , requestGetLoginProfile $+-- newGetLoginProfile+--+-- , requestGetOpenIDConnectProvider $+-- newGetOpenIDConnectProvider+--+-- , requestGetOrganizationsAccessReport $+-- newGetOrganizationsAccessReport+--+-- , requestGetPolicy $+-- newGetPolicy+--+-- , requestGetPolicyVersion $+-- newGetPolicyVersion+--+-- , requestGetRole $+-- newGetRole+--+-- , requestGetRolePolicy $+-- newGetRolePolicy+--+-- , requestGetSAMLProvider $+-- newGetSAMLProvider+--+-- , requestGetSSHPublicKey $+-- newGetSSHPublicKey+--+-- , requestGetServerCertificate $+-- newGetServerCertificate+--+-- , requestGetServiceLastAccessedDetails $+-- newGetServiceLastAccessedDetails+--+-- , requestGetServiceLastAccessedDetailsWithEntities $+-- newGetServiceLastAccessedDetailsWithEntities+--+-- , requestGetServiceLinkedRoleDeletionStatus $+-- newGetServiceLinkedRoleDeletionStatus+--+-- , requestGetUser $+-- newGetUser+--+-- , requestGetUserPolicy $+-- newGetUserPolicy+--+-- , requestListAccessKeys $+-- newListAccessKeys+--+-- , requestListAccountAliases $+-- newListAccountAliases+--+-- , requestListAttachedGroupPolicies $+-- newListAttachedGroupPolicies+--+-- , requestListAttachedRolePolicies $+-- newListAttachedRolePolicies+--+-- , requestListAttachedUserPolicies $+-- newListAttachedUserPolicies+--+-- , requestListEntitiesForPolicy $+-- newListEntitiesForPolicy+--+-- , requestListGroupPolicies $+-- newListGroupPolicies+--+-- , requestListGroups $+-- newListGroups+--+-- , requestListGroupsForUser $+-- newListGroupsForUser+--+-- , requestListInstanceProfileTags $+-- newListInstanceProfileTags+--+-- , requestListInstanceProfiles $+-- newListInstanceProfiles+--+-- , requestListInstanceProfilesForRole $+-- newListInstanceProfilesForRole+--+-- , requestListMFADeviceTags $+-- newListMFADeviceTags+--+-- , requestListMFADevices $+-- newListMFADevices+--+-- , requestListOpenIDConnectProviderTags $+-- newListOpenIDConnectProviderTags+--+-- , requestListOpenIDConnectProviders $+-- newListOpenIDConnectProviders+--+-- , requestListPolicies $+-- newListPolicies+--+-- , requestListPoliciesGrantingServiceAccess $+-- newListPoliciesGrantingServiceAccess+--+-- , requestListPolicyTags $+-- newListPolicyTags+--+-- , requestListPolicyVersions $+-- newListPolicyVersions+--+-- , requestListRolePolicies $+-- newListRolePolicies+--+-- , requestListRoleTags $+-- newListRoleTags+--+-- , requestListRoles $+-- newListRoles+--+-- , requestListSAMLProviderTags $+-- newListSAMLProviderTags+--+-- , requestListSAMLProviders $+-- newListSAMLProviders+--+-- , requestListSSHPublicKeys $+-- newListSSHPublicKeys+--+-- , requestListServerCertificateTags $+-- newListServerCertificateTags+--+-- , requestListServerCertificates $+-- newListServerCertificates+--+-- , requestListServiceSpecificCredentials $+-- newListServiceSpecificCredentials+--+-- , requestListSigningCertificates $+-- newListSigningCertificates+--+-- , requestListUserPolicies $+-- newListUserPolicies+--+-- , requestListUserTags $+-- newListUserTags+--+-- , requestListUsers $+-- newListUsers+--+-- , requestListVirtualMFADevices $+-- newListVirtualMFADevices+--+-- , requestPutGroupPolicy $+-- newPutGroupPolicy+--+-- , requestPutRolePermissionsBoundary $+-- newPutRolePermissionsBoundary+--+-- , requestPutRolePolicy $+-- newPutRolePolicy+--+-- , requestPutUserPermissionsBoundary $+-- newPutUserPermissionsBoundary+--+-- , requestPutUserPolicy $+-- newPutUserPolicy+--+-- , requestRemoveClientIDFromOpenIDConnectProvider $+-- newRemoveClientIDFromOpenIDConnectProvider+--+-- , requestRemoveRoleFromInstanceProfile $+-- newRemoveRoleFromInstanceProfile+--+-- , requestRemoveUserFromGroup $+-- newRemoveUserFromGroup+--+-- , requestResetServiceSpecificCredential $+-- newResetServiceSpecificCredential+--+-- , requestResyncMFADevice $+-- newResyncMFADevice+--+-- , requestSetDefaultPolicyVersion $+-- newSetDefaultPolicyVersion+--+-- , requestSetSecurityTokenServicePreferences $+-- newSetSecurityTokenServicePreferences+--+-- , requestSimulateCustomPolicy $+-- newSimulateCustomPolicy+--+-- , requestSimulatePrincipalPolicy $+-- newSimulatePrincipalPolicy+--+-- , requestTagInstanceProfile $+-- newTagInstanceProfile+--+-- , requestTagMFADevice $+-- newTagMFADevice+--+-- , requestTagOpenIDConnectProvider $+-- newTagOpenIDConnectProvider+--+-- , requestTagPolicy $+-- newTagPolicy+--+-- , requestTagRole $+-- newTagRole+--+-- , requestTagSAMLProvider $+-- newTagSAMLProvider+--+-- , requestTagServerCertificate $+-- newTagServerCertificate+--+-- , requestTagUser $+-- newTagUser+--+-- , requestUntagInstanceProfile $+-- newUntagInstanceProfile+--+-- , requestUntagMFADevice $+-- newUntagMFADevice+--+-- , requestUntagOpenIDConnectProvider $+-- newUntagOpenIDConnectProvider+--+-- , requestUntagPolicy $+-- newUntagPolicy+--+-- , requestUntagRole $+-- newUntagRole+--+-- , requestUntagSAMLProvider $+-- newUntagSAMLProvider+--+-- , requestUntagServerCertificate $+-- newUntagServerCertificate+--+-- , requestUntagUser $+-- newUntagUser+--+-- , requestUpdateAccessKey $+-- newUpdateAccessKey+--+-- , requestUpdateAccountPasswordPolicy $+-- newUpdateAccountPasswordPolicy+--+-- , requestUpdateAssumeRolePolicy $+-- newUpdateAssumeRolePolicy+--+-- , requestUpdateGroup $+-- newUpdateGroup+--+-- , requestUpdateLoginProfile $+-- newUpdateLoginProfile+--+-- , requestUpdateOpenIDConnectProviderThumbprint $+-- newUpdateOpenIDConnectProviderThumbprint+--+-- , requestUpdateRole $+-- newUpdateRole+--+-- , requestUpdateRoleDescription $+-- newUpdateRoleDescription+--+-- , requestUpdateSAMLProvider $+-- newUpdateSAMLProvider+--+-- , requestUpdateSSHPublicKey $+-- newUpdateSSHPublicKey+--+-- , requestUpdateServerCertificate $+-- newUpdateServerCertificate+--+-- , requestUpdateServiceSpecificCredential $+-- newUpdateServiceSpecificCredential+--+-- , requestUpdateSigningCertificate $+-- newUpdateSigningCertificate+--+-- , requestUpdateUser $+-- newUpdateUser+--+-- , requestUploadSSHPublicKey $+-- newUploadSSHPublicKey+--+-- , requestUploadServerCertificate $+-- newUploadServerCertificate+--+-- , requestUploadSigningCertificate $+-- newUploadSigningCertificate+--+-- ]++-- , testGroup "response"+-- [ responseAddClientIDToOpenIDConnectProvider $+-- newAddClientIDToOpenIDConnectProviderResponse+--+-- , responseAddRoleToInstanceProfile $+-- newAddRoleToInstanceProfileResponse+--+-- , responseAddUserToGroup $+-- newAddUserToGroupResponse+--+-- , responseAttachGroupPolicy $+-- newAttachGroupPolicyResponse+--+-- , responseAttachRolePolicy $+-- newAttachRolePolicyResponse+--+-- , responseAttachUserPolicy $+-- newAttachUserPolicyResponse+--+-- , responseChangePassword $+-- newChangePasswordResponse+--+-- , responseCreateAccessKey $+-- newCreateAccessKeyResponse+--+-- , responseCreateAccountAlias $+-- newCreateAccountAliasResponse+--+-- , responseCreateGroup $+-- newCreateGroupResponse+--+-- , responseCreateInstanceProfile $+-- newCreateInstanceProfileResponse+--+-- , responseCreateLoginProfile $+-- newCreateLoginProfileResponse+--+-- , responseCreateOpenIDConnectProvider $+-- newCreateOpenIDConnectProviderResponse+--+-- , responseCreatePolicy $+-- newCreatePolicyResponse+--+-- , responseCreatePolicyVersion $+-- newCreatePolicyVersionResponse+--+-- , responseCreateRole $+-- newCreateRoleResponse+--+-- , responseCreateSAMLProvider $+-- newCreateSAMLProviderResponse+--+-- , responseCreateServiceLinkedRole $+-- newCreateServiceLinkedRoleResponse+--+-- , responseCreateServiceSpecificCredential $+-- newCreateServiceSpecificCredentialResponse+--+-- , responseCreateUser $+-- newCreateUserResponse+--+-- , responseCreateVirtualMFADevice $+-- newCreateVirtualMFADeviceResponse+--+-- , responseDeactivateMFADevice $+-- newDeactivateMFADeviceResponse+--+-- , responseDeleteAccessKey $+-- newDeleteAccessKeyResponse+--+-- , responseDeleteAccountAlias $+-- newDeleteAccountAliasResponse+--+-- , responseDeleteAccountPasswordPolicy $+-- newDeleteAccountPasswordPolicyResponse+--+-- , responseDeleteGroup $+-- newDeleteGroupResponse+--+-- , responseDeleteGroupPolicy $+-- newDeleteGroupPolicyResponse+--+-- , responseDeleteInstanceProfile $+-- newDeleteInstanceProfileResponse+--+-- , responseDeleteLoginProfile $+-- newDeleteLoginProfileResponse+--+-- , responseDeleteOpenIDConnectProvider $+-- newDeleteOpenIDConnectProviderResponse+--+-- , responseDeletePolicy $+-- newDeletePolicyResponse+--+-- , responseDeletePolicyVersion $+-- newDeletePolicyVersionResponse+--+-- , responseDeleteRole $+-- newDeleteRoleResponse+--+-- , responseDeleteRolePermissionsBoundary $+-- newDeleteRolePermissionsBoundaryResponse+--+-- , responseDeleteRolePolicy $+-- newDeleteRolePolicyResponse+--+-- , responseDeleteSAMLProvider $+-- newDeleteSAMLProviderResponse+--+-- , responseDeleteSSHPublicKey $+-- newDeleteSSHPublicKeyResponse+--+-- , responseDeleteServerCertificate $+-- newDeleteServerCertificateResponse+--+-- , responseDeleteServiceLinkedRole $+-- newDeleteServiceLinkedRoleResponse+--+-- , responseDeleteServiceSpecificCredential $+-- newDeleteServiceSpecificCredentialResponse+--+-- , responseDeleteSigningCertificate $+-- newDeleteSigningCertificateResponse+--+-- , responseDeleteUser $+-- newDeleteUserResponse+--+-- , responseDeleteUserPermissionsBoundary $+-- newDeleteUserPermissionsBoundaryResponse+--+-- , responseDeleteUserPolicy $+-- newDeleteUserPolicyResponse+--+-- , responseDeleteVirtualMFADevice $+-- newDeleteVirtualMFADeviceResponse+--+-- , responseDetachGroupPolicy $+-- newDetachGroupPolicyResponse+--+-- , responseDetachRolePolicy $+-- newDetachRolePolicyResponse+--+-- , responseDetachUserPolicy $+-- newDetachUserPolicyResponse+--+-- , responseEnableMFADevice $+-- newEnableMFADeviceResponse+--+-- , responseGenerateCredentialReport $+-- newGenerateCredentialReportResponse+--+-- , responseGenerateOrganizationsAccessReport $+-- newGenerateOrganizationsAccessReportResponse+--+-- , responseGenerateServiceLastAccessedDetails $+-- newGenerateServiceLastAccessedDetailsResponse+--+-- , responseGetAccessKeyLastUsed $+-- newGetAccessKeyLastUsedResponse+--+-- , responseGetAccountAuthorizationDetails $+-- newGetAccountAuthorizationDetailsResponse+--+-- , responseGetAccountPasswordPolicy $+-- newGetAccountPasswordPolicyResponse+--+-- , responseGetAccountSummary $+-- newGetAccountSummaryResponse+--+-- , responseGetContextKeysForCustomPolicy $+-- newGetContextKeysForPolicyResponse+--+-- , responseGetContextKeysForPrincipalPolicy $+-- newGetContextKeysForPolicyResponse+--+-- , responseGetCredentialReport $+-- newGetCredentialReportResponse+--+-- , responseGetGroup $+-- newGetGroupResponse+--+-- , responseGetGroupPolicy $+-- newGetGroupPolicyResponse+--+-- , responseGetInstanceProfile $+-- newGetInstanceProfileResponse+--+-- , responseGetLoginProfile $+-- newGetLoginProfileResponse+--+-- , responseGetOpenIDConnectProvider $+-- newGetOpenIDConnectProviderResponse+--+-- , responseGetOrganizationsAccessReport $+-- newGetOrganizationsAccessReportResponse+--+-- , responseGetPolicy $+-- newGetPolicyResponse+--+-- , responseGetPolicyVersion $+-- newGetPolicyVersionResponse+--+-- , responseGetRole $+-- newGetRoleResponse+--+-- , responseGetRolePolicy $+-- newGetRolePolicyResponse+--+-- , responseGetSAMLProvider $+-- newGetSAMLProviderResponse+--+-- , responseGetSSHPublicKey $+-- newGetSSHPublicKeyResponse+--+-- , responseGetServerCertificate $+-- newGetServerCertificateResponse+--+-- , responseGetServiceLastAccessedDetails $+-- newGetServiceLastAccessedDetailsResponse+--+-- , responseGetServiceLastAccessedDetailsWithEntities $+-- newGetServiceLastAccessedDetailsWithEntitiesResponse+--+-- , responseGetServiceLinkedRoleDeletionStatus $+-- newGetServiceLinkedRoleDeletionStatusResponse+--+-- , responseGetUser $+-- newGetUserResponse+--+-- , responseGetUserPolicy $+-- newGetUserPolicyResponse+--+-- , responseListAccessKeys $+-- newListAccessKeysResponse+--+-- , responseListAccountAliases $+-- newListAccountAliasesResponse+--+-- , responseListAttachedGroupPolicies $+-- newListAttachedGroupPoliciesResponse+--+-- , responseListAttachedRolePolicies $+-- newListAttachedRolePoliciesResponse+--+-- , responseListAttachedUserPolicies $+-- newListAttachedUserPoliciesResponse+--+-- , responseListEntitiesForPolicy $+-- newListEntitiesForPolicyResponse+--+-- , responseListGroupPolicies $+-- newListGroupPoliciesResponse+--+-- , responseListGroups $+-- newListGroupsResponse+--+-- , responseListGroupsForUser $+-- newListGroupsForUserResponse+--+-- , responseListInstanceProfileTags $+-- newListInstanceProfileTagsResponse+--+-- , responseListInstanceProfiles $+-- newListInstanceProfilesResponse+--+-- , responseListInstanceProfilesForRole $+-- newListInstanceProfilesForRoleResponse+--+-- , responseListMFADeviceTags $+-- newListMFADeviceTagsResponse+--+-- , responseListMFADevices $+-- newListMFADevicesResponse+--+-- , responseListOpenIDConnectProviderTags $+-- newListOpenIDConnectProviderTagsResponse+--+-- , responseListOpenIDConnectProviders $+-- newListOpenIDConnectProvidersResponse+--+-- , responseListPolicies $+-- newListPoliciesResponse+--+-- , responseListPoliciesGrantingServiceAccess $+-- newListPoliciesGrantingServiceAccessResponse+--+-- , responseListPolicyTags $+-- newListPolicyTagsResponse+--+-- , responseListPolicyVersions $+-- newListPolicyVersionsResponse+--+-- , responseListRolePolicies $+-- newListRolePoliciesResponse+--+-- , responseListRoleTags $+-- newListRoleTagsResponse+--+-- , responseListRoles $+-- newListRolesResponse+--+-- , responseListSAMLProviderTags $+-- newListSAMLProviderTagsResponse+--+-- , responseListSAMLProviders $+-- newListSAMLProvidersResponse+--+-- , responseListSSHPublicKeys $+-- newListSSHPublicKeysResponse+--+-- , responseListServerCertificateTags $+-- newListServerCertificateTagsResponse+--+-- , responseListServerCertificates $+-- newListServerCertificatesResponse+--+-- , responseListServiceSpecificCredentials $+-- newListServiceSpecificCredentialsResponse+--+-- , responseListSigningCertificates $+-- newListSigningCertificatesResponse+--+-- , responseListUserPolicies $+-- newListUserPoliciesResponse+--+-- , responseListUserTags $+-- newListUserTagsResponse+--+-- , responseListUsers $+-- newListUsersResponse+--+-- , responseListVirtualMFADevices $+-- newListVirtualMFADevicesResponse+--+-- , responsePutGroupPolicy $+-- newPutGroupPolicyResponse+--+-- , responsePutRolePermissionsBoundary $+-- newPutRolePermissionsBoundaryResponse+--+-- , responsePutRolePolicy $+-- newPutRolePolicyResponse+--+-- , responsePutUserPermissionsBoundary $+-- newPutUserPermissionsBoundaryResponse+--+-- , responsePutUserPolicy $+-- newPutUserPolicyResponse+--+-- , responseRemoveClientIDFromOpenIDConnectProvider $+-- newRemoveClientIDFromOpenIDConnectProviderResponse+--+-- , responseRemoveRoleFromInstanceProfile $+-- newRemoveRoleFromInstanceProfileResponse+--+-- , responseRemoveUserFromGroup $+-- newRemoveUserFromGroupResponse+--+-- , responseResetServiceSpecificCredential $+-- newResetServiceSpecificCredentialResponse+--+-- , responseResyncMFADevice $+-- newResyncMFADeviceResponse+--+-- , responseSetDefaultPolicyVersion $+-- newSetDefaultPolicyVersionResponse+--+-- , responseSetSecurityTokenServicePreferences $+-- newSetSecurityTokenServicePreferencesResponse+--+-- , responseSimulateCustomPolicy $+-- newSimulatePolicyResponse+--+-- , responseSimulatePrincipalPolicy $+-- newSimulatePolicyResponse+--+-- , responseTagInstanceProfile $+-- newTagInstanceProfileResponse+--+-- , responseTagMFADevice $+-- newTagMFADeviceResponse+--+-- , responseTagOpenIDConnectProvider $+-- newTagOpenIDConnectProviderResponse+--+-- , responseTagPolicy $+-- newTagPolicyResponse+--+-- , responseTagRole $+-- newTagRoleResponse+--+-- , responseTagSAMLProvider $+-- newTagSAMLProviderResponse+--+-- , responseTagServerCertificate $+-- newTagServerCertificateResponse+--+-- , responseTagUser $+-- newTagUserResponse+--+-- , responseUntagInstanceProfile $+-- newUntagInstanceProfileResponse+--+-- , responseUntagMFADevice $+-- newUntagMFADeviceResponse+--+-- , responseUntagOpenIDConnectProvider $+-- newUntagOpenIDConnectProviderResponse+--+-- , responseUntagPolicy $+-- newUntagPolicyResponse+--+-- , responseUntagRole $+-- newUntagRoleResponse+--+-- , responseUntagSAMLProvider $+-- newUntagSAMLProviderResponse+--+-- , responseUntagServerCertificate $+-- newUntagServerCertificateResponse+--+-- , responseUntagUser $+-- newUntagUserResponse+--+-- , responseUpdateAccessKey $+-- newUpdateAccessKeyResponse+--+-- , responseUpdateAccountPasswordPolicy $+-- newUpdateAccountPasswordPolicyResponse+--+-- , responseUpdateAssumeRolePolicy $+-- newUpdateAssumeRolePolicyResponse+--+-- , responseUpdateGroup $+-- newUpdateGroupResponse+--+-- , responseUpdateLoginProfile $+-- newUpdateLoginProfileResponse+--+-- , responseUpdateOpenIDConnectProviderThumbprint $+-- newUpdateOpenIDConnectProviderThumbprintResponse+--+-- , responseUpdateRole $+-- newUpdateRoleResponse+--+-- , responseUpdateRoleDescription $+-- newUpdateRoleDescriptionResponse+--+-- , responseUpdateSAMLProvider $+-- newUpdateSAMLProviderResponse+--+-- , responseUpdateSSHPublicKey $+-- newUpdateSSHPublicKeyResponse+--+-- , responseUpdateServerCertificate $+-- newUpdateServerCertificateResponse+--+-- , responseUpdateServiceSpecificCredential $+-- newUpdateServiceSpecificCredentialResponse+--+-- , responseUpdateSigningCertificate $+-- newUpdateSigningCertificateResponse+--+-- , responseUpdateUser $+-- newUpdateUserResponse+--+-- , responseUploadSSHPublicKey $+-- newUploadSSHPublicKeyResponse+--+-- , responseUploadServerCertificate $+-- newUploadServerCertificateResponse+--+-- , responseUploadSigningCertificate $+-- newUploadSigningCertificateResponse+--+-- ]+-- ]++-- Requests++requestAddClientIDToOpenIDConnectProvider :: AddClientIDToOpenIDConnectProvider -> TestTree+requestAddClientIDToOpenIDConnectProvider =+ req+ "AddClientIDToOpenIDConnectProvider"+ "fixture/AddClientIDToOpenIDConnectProvider.yaml"++requestAddRoleToInstanceProfile :: AddRoleToInstanceProfile -> TestTree+requestAddRoleToInstanceProfile =+ req+ "AddRoleToInstanceProfile"+ "fixture/AddRoleToInstanceProfile.yaml"++requestAddUserToGroup :: AddUserToGroup -> TestTree+requestAddUserToGroup =+ req+ "AddUserToGroup"+ "fixture/AddUserToGroup.yaml"++requestAttachGroupPolicy :: AttachGroupPolicy -> TestTree+requestAttachGroupPolicy =+ req+ "AttachGroupPolicy"+ "fixture/AttachGroupPolicy.yaml"++requestAttachRolePolicy :: AttachRolePolicy -> TestTree+requestAttachRolePolicy =+ req+ "AttachRolePolicy"+ "fixture/AttachRolePolicy.yaml"++requestAttachUserPolicy :: AttachUserPolicy -> TestTree+requestAttachUserPolicy =+ req+ "AttachUserPolicy"+ "fixture/AttachUserPolicy.yaml"++requestChangePassword :: ChangePassword -> TestTree+requestChangePassword =+ req+ "ChangePassword"+ "fixture/ChangePassword.yaml"++requestCreateAccessKey :: CreateAccessKey -> TestTree+requestCreateAccessKey =+ req+ "CreateAccessKey"+ "fixture/CreateAccessKey.yaml"++requestCreateAccountAlias :: CreateAccountAlias -> TestTree+requestCreateAccountAlias =+ req+ "CreateAccountAlias"+ "fixture/CreateAccountAlias.yaml"++requestCreateGroup :: CreateGroup -> TestTree+requestCreateGroup =+ req+ "CreateGroup"+ "fixture/CreateGroup.yaml"++requestCreateInstanceProfile :: CreateInstanceProfile -> TestTree+requestCreateInstanceProfile =+ req+ "CreateInstanceProfile"+ "fixture/CreateInstanceProfile.yaml"++requestCreateLoginProfile :: CreateLoginProfile -> TestTree+requestCreateLoginProfile =+ req+ "CreateLoginProfile"+ "fixture/CreateLoginProfile.yaml"++requestCreateOpenIDConnectProvider :: CreateOpenIDConnectProvider -> TestTree+requestCreateOpenIDConnectProvider =+ req+ "CreateOpenIDConnectProvider"+ "fixture/CreateOpenIDConnectProvider.yaml"++requestCreatePolicy :: CreatePolicy -> TestTree+requestCreatePolicy =+ req+ "CreatePolicy"+ "fixture/CreatePolicy.yaml"++requestCreatePolicyVersion :: CreatePolicyVersion -> TestTree+requestCreatePolicyVersion =+ req+ "CreatePolicyVersion"+ "fixture/CreatePolicyVersion.yaml"++requestCreateRole :: CreateRole -> TestTree+requestCreateRole =+ req+ "CreateRole"+ "fixture/CreateRole.yaml"++requestCreateSAMLProvider :: CreateSAMLProvider -> TestTree+requestCreateSAMLProvider =+ req+ "CreateSAMLProvider"+ "fixture/CreateSAMLProvider.yaml"++requestCreateServiceLinkedRole :: CreateServiceLinkedRole -> TestTree+requestCreateServiceLinkedRole =+ req+ "CreateServiceLinkedRole"+ "fixture/CreateServiceLinkedRole.yaml"++requestCreateServiceSpecificCredential :: CreateServiceSpecificCredential -> TestTree+requestCreateServiceSpecificCredential =+ req+ "CreateServiceSpecificCredential"+ "fixture/CreateServiceSpecificCredential.yaml"++requestCreateUser :: CreateUser -> TestTree+requestCreateUser =+ req+ "CreateUser"+ "fixture/CreateUser.yaml"++requestCreateVirtualMFADevice :: CreateVirtualMFADevice -> TestTree+requestCreateVirtualMFADevice =+ req+ "CreateVirtualMFADevice"+ "fixture/CreateVirtualMFADevice.yaml"++requestDeactivateMFADevice :: DeactivateMFADevice -> TestTree+requestDeactivateMFADevice =+ req+ "DeactivateMFADevice"+ "fixture/DeactivateMFADevice.yaml"++requestDeleteAccessKey :: DeleteAccessKey -> TestTree+requestDeleteAccessKey =+ req+ "DeleteAccessKey"+ "fixture/DeleteAccessKey.yaml"++requestDeleteAccountAlias :: DeleteAccountAlias -> TestTree+requestDeleteAccountAlias =+ req+ "DeleteAccountAlias"+ "fixture/DeleteAccountAlias.yaml"++requestDeleteAccountPasswordPolicy :: DeleteAccountPasswordPolicy -> TestTree+requestDeleteAccountPasswordPolicy =+ req+ "DeleteAccountPasswordPolicy"+ "fixture/DeleteAccountPasswordPolicy.yaml"++requestDeleteGroup :: DeleteGroup -> TestTree+requestDeleteGroup =+ req+ "DeleteGroup"+ "fixture/DeleteGroup.yaml"++requestDeleteGroupPolicy :: DeleteGroupPolicy -> TestTree+requestDeleteGroupPolicy =+ req+ "DeleteGroupPolicy"+ "fixture/DeleteGroupPolicy.yaml"++requestDeleteInstanceProfile :: DeleteInstanceProfile -> TestTree+requestDeleteInstanceProfile =+ req+ "DeleteInstanceProfile"+ "fixture/DeleteInstanceProfile.yaml"++requestDeleteLoginProfile :: DeleteLoginProfile -> TestTree+requestDeleteLoginProfile =+ req+ "DeleteLoginProfile"+ "fixture/DeleteLoginProfile.yaml"++requestDeleteOpenIDConnectProvider :: DeleteOpenIDConnectProvider -> TestTree+requestDeleteOpenIDConnectProvider =+ req+ "DeleteOpenIDConnectProvider"+ "fixture/DeleteOpenIDConnectProvider.yaml"++requestDeletePolicy :: DeletePolicy -> TestTree+requestDeletePolicy =+ req+ "DeletePolicy"+ "fixture/DeletePolicy.yaml"++requestDeletePolicyVersion :: DeletePolicyVersion -> TestTree+requestDeletePolicyVersion =+ req+ "DeletePolicyVersion"+ "fixture/DeletePolicyVersion.yaml"++requestDeleteRole :: DeleteRole -> TestTree+requestDeleteRole =+ req+ "DeleteRole"+ "fixture/DeleteRole.yaml"++requestDeleteRolePermissionsBoundary :: DeleteRolePermissionsBoundary -> TestTree+requestDeleteRolePermissionsBoundary =+ req+ "DeleteRolePermissionsBoundary"+ "fixture/DeleteRolePermissionsBoundary.yaml"++requestDeleteRolePolicy :: DeleteRolePolicy -> TestTree+requestDeleteRolePolicy =+ req+ "DeleteRolePolicy"+ "fixture/DeleteRolePolicy.yaml"++requestDeleteSAMLProvider :: DeleteSAMLProvider -> TestTree+requestDeleteSAMLProvider =+ req+ "DeleteSAMLProvider"+ "fixture/DeleteSAMLProvider.yaml"++requestDeleteSSHPublicKey :: DeleteSSHPublicKey -> TestTree+requestDeleteSSHPublicKey =+ req+ "DeleteSSHPublicKey"+ "fixture/DeleteSSHPublicKey.yaml"++requestDeleteServerCertificate :: DeleteServerCertificate -> TestTree+requestDeleteServerCertificate =+ req+ "DeleteServerCertificate"+ "fixture/DeleteServerCertificate.yaml"++requestDeleteServiceLinkedRole :: DeleteServiceLinkedRole -> TestTree+requestDeleteServiceLinkedRole =+ req+ "DeleteServiceLinkedRole"+ "fixture/DeleteServiceLinkedRole.yaml"++requestDeleteServiceSpecificCredential :: DeleteServiceSpecificCredential -> TestTree+requestDeleteServiceSpecificCredential =+ req+ "DeleteServiceSpecificCredential"+ "fixture/DeleteServiceSpecificCredential.yaml"++requestDeleteSigningCertificate :: DeleteSigningCertificate -> TestTree+requestDeleteSigningCertificate =+ req+ "DeleteSigningCertificate"+ "fixture/DeleteSigningCertificate.yaml"++requestDeleteUser :: DeleteUser -> TestTree+requestDeleteUser =+ req+ "DeleteUser"+ "fixture/DeleteUser.yaml"++requestDeleteUserPermissionsBoundary :: DeleteUserPermissionsBoundary -> TestTree+requestDeleteUserPermissionsBoundary =+ req+ "DeleteUserPermissionsBoundary"+ "fixture/DeleteUserPermissionsBoundary.yaml"++requestDeleteUserPolicy :: DeleteUserPolicy -> TestTree+requestDeleteUserPolicy =+ req+ "DeleteUserPolicy"+ "fixture/DeleteUserPolicy.yaml"++requestDeleteVirtualMFADevice :: DeleteVirtualMFADevice -> TestTree+requestDeleteVirtualMFADevice =+ req+ "DeleteVirtualMFADevice"+ "fixture/DeleteVirtualMFADevice.yaml"++requestDetachGroupPolicy :: DetachGroupPolicy -> TestTree+requestDetachGroupPolicy =+ req+ "DetachGroupPolicy"+ "fixture/DetachGroupPolicy.yaml"++requestDetachRolePolicy :: DetachRolePolicy -> TestTree+requestDetachRolePolicy =+ req+ "DetachRolePolicy"+ "fixture/DetachRolePolicy.yaml"++requestDetachUserPolicy :: DetachUserPolicy -> TestTree+requestDetachUserPolicy =+ req+ "DetachUserPolicy"+ "fixture/DetachUserPolicy.yaml"++requestEnableMFADevice :: EnableMFADevice -> TestTree+requestEnableMFADevice =+ req+ "EnableMFADevice"+ "fixture/EnableMFADevice.yaml"++requestGenerateCredentialReport :: GenerateCredentialReport -> TestTree+requestGenerateCredentialReport =+ req+ "GenerateCredentialReport"+ "fixture/GenerateCredentialReport.yaml"++requestGenerateOrganizationsAccessReport :: GenerateOrganizationsAccessReport -> TestTree+requestGenerateOrganizationsAccessReport =+ req+ "GenerateOrganizationsAccessReport"+ "fixture/GenerateOrganizationsAccessReport.yaml"++requestGenerateServiceLastAccessedDetails :: GenerateServiceLastAccessedDetails -> TestTree+requestGenerateServiceLastAccessedDetails =+ req+ "GenerateServiceLastAccessedDetails"+ "fixture/GenerateServiceLastAccessedDetails.yaml"++requestGetAccessKeyLastUsed :: GetAccessKeyLastUsed -> TestTree+requestGetAccessKeyLastUsed =+ req+ "GetAccessKeyLastUsed"+ "fixture/GetAccessKeyLastUsed.yaml"++requestGetAccountAuthorizationDetails :: GetAccountAuthorizationDetails -> TestTree+requestGetAccountAuthorizationDetails =+ req+ "GetAccountAuthorizationDetails"+ "fixture/GetAccountAuthorizationDetails.yaml"++requestGetAccountPasswordPolicy :: GetAccountPasswordPolicy -> TestTree+requestGetAccountPasswordPolicy =+ req+ "GetAccountPasswordPolicy"+ "fixture/GetAccountPasswordPolicy.yaml"++requestGetAccountSummary :: GetAccountSummary -> TestTree+requestGetAccountSummary =+ req+ "GetAccountSummary"+ "fixture/GetAccountSummary.yaml"++requestGetContextKeysForCustomPolicy :: GetContextKeysForCustomPolicy -> TestTree+requestGetContextKeysForCustomPolicy =+ req+ "GetContextKeysForCustomPolicy"+ "fixture/GetContextKeysForCustomPolicy.yaml"++requestGetContextKeysForPrincipalPolicy :: GetContextKeysForPrincipalPolicy -> TestTree+requestGetContextKeysForPrincipalPolicy =+ req+ "GetContextKeysForPrincipalPolicy"+ "fixture/GetContextKeysForPrincipalPolicy.yaml"++requestGetCredentialReport :: GetCredentialReport -> TestTree+requestGetCredentialReport =+ req+ "GetCredentialReport"+ "fixture/GetCredentialReport.yaml"++requestGetGroup :: GetGroup -> TestTree+requestGetGroup =+ req+ "GetGroup"+ "fixture/GetGroup.yaml"++requestGetGroupPolicy :: GetGroupPolicy -> TestTree+requestGetGroupPolicy =+ req+ "GetGroupPolicy"+ "fixture/GetGroupPolicy.yaml"++requestGetInstanceProfile :: GetInstanceProfile -> TestTree+requestGetInstanceProfile =+ req+ "GetInstanceProfile"+ "fixture/GetInstanceProfile.yaml"++requestGetLoginProfile :: GetLoginProfile -> TestTree+requestGetLoginProfile =+ req+ "GetLoginProfile"+ "fixture/GetLoginProfile.yaml"++requestGetOpenIDConnectProvider :: GetOpenIDConnectProvider -> TestTree+requestGetOpenIDConnectProvider =+ req+ "GetOpenIDConnectProvider"+ "fixture/GetOpenIDConnectProvider.yaml"++requestGetOrganizationsAccessReport :: GetOrganizationsAccessReport -> TestTree+requestGetOrganizationsAccessReport =+ req+ "GetOrganizationsAccessReport"+ "fixture/GetOrganizationsAccessReport.yaml"++requestGetPolicy :: GetPolicy -> TestTree+requestGetPolicy =+ req+ "GetPolicy"+ "fixture/GetPolicy.yaml"++requestGetPolicyVersion :: GetPolicyVersion -> TestTree+requestGetPolicyVersion =+ req+ "GetPolicyVersion"+ "fixture/GetPolicyVersion.yaml"++requestGetRole :: GetRole -> TestTree+requestGetRole =+ req+ "GetRole"+ "fixture/GetRole.yaml"++requestGetRolePolicy :: GetRolePolicy -> TestTree+requestGetRolePolicy =+ req+ "GetRolePolicy"+ "fixture/GetRolePolicy.yaml"++requestGetSAMLProvider :: GetSAMLProvider -> TestTree+requestGetSAMLProvider =+ req+ "GetSAMLProvider"+ "fixture/GetSAMLProvider.yaml"++requestGetSSHPublicKey :: GetSSHPublicKey -> TestTree+requestGetSSHPublicKey =+ req+ "GetSSHPublicKey"+ "fixture/GetSSHPublicKey.yaml"++requestGetServerCertificate :: GetServerCertificate -> TestTree+requestGetServerCertificate =+ req+ "GetServerCertificate"+ "fixture/GetServerCertificate.yaml"++requestGetServiceLastAccessedDetails :: GetServiceLastAccessedDetails -> TestTree+requestGetServiceLastAccessedDetails =+ req+ "GetServiceLastAccessedDetails"+ "fixture/GetServiceLastAccessedDetails.yaml"++requestGetServiceLastAccessedDetailsWithEntities :: GetServiceLastAccessedDetailsWithEntities -> TestTree+requestGetServiceLastAccessedDetailsWithEntities =+ req+ "GetServiceLastAccessedDetailsWithEntities"+ "fixture/GetServiceLastAccessedDetailsWithEntities.yaml"++requestGetServiceLinkedRoleDeletionStatus :: GetServiceLinkedRoleDeletionStatus -> TestTree+requestGetServiceLinkedRoleDeletionStatus =+ req+ "GetServiceLinkedRoleDeletionStatus"+ "fixture/GetServiceLinkedRoleDeletionStatus.yaml"++requestGetUser :: GetUser -> TestTree+requestGetUser =+ req+ "GetUser"+ "fixture/GetUser.yaml"++requestGetUserPolicy :: GetUserPolicy -> TestTree+requestGetUserPolicy =+ req+ "GetUserPolicy"+ "fixture/GetUserPolicy.yaml"++requestListAccessKeys :: ListAccessKeys -> TestTree+requestListAccessKeys =+ req+ "ListAccessKeys"+ "fixture/ListAccessKeys.yaml"++requestListAccountAliases :: ListAccountAliases -> TestTree+requestListAccountAliases =+ req+ "ListAccountAliases"+ "fixture/ListAccountAliases.yaml"++requestListAttachedGroupPolicies :: ListAttachedGroupPolicies -> TestTree+requestListAttachedGroupPolicies =+ req+ "ListAttachedGroupPolicies"+ "fixture/ListAttachedGroupPolicies.yaml"++requestListAttachedRolePolicies :: ListAttachedRolePolicies -> TestTree+requestListAttachedRolePolicies =+ req+ "ListAttachedRolePolicies"+ "fixture/ListAttachedRolePolicies.yaml"++requestListAttachedUserPolicies :: ListAttachedUserPolicies -> TestTree+requestListAttachedUserPolicies =+ req+ "ListAttachedUserPolicies"+ "fixture/ListAttachedUserPolicies.yaml"++requestListEntitiesForPolicy :: ListEntitiesForPolicy -> TestTree+requestListEntitiesForPolicy =+ req+ "ListEntitiesForPolicy"+ "fixture/ListEntitiesForPolicy.yaml"++requestListGroupPolicies :: ListGroupPolicies -> TestTree+requestListGroupPolicies =+ req+ "ListGroupPolicies"+ "fixture/ListGroupPolicies.yaml"++requestListGroups :: ListGroups -> TestTree+requestListGroups =+ req+ "ListGroups"+ "fixture/ListGroups.yaml"++requestListGroupsForUser :: ListGroupsForUser -> TestTree+requestListGroupsForUser =+ req+ "ListGroupsForUser"+ "fixture/ListGroupsForUser.yaml"++requestListInstanceProfileTags :: ListInstanceProfileTags -> TestTree+requestListInstanceProfileTags =+ req+ "ListInstanceProfileTags"+ "fixture/ListInstanceProfileTags.yaml"++requestListInstanceProfiles :: ListInstanceProfiles -> TestTree+requestListInstanceProfiles =+ req+ "ListInstanceProfiles"+ "fixture/ListInstanceProfiles.yaml"++requestListInstanceProfilesForRole :: ListInstanceProfilesForRole -> TestTree+requestListInstanceProfilesForRole =+ req+ "ListInstanceProfilesForRole"+ "fixture/ListInstanceProfilesForRole.yaml"++requestListMFADeviceTags :: ListMFADeviceTags -> TestTree+requestListMFADeviceTags =+ req+ "ListMFADeviceTags"+ "fixture/ListMFADeviceTags.yaml"++requestListMFADevices :: ListMFADevices -> TestTree+requestListMFADevices =+ req+ "ListMFADevices"+ "fixture/ListMFADevices.yaml"++requestListOpenIDConnectProviderTags :: ListOpenIDConnectProviderTags -> TestTree+requestListOpenIDConnectProviderTags =+ req+ "ListOpenIDConnectProviderTags"+ "fixture/ListOpenIDConnectProviderTags.yaml"++requestListOpenIDConnectProviders :: ListOpenIDConnectProviders -> TestTree+requestListOpenIDConnectProviders =+ req+ "ListOpenIDConnectProviders"+ "fixture/ListOpenIDConnectProviders.yaml"++requestListPolicies :: ListPolicies -> TestTree+requestListPolicies =+ req+ "ListPolicies"+ "fixture/ListPolicies.yaml"++requestListPoliciesGrantingServiceAccess :: ListPoliciesGrantingServiceAccess -> TestTree+requestListPoliciesGrantingServiceAccess =+ req+ "ListPoliciesGrantingServiceAccess"+ "fixture/ListPoliciesGrantingServiceAccess.yaml"++requestListPolicyTags :: ListPolicyTags -> TestTree+requestListPolicyTags =+ req+ "ListPolicyTags"+ "fixture/ListPolicyTags.yaml"++requestListPolicyVersions :: ListPolicyVersions -> TestTree+requestListPolicyVersions =+ req+ "ListPolicyVersions"+ "fixture/ListPolicyVersions.yaml"++requestListRolePolicies :: ListRolePolicies -> TestTree+requestListRolePolicies =+ req+ "ListRolePolicies"+ "fixture/ListRolePolicies.yaml"++requestListRoleTags :: ListRoleTags -> TestTree+requestListRoleTags =+ req+ "ListRoleTags"+ "fixture/ListRoleTags.yaml"++requestListRoles :: ListRoles -> TestTree+requestListRoles =+ req+ "ListRoles"+ "fixture/ListRoles.yaml"++requestListSAMLProviderTags :: ListSAMLProviderTags -> TestTree+requestListSAMLProviderTags =+ req+ "ListSAMLProviderTags"+ "fixture/ListSAMLProviderTags.yaml"++requestListSAMLProviders :: ListSAMLProviders -> TestTree+requestListSAMLProviders =+ req+ "ListSAMLProviders"+ "fixture/ListSAMLProviders.yaml"++requestListSSHPublicKeys :: ListSSHPublicKeys -> TestTree+requestListSSHPublicKeys =+ req+ "ListSSHPublicKeys"+ "fixture/ListSSHPublicKeys.yaml"++requestListServerCertificateTags :: ListServerCertificateTags -> TestTree+requestListServerCertificateTags =+ req+ "ListServerCertificateTags"+ "fixture/ListServerCertificateTags.yaml"++requestListServerCertificates :: ListServerCertificates -> TestTree+requestListServerCertificates =+ req+ "ListServerCertificates"+ "fixture/ListServerCertificates.yaml"++requestListServiceSpecificCredentials :: ListServiceSpecificCredentials -> TestTree+requestListServiceSpecificCredentials =+ req+ "ListServiceSpecificCredentials"+ "fixture/ListServiceSpecificCredentials.yaml"++requestListSigningCertificates :: ListSigningCertificates -> TestTree+requestListSigningCertificates =+ req+ "ListSigningCertificates"+ "fixture/ListSigningCertificates.yaml"++requestListUserPolicies :: ListUserPolicies -> TestTree+requestListUserPolicies =+ req+ "ListUserPolicies"+ "fixture/ListUserPolicies.yaml"++requestListUserTags :: ListUserTags -> TestTree+requestListUserTags =+ req+ "ListUserTags"+ "fixture/ListUserTags.yaml"++requestListUsers :: ListUsers -> TestTree+requestListUsers =+ req+ "ListUsers"+ "fixture/ListUsers.yaml"++requestListVirtualMFADevices :: ListVirtualMFADevices -> TestTree+requestListVirtualMFADevices =+ req+ "ListVirtualMFADevices"+ "fixture/ListVirtualMFADevices.yaml"++requestPutGroupPolicy :: PutGroupPolicy -> TestTree+requestPutGroupPolicy =+ req+ "PutGroupPolicy"+ "fixture/PutGroupPolicy.yaml"++requestPutRolePermissionsBoundary :: PutRolePermissionsBoundary -> TestTree+requestPutRolePermissionsBoundary =+ req+ "PutRolePermissionsBoundary"+ "fixture/PutRolePermissionsBoundary.yaml"++requestPutRolePolicy :: PutRolePolicy -> TestTree+requestPutRolePolicy =+ req+ "PutRolePolicy"+ "fixture/PutRolePolicy.yaml"++requestPutUserPermissionsBoundary :: PutUserPermissionsBoundary -> TestTree+requestPutUserPermissionsBoundary =+ req+ "PutUserPermissionsBoundary"+ "fixture/PutUserPermissionsBoundary.yaml"++requestPutUserPolicy :: PutUserPolicy -> TestTree+requestPutUserPolicy =+ req+ "PutUserPolicy"+ "fixture/PutUserPolicy.yaml"++requestRemoveClientIDFromOpenIDConnectProvider :: RemoveClientIDFromOpenIDConnectProvider -> TestTree+requestRemoveClientIDFromOpenIDConnectProvider =+ req+ "RemoveClientIDFromOpenIDConnectProvider"+ "fixture/RemoveClientIDFromOpenIDConnectProvider.yaml"++requestRemoveRoleFromInstanceProfile :: RemoveRoleFromInstanceProfile -> TestTree+requestRemoveRoleFromInstanceProfile =+ req+ "RemoveRoleFromInstanceProfile"+ "fixture/RemoveRoleFromInstanceProfile.yaml"++requestRemoveUserFromGroup :: RemoveUserFromGroup -> TestTree+requestRemoveUserFromGroup =+ req+ "RemoveUserFromGroup"+ "fixture/RemoveUserFromGroup.yaml"++requestResetServiceSpecificCredential :: ResetServiceSpecificCredential -> TestTree+requestResetServiceSpecificCredential =+ req+ "ResetServiceSpecificCredential"+ "fixture/ResetServiceSpecificCredential.yaml"++requestResyncMFADevice :: ResyncMFADevice -> TestTree+requestResyncMFADevice =+ req+ "ResyncMFADevice"+ "fixture/ResyncMFADevice.yaml"++requestSetDefaultPolicyVersion :: SetDefaultPolicyVersion -> TestTree+requestSetDefaultPolicyVersion =+ req+ "SetDefaultPolicyVersion"+ "fixture/SetDefaultPolicyVersion.yaml"++requestSetSecurityTokenServicePreferences :: SetSecurityTokenServicePreferences -> TestTree+requestSetSecurityTokenServicePreferences =+ req+ "SetSecurityTokenServicePreferences"+ "fixture/SetSecurityTokenServicePreferences.yaml"++requestSimulateCustomPolicy :: SimulateCustomPolicy -> TestTree+requestSimulateCustomPolicy =+ req+ "SimulateCustomPolicy"+ "fixture/SimulateCustomPolicy.yaml"++requestSimulatePrincipalPolicy :: SimulatePrincipalPolicy -> TestTree+requestSimulatePrincipalPolicy =+ req+ "SimulatePrincipalPolicy"+ "fixture/SimulatePrincipalPolicy.yaml"++requestTagInstanceProfile :: TagInstanceProfile -> TestTree+requestTagInstanceProfile =+ req+ "TagInstanceProfile"+ "fixture/TagInstanceProfile.yaml"++requestTagMFADevice :: TagMFADevice -> TestTree+requestTagMFADevice =+ req+ "TagMFADevice"+ "fixture/TagMFADevice.yaml"++requestTagOpenIDConnectProvider :: TagOpenIDConnectProvider -> TestTree+requestTagOpenIDConnectProvider =+ req+ "TagOpenIDConnectProvider"+ "fixture/TagOpenIDConnectProvider.yaml"++requestTagPolicy :: TagPolicy -> TestTree+requestTagPolicy =+ req+ "TagPolicy"+ "fixture/TagPolicy.yaml"++requestTagRole :: TagRole -> TestTree+requestTagRole =+ req+ "TagRole"+ "fixture/TagRole.yaml"++requestTagSAMLProvider :: TagSAMLProvider -> TestTree+requestTagSAMLProvider =+ req+ "TagSAMLProvider"+ "fixture/TagSAMLProvider.yaml"++requestTagServerCertificate :: TagServerCertificate -> TestTree+requestTagServerCertificate =+ req+ "TagServerCertificate"+ "fixture/TagServerCertificate.yaml"++requestTagUser :: TagUser -> TestTree+requestTagUser =+ req+ "TagUser"+ "fixture/TagUser.yaml"++requestUntagInstanceProfile :: UntagInstanceProfile -> TestTree+requestUntagInstanceProfile =+ req+ "UntagInstanceProfile"+ "fixture/UntagInstanceProfile.yaml"++requestUntagMFADevice :: UntagMFADevice -> TestTree+requestUntagMFADevice =+ req+ "UntagMFADevice"+ "fixture/UntagMFADevice.yaml"++requestUntagOpenIDConnectProvider :: UntagOpenIDConnectProvider -> TestTree+requestUntagOpenIDConnectProvider =+ req+ "UntagOpenIDConnectProvider"+ "fixture/UntagOpenIDConnectProvider.yaml"++requestUntagPolicy :: UntagPolicy -> TestTree+requestUntagPolicy =+ req+ "UntagPolicy"+ "fixture/UntagPolicy.yaml"++requestUntagRole :: UntagRole -> TestTree+requestUntagRole =+ req+ "UntagRole"+ "fixture/UntagRole.yaml"++requestUntagSAMLProvider :: UntagSAMLProvider -> TestTree+requestUntagSAMLProvider =+ req+ "UntagSAMLProvider"+ "fixture/UntagSAMLProvider.yaml"++requestUntagServerCertificate :: UntagServerCertificate -> TestTree+requestUntagServerCertificate =+ req+ "UntagServerCertificate"+ "fixture/UntagServerCertificate.yaml"++requestUntagUser :: UntagUser -> TestTree+requestUntagUser =+ req+ "UntagUser"+ "fixture/UntagUser.yaml"++requestUpdateAccessKey :: UpdateAccessKey -> TestTree+requestUpdateAccessKey =+ req+ "UpdateAccessKey"+ "fixture/UpdateAccessKey.yaml"++requestUpdateAccountPasswordPolicy :: UpdateAccountPasswordPolicy -> TestTree+requestUpdateAccountPasswordPolicy =+ req+ "UpdateAccountPasswordPolicy"+ "fixture/UpdateAccountPasswordPolicy.yaml"++requestUpdateAssumeRolePolicy :: UpdateAssumeRolePolicy -> TestTree+requestUpdateAssumeRolePolicy =+ req+ "UpdateAssumeRolePolicy"+ "fixture/UpdateAssumeRolePolicy.yaml"++requestUpdateGroup :: UpdateGroup -> TestTree+requestUpdateGroup =+ req+ "UpdateGroup"+ "fixture/UpdateGroup.yaml"++requestUpdateLoginProfile :: UpdateLoginProfile -> TestTree+requestUpdateLoginProfile =+ req+ "UpdateLoginProfile"+ "fixture/UpdateLoginProfile.yaml"++requestUpdateOpenIDConnectProviderThumbprint :: UpdateOpenIDConnectProviderThumbprint -> TestTree+requestUpdateOpenIDConnectProviderThumbprint =+ req+ "UpdateOpenIDConnectProviderThumbprint"+ "fixture/UpdateOpenIDConnectProviderThumbprint.yaml"++requestUpdateRole :: UpdateRole -> TestTree+requestUpdateRole =+ req+ "UpdateRole"+ "fixture/UpdateRole.yaml"++requestUpdateRoleDescription :: UpdateRoleDescription -> TestTree+requestUpdateRoleDescription =+ req+ "UpdateRoleDescription"+ "fixture/UpdateRoleDescription.yaml"++requestUpdateSAMLProvider :: UpdateSAMLProvider -> TestTree+requestUpdateSAMLProvider =+ req+ "UpdateSAMLProvider"+ "fixture/UpdateSAMLProvider.yaml"++requestUpdateSSHPublicKey :: UpdateSSHPublicKey -> TestTree+requestUpdateSSHPublicKey =+ req+ "UpdateSSHPublicKey"+ "fixture/UpdateSSHPublicKey.yaml"++requestUpdateServerCertificate :: UpdateServerCertificate -> TestTree+requestUpdateServerCertificate =+ req+ "UpdateServerCertificate"+ "fixture/UpdateServerCertificate.yaml"++requestUpdateServiceSpecificCredential :: UpdateServiceSpecificCredential -> TestTree+requestUpdateServiceSpecificCredential =+ req+ "UpdateServiceSpecificCredential"+ "fixture/UpdateServiceSpecificCredential.yaml"++requestUpdateSigningCertificate :: UpdateSigningCertificate -> TestTree+requestUpdateSigningCertificate =+ req+ "UpdateSigningCertificate"+ "fixture/UpdateSigningCertificate.yaml"++requestUpdateUser :: UpdateUser -> TestTree+requestUpdateUser =+ req+ "UpdateUser"+ "fixture/UpdateUser.yaml"++requestUploadSSHPublicKey :: UploadSSHPublicKey -> TestTree+requestUploadSSHPublicKey =+ req+ "UploadSSHPublicKey"+ "fixture/UploadSSHPublicKey.yaml"++requestUploadServerCertificate :: UploadServerCertificate -> TestTree+requestUploadServerCertificate =+ req+ "UploadServerCertificate"+ "fixture/UploadServerCertificate.yaml"++requestUploadSigningCertificate :: UploadSigningCertificate -> TestTree+requestUploadSigningCertificate =+ req+ "UploadSigningCertificate"+ "fixture/UploadSigningCertificate.yaml"++-- Responses++responseAddClientIDToOpenIDConnectProvider :: AddClientIDToOpenIDConnectProviderResponse -> TestTree+responseAddClientIDToOpenIDConnectProvider =+ res+ "AddClientIDToOpenIDConnectProviderResponse"+ "fixture/AddClientIDToOpenIDConnectProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AddClientIDToOpenIDConnectProvider)++responseAddRoleToInstanceProfile :: AddRoleToInstanceProfileResponse -> TestTree+responseAddRoleToInstanceProfile =+ res+ "AddRoleToInstanceProfileResponse"+ "fixture/AddRoleToInstanceProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AddRoleToInstanceProfile)++responseAddUserToGroup :: AddUserToGroupResponse -> TestTree+responseAddUserToGroup =+ res+ "AddUserToGroupResponse"+ "fixture/AddUserToGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AddUserToGroup)++responseAttachGroupPolicy :: AttachGroupPolicyResponse -> TestTree+responseAttachGroupPolicy =+ res+ "AttachGroupPolicyResponse"+ "fixture/AttachGroupPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AttachGroupPolicy)++responseAttachRolePolicy :: AttachRolePolicyResponse -> TestTree+responseAttachRolePolicy =+ res+ "AttachRolePolicyResponse"+ "fixture/AttachRolePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AttachRolePolicy)++responseAttachUserPolicy :: AttachUserPolicyResponse -> TestTree+responseAttachUserPolicy =+ res+ "AttachUserPolicyResponse"+ "fixture/AttachUserPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AttachUserPolicy)++responseChangePassword :: ChangePasswordResponse -> TestTree+responseChangePassword =+ res+ "ChangePasswordResponse"+ "fixture/ChangePasswordResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ChangePassword)++responseCreateAccessKey :: CreateAccessKeyResponse -> TestTree+responseCreateAccessKey =+ res+ "CreateAccessKeyResponse"+ "fixture/CreateAccessKeyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateAccessKey)++responseCreateAccountAlias :: CreateAccountAliasResponse -> TestTree+responseCreateAccountAlias =+ res+ "CreateAccountAliasResponse"+ "fixture/CreateAccountAliasResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateAccountAlias)++responseCreateGroup :: CreateGroupResponse -> TestTree+responseCreateGroup =+ res+ "CreateGroupResponse"+ "fixture/CreateGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateGroup)++responseCreateInstanceProfile :: CreateInstanceProfileResponse -> TestTree+responseCreateInstanceProfile =+ res+ "CreateInstanceProfileResponse"+ "fixture/CreateInstanceProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateInstanceProfile)++responseCreateLoginProfile :: CreateLoginProfileResponse -> TestTree+responseCreateLoginProfile =+ res+ "CreateLoginProfileResponse"+ "fixture/CreateLoginProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateLoginProfile)++responseCreateOpenIDConnectProvider :: CreateOpenIDConnectProviderResponse -> TestTree+responseCreateOpenIDConnectProvider =+ res+ "CreateOpenIDConnectProviderResponse"+ "fixture/CreateOpenIDConnectProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateOpenIDConnectProvider)++responseCreatePolicy :: CreatePolicyResponse -> TestTree+responseCreatePolicy =+ res+ "CreatePolicyResponse"+ "fixture/CreatePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreatePolicy)++responseCreatePolicyVersion :: CreatePolicyVersionResponse -> TestTree+responseCreatePolicyVersion =+ res+ "CreatePolicyVersionResponse"+ "fixture/CreatePolicyVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreatePolicyVersion)++responseCreateRole :: CreateRoleResponse -> TestTree+responseCreateRole =+ res+ "CreateRoleResponse"+ "fixture/CreateRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateRole)++responseCreateSAMLProvider :: CreateSAMLProviderResponse -> TestTree+responseCreateSAMLProvider =+ res+ "CreateSAMLProviderResponse"+ "fixture/CreateSAMLProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateSAMLProvider)++responseCreateServiceLinkedRole :: CreateServiceLinkedRoleResponse -> TestTree+responseCreateServiceLinkedRole =+ res+ "CreateServiceLinkedRoleResponse"+ "fixture/CreateServiceLinkedRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateServiceLinkedRole)++responseCreateServiceSpecificCredential :: CreateServiceSpecificCredentialResponse -> TestTree+responseCreateServiceSpecificCredential =+ res+ "CreateServiceSpecificCredentialResponse"+ "fixture/CreateServiceSpecificCredentialResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateServiceSpecificCredential)++responseCreateUser :: CreateUserResponse -> TestTree+responseCreateUser =+ res+ "CreateUserResponse"+ "fixture/CreateUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateUser)++responseCreateVirtualMFADevice :: CreateVirtualMFADeviceResponse -> TestTree+responseCreateVirtualMFADevice =+ res+ "CreateVirtualMFADeviceResponse"+ "fixture/CreateVirtualMFADeviceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateVirtualMFADevice)++responseDeactivateMFADevice :: DeactivateMFADeviceResponse -> TestTree+responseDeactivateMFADevice =+ res+ "DeactivateMFADeviceResponse"+ "fixture/DeactivateMFADeviceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeactivateMFADevice)++responseDeleteAccessKey :: DeleteAccessKeyResponse -> TestTree+responseDeleteAccessKey =+ res+ "DeleteAccessKeyResponse"+ "fixture/DeleteAccessKeyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteAccessKey)++responseDeleteAccountAlias :: DeleteAccountAliasResponse -> TestTree+responseDeleteAccountAlias =+ res+ "DeleteAccountAliasResponse"+ "fixture/DeleteAccountAliasResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteAccountAlias)++responseDeleteAccountPasswordPolicy :: DeleteAccountPasswordPolicyResponse -> TestTree+responseDeleteAccountPasswordPolicy =+ res+ "DeleteAccountPasswordPolicyResponse"+ "fixture/DeleteAccountPasswordPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteAccountPasswordPolicy)++responseDeleteGroup :: DeleteGroupResponse -> TestTree+responseDeleteGroup =+ res+ "DeleteGroupResponse"+ "fixture/DeleteGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteGroup)++responseDeleteGroupPolicy :: DeleteGroupPolicyResponse -> TestTree+responseDeleteGroupPolicy =+ res+ "DeleteGroupPolicyResponse"+ "fixture/DeleteGroupPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteGroupPolicy)++responseDeleteInstanceProfile :: DeleteInstanceProfileResponse -> TestTree+responseDeleteInstanceProfile =+ res+ "DeleteInstanceProfileResponse"+ "fixture/DeleteInstanceProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteInstanceProfile)++responseDeleteLoginProfile :: DeleteLoginProfileResponse -> TestTree+responseDeleteLoginProfile =+ res+ "DeleteLoginProfileResponse"+ "fixture/DeleteLoginProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteLoginProfile)++responseDeleteOpenIDConnectProvider :: DeleteOpenIDConnectProviderResponse -> TestTree+responseDeleteOpenIDConnectProvider =+ res+ "DeleteOpenIDConnectProviderResponse"+ "fixture/DeleteOpenIDConnectProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteOpenIDConnectProvider)++responseDeletePolicy :: DeletePolicyResponse -> TestTree+responseDeletePolicy =+ res+ "DeletePolicyResponse"+ "fixture/DeletePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeletePolicy)++responseDeletePolicyVersion :: DeletePolicyVersionResponse -> TestTree+responseDeletePolicyVersion =+ res+ "DeletePolicyVersionResponse"+ "fixture/DeletePolicyVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeletePolicyVersion)++responseDeleteRole :: DeleteRoleResponse -> TestTree+responseDeleteRole =+ res+ "DeleteRoleResponse"+ "fixture/DeleteRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteRole)++responseDeleteRolePermissionsBoundary :: DeleteRolePermissionsBoundaryResponse -> TestTree+responseDeleteRolePermissionsBoundary =+ res+ "DeleteRolePermissionsBoundaryResponse"+ "fixture/DeleteRolePermissionsBoundaryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteRolePermissionsBoundary)++responseDeleteRolePolicy :: DeleteRolePolicyResponse -> TestTree+responseDeleteRolePolicy =+ res+ "DeleteRolePolicyResponse"+ "fixture/DeleteRolePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteRolePolicy)++responseDeleteSAMLProvider :: DeleteSAMLProviderResponse -> TestTree+responseDeleteSAMLProvider =+ res+ "DeleteSAMLProviderResponse"+ "fixture/DeleteSAMLProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteSAMLProvider)++responseDeleteSSHPublicKey :: DeleteSSHPublicKeyResponse -> TestTree+responseDeleteSSHPublicKey =+ res+ "DeleteSSHPublicKeyResponse"+ "fixture/DeleteSSHPublicKeyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteSSHPublicKey)++responseDeleteServerCertificate :: DeleteServerCertificateResponse -> TestTree+responseDeleteServerCertificate =+ res+ "DeleteServerCertificateResponse"+ "fixture/DeleteServerCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteServerCertificate)++responseDeleteServiceLinkedRole :: DeleteServiceLinkedRoleResponse -> TestTree+responseDeleteServiceLinkedRole =+ res+ "DeleteServiceLinkedRoleResponse"+ "fixture/DeleteServiceLinkedRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteServiceLinkedRole)++responseDeleteServiceSpecificCredential :: DeleteServiceSpecificCredentialResponse -> TestTree+responseDeleteServiceSpecificCredential =+ res+ "DeleteServiceSpecificCredentialResponse"+ "fixture/DeleteServiceSpecificCredentialResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteServiceSpecificCredential)++responseDeleteSigningCertificate :: DeleteSigningCertificateResponse -> TestTree+responseDeleteSigningCertificate =+ res+ "DeleteSigningCertificateResponse"+ "fixture/DeleteSigningCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteSigningCertificate)++responseDeleteUser :: DeleteUserResponse -> TestTree+responseDeleteUser =+ res+ "DeleteUserResponse"+ "fixture/DeleteUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteUser)++responseDeleteUserPermissionsBoundary :: DeleteUserPermissionsBoundaryResponse -> TestTree+responseDeleteUserPermissionsBoundary =+ res+ "DeleteUserPermissionsBoundaryResponse"+ "fixture/DeleteUserPermissionsBoundaryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteUserPermissionsBoundary)++responseDeleteUserPolicy :: DeleteUserPolicyResponse -> TestTree+responseDeleteUserPolicy =+ res+ "DeleteUserPolicyResponse"+ "fixture/DeleteUserPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteUserPolicy)++responseDeleteVirtualMFADevice :: DeleteVirtualMFADeviceResponse -> TestTree+responseDeleteVirtualMFADevice =+ res+ "DeleteVirtualMFADeviceResponse"+ "fixture/DeleteVirtualMFADeviceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteVirtualMFADevice)++responseDetachGroupPolicy :: DetachGroupPolicyResponse -> TestTree+responseDetachGroupPolicy =+ res+ "DetachGroupPolicyResponse"+ "fixture/DetachGroupPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DetachGroupPolicy)++responseDetachRolePolicy :: DetachRolePolicyResponse -> TestTree+responseDetachRolePolicy =+ res+ "DetachRolePolicyResponse"+ "fixture/DetachRolePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DetachRolePolicy)++responseDetachUserPolicy :: DetachUserPolicyResponse -> TestTree+responseDetachUserPolicy =+ res+ "DetachUserPolicyResponse"+ "fixture/DetachUserPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DetachUserPolicy)++responseEnableMFADevice :: EnableMFADeviceResponse -> TestTree+responseEnableMFADevice =+ res+ "EnableMFADeviceResponse"+ "fixture/EnableMFADeviceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy EnableMFADevice)++responseGenerateCredentialReport :: GenerateCredentialReportResponse -> TestTree+responseGenerateCredentialReport =+ res+ "GenerateCredentialReportResponse"+ "fixture/GenerateCredentialReportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GenerateCredentialReport)++responseGenerateOrganizationsAccessReport :: GenerateOrganizationsAccessReportResponse -> TestTree+responseGenerateOrganizationsAccessReport =+ res+ "GenerateOrganizationsAccessReportResponse"+ "fixture/GenerateOrganizationsAccessReportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GenerateOrganizationsAccessReport)++responseGenerateServiceLastAccessedDetails :: GenerateServiceLastAccessedDetailsResponse -> TestTree+responseGenerateServiceLastAccessedDetails =+ res+ "GenerateServiceLastAccessedDetailsResponse"+ "fixture/GenerateServiceLastAccessedDetailsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GenerateServiceLastAccessedDetails)++responseGetAccessKeyLastUsed :: GetAccessKeyLastUsedResponse -> TestTree+responseGetAccessKeyLastUsed =+ res+ "GetAccessKeyLastUsedResponse"+ "fixture/GetAccessKeyLastUsedResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetAccessKeyLastUsed)++responseGetAccountAuthorizationDetails :: GetAccountAuthorizationDetailsResponse -> TestTree+responseGetAccountAuthorizationDetails =+ res+ "GetAccountAuthorizationDetailsResponse"+ "fixture/GetAccountAuthorizationDetailsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetAccountAuthorizationDetails)++responseGetAccountPasswordPolicy :: GetAccountPasswordPolicyResponse -> TestTree+responseGetAccountPasswordPolicy =+ res+ "GetAccountPasswordPolicyResponse"+ "fixture/GetAccountPasswordPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetAccountPasswordPolicy)++responseGetAccountSummary :: GetAccountSummaryResponse -> TestTree+responseGetAccountSummary =+ res+ "GetAccountSummaryResponse"+ "fixture/GetAccountSummaryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetAccountSummary)++responseGetContextKeysForCustomPolicy :: GetContextKeysForPolicyResponse -> TestTree+responseGetContextKeysForCustomPolicy =+ res+ "GetContextKeysForCustomPolicyResponse"+ "fixture/GetContextKeysForCustomPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetContextKeysForCustomPolicy)++responseGetContextKeysForPrincipalPolicy :: GetContextKeysForPolicyResponse -> TestTree+responseGetContextKeysForPrincipalPolicy =+ res+ "GetContextKeysForPrincipalPolicyResponse"+ "fixture/GetContextKeysForPrincipalPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetContextKeysForPrincipalPolicy)++responseGetCredentialReport :: GetCredentialReportResponse -> TestTree+responseGetCredentialReport =+ res+ "GetCredentialReportResponse"+ "fixture/GetCredentialReportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetCredentialReport)++responseGetGroup :: GetGroupResponse -> TestTree+responseGetGroup =+ res+ "GetGroupResponse"+ "fixture/GetGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetGroup)++responseGetGroupPolicy :: GetGroupPolicyResponse -> TestTree+responseGetGroupPolicy =+ res+ "GetGroupPolicyResponse"+ "fixture/GetGroupPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetGroupPolicy)++responseGetInstanceProfile :: GetInstanceProfileResponse -> TestTree+responseGetInstanceProfile =+ res+ "GetInstanceProfileResponse"+ "fixture/GetInstanceProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetInstanceProfile)++responseGetLoginProfile :: GetLoginProfileResponse -> TestTree+responseGetLoginProfile =+ res+ "GetLoginProfileResponse"+ "fixture/GetLoginProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetLoginProfile)++responseGetOpenIDConnectProvider :: GetOpenIDConnectProviderResponse -> TestTree+responseGetOpenIDConnectProvider =+ res+ "GetOpenIDConnectProviderResponse"+ "fixture/GetOpenIDConnectProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetOpenIDConnectProvider)++responseGetOrganizationsAccessReport :: GetOrganizationsAccessReportResponse -> TestTree+responseGetOrganizationsAccessReport =+ res+ "GetOrganizationsAccessReportResponse"+ "fixture/GetOrganizationsAccessReportResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetOrganizationsAccessReport)++responseGetPolicy :: GetPolicyResponse -> TestTree+responseGetPolicy =+ res+ "GetPolicyResponse"+ "fixture/GetPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetPolicy)++responseGetPolicyVersion :: GetPolicyVersionResponse -> TestTree+responseGetPolicyVersion =+ res+ "GetPolicyVersionResponse"+ "fixture/GetPolicyVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetPolicyVersion)++responseGetRole :: GetRoleResponse -> TestTree+responseGetRole =+ res+ "GetRoleResponse"+ "fixture/GetRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetRole)++responseGetRolePolicy :: GetRolePolicyResponse -> TestTree+responseGetRolePolicy =+ res+ "GetRolePolicyResponse"+ "fixture/GetRolePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetRolePolicy)++responseGetSAMLProvider :: GetSAMLProviderResponse -> TestTree+responseGetSAMLProvider =+ res+ "GetSAMLProviderResponse"+ "fixture/GetSAMLProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetSAMLProvider)++responseGetSSHPublicKey :: GetSSHPublicKeyResponse -> TestTree+responseGetSSHPublicKey =+ res+ "GetSSHPublicKeyResponse"+ "fixture/GetSSHPublicKeyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetSSHPublicKey)++responseGetServerCertificate :: GetServerCertificateResponse -> TestTree+responseGetServerCertificate =+ res+ "GetServerCertificateResponse"+ "fixture/GetServerCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetServerCertificate)++responseGetServiceLastAccessedDetails :: GetServiceLastAccessedDetailsResponse -> TestTree+responseGetServiceLastAccessedDetails =+ res+ "GetServiceLastAccessedDetailsResponse"+ "fixture/GetServiceLastAccessedDetailsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetServiceLastAccessedDetails)++responseGetServiceLastAccessedDetailsWithEntities :: GetServiceLastAccessedDetailsWithEntitiesResponse -> TestTree+responseGetServiceLastAccessedDetailsWithEntities =+ res+ "GetServiceLastAccessedDetailsWithEntitiesResponse"+ "fixture/GetServiceLastAccessedDetailsWithEntitiesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetServiceLastAccessedDetailsWithEntities)++responseGetServiceLinkedRoleDeletionStatus :: GetServiceLinkedRoleDeletionStatusResponse -> TestTree+responseGetServiceLinkedRoleDeletionStatus =+ res+ "GetServiceLinkedRoleDeletionStatusResponse"+ "fixture/GetServiceLinkedRoleDeletionStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetServiceLinkedRoleDeletionStatus)++responseGetUser :: GetUserResponse -> TestTree+responseGetUser =+ res+ "GetUserResponse"+ "fixture/GetUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetUser)++responseGetUserPolicy :: GetUserPolicyResponse -> TestTree+responseGetUserPolicy =+ res+ "GetUserPolicyResponse"+ "fixture/GetUserPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetUserPolicy)++responseListAccessKeys :: ListAccessKeysResponse -> TestTree+responseListAccessKeys =+ res+ "ListAccessKeysResponse"+ "fixture/ListAccessKeysResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAccessKeys)++responseListAccountAliases :: ListAccountAliasesResponse -> TestTree+responseListAccountAliases =+ res+ "ListAccountAliasesResponse"+ "fixture/ListAccountAliasesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAccountAliases)++responseListAttachedGroupPolicies :: ListAttachedGroupPoliciesResponse -> TestTree+responseListAttachedGroupPolicies =+ res+ "ListAttachedGroupPoliciesResponse"+ "fixture/ListAttachedGroupPoliciesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAttachedGroupPolicies)++responseListAttachedRolePolicies :: ListAttachedRolePoliciesResponse -> TestTree+responseListAttachedRolePolicies =+ res+ "ListAttachedRolePoliciesResponse"+ "fixture/ListAttachedRolePoliciesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAttachedRolePolicies)++responseListAttachedUserPolicies :: ListAttachedUserPoliciesResponse -> TestTree+responseListAttachedUserPolicies =+ res+ "ListAttachedUserPoliciesResponse"+ "fixture/ListAttachedUserPoliciesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAttachedUserPolicies)++responseListEntitiesForPolicy :: ListEntitiesForPolicyResponse -> TestTree+responseListEntitiesForPolicy =+ res+ "ListEntitiesForPolicyResponse"+ "fixture/ListEntitiesForPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListEntitiesForPolicy)++responseListGroupPolicies :: ListGroupPoliciesResponse -> TestTree+responseListGroupPolicies =+ res+ "ListGroupPoliciesResponse"+ "fixture/ListGroupPoliciesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListGroupPolicies)++responseListGroups :: ListGroupsResponse -> TestTree+responseListGroups =+ res+ "ListGroupsResponse"+ "fixture/ListGroupsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListGroups)++responseListGroupsForUser :: ListGroupsForUserResponse -> TestTree+responseListGroupsForUser =+ res+ "ListGroupsForUserResponse"+ "fixture/ListGroupsForUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListGroupsForUser)++responseListInstanceProfileTags :: ListInstanceProfileTagsResponse -> TestTree+responseListInstanceProfileTags =+ res+ "ListInstanceProfileTagsResponse"+ "fixture/ListInstanceProfileTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListInstanceProfileTags)++responseListInstanceProfiles :: ListInstanceProfilesResponse -> TestTree+responseListInstanceProfiles =+ res+ "ListInstanceProfilesResponse"+ "fixture/ListInstanceProfilesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListInstanceProfiles)++responseListInstanceProfilesForRole :: ListInstanceProfilesForRoleResponse -> TestTree+responseListInstanceProfilesForRole =+ res+ "ListInstanceProfilesForRoleResponse"+ "fixture/ListInstanceProfilesForRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListInstanceProfilesForRole)++responseListMFADeviceTags :: ListMFADeviceTagsResponse -> TestTree+responseListMFADeviceTags =+ res+ "ListMFADeviceTagsResponse"+ "fixture/ListMFADeviceTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListMFADeviceTags)++responseListMFADevices :: ListMFADevicesResponse -> TestTree+responseListMFADevices =+ res+ "ListMFADevicesResponse"+ "fixture/ListMFADevicesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListMFADevices)++responseListOpenIDConnectProviderTags :: ListOpenIDConnectProviderTagsResponse -> TestTree+responseListOpenIDConnectProviderTags =+ res+ "ListOpenIDConnectProviderTagsResponse"+ "fixture/ListOpenIDConnectProviderTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListOpenIDConnectProviderTags)++responseListOpenIDConnectProviders :: ListOpenIDConnectProvidersResponse -> TestTree+responseListOpenIDConnectProviders =+ res+ "ListOpenIDConnectProvidersResponse"+ "fixture/ListOpenIDConnectProvidersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListOpenIDConnectProviders)++responseListPolicies :: ListPoliciesResponse -> TestTree+responseListPolicies =+ res+ "ListPoliciesResponse"+ "fixture/ListPoliciesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPolicies)++responseListPoliciesGrantingServiceAccess :: ListPoliciesGrantingServiceAccessResponse -> TestTree+responseListPoliciesGrantingServiceAccess =+ res+ "ListPoliciesGrantingServiceAccessResponse"+ "fixture/ListPoliciesGrantingServiceAccessResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPoliciesGrantingServiceAccess)++responseListPolicyTags :: ListPolicyTagsResponse -> TestTree+responseListPolicyTags =+ res+ "ListPolicyTagsResponse"+ "fixture/ListPolicyTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPolicyTags)++responseListPolicyVersions :: ListPolicyVersionsResponse -> TestTree+responseListPolicyVersions =+ res+ "ListPolicyVersionsResponse"+ "fixture/ListPolicyVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPolicyVersions)++responseListRolePolicies :: ListRolePoliciesResponse -> TestTree+responseListRolePolicies =+ res+ "ListRolePoliciesResponse"+ "fixture/ListRolePoliciesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRolePolicies)++responseListRoleTags :: ListRoleTagsResponse -> TestTree+responseListRoleTags =+ res+ "ListRoleTagsResponse"+ "fixture/ListRoleTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRoleTags)++responseListRoles :: ListRolesResponse -> TestTree+responseListRoles =+ res+ "ListRolesResponse"+ "fixture/ListRolesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRoles)++responseListSAMLProviderTags :: ListSAMLProviderTagsResponse -> TestTree+responseListSAMLProviderTags =+ res+ "ListSAMLProviderTagsResponse"+ "fixture/ListSAMLProviderTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSAMLProviderTags)++responseListSAMLProviders :: ListSAMLProvidersResponse -> TestTree+responseListSAMLProviders =+ res+ "ListSAMLProvidersResponse"+ "fixture/ListSAMLProvidersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSAMLProviders)++responseListSSHPublicKeys :: ListSSHPublicKeysResponse -> TestTree+responseListSSHPublicKeys =+ res+ "ListSSHPublicKeysResponse"+ "fixture/ListSSHPublicKeysResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSSHPublicKeys)++responseListServerCertificateTags :: ListServerCertificateTagsResponse -> TestTree+responseListServerCertificateTags =+ res+ "ListServerCertificateTagsResponse"+ "fixture/ListServerCertificateTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListServerCertificateTags)++responseListServerCertificates :: ListServerCertificatesResponse -> TestTree+responseListServerCertificates =+ res+ "ListServerCertificatesResponse"+ "fixture/ListServerCertificatesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListServerCertificates)++responseListServiceSpecificCredentials :: ListServiceSpecificCredentialsResponse -> TestTree+responseListServiceSpecificCredentials =+ res+ "ListServiceSpecificCredentialsResponse"+ "fixture/ListServiceSpecificCredentialsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListServiceSpecificCredentials)++responseListSigningCertificates :: ListSigningCertificatesResponse -> TestTree+responseListSigningCertificates =+ res+ "ListSigningCertificatesResponse"+ "fixture/ListSigningCertificatesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSigningCertificates)++responseListUserPolicies :: ListUserPoliciesResponse -> TestTree+responseListUserPolicies =+ res+ "ListUserPoliciesResponse"+ "fixture/ListUserPoliciesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListUserPolicies)++responseListUserTags :: ListUserTagsResponse -> TestTree+responseListUserTags =+ res+ "ListUserTagsResponse"+ "fixture/ListUserTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListUserTags)++responseListUsers :: ListUsersResponse -> TestTree+responseListUsers =+ res+ "ListUsersResponse"+ "fixture/ListUsersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListUsers)++responseListVirtualMFADevices :: ListVirtualMFADevicesResponse -> TestTree+responseListVirtualMFADevices =+ res+ "ListVirtualMFADevicesResponse"+ "fixture/ListVirtualMFADevicesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListVirtualMFADevices)++responsePutGroupPolicy :: PutGroupPolicyResponse -> TestTree+responsePutGroupPolicy =+ res+ "PutGroupPolicyResponse"+ "fixture/PutGroupPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutGroupPolicy)++responsePutRolePermissionsBoundary :: PutRolePermissionsBoundaryResponse -> TestTree+responsePutRolePermissionsBoundary =+ res+ "PutRolePermissionsBoundaryResponse"+ "fixture/PutRolePermissionsBoundaryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutRolePermissionsBoundary)++responsePutRolePolicy :: PutRolePolicyResponse -> TestTree+responsePutRolePolicy =+ res+ "PutRolePolicyResponse"+ "fixture/PutRolePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutRolePolicy)++responsePutUserPermissionsBoundary :: PutUserPermissionsBoundaryResponse -> TestTree+responsePutUserPermissionsBoundary =+ res+ "PutUserPermissionsBoundaryResponse"+ "fixture/PutUserPermissionsBoundaryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutUserPermissionsBoundary)++responsePutUserPolicy :: PutUserPolicyResponse -> TestTree+responsePutUserPolicy =+ res+ "PutUserPolicyResponse"+ "fixture/PutUserPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutUserPolicy)++responseRemoveClientIDFromOpenIDConnectProvider :: RemoveClientIDFromOpenIDConnectProviderResponse -> TestTree+responseRemoveClientIDFromOpenIDConnectProvider =+ res+ "RemoveClientIDFromOpenIDConnectProviderResponse"+ "fixture/RemoveClientIDFromOpenIDConnectProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveClientIDFromOpenIDConnectProvider)++responseRemoveRoleFromInstanceProfile :: RemoveRoleFromInstanceProfileResponse -> TestTree+responseRemoveRoleFromInstanceProfile =+ res+ "RemoveRoleFromInstanceProfileResponse"+ "fixture/RemoveRoleFromInstanceProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveRoleFromInstanceProfile)++responseRemoveUserFromGroup :: RemoveUserFromGroupResponse -> TestTree+responseRemoveUserFromGroup =+ res+ "RemoveUserFromGroupResponse"+ "fixture/RemoveUserFromGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveUserFromGroup)++responseResetServiceSpecificCredential :: ResetServiceSpecificCredentialResponse -> TestTree+responseResetServiceSpecificCredential =+ res+ "ResetServiceSpecificCredentialResponse"+ "fixture/ResetServiceSpecificCredentialResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ResetServiceSpecificCredential)++responseResyncMFADevice :: ResyncMFADeviceResponse -> TestTree+responseResyncMFADevice =+ res+ "ResyncMFADeviceResponse"+ "fixture/ResyncMFADeviceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ResyncMFADevice)++responseSetDefaultPolicyVersion :: SetDefaultPolicyVersionResponse -> TestTree+responseSetDefaultPolicyVersion =+ res+ "SetDefaultPolicyVersionResponse"+ "fixture/SetDefaultPolicyVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy SetDefaultPolicyVersion)++responseSetSecurityTokenServicePreferences :: SetSecurityTokenServicePreferencesResponse -> TestTree+responseSetSecurityTokenServicePreferences =+ res+ "SetSecurityTokenServicePreferencesResponse"+ "fixture/SetSecurityTokenServicePreferencesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy SetSecurityTokenServicePreferences)++responseSimulateCustomPolicy :: SimulatePolicyResponse -> TestTree+responseSimulateCustomPolicy =+ res+ "SimulateCustomPolicyResponse"+ "fixture/SimulateCustomPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy SimulateCustomPolicy)++responseSimulatePrincipalPolicy :: SimulatePolicyResponse -> TestTree+responseSimulatePrincipalPolicy =+ res+ "SimulatePrincipalPolicyResponse"+ "fixture/SimulatePrincipalPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy SimulatePrincipalPolicy)++responseTagInstanceProfile :: TagInstanceProfileResponse -> TestTree+responseTagInstanceProfile =+ res+ "TagInstanceProfileResponse"+ "fixture/TagInstanceProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagInstanceProfile)++responseTagMFADevice :: TagMFADeviceResponse -> TestTree+responseTagMFADevice =+ res+ "TagMFADeviceResponse"+ "fixture/TagMFADeviceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagMFADevice)++responseTagOpenIDConnectProvider :: TagOpenIDConnectProviderResponse -> TestTree+responseTagOpenIDConnectProvider =+ res+ "TagOpenIDConnectProviderResponse"+ "fixture/TagOpenIDConnectProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagOpenIDConnectProvider)++responseTagPolicy :: TagPolicyResponse -> TestTree+responseTagPolicy =+ res+ "TagPolicyResponse"+ "fixture/TagPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagPolicy)++responseTagRole :: TagRoleResponse -> TestTree+responseTagRole =+ res+ "TagRoleResponse"+ "fixture/TagRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagRole)++responseTagSAMLProvider :: TagSAMLProviderResponse -> TestTree+responseTagSAMLProvider =+ res+ "TagSAMLProviderResponse"+ "fixture/TagSAMLProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagSAMLProvider)++responseTagServerCertificate :: TagServerCertificateResponse -> TestTree+responseTagServerCertificate =+ res+ "TagServerCertificateResponse"+ "fixture/TagServerCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagServerCertificate)++responseTagUser :: TagUserResponse -> TestTree+responseTagUser =+ res+ "TagUserResponse"+ "fixture/TagUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagUser)++responseUntagInstanceProfile :: UntagInstanceProfileResponse -> TestTree+responseUntagInstanceProfile =+ res+ "UntagInstanceProfileResponse"+ "fixture/UntagInstanceProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagInstanceProfile)++responseUntagMFADevice :: UntagMFADeviceResponse -> TestTree+responseUntagMFADevice =+ res+ "UntagMFADeviceResponse"+ "fixture/UntagMFADeviceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagMFADevice)++responseUntagOpenIDConnectProvider :: UntagOpenIDConnectProviderResponse -> TestTree+responseUntagOpenIDConnectProvider =+ res+ "UntagOpenIDConnectProviderResponse"+ "fixture/UntagOpenIDConnectProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagOpenIDConnectProvider)++responseUntagPolicy :: UntagPolicyResponse -> TestTree+responseUntagPolicy =+ res+ "UntagPolicyResponse"+ "fixture/UntagPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagPolicy)++responseUntagRole :: UntagRoleResponse -> TestTree+responseUntagRole =+ res+ "UntagRoleResponse"+ "fixture/UntagRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagRole)++responseUntagSAMLProvider :: UntagSAMLProviderResponse -> TestTree+responseUntagSAMLProvider =+ res+ "UntagSAMLProviderResponse"+ "fixture/UntagSAMLProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagSAMLProvider)++responseUntagServerCertificate :: UntagServerCertificateResponse -> TestTree+responseUntagServerCertificate =+ res+ "UntagServerCertificateResponse"+ "fixture/UntagServerCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagServerCertificate)++responseUntagUser :: UntagUserResponse -> TestTree+responseUntagUser =+ res+ "UntagUserResponse"+ "fixture/UntagUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagUser)++responseUpdateAccessKey :: UpdateAccessKeyResponse -> TestTree+responseUpdateAccessKey =+ res+ "UpdateAccessKeyResponse"+ "fixture/UpdateAccessKeyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateAccessKey)++responseUpdateAccountPasswordPolicy :: UpdateAccountPasswordPolicyResponse -> TestTree+responseUpdateAccountPasswordPolicy =+ res+ "UpdateAccountPasswordPolicyResponse"+ "fixture/UpdateAccountPasswordPolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateAccountPasswordPolicy)++responseUpdateAssumeRolePolicy :: UpdateAssumeRolePolicyResponse -> TestTree+responseUpdateAssumeRolePolicy =+ res+ "UpdateAssumeRolePolicyResponse"+ "fixture/UpdateAssumeRolePolicyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateAssumeRolePolicy)++responseUpdateGroup :: UpdateGroupResponse -> TestTree+responseUpdateGroup =+ res+ "UpdateGroupResponse"+ "fixture/UpdateGroupResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateGroup)++responseUpdateLoginProfile :: UpdateLoginProfileResponse -> TestTree+responseUpdateLoginProfile =+ res+ "UpdateLoginProfileResponse"+ "fixture/UpdateLoginProfileResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateLoginProfile)++responseUpdateOpenIDConnectProviderThumbprint :: UpdateOpenIDConnectProviderThumbprintResponse -> TestTree+responseUpdateOpenIDConnectProviderThumbprint =+ res+ "UpdateOpenIDConnectProviderThumbprintResponse"+ "fixture/UpdateOpenIDConnectProviderThumbprintResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateOpenIDConnectProviderThumbprint)++responseUpdateRole :: UpdateRoleResponse -> TestTree+responseUpdateRole =+ res+ "UpdateRoleResponse"+ "fixture/UpdateRoleResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateRole)++responseUpdateRoleDescription :: UpdateRoleDescriptionResponse -> TestTree+responseUpdateRoleDescription =+ res+ "UpdateRoleDescriptionResponse"+ "fixture/UpdateRoleDescriptionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateRoleDescription)++responseUpdateSAMLProvider :: UpdateSAMLProviderResponse -> TestTree+responseUpdateSAMLProvider =+ res+ "UpdateSAMLProviderResponse"+ "fixture/UpdateSAMLProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateSAMLProvider)++responseUpdateSSHPublicKey :: UpdateSSHPublicKeyResponse -> TestTree+responseUpdateSSHPublicKey =+ res+ "UpdateSSHPublicKeyResponse"+ "fixture/UpdateSSHPublicKeyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateSSHPublicKey)++responseUpdateServerCertificate :: UpdateServerCertificateResponse -> TestTree+responseUpdateServerCertificate =+ res+ "UpdateServerCertificateResponse"+ "fixture/UpdateServerCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateServerCertificate)++responseUpdateServiceSpecificCredential :: UpdateServiceSpecificCredentialResponse -> TestTree+responseUpdateServiceSpecificCredential =+ res+ "UpdateServiceSpecificCredentialResponse"+ "fixture/UpdateServiceSpecificCredentialResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateServiceSpecificCredential)++responseUpdateSigningCertificate :: UpdateSigningCertificateResponse -> TestTree+responseUpdateSigningCertificate =+ res+ "UpdateSigningCertificateResponse"+ "fixture/UpdateSigningCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateSigningCertificate)++responseUpdateUser :: UpdateUserResponse -> TestTree+responseUpdateUser =+ res+ "UpdateUserResponse"+ "fixture/UpdateUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateUser)++responseUploadSSHPublicKey :: UploadSSHPublicKeyResponse -> TestTree+responseUploadSSHPublicKey =+ res+ "UploadSSHPublicKeyResponse"+ "fixture/UploadSSHPublicKeyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UploadSSHPublicKey)++responseUploadServerCertificate :: UploadServerCertificateResponse -> TestTree+responseUploadServerCertificate =+ res+ "UploadServerCertificateResponse"+ "fixture/UploadServerCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UploadServerCertificate)++responseUploadSigningCertificate :: UploadSigningCertificateResponse -> TestTree+responseUploadSigningCertificate =+ res+ "UploadSigningCertificateResponse"+ "fixture/UploadSigningCertificateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UploadSigningCertificate)
+ test/Test/Amazonka/IAM.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.IAM+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.IAM+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/IAM/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.IAM.Internal+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.IAM.Internal where