{-# 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 #-}
module Network.AWS.CognitoIdentityProvider.SetRiskConfiguration
(
setRiskConfiguration
, SetRiskConfiguration
, srcRiskExceptionConfiguration
, srcClientId
, srcAccountTakeoverRiskConfiguration
, srcCompromisedCredentialsRiskConfiguration
, srcUserPoolId
, setRiskConfigurationResponse
, SetRiskConfigurationResponse
, srcrsResponseStatus
, srcrsRiskConfiguration
) where
import Network.AWS.CognitoIdentityProvider.Types
import Network.AWS.CognitoIdentityProvider.Types.Product
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
data SetRiskConfiguration = SetRiskConfiguration'
{ _srcRiskExceptionConfiguration :: !(Maybe RiskExceptionConfigurationType)
, _srcClientId :: !(Maybe (Sensitive Text))
, _srcAccountTakeoverRiskConfiguration :: !(Maybe AccountTakeoverRiskConfigurationType)
, _srcCompromisedCredentialsRiskConfiguration :: !(Maybe CompromisedCredentialsRiskConfigurationType)
, _srcUserPoolId :: !Text
} deriving (Eq, Show, Data, Typeable, Generic)
setRiskConfiguration
:: Text
-> SetRiskConfiguration
setRiskConfiguration pUserPoolId_ =
SetRiskConfiguration'
{ _srcRiskExceptionConfiguration = Nothing
, _srcClientId = Nothing
, _srcAccountTakeoverRiskConfiguration = Nothing
, _srcCompromisedCredentialsRiskConfiguration = Nothing
, _srcUserPoolId = pUserPoolId_
}
srcRiskExceptionConfiguration :: Lens' SetRiskConfiguration (Maybe RiskExceptionConfigurationType)
srcRiskExceptionConfiguration = lens _srcRiskExceptionConfiguration (\ s a -> s{_srcRiskExceptionConfiguration = a})
srcClientId :: Lens' SetRiskConfiguration (Maybe Text)
srcClientId = lens _srcClientId (\ s a -> s{_srcClientId = a}) . mapping _Sensitive
srcAccountTakeoverRiskConfiguration :: Lens' SetRiskConfiguration (Maybe AccountTakeoverRiskConfigurationType)
srcAccountTakeoverRiskConfiguration = lens _srcAccountTakeoverRiskConfiguration (\ s a -> s{_srcAccountTakeoverRiskConfiguration = a})
srcCompromisedCredentialsRiskConfiguration :: Lens' SetRiskConfiguration (Maybe CompromisedCredentialsRiskConfigurationType)
srcCompromisedCredentialsRiskConfiguration = lens _srcCompromisedCredentialsRiskConfiguration (\ s a -> s{_srcCompromisedCredentialsRiskConfiguration = a})
srcUserPoolId :: Lens' SetRiskConfiguration Text
srcUserPoolId = lens _srcUserPoolId (\ s a -> s{_srcUserPoolId = a})
instance AWSRequest SetRiskConfiguration where
type Rs SetRiskConfiguration =
SetRiskConfigurationResponse
request = postJSON cognitoIdentityProvider
response
= receiveJSON
(\ s h x ->
SetRiskConfigurationResponse' <$>
(pure (fromEnum s)) <*> (x .:> "RiskConfiguration"))
instance Hashable SetRiskConfiguration where
instance NFData SetRiskConfiguration where
instance ToHeaders SetRiskConfiguration where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("AWSCognitoIdentityProviderService.SetRiskConfiguration"
:: ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON SetRiskConfiguration where
toJSON SetRiskConfiguration'{..}
= object
(catMaybes
[("RiskExceptionConfiguration" .=) <$>
_srcRiskExceptionConfiguration,
("ClientId" .=) <$> _srcClientId,
("AccountTakeoverRiskConfiguration" .=) <$>
_srcAccountTakeoverRiskConfiguration,
("CompromisedCredentialsRiskConfiguration" .=) <$>
_srcCompromisedCredentialsRiskConfiguration,
Just ("UserPoolId" .= _srcUserPoolId)])
instance ToPath SetRiskConfiguration where
toPath = const "/"
instance ToQuery SetRiskConfiguration where
toQuery = const mempty
data SetRiskConfigurationResponse = SetRiskConfigurationResponse'
{ _srcrsResponseStatus :: !Int
, _srcrsRiskConfiguration :: !RiskConfigurationType
} deriving (Eq, Show, Data, Typeable, Generic)
setRiskConfigurationResponse
:: Int
-> RiskConfigurationType
-> SetRiskConfigurationResponse
setRiskConfigurationResponse pResponseStatus_ pRiskConfiguration_ =
SetRiskConfigurationResponse'
{ _srcrsResponseStatus = pResponseStatus_
, _srcrsRiskConfiguration = pRiskConfiguration_
}
srcrsResponseStatus :: Lens' SetRiskConfigurationResponse Int
srcrsResponseStatus = lens _srcrsResponseStatus (\ s a -> s{_srcrsResponseStatus = a})
srcrsRiskConfiguration :: Lens' SetRiskConfigurationResponse RiskConfigurationType
srcrsRiskConfiguration = lens _srcrsRiskConfiguration (\ s a -> s{_srcrsRiskConfiguration = a})
instance NFData SetRiskConfigurationResponse where