aws-0.16: 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 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

Show IamMetadata # |
Methods showsPrec :: Int -> IamMetadata -> ShowS # show :: IamMetadata -> String # showList :: [IamMetadata] -> ShowS #
Monoid IamMetadata # |
Methods mempty :: IamMetadata # mappend :: IamMetadata -> IamMetadata -> IamMetadata # mconcat :: [IamMetadata] -> IamMetadata #
Loggable IamMetadata # |
Methods toLogText :: IamMetadata -> Text #

data IamConfiguration qt #

Constructors

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

Instances

Show (IamConfiguration qt) # |
Methods showsPrec :: Int -> IamConfiguration qt -> ShowS # show :: IamConfiguration qt -> String # showList :: [IamConfiguration qt] -> ShowS #
DefaultServiceConfiguration (IamConfiguration UriOnlyQuery) # |
Methods defServiceConfig :: IamConfiguration UriOnlyQuery # debugServiceConfig :: IamConfiguration UriOnlyQuery #
DefaultServiceConfiguration (IamConfiguration NormalQuery) # |
Methods defServiceConfig :: IamConfiguration NormalQuery # debugServiceConfig :: IamConfiguration NormalQuery #

data IamError #

Constructors

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

Instances

Show IamError # |
Methods showsPrec :: Int -> IamError -> ShowS # show :: IamError -> String # showList :: [IamError] -> ShowS #
Exception IamError # |
Methods toException :: IamError -> SomeException # fromException :: SomeException -> Maybe IamError # displayException :: IamError -> String #

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

Parses IAM `DateTime` data type.

data AccessKeyStatus #

Constructors

AccessKeyActive |
AccessKeyInactive |

Instances

Eq AccessKeyStatus # |
Methods (==) :: AccessKeyStatus -> AccessKeyStatus -> Bool # (/=) :: AccessKeyStatus -> AccessKeyStatus -> Bool #
Ord AccessKeyStatus # |
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 #
Show AccessKeyStatus # |
Methods showsPrec :: Int -> AccessKeyStatus -> ShowS # show :: AccessKeyStatus -> String # showList :: [AccessKeyStatus] -> ShowS #

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

Eq User # |
Methods (==) :: User -> User -> Bool # (/=) :: User -> User -> Bool #
Ord User # |
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 #
Show User # |
Methods showsPrec :: Int -> User -> ShowS # show :: User -> String # showList :: [User] -> ShowS #

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

Parses the IAM `User` 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

Eq MfaDevice # |
Methods (==) :: MfaDevice -> MfaDevice -> Bool # (/=) :: MfaDevice -> MfaDevice -> Bool #
Ord MfaDevice # |
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 #
Show MfaDevice # |
Methods showsPrec :: Int -> MfaDevice -> ShowS # show :: MfaDevice -> String # showList :: [MfaDevice] -> ShowS #

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

Parses the IAM `MFADevice` data type.