amazonka-iam 1.3.3.1 → 1.3.4
raw patch · 32 files changed
+376/−176 lines, 32 filesdep ~amazonka-coredep ~amazonka-iamdep ~amazonka-testPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: amazonka-core, amazonka-iam, amazonka-test
API changes (from Hackage documentation)
+ Network.AWS.IAM: Resource :: PolicySourceType
+ Network.AWS.IAM: erEvalDecisionDetails :: Lens' EvaluationResult (HashMap Text PolicyEvaluationDecisionType)
+ Network.AWS.IAM.ListAttachedGroupPolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListAttachedGroupPolicies.ListAttachedGroupPolicies
+ Network.AWS.IAM.ListAttachedRolePolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListAttachedRolePolicies.ListAttachedRolePolicies
+ Network.AWS.IAM.ListAttachedUserPolicies: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListAttachedUserPolicies.ListAttachedUserPolicies
+ Network.AWS.IAM.ListEntitiesForPolicy: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListEntitiesForPolicy.ListEntitiesForPolicy
+ Network.AWS.IAM.ListPolicyVersions: instance Network.AWS.Pager.AWSPager Network.AWS.IAM.ListPolicyVersions.ListPolicyVersions
+ Network.AWS.IAM.SimulateCustomPolicy: instance GHC.Generics.Selector Network.AWS.IAM.SimulateCustomPolicy.S1_0_6SimulateCustomPolicy
+ Network.AWS.IAM.SimulateCustomPolicy: instance GHC.Generics.Selector Network.AWS.IAM.SimulateCustomPolicy.S1_0_7SimulateCustomPolicy
+ Network.AWS.IAM.SimulateCustomPolicy: instance GHC.Generics.Selector Network.AWS.IAM.SimulateCustomPolicy.S1_0_8SimulateCustomPolicy
+ Network.AWS.IAM.SimulateCustomPolicy: scpCallerARN :: 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.SimulatePrincipalPolicy: instance GHC.Generics.Selector Network.AWS.IAM.SimulatePrincipalPolicy.S1_0_7SimulatePrincipalPolicy
+ Network.AWS.IAM.SimulatePrincipalPolicy: instance GHC.Generics.Selector Network.AWS.IAM.SimulatePrincipalPolicy.S1_0_8SimulatePrincipalPolicy
+ Network.AWS.IAM.SimulatePrincipalPolicy: instance GHC.Generics.Selector Network.AWS.IAM.SimulatePrincipalPolicy.S1_0_9SimulatePrincipalPolicy
+ Network.AWS.IAM.SimulatePrincipalPolicy: sppCallerARN :: 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: Resource :: PolicySourceType
+ Network.AWS.IAM.Types: erEvalDecisionDetails :: Lens' EvaluationResult (HashMap Text PolicyEvaluationDecisionType)
Files
- README.md +1/−1
- amazonka-iam.cabal +5/−5
- gen/Network/AWS/IAM.hs +6/−5
- gen/Network/AWS/IAM/GetAccountAuthorizationDetails.hs +5/−5
- gen/Network/AWS/IAM/GetGroup.hs +5/−5
- gen/Network/AWS/IAM/ListAccessKeys.hs +5/−5
- gen/Network/AWS/IAM/ListAccountAliases.hs +5/−5
- gen/Network/AWS/IAM/ListAttachedGroupPolicies.hs +15/−5
- gen/Network/AWS/IAM/ListAttachedRolePolicies.hs +15/−5
- gen/Network/AWS/IAM/ListAttachedUserPolicies.hs +15/−5
- gen/Network/AWS/IAM/ListEntitiesForPolicy.hs +15/−5
- gen/Network/AWS/IAM/ListGroupPolicies.hs +5/−5
- gen/Network/AWS/IAM/ListGroups.hs +5/−5
- gen/Network/AWS/IAM/ListGroupsForUser.hs +5/−5
- gen/Network/AWS/IAM/ListInstanceProfiles.hs +5/−5
- gen/Network/AWS/IAM/ListInstanceProfilesForRole.hs +5/−5
- gen/Network/AWS/IAM/ListMFADevices.hs +5/−5
- gen/Network/AWS/IAM/ListPolicies.hs +5/−5
- gen/Network/AWS/IAM/ListPolicyVersions.hs +15/−5
- gen/Network/AWS/IAM/ListRolePolicies.hs +5/−5
- gen/Network/AWS/IAM/ListRoles.hs +5/−5
- gen/Network/AWS/IAM/ListSSHPublicKeys.hs +5/−5
- gen/Network/AWS/IAM/ListServerCertificates.hs +5/−5
- gen/Network/AWS/IAM/ListSigningCertificates.hs +5/−5
- gen/Network/AWS/IAM/ListUserPolicies.hs +5/−5
- gen/Network/AWS/IAM/ListUsers.hs +5/−5
- gen/Network/AWS/IAM/ListVirtualMFADevices.hs +5/−5
- gen/Network/AWS/IAM/SimulateCustomPolicy.hs +89/−23
- gen/Network/AWS/IAM/SimulatePrincipalPolicy.hs +84/−21
- gen/Network/AWS/IAM/Types.hs +1/−0
- gen/Network/AWS/IAM/Types/Product.hs +16/−0
- gen/Network/AWS/IAM/Types/Sum.hs +4/−1
README.md view
@@ -8,7 +8,7 @@ ## Version -`1.3.3.1`+`1.3.4` ## Description
amazonka-iam.cabal view
@@ -1,5 +1,5 @@ name: amazonka-iam-version: 1.3.3.1+version: 1.3.4 synopsis: Amazon Identity and Access Management SDK. homepage: https://github.com/brendanhay/amazonka bug-reports: https://github.com/brendanhay/amazonka/issues@@ -219,7 +219,7 @@ , Network.AWS.IAM.Types.Sum build-depends:- amazonka-core == 1.3.3.*+ amazonka-core == 1.3.4.* , base >= 4.7 && < 5 test-suite amazonka-iam-test@@ -239,9 +239,9 @@ , Test.AWS.IAM.Internal build-depends:- amazonka-core == 1.3.3.*- , amazonka-test == 1.3.3.*- , amazonka-iam == 1.3.3.*+ amazonka-core == 1.3.4.*+ , amazonka-test == 1.3.4.*+ , amazonka-iam == 1.3.4.* , base , bytestring , lens
gen/Network/AWS/IAM.hs view
@@ -202,7 +202,7 @@ -- ** GetUserPolicy , module Network.AWS.IAM.GetUserPolicy - -- ** ListAttachedRolePolicies+ -- ** ListAttachedRolePolicies (Paginated) , module Network.AWS.IAM.ListAttachedRolePolicies -- ** GetRole@@ -337,7 +337,7 @@ -- ** ListGroupsForUser (Paginated) , module Network.AWS.IAM.ListGroupsForUser - -- ** ListEntitiesForPolicy+ -- ** ListEntitiesForPolicy (Paginated) , module Network.AWS.IAM.ListEntitiesForPolicy -- ** AddUserToGroup@@ -364,7 +364,7 @@ -- ** UpdateSigningCertificate , module Network.AWS.IAM.UpdateSigningCertificate - -- ** ListAttachedUserPolicies+ -- ** ListAttachedUserPolicies (Paginated) , module Network.AWS.IAM.ListAttachedUserPolicies -- ** RemoveClientIdFromOpenIdConnectProvider@@ -454,7 +454,7 @@ -- ** SetDefaultPolicyVersion , module Network.AWS.IAM.SetDefaultPolicyVersion - -- ** ListPolicyVersions+ -- ** ListPolicyVersions (Paginated) , module Network.AWS.IAM.ListPolicyVersions -- ** ListSAMLProviders@@ -493,7 +493,7 @@ -- ** UpdateServerCertificate , module Network.AWS.IAM.UpdateServerCertificate - -- ** ListAttachedGroupPolicies+ -- ** ListAttachedGroupPolicies (Paginated) , module Network.AWS.IAM.ListAttachedGroupPolicies -- * Types@@ -572,6 +572,7 @@ , EvaluationResult , evaluationResult , erMatchedStatements+ , erEvalDecisionDetails , erMissingContextValues , erEvalActionName , erEvalResourceName
gen/Network/AWS/IAM/GetAccountAuthorizationDetails.hs view
@@ -83,19 +83,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/GetGroup.hs view
@@ -80,19 +80,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListAccessKeys.hs view
@@ -94,19 +94,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListAccountAliases.hs view
@@ -78,19 +78,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListAttachedGroupPolicies.hs view
@@ -33,6 +33,8 @@ -- specified path prefix), the action returns an empty list. -- -- /See:/ <http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedGroupPolicies.html AWS API Reference> for ListAttachedGroupPolicies.+--+-- This operation returns paginated results. module Network.AWS.IAM.ListAttachedGroupPolicies ( -- * Creating a Request@@ -56,6 +58,7 @@ import Network.AWS.IAM.Types import Network.AWS.IAM.Types.Product+import Network.AWS.Pager import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response@@ -98,19 +101,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;@@ -119,6 +122,13 @@ -- for. 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 =
gen/Network/AWS/IAM/ListAttachedRolePolicies.hs view
@@ -33,6 +33,8 @@ -- specified path prefix), the action returns an empty list. -- -- /See:/ <http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedRolePolicies.html AWS API Reference> for ListAttachedRolePolicies.+--+-- This operation returns paginated results. module Network.AWS.IAM.ListAttachedRolePolicies ( -- * Creating a Request@@ -56,6 +58,7 @@ import Network.AWS.IAM.Types import Network.AWS.IAM.Types.Product+import Network.AWS.Pager import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response@@ -98,19 +101,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;@@ -119,6 +122,13 @@ -- for. 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 =
gen/Network/AWS/IAM/ListAttachedUserPolicies.hs view
@@ -33,6 +33,8 @@ -- specified path prefix), the action returns an empty list. -- -- /See:/ <http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListAttachedUserPolicies.html AWS API Reference> for ListAttachedUserPolicies.+--+-- This operation returns paginated results. module Network.AWS.IAM.ListAttachedUserPolicies ( -- * Creating a Request@@ -56,6 +58,7 @@ import Network.AWS.IAM.Types import Network.AWS.IAM.Types.Product+import Network.AWS.Pager import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response@@ -98,19 +101,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;@@ -119,6 +122,13 @@ -- for. 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 =
gen/Network/AWS/IAM/ListEntitiesForPolicy.hs view
@@ -30,6 +30,8 @@ -- parameters. -- -- /See:/ <http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListEntitiesForPolicy.html AWS API Reference> for ListEntitiesForPolicy.+--+-- This operation returns paginated results. module Network.AWS.IAM.ListEntitiesForPolicy ( -- * Creating a Request@@ -56,6 +58,7 @@ import Network.AWS.IAM.Types import Network.AWS.IAM.Types.Product+import Network.AWS.Pager import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response@@ -111,19 +114,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;@@ -131,6 +134,13 @@ -- | Undocumented member. 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 =
gen/Network/AWS/IAM/ListGroupPolicies.hs view
@@ -89,19 +89,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListGroups.hs view
@@ -89,19 +89,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListGroupsForUser.hs view
@@ -81,19 +81,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListInstanceProfiles.hs view
@@ -92,19 +92,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListInstanceProfilesForRole.hs view
@@ -84,19 +84,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListMFADevices.hs view
@@ -87,19 +87,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListPolicies.hs view
@@ -116,8 +116,8 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); @@ -133,13 +133,13 @@ lpScope = lens _lpScope (\ s a -> s{_lpScope = a}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListPolicyVersions.hs view
@@ -26,6 +26,8 @@ -- in the /IAM User Guide/. -- -- /See:/ <http://docs.aws.amazon.com/IAM/latest/APIReference/API_ListPolicyVersions.html AWS API Reference> for ListPolicyVersions.+--+-- This operation returns paginated results. module Network.AWS.IAM.ListPolicyVersions ( -- * Creating a Request@@ -48,6 +50,7 @@ import Network.AWS.IAM.Types import Network.AWS.IAM.Types.Product+import Network.AWS.Pager import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response@@ -80,19 +83,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;@@ -100,6 +103,13 @@ -- | Undocumented member. 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 =
gen/Network/AWS/IAM/ListRolePolicies.hs view
@@ -89,19 +89,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListRoles.hs view
@@ -92,19 +92,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListSSHPublicKeys.hs view
@@ -91,19 +91,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListServerCertificates.hs view
@@ -90,19 +90,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListSigningCertificates.hs view
@@ -92,19 +92,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListUserPolicies.hs view
@@ -88,19 +88,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListUsers.hs view
@@ -91,19 +91,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/ListVirtualMFADevices.hs view
@@ -89,19 +89,19 @@ -- | 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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;
gen/Network/AWS/IAM/SimulateCustomPolicy.hs view
@@ -18,11 +18,12 @@ -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Simulate a set of IAM policies against a list of API actions and AWS--- resources to determine the policies\' effective permissions. The--- policies are provided as a list of strings.+-- Simulate how a set of IAM policies and optionally a resource-based+-- policy works with a list of API actions and AWS resources to determine+-- the policies\' effective permissions. The policies are provided as+-- strings. ----- The simulation does not perform the API actions, it only checks the+-- The simulation does not perform the API actions; it only checks the -- authorization to determine if the simulated policies allow or deny the -- actions. --@@ -30,13 +31,13 @@ -- 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, and can be--- evaluated by using the 'Condition' element of an IAM policy. To get the--- list of context keys required by the policies to simulate them--- correctly, use GetContextKeysForCustomPolicy.+-- 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 paginate the results using the 'MaxItems'--- and 'Marker' parameters.+-- If the output is long, you can use 'MaxItems' and 'Marker' parameters to+-- paginate the results. -- -- /See:/ <http://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulateCustomPolicy.html AWS API Reference> for SimulateCustomPolicy. module Network.AWS.IAM.SimulateCustomPolicy@@ -45,10 +46,13 @@ simulateCustomPolicy , SimulateCustomPolicy -- * Request Lenses+ , scpResourcePolicy+ , scpCallerARN , scpResourceARNs , scpMarker , scpMaxItems , scpContextEntries+ , scpResourceOwner , scpPolicyInputList , scpActionNames @@ -69,10 +73,13 @@ -- | /See:/ 'simulateCustomPolicy' smart constructor. data SimulateCustomPolicy = SimulateCustomPolicy'- { _scpResourceARNs :: !(Maybe [Text])+ { _scpResourcePolicy :: !(Maybe Text)+ , _scpCallerARN :: !(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)@@ -81,6 +88,10 @@ -- -- Use one of the following lenses to modify other fields as desired: --+-- * 'scpResourcePolicy'+--+-- * 'scpCallerARN'+-- -- * 'scpResourceARNs' -- -- * 'scpMarker'@@ -89,6 +100,8 @@ -- -- * 'scpContextEntries' --+-- * 'scpResourceOwner'+-- -- * 'scpPolicyInputList' -- -- * 'scpActionNames'@@ -96,56 +109,106 @@ :: SimulateCustomPolicy simulateCustomPolicy = SimulateCustomPolicy'- { _scpResourceARNs = Nothing+ { _scpResourcePolicy = Nothing+ , _scpCallerARN = 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.+scpResourcePolicy :: Lens' SimulateCustomPolicy (Maybe Text)+scpResourcePolicy = lens _scpResourcePolicy (\ s a -> s{_scpResourcePolicy = a});++-- | The ARN of the user that you want to use as the simulated caller of the+-- APIs. '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});+ -- | 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. 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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 that are used by the--- simulation. Whenever a context key is evaluated by a 'Condition' element--- in one of the simulated IAM permission policies, the corresponding value--- is supplied.+-- | A list of context keys and corresponding values for the simulation to+-- use. Whenever a context key is evaluated by a 'Condition' element 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.+-- 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>+-- APIs to restrict what a user can do while using the temporary+-- credentials. scpPolicyInputList :: Lens' SimulateCustomPolicy [Text] scpPolicyInputList = lens _scpPolicyInputList (\ s a -> s{_scpPolicyInputList = a}) . _Coerce; -- | A list of names of API actions to evaluate in the simulation. Each--- action is evaluated for each resource. Each action must include the+-- action is evaluated against each resource. Each action must include the -- service identifier, such as 'iam:CreateUser'. scpActionNames :: Lens' SimulateCustomPolicy [Text] scpActionNames = lens _scpActionNames (\ s a -> s{_scpActionNames = a}) . _Coerce;@@ -168,12 +231,15 @@ = mconcat ["Action" =: ("SimulateCustomPolicy" :: ByteString), "Version" =: ("2010-05-08" :: ByteString),+ "ResourcePolicy" =: _scpResourcePolicy,+ "CallerArn" =: _scpCallerARN, "ResourceArns" =: toQuery (toQueryList "member" <$> _scpResourceARNs), "Marker" =: _scpMarker, "MaxItems" =: _scpMaxItems, "ContextEntries" =: toQuery (toQueryList "member" <$> _scpContextEntries),+ "ResourceOwner" =: _scpResourceOwner, "PolicyInputList" =: toQueryList "member" _scpPolicyInputList, "ActionNames" =:
gen/Network/AWS/IAM/SimulatePrincipalPolicy.hs view
@@ -18,17 +18,20 @@ -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Simulate the set of IAM policies attached to an IAM entity against a--- list of API actions and AWS resources to determine the policies\'+-- Simulate how a set of IAM policies attached to an IAM entity works with+-- a list of API actions 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 attached to groups that the user is a member of.+-- 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 actions, it only checks the -- authorization to determine if the simulated policies allow or deny the -- actions.@@ -39,13 +42,13 @@ -- instead. -- -- Context keys are variables maintained by AWS and its services that--- provide details about the context of an API query request, and can be--- evaluated by using the 'Condition' element of an IAM policy. To get the--- list of context keys required by the policies to simulate them--- correctly, use GetContextKeysForPrincipalPolicy.+-- 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 paginate the results using the 'MaxItems'--- and 'Marker' parameters.+-- If the output is long, you can use the 'MaxItems' and 'Marker'+-- parameters to paginate the results. -- -- /See:/ <http://docs.aws.amazon.com/IAM/latest/APIReference/API_SimulatePrincipalPolicy.html AWS API Reference> for SimulatePrincipalPolicy. module Network.AWS.IAM.SimulatePrincipalPolicy@@ -55,10 +58,13 @@ , SimulatePrincipalPolicy -- * Request Lenses , sppPolicyInputList+ , sppResourcePolicy+ , sppCallerARN , sppResourceARNs , sppMarker , sppMaxItems , sppContextEntries+ , sppResourceOwner , sppPolicySourceARN , sppActionNames @@ -80,10 +86,13 @@ -- | /See:/ 'simulatePrincipalPolicy' smart constructor. data SimulatePrincipalPolicy = SimulatePrincipalPolicy' { _sppPolicyInputList :: !(Maybe [Text])+ , _sppResourcePolicy :: !(Maybe Text)+ , _sppCallerARN :: !(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)@@ -94,6 +103,10 @@ -- -- * 'sppPolicyInputList' --+-- * 'sppResourcePolicy'+--+-- * 'sppCallerARN'+-- -- * 'sppResourceARNs' -- -- * 'sppMarker'@@ -102,6 +115,8 @@ -- -- * 'sppContextEntries' --+-- * 'sppResourceOwner'+-- -- * 'sppPolicySourceARN' -- -- * 'sppActionNames'@@ -111,10 +126,13 @@ simulatePrincipalPolicy pPolicySourceARN_ = SimulatePrincipalPolicy' { _sppPolicyInputList = Nothing+ , _sppResourcePolicy = Nothing+ , _sppCallerARN = Nothing , _sppResourceARNs = Nothing , _sppMarker = Nothing , _sppMaxItems = Nothing , _sppContextEntries = Nothing+ , _sppResourceOwner = Nothing , _sppPolicySourceARN = pPolicySourceARN_ , _sppActionNames = mempty }@@ -125,45 +143,87 @@ 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.+sppResourcePolicy :: Lens' SimulatePrincipalPolicy (Maybe Text)+sppResourcePolicy = lens _sppResourcePolicy (\ s a -> s{_sppResourcePolicy = a});++-- | The ARN of the user that you want to specify as the simulated caller of+-- the APIs. 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 APIs 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.+sppCallerARN :: Lens' SimulatePrincipalPolicy (Maybe Text)+sppCallerARN = lens _sppCallerARN (\ s a -> s{_sppCallerARN = 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. 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 you received to inform--- the next call about where to start.+-- 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}); -- | Use this only when paginating results to indicate the maximum number of--- items you want in the response. If there are additional items beyond the+-- items you want in the response. If additional items exist beyond the -- maximum you specify, the 'IsTruncated' response element is 'true'. -- -- This parameter is optional. If you do not include it, it defaults to -- 100. Note that IAM might return fewer results, even when there are more--- results available. If this is the case, the 'IsTruncated' response--- element returns 'true' and 'Marker' contains a value to include in the+-- 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 that are used by the--- simulation. Whenever a context key is evaluated by a 'Condition' element--- in one of the simulated IAM permission policies, the corresponding value--- is supplied.+-- | A list of context keys and corresponding values for the simulation to+-- use. Whenever a context key is evaluated by a 'Condition' element in one+-- of the simulated 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 associated with that entity.--- If you specify a user, the simulation also includes all policies--- attached to any groups the user is a member of.+-- 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. sppPolicySourceARN :: Lens' SimulatePrincipalPolicy Text sppPolicySourceARN = lens _sppPolicySourceARN (\ s a -> s{_sppPolicySourceARN = a}); @@ -196,12 +256,15 @@ "PolicyInputList" =: toQuery (toQueryList "member" <$> _sppPolicyInputList),+ "ResourcePolicy" =: _sppResourcePolicy,+ "CallerArn" =: _sppCallerARN, "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 view
@@ -113,6 +113,7 @@ , EvaluationResult , evaluationResult , erMatchedStatements+ , erEvalDecisionDetails , erMissingContextValues , erEvalActionName , erEvalResourceName
gen/Network/AWS/IAM/Types/Product.hs view
@@ -345,6 +345,7 @@ -- /See:/ 'evaluationResult' smart constructor. data EvaluationResult = EvaluationResult' { _erMatchedStatements :: !(Maybe [Statement])+ , _erEvalDecisionDetails :: !(Maybe (Map Text PolicyEvaluationDecisionType)) , _erMissingContextValues :: !(Maybe [Text]) , _erEvalActionName :: !Text , _erEvalResourceName :: !Text@@ -357,6 +358,8 @@ -- -- * 'erMatchedStatements' --+-- * 'erEvalDecisionDetails'+-- -- * 'erMissingContextValues' -- -- * 'erEvalActionName'@@ -372,6 +375,7 @@ evaluationResult pEvalActionName_ pEvalResourceName_ pEvalDecision_ = EvaluationResult' { _erMatchedStatements = Nothing+ , _erEvalDecisionDetails = Nothing , _erMissingContextValues = Nothing , _erEvalActionName = pEvalActionName_ , _erEvalResourceName = pEvalResourceName_@@ -386,6 +390,15 @@ 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 How IAM Roles Differ from Resource-based Policies+erEvalDecisionDetails :: Lens' EvaluationResult (HashMap Text PolicyEvaluationDecisionType)+erEvalDecisionDetails = lens _erEvalDecisionDetails (\ s a -> s{_erEvalDecisionDetails = 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. To discover -- the context keys used by a set of policies, you can call@@ -415,6 +428,9 @@ = EvaluationResult' <$> (x .@? "MatchedStatements" .!@ mempty >>= may (parseXMLList "member"))+ <*>+ (x .@? "EvalDecisionDetails" .!@ mempty >>=+ may (parseXMLMap "entry" "key" "value")) <*> (x .@? "MissingContextValues" .!@ mempty >>= may (parseXMLList "member"))
gen/Network/AWS/IAM/Types/Sum.hs view
@@ -206,6 +206,7 @@ = AWSManaged | Group | None+ | Resource | Role | User | UserManaged@@ -216,17 +217,19 @@ "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, role, user, user-managed"+ <> "'. 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"