Aws.Iam.Core

aws-0.24.4: Amazon Web Services (AWS) for Haskell

Safe Haskell | None
Language | Haskell2010

Aws.Iam.Core

Synopsis

- iamSignQuery :: [(ByteString, ByteString)] -> IamConfiguration qt -> SignatureData -> SignedQuery
- iamResponseConsumer :: (Cursor -> Response IamMetadata a) -> IORef IamMetadata -> HTTPResponseConsumer a
- data IamMetadata = IamMetadata {
  - requestId :: Maybe Text
  }
- data IamConfiguration qt = IamConfiguration {
  - iamEndpoint :: ByteString
  - iamPort :: Int
  - iamProtocol :: Protocol
  - iamHttpMethod :: Method
  }
- data IamError = IamError {
  - iamStatusCode :: Status
  - iamErrorCode :: Text
  - iamErrorMessage :: Text
  }
- parseDateTime :: MonadThrow m => String -> m UTCTime
- data AccessKeyStatus
  - = AccessKeyActive
  - | AccessKeyInactive
- data User = User {
  - userArn :: Text
  - userCreateDate :: UTCTime
  - userPath :: Text
  - userUserId :: Text
  - userUserName :: Text
  }
- parseUser :: MonadThrow m => Cursor -> m User
- data Group = Group {
  - groupArn :: Text
  - groupCreateDate :: UTCTime
  - groupPath :: Text
  - groupGroupId :: Text
  - groupGroupName :: Text
  }
- parseGroup :: MonadThrow m => Cursor -> m Group
- data MfaDevice = MfaDevice {
  - mfaEnableDate :: UTCTime
  - mfaSerialNumber :: Text
  - mfaUserName :: Text
  }
- parseMfaDevice :: MonadThrow m => Cursor -> m MfaDevice

# Documentation

iamSignQuery #

Arguments

:: [(ByteString, ByteString)] | Pairs of parameter names and values that will be passed as part of the request data.
-> IamConfiguration qt |
-> SignatureData |
-> SignedQuery |

Constructs a `SignedQuery` with the specified request parameters.

iamResponseConsumer :: (Cursor -> Response IamMetadata a) -> IORef IamMetadata -> HTTPResponseConsumer a #

Reads the metadata from an IAM response and delegates parsing the rest of the data from the response to the given function.

data IamMetadata #

Constructors

IamMetadata |
Fields requestId :: Maybe Text

#### Instances

Instances details

Loggable IamMetadata # |
Instance details Defined in Aws.Iam.Core Methods toLogText :: IamMetadata -> Text #
Monoid IamMetadata # |
Instance details Defined in Aws.Iam.Core Methods mempty :: IamMetadata # mappend :: IamMetadata -> IamMetadata -> IamMetadata # mconcat :: [IamMetadata] -> IamMetadata #
Semigroup IamMetadata # |
Instance details Defined in Aws.Iam.Core Methods (<>) :: IamMetadata -> IamMetadata -> IamMetadata # sconcat :: NonEmpty IamMetadata -> IamMetadata # stimes :: Integral b => b -> IamMetadata -> IamMetadata #
Show IamMetadata # |
Instance details Defined in Aws.Iam.Core Methods showsPrec :: Int -> IamMetadata -> ShowS # show :: IamMetadata -> String # showList :: [IamMetadata] -> ShowS #

data IamConfiguration qt #

Constructors

IamConfiguration |
Fields iamEndpoint :: ByteString iamPort :: Int iamProtocol :: Protocol iamHttpMethod :: Method

#### Instances

Instances details

DefaultServiceConfiguration (IamConfiguration NormalQuery) # |
Instance details Defined in Aws.Iam.Core Methods defServiceConfig :: IamConfiguration NormalQuery # debugServiceConfig :: IamConfiguration NormalQuery #
DefaultServiceConfiguration (IamConfiguration UriOnlyQuery) # |
Instance details Defined in Aws.Iam.Core Methods defServiceConfig :: IamConfiguration UriOnlyQuery # debugServiceConfig :: IamConfiguration UriOnlyQuery #
Show (IamConfiguration qt) # |
Instance details Defined in Aws.Iam.Core Methods showsPrec :: Int -> IamConfiguration qt -> ShowS # show :: IamConfiguration qt -> String # showList :: [IamConfiguration qt] -> ShowS #

data IamError #

Constructors

IamError |
Fields iamStatusCode :: Status iamErrorCode :: Text iamErrorMessage :: Text

#### Instances

Instances details

Exception IamError # |
Instance details Defined in Aws.Iam.Core Methods toException :: IamError -> SomeException # fromException :: SomeException -> Maybe IamError # displayException :: IamError -> String # backtraceDesired :: IamError -> Bool #
Show IamError # |
Instance details Defined in Aws.Iam.Core Methods showsPrec :: Int -> IamError -> ShowS # show :: IamError -> String # showList :: [IamError] -> ShowS #

parseDateTime :: MonadThrow m => String -> m UTCTime #

Parses IAM `DateTime` data type.

data AccessKeyStatus #

Constructors

AccessKeyActive |
AccessKeyInactive |

#### Instances

Instances details

Show AccessKeyStatus # |
Instance details Defined in Aws.Iam.Core Methods showsPrec :: Int -> AccessKeyStatus -> ShowS # show :: AccessKeyStatus -> String # showList :: [AccessKeyStatus] -> ShowS #
Eq AccessKeyStatus # |
Instance details Defined in Aws.Iam.Core Methods (==) :: AccessKeyStatus -> AccessKeyStatus -> Bool # (/=) :: AccessKeyStatus -> AccessKeyStatus -> Bool #
Ord AccessKeyStatus # |
Instance details Defined in Aws.Iam.Core Methods compare :: AccessKeyStatus -> AccessKeyStatus -> Ordering # (<) :: AccessKeyStatus -> AccessKeyStatus -> Bool # (<=) :: AccessKeyStatus -> AccessKeyStatus -> Bool # (>) :: AccessKeyStatus -> AccessKeyStatus -> Bool # (>=) :: AccessKeyStatus -> AccessKeyStatus -> Bool # max :: AccessKeyStatus -> AccessKeyStatus -> AccessKeyStatus # min :: AccessKeyStatus -> AccessKeyStatus -> AccessKeyStatus #

data User #

The IAM `User` data type.

http://docs.aws.amazon.com/IAM/latest/APIReference/API_User.html

Constructors

User |
Fields userArn :: Text ARN used to refer to this user. userCreateDate :: UTCTime Date and time at which the user was created. userPath :: Text Path under which the user was created. userUserId :: Text Unique identifier used to refer to this user. userUserName :: Text Name of the user.

#### Instances

Instances details

Show User # |
Instance details Defined in Aws.Iam.Core Methods showsPrec :: Int -> User -> ShowS # show :: User -> String # showList :: [User] -> ShowS #
Eq User # |
Instance details Defined in Aws.Iam.Core Methods (==) :: User -> User -> Bool # (/=) :: User -> User -> Bool #
Ord User # |
Instance details Defined in Aws.Iam.Core Methods compare :: User -> User -> Ordering # (<) :: User -> User -> Bool # (<=) :: User -> User -> Bool # (>) :: User -> User -> Bool # (>=) :: User -> User -> Bool # max :: User -> User -> User # min :: User -> User -> User #

parseUser :: MonadThrow m => Cursor -> m User #

Parses the IAM `User` data type.

data Group #

The IAM `Group` data type.

http://docs.aws.amazon.com/IAM/latest/APIReference/API_Group.html

Constructors

Group |
Fields groupArn :: Text ARN used to refer to this group. groupCreateDate :: UTCTime Date and time at which the group was created. groupPath :: Text Path under which the group was created. groupGroupId :: Text Unique identifier used to refer to this group. groupGroupName :: Text Name of the group.

#### Instances

Instances details

Show Group # |
Instance details Defined in Aws.Iam.Core Methods showsPrec :: Int -> Group -> ShowS # show :: Group -> String # showList :: [Group] -> ShowS #
Eq Group # |
Instance details Defined in Aws.Iam.Core Methods (==) :: Group -> Group -> Bool # (/=) :: Group -> Group -> Bool #
Ord Group # |
Instance details Defined in Aws.Iam.Core Methods compare :: Group -> Group -> Ordering # (<) :: Group -> Group -> Bool # (<=) :: Group -> Group -> Bool # (>) :: Group -> Group -> Bool # (>=) :: Group -> Group -> Bool # max :: Group -> Group -> Group # min :: Group -> Group -> Group #

parseGroup :: MonadThrow m => Cursor -> m Group #

Parses the IAM `Group` data type.

data MfaDevice #

The IAM `MFADevice` data type.

https://docs.aws.amazon.com/IAM/latest/APIReference/API_MFADevice.html

Constructors

MfaDevice |
Fields mfaEnableDate :: UTCTime The date when the MFA device was enabled for the user. mfaSerialNumber :: Text The serial number that uniquely identifies the MFA device. For virtual MFA devices, the serial number is the device ARN. mfaUserName :: Text The user with whom the MFA device is associated. Minimum length of 1. Maximum length of 64.

#### Instances

Instances details

Show MfaDevice # |
Instance details Defined in Aws.Iam.Core Methods showsPrec :: Int -> MfaDevice -> ShowS # show :: MfaDevice -> String # showList :: [MfaDevice] -> ShowS #
Eq MfaDevice # |
Instance details Defined in Aws.Iam.Core Methods (==) :: MfaDevice -> MfaDevice -> Bool # (/=) :: MfaDevice -> MfaDevice -> Bool #
Ord MfaDevice # |
Instance details Defined in Aws.Iam.Core Methods compare :: MfaDevice -> MfaDevice -> Ordering # (<) :: MfaDevice -> MfaDevice -> Bool # (<=) :: MfaDevice -> MfaDevice -> Bool # (>) :: MfaDevice -> MfaDevice -> Bool # (>=) :: MfaDevice -> MfaDevice -> Bool # max :: MfaDevice -> MfaDevice -> MfaDevice # min :: MfaDevice -> MfaDevice -> MfaDevice #

parseMfaDevice :: MonadThrow m => Cursor -> m MfaDevice #

Parses the IAM `MFADevice` data type.