amazonka-sso-admin (empty) → 2.0
raw patch · 144 files changed
+14315/−0 lines, 144 filesdep +amazonka-coredep +amazonka-sso-admindep +amazonka-test
Dependencies added: amazonka-core, amazonka-sso-admin, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-sso-admin.cabal +141/−0
- fixture/AttachCustomerManagedPolicyReferenceToPermissionSet.yaml +10/−0
- fixture/AttachCustomerManagedPolicyReferenceToPermissionSetResponse.proto +0/−0
- fixture/AttachManagedPolicyToPermissionSet.yaml +10/−0
- fixture/AttachManagedPolicyToPermissionSetResponse.proto +0/−0
- fixture/CreateAccountAssignment.yaml +10/−0
- fixture/CreateAccountAssignmentResponse.proto +0/−0
- fixture/CreateInstanceAccessControlAttributeConfiguration.yaml +10/−0
- fixture/CreateInstanceAccessControlAttributeConfigurationResponse.proto +0/−0
- fixture/CreatePermissionSet.yaml +10/−0
- fixture/CreatePermissionSetResponse.proto +0/−0
- fixture/DeleteAccountAssignment.yaml +10/−0
- fixture/DeleteAccountAssignmentResponse.proto +0/−0
- fixture/DeleteInlinePolicyFromPermissionSet.yaml +10/−0
- fixture/DeleteInlinePolicyFromPermissionSetResponse.proto +0/−0
- fixture/DeleteInstanceAccessControlAttributeConfiguration.yaml +10/−0
- fixture/DeleteInstanceAccessControlAttributeConfigurationResponse.proto +0/−0
- fixture/DeletePermissionSet.yaml +10/−0
- fixture/DeletePermissionSetResponse.proto +0/−0
- fixture/DeletePermissionsBoundaryFromPermissionSet.yaml +10/−0
- fixture/DeletePermissionsBoundaryFromPermissionSetResponse.proto +0/−0
- fixture/DescribeAccountAssignmentCreationStatus.yaml +10/−0
- fixture/DescribeAccountAssignmentCreationStatusResponse.proto +0/−0
- fixture/DescribeAccountAssignmentDeletionStatus.yaml +10/−0
- fixture/DescribeAccountAssignmentDeletionStatusResponse.proto +0/−0
- fixture/DescribeInstanceAccessControlAttributeConfiguration.yaml +10/−0
- fixture/DescribeInstanceAccessControlAttributeConfigurationResponse.proto +0/−0
- fixture/DescribePermissionSet.yaml +10/−0
- fixture/DescribePermissionSetProvisioningStatus.yaml +10/−0
- fixture/DescribePermissionSetProvisioningStatusResponse.proto +0/−0
- fixture/DescribePermissionSetResponse.proto +0/−0
- fixture/DetachCustomerManagedPolicyReferenceFromPermissionSet.yaml +10/−0
- fixture/DetachCustomerManagedPolicyReferenceFromPermissionSetResponse.proto +0/−0
- fixture/DetachManagedPolicyFromPermissionSet.yaml +10/−0
- fixture/DetachManagedPolicyFromPermissionSetResponse.proto +0/−0
- fixture/GetInlinePolicyForPermissionSet.yaml +10/−0
- fixture/GetInlinePolicyForPermissionSetResponse.proto +0/−0
- fixture/GetPermissionsBoundaryForPermissionSet.yaml +10/−0
- fixture/GetPermissionsBoundaryForPermissionSetResponse.proto +0/−0
- fixture/ListAccountAssignmentCreationStatus.yaml +10/−0
- fixture/ListAccountAssignmentCreationStatusResponse.proto +0/−0
- fixture/ListAccountAssignmentDeletionStatus.yaml +10/−0
- fixture/ListAccountAssignmentDeletionStatusResponse.proto +0/−0
- fixture/ListAccountAssignments.yaml +10/−0
- fixture/ListAccountAssignmentsResponse.proto +0/−0
- fixture/ListAccountsForProvisionedPermissionSet.yaml +10/−0
- fixture/ListAccountsForProvisionedPermissionSetResponse.proto +0/−0
- fixture/ListCustomerManagedPolicyReferencesInPermissionSet.yaml +10/−0
- fixture/ListCustomerManagedPolicyReferencesInPermissionSetResponse.proto +0/−0
- fixture/ListInstances.yaml +10/−0
- fixture/ListInstancesResponse.proto +0/−0
- fixture/ListManagedPoliciesInPermissionSet.yaml +10/−0
- fixture/ListManagedPoliciesInPermissionSetResponse.proto +0/−0
- fixture/ListPermissionSetProvisioningStatus.yaml +10/−0
- fixture/ListPermissionSetProvisioningStatusResponse.proto +0/−0
- fixture/ListPermissionSets.yaml +10/−0
- fixture/ListPermissionSetsProvisionedToAccount.yaml +10/−0
- fixture/ListPermissionSetsProvisionedToAccountResponse.proto +0/−0
- fixture/ListPermissionSetsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/ProvisionPermissionSet.yaml +10/−0
- fixture/ProvisionPermissionSetResponse.proto +0/−0
- fixture/PutInlinePolicyToPermissionSet.yaml +10/−0
- fixture/PutInlinePolicyToPermissionSetResponse.proto +0/−0
- fixture/PutPermissionsBoundaryToPermissionSet.yaml +10/−0
- fixture/PutPermissionsBoundaryToPermissionSetResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateInstanceAccessControlAttributeConfiguration.yaml +10/−0
- fixture/UpdateInstanceAccessControlAttributeConfigurationResponse.proto +0/−0
- fixture/UpdatePermissionSet.yaml +10/−0
- fixture/UpdatePermissionSetResponse.proto +0/−0
- gen/Amazonka/SSOAdmin.hs +445/−0
- gen/Amazonka/SSOAdmin/AttachCustomerManagedPolicyReferenceToPermissionSet.hs +242/−0
- gen/Amazonka/SSOAdmin/AttachManagedPolicyToPermissionSet.hs +241/−0
- gen/Amazonka/SSOAdmin/CreateAccountAssignment.hs +302/−0
- gen/Amazonka/SSOAdmin/CreateInstanceAccessControlAttributeConfiguration.hs +245/−0
- gen/Amazonka/SSOAdmin/CreatePermissionSet.hs +260/−0
- gen/Amazonka/SSOAdmin/DeleteAccountAssignment.hs +288/−0
- gen/Amazonka/SSOAdmin/DeleteInlinePolicyFromPermissionSet.hs +216/−0
- gen/Amazonka/SSOAdmin/DeleteInstanceAccessControlAttributeConfiguration.hs +202/−0
- gen/Amazonka/SSOAdmin/DeletePermissionSet.hs +188/−0
- gen/Amazonka/SSOAdmin/DeletePermissionsBoundaryFromPermissionSet.hs +214/−0
- gen/Amazonka/SSOAdmin/DescribeAccountAssignmentCreationStatus.hs +233/−0
- gen/Amazonka/SSOAdmin/DescribeAccountAssignmentDeletionStatus.hs +233/−0
- gen/Amazonka/SSOAdmin/DescribeInstanceAccessControlAttributeConfiguration.hs +249/−0
- gen/Amazonka/SSOAdmin/DescribePermissionSet.hs +200/−0
- gen/Amazonka/SSOAdmin/DescribePermissionSetProvisioningStatus.hs +236/−0
- gen/Amazonka/SSOAdmin/DetachCustomerManagedPolicyReferenceFromPermissionSet.hs +242/−0
- gen/Amazonka/SSOAdmin/DetachManagedPolicyFromPermissionSet.hs +234/−0
- gen/Amazonka/SSOAdmin/GetInlinePolicyForPermissionSet.hs +219/−0
- gen/Amazonka/SSOAdmin/GetPermissionsBoundaryForPermissionSet.hs +225/−0
- gen/Amazonka/SSOAdmin/Lens.hs +412/−0
- gen/Amazonka/SSOAdmin/ListAccountAssignmentCreationStatus.hs +298/−0
- gen/Amazonka/SSOAdmin/ListAccountAssignmentDeletionStatus.hs +298/−0
- gen/Amazonka/SSOAdmin/ListAccountAssignments.hs +295/−0
- gen/Amazonka/SSOAdmin/ListAccountsForProvisionedPermissionSet.hs +322/−0
- gen/Amazonka/SSOAdmin/ListCustomerManagedPolicyReferencesInPermissionSet.hs +309/−0
- gen/Amazonka/SSOAdmin/ListInstances.hs +225/−0
- gen/Amazonka/SSOAdmin/ListManagedPoliciesInPermissionSet.hs +303/−0
- gen/Amazonka/SSOAdmin/ListPermissionSetProvisioningStatus.hs +299/−0
- gen/Amazonka/SSOAdmin/ListPermissionSets.hs +250/−0
- gen/Amazonka/SSOAdmin/ListPermissionSetsProvisionedToAccount.hs +317/−0
- gen/Amazonka/SSOAdmin/ListTagsForResource.hs +252/−0
- gen/Amazonka/SSOAdmin/ProvisionPermissionSet.hs +236/−0
- gen/Amazonka/SSOAdmin/PutInlinePolicyToPermissionSet.hs +228/−0
- gen/Amazonka/SSOAdmin/PutPermissionsBoundaryToPermissionSet.hs +232/−0
- gen/Amazonka/SSOAdmin/TagResource.hs +192/−0
- gen/Amazonka/SSOAdmin/Types.hs +305/−0
- gen/Amazonka/SSOAdmin/Types/AccessControlAttribute.hs +109/−0
- gen/Amazonka/SSOAdmin/Types/AccessControlAttributeValue.hs +87/−0
- gen/Amazonka/SSOAdmin/Types/AccountAssignment.hs +131/−0
- gen/Amazonka/SSOAdmin/Types/AccountAssignmentOperationStatus.hs +211/−0
- gen/Amazonka/SSOAdmin/Types/AccountAssignmentOperationStatusMetadata.hs +112/−0
- gen/Amazonka/SSOAdmin/Types/AttachedManagedPolicy.hs +89/−0
- gen/Amazonka/SSOAdmin/Types/CustomerManagedPolicyReference.hs +120/−0
- gen/Amazonka/SSOAdmin/Types/InstanceAccessControlAttributeConfiguration.hs +107/−0
- gen/Amazonka/SSOAdmin/Types/InstanceAccessControlAttributeConfigurationStatus.hs +76/−0
- gen/Amazonka/SSOAdmin/Types/InstanceMetadata.hs +97/−0
- gen/Amazonka/SSOAdmin/Types/OperationStatusFilter.hs +67/−0
- gen/Amazonka/SSOAdmin/Types/PermissionSet.hs +144/−0
- gen/Amazonka/SSOAdmin/Types/PermissionSetProvisioningStatus.hs +161/−0
- gen/Amazonka/SSOAdmin/Types/PermissionSetProvisioningStatusMetadata.hs +112/−0
- gen/Amazonka/SSOAdmin/Types/PermissionsBoundary.hs +119/−0
- gen/Amazonka/SSOAdmin/Types/PrincipalType.hs +71/−0
- gen/Amazonka/SSOAdmin/Types/ProvisionTargetType.hs +71/−0
- gen/Amazonka/SSOAdmin/Types/ProvisioningStatus.hs +71/−0
- gen/Amazonka/SSOAdmin/Types/StatusValues.hs +76/−0
- gen/Amazonka/SSOAdmin/Types/Tag.hs +95/−0
- gen/Amazonka/SSOAdmin/Types/TargetType.hs +66/−0
- gen/Amazonka/SSOAdmin/UntagResource.hs +200/−0
- gen/Amazonka/SSOAdmin/UpdateInstanceAccessControlAttributeConfiguration.hs +227/−0
- gen/Amazonka/SSOAdmin/UpdatePermissionSet.hs +234/−0
- gen/Amazonka/SSOAdmin/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/SSOAdmin.hs +778/−0
- test/Test/Amazonka/SSOAdmin.hs +20/−0
- test/Test/Amazonka/SSOAdmin/Internal.hs +8/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon Single Sign-On Admin SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2020-07-20@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-sso-admin)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/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+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++See [Amazonka.SSOAdmin](http://hackage.haskell.org/package/amazonka-sso-admin/docs/Amazonka-SSOAdmin.html)+or [the AWS documentation](https://aws.amazon.com/documentation/) to get started.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`amazonka-sso-admin` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ amazonka-sso-admin.cabal view
@@ -0,0 +1,141 @@+cabal-version: 2.2+name: amazonka-sso-admin+version: 2.0+synopsis: Amazon Single Sign-On Admin 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:+ Derived from API version @2020-07-20@ 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.SSOAdmin.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.SSOAdmin" 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-sso-admin++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:+ Amazonka.SSOAdmin+ Amazonka.SSOAdmin.AttachCustomerManagedPolicyReferenceToPermissionSet+ Amazonka.SSOAdmin.AttachManagedPolicyToPermissionSet+ Amazonka.SSOAdmin.CreateAccountAssignment+ Amazonka.SSOAdmin.CreateInstanceAccessControlAttributeConfiguration+ Amazonka.SSOAdmin.CreatePermissionSet+ Amazonka.SSOAdmin.DeleteAccountAssignment+ Amazonka.SSOAdmin.DeleteInlinePolicyFromPermissionSet+ Amazonka.SSOAdmin.DeleteInstanceAccessControlAttributeConfiguration+ Amazonka.SSOAdmin.DeletePermissionsBoundaryFromPermissionSet+ Amazonka.SSOAdmin.DeletePermissionSet+ Amazonka.SSOAdmin.DescribeAccountAssignmentCreationStatus+ Amazonka.SSOAdmin.DescribeAccountAssignmentDeletionStatus+ Amazonka.SSOAdmin.DescribeInstanceAccessControlAttributeConfiguration+ Amazonka.SSOAdmin.DescribePermissionSet+ Amazonka.SSOAdmin.DescribePermissionSetProvisioningStatus+ Amazonka.SSOAdmin.DetachCustomerManagedPolicyReferenceFromPermissionSet+ Amazonka.SSOAdmin.DetachManagedPolicyFromPermissionSet+ Amazonka.SSOAdmin.GetInlinePolicyForPermissionSet+ Amazonka.SSOAdmin.GetPermissionsBoundaryForPermissionSet+ Amazonka.SSOAdmin.Lens+ Amazonka.SSOAdmin.ListAccountAssignmentCreationStatus+ Amazonka.SSOAdmin.ListAccountAssignmentDeletionStatus+ Amazonka.SSOAdmin.ListAccountAssignments+ Amazonka.SSOAdmin.ListAccountsForProvisionedPermissionSet+ Amazonka.SSOAdmin.ListCustomerManagedPolicyReferencesInPermissionSet+ Amazonka.SSOAdmin.ListInstances+ Amazonka.SSOAdmin.ListManagedPoliciesInPermissionSet+ Amazonka.SSOAdmin.ListPermissionSetProvisioningStatus+ Amazonka.SSOAdmin.ListPermissionSets+ Amazonka.SSOAdmin.ListPermissionSetsProvisionedToAccount+ Amazonka.SSOAdmin.ListTagsForResource+ Amazonka.SSOAdmin.ProvisionPermissionSet+ Amazonka.SSOAdmin.PutInlinePolicyToPermissionSet+ Amazonka.SSOAdmin.PutPermissionsBoundaryToPermissionSet+ Amazonka.SSOAdmin.TagResource+ Amazonka.SSOAdmin.Types+ Amazonka.SSOAdmin.Types.AccessControlAttribute+ Amazonka.SSOAdmin.Types.AccessControlAttributeValue+ Amazonka.SSOAdmin.Types.AccountAssignment+ Amazonka.SSOAdmin.Types.AccountAssignmentOperationStatus+ Amazonka.SSOAdmin.Types.AccountAssignmentOperationStatusMetadata+ Amazonka.SSOAdmin.Types.AttachedManagedPolicy+ Amazonka.SSOAdmin.Types.CustomerManagedPolicyReference+ Amazonka.SSOAdmin.Types.InstanceAccessControlAttributeConfiguration+ Amazonka.SSOAdmin.Types.InstanceAccessControlAttributeConfigurationStatus+ Amazonka.SSOAdmin.Types.InstanceMetadata+ Amazonka.SSOAdmin.Types.OperationStatusFilter+ Amazonka.SSOAdmin.Types.PermissionsBoundary+ Amazonka.SSOAdmin.Types.PermissionSet+ Amazonka.SSOAdmin.Types.PermissionSetProvisioningStatus+ Amazonka.SSOAdmin.Types.PermissionSetProvisioningStatusMetadata+ Amazonka.SSOAdmin.Types.PrincipalType+ Amazonka.SSOAdmin.Types.ProvisioningStatus+ Amazonka.SSOAdmin.Types.ProvisionTargetType+ Amazonka.SSOAdmin.Types.StatusValues+ Amazonka.SSOAdmin.Types.Tag+ Amazonka.SSOAdmin.Types.TargetType+ Amazonka.SSOAdmin.UntagResource+ Amazonka.SSOAdmin.UpdateInstanceAccessControlAttributeConfiguration+ Amazonka.SSOAdmin.UpdatePermissionSet+ Amazonka.SSOAdmin.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-sso-admin-test+ 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.Amazonka.Gen.SSOAdmin+ Test.Amazonka.SSOAdmin+ Test.Amazonka.SSOAdmin.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-sso-admin+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AttachCustomerManagedPolicyReferenceToPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/AttachCustomerManagedPolicyReferenceToPermissionSetResponse.proto view
+ fixture/AttachManagedPolicyToPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/AttachManagedPolicyToPermissionSetResponse.proto view
+ fixture/CreateAccountAssignment.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/CreateAccountAssignmentResponse.proto view
+ fixture/CreateInstanceAccessControlAttributeConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/CreateInstanceAccessControlAttributeConfigurationResponse.proto view
+ fixture/CreatePermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/CreatePermissionSetResponse.proto view
+ fixture/DeleteAccountAssignment.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DeleteAccountAssignmentResponse.proto view
+ fixture/DeleteInlinePolicyFromPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DeleteInlinePolicyFromPermissionSetResponse.proto view
+ fixture/DeleteInstanceAccessControlAttributeConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DeleteInstanceAccessControlAttributeConfigurationResponse.proto view
+ fixture/DeletePermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DeletePermissionSetResponse.proto view
+ fixture/DeletePermissionsBoundaryFromPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DeletePermissionsBoundaryFromPermissionSetResponse.proto view
+ fixture/DescribeAccountAssignmentCreationStatus.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DescribeAccountAssignmentCreationStatusResponse.proto view
+ fixture/DescribeAccountAssignmentDeletionStatus.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DescribeAccountAssignmentDeletionStatusResponse.proto view
+ fixture/DescribeInstanceAccessControlAttributeConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DescribeInstanceAccessControlAttributeConfigurationResponse.proto view
+ fixture/DescribePermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DescribePermissionSetProvisioningStatus.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DescribePermissionSetProvisioningStatusResponse.proto view
+ fixture/DescribePermissionSetResponse.proto view
+ fixture/DetachCustomerManagedPolicyReferenceFromPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DetachCustomerManagedPolicyReferenceFromPermissionSetResponse.proto view
+ fixture/DetachManagedPolicyFromPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/DetachManagedPolicyFromPermissionSetResponse.proto view
+ fixture/GetInlinePolicyForPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/GetInlinePolicyForPermissionSetResponse.proto view
+ fixture/GetPermissionsBoundaryForPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/GetPermissionsBoundaryForPermissionSetResponse.proto view
+ fixture/ListAccountAssignmentCreationStatus.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListAccountAssignmentCreationStatusResponse.proto view
+ fixture/ListAccountAssignmentDeletionStatus.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListAccountAssignmentDeletionStatusResponse.proto view
+ fixture/ListAccountAssignments.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListAccountAssignmentsResponse.proto view
+ fixture/ListAccountsForProvisionedPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListAccountsForProvisionedPermissionSetResponse.proto view
+ fixture/ListCustomerManagedPolicyReferencesInPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListCustomerManagedPolicyReferencesInPermissionSetResponse.proto view
+ fixture/ListInstances.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListInstancesResponse.proto view
+ fixture/ListManagedPoliciesInPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListManagedPoliciesInPermissionSetResponse.proto view
+ fixture/ListPermissionSetProvisioningStatus.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListPermissionSetProvisioningStatusResponse.proto view
+ fixture/ListPermissionSets.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListPermissionSetsProvisionedToAccount.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListPermissionSetsProvisionedToAccountResponse.proto view
+ fixture/ListPermissionSetsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ListTagsForResourceResponse.proto view
+ fixture/ProvisionPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/ProvisionPermissionSetResponse.proto view
+ fixture/PutInlinePolicyToPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/PutInlinePolicyToPermissionSetResponse.proto view
+ fixture/PutPermissionsBoundaryToPermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/PutPermissionsBoundaryToPermissionSetResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/UntagResourceResponse.proto view
+ fixture/UpdateInstanceAccessControlAttributeConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/UpdateInstanceAccessControlAttributeConfigurationResponse.proto view
+ fixture/UpdatePermissionSet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/sso/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: sso.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/UpdatePermissionSetResponse.proto view
+ gen/Amazonka/SSOAdmin.hs view
@@ -0,0 +1,445 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.SSOAdmin+-- 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 @2020-07-20@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- AWS IAM Identity Center (successor to AWS Single Sign-On) helps you+-- securely create, or connect, your workforce identities and manage their+-- access centrally across AWS accounts and applications. IAM Identity+-- Center is the recommended approach for workforce authentication and+-- authorization in AWS, for organizations of any size and type.+--+-- Although AWS Single Sign-On was renamed, the @sso@ and @identitystore@+-- API namespaces will continue to retain their original name for backward+-- compatibility purposes. For more information, see+-- <https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html#renamed IAM Identity Center rename>.+--+-- This reference guide provides information on single sign-on operations+-- which could be used for access management of AWS accounts. For+-- information about IAM Identity Center features, see the+-- <https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html IAM Identity Center User Guide>.+--+-- Many operations in the IAM Identity Center APIs rely on identifiers for+-- users and groups, known as principals. For more information about how to+-- work with principals and principal IDs in IAM Identity Center, see the+-- <https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/welcome.html Identity Store API Reference>.+--+-- AWS provides SDKs that consist of libraries and sample code for various+-- programming languages and platforms (Java, Ruby, .Net, iOS, Android, and+-- more). The SDKs provide a convenient way to create programmatic access+-- to IAM Identity Center and other AWS services. For more information+-- about the AWS SDKs, including how to download and install them, see+-- <http://aws.amazon.com/tools/ Tools for Amazon Web Services>.+module Amazonka.SSOAdmin+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** AttachCustomerManagedPolicyReferenceToPermissionSet+ AttachCustomerManagedPolicyReferenceToPermissionSet (AttachCustomerManagedPolicyReferenceToPermissionSet'),+ newAttachCustomerManagedPolicyReferenceToPermissionSet,+ AttachCustomerManagedPolicyReferenceToPermissionSetResponse (AttachCustomerManagedPolicyReferenceToPermissionSetResponse'),+ newAttachCustomerManagedPolicyReferenceToPermissionSetResponse,++ -- ** AttachManagedPolicyToPermissionSet+ AttachManagedPolicyToPermissionSet (AttachManagedPolicyToPermissionSet'),+ newAttachManagedPolicyToPermissionSet,+ AttachManagedPolicyToPermissionSetResponse (AttachManagedPolicyToPermissionSetResponse'),+ newAttachManagedPolicyToPermissionSetResponse,++ -- ** CreateAccountAssignment+ CreateAccountAssignment (CreateAccountAssignment'),+ newCreateAccountAssignment,+ CreateAccountAssignmentResponse (CreateAccountAssignmentResponse'),+ newCreateAccountAssignmentResponse,++ -- ** CreateInstanceAccessControlAttributeConfiguration+ CreateInstanceAccessControlAttributeConfiguration (CreateInstanceAccessControlAttributeConfiguration'),+ newCreateInstanceAccessControlAttributeConfiguration,+ CreateInstanceAccessControlAttributeConfigurationResponse (CreateInstanceAccessControlAttributeConfigurationResponse'),+ newCreateInstanceAccessControlAttributeConfigurationResponse,++ -- ** CreatePermissionSet+ CreatePermissionSet (CreatePermissionSet'),+ newCreatePermissionSet,+ CreatePermissionSetResponse (CreatePermissionSetResponse'),+ newCreatePermissionSetResponse,++ -- ** DeleteAccountAssignment+ DeleteAccountAssignment (DeleteAccountAssignment'),+ newDeleteAccountAssignment,+ DeleteAccountAssignmentResponse (DeleteAccountAssignmentResponse'),+ newDeleteAccountAssignmentResponse,++ -- ** DeleteInlinePolicyFromPermissionSet+ DeleteInlinePolicyFromPermissionSet (DeleteInlinePolicyFromPermissionSet'),+ newDeleteInlinePolicyFromPermissionSet,+ DeleteInlinePolicyFromPermissionSetResponse (DeleteInlinePolicyFromPermissionSetResponse'),+ newDeleteInlinePolicyFromPermissionSetResponse,++ -- ** DeleteInstanceAccessControlAttributeConfiguration+ DeleteInstanceAccessControlAttributeConfiguration (DeleteInstanceAccessControlAttributeConfiguration'),+ newDeleteInstanceAccessControlAttributeConfiguration,+ DeleteInstanceAccessControlAttributeConfigurationResponse (DeleteInstanceAccessControlAttributeConfigurationResponse'),+ newDeleteInstanceAccessControlAttributeConfigurationResponse,++ -- ** DeletePermissionSet+ DeletePermissionSet (DeletePermissionSet'),+ newDeletePermissionSet,+ DeletePermissionSetResponse (DeletePermissionSetResponse'),+ newDeletePermissionSetResponse,++ -- ** DeletePermissionsBoundaryFromPermissionSet+ DeletePermissionsBoundaryFromPermissionSet (DeletePermissionsBoundaryFromPermissionSet'),+ newDeletePermissionsBoundaryFromPermissionSet,+ DeletePermissionsBoundaryFromPermissionSetResponse (DeletePermissionsBoundaryFromPermissionSetResponse'),+ newDeletePermissionsBoundaryFromPermissionSetResponse,++ -- ** DescribeAccountAssignmentCreationStatus+ DescribeAccountAssignmentCreationStatus (DescribeAccountAssignmentCreationStatus'),+ newDescribeAccountAssignmentCreationStatus,+ DescribeAccountAssignmentCreationStatusResponse (DescribeAccountAssignmentCreationStatusResponse'),+ newDescribeAccountAssignmentCreationStatusResponse,++ -- ** DescribeAccountAssignmentDeletionStatus+ DescribeAccountAssignmentDeletionStatus (DescribeAccountAssignmentDeletionStatus'),+ newDescribeAccountAssignmentDeletionStatus,+ DescribeAccountAssignmentDeletionStatusResponse (DescribeAccountAssignmentDeletionStatusResponse'),+ newDescribeAccountAssignmentDeletionStatusResponse,++ -- ** DescribeInstanceAccessControlAttributeConfiguration+ DescribeInstanceAccessControlAttributeConfiguration (DescribeInstanceAccessControlAttributeConfiguration'),+ newDescribeInstanceAccessControlAttributeConfiguration,+ DescribeInstanceAccessControlAttributeConfigurationResponse (DescribeInstanceAccessControlAttributeConfigurationResponse'),+ newDescribeInstanceAccessControlAttributeConfigurationResponse,++ -- ** DescribePermissionSet+ DescribePermissionSet (DescribePermissionSet'),+ newDescribePermissionSet,+ DescribePermissionSetResponse (DescribePermissionSetResponse'),+ newDescribePermissionSetResponse,++ -- ** DescribePermissionSetProvisioningStatus+ DescribePermissionSetProvisioningStatus (DescribePermissionSetProvisioningStatus'),+ newDescribePermissionSetProvisioningStatus,+ DescribePermissionSetProvisioningStatusResponse (DescribePermissionSetProvisioningStatusResponse'),+ newDescribePermissionSetProvisioningStatusResponse,++ -- ** DetachCustomerManagedPolicyReferenceFromPermissionSet+ DetachCustomerManagedPolicyReferenceFromPermissionSet (DetachCustomerManagedPolicyReferenceFromPermissionSet'),+ newDetachCustomerManagedPolicyReferenceFromPermissionSet,+ DetachCustomerManagedPolicyReferenceFromPermissionSetResponse (DetachCustomerManagedPolicyReferenceFromPermissionSetResponse'),+ newDetachCustomerManagedPolicyReferenceFromPermissionSetResponse,++ -- ** DetachManagedPolicyFromPermissionSet+ DetachManagedPolicyFromPermissionSet (DetachManagedPolicyFromPermissionSet'),+ newDetachManagedPolicyFromPermissionSet,+ DetachManagedPolicyFromPermissionSetResponse (DetachManagedPolicyFromPermissionSetResponse'),+ newDetachManagedPolicyFromPermissionSetResponse,++ -- ** GetInlinePolicyForPermissionSet+ GetInlinePolicyForPermissionSet (GetInlinePolicyForPermissionSet'),+ newGetInlinePolicyForPermissionSet,+ GetInlinePolicyForPermissionSetResponse (GetInlinePolicyForPermissionSetResponse'),+ newGetInlinePolicyForPermissionSetResponse,++ -- ** GetPermissionsBoundaryForPermissionSet+ GetPermissionsBoundaryForPermissionSet (GetPermissionsBoundaryForPermissionSet'),+ newGetPermissionsBoundaryForPermissionSet,+ GetPermissionsBoundaryForPermissionSetResponse (GetPermissionsBoundaryForPermissionSetResponse'),+ newGetPermissionsBoundaryForPermissionSetResponse,++ -- ** ListAccountAssignmentCreationStatus (Paginated)+ ListAccountAssignmentCreationStatus (ListAccountAssignmentCreationStatus'),+ newListAccountAssignmentCreationStatus,+ ListAccountAssignmentCreationStatusResponse (ListAccountAssignmentCreationStatusResponse'),+ newListAccountAssignmentCreationStatusResponse,++ -- ** ListAccountAssignmentDeletionStatus (Paginated)+ ListAccountAssignmentDeletionStatus (ListAccountAssignmentDeletionStatus'),+ newListAccountAssignmentDeletionStatus,+ ListAccountAssignmentDeletionStatusResponse (ListAccountAssignmentDeletionStatusResponse'),+ newListAccountAssignmentDeletionStatusResponse,++ -- ** ListAccountAssignments (Paginated)+ ListAccountAssignments (ListAccountAssignments'),+ newListAccountAssignments,+ ListAccountAssignmentsResponse (ListAccountAssignmentsResponse'),+ newListAccountAssignmentsResponse,++ -- ** ListAccountsForProvisionedPermissionSet (Paginated)+ ListAccountsForProvisionedPermissionSet (ListAccountsForProvisionedPermissionSet'),+ newListAccountsForProvisionedPermissionSet,+ ListAccountsForProvisionedPermissionSetResponse (ListAccountsForProvisionedPermissionSetResponse'),+ newListAccountsForProvisionedPermissionSetResponse,++ -- ** ListCustomerManagedPolicyReferencesInPermissionSet (Paginated)+ ListCustomerManagedPolicyReferencesInPermissionSet (ListCustomerManagedPolicyReferencesInPermissionSet'),+ newListCustomerManagedPolicyReferencesInPermissionSet,+ ListCustomerManagedPolicyReferencesInPermissionSetResponse (ListCustomerManagedPolicyReferencesInPermissionSetResponse'),+ newListCustomerManagedPolicyReferencesInPermissionSetResponse,++ -- ** ListInstances (Paginated)+ ListInstances (ListInstances'),+ newListInstances,+ ListInstancesResponse (ListInstancesResponse'),+ newListInstancesResponse,++ -- ** ListManagedPoliciesInPermissionSet (Paginated)+ ListManagedPoliciesInPermissionSet (ListManagedPoliciesInPermissionSet'),+ newListManagedPoliciesInPermissionSet,+ ListManagedPoliciesInPermissionSetResponse (ListManagedPoliciesInPermissionSetResponse'),+ newListManagedPoliciesInPermissionSetResponse,++ -- ** ListPermissionSetProvisioningStatus (Paginated)+ ListPermissionSetProvisioningStatus (ListPermissionSetProvisioningStatus'),+ newListPermissionSetProvisioningStatus,+ ListPermissionSetProvisioningStatusResponse (ListPermissionSetProvisioningStatusResponse'),+ newListPermissionSetProvisioningStatusResponse,++ -- ** ListPermissionSets (Paginated)+ ListPermissionSets (ListPermissionSets'),+ newListPermissionSets,+ ListPermissionSetsResponse (ListPermissionSetsResponse'),+ newListPermissionSetsResponse,++ -- ** ListPermissionSetsProvisionedToAccount (Paginated)+ ListPermissionSetsProvisionedToAccount (ListPermissionSetsProvisionedToAccount'),+ newListPermissionSetsProvisionedToAccount,+ ListPermissionSetsProvisionedToAccountResponse (ListPermissionSetsProvisionedToAccountResponse'),+ newListPermissionSetsProvisionedToAccountResponse,++ -- ** ListTagsForResource (Paginated)+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** ProvisionPermissionSet+ ProvisionPermissionSet (ProvisionPermissionSet'),+ newProvisionPermissionSet,+ ProvisionPermissionSetResponse (ProvisionPermissionSetResponse'),+ newProvisionPermissionSetResponse,++ -- ** PutInlinePolicyToPermissionSet+ PutInlinePolicyToPermissionSet (PutInlinePolicyToPermissionSet'),+ newPutInlinePolicyToPermissionSet,+ PutInlinePolicyToPermissionSetResponse (PutInlinePolicyToPermissionSetResponse'),+ newPutInlinePolicyToPermissionSetResponse,++ -- ** PutPermissionsBoundaryToPermissionSet+ PutPermissionsBoundaryToPermissionSet (PutPermissionsBoundaryToPermissionSet'),+ newPutPermissionsBoundaryToPermissionSet,+ PutPermissionsBoundaryToPermissionSetResponse (PutPermissionsBoundaryToPermissionSetResponse'),+ newPutPermissionsBoundaryToPermissionSetResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateInstanceAccessControlAttributeConfiguration+ UpdateInstanceAccessControlAttributeConfiguration (UpdateInstanceAccessControlAttributeConfiguration'),+ newUpdateInstanceAccessControlAttributeConfiguration,+ UpdateInstanceAccessControlAttributeConfigurationResponse (UpdateInstanceAccessControlAttributeConfigurationResponse'),+ newUpdateInstanceAccessControlAttributeConfigurationResponse,++ -- ** UpdatePermissionSet+ UpdatePermissionSet (UpdatePermissionSet'),+ newUpdatePermissionSet,+ UpdatePermissionSetResponse (UpdatePermissionSetResponse'),+ newUpdatePermissionSetResponse,++ -- * Types++ -- ** InstanceAccessControlAttributeConfigurationStatus+ InstanceAccessControlAttributeConfigurationStatus (..),++ -- ** PrincipalType+ PrincipalType (..),++ -- ** ProvisionTargetType+ ProvisionTargetType (..),++ -- ** ProvisioningStatus+ ProvisioningStatus (..),++ -- ** StatusValues+ StatusValues (..),++ -- ** TargetType+ TargetType (..),++ -- ** AccessControlAttribute+ AccessControlAttribute (AccessControlAttribute'),+ newAccessControlAttribute,++ -- ** AccessControlAttributeValue+ AccessControlAttributeValue (AccessControlAttributeValue'),+ newAccessControlAttributeValue,++ -- ** AccountAssignment+ AccountAssignment (AccountAssignment'),+ newAccountAssignment,++ -- ** AccountAssignmentOperationStatus+ AccountAssignmentOperationStatus (AccountAssignmentOperationStatus'),+ newAccountAssignmentOperationStatus,++ -- ** AccountAssignmentOperationStatusMetadata+ AccountAssignmentOperationStatusMetadata (AccountAssignmentOperationStatusMetadata'),+ newAccountAssignmentOperationStatusMetadata,++ -- ** AttachedManagedPolicy+ AttachedManagedPolicy (AttachedManagedPolicy'),+ newAttachedManagedPolicy,++ -- ** CustomerManagedPolicyReference+ CustomerManagedPolicyReference (CustomerManagedPolicyReference'),+ newCustomerManagedPolicyReference,++ -- ** InstanceAccessControlAttributeConfiguration+ InstanceAccessControlAttributeConfiguration (InstanceAccessControlAttributeConfiguration'),+ newInstanceAccessControlAttributeConfiguration,++ -- ** InstanceMetadata+ InstanceMetadata (InstanceMetadata'),+ newInstanceMetadata,++ -- ** OperationStatusFilter+ OperationStatusFilter (OperationStatusFilter'),+ newOperationStatusFilter,++ -- ** PermissionSet+ PermissionSet (PermissionSet'),+ newPermissionSet,++ -- ** PermissionSetProvisioningStatus+ PermissionSetProvisioningStatus (PermissionSetProvisioningStatus'),+ newPermissionSetProvisioningStatus,++ -- ** PermissionSetProvisioningStatusMetadata+ PermissionSetProvisioningStatusMetadata (PermissionSetProvisioningStatusMetadata'),+ newPermissionSetProvisioningStatusMetadata,++ -- ** PermissionsBoundary+ PermissionsBoundary (PermissionsBoundary'),+ newPermissionsBoundary,++ -- ** Tag+ Tag (Tag'),+ newTag,+ )+where++import Amazonka.SSOAdmin.AttachCustomerManagedPolicyReferenceToPermissionSet+import Amazonka.SSOAdmin.AttachManagedPolicyToPermissionSet+import Amazonka.SSOAdmin.CreateAccountAssignment+import Amazonka.SSOAdmin.CreateInstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.CreatePermissionSet+import Amazonka.SSOAdmin.DeleteAccountAssignment+import Amazonka.SSOAdmin.DeleteInlinePolicyFromPermissionSet+import Amazonka.SSOAdmin.DeleteInstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.DeletePermissionSet+import Amazonka.SSOAdmin.DeletePermissionsBoundaryFromPermissionSet+import Amazonka.SSOAdmin.DescribeAccountAssignmentCreationStatus+import Amazonka.SSOAdmin.DescribeAccountAssignmentDeletionStatus+import Amazonka.SSOAdmin.DescribeInstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.DescribePermissionSet+import Amazonka.SSOAdmin.DescribePermissionSetProvisioningStatus+import Amazonka.SSOAdmin.DetachCustomerManagedPolicyReferenceFromPermissionSet+import Amazonka.SSOAdmin.DetachManagedPolicyFromPermissionSet+import Amazonka.SSOAdmin.GetInlinePolicyForPermissionSet+import Amazonka.SSOAdmin.GetPermissionsBoundaryForPermissionSet+import Amazonka.SSOAdmin.Lens+import Amazonka.SSOAdmin.ListAccountAssignmentCreationStatus+import Amazonka.SSOAdmin.ListAccountAssignmentDeletionStatus+import Amazonka.SSOAdmin.ListAccountAssignments+import Amazonka.SSOAdmin.ListAccountsForProvisionedPermissionSet+import Amazonka.SSOAdmin.ListCustomerManagedPolicyReferencesInPermissionSet+import Amazonka.SSOAdmin.ListInstances+import Amazonka.SSOAdmin.ListManagedPoliciesInPermissionSet+import Amazonka.SSOAdmin.ListPermissionSetProvisioningStatus+import Amazonka.SSOAdmin.ListPermissionSets+import Amazonka.SSOAdmin.ListPermissionSetsProvisionedToAccount+import Amazonka.SSOAdmin.ListTagsForResource+import Amazonka.SSOAdmin.ProvisionPermissionSet+import Amazonka.SSOAdmin.PutInlinePolicyToPermissionSet+import Amazonka.SSOAdmin.PutPermissionsBoundaryToPermissionSet+import Amazonka.SSOAdmin.TagResource+import Amazonka.SSOAdmin.Types+import Amazonka.SSOAdmin.UntagResource+import Amazonka.SSOAdmin.UpdateInstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.UpdatePermissionSet+import Amazonka.SSOAdmin.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 'SSOAdmin'.++-- $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/SSOAdmin/AttachCustomerManagedPolicyReferenceToPermissionSet.hs view
@@ -0,0 +1,242 @@+{-# 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.SSOAdmin.AttachCustomerManagedPolicyReferenceToPermissionSet+-- 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 customer managed policy to the specified+-- PermissionSet.+module Amazonka.SSOAdmin.AttachCustomerManagedPolicyReferenceToPermissionSet+ ( -- * Creating a Request+ AttachCustomerManagedPolicyReferenceToPermissionSet (..),+ newAttachCustomerManagedPolicyReferenceToPermissionSet,++ -- * Request Lenses+ attachCustomerManagedPolicyReferenceToPermissionSet_instanceArn,+ attachCustomerManagedPolicyReferenceToPermissionSet_permissionSetArn,+ attachCustomerManagedPolicyReferenceToPermissionSet_customerManagedPolicyReference,++ -- * Destructuring the Response+ AttachCustomerManagedPolicyReferenceToPermissionSetResponse (..),+ newAttachCustomerManagedPolicyReferenceToPermissionSetResponse,++ -- * Response Lenses+ attachCustomerManagedPolicyReferenceToPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newAttachCustomerManagedPolicyReferenceToPermissionSet' smart constructor.+data AttachCustomerManagedPolicyReferenceToPermissionSet = AttachCustomerManagedPolicyReferenceToPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text,+ -- | The ARN of the @PermissionSet@.+ permissionSetArn :: Prelude.Text,+ -- | Specifies the name and path of a customer managed policy. You must have+ -- an IAM policy that matches the name and path in each AWS account where+ -- you want to deploy your permission set.+ customerManagedPolicyReference :: CustomerManagedPolicyReference+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachCustomerManagedPolicyReferenceToPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'attachCustomerManagedPolicyReferenceToPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+--+-- 'permissionSetArn', 'attachCustomerManagedPolicyReferenceToPermissionSet_permissionSetArn' - The ARN of the @PermissionSet@.+--+-- 'customerManagedPolicyReference', 'attachCustomerManagedPolicyReferenceToPermissionSet_customerManagedPolicyReference' - Specifies the name and path of a customer managed policy. You must have+-- an IAM policy that matches the name and path in each AWS account where+-- you want to deploy your permission set.+newAttachCustomerManagedPolicyReferenceToPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'customerManagedPolicyReference'+ CustomerManagedPolicyReference ->+ AttachCustomerManagedPolicyReferenceToPermissionSet+newAttachCustomerManagedPolicyReferenceToPermissionSet+ pInstanceArn_+ pPermissionSetArn_+ pCustomerManagedPolicyReference_ =+ AttachCustomerManagedPolicyReferenceToPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn =+ pPermissionSetArn_,+ customerManagedPolicyReference =+ pCustomerManagedPolicyReference_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+attachCustomerManagedPolicyReferenceToPermissionSet_instanceArn :: Lens.Lens' AttachCustomerManagedPolicyReferenceToPermissionSet Prelude.Text+attachCustomerManagedPolicyReferenceToPermissionSet_instanceArn = Lens.lens (\AttachCustomerManagedPolicyReferenceToPermissionSet' {instanceArn} -> instanceArn) (\s@AttachCustomerManagedPolicyReferenceToPermissionSet' {} a -> s {instanceArn = a} :: AttachCustomerManagedPolicyReferenceToPermissionSet)++-- | The ARN of the @PermissionSet@.+attachCustomerManagedPolicyReferenceToPermissionSet_permissionSetArn :: Lens.Lens' AttachCustomerManagedPolicyReferenceToPermissionSet Prelude.Text+attachCustomerManagedPolicyReferenceToPermissionSet_permissionSetArn = Lens.lens (\AttachCustomerManagedPolicyReferenceToPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@AttachCustomerManagedPolicyReferenceToPermissionSet' {} a -> s {permissionSetArn = a} :: AttachCustomerManagedPolicyReferenceToPermissionSet)++-- | Specifies the name and path of a customer managed policy. You must have+-- an IAM policy that matches the name and path in each AWS account where+-- you want to deploy your permission set.+attachCustomerManagedPolicyReferenceToPermissionSet_customerManagedPolicyReference :: Lens.Lens' AttachCustomerManagedPolicyReferenceToPermissionSet CustomerManagedPolicyReference+attachCustomerManagedPolicyReferenceToPermissionSet_customerManagedPolicyReference = Lens.lens (\AttachCustomerManagedPolicyReferenceToPermissionSet' {customerManagedPolicyReference} -> customerManagedPolicyReference) (\s@AttachCustomerManagedPolicyReferenceToPermissionSet' {} a -> s {customerManagedPolicyReference = a} :: AttachCustomerManagedPolicyReferenceToPermissionSet)++instance+ Core.AWSRequest+ AttachCustomerManagedPolicyReferenceToPermissionSet+ where+ type+ AWSResponse+ AttachCustomerManagedPolicyReferenceToPermissionSet =+ AttachCustomerManagedPolicyReferenceToPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ AttachCustomerManagedPolicyReferenceToPermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ AttachCustomerManagedPolicyReferenceToPermissionSet+ where+ hashWithSalt+ _salt+ AttachCustomerManagedPolicyReferenceToPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` customerManagedPolicyReference++instance+ Prelude.NFData+ AttachCustomerManagedPolicyReferenceToPermissionSet+ where+ rnf+ AttachCustomerManagedPolicyReferenceToPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf customerManagedPolicyReference++instance+ Data.ToHeaders+ AttachCustomerManagedPolicyReferenceToPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.AttachCustomerManagedPolicyReferenceToPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ AttachCustomerManagedPolicyReferenceToPermissionSet+ where+ toJSON+ AttachCustomerManagedPolicyReferenceToPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just+ ( "CustomerManagedPolicyReference"+ Data..= customerManagedPolicyReference+ )+ ]+ )++instance+ Data.ToPath+ AttachCustomerManagedPolicyReferenceToPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ AttachCustomerManagedPolicyReferenceToPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAttachCustomerManagedPolicyReferenceToPermissionSetResponse' smart constructor.+data AttachCustomerManagedPolicyReferenceToPermissionSetResponse = AttachCustomerManagedPolicyReferenceToPermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachCustomerManagedPolicyReferenceToPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'attachCustomerManagedPolicyReferenceToPermissionSetResponse_httpStatus' - The response's http status code.+newAttachCustomerManagedPolicyReferenceToPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AttachCustomerManagedPolicyReferenceToPermissionSetResponse+newAttachCustomerManagedPolicyReferenceToPermissionSetResponse+ pHttpStatus_ =+ AttachCustomerManagedPolicyReferenceToPermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+attachCustomerManagedPolicyReferenceToPermissionSetResponse_httpStatus :: Lens.Lens' AttachCustomerManagedPolicyReferenceToPermissionSetResponse Prelude.Int+attachCustomerManagedPolicyReferenceToPermissionSetResponse_httpStatus = Lens.lens (\AttachCustomerManagedPolicyReferenceToPermissionSetResponse' {httpStatus} -> httpStatus) (\s@AttachCustomerManagedPolicyReferenceToPermissionSetResponse' {} a -> s {httpStatus = a} :: AttachCustomerManagedPolicyReferenceToPermissionSetResponse)++instance+ Prelude.NFData+ AttachCustomerManagedPolicyReferenceToPermissionSetResponse+ where+ rnf+ AttachCustomerManagedPolicyReferenceToPermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/AttachManagedPolicyToPermissionSet.hs view
@@ -0,0 +1,241 @@+{-# 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.SSOAdmin.AttachManagedPolicyToPermissionSet+-- 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 an AWS managed policy ARN to a permission set.+--+-- If the permission set is already referenced by one or more account+-- assignments, you will need to call @ @@ProvisionPermissionSet@@ @ after+-- this operation. Calling @ProvisionPermissionSet@ applies the+-- corresponding IAM policy updates to all assigned accounts.+module Amazonka.SSOAdmin.AttachManagedPolicyToPermissionSet+ ( -- * Creating a Request+ AttachManagedPolicyToPermissionSet (..),+ newAttachManagedPolicyToPermissionSet,++ -- * Request Lenses+ attachManagedPolicyToPermissionSet_instanceArn,+ attachManagedPolicyToPermissionSet_permissionSetArn,+ attachManagedPolicyToPermissionSet_managedPolicyArn,++ -- * Destructuring the Response+ AttachManagedPolicyToPermissionSetResponse (..),+ newAttachManagedPolicyToPermissionSetResponse,++ -- * Response Lenses+ attachManagedPolicyToPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newAttachManagedPolicyToPermissionSet' smart constructor.+data AttachManagedPolicyToPermissionSet = AttachManagedPolicyToPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the PermissionSet that the managed policy should be attached+ -- to.+ permissionSetArn :: Prelude.Text,+ -- | The AWS managed policy ARN to be attached to a permission set.+ managedPolicyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachManagedPolicyToPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'attachManagedPolicyToPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'attachManagedPolicyToPermissionSet_permissionSetArn' - The ARN of the PermissionSet that the managed policy should be attached+-- to.+--+-- 'managedPolicyArn', 'attachManagedPolicyToPermissionSet_managedPolicyArn' - The AWS managed policy ARN to be attached to a permission set.+newAttachManagedPolicyToPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'managedPolicyArn'+ Prelude.Text ->+ AttachManagedPolicyToPermissionSet+newAttachManagedPolicyToPermissionSet+ pInstanceArn_+ pPermissionSetArn_+ pManagedPolicyArn_ =+ AttachManagedPolicyToPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn = pPermissionSetArn_,+ managedPolicyArn = pManagedPolicyArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+attachManagedPolicyToPermissionSet_instanceArn :: Lens.Lens' AttachManagedPolicyToPermissionSet Prelude.Text+attachManagedPolicyToPermissionSet_instanceArn = Lens.lens (\AttachManagedPolicyToPermissionSet' {instanceArn} -> instanceArn) (\s@AttachManagedPolicyToPermissionSet' {} a -> s {instanceArn = a} :: AttachManagedPolicyToPermissionSet)++-- | The ARN of the PermissionSet that the managed policy should be attached+-- to.+attachManagedPolicyToPermissionSet_permissionSetArn :: Lens.Lens' AttachManagedPolicyToPermissionSet Prelude.Text+attachManagedPolicyToPermissionSet_permissionSetArn = Lens.lens (\AttachManagedPolicyToPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@AttachManagedPolicyToPermissionSet' {} a -> s {permissionSetArn = a} :: AttachManagedPolicyToPermissionSet)++-- | The AWS managed policy ARN to be attached to a permission set.+attachManagedPolicyToPermissionSet_managedPolicyArn :: Lens.Lens' AttachManagedPolicyToPermissionSet Prelude.Text+attachManagedPolicyToPermissionSet_managedPolicyArn = Lens.lens (\AttachManagedPolicyToPermissionSet' {managedPolicyArn} -> managedPolicyArn) (\s@AttachManagedPolicyToPermissionSet' {} a -> s {managedPolicyArn = a} :: AttachManagedPolicyToPermissionSet)++instance+ Core.AWSRequest+ AttachManagedPolicyToPermissionSet+ where+ type+ AWSResponse AttachManagedPolicyToPermissionSet =+ AttachManagedPolicyToPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ AttachManagedPolicyToPermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ AttachManagedPolicyToPermissionSet+ where+ hashWithSalt+ _salt+ AttachManagedPolicyToPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` managedPolicyArn++instance+ Prelude.NFData+ AttachManagedPolicyToPermissionSet+ where+ rnf AttachManagedPolicyToPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf managedPolicyArn++instance+ Data.ToHeaders+ AttachManagedPolicyToPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.AttachManagedPolicyToPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ AttachManagedPolicyToPermissionSet+ where+ toJSON AttachManagedPolicyToPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just+ ("ManagedPolicyArn" Data..= managedPolicyArn)+ ]+ )++instance+ Data.ToPath+ AttachManagedPolicyToPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ AttachManagedPolicyToPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAttachManagedPolicyToPermissionSetResponse' smart constructor.+data AttachManagedPolicyToPermissionSetResponse = AttachManagedPolicyToPermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachManagedPolicyToPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'attachManagedPolicyToPermissionSetResponse_httpStatus' - The response's http status code.+newAttachManagedPolicyToPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AttachManagedPolicyToPermissionSetResponse+newAttachManagedPolicyToPermissionSetResponse+ pHttpStatus_ =+ AttachManagedPolicyToPermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+attachManagedPolicyToPermissionSetResponse_httpStatus :: Lens.Lens' AttachManagedPolicyToPermissionSetResponse Prelude.Int+attachManagedPolicyToPermissionSetResponse_httpStatus = Lens.lens (\AttachManagedPolicyToPermissionSetResponse' {httpStatus} -> httpStatus) (\s@AttachManagedPolicyToPermissionSetResponse' {} a -> s {httpStatus = a} :: AttachManagedPolicyToPermissionSetResponse)++instance+ Prelude.NFData+ AttachManagedPolicyToPermissionSetResponse+ where+ rnf AttachManagedPolicyToPermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/CreateAccountAssignment.hs view
@@ -0,0 +1,302 @@+{-# 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.SSOAdmin.CreateAccountAssignment+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Assigns access to a principal for a specified AWS account using a+-- specified permission set.+--+-- The term /principal/ here refers to a user or group that is defined in+-- IAM Identity Center.+--+-- As part of a successful @CreateAccountAssignment@ call, the specified+-- permission set will automatically be provisioned to the account in the+-- form of an IAM policy. That policy is attached to the IAM role created+-- in IAM Identity Center. If the permission set is subsequently updated,+-- the corresponding IAM policies attached to roles in your accounts will+-- not be updated automatically. In this case, you must call+-- @ @@ProvisionPermissionSet@@ @ to make these updates.+--+-- After a successful response, call+-- @DescribeAccountAssignmentCreationStatus@ to describe the status of an+-- assignment creation request.+module Amazonka.SSOAdmin.CreateAccountAssignment+ ( -- * Creating a Request+ CreateAccountAssignment (..),+ newCreateAccountAssignment,++ -- * Request Lenses+ createAccountAssignment_instanceArn,+ createAccountAssignment_targetId,+ createAccountAssignment_targetType,+ createAccountAssignment_permissionSetArn,+ createAccountAssignment_principalType,+ createAccountAssignment_principalId,++ -- * Destructuring the Response+ CreateAccountAssignmentResponse (..),+ newCreateAccountAssignmentResponse,++ -- * Response Lenses+ createAccountAssignmentResponse_accountAssignmentCreationStatus,+ createAccountAssignmentResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newCreateAccountAssignment' smart constructor.+data CreateAccountAssignment = CreateAccountAssignment'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | TargetID is an AWS account identifier, typically a 10-12 digit string+ -- (For example, 123456789012).+ targetId :: Prelude.Text,+ -- | The entity type for which the assignment will be created.+ targetType :: TargetType,+ -- | The ARN of the permission set that the admin wants to grant the+ -- principal access to.+ permissionSetArn :: Prelude.Text,+ -- | The entity type for which the assignment will be created.+ principalType :: PrincipalType,+ -- | An identifier for an object in IAM Identity Center, such as a user or+ -- group. PrincipalIds are GUIDs (For example,+ -- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+ -- PrincipalIds in IAM Identity Center, see the+ -- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+ principalId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateAccountAssignment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'createAccountAssignment_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'targetId', 'createAccountAssignment_targetId' - TargetID is an AWS account identifier, typically a 10-12 digit string+-- (For example, 123456789012).+--+-- 'targetType', 'createAccountAssignment_targetType' - The entity type for which the assignment will be created.+--+-- 'permissionSetArn', 'createAccountAssignment_permissionSetArn' - The ARN of the permission set that the admin wants to grant the+-- principal access to.+--+-- 'principalType', 'createAccountAssignment_principalType' - The entity type for which the assignment will be created.+--+-- 'principalId', 'createAccountAssignment_principalId' - An identifier for an object in IAM Identity Center, such as a user or+-- group. PrincipalIds are GUIDs (For example,+-- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+-- PrincipalIds in IAM Identity Center, see the+-- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+newCreateAccountAssignment ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'targetId'+ Prelude.Text ->+ -- | 'targetType'+ TargetType ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'principalType'+ PrincipalType ->+ -- | 'principalId'+ Prelude.Text ->+ CreateAccountAssignment+newCreateAccountAssignment+ pInstanceArn_+ pTargetId_+ pTargetType_+ pPermissionSetArn_+ pPrincipalType_+ pPrincipalId_ =+ CreateAccountAssignment'+ { instanceArn =+ pInstanceArn_,+ targetId = pTargetId_,+ targetType = pTargetType_,+ permissionSetArn = pPermissionSetArn_,+ principalType = pPrincipalType_,+ principalId = pPrincipalId_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+createAccountAssignment_instanceArn :: Lens.Lens' CreateAccountAssignment Prelude.Text+createAccountAssignment_instanceArn = Lens.lens (\CreateAccountAssignment' {instanceArn} -> instanceArn) (\s@CreateAccountAssignment' {} a -> s {instanceArn = a} :: CreateAccountAssignment)++-- | TargetID is an AWS account identifier, typically a 10-12 digit string+-- (For example, 123456789012).+createAccountAssignment_targetId :: Lens.Lens' CreateAccountAssignment Prelude.Text+createAccountAssignment_targetId = Lens.lens (\CreateAccountAssignment' {targetId} -> targetId) (\s@CreateAccountAssignment' {} a -> s {targetId = a} :: CreateAccountAssignment)++-- | The entity type for which the assignment will be created.+createAccountAssignment_targetType :: Lens.Lens' CreateAccountAssignment TargetType+createAccountAssignment_targetType = Lens.lens (\CreateAccountAssignment' {targetType} -> targetType) (\s@CreateAccountAssignment' {} a -> s {targetType = a} :: CreateAccountAssignment)++-- | The ARN of the permission set that the admin wants to grant the+-- principal access to.+createAccountAssignment_permissionSetArn :: Lens.Lens' CreateAccountAssignment Prelude.Text+createAccountAssignment_permissionSetArn = Lens.lens (\CreateAccountAssignment' {permissionSetArn} -> permissionSetArn) (\s@CreateAccountAssignment' {} a -> s {permissionSetArn = a} :: CreateAccountAssignment)++-- | The entity type for which the assignment will be created.+createAccountAssignment_principalType :: Lens.Lens' CreateAccountAssignment PrincipalType+createAccountAssignment_principalType = Lens.lens (\CreateAccountAssignment' {principalType} -> principalType) (\s@CreateAccountAssignment' {} a -> s {principalType = a} :: CreateAccountAssignment)++-- | An identifier for an object in IAM Identity Center, such as a user or+-- group. PrincipalIds are GUIDs (For example,+-- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+-- PrincipalIds in IAM Identity Center, see the+-- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+createAccountAssignment_principalId :: Lens.Lens' CreateAccountAssignment Prelude.Text+createAccountAssignment_principalId = Lens.lens (\CreateAccountAssignment' {principalId} -> principalId) (\s@CreateAccountAssignment' {} a -> s {principalId = a} :: CreateAccountAssignment)++instance Core.AWSRequest CreateAccountAssignment where+ type+ AWSResponse CreateAccountAssignment =+ CreateAccountAssignmentResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateAccountAssignmentResponse'+ Prelude.<$> (x Data..?> "AccountAssignmentCreationStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateAccountAssignment where+ hashWithSalt _salt CreateAccountAssignment' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` targetId+ `Prelude.hashWithSalt` targetType+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` principalType+ `Prelude.hashWithSalt` principalId++instance Prelude.NFData CreateAccountAssignment where+ rnf CreateAccountAssignment' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf targetId+ `Prelude.seq` Prelude.rnf targetType+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf principalType+ `Prelude.seq` Prelude.rnf principalId++instance Data.ToHeaders CreateAccountAssignment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.CreateAccountAssignment" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateAccountAssignment where+ toJSON CreateAccountAssignment' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just ("TargetId" Data..= targetId),+ Prelude.Just ("TargetType" Data..= targetType),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just ("PrincipalType" Data..= principalType),+ Prelude.Just ("PrincipalId" Data..= principalId)+ ]+ )++instance Data.ToPath CreateAccountAssignment where+ toPath = Prelude.const "/"++instance Data.ToQuery CreateAccountAssignment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateAccountAssignmentResponse' smart constructor.+data CreateAccountAssignmentResponse = CreateAccountAssignmentResponse'+ { -- | The status object for the account assignment creation operation.+ accountAssignmentCreationStatus :: Prelude.Maybe AccountAssignmentOperationStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateAccountAssignmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAssignmentCreationStatus', 'createAccountAssignmentResponse_accountAssignmentCreationStatus' - The status object for the account assignment creation operation.+--+-- 'httpStatus', 'createAccountAssignmentResponse_httpStatus' - The response's http status code.+newCreateAccountAssignmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateAccountAssignmentResponse+newCreateAccountAssignmentResponse pHttpStatus_ =+ CreateAccountAssignmentResponse'+ { accountAssignmentCreationStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status object for the account assignment creation operation.+createAccountAssignmentResponse_accountAssignmentCreationStatus :: Lens.Lens' CreateAccountAssignmentResponse (Prelude.Maybe AccountAssignmentOperationStatus)+createAccountAssignmentResponse_accountAssignmentCreationStatus = Lens.lens (\CreateAccountAssignmentResponse' {accountAssignmentCreationStatus} -> accountAssignmentCreationStatus) (\s@CreateAccountAssignmentResponse' {} a -> s {accountAssignmentCreationStatus = a} :: CreateAccountAssignmentResponse)++-- | The response's http status code.+createAccountAssignmentResponse_httpStatus :: Lens.Lens' CreateAccountAssignmentResponse Prelude.Int+createAccountAssignmentResponse_httpStatus = Lens.lens (\CreateAccountAssignmentResponse' {httpStatus} -> httpStatus) (\s@CreateAccountAssignmentResponse' {} a -> s {httpStatus = a} :: CreateAccountAssignmentResponse)++instance+ Prelude.NFData+ CreateAccountAssignmentResponse+ where+ rnf CreateAccountAssignmentResponse' {..} =+ Prelude.rnf accountAssignmentCreationStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/CreateInstanceAccessControlAttributeConfiguration.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.SSOAdmin.CreateInstanceAccessControlAttributeConfiguration+-- 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 attributes-based access control (ABAC) feature for the+-- specified IAM Identity Center instance. You can also specify new+-- attributes to add to your ABAC configuration during the enabling+-- process. For more information about ABAC, see+-- </singlesignon/latest/userguide/abac.html Attribute-Based Access Control>+-- in the /IAM Identity Center User Guide/.+--+-- After a successful response, call+-- @DescribeInstanceAccessControlAttributeConfiguration@ to validate that+-- @InstanceAccessControlAttributeConfiguration@ was created.+module Amazonka.SSOAdmin.CreateInstanceAccessControlAttributeConfiguration+ ( -- * Creating a Request+ CreateInstanceAccessControlAttributeConfiguration (..),+ newCreateInstanceAccessControlAttributeConfiguration,++ -- * Request Lenses+ createInstanceAccessControlAttributeConfiguration_instanceArn,+ createInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration,++ -- * Destructuring the Response+ CreateInstanceAccessControlAttributeConfigurationResponse (..),+ newCreateInstanceAccessControlAttributeConfigurationResponse,++ -- * Response Lenses+ createInstanceAccessControlAttributeConfigurationResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newCreateInstanceAccessControlAttributeConfiguration' smart constructor.+data CreateInstanceAccessControlAttributeConfiguration = CreateInstanceAccessControlAttributeConfiguration'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text,+ -- | Specifies the IAM Identity Center identity store attributes to add to+ -- your ABAC configuration. When using an external identity provider as an+ -- identity source, you can pass attributes through the SAML assertion.+ -- Doing so provides an alternative to configuring attributes from the IAM+ -- Identity Center identity store. If a SAML assertion passes any of these+ -- attributes, IAM Identity Center will replace the attribute value with+ -- the value from the IAM Identity Center identity store.+ instanceAccessControlAttributeConfiguration :: InstanceAccessControlAttributeConfiguration+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateInstanceAccessControlAttributeConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'createInstanceAccessControlAttributeConfiguration_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+--+-- 'instanceAccessControlAttributeConfiguration', 'createInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration' - Specifies the IAM Identity Center identity store attributes to add to+-- your ABAC configuration. When using an external identity provider as an+-- identity source, you can pass attributes through the SAML assertion.+-- Doing so provides an alternative to configuring attributes from the IAM+-- Identity Center identity store. If a SAML assertion passes any of these+-- attributes, IAM Identity Center will replace the attribute value with+-- the value from the IAM Identity Center identity store.+newCreateInstanceAccessControlAttributeConfiguration ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'instanceAccessControlAttributeConfiguration'+ InstanceAccessControlAttributeConfiguration ->+ CreateInstanceAccessControlAttributeConfiguration+newCreateInstanceAccessControlAttributeConfiguration+ pInstanceArn_+ pInstanceAccessControlAttributeConfiguration_ =+ CreateInstanceAccessControlAttributeConfiguration'+ { instanceArn =+ pInstanceArn_,+ instanceAccessControlAttributeConfiguration =+ pInstanceAccessControlAttributeConfiguration_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+createInstanceAccessControlAttributeConfiguration_instanceArn :: Lens.Lens' CreateInstanceAccessControlAttributeConfiguration Prelude.Text+createInstanceAccessControlAttributeConfiguration_instanceArn = Lens.lens (\CreateInstanceAccessControlAttributeConfiguration' {instanceArn} -> instanceArn) (\s@CreateInstanceAccessControlAttributeConfiguration' {} a -> s {instanceArn = a} :: CreateInstanceAccessControlAttributeConfiguration)++-- | Specifies the IAM Identity Center identity store attributes to add to+-- your ABAC configuration. When using an external identity provider as an+-- identity source, you can pass attributes through the SAML assertion.+-- Doing so provides an alternative to configuring attributes from the IAM+-- Identity Center identity store. If a SAML assertion passes any of these+-- attributes, IAM Identity Center will replace the attribute value with+-- the value from the IAM Identity Center identity store.+createInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration :: Lens.Lens' CreateInstanceAccessControlAttributeConfiguration InstanceAccessControlAttributeConfiguration+createInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration = Lens.lens (\CreateInstanceAccessControlAttributeConfiguration' {instanceAccessControlAttributeConfiguration} -> instanceAccessControlAttributeConfiguration) (\s@CreateInstanceAccessControlAttributeConfiguration' {} a -> s {instanceAccessControlAttributeConfiguration = a} :: CreateInstanceAccessControlAttributeConfiguration)++instance+ Core.AWSRequest+ CreateInstanceAccessControlAttributeConfiguration+ where+ type+ AWSResponse+ CreateInstanceAccessControlAttributeConfiguration =+ CreateInstanceAccessControlAttributeConfigurationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ CreateInstanceAccessControlAttributeConfigurationResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ CreateInstanceAccessControlAttributeConfiguration+ where+ hashWithSalt+ _salt+ CreateInstanceAccessControlAttributeConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` instanceAccessControlAttributeConfiguration++instance+ Prelude.NFData+ CreateInstanceAccessControlAttributeConfiguration+ where+ rnf+ CreateInstanceAccessControlAttributeConfiguration' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf+ instanceAccessControlAttributeConfiguration++instance+ Data.ToHeaders+ CreateInstanceAccessControlAttributeConfiguration+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.CreateInstanceAccessControlAttributeConfiguration" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ CreateInstanceAccessControlAttributeConfiguration+ where+ toJSON+ CreateInstanceAccessControlAttributeConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ( "InstanceAccessControlAttributeConfiguration"+ Data..= instanceAccessControlAttributeConfiguration+ )+ ]+ )++instance+ Data.ToPath+ CreateInstanceAccessControlAttributeConfiguration+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ CreateInstanceAccessControlAttributeConfiguration+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateInstanceAccessControlAttributeConfigurationResponse' smart constructor.+data CreateInstanceAccessControlAttributeConfigurationResponse = CreateInstanceAccessControlAttributeConfigurationResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateInstanceAccessControlAttributeConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createInstanceAccessControlAttributeConfigurationResponse_httpStatus' - The response's http status code.+newCreateInstanceAccessControlAttributeConfigurationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateInstanceAccessControlAttributeConfigurationResponse+newCreateInstanceAccessControlAttributeConfigurationResponse+ pHttpStatus_ =+ CreateInstanceAccessControlAttributeConfigurationResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+createInstanceAccessControlAttributeConfigurationResponse_httpStatus :: Lens.Lens' CreateInstanceAccessControlAttributeConfigurationResponse Prelude.Int+createInstanceAccessControlAttributeConfigurationResponse_httpStatus = Lens.lens (\CreateInstanceAccessControlAttributeConfigurationResponse' {httpStatus} -> httpStatus) (\s@CreateInstanceAccessControlAttributeConfigurationResponse' {} a -> s {httpStatus = a} :: CreateInstanceAccessControlAttributeConfigurationResponse)++instance+ Prelude.NFData+ CreateInstanceAccessControlAttributeConfigurationResponse+ where+ rnf+ CreateInstanceAccessControlAttributeConfigurationResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/CreatePermissionSet.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.SSOAdmin.CreatePermissionSet+-- 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 permission set within a specified IAM Identity Center+-- instance.+--+-- To grant users and groups access to AWS account resources, use+-- @ @@CreateAccountAssignment@@ @.+module Amazonka.SSOAdmin.CreatePermissionSet+ ( -- * Creating a Request+ CreatePermissionSet (..),+ newCreatePermissionSet,++ -- * Request Lenses+ createPermissionSet_description,+ createPermissionSet_relayState,+ createPermissionSet_sessionDuration,+ createPermissionSet_tags,+ createPermissionSet_name,+ createPermissionSet_instanceArn,++ -- * Destructuring the Response+ CreatePermissionSetResponse (..),+ newCreatePermissionSetResponse,++ -- * Response Lenses+ createPermissionSetResponse_permissionSet,+ createPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newCreatePermissionSet' smart constructor.+data CreatePermissionSet = CreatePermissionSet'+ { -- | The description of the PermissionSet.+ description :: Prelude.Maybe Prelude.Text,+ -- | Used to redirect users within the application during the federation+ -- authentication process.+ relayState :: Prelude.Maybe Prelude.Text,+ -- | The length of time that the application user sessions are valid in the+ -- ISO-8601 standard.+ sessionDuration :: Prelude.Maybe Prelude.Text,+ -- | The tags to attach to the new PermissionSet.+ tags :: Prelude.Maybe [Tag],+ -- | The name of the PermissionSet.+ name :: Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createPermissionSet_description' - The description of the PermissionSet.+--+-- 'relayState', 'createPermissionSet_relayState' - Used to redirect users within the application during the federation+-- authentication process.+--+-- 'sessionDuration', 'createPermissionSet_sessionDuration' - The length of time that the application user sessions are valid in the+-- ISO-8601 standard.+--+-- 'tags', 'createPermissionSet_tags' - The tags to attach to the new PermissionSet.+--+-- 'name', 'createPermissionSet_name' - The name of the PermissionSet.+--+-- 'instanceArn', 'createPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+newCreatePermissionSet ::+ -- | 'name'+ Prelude.Text ->+ -- | 'instanceArn'+ Prelude.Text ->+ CreatePermissionSet+newCreatePermissionSet pName_ pInstanceArn_ =+ CreatePermissionSet'+ { description = Prelude.Nothing,+ relayState = Prelude.Nothing,+ sessionDuration = Prelude.Nothing,+ tags = Prelude.Nothing,+ name = pName_,+ instanceArn = pInstanceArn_+ }++-- | The description of the PermissionSet.+createPermissionSet_description :: Lens.Lens' CreatePermissionSet (Prelude.Maybe Prelude.Text)+createPermissionSet_description = Lens.lens (\CreatePermissionSet' {description} -> description) (\s@CreatePermissionSet' {} a -> s {description = a} :: CreatePermissionSet)++-- | Used to redirect users within the application during the federation+-- authentication process.+createPermissionSet_relayState :: Lens.Lens' CreatePermissionSet (Prelude.Maybe Prelude.Text)+createPermissionSet_relayState = Lens.lens (\CreatePermissionSet' {relayState} -> relayState) (\s@CreatePermissionSet' {} a -> s {relayState = a} :: CreatePermissionSet)++-- | The length of time that the application user sessions are valid in the+-- ISO-8601 standard.+createPermissionSet_sessionDuration :: Lens.Lens' CreatePermissionSet (Prelude.Maybe Prelude.Text)+createPermissionSet_sessionDuration = Lens.lens (\CreatePermissionSet' {sessionDuration} -> sessionDuration) (\s@CreatePermissionSet' {} a -> s {sessionDuration = a} :: CreatePermissionSet)++-- | The tags to attach to the new PermissionSet.+createPermissionSet_tags :: Lens.Lens' CreatePermissionSet (Prelude.Maybe [Tag])+createPermissionSet_tags = Lens.lens (\CreatePermissionSet' {tags} -> tags) (\s@CreatePermissionSet' {} a -> s {tags = a} :: CreatePermissionSet) Prelude.. Lens.mapping Lens.coerced++-- | The name of the PermissionSet.+createPermissionSet_name :: Lens.Lens' CreatePermissionSet Prelude.Text+createPermissionSet_name = Lens.lens (\CreatePermissionSet' {name} -> name) (\s@CreatePermissionSet' {} a -> s {name = a} :: CreatePermissionSet)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+createPermissionSet_instanceArn :: Lens.Lens' CreatePermissionSet Prelude.Text+createPermissionSet_instanceArn = Lens.lens (\CreatePermissionSet' {instanceArn} -> instanceArn) (\s@CreatePermissionSet' {} a -> s {instanceArn = a} :: CreatePermissionSet)++instance Core.AWSRequest CreatePermissionSet where+ type+ AWSResponse CreatePermissionSet =+ CreatePermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreatePermissionSetResponse'+ Prelude.<$> (x Data..?> "PermissionSet")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreatePermissionSet where+ hashWithSalt _salt CreatePermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` relayState+ `Prelude.hashWithSalt` sessionDuration+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` instanceArn++instance Prelude.NFData CreatePermissionSet where+ rnf CreatePermissionSet' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf relayState+ `Prelude.seq` Prelude.rnf sessionDuration+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf instanceArn++instance Data.ToHeaders CreatePermissionSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.CreatePermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreatePermissionSet where+ toJSON CreatePermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Description" Data..=) Prelude.<$> description,+ ("RelayState" Data..=) Prelude.<$> relayState,+ ("SessionDuration" Data..=)+ Prelude.<$> sessionDuration,+ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("Name" Data..= name),+ Prelude.Just ("InstanceArn" Data..= instanceArn)+ ]+ )++instance Data.ToPath CreatePermissionSet where+ toPath = Prelude.const "/"++instance Data.ToQuery CreatePermissionSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreatePermissionSetResponse' smart constructor.+data CreatePermissionSetResponse = CreatePermissionSetResponse'+ { -- | Defines the level of access on an AWS account.+ permissionSet :: Prelude.Maybe PermissionSet,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'permissionSet', 'createPermissionSetResponse_permissionSet' - Defines the level of access on an AWS account.+--+-- 'httpStatus', 'createPermissionSetResponse_httpStatus' - The response's http status code.+newCreatePermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreatePermissionSetResponse+newCreatePermissionSetResponse pHttpStatus_ =+ CreatePermissionSetResponse'+ { permissionSet =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Defines the level of access on an AWS account.+createPermissionSetResponse_permissionSet :: Lens.Lens' CreatePermissionSetResponse (Prelude.Maybe PermissionSet)+createPermissionSetResponse_permissionSet = Lens.lens (\CreatePermissionSetResponse' {permissionSet} -> permissionSet) (\s@CreatePermissionSetResponse' {} a -> s {permissionSet = a} :: CreatePermissionSetResponse)++-- | The response's http status code.+createPermissionSetResponse_httpStatus :: Lens.Lens' CreatePermissionSetResponse Prelude.Int+createPermissionSetResponse_httpStatus = Lens.lens (\CreatePermissionSetResponse' {httpStatus} -> httpStatus) (\s@CreatePermissionSetResponse' {} a -> s {httpStatus = a} :: CreatePermissionSetResponse)++instance Prelude.NFData CreatePermissionSetResponse where+ rnf CreatePermissionSetResponse' {..} =+ Prelude.rnf permissionSet+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DeleteAccountAssignment.hs view
@@ -0,0 +1,288 @@+{-# 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.SSOAdmin.DeleteAccountAssignment+-- 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 principal\'s access from a specified AWS account using a+-- specified permission set.+--+-- After a successful response, call+-- @DescribeAccountAssignmentCreationStatus@ to describe the status of an+-- assignment deletion request.+module Amazonka.SSOAdmin.DeleteAccountAssignment+ ( -- * Creating a Request+ DeleteAccountAssignment (..),+ newDeleteAccountAssignment,++ -- * Request Lenses+ deleteAccountAssignment_instanceArn,+ deleteAccountAssignment_targetId,+ deleteAccountAssignment_targetType,+ deleteAccountAssignment_permissionSetArn,+ deleteAccountAssignment_principalType,+ deleteAccountAssignment_principalId,++ -- * Destructuring the Response+ DeleteAccountAssignmentResponse (..),+ newDeleteAccountAssignmentResponse,++ -- * Response Lenses+ deleteAccountAssignmentResponse_accountAssignmentDeletionStatus,+ deleteAccountAssignmentResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDeleteAccountAssignment' smart constructor.+data DeleteAccountAssignment = DeleteAccountAssignment'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | TargetID is an AWS account identifier, typically a 10-12 digit string+ -- (For example, 123456789012).+ targetId :: Prelude.Text,+ -- | The entity type for which the assignment will be deleted.+ targetType :: TargetType,+ -- | The ARN of the permission set that will be used to remove access.+ permissionSetArn :: Prelude.Text,+ -- | The entity type for which the assignment will be deleted.+ principalType :: PrincipalType,+ -- | An identifier for an object in IAM Identity Center, such as a user or+ -- group. PrincipalIds are GUIDs (For example,+ -- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+ -- PrincipalIds in IAM Identity Center, see the+ -- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+ principalId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAccountAssignment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'deleteAccountAssignment_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'targetId', 'deleteAccountAssignment_targetId' - TargetID is an AWS account identifier, typically a 10-12 digit string+-- (For example, 123456789012).+--+-- 'targetType', 'deleteAccountAssignment_targetType' - The entity type for which the assignment will be deleted.+--+-- 'permissionSetArn', 'deleteAccountAssignment_permissionSetArn' - The ARN of the permission set that will be used to remove access.+--+-- 'principalType', 'deleteAccountAssignment_principalType' - The entity type for which the assignment will be deleted.+--+-- 'principalId', 'deleteAccountAssignment_principalId' - An identifier for an object in IAM Identity Center, such as a user or+-- group. PrincipalIds are GUIDs (For example,+-- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+-- PrincipalIds in IAM Identity Center, see the+-- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+newDeleteAccountAssignment ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'targetId'+ Prelude.Text ->+ -- | 'targetType'+ TargetType ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'principalType'+ PrincipalType ->+ -- | 'principalId'+ Prelude.Text ->+ DeleteAccountAssignment+newDeleteAccountAssignment+ pInstanceArn_+ pTargetId_+ pTargetType_+ pPermissionSetArn_+ pPrincipalType_+ pPrincipalId_ =+ DeleteAccountAssignment'+ { instanceArn =+ pInstanceArn_,+ targetId = pTargetId_,+ targetType = pTargetType_,+ permissionSetArn = pPermissionSetArn_,+ principalType = pPrincipalType_,+ principalId = pPrincipalId_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+deleteAccountAssignment_instanceArn :: Lens.Lens' DeleteAccountAssignment Prelude.Text+deleteAccountAssignment_instanceArn = Lens.lens (\DeleteAccountAssignment' {instanceArn} -> instanceArn) (\s@DeleteAccountAssignment' {} a -> s {instanceArn = a} :: DeleteAccountAssignment)++-- | TargetID is an AWS account identifier, typically a 10-12 digit string+-- (For example, 123456789012).+deleteAccountAssignment_targetId :: Lens.Lens' DeleteAccountAssignment Prelude.Text+deleteAccountAssignment_targetId = Lens.lens (\DeleteAccountAssignment' {targetId} -> targetId) (\s@DeleteAccountAssignment' {} a -> s {targetId = a} :: DeleteAccountAssignment)++-- | The entity type for which the assignment will be deleted.+deleteAccountAssignment_targetType :: Lens.Lens' DeleteAccountAssignment TargetType+deleteAccountAssignment_targetType = Lens.lens (\DeleteAccountAssignment' {targetType} -> targetType) (\s@DeleteAccountAssignment' {} a -> s {targetType = a} :: DeleteAccountAssignment)++-- | The ARN of the permission set that will be used to remove access.+deleteAccountAssignment_permissionSetArn :: Lens.Lens' DeleteAccountAssignment Prelude.Text+deleteAccountAssignment_permissionSetArn = Lens.lens (\DeleteAccountAssignment' {permissionSetArn} -> permissionSetArn) (\s@DeleteAccountAssignment' {} a -> s {permissionSetArn = a} :: DeleteAccountAssignment)++-- | The entity type for which the assignment will be deleted.+deleteAccountAssignment_principalType :: Lens.Lens' DeleteAccountAssignment PrincipalType+deleteAccountAssignment_principalType = Lens.lens (\DeleteAccountAssignment' {principalType} -> principalType) (\s@DeleteAccountAssignment' {} a -> s {principalType = a} :: DeleteAccountAssignment)++-- | An identifier for an object in IAM Identity Center, such as a user or+-- group. PrincipalIds are GUIDs (For example,+-- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+-- PrincipalIds in IAM Identity Center, see the+-- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+deleteAccountAssignment_principalId :: Lens.Lens' DeleteAccountAssignment Prelude.Text+deleteAccountAssignment_principalId = Lens.lens (\DeleteAccountAssignment' {principalId} -> principalId) (\s@DeleteAccountAssignment' {} a -> s {principalId = a} :: DeleteAccountAssignment)++instance Core.AWSRequest DeleteAccountAssignment where+ type+ AWSResponse DeleteAccountAssignment =+ DeleteAccountAssignmentResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteAccountAssignmentResponse'+ Prelude.<$> (x Data..?> "AccountAssignmentDeletionStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteAccountAssignment where+ hashWithSalt _salt DeleteAccountAssignment' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` targetId+ `Prelude.hashWithSalt` targetType+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` principalType+ `Prelude.hashWithSalt` principalId++instance Prelude.NFData DeleteAccountAssignment where+ rnf DeleteAccountAssignment' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf targetId+ `Prelude.seq` Prelude.rnf targetType+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf principalType+ `Prelude.seq` Prelude.rnf principalId++instance Data.ToHeaders DeleteAccountAssignment where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DeleteAccountAssignment" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteAccountAssignment where+ toJSON DeleteAccountAssignment' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just ("TargetId" Data..= targetId),+ Prelude.Just ("TargetType" Data..= targetType),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just ("PrincipalType" Data..= principalType),+ Prelude.Just ("PrincipalId" Data..= principalId)+ ]+ )++instance Data.ToPath DeleteAccountAssignment where+ toPath = Prelude.const "/"++instance Data.ToQuery DeleteAccountAssignment where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteAccountAssignmentResponse' smart constructor.+data DeleteAccountAssignmentResponse = DeleteAccountAssignmentResponse'+ { -- | The status object for the account assignment deletion operation.+ accountAssignmentDeletionStatus :: Prelude.Maybe AccountAssignmentOperationStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteAccountAssignmentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAssignmentDeletionStatus', 'deleteAccountAssignmentResponse_accountAssignmentDeletionStatus' - The status object for the account assignment deletion operation.+--+-- 'httpStatus', 'deleteAccountAssignmentResponse_httpStatus' - The response's http status code.+newDeleteAccountAssignmentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteAccountAssignmentResponse+newDeleteAccountAssignmentResponse pHttpStatus_ =+ DeleteAccountAssignmentResponse'+ { accountAssignmentDeletionStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status object for the account assignment deletion operation.+deleteAccountAssignmentResponse_accountAssignmentDeletionStatus :: Lens.Lens' DeleteAccountAssignmentResponse (Prelude.Maybe AccountAssignmentOperationStatus)+deleteAccountAssignmentResponse_accountAssignmentDeletionStatus = Lens.lens (\DeleteAccountAssignmentResponse' {accountAssignmentDeletionStatus} -> accountAssignmentDeletionStatus) (\s@DeleteAccountAssignmentResponse' {} a -> s {accountAssignmentDeletionStatus = a} :: DeleteAccountAssignmentResponse)++-- | The response's http status code.+deleteAccountAssignmentResponse_httpStatus :: Lens.Lens' DeleteAccountAssignmentResponse Prelude.Int+deleteAccountAssignmentResponse_httpStatus = Lens.lens (\DeleteAccountAssignmentResponse' {httpStatus} -> httpStatus) (\s@DeleteAccountAssignmentResponse' {} a -> s {httpStatus = a} :: DeleteAccountAssignmentResponse)++instance+ Prelude.NFData+ DeleteAccountAssignmentResponse+ where+ rnf DeleteAccountAssignmentResponse' {..} =+ Prelude.rnf accountAssignmentDeletionStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DeleteInlinePolicyFromPermissionSet.hs view
@@ -0,0 +1,216 @@+{-# 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.SSOAdmin.DeleteInlinePolicyFromPermissionSet+-- 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 inline policy from a specified permission set.+module Amazonka.SSOAdmin.DeleteInlinePolicyFromPermissionSet+ ( -- * Creating a Request+ DeleteInlinePolicyFromPermissionSet (..),+ newDeleteInlinePolicyFromPermissionSet,++ -- * Request Lenses+ deleteInlinePolicyFromPermissionSet_instanceArn,+ deleteInlinePolicyFromPermissionSet_permissionSetArn,++ -- * Destructuring the Response+ DeleteInlinePolicyFromPermissionSetResponse (..),+ newDeleteInlinePolicyFromPermissionSetResponse,++ -- * Response Lenses+ deleteInlinePolicyFromPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDeleteInlinePolicyFromPermissionSet' smart constructor.+data DeleteInlinePolicyFromPermissionSet = DeleteInlinePolicyFromPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the permission set that will be used to remove access.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteInlinePolicyFromPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'deleteInlinePolicyFromPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'deleteInlinePolicyFromPermissionSet_permissionSetArn' - The ARN of the permission set that will be used to remove access.+newDeleteInlinePolicyFromPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ DeleteInlinePolicyFromPermissionSet+newDeleteInlinePolicyFromPermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ DeleteInlinePolicyFromPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn = pPermissionSetArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+deleteInlinePolicyFromPermissionSet_instanceArn :: Lens.Lens' DeleteInlinePolicyFromPermissionSet Prelude.Text+deleteInlinePolicyFromPermissionSet_instanceArn = Lens.lens (\DeleteInlinePolicyFromPermissionSet' {instanceArn} -> instanceArn) (\s@DeleteInlinePolicyFromPermissionSet' {} a -> s {instanceArn = a} :: DeleteInlinePolicyFromPermissionSet)++-- | The ARN of the permission set that will be used to remove access.+deleteInlinePolicyFromPermissionSet_permissionSetArn :: Lens.Lens' DeleteInlinePolicyFromPermissionSet Prelude.Text+deleteInlinePolicyFromPermissionSet_permissionSetArn = Lens.lens (\DeleteInlinePolicyFromPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@DeleteInlinePolicyFromPermissionSet' {} a -> s {permissionSetArn = a} :: DeleteInlinePolicyFromPermissionSet)++instance+ Core.AWSRequest+ DeleteInlinePolicyFromPermissionSet+ where+ type+ AWSResponse DeleteInlinePolicyFromPermissionSet =+ DeleteInlinePolicyFromPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteInlinePolicyFromPermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeleteInlinePolicyFromPermissionSet+ where+ hashWithSalt+ _salt+ DeleteInlinePolicyFromPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance+ Prelude.NFData+ DeleteInlinePolicyFromPermissionSet+ where+ rnf DeleteInlinePolicyFromPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance+ Data.ToHeaders+ DeleteInlinePolicyFromPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DeleteInlinePolicyFromPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DeleteInlinePolicyFromPermissionSet+ where+ toJSON DeleteInlinePolicyFromPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance+ Data.ToPath+ DeleteInlinePolicyFromPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DeleteInlinePolicyFromPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteInlinePolicyFromPermissionSetResponse' smart constructor.+data DeleteInlinePolicyFromPermissionSetResponse = DeleteInlinePolicyFromPermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteInlinePolicyFromPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deleteInlinePolicyFromPermissionSetResponse_httpStatus' - The response's http status code.+newDeleteInlinePolicyFromPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteInlinePolicyFromPermissionSetResponse+newDeleteInlinePolicyFromPermissionSetResponse+ pHttpStatus_ =+ DeleteInlinePolicyFromPermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteInlinePolicyFromPermissionSetResponse_httpStatus :: Lens.Lens' DeleteInlinePolicyFromPermissionSetResponse Prelude.Int+deleteInlinePolicyFromPermissionSetResponse_httpStatus = Lens.lens (\DeleteInlinePolicyFromPermissionSetResponse' {httpStatus} -> httpStatus) (\s@DeleteInlinePolicyFromPermissionSetResponse' {} a -> s {httpStatus = a} :: DeleteInlinePolicyFromPermissionSetResponse)++instance+ Prelude.NFData+ DeleteInlinePolicyFromPermissionSetResponse+ where+ rnf DeleteInlinePolicyFromPermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DeleteInstanceAccessControlAttributeConfiguration.hs view
@@ -0,0 +1,202 @@+{-# 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.SSOAdmin.DeleteInstanceAccessControlAttributeConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Disables the attributes-based access control (ABAC) feature for the+-- specified IAM Identity Center instance and deletes all of the attribute+-- mappings that have been configured. Once deleted, any attributes that+-- are received from an identity source and any custom attributes you have+-- previously configured will not be passed. For more information about+-- ABAC, see+-- </singlesignon/latest/userguide/abac.html Attribute-Based Access Control>+-- in the /IAM Identity Center User Guide/.+module Amazonka.SSOAdmin.DeleteInstanceAccessControlAttributeConfiguration+ ( -- * Creating a Request+ DeleteInstanceAccessControlAttributeConfiguration (..),+ newDeleteInstanceAccessControlAttributeConfiguration,++ -- * Request Lenses+ deleteInstanceAccessControlAttributeConfiguration_instanceArn,++ -- * Destructuring the Response+ DeleteInstanceAccessControlAttributeConfigurationResponse (..),+ newDeleteInstanceAccessControlAttributeConfigurationResponse,++ -- * Response Lenses+ deleteInstanceAccessControlAttributeConfigurationResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDeleteInstanceAccessControlAttributeConfiguration' smart constructor.+data DeleteInstanceAccessControlAttributeConfiguration = DeleteInstanceAccessControlAttributeConfiguration'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteInstanceAccessControlAttributeConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'deleteInstanceAccessControlAttributeConfiguration_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+newDeleteInstanceAccessControlAttributeConfiguration ::+ -- | 'instanceArn'+ Prelude.Text ->+ DeleteInstanceAccessControlAttributeConfiguration+newDeleteInstanceAccessControlAttributeConfiguration+ pInstanceArn_ =+ DeleteInstanceAccessControlAttributeConfiguration'+ { instanceArn =+ pInstanceArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+deleteInstanceAccessControlAttributeConfiguration_instanceArn :: Lens.Lens' DeleteInstanceAccessControlAttributeConfiguration Prelude.Text+deleteInstanceAccessControlAttributeConfiguration_instanceArn = Lens.lens (\DeleteInstanceAccessControlAttributeConfiguration' {instanceArn} -> instanceArn) (\s@DeleteInstanceAccessControlAttributeConfiguration' {} a -> s {instanceArn = a} :: DeleteInstanceAccessControlAttributeConfiguration)++instance+ Core.AWSRequest+ DeleteInstanceAccessControlAttributeConfiguration+ where+ type+ AWSResponse+ DeleteInstanceAccessControlAttributeConfiguration =+ DeleteInstanceAccessControlAttributeConfigurationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteInstanceAccessControlAttributeConfigurationResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeleteInstanceAccessControlAttributeConfiguration+ where+ hashWithSalt+ _salt+ DeleteInstanceAccessControlAttributeConfiguration' {..} =+ _salt `Prelude.hashWithSalt` instanceArn++instance+ Prelude.NFData+ DeleteInstanceAccessControlAttributeConfiguration+ where+ rnf+ DeleteInstanceAccessControlAttributeConfiguration' {..} =+ Prelude.rnf instanceArn++instance+ Data.ToHeaders+ DeleteInstanceAccessControlAttributeConfiguration+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DeleteInstanceAccessControlAttributeConfiguration" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DeleteInstanceAccessControlAttributeConfiguration+ where+ toJSON+ DeleteInstanceAccessControlAttributeConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("InstanceArn" Data..= instanceArn)]+ )++instance+ Data.ToPath+ DeleteInstanceAccessControlAttributeConfiguration+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DeleteInstanceAccessControlAttributeConfiguration+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteInstanceAccessControlAttributeConfigurationResponse' smart constructor.+data DeleteInstanceAccessControlAttributeConfigurationResponse = DeleteInstanceAccessControlAttributeConfigurationResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteInstanceAccessControlAttributeConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deleteInstanceAccessControlAttributeConfigurationResponse_httpStatus' - The response's http status code.+newDeleteInstanceAccessControlAttributeConfigurationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteInstanceAccessControlAttributeConfigurationResponse+newDeleteInstanceAccessControlAttributeConfigurationResponse+ pHttpStatus_ =+ DeleteInstanceAccessControlAttributeConfigurationResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteInstanceAccessControlAttributeConfigurationResponse_httpStatus :: Lens.Lens' DeleteInstanceAccessControlAttributeConfigurationResponse Prelude.Int+deleteInstanceAccessControlAttributeConfigurationResponse_httpStatus = Lens.lens (\DeleteInstanceAccessControlAttributeConfigurationResponse' {httpStatus} -> httpStatus) (\s@DeleteInstanceAccessControlAttributeConfigurationResponse' {} a -> s {httpStatus = a} :: DeleteInstanceAccessControlAttributeConfigurationResponse)++instance+ Prelude.NFData+ DeleteInstanceAccessControlAttributeConfigurationResponse+ where+ rnf+ DeleteInstanceAccessControlAttributeConfigurationResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DeletePermissionSet.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.SSOAdmin.DeletePermissionSet+-- 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 permission set.+module Amazonka.SSOAdmin.DeletePermissionSet+ ( -- * Creating a Request+ DeletePermissionSet (..),+ newDeletePermissionSet,++ -- * Request Lenses+ deletePermissionSet_instanceArn,+ deletePermissionSet_permissionSetArn,++ -- * Destructuring the Response+ DeletePermissionSetResponse (..),+ newDeletePermissionSetResponse,++ -- * Response Lenses+ deletePermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDeletePermissionSet' smart constructor.+data DeletePermissionSet = DeletePermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the permission set that should be deleted.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'deletePermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'deletePermissionSet_permissionSetArn' - The ARN of the permission set that should be deleted.+newDeletePermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ DeletePermissionSet+newDeletePermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ DeletePermissionSet'+ { instanceArn = pInstanceArn_,+ permissionSetArn = pPermissionSetArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+deletePermissionSet_instanceArn :: Lens.Lens' DeletePermissionSet Prelude.Text+deletePermissionSet_instanceArn = Lens.lens (\DeletePermissionSet' {instanceArn} -> instanceArn) (\s@DeletePermissionSet' {} a -> s {instanceArn = a} :: DeletePermissionSet)++-- | The ARN of the permission set that should be deleted.+deletePermissionSet_permissionSetArn :: Lens.Lens' DeletePermissionSet Prelude.Text+deletePermissionSet_permissionSetArn = Lens.lens (\DeletePermissionSet' {permissionSetArn} -> permissionSetArn) (\s@DeletePermissionSet' {} a -> s {permissionSetArn = a} :: DeletePermissionSet)++instance Core.AWSRequest DeletePermissionSet where+ type+ AWSResponse DeletePermissionSet =+ DeletePermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeletePermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeletePermissionSet where+ hashWithSalt _salt DeletePermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance Prelude.NFData DeletePermissionSet where+ rnf DeletePermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance Data.ToHeaders DeletePermissionSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DeletePermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeletePermissionSet where+ toJSON DeletePermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance Data.ToPath DeletePermissionSet where+ toPath = Prelude.const "/"++instance Data.ToQuery DeletePermissionSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeletePermissionSetResponse' smart constructor.+data DeletePermissionSetResponse = DeletePermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deletePermissionSetResponse_httpStatus' - The response's http status code.+newDeletePermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeletePermissionSetResponse+newDeletePermissionSetResponse pHttpStatus_ =+ DeletePermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deletePermissionSetResponse_httpStatus :: Lens.Lens' DeletePermissionSetResponse Prelude.Int+deletePermissionSetResponse_httpStatus = Lens.lens (\DeletePermissionSetResponse' {httpStatus} -> httpStatus) (\s@DeletePermissionSetResponse' {} a -> s {httpStatus = a} :: DeletePermissionSetResponse)++instance Prelude.NFData DeletePermissionSetResponse where+ rnf DeletePermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DeletePermissionsBoundaryFromPermissionSet.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.SSOAdmin.DeletePermissionsBoundaryFromPermissionSet+-- 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 from a specified PermissionSet.+module Amazonka.SSOAdmin.DeletePermissionsBoundaryFromPermissionSet+ ( -- * Creating a Request+ DeletePermissionsBoundaryFromPermissionSet (..),+ newDeletePermissionsBoundaryFromPermissionSet,++ -- * Request Lenses+ deletePermissionsBoundaryFromPermissionSet_instanceArn,+ deletePermissionsBoundaryFromPermissionSet_permissionSetArn,++ -- * Destructuring the Response+ DeletePermissionsBoundaryFromPermissionSetResponse (..),+ newDeletePermissionsBoundaryFromPermissionSetResponse,++ -- * Response Lenses+ deletePermissionsBoundaryFromPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDeletePermissionsBoundaryFromPermissionSet' smart constructor.+data DeletePermissionsBoundaryFromPermissionSet = DeletePermissionsBoundaryFromPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text,+ -- | The ARN of the @PermissionSet@.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePermissionsBoundaryFromPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'deletePermissionsBoundaryFromPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+--+-- 'permissionSetArn', 'deletePermissionsBoundaryFromPermissionSet_permissionSetArn' - The ARN of the @PermissionSet@.+newDeletePermissionsBoundaryFromPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ DeletePermissionsBoundaryFromPermissionSet+newDeletePermissionsBoundaryFromPermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ DeletePermissionsBoundaryFromPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn =+ pPermissionSetArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+deletePermissionsBoundaryFromPermissionSet_instanceArn :: Lens.Lens' DeletePermissionsBoundaryFromPermissionSet Prelude.Text+deletePermissionsBoundaryFromPermissionSet_instanceArn = Lens.lens (\DeletePermissionsBoundaryFromPermissionSet' {instanceArn} -> instanceArn) (\s@DeletePermissionsBoundaryFromPermissionSet' {} a -> s {instanceArn = a} :: DeletePermissionsBoundaryFromPermissionSet)++-- | The ARN of the @PermissionSet@.+deletePermissionsBoundaryFromPermissionSet_permissionSetArn :: Lens.Lens' DeletePermissionsBoundaryFromPermissionSet Prelude.Text+deletePermissionsBoundaryFromPermissionSet_permissionSetArn = Lens.lens (\DeletePermissionsBoundaryFromPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@DeletePermissionsBoundaryFromPermissionSet' {} a -> s {permissionSetArn = a} :: DeletePermissionsBoundaryFromPermissionSet)++instance+ Core.AWSRequest+ DeletePermissionsBoundaryFromPermissionSet+ where+ type+ AWSResponse+ DeletePermissionsBoundaryFromPermissionSet =+ DeletePermissionsBoundaryFromPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeletePermissionsBoundaryFromPermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeletePermissionsBoundaryFromPermissionSet+ where+ hashWithSalt+ _salt+ DeletePermissionsBoundaryFromPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance+ Prelude.NFData+ DeletePermissionsBoundaryFromPermissionSet+ where+ rnf DeletePermissionsBoundaryFromPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance+ Data.ToHeaders+ DeletePermissionsBoundaryFromPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DeletePermissionsBoundaryFromPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DeletePermissionsBoundaryFromPermissionSet+ where+ toJSON+ DeletePermissionsBoundaryFromPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance+ Data.ToPath+ DeletePermissionsBoundaryFromPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DeletePermissionsBoundaryFromPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeletePermissionsBoundaryFromPermissionSetResponse' smart constructor.+data DeletePermissionsBoundaryFromPermissionSetResponse = DeletePermissionsBoundaryFromPermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePermissionsBoundaryFromPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deletePermissionsBoundaryFromPermissionSetResponse_httpStatus' - The response's http status code.+newDeletePermissionsBoundaryFromPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeletePermissionsBoundaryFromPermissionSetResponse+newDeletePermissionsBoundaryFromPermissionSetResponse+ pHttpStatus_ =+ DeletePermissionsBoundaryFromPermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deletePermissionsBoundaryFromPermissionSetResponse_httpStatus :: Lens.Lens' DeletePermissionsBoundaryFromPermissionSetResponse Prelude.Int+deletePermissionsBoundaryFromPermissionSetResponse_httpStatus = Lens.lens (\DeletePermissionsBoundaryFromPermissionSetResponse' {httpStatus} -> httpStatus) (\s@DeletePermissionsBoundaryFromPermissionSetResponse' {} a -> s {httpStatus = a} :: DeletePermissionsBoundaryFromPermissionSetResponse)++instance+ Prelude.NFData+ DeletePermissionsBoundaryFromPermissionSetResponse+ where+ rnf+ DeletePermissionsBoundaryFromPermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DescribeAccountAssignmentCreationStatus.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.SSOAdmin.DescribeAccountAssignmentCreationStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the status of the assignment creation request.+module Amazonka.SSOAdmin.DescribeAccountAssignmentCreationStatus+ ( -- * Creating a Request+ DescribeAccountAssignmentCreationStatus (..),+ newDescribeAccountAssignmentCreationStatus,++ -- * Request Lenses+ describeAccountAssignmentCreationStatus_instanceArn,+ describeAccountAssignmentCreationStatus_accountAssignmentCreationRequestId,++ -- * Destructuring the Response+ DescribeAccountAssignmentCreationStatusResponse (..),+ newDescribeAccountAssignmentCreationStatusResponse,++ -- * Response Lenses+ describeAccountAssignmentCreationStatusResponse_accountAssignmentCreationStatus,+ describeAccountAssignmentCreationStatusResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDescribeAccountAssignmentCreationStatus' smart constructor.+data DescribeAccountAssignmentCreationStatus = DescribeAccountAssignmentCreationStatus'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The identifier that is used to track the request operation progress.+ accountAssignmentCreationRequestId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeAccountAssignmentCreationStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'describeAccountAssignmentCreationStatus_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'accountAssignmentCreationRequestId', 'describeAccountAssignmentCreationStatus_accountAssignmentCreationRequestId' - The identifier that is used to track the request operation progress.+newDescribeAccountAssignmentCreationStatus ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'accountAssignmentCreationRequestId'+ Prelude.Text ->+ DescribeAccountAssignmentCreationStatus+newDescribeAccountAssignmentCreationStatus+ pInstanceArn_+ pAccountAssignmentCreationRequestId_ =+ DescribeAccountAssignmentCreationStatus'+ { instanceArn =+ pInstanceArn_,+ accountAssignmentCreationRequestId =+ pAccountAssignmentCreationRequestId_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+describeAccountAssignmentCreationStatus_instanceArn :: Lens.Lens' DescribeAccountAssignmentCreationStatus Prelude.Text+describeAccountAssignmentCreationStatus_instanceArn = Lens.lens (\DescribeAccountAssignmentCreationStatus' {instanceArn} -> instanceArn) (\s@DescribeAccountAssignmentCreationStatus' {} a -> s {instanceArn = a} :: DescribeAccountAssignmentCreationStatus)++-- | The identifier that is used to track the request operation progress.+describeAccountAssignmentCreationStatus_accountAssignmentCreationRequestId :: Lens.Lens' DescribeAccountAssignmentCreationStatus Prelude.Text+describeAccountAssignmentCreationStatus_accountAssignmentCreationRequestId = Lens.lens (\DescribeAccountAssignmentCreationStatus' {accountAssignmentCreationRequestId} -> accountAssignmentCreationRequestId) (\s@DescribeAccountAssignmentCreationStatus' {} a -> s {accountAssignmentCreationRequestId = a} :: DescribeAccountAssignmentCreationStatus)++instance+ Core.AWSRequest+ DescribeAccountAssignmentCreationStatus+ where+ type+ AWSResponse+ DescribeAccountAssignmentCreationStatus =+ DescribeAccountAssignmentCreationStatusResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeAccountAssignmentCreationStatusResponse'+ Prelude.<$> (x Data..?> "AccountAssignmentCreationStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeAccountAssignmentCreationStatus+ where+ hashWithSalt+ _salt+ DescribeAccountAssignmentCreationStatus' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` accountAssignmentCreationRequestId++instance+ Prelude.NFData+ DescribeAccountAssignmentCreationStatus+ where+ rnf DescribeAccountAssignmentCreationStatus' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf accountAssignmentCreationRequestId++instance+ Data.ToHeaders+ DescribeAccountAssignmentCreationStatus+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DescribeAccountAssignmentCreationStatus" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DescribeAccountAssignmentCreationStatus+ where+ toJSON DescribeAccountAssignmentCreationStatus' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ( "AccountAssignmentCreationRequestId"+ Data..= accountAssignmentCreationRequestId+ )+ ]+ )++instance+ Data.ToPath+ DescribeAccountAssignmentCreationStatus+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribeAccountAssignmentCreationStatus+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeAccountAssignmentCreationStatusResponse' smart constructor.+data DescribeAccountAssignmentCreationStatusResponse = DescribeAccountAssignmentCreationStatusResponse'+ { -- | The status object for the account assignment creation operation.+ accountAssignmentCreationStatus :: Prelude.Maybe AccountAssignmentOperationStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeAccountAssignmentCreationStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAssignmentCreationStatus', 'describeAccountAssignmentCreationStatusResponse_accountAssignmentCreationStatus' - The status object for the account assignment creation operation.+--+-- 'httpStatus', 'describeAccountAssignmentCreationStatusResponse_httpStatus' - The response's http status code.+newDescribeAccountAssignmentCreationStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeAccountAssignmentCreationStatusResponse+newDescribeAccountAssignmentCreationStatusResponse+ pHttpStatus_ =+ DescribeAccountAssignmentCreationStatusResponse'+ { accountAssignmentCreationStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status object for the account assignment creation operation.+describeAccountAssignmentCreationStatusResponse_accountAssignmentCreationStatus :: Lens.Lens' DescribeAccountAssignmentCreationStatusResponse (Prelude.Maybe AccountAssignmentOperationStatus)+describeAccountAssignmentCreationStatusResponse_accountAssignmentCreationStatus = Lens.lens (\DescribeAccountAssignmentCreationStatusResponse' {accountAssignmentCreationStatus} -> accountAssignmentCreationStatus) (\s@DescribeAccountAssignmentCreationStatusResponse' {} a -> s {accountAssignmentCreationStatus = a} :: DescribeAccountAssignmentCreationStatusResponse)++-- | The response's http status code.+describeAccountAssignmentCreationStatusResponse_httpStatus :: Lens.Lens' DescribeAccountAssignmentCreationStatusResponse Prelude.Int+describeAccountAssignmentCreationStatusResponse_httpStatus = Lens.lens (\DescribeAccountAssignmentCreationStatusResponse' {httpStatus} -> httpStatus) (\s@DescribeAccountAssignmentCreationStatusResponse' {} a -> s {httpStatus = a} :: DescribeAccountAssignmentCreationStatusResponse)++instance+ Prelude.NFData+ DescribeAccountAssignmentCreationStatusResponse+ where+ rnf+ DescribeAccountAssignmentCreationStatusResponse' {..} =+ Prelude.rnf accountAssignmentCreationStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DescribeAccountAssignmentDeletionStatus.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.SSOAdmin.DescribeAccountAssignmentDeletionStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the status of the assignment deletion request.+module Amazonka.SSOAdmin.DescribeAccountAssignmentDeletionStatus+ ( -- * Creating a Request+ DescribeAccountAssignmentDeletionStatus (..),+ newDescribeAccountAssignmentDeletionStatus,++ -- * Request Lenses+ describeAccountAssignmentDeletionStatus_instanceArn,+ describeAccountAssignmentDeletionStatus_accountAssignmentDeletionRequestId,++ -- * Destructuring the Response+ DescribeAccountAssignmentDeletionStatusResponse (..),+ newDescribeAccountAssignmentDeletionStatusResponse,++ -- * Response Lenses+ describeAccountAssignmentDeletionStatusResponse_accountAssignmentDeletionStatus,+ describeAccountAssignmentDeletionStatusResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDescribeAccountAssignmentDeletionStatus' smart constructor.+data DescribeAccountAssignmentDeletionStatus = DescribeAccountAssignmentDeletionStatus'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The identifier that is used to track the request operation progress.+ accountAssignmentDeletionRequestId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeAccountAssignmentDeletionStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'describeAccountAssignmentDeletionStatus_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'accountAssignmentDeletionRequestId', 'describeAccountAssignmentDeletionStatus_accountAssignmentDeletionRequestId' - The identifier that is used to track the request operation progress.+newDescribeAccountAssignmentDeletionStatus ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'accountAssignmentDeletionRequestId'+ Prelude.Text ->+ DescribeAccountAssignmentDeletionStatus+newDescribeAccountAssignmentDeletionStatus+ pInstanceArn_+ pAccountAssignmentDeletionRequestId_ =+ DescribeAccountAssignmentDeletionStatus'+ { instanceArn =+ pInstanceArn_,+ accountAssignmentDeletionRequestId =+ pAccountAssignmentDeletionRequestId_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+describeAccountAssignmentDeletionStatus_instanceArn :: Lens.Lens' DescribeAccountAssignmentDeletionStatus Prelude.Text+describeAccountAssignmentDeletionStatus_instanceArn = Lens.lens (\DescribeAccountAssignmentDeletionStatus' {instanceArn} -> instanceArn) (\s@DescribeAccountAssignmentDeletionStatus' {} a -> s {instanceArn = a} :: DescribeAccountAssignmentDeletionStatus)++-- | The identifier that is used to track the request operation progress.+describeAccountAssignmentDeletionStatus_accountAssignmentDeletionRequestId :: Lens.Lens' DescribeAccountAssignmentDeletionStatus Prelude.Text+describeAccountAssignmentDeletionStatus_accountAssignmentDeletionRequestId = Lens.lens (\DescribeAccountAssignmentDeletionStatus' {accountAssignmentDeletionRequestId} -> accountAssignmentDeletionRequestId) (\s@DescribeAccountAssignmentDeletionStatus' {} a -> s {accountAssignmentDeletionRequestId = a} :: DescribeAccountAssignmentDeletionStatus)++instance+ Core.AWSRequest+ DescribeAccountAssignmentDeletionStatus+ where+ type+ AWSResponse+ DescribeAccountAssignmentDeletionStatus =+ DescribeAccountAssignmentDeletionStatusResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeAccountAssignmentDeletionStatusResponse'+ Prelude.<$> (x Data..?> "AccountAssignmentDeletionStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeAccountAssignmentDeletionStatus+ where+ hashWithSalt+ _salt+ DescribeAccountAssignmentDeletionStatus' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` accountAssignmentDeletionRequestId++instance+ Prelude.NFData+ DescribeAccountAssignmentDeletionStatus+ where+ rnf DescribeAccountAssignmentDeletionStatus' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf accountAssignmentDeletionRequestId++instance+ Data.ToHeaders+ DescribeAccountAssignmentDeletionStatus+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DescribeAccountAssignmentDeletionStatus" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DescribeAccountAssignmentDeletionStatus+ where+ toJSON DescribeAccountAssignmentDeletionStatus' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ( "AccountAssignmentDeletionRequestId"+ Data..= accountAssignmentDeletionRequestId+ )+ ]+ )++instance+ Data.ToPath+ DescribeAccountAssignmentDeletionStatus+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribeAccountAssignmentDeletionStatus+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeAccountAssignmentDeletionStatusResponse' smart constructor.+data DescribeAccountAssignmentDeletionStatusResponse = DescribeAccountAssignmentDeletionStatusResponse'+ { -- | The status object for the account assignment deletion operation.+ accountAssignmentDeletionStatus :: Prelude.Maybe AccountAssignmentOperationStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeAccountAssignmentDeletionStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAssignmentDeletionStatus', 'describeAccountAssignmentDeletionStatusResponse_accountAssignmentDeletionStatus' - The status object for the account assignment deletion operation.+--+-- 'httpStatus', 'describeAccountAssignmentDeletionStatusResponse_httpStatus' - The response's http status code.+newDescribeAccountAssignmentDeletionStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeAccountAssignmentDeletionStatusResponse+newDescribeAccountAssignmentDeletionStatusResponse+ pHttpStatus_ =+ DescribeAccountAssignmentDeletionStatusResponse'+ { accountAssignmentDeletionStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status object for the account assignment deletion operation.+describeAccountAssignmentDeletionStatusResponse_accountAssignmentDeletionStatus :: Lens.Lens' DescribeAccountAssignmentDeletionStatusResponse (Prelude.Maybe AccountAssignmentOperationStatus)+describeAccountAssignmentDeletionStatusResponse_accountAssignmentDeletionStatus = Lens.lens (\DescribeAccountAssignmentDeletionStatusResponse' {accountAssignmentDeletionStatus} -> accountAssignmentDeletionStatus) (\s@DescribeAccountAssignmentDeletionStatusResponse' {} a -> s {accountAssignmentDeletionStatus = a} :: DescribeAccountAssignmentDeletionStatusResponse)++-- | The response's http status code.+describeAccountAssignmentDeletionStatusResponse_httpStatus :: Lens.Lens' DescribeAccountAssignmentDeletionStatusResponse Prelude.Int+describeAccountAssignmentDeletionStatusResponse_httpStatus = Lens.lens (\DescribeAccountAssignmentDeletionStatusResponse' {httpStatus} -> httpStatus) (\s@DescribeAccountAssignmentDeletionStatusResponse' {} a -> s {httpStatus = a} :: DescribeAccountAssignmentDeletionStatusResponse)++instance+ Prelude.NFData+ DescribeAccountAssignmentDeletionStatusResponse+ where+ rnf+ DescribeAccountAssignmentDeletionStatusResponse' {..} =+ Prelude.rnf accountAssignmentDeletionStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DescribeInstanceAccessControlAttributeConfiguration.hs view
@@ -0,0 +1,249 @@+{-# 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.SSOAdmin.DescribeInstanceAccessControlAttributeConfiguration+-- 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 list of IAM Identity Center identity store attributes that+-- have been configured to work with attributes-based access control (ABAC)+-- for the specified IAM Identity Center instance. This will not return+-- attributes configured and sent by an external identity provider. For+-- more information about ABAC, see+-- </singlesignon/latest/userguide/abac.html Attribute-Based Access Control>+-- in the /IAM Identity Center User Guide/.+module Amazonka.SSOAdmin.DescribeInstanceAccessControlAttributeConfiguration+ ( -- * Creating a Request+ DescribeInstanceAccessControlAttributeConfiguration (..),+ newDescribeInstanceAccessControlAttributeConfiguration,++ -- * Request Lenses+ describeInstanceAccessControlAttributeConfiguration_instanceArn,++ -- * Destructuring the Response+ DescribeInstanceAccessControlAttributeConfigurationResponse (..),+ newDescribeInstanceAccessControlAttributeConfigurationResponse,++ -- * Response Lenses+ describeInstanceAccessControlAttributeConfigurationResponse_instanceAccessControlAttributeConfiguration,+ describeInstanceAccessControlAttributeConfigurationResponse_status,+ describeInstanceAccessControlAttributeConfigurationResponse_statusReason,+ describeInstanceAccessControlAttributeConfigurationResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDescribeInstanceAccessControlAttributeConfiguration' smart constructor.+data DescribeInstanceAccessControlAttributeConfiguration = DescribeInstanceAccessControlAttributeConfiguration'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeInstanceAccessControlAttributeConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'describeInstanceAccessControlAttributeConfiguration_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+newDescribeInstanceAccessControlAttributeConfiguration ::+ -- | 'instanceArn'+ Prelude.Text ->+ DescribeInstanceAccessControlAttributeConfiguration+newDescribeInstanceAccessControlAttributeConfiguration+ pInstanceArn_ =+ DescribeInstanceAccessControlAttributeConfiguration'+ { instanceArn =+ pInstanceArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+describeInstanceAccessControlAttributeConfiguration_instanceArn :: Lens.Lens' DescribeInstanceAccessControlAttributeConfiguration Prelude.Text+describeInstanceAccessControlAttributeConfiguration_instanceArn = Lens.lens (\DescribeInstanceAccessControlAttributeConfiguration' {instanceArn} -> instanceArn) (\s@DescribeInstanceAccessControlAttributeConfiguration' {} a -> s {instanceArn = a} :: DescribeInstanceAccessControlAttributeConfiguration)++instance+ Core.AWSRequest+ DescribeInstanceAccessControlAttributeConfiguration+ where+ type+ AWSResponse+ DescribeInstanceAccessControlAttributeConfiguration =+ DescribeInstanceAccessControlAttributeConfigurationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeInstanceAccessControlAttributeConfigurationResponse'+ Prelude.<$> ( x+ Data..?> "InstanceAccessControlAttributeConfiguration"+ )+ Prelude.<*> (x Data..?> "Status")+ Prelude.<*> (x Data..?> "StatusReason")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeInstanceAccessControlAttributeConfiguration+ where+ hashWithSalt+ _salt+ DescribeInstanceAccessControlAttributeConfiguration' {..} =+ _salt `Prelude.hashWithSalt` instanceArn++instance+ Prelude.NFData+ DescribeInstanceAccessControlAttributeConfiguration+ where+ rnf+ DescribeInstanceAccessControlAttributeConfiguration' {..} =+ Prelude.rnf instanceArn++instance+ Data.ToHeaders+ DescribeInstanceAccessControlAttributeConfiguration+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DescribeInstanceAccessControlAttributeConfiguration" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DescribeInstanceAccessControlAttributeConfiguration+ where+ toJSON+ DescribeInstanceAccessControlAttributeConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("InstanceArn" Data..= instanceArn)]+ )++instance+ Data.ToPath+ DescribeInstanceAccessControlAttributeConfiguration+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribeInstanceAccessControlAttributeConfiguration+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeInstanceAccessControlAttributeConfigurationResponse' smart constructor.+data DescribeInstanceAccessControlAttributeConfigurationResponse = DescribeInstanceAccessControlAttributeConfigurationResponse'+ { -- | Gets the list of IAM Identity Center identity store attributes that have+ -- been added to your ABAC configuration.+ instanceAccessControlAttributeConfiguration :: Prelude.Maybe InstanceAccessControlAttributeConfiguration,+ -- | The status of the attribute configuration process.+ status :: Prelude.Maybe InstanceAccessControlAttributeConfigurationStatus,+ -- | Provides more details about the current status of the specified+ -- attribute.+ statusReason :: 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 'DescribeInstanceAccessControlAttributeConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceAccessControlAttributeConfiguration', 'describeInstanceAccessControlAttributeConfigurationResponse_instanceAccessControlAttributeConfiguration' - Gets the list of IAM Identity Center identity store attributes that have+-- been added to your ABAC configuration.+--+-- 'status', 'describeInstanceAccessControlAttributeConfigurationResponse_status' - The status of the attribute configuration process.+--+-- 'statusReason', 'describeInstanceAccessControlAttributeConfigurationResponse_statusReason' - Provides more details about the current status of the specified+-- attribute.+--+-- 'httpStatus', 'describeInstanceAccessControlAttributeConfigurationResponse_httpStatus' - The response's http status code.+newDescribeInstanceAccessControlAttributeConfigurationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeInstanceAccessControlAttributeConfigurationResponse+newDescribeInstanceAccessControlAttributeConfigurationResponse+ pHttpStatus_ =+ DescribeInstanceAccessControlAttributeConfigurationResponse'+ { instanceAccessControlAttributeConfiguration =+ Prelude.Nothing,+ status =+ Prelude.Nothing,+ statusReason =+ Prelude.Nothing,+ httpStatus =+ pHttpStatus_+ }++-- | Gets the list of IAM Identity Center identity store attributes that have+-- been added to your ABAC configuration.+describeInstanceAccessControlAttributeConfigurationResponse_instanceAccessControlAttributeConfiguration :: Lens.Lens' DescribeInstanceAccessControlAttributeConfigurationResponse (Prelude.Maybe InstanceAccessControlAttributeConfiguration)+describeInstanceAccessControlAttributeConfigurationResponse_instanceAccessControlAttributeConfiguration = Lens.lens (\DescribeInstanceAccessControlAttributeConfigurationResponse' {instanceAccessControlAttributeConfiguration} -> instanceAccessControlAttributeConfiguration) (\s@DescribeInstanceAccessControlAttributeConfigurationResponse' {} a -> s {instanceAccessControlAttributeConfiguration = a} :: DescribeInstanceAccessControlAttributeConfigurationResponse)++-- | The status of the attribute configuration process.+describeInstanceAccessControlAttributeConfigurationResponse_status :: Lens.Lens' DescribeInstanceAccessControlAttributeConfigurationResponse (Prelude.Maybe InstanceAccessControlAttributeConfigurationStatus)+describeInstanceAccessControlAttributeConfigurationResponse_status = Lens.lens (\DescribeInstanceAccessControlAttributeConfigurationResponse' {status} -> status) (\s@DescribeInstanceAccessControlAttributeConfigurationResponse' {} a -> s {status = a} :: DescribeInstanceAccessControlAttributeConfigurationResponse)++-- | Provides more details about the current status of the specified+-- attribute.+describeInstanceAccessControlAttributeConfigurationResponse_statusReason :: Lens.Lens' DescribeInstanceAccessControlAttributeConfigurationResponse (Prelude.Maybe Prelude.Text)+describeInstanceAccessControlAttributeConfigurationResponse_statusReason = Lens.lens (\DescribeInstanceAccessControlAttributeConfigurationResponse' {statusReason} -> statusReason) (\s@DescribeInstanceAccessControlAttributeConfigurationResponse' {} a -> s {statusReason = a} :: DescribeInstanceAccessControlAttributeConfigurationResponse)++-- | The response's http status code.+describeInstanceAccessControlAttributeConfigurationResponse_httpStatus :: Lens.Lens' DescribeInstanceAccessControlAttributeConfigurationResponse Prelude.Int+describeInstanceAccessControlAttributeConfigurationResponse_httpStatus = Lens.lens (\DescribeInstanceAccessControlAttributeConfigurationResponse' {httpStatus} -> httpStatus) (\s@DescribeInstanceAccessControlAttributeConfigurationResponse' {} a -> s {httpStatus = a} :: DescribeInstanceAccessControlAttributeConfigurationResponse)++instance+ Prelude.NFData+ DescribeInstanceAccessControlAttributeConfigurationResponse+ where+ rnf+ DescribeInstanceAccessControlAttributeConfigurationResponse' {..} =+ Prelude.rnf+ instanceAccessControlAttributeConfiguration+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf statusReason+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DescribePermissionSet.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.SSOAdmin.DescribePermissionSet+-- 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 the details of the permission set.+module Amazonka.SSOAdmin.DescribePermissionSet+ ( -- * Creating a Request+ DescribePermissionSet (..),+ newDescribePermissionSet,++ -- * Request Lenses+ describePermissionSet_instanceArn,+ describePermissionSet_permissionSetArn,++ -- * Destructuring the Response+ DescribePermissionSetResponse (..),+ newDescribePermissionSetResponse,++ -- * Response Lenses+ describePermissionSetResponse_permissionSet,+ describePermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDescribePermissionSet' smart constructor.+data DescribePermissionSet = DescribePermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the permission set.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'describePermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'describePermissionSet_permissionSetArn' - The ARN of the permission set.+newDescribePermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ DescribePermissionSet+newDescribePermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ DescribePermissionSet'+ { instanceArn = pInstanceArn_,+ permissionSetArn = pPermissionSetArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+describePermissionSet_instanceArn :: Lens.Lens' DescribePermissionSet Prelude.Text+describePermissionSet_instanceArn = Lens.lens (\DescribePermissionSet' {instanceArn} -> instanceArn) (\s@DescribePermissionSet' {} a -> s {instanceArn = a} :: DescribePermissionSet)++-- | The ARN of the permission set.+describePermissionSet_permissionSetArn :: Lens.Lens' DescribePermissionSet Prelude.Text+describePermissionSet_permissionSetArn = Lens.lens (\DescribePermissionSet' {permissionSetArn} -> permissionSetArn) (\s@DescribePermissionSet' {} a -> s {permissionSetArn = a} :: DescribePermissionSet)++instance Core.AWSRequest DescribePermissionSet where+ type+ AWSResponse DescribePermissionSet =+ DescribePermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribePermissionSetResponse'+ Prelude.<$> (x Data..?> "PermissionSet")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribePermissionSet where+ hashWithSalt _salt DescribePermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance Prelude.NFData DescribePermissionSet where+ rnf DescribePermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance Data.ToHeaders DescribePermissionSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DescribePermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribePermissionSet where+ toJSON DescribePermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance Data.ToPath DescribePermissionSet where+ toPath = Prelude.const "/"++instance Data.ToQuery DescribePermissionSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribePermissionSetResponse' smart constructor.+data DescribePermissionSetResponse = DescribePermissionSetResponse'+ { -- | Describes the level of access on an AWS account.+ permissionSet :: Prelude.Maybe PermissionSet,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'permissionSet', 'describePermissionSetResponse_permissionSet' - Describes the level of access on an AWS account.+--+-- 'httpStatus', 'describePermissionSetResponse_httpStatus' - The response's http status code.+newDescribePermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribePermissionSetResponse+newDescribePermissionSetResponse pHttpStatus_ =+ DescribePermissionSetResponse'+ { permissionSet =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Describes the level of access on an AWS account.+describePermissionSetResponse_permissionSet :: Lens.Lens' DescribePermissionSetResponse (Prelude.Maybe PermissionSet)+describePermissionSetResponse_permissionSet = Lens.lens (\DescribePermissionSetResponse' {permissionSet} -> permissionSet) (\s@DescribePermissionSetResponse' {} a -> s {permissionSet = a} :: DescribePermissionSetResponse)++-- | The response's http status code.+describePermissionSetResponse_httpStatus :: Lens.Lens' DescribePermissionSetResponse Prelude.Int+describePermissionSetResponse_httpStatus = Lens.lens (\DescribePermissionSetResponse' {httpStatus} -> httpStatus) (\s@DescribePermissionSetResponse' {} a -> s {httpStatus = a} :: DescribePermissionSetResponse)++instance Prelude.NFData DescribePermissionSetResponse where+ rnf DescribePermissionSetResponse' {..} =+ Prelude.rnf permissionSet+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DescribePermissionSetProvisioningStatus.hs view
@@ -0,0 +1,236 @@+{-# 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.SSOAdmin.DescribePermissionSetProvisioningStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the status for the given permission set provisioning request.+module Amazonka.SSOAdmin.DescribePermissionSetProvisioningStatus+ ( -- * Creating a Request+ DescribePermissionSetProvisioningStatus (..),+ newDescribePermissionSetProvisioningStatus,++ -- * Request Lenses+ describePermissionSetProvisioningStatus_instanceArn,+ describePermissionSetProvisioningStatus_provisionPermissionSetRequestId,++ -- * Destructuring the Response+ DescribePermissionSetProvisioningStatusResponse (..),+ newDescribePermissionSetProvisioningStatusResponse,++ -- * Response Lenses+ describePermissionSetProvisioningStatusResponse_permissionSetProvisioningStatus,+ describePermissionSetProvisioningStatusResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDescribePermissionSetProvisioningStatus' smart constructor.+data DescribePermissionSetProvisioningStatus = DescribePermissionSetProvisioningStatus'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The identifier that is provided by the ProvisionPermissionSet call to+ -- retrieve the current status of the provisioning workflow.+ provisionPermissionSetRequestId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePermissionSetProvisioningStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'describePermissionSetProvisioningStatus_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'provisionPermissionSetRequestId', 'describePermissionSetProvisioningStatus_provisionPermissionSetRequestId' - The identifier that is provided by the ProvisionPermissionSet call to+-- retrieve the current status of the provisioning workflow.+newDescribePermissionSetProvisioningStatus ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'provisionPermissionSetRequestId'+ Prelude.Text ->+ DescribePermissionSetProvisioningStatus+newDescribePermissionSetProvisioningStatus+ pInstanceArn_+ pProvisionPermissionSetRequestId_ =+ DescribePermissionSetProvisioningStatus'+ { instanceArn =+ pInstanceArn_,+ provisionPermissionSetRequestId =+ pProvisionPermissionSetRequestId_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+describePermissionSetProvisioningStatus_instanceArn :: Lens.Lens' DescribePermissionSetProvisioningStatus Prelude.Text+describePermissionSetProvisioningStatus_instanceArn = Lens.lens (\DescribePermissionSetProvisioningStatus' {instanceArn} -> instanceArn) (\s@DescribePermissionSetProvisioningStatus' {} a -> s {instanceArn = a} :: DescribePermissionSetProvisioningStatus)++-- | The identifier that is provided by the ProvisionPermissionSet call to+-- retrieve the current status of the provisioning workflow.+describePermissionSetProvisioningStatus_provisionPermissionSetRequestId :: Lens.Lens' DescribePermissionSetProvisioningStatus Prelude.Text+describePermissionSetProvisioningStatus_provisionPermissionSetRequestId = Lens.lens (\DescribePermissionSetProvisioningStatus' {provisionPermissionSetRequestId} -> provisionPermissionSetRequestId) (\s@DescribePermissionSetProvisioningStatus' {} a -> s {provisionPermissionSetRequestId = a} :: DescribePermissionSetProvisioningStatus)++instance+ Core.AWSRequest+ DescribePermissionSetProvisioningStatus+ where+ type+ AWSResponse+ DescribePermissionSetProvisioningStatus =+ DescribePermissionSetProvisioningStatusResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribePermissionSetProvisioningStatusResponse'+ Prelude.<$> (x Data..?> "PermissionSetProvisioningStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribePermissionSetProvisioningStatus+ where+ hashWithSalt+ _salt+ DescribePermissionSetProvisioningStatus' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` provisionPermissionSetRequestId++instance+ Prelude.NFData+ DescribePermissionSetProvisioningStatus+ where+ rnf DescribePermissionSetProvisioningStatus' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf provisionPermissionSetRequestId++instance+ Data.ToHeaders+ DescribePermissionSetProvisioningStatus+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DescribePermissionSetProvisioningStatus" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DescribePermissionSetProvisioningStatus+ where+ toJSON DescribePermissionSetProvisioningStatus' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ( "ProvisionPermissionSetRequestId"+ Data..= provisionPermissionSetRequestId+ )+ ]+ )++instance+ Data.ToPath+ DescribePermissionSetProvisioningStatus+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DescribePermissionSetProvisioningStatus+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribePermissionSetProvisioningStatusResponse' smart constructor.+data DescribePermissionSetProvisioningStatusResponse = DescribePermissionSetProvisioningStatusResponse'+ { -- | The status object for the permission set provisioning operation.+ permissionSetProvisioningStatus :: Prelude.Maybe PermissionSetProvisioningStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePermissionSetProvisioningStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'permissionSetProvisioningStatus', 'describePermissionSetProvisioningStatusResponse_permissionSetProvisioningStatus' - The status object for the permission set provisioning operation.+--+-- 'httpStatus', 'describePermissionSetProvisioningStatusResponse_httpStatus' - The response's http status code.+newDescribePermissionSetProvisioningStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribePermissionSetProvisioningStatusResponse+newDescribePermissionSetProvisioningStatusResponse+ pHttpStatus_ =+ DescribePermissionSetProvisioningStatusResponse'+ { permissionSetProvisioningStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status object for the permission set provisioning operation.+describePermissionSetProvisioningStatusResponse_permissionSetProvisioningStatus :: Lens.Lens' DescribePermissionSetProvisioningStatusResponse (Prelude.Maybe PermissionSetProvisioningStatus)+describePermissionSetProvisioningStatusResponse_permissionSetProvisioningStatus = Lens.lens (\DescribePermissionSetProvisioningStatusResponse' {permissionSetProvisioningStatus} -> permissionSetProvisioningStatus) (\s@DescribePermissionSetProvisioningStatusResponse' {} a -> s {permissionSetProvisioningStatus = a} :: DescribePermissionSetProvisioningStatusResponse)++-- | The response's http status code.+describePermissionSetProvisioningStatusResponse_httpStatus :: Lens.Lens' DescribePermissionSetProvisioningStatusResponse Prelude.Int+describePermissionSetProvisioningStatusResponse_httpStatus = Lens.lens (\DescribePermissionSetProvisioningStatusResponse' {httpStatus} -> httpStatus) (\s@DescribePermissionSetProvisioningStatusResponse' {} a -> s {httpStatus = a} :: DescribePermissionSetProvisioningStatusResponse)++instance+ Prelude.NFData+ DescribePermissionSetProvisioningStatusResponse+ where+ rnf+ DescribePermissionSetProvisioningStatusResponse' {..} =+ Prelude.rnf permissionSetProvisioningStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DetachCustomerManagedPolicyReferenceFromPermissionSet.hs view
@@ -0,0 +1,242 @@+{-# 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.SSOAdmin.DetachCustomerManagedPolicyReferenceFromPermissionSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Detaches the specified customer managed policy from the specified+-- PermissionSet.+module Amazonka.SSOAdmin.DetachCustomerManagedPolicyReferenceFromPermissionSet+ ( -- * Creating a Request+ DetachCustomerManagedPolicyReferenceFromPermissionSet (..),+ newDetachCustomerManagedPolicyReferenceFromPermissionSet,++ -- * Request Lenses+ detachCustomerManagedPolicyReferenceFromPermissionSet_instanceArn,+ detachCustomerManagedPolicyReferenceFromPermissionSet_permissionSetArn,+ detachCustomerManagedPolicyReferenceFromPermissionSet_customerManagedPolicyReference,++ -- * Destructuring the Response+ DetachCustomerManagedPolicyReferenceFromPermissionSetResponse (..),+ newDetachCustomerManagedPolicyReferenceFromPermissionSetResponse,++ -- * Response Lenses+ detachCustomerManagedPolicyReferenceFromPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDetachCustomerManagedPolicyReferenceFromPermissionSet' smart constructor.+data DetachCustomerManagedPolicyReferenceFromPermissionSet = DetachCustomerManagedPolicyReferenceFromPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text,+ -- | The ARN of the @PermissionSet@.+ permissionSetArn :: Prelude.Text,+ -- | Specifies the name and path of a customer managed policy. You must have+ -- an IAM policy that matches the name and path in each AWS account where+ -- you want to deploy your permission set.+ customerManagedPolicyReference :: CustomerManagedPolicyReference+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachCustomerManagedPolicyReferenceFromPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'detachCustomerManagedPolicyReferenceFromPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+--+-- 'permissionSetArn', 'detachCustomerManagedPolicyReferenceFromPermissionSet_permissionSetArn' - The ARN of the @PermissionSet@.+--+-- 'customerManagedPolicyReference', 'detachCustomerManagedPolicyReferenceFromPermissionSet_customerManagedPolicyReference' - Specifies the name and path of a customer managed policy. You must have+-- an IAM policy that matches the name and path in each AWS account where+-- you want to deploy your permission set.+newDetachCustomerManagedPolicyReferenceFromPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'customerManagedPolicyReference'+ CustomerManagedPolicyReference ->+ DetachCustomerManagedPolicyReferenceFromPermissionSet+newDetachCustomerManagedPolicyReferenceFromPermissionSet+ pInstanceArn_+ pPermissionSetArn_+ pCustomerManagedPolicyReference_ =+ DetachCustomerManagedPolicyReferenceFromPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn =+ pPermissionSetArn_,+ customerManagedPolicyReference =+ pCustomerManagedPolicyReference_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+detachCustomerManagedPolicyReferenceFromPermissionSet_instanceArn :: Lens.Lens' DetachCustomerManagedPolicyReferenceFromPermissionSet Prelude.Text+detachCustomerManagedPolicyReferenceFromPermissionSet_instanceArn = Lens.lens (\DetachCustomerManagedPolicyReferenceFromPermissionSet' {instanceArn} -> instanceArn) (\s@DetachCustomerManagedPolicyReferenceFromPermissionSet' {} a -> s {instanceArn = a} :: DetachCustomerManagedPolicyReferenceFromPermissionSet)++-- | The ARN of the @PermissionSet@.+detachCustomerManagedPolicyReferenceFromPermissionSet_permissionSetArn :: Lens.Lens' DetachCustomerManagedPolicyReferenceFromPermissionSet Prelude.Text+detachCustomerManagedPolicyReferenceFromPermissionSet_permissionSetArn = Lens.lens (\DetachCustomerManagedPolicyReferenceFromPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@DetachCustomerManagedPolicyReferenceFromPermissionSet' {} a -> s {permissionSetArn = a} :: DetachCustomerManagedPolicyReferenceFromPermissionSet)++-- | Specifies the name and path of a customer managed policy. You must have+-- an IAM policy that matches the name and path in each AWS account where+-- you want to deploy your permission set.+detachCustomerManagedPolicyReferenceFromPermissionSet_customerManagedPolicyReference :: Lens.Lens' DetachCustomerManagedPolicyReferenceFromPermissionSet CustomerManagedPolicyReference+detachCustomerManagedPolicyReferenceFromPermissionSet_customerManagedPolicyReference = Lens.lens (\DetachCustomerManagedPolicyReferenceFromPermissionSet' {customerManagedPolicyReference} -> customerManagedPolicyReference) (\s@DetachCustomerManagedPolicyReferenceFromPermissionSet' {} a -> s {customerManagedPolicyReference = a} :: DetachCustomerManagedPolicyReferenceFromPermissionSet)++instance+ Core.AWSRequest+ DetachCustomerManagedPolicyReferenceFromPermissionSet+ where+ type+ AWSResponse+ DetachCustomerManagedPolicyReferenceFromPermissionSet =+ DetachCustomerManagedPolicyReferenceFromPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DetachCustomerManagedPolicyReferenceFromPermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DetachCustomerManagedPolicyReferenceFromPermissionSet+ where+ hashWithSalt+ _salt+ DetachCustomerManagedPolicyReferenceFromPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` customerManagedPolicyReference++instance+ Prelude.NFData+ DetachCustomerManagedPolicyReferenceFromPermissionSet+ where+ rnf+ DetachCustomerManagedPolicyReferenceFromPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf customerManagedPolicyReference++instance+ Data.ToHeaders+ DetachCustomerManagedPolicyReferenceFromPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DetachCustomerManagedPolicyReferenceFromPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DetachCustomerManagedPolicyReferenceFromPermissionSet+ where+ toJSON+ DetachCustomerManagedPolicyReferenceFromPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just+ ( "CustomerManagedPolicyReference"+ Data..= customerManagedPolicyReference+ )+ ]+ )++instance+ Data.ToPath+ DetachCustomerManagedPolicyReferenceFromPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DetachCustomerManagedPolicyReferenceFromPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDetachCustomerManagedPolicyReferenceFromPermissionSetResponse' smart constructor.+data DetachCustomerManagedPolicyReferenceFromPermissionSetResponse = DetachCustomerManagedPolicyReferenceFromPermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachCustomerManagedPolicyReferenceFromPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'detachCustomerManagedPolicyReferenceFromPermissionSetResponse_httpStatus' - The response's http status code.+newDetachCustomerManagedPolicyReferenceFromPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DetachCustomerManagedPolicyReferenceFromPermissionSetResponse+newDetachCustomerManagedPolicyReferenceFromPermissionSetResponse+ pHttpStatus_ =+ DetachCustomerManagedPolicyReferenceFromPermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+detachCustomerManagedPolicyReferenceFromPermissionSetResponse_httpStatus :: Lens.Lens' DetachCustomerManagedPolicyReferenceFromPermissionSetResponse Prelude.Int+detachCustomerManagedPolicyReferenceFromPermissionSetResponse_httpStatus = Lens.lens (\DetachCustomerManagedPolicyReferenceFromPermissionSetResponse' {httpStatus} -> httpStatus) (\s@DetachCustomerManagedPolicyReferenceFromPermissionSetResponse' {} a -> s {httpStatus = a} :: DetachCustomerManagedPolicyReferenceFromPermissionSetResponse)++instance+ Prelude.NFData+ DetachCustomerManagedPolicyReferenceFromPermissionSetResponse+ where+ rnf+ DetachCustomerManagedPolicyReferenceFromPermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/DetachManagedPolicyFromPermissionSet.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.SSOAdmin.DetachManagedPolicyFromPermissionSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Detaches the attached AWS managed policy ARN from the specified+-- permission set.+module Amazonka.SSOAdmin.DetachManagedPolicyFromPermissionSet+ ( -- * Creating a Request+ DetachManagedPolicyFromPermissionSet (..),+ newDetachManagedPolicyFromPermissionSet,++ -- * Request Lenses+ detachManagedPolicyFromPermissionSet_instanceArn,+ detachManagedPolicyFromPermissionSet_permissionSetArn,+ detachManagedPolicyFromPermissionSet_managedPolicyArn,++ -- * Destructuring the Response+ DetachManagedPolicyFromPermissionSetResponse (..),+ newDetachManagedPolicyFromPermissionSetResponse,++ -- * Response Lenses+ detachManagedPolicyFromPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newDetachManagedPolicyFromPermissionSet' smart constructor.+data DetachManagedPolicyFromPermissionSet = DetachManagedPolicyFromPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the PermissionSet from which the policy should be detached.+ permissionSetArn :: Prelude.Text,+ -- | The AWS managed policy ARN to be detached from a permission set.+ managedPolicyArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachManagedPolicyFromPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'detachManagedPolicyFromPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'detachManagedPolicyFromPermissionSet_permissionSetArn' - The ARN of the PermissionSet from which the policy should be detached.+--+-- 'managedPolicyArn', 'detachManagedPolicyFromPermissionSet_managedPolicyArn' - The AWS managed policy ARN to be detached from a permission set.+newDetachManagedPolicyFromPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'managedPolicyArn'+ Prelude.Text ->+ DetachManagedPolicyFromPermissionSet+newDetachManagedPolicyFromPermissionSet+ pInstanceArn_+ pPermissionSetArn_+ pManagedPolicyArn_ =+ DetachManagedPolicyFromPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn = pPermissionSetArn_,+ managedPolicyArn = pManagedPolicyArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+detachManagedPolicyFromPermissionSet_instanceArn :: Lens.Lens' DetachManagedPolicyFromPermissionSet Prelude.Text+detachManagedPolicyFromPermissionSet_instanceArn = Lens.lens (\DetachManagedPolicyFromPermissionSet' {instanceArn} -> instanceArn) (\s@DetachManagedPolicyFromPermissionSet' {} a -> s {instanceArn = a} :: DetachManagedPolicyFromPermissionSet)++-- | The ARN of the PermissionSet from which the policy should be detached.+detachManagedPolicyFromPermissionSet_permissionSetArn :: Lens.Lens' DetachManagedPolicyFromPermissionSet Prelude.Text+detachManagedPolicyFromPermissionSet_permissionSetArn = Lens.lens (\DetachManagedPolicyFromPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@DetachManagedPolicyFromPermissionSet' {} a -> s {permissionSetArn = a} :: DetachManagedPolicyFromPermissionSet)++-- | The AWS managed policy ARN to be detached from a permission set.+detachManagedPolicyFromPermissionSet_managedPolicyArn :: Lens.Lens' DetachManagedPolicyFromPermissionSet Prelude.Text+detachManagedPolicyFromPermissionSet_managedPolicyArn = Lens.lens (\DetachManagedPolicyFromPermissionSet' {managedPolicyArn} -> managedPolicyArn) (\s@DetachManagedPolicyFromPermissionSet' {} a -> s {managedPolicyArn = a} :: DetachManagedPolicyFromPermissionSet)++instance+ Core.AWSRequest+ DetachManagedPolicyFromPermissionSet+ where+ type+ AWSResponse DetachManagedPolicyFromPermissionSet =+ DetachManagedPolicyFromPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DetachManagedPolicyFromPermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DetachManagedPolicyFromPermissionSet+ where+ hashWithSalt+ _salt+ DetachManagedPolicyFromPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` managedPolicyArn++instance+ Prelude.NFData+ DetachManagedPolicyFromPermissionSet+ where+ rnf DetachManagedPolicyFromPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf managedPolicyArn++instance+ Data.ToHeaders+ DetachManagedPolicyFromPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.DetachManagedPolicyFromPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DetachManagedPolicyFromPermissionSet+ where+ toJSON DetachManagedPolicyFromPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just+ ("ManagedPolicyArn" Data..= managedPolicyArn)+ ]+ )++instance+ Data.ToPath+ DetachManagedPolicyFromPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ DetachManagedPolicyFromPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDetachManagedPolicyFromPermissionSetResponse' smart constructor.+data DetachManagedPolicyFromPermissionSetResponse = DetachManagedPolicyFromPermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DetachManagedPolicyFromPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'detachManagedPolicyFromPermissionSetResponse_httpStatus' - The response's http status code.+newDetachManagedPolicyFromPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DetachManagedPolicyFromPermissionSetResponse+newDetachManagedPolicyFromPermissionSetResponse+ pHttpStatus_ =+ DetachManagedPolicyFromPermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+detachManagedPolicyFromPermissionSetResponse_httpStatus :: Lens.Lens' DetachManagedPolicyFromPermissionSetResponse Prelude.Int+detachManagedPolicyFromPermissionSetResponse_httpStatus = Lens.lens (\DetachManagedPolicyFromPermissionSetResponse' {httpStatus} -> httpStatus) (\s@DetachManagedPolicyFromPermissionSetResponse' {} a -> s {httpStatus = a} :: DetachManagedPolicyFromPermissionSetResponse)++instance+ Prelude.NFData+ DetachManagedPolicyFromPermissionSetResponse+ where+ rnf DetachManagedPolicyFromPermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/GetInlinePolicyForPermissionSet.hs view
@@ -0,0 +1,219 @@+{-# 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.SSOAdmin.GetInlinePolicyForPermissionSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Obtains the inline policy assigned to the permission set.+module Amazonka.SSOAdmin.GetInlinePolicyForPermissionSet+ ( -- * Creating a Request+ GetInlinePolicyForPermissionSet (..),+ newGetInlinePolicyForPermissionSet,++ -- * Request Lenses+ getInlinePolicyForPermissionSet_instanceArn,+ getInlinePolicyForPermissionSet_permissionSetArn,++ -- * Destructuring the Response+ GetInlinePolicyForPermissionSetResponse (..),+ newGetInlinePolicyForPermissionSetResponse,++ -- * Response Lenses+ getInlinePolicyForPermissionSetResponse_inlinePolicy,+ getInlinePolicyForPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newGetInlinePolicyForPermissionSet' smart constructor.+data GetInlinePolicyForPermissionSet = GetInlinePolicyForPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the permission set.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetInlinePolicyForPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'getInlinePolicyForPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'getInlinePolicyForPermissionSet_permissionSetArn' - The ARN of the permission set.+newGetInlinePolicyForPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ GetInlinePolicyForPermissionSet+newGetInlinePolicyForPermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ GetInlinePolicyForPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn = pPermissionSetArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+getInlinePolicyForPermissionSet_instanceArn :: Lens.Lens' GetInlinePolicyForPermissionSet Prelude.Text+getInlinePolicyForPermissionSet_instanceArn = Lens.lens (\GetInlinePolicyForPermissionSet' {instanceArn} -> instanceArn) (\s@GetInlinePolicyForPermissionSet' {} a -> s {instanceArn = a} :: GetInlinePolicyForPermissionSet)++-- | The ARN of the permission set.+getInlinePolicyForPermissionSet_permissionSetArn :: Lens.Lens' GetInlinePolicyForPermissionSet Prelude.Text+getInlinePolicyForPermissionSet_permissionSetArn = Lens.lens (\GetInlinePolicyForPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@GetInlinePolicyForPermissionSet' {} a -> s {permissionSetArn = a} :: GetInlinePolicyForPermissionSet)++instance+ Core.AWSRequest+ GetInlinePolicyForPermissionSet+ where+ type+ AWSResponse GetInlinePolicyForPermissionSet =+ GetInlinePolicyForPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetInlinePolicyForPermissionSetResponse'+ Prelude.<$> (x Data..?> "InlinePolicy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ GetInlinePolicyForPermissionSet+ where+ hashWithSalt+ _salt+ GetInlinePolicyForPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance+ Prelude.NFData+ GetInlinePolicyForPermissionSet+ where+ rnf GetInlinePolicyForPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance+ Data.ToHeaders+ GetInlinePolicyForPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.GetInlinePolicyForPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetInlinePolicyForPermissionSet where+ toJSON GetInlinePolicyForPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance Data.ToPath GetInlinePolicyForPermissionSet where+ toPath = Prelude.const "/"++instance Data.ToQuery GetInlinePolicyForPermissionSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetInlinePolicyForPermissionSetResponse' smart constructor.+data GetInlinePolicyForPermissionSetResponse = GetInlinePolicyForPermissionSetResponse'+ { -- | The inline policy that is attached to the permission set.+ inlinePolicy :: 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 'GetInlinePolicyForPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'inlinePolicy', 'getInlinePolicyForPermissionSetResponse_inlinePolicy' - The inline policy that is attached to the permission set.+--+-- 'httpStatus', 'getInlinePolicyForPermissionSetResponse_httpStatus' - The response's http status code.+newGetInlinePolicyForPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetInlinePolicyForPermissionSetResponse+newGetInlinePolicyForPermissionSetResponse+ pHttpStatus_ =+ GetInlinePolicyForPermissionSetResponse'+ { inlinePolicy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The inline policy that is attached to the permission set.+getInlinePolicyForPermissionSetResponse_inlinePolicy :: Lens.Lens' GetInlinePolicyForPermissionSetResponse (Prelude.Maybe Prelude.Text)+getInlinePolicyForPermissionSetResponse_inlinePolicy = Lens.lens (\GetInlinePolicyForPermissionSetResponse' {inlinePolicy} -> inlinePolicy) (\s@GetInlinePolicyForPermissionSetResponse' {} a -> s {inlinePolicy = a} :: GetInlinePolicyForPermissionSetResponse)++-- | The response's http status code.+getInlinePolicyForPermissionSetResponse_httpStatus :: Lens.Lens' GetInlinePolicyForPermissionSetResponse Prelude.Int+getInlinePolicyForPermissionSetResponse_httpStatus = Lens.lens (\GetInlinePolicyForPermissionSetResponse' {httpStatus} -> httpStatus) (\s@GetInlinePolicyForPermissionSetResponse' {} a -> s {httpStatus = a} :: GetInlinePolicyForPermissionSetResponse)++instance+ Prelude.NFData+ GetInlinePolicyForPermissionSetResponse+ where+ rnf GetInlinePolicyForPermissionSetResponse' {..} =+ Prelude.rnf inlinePolicy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/GetPermissionsBoundaryForPermissionSet.hs view
@@ -0,0 +1,225 @@+{-# 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.SSOAdmin.GetPermissionsBoundaryForPermissionSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Obtains the permissions boundary for a specified PermissionSet.+module Amazonka.SSOAdmin.GetPermissionsBoundaryForPermissionSet+ ( -- * Creating a Request+ GetPermissionsBoundaryForPermissionSet (..),+ newGetPermissionsBoundaryForPermissionSet,++ -- * Request Lenses+ getPermissionsBoundaryForPermissionSet_instanceArn,+ getPermissionsBoundaryForPermissionSet_permissionSetArn,++ -- * Destructuring the Response+ GetPermissionsBoundaryForPermissionSetResponse (..),+ newGetPermissionsBoundaryForPermissionSetResponse,++ -- * Response Lenses+ getPermissionsBoundaryForPermissionSetResponse_permissionsBoundary,+ getPermissionsBoundaryForPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newGetPermissionsBoundaryForPermissionSet' smart constructor.+data GetPermissionsBoundaryForPermissionSet = GetPermissionsBoundaryForPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text,+ -- | The ARN of the @PermissionSet@.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPermissionsBoundaryForPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'getPermissionsBoundaryForPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+--+-- 'permissionSetArn', 'getPermissionsBoundaryForPermissionSet_permissionSetArn' - The ARN of the @PermissionSet@.+newGetPermissionsBoundaryForPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ GetPermissionsBoundaryForPermissionSet+newGetPermissionsBoundaryForPermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ GetPermissionsBoundaryForPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn =+ pPermissionSetArn_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+getPermissionsBoundaryForPermissionSet_instanceArn :: Lens.Lens' GetPermissionsBoundaryForPermissionSet Prelude.Text+getPermissionsBoundaryForPermissionSet_instanceArn = Lens.lens (\GetPermissionsBoundaryForPermissionSet' {instanceArn} -> instanceArn) (\s@GetPermissionsBoundaryForPermissionSet' {} a -> s {instanceArn = a} :: GetPermissionsBoundaryForPermissionSet)++-- | The ARN of the @PermissionSet@.+getPermissionsBoundaryForPermissionSet_permissionSetArn :: Lens.Lens' GetPermissionsBoundaryForPermissionSet Prelude.Text+getPermissionsBoundaryForPermissionSet_permissionSetArn = Lens.lens (\GetPermissionsBoundaryForPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@GetPermissionsBoundaryForPermissionSet' {} a -> s {permissionSetArn = a} :: GetPermissionsBoundaryForPermissionSet)++instance+ Core.AWSRequest+ GetPermissionsBoundaryForPermissionSet+ where+ type+ AWSResponse+ GetPermissionsBoundaryForPermissionSet =+ GetPermissionsBoundaryForPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetPermissionsBoundaryForPermissionSetResponse'+ Prelude.<$> (x Data..?> "PermissionsBoundary")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ GetPermissionsBoundaryForPermissionSet+ where+ hashWithSalt+ _salt+ GetPermissionsBoundaryForPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance+ Prelude.NFData+ GetPermissionsBoundaryForPermissionSet+ where+ rnf GetPermissionsBoundaryForPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance+ Data.ToHeaders+ GetPermissionsBoundaryForPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.GetPermissionsBoundaryForPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ GetPermissionsBoundaryForPermissionSet+ where+ toJSON GetPermissionsBoundaryForPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance+ Data.ToPath+ GetPermissionsBoundaryForPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ GetPermissionsBoundaryForPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetPermissionsBoundaryForPermissionSetResponse' smart constructor.+data GetPermissionsBoundaryForPermissionSetResponse = GetPermissionsBoundaryForPermissionSetResponse'+ { -- | The permissions boundary attached to the specified permission set.+ permissionsBoundary :: Prelude.Maybe PermissionsBoundary,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPermissionsBoundaryForPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'permissionsBoundary', 'getPermissionsBoundaryForPermissionSetResponse_permissionsBoundary' - The permissions boundary attached to the specified permission set.+--+-- 'httpStatus', 'getPermissionsBoundaryForPermissionSetResponse_httpStatus' - The response's http status code.+newGetPermissionsBoundaryForPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetPermissionsBoundaryForPermissionSetResponse+newGetPermissionsBoundaryForPermissionSetResponse+ pHttpStatus_ =+ GetPermissionsBoundaryForPermissionSetResponse'+ { permissionsBoundary =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The permissions boundary attached to the specified permission set.+getPermissionsBoundaryForPermissionSetResponse_permissionsBoundary :: Lens.Lens' GetPermissionsBoundaryForPermissionSetResponse (Prelude.Maybe PermissionsBoundary)+getPermissionsBoundaryForPermissionSetResponse_permissionsBoundary = Lens.lens (\GetPermissionsBoundaryForPermissionSetResponse' {permissionsBoundary} -> permissionsBoundary) (\s@GetPermissionsBoundaryForPermissionSetResponse' {} a -> s {permissionsBoundary = a} :: GetPermissionsBoundaryForPermissionSetResponse)++-- | The response's http status code.+getPermissionsBoundaryForPermissionSetResponse_httpStatus :: Lens.Lens' GetPermissionsBoundaryForPermissionSetResponse Prelude.Int+getPermissionsBoundaryForPermissionSetResponse_httpStatus = Lens.lens (\GetPermissionsBoundaryForPermissionSetResponse' {httpStatus} -> httpStatus) (\s@GetPermissionsBoundaryForPermissionSetResponse' {} a -> s {httpStatus = a} :: GetPermissionsBoundaryForPermissionSetResponse)++instance+ Prelude.NFData+ GetPermissionsBoundaryForPermissionSetResponse+ where+ rnf+ GetPermissionsBoundaryForPermissionSetResponse' {..} =+ Prelude.rnf permissionsBoundary+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/Lens.hs view
@@ -0,0 +1,412 @@+{-# 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.SSOAdmin.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.SSOAdmin.Lens+ ( -- * Operations++ -- ** AttachCustomerManagedPolicyReferenceToPermissionSet+ attachCustomerManagedPolicyReferenceToPermissionSet_instanceArn,+ attachCustomerManagedPolicyReferenceToPermissionSet_permissionSetArn,+ attachCustomerManagedPolicyReferenceToPermissionSet_customerManagedPolicyReference,+ attachCustomerManagedPolicyReferenceToPermissionSetResponse_httpStatus,++ -- ** AttachManagedPolicyToPermissionSet+ attachManagedPolicyToPermissionSet_instanceArn,+ attachManagedPolicyToPermissionSet_permissionSetArn,+ attachManagedPolicyToPermissionSet_managedPolicyArn,+ attachManagedPolicyToPermissionSetResponse_httpStatus,++ -- ** CreateAccountAssignment+ createAccountAssignment_instanceArn,+ createAccountAssignment_targetId,+ createAccountAssignment_targetType,+ createAccountAssignment_permissionSetArn,+ createAccountAssignment_principalType,+ createAccountAssignment_principalId,+ createAccountAssignmentResponse_accountAssignmentCreationStatus,+ createAccountAssignmentResponse_httpStatus,++ -- ** CreateInstanceAccessControlAttributeConfiguration+ createInstanceAccessControlAttributeConfiguration_instanceArn,+ createInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration,+ createInstanceAccessControlAttributeConfigurationResponse_httpStatus,++ -- ** CreatePermissionSet+ createPermissionSet_description,+ createPermissionSet_relayState,+ createPermissionSet_sessionDuration,+ createPermissionSet_tags,+ createPermissionSet_name,+ createPermissionSet_instanceArn,+ createPermissionSetResponse_permissionSet,+ createPermissionSetResponse_httpStatus,++ -- ** DeleteAccountAssignment+ deleteAccountAssignment_instanceArn,+ deleteAccountAssignment_targetId,+ deleteAccountAssignment_targetType,+ deleteAccountAssignment_permissionSetArn,+ deleteAccountAssignment_principalType,+ deleteAccountAssignment_principalId,+ deleteAccountAssignmentResponse_accountAssignmentDeletionStatus,+ deleteAccountAssignmentResponse_httpStatus,++ -- ** DeleteInlinePolicyFromPermissionSet+ deleteInlinePolicyFromPermissionSet_instanceArn,+ deleteInlinePolicyFromPermissionSet_permissionSetArn,+ deleteInlinePolicyFromPermissionSetResponse_httpStatus,++ -- ** DeleteInstanceAccessControlAttributeConfiguration+ deleteInstanceAccessControlAttributeConfiguration_instanceArn,+ deleteInstanceAccessControlAttributeConfigurationResponse_httpStatus,++ -- ** DeletePermissionSet+ deletePermissionSet_instanceArn,+ deletePermissionSet_permissionSetArn,+ deletePermissionSetResponse_httpStatus,++ -- ** DeletePermissionsBoundaryFromPermissionSet+ deletePermissionsBoundaryFromPermissionSet_instanceArn,+ deletePermissionsBoundaryFromPermissionSet_permissionSetArn,+ deletePermissionsBoundaryFromPermissionSetResponse_httpStatus,++ -- ** DescribeAccountAssignmentCreationStatus+ describeAccountAssignmentCreationStatus_instanceArn,+ describeAccountAssignmentCreationStatus_accountAssignmentCreationRequestId,+ describeAccountAssignmentCreationStatusResponse_accountAssignmentCreationStatus,+ describeAccountAssignmentCreationStatusResponse_httpStatus,++ -- ** DescribeAccountAssignmentDeletionStatus+ describeAccountAssignmentDeletionStatus_instanceArn,+ describeAccountAssignmentDeletionStatus_accountAssignmentDeletionRequestId,+ describeAccountAssignmentDeletionStatusResponse_accountAssignmentDeletionStatus,+ describeAccountAssignmentDeletionStatusResponse_httpStatus,++ -- ** DescribeInstanceAccessControlAttributeConfiguration+ describeInstanceAccessControlAttributeConfiguration_instanceArn,+ describeInstanceAccessControlAttributeConfigurationResponse_instanceAccessControlAttributeConfiguration,+ describeInstanceAccessControlAttributeConfigurationResponse_status,+ describeInstanceAccessControlAttributeConfigurationResponse_statusReason,+ describeInstanceAccessControlAttributeConfigurationResponse_httpStatus,++ -- ** DescribePermissionSet+ describePermissionSet_instanceArn,+ describePermissionSet_permissionSetArn,+ describePermissionSetResponse_permissionSet,+ describePermissionSetResponse_httpStatus,++ -- ** DescribePermissionSetProvisioningStatus+ describePermissionSetProvisioningStatus_instanceArn,+ describePermissionSetProvisioningStatus_provisionPermissionSetRequestId,+ describePermissionSetProvisioningStatusResponse_permissionSetProvisioningStatus,+ describePermissionSetProvisioningStatusResponse_httpStatus,++ -- ** DetachCustomerManagedPolicyReferenceFromPermissionSet+ detachCustomerManagedPolicyReferenceFromPermissionSet_instanceArn,+ detachCustomerManagedPolicyReferenceFromPermissionSet_permissionSetArn,+ detachCustomerManagedPolicyReferenceFromPermissionSet_customerManagedPolicyReference,+ detachCustomerManagedPolicyReferenceFromPermissionSetResponse_httpStatus,++ -- ** DetachManagedPolicyFromPermissionSet+ detachManagedPolicyFromPermissionSet_instanceArn,+ detachManagedPolicyFromPermissionSet_permissionSetArn,+ detachManagedPolicyFromPermissionSet_managedPolicyArn,+ detachManagedPolicyFromPermissionSetResponse_httpStatus,++ -- ** GetInlinePolicyForPermissionSet+ getInlinePolicyForPermissionSet_instanceArn,+ getInlinePolicyForPermissionSet_permissionSetArn,+ getInlinePolicyForPermissionSetResponse_inlinePolicy,+ getInlinePolicyForPermissionSetResponse_httpStatus,++ -- ** GetPermissionsBoundaryForPermissionSet+ getPermissionsBoundaryForPermissionSet_instanceArn,+ getPermissionsBoundaryForPermissionSet_permissionSetArn,+ getPermissionsBoundaryForPermissionSetResponse_permissionsBoundary,+ getPermissionsBoundaryForPermissionSetResponse_httpStatus,++ -- ** ListAccountAssignmentCreationStatus+ listAccountAssignmentCreationStatus_filter,+ listAccountAssignmentCreationStatus_maxResults,+ listAccountAssignmentCreationStatus_nextToken,+ listAccountAssignmentCreationStatus_instanceArn,+ listAccountAssignmentCreationStatusResponse_accountAssignmentsCreationStatus,+ listAccountAssignmentCreationStatusResponse_nextToken,+ listAccountAssignmentCreationStatusResponse_httpStatus,++ -- ** ListAccountAssignmentDeletionStatus+ listAccountAssignmentDeletionStatus_filter,+ listAccountAssignmentDeletionStatus_maxResults,+ listAccountAssignmentDeletionStatus_nextToken,+ listAccountAssignmentDeletionStatus_instanceArn,+ listAccountAssignmentDeletionStatusResponse_accountAssignmentsDeletionStatus,+ listAccountAssignmentDeletionStatusResponse_nextToken,+ listAccountAssignmentDeletionStatusResponse_httpStatus,++ -- ** ListAccountAssignments+ listAccountAssignments_maxResults,+ listAccountAssignments_nextToken,+ listAccountAssignments_instanceArn,+ listAccountAssignments_accountId,+ listAccountAssignments_permissionSetArn,+ listAccountAssignmentsResponse_accountAssignments,+ listAccountAssignmentsResponse_nextToken,+ listAccountAssignmentsResponse_httpStatus,++ -- ** ListAccountsForProvisionedPermissionSet+ listAccountsForProvisionedPermissionSet_maxResults,+ listAccountsForProvisionedPermissionSet_nextToken,+ listAccountsForProvisionedPermissionSet_provisioningStatus,+ listAccountsForProvisionedPermissionSet_instanceArn,+ listAccountsForProvisionedPermissionSet_permissionSetArn,+ listAccountsForProvisionedPermissionSetResponse_accountIds,+ listAccountsForProvisionedPermissionSetResponse_nextToken,+ listAccountsForProvisionedPermissionSetResponse_httpStatus,++ -- ** ListCustomerManagedPolicyReferencesInPermissionSet+ listCustomerManagedPolicyReferencesInPermissionSet_maxResults,+ listCustomerManagedPolicyReferencesInPermissionSet_nextToken,+ listCustomerManagedPolicyReferencesInPermissionSet_instanceArn,+ listCustomerManagedPolicyReferencesInPermissionSet_permissionSetArn,+ listCustomerManagedPolicyReferencesInPermissionSetResponse_customerManagedPolicyReferences,+ listCustomerManagedPolicyReferencesInPermissionSetResponse_nextToken,+ listCustomerManagedPolicyReferencesInPermissionSetResponse_httpStatus,++ -- ** ListInstances+ listInstances_maxResults,+ listInstances_nextToken,+ listInstancesResponse_instances,+ listInstancesResponse_nextToken,+ listInstancesResponse_httpStatus,++ -- ** ListManagedPoliciesInPermissionSet+ listManagedPoliciesInPermissionSet_maxResults,+ listManagedPoliciesInPermissionSet_nextToken,+ listManagedPoliciesInPermissionSet_instanceArn,+ listManagedPoliciesInPermissionSet_permissionSetArn,+ listManagedPoliciesInPermissionSetResponse_attachedManagedPolicies,+ listManagedPoliciesInPermissionSetResponse_nextToken,+ listManagedPoliciesInPermissionSetResponse_httpStatus,++ -- ** ListPermissionSetProvisioningStatus+ listPermissionSetProvisioningStatus_filter,+ listPermissionSetProvisioningStatus_maxResults,+ listPermissionSetProvisioningStatus_nextToken,+ listPermissionSetProvisioningStatus_instanceArn,+ listPermissionSetProvisioningStatusResponse_nextToken,+ listPermissionSetProvisioningStatusResponse_permissionSetsProvisioningStatus,+ listPermissionSetProvisioningStatusResponse_httpStatus,++ -- ** ListPermissionSets+ listPermissionSets_maxResults,+ listPermissionSets_nextToken,+ listPermissionSets_instanceArn,+ listPermissionSetsResponse_nextToken,+ listPermissionSetsResponse_permissionSets,+ listPermissionSetsResponse_httpStatus,++ -- ** ListPermissionSetsProvisionedToAccount+ listPermissionSetsProvisionedToAccount_maxResults,+ listPermissionSetsProvisionedToAccount_nextToken,+ listPermissionSetsProvisionedToAccount_provisioningStatus,+ listPermissionSetsProvisionedToAccount_instanceArn,+ listPermissionSetsProvisionedToAccount_accountId,+ listPermissionSetsProvisionedToAccountResponse_nextToken,+ listPermissionSetsProvisionedToAccountResponse_permissionSets,+ listPermissionSetsProvisionedToAccountResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_nextToken,+ listTagsForResource_instanceArn,+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_nextToken,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** ProvisionPermissionSet+ provisionPermissionSet_targetId,+ provisionPermissionSet_instanceArn,+ provisionPermissionSet_permissionSetArn,+ provisionPermissionSet_targetType,+ provisionPermissionSetResponse_permissionSetProvisioningStatus,+ provisionPermissionSetResponse_httpStatus,++ -- ** PutInlinePolicyToPermissionSet+ putInlinePolicyToPermissionSet_instanceArn,+ putInlinePolicyToPermissionSet_permissionSetArn,+ putInlinePolicyToPermissionSet_inlinePolicy,+ putInlinePolicyToPermissionSetResponse_httpStatus,++ -- ** PutPermissionsBoundaryToPermissionSet+ putPermissionsBoundaryToPermissionSet_instanceArn,+ putPermissionsBoundaryToPermissionSet_permissionSetArn,+ putPermissionsBoundaryToPermissionSet_permissionsBoundary,+ putPermissionsBoundaryToPermissionSetResponse_httpStatus,++ -- ** TagResource+ tagResource_instanceArn,+ tagResource_resourceArn,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_instanceArn,+ untagResource_resourceArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateInstanceAccessControlAttributeConfiguration+ updateInstanceAccessControlAttributeConfiguration_instanceArn,+ updateInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration,+ updateInstanceAccessControlAttributeConfigurationResponse_httpStatus,++ -- ** UpdatePermissionSet+ updatePermissionSet_description,+ updatePermissionSet_relayState,+ updatePermissionSet_sessionDuration,+ updatePermissionSet_instanceArn,+ updatePermissionSet_permissionSetArn,+ updatePermissionSetResponse_httpStatus,++ -- * Types++ -- ** AccessControlAttribute+ accessControlAttribute_key,+ accessControlAttribute_value,++ -- ** AccessControlAttributeValue+ accessControlAttributeValue_source,++ -- ** AccountAssignment+ accountAssignment_accountId,+ accountAssignment_permissionSetArn,+ accountAssignment_principalId,+ accountAssignment_principalType,++ -- ** AccountAssignmentOperationStatus+ accountAssignmentOperationStatus_createdDate,+ accountAssignmentOperationStatus_failureReason,+ accountAssignmentOperationStatus_permissionSetArn,+ accountAssignmentOperationStatus_principalId,+ accountAssignmentOperationStatus_principalType,+ accountAssignmentOperationStatus_requestId,+ accountAssignmentOperationStatus_status,+ accountAssignmentOperationStatus_targetId,+ accountAssignmentOperationStatus_targetType,++ -- ** AccountAssignmentOperationStatusMetadata+ accountAssignmentOperationStatusMetadata_createdDate,+ accountAssignmentOperationStatusMetadata_requestId,+ accountAssignmentOperationStatusMetadata_status,++ -- ** AttachedManagedPolicy+ attachedManagedPolicy_arn,+ attachedManagedPolicy_name,++ -- ** CustomerManagedPolicyReference+ customerManagedPolicyReference_path,+ customerManagedPolicyReference_name,++ -- ** InstanceAccessControlAttributeConfiguration+ instanceAccessControlAttributeConfiguration_accessControlAttributes,++ -- ** InstanceMetadata+ instanceMetadata_identityStoreId,+ instanceMetadata_instanceArn,++ -- ** OperationStatusFilter+ operationStatusFilter_status,++ -- ** PermissionSet+ permissionSet_createdDate,+ permissionSet_description,+ permissionSet_name,+ permissionSet_permissionSetArn,+ permissionSet_relayState,+ permissionSet_sessionDuration,++ -- ** PermissionSetProvisioningStatus+ permissionSetProvisioningStatus_accountId,+ permissionSetProvisioningStatus_createdDate,+ permissionSetProvisioningStatus_failureReason,+ permissionSetProvisioningStatus_permissionSetArn,+ permissionSetProvisioningStatus_requestId,+ permissionSetProvisioningStatus_status,++ -- ** PermissionSetProvisioningStatusMetadata+ permissionSetProvisioningStatusMetadata_createdDate,+ permissionSetProvisioningStatusMetadata_requestId,+ permissionSetProvisioningStatusMetadata_status,++ -- ** PermissionsBoundary+ permissionsBoundary_customerManagedPolicyReference,+ permissionsBoundary_managedPolicyArn,++ -- ** Tag+ tag_key,+ tag_value,+ )+where++import Amazonka.SSOAdmin.AttachCustomerManagedPolicyReferenceToPermissionSet+import Amazonka.SSOAdmin.AttachManagedPolicyToPermissionSet+import Amazonka.SSOAdmin.CreateAccountAssignment+import Amazonka.SSOAdmin.CreateInstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.CreatePermissionSet+import Amazonka.SSOAdmin.DeleteAccountAssignment+import Amazonka.SSOAdmin.DeleteInlinePolicyFromPermissionSet+import Amazonka.SSOAdmin.DeleteInstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.DeletePermissionSet+import Amazonka.SSOAdmin.DeletePermissionsBoundaryFromPermissionSet+import Amazonka.SSOAdmin.DescribeAccountAssignmentCreationStatus+import Amazonka.SSOAdmin.DescribeAccountAssignmentDeletionStatus+import Amazonka.SSOAdmin.DescribeInstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.DescribePermissionSet+import Amazonka.SSOAdmin.DescribePermissionSetProvisioningStatus+import Amazonka.SSOAdmin.DetachCustomerManagedPolicyReferenceFromPermissionSet+import Amazonka.SSOAdmin.DetachManagedPolicyFromPermissionSet+import Amazonka.SSOAdmin.GetInlinePolicyForPermissionSet+import Amazonka.SSOAdmin.GetPermissionsBoundaryForPermissionSet+import Amazonka.SSOAdmin.ListAccountAssignmentCreationStatus+import Amazonka.SSOAdmin.ListAccountAssignmentDeletionStatus+import Amazonka.SSOAdmin.ListAccountAssignments+import Amazonka.SSOAdmin.ListAccountsForProvisionedPermissionSet+import Amazonka.SSOAdmin.ListCustomerManagedPolicyReferencesInPermissionSet+import Amazonka.SSOAdmin.ListInstances+import Amazonka.SSOAdmin.ListManagedPoliciesInPermissionSet+import Amazonka.SSOAdmin.ListPermissionSetProvisioningStatus+import Amazonka.SSOAdmin.ListPermissionSets+import Amazonka.SSOAdmin.ListPermissionSetsProvisionedToAccount+import Amazonka.SSOAdmin.ListTagsForResource+import Amazonka.SSOAdmin.ProvisionPermissionSet+import Amazonka.SSOAdmin.PutInlinePolicyToPermissionSet+import Amazonka.SSOAdmin.PutPermissionsBoundaryToPermissionSet+import Amazonka.SSOAdmin.TagResource+import Amazonka.SSOAdmin.Types.AccessControlAttribute+import Amazonka.SSOAdmin.Types.AccessControlAttributeValue+import Amazonka.SSOAdmin.Types.AccountAssignment+import Amazonka.SSOAdmin.Types.AccountAssignmentOperationStatus+import Amazonka.SSOAdmin.Types.AccountAssignmentOperationStatusMetadata+import Amazonka.SSOAdmin.Types.AttachedManagedPolicy+import Amazonka.SSOAdmin.Types.CustomerManagedPolicyReference+import Amazonka.SSOAdmin.Types.InstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.Types.InstanceMetadata+import Amazonka.SSOAdmin.Types.OperationStatusFilter+import Amazonka.SSOAdmin.Types.PermissionSet+import Amazonka.SSOAdmin.Types.PermissionSetProvisioningStatus+import Amazonka.SSOAdmin.Types.PermissionSetProvisioningStatusMetadata+import Amazonka.SSOAdmin.Types.PermissionsBoundary+import Amazonka.SSOAdmin.Types.Tag+import Amazonka.SSOAdmin.UntagResource+import Amazonka.SSOAdmin.UpdateInstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.UpdatePermissionSet
+ gen/Amazonka/SSOAdmin/ListAccountAssignmentCreationStatus.hs view
@@ -0,0 +1,298 @@+{-# 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.SSOAdmin.ListAccountAssignmentCreationStatus+-- 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 status of the AWS account assignment creation requests for a+-- specified IAM Identity Center instance.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListAccountAssignmentCreationStatus+ ( -- * Creating a Request+ ListAccountAssignmentCreationStatus (..),+ newListAccountAssignmentCreationStatus,++ -- * Request Lenses+ listAccountAssignmentCreationStatus_filter,+ listAccountAssignmentCreationStatus_maxResults,+ listAccountAssignmentCreationStatus_nextToken,+ listAccountAssignmentCreationStatus_instanceArn,++ -- * Destructuring the Response+ ListAccountAssignmentCreationStatusResponse (..),+ newListAccountAssignmentCreationStatusResponse,++ -- * Response Lenses+ listAccountAssignmentCreationStatusResponse_accountAssignmentsCreationStatus,+ listAccountAssignmentCreationStatusResponse_nextToken,+ listAccountAssignmentCreationStatusResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListAccountAssignmentCreationStatus' smart constructor.+data ListAccountAssignmentCreationStatus = ListAccountAssignmentCreationStatus'+ { -- | Filters results based on the passed attribute value.+ filter' :: Prelude.Maybe OperationStatusFilter,+ -- | The maximum number of results to display for the assignment.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAccountAssignmentCreationStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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'', 'listAccountAssignmentCreationStatus_filter' - Filters results based on the passed attribute value.+--+-- 'maxResults', 'listAccountAssignmentCreationStatus_maxResults' - The maximum number of results to display for the assignment.+--+-- 'nextToken', 'listAccountAssignmentCreationStatus_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'instanceArn', 'listAccountAssignmentCreationStatus_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+newListAccountAssignmentCreationStatus ::+ -- | 'instanceArn'+ Prelude.Text ->+ ListAccountAssignmentCreationStatus+newListAccountAssignmentCreationStatus pInstanceArn_ =+ ListAccountAssignmentCreationStatus'+ { filter' =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ instanceArn = pInstanceArn_+ }++-- | Filters results based on the passed attribute value.+listAccountAssignmentCreationStatus_filter :: Lens.Lens' ListAccountAssignmentCreationStatus (Prelude.Maybe OperationStatusFilter)+listAccountAssignmentCreationStatus_filter = Lens.lens (\ListAccountAssignmentCreationStatus' {filter'} -> filter') (\s@ListAccountAssignmentCreationStatus' {} a -> s {filter' = a} :: ListAccountAssignmentCreationStatus)++-- | The maximum number of results to display for the assignment.+listAccountAssignmentCreationStatus_maxResults :: Lens.Lens' ListAccountAssignmentCreationStatus (Prelude.Maybe Prelude.Natural)+listAccountAssignmentCreationStatus_maxResults = Lens.lens (\ListAccountAssignmentCreationStatus' {maxResults} -> maxResults) (\s@ListAccountAssignmentCreationStatus' {} a -> s {maxResults = a} :: ListAccountAssignmentCreationStatus)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listAccountAssignmentCreationStatus_nextToken :: Lens.Lens' ListAccountAssignmentCreationStatus (Prelude.Maybe Prelude.Text)+listAccountAssignmentCreationStatus_nextToken = Lens.lens (\ListAccountAssignmentCreationStatus' {nextToken} -> nextToken) (\s@ListAccountAssignmentCreationStatus' {} a -> s {nextToken = a} :: ListAccountAssignmentCreationStatus)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listAccountAssignmentCreationStatus_instanceArn :: Lens.Lens' ListAccountAssignmentCreationStatus Prelude.Text+listAccountAssignmentCreationStatus_instanceArn = Lens.lens (\ListAccountAssignmentCreationStatus' {instanceArn} -> instanceArn) (\s@ListAccountAssignmentCreationStatus' {} a -> s {instanceArn = a} :: ListAccountAssignmentCreationStatus)++instance+ Core.AWSPager+ ListAccountAssignmentCreationStatus+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAccountAssignmentCreationStatusResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listAccountAssignmentCreationStatusResponse_accountAssignmentsCreationStatus+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAccountAssignmentCreationStatus_nextToken+ Lens..~ rs+ Lens.^? listAccountAssignmentCreationStatusResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ ListAccountAssignmentCreationStatus+ where+ type+ AWSResponse ListAccountAssignmentCreationStatus =+ ListAccountAssignmentCreationStatusResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListAccountAssignmentCreationStatusResponse'+ Prelude.<$> ( x+ Data..?> "AccountAssignmentsCreationStatus"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListAccountAssignmentCreationStatus+ where+ hashWithSalt+ _salt+ ListAccountAssignmentCreationStatus' {..} =+ _salt+ `Prelude.hashWithSalt` filter'+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` instanceArn++instance+ Prelude.NFData+ ListAccountAssignmentCreationStatus+ where+ rnf ListAccountAssignmentCreationStatus' {..} =+ Prelude.rnf filter'+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf instanceArn++instance+ Data.ToHeaders+ ListAccountAssignmentCreationStatus+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListAccountAssignmentCreationStatus" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ ListAccountAssignmentCreationStatus+ where+ toJSON ListAccountAssignmentCreationStatus' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filter" Data..=) Prelude.<$> filter',+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("InstanceArn" Data..= instanceArn)+ ]+ )++instance+ Data.ToPath+ ListAccountAssignmentCreationStatus+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ListAccountAssignmentCreationStatus+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListAccountAssignmentCreationStatusResponse' smart constructor.+data ListAccountAssignmentCreationStatusResponse = ListAccountAssignmentCreationStatusResponse'+ { -- | The status object for the account assignment creation operation.+ accountAssignmentsCreationStatus :: Prelude.Maybe [AccountAssignmentOperationStatusMetadata],+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: 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 'ListAccountAssignmentCreationStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAssignmentsCreationStatus', 'listAccountAssignmentCreationStatusResponse_accountAssignmentsCreationStatus' - The status object for the account assignment creation operation.+--+-- 'nextToken', 'listAccountAssignmentCreationStatusResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'httpStatus', 'listAccountAssignmentCreationStatusResponse_httpStatus' - The response's http status code.+newListAccountAssignmentCreationStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAccountAssignmentCreationStatusResponse+newListAccountAssignmentCreationStatusResponse+ pHttpStatus_ =+ ListAccountAssignmentCreationStatusResponse'+ { accountAssignmentsCreationStatus =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status object for the account assignment creation operation.+listAccountAssignmentCreationStatusResponse_accountAssignmentsCreationStatus :: Lens.Lens' ListAccountAssignmentCreationStatusResponse (Prelude.Maybe [AccountAssignmentOperationStatusMetadata])+listAccountAssignmentCreationStatusResponse_accountAssignmentsCreationStatus = Lens.lens (\ListAccountAssignmentCreationStatusResponse' {accountAssignmentsCreationStatus} -> accountAssignmentsCreationStatus) (\s@ListAccountAssignmentCreationStatusResponse' {} a -> s {accountAssignmentsCreationStatus = a} :: ListAccountAssignmentCreationStatusResponse) Prelude.. Lens.mapping Lens.coerced++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listAccountAssignmentCreationStatusResponse_nextToken :: Lens.Lens' ListAccountAssignmentCreationStatusResponse (Prelude.Maybe Prelude.Text)+listAccountAssignmentCreationStatusResponse_nextToken = Lens.lens (\ListAccountAssignmentCreationStatusResponse' {nextToken} -> nextToken) (\s@ListAccountAssignmentCreationStatusResponse' {} a -> s {nextToken = a} :: ListAccountAssignmentCreationStatusResponse)++-- | The response's http status code.+listAccountAssignmentCreationStatusResponse_httpStatus :: Lens.Lens' ListAccountAssignmentCreationStatusResponse Prelude.Int+listAccountAssignmentCreationStatusResponse_httpStatus = Lens.lens (\ListAccountAssignmentCreationStatusResponse' {httpStatus} -> httpStatus) (\s@ListAccountAssignmentCreationStatusResponse' {} a -> s {httpStatus = a} :: ListAccountAssignmentCreationStatusResponse)++instance+ Prelude.NFData+ ListAccountAssignmentCreationStatusResponse+ where+ rnf ListAccountAssignmentCreationStatusResponse' {..} =+ Prelude.rnf accountAssignmentsCreationStatus+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListAccountAssignmentDeletionStatus.hs view
@@ -0,0 +1,298 @@+{-# 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.SSOAdmin.ListAccountAssignmentDeletionStatus+-- 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 status of the AWS account assignment deletion requests for a+-- specified IAM Identity Center instance.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListAccountAssignmentDeletionStatus+ ( -- * Creating a Request+ ListAccountAssignmentDeletionStatus (..),+ newListAccountAssignmentDeletionStatus,++ -- * Request Lenses+ listAccountAssignmentDeletionStatus_filter,+ listAccountAssignmentDeletionStatus_maxResults,+ listAccountAssignmentDeletionStatus_nextToken,+ listAccountAssignmentDeletionStatus_instanceArn,++ -- * Destructuring the Response+ ListAccountAssignmentDeletionStatusResponse (..),+ newListAccountAssignmentDeletionStatusResponse,++ -- * Response Lenses+ listAccountAssignmentDeletionStatusResponse_accountAssignmentsDeletionStatus,+ listAccountAssignmentDeletionStatusResponse_nextToken,+ listAccountAssignmentDeletionStatusResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListAccountAssignmentDeletionStatus' smart constructor.+data ListAccountAssignmentDeletionStatus = ListAccountAssignmentDeletionStatus'+ { -- | Filters results based on the passed attribute value.+ filter' :: Prelude.Maybe OperationStatusFilter,+ -- | The maximum number of results to display for the assignment.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAccountAssignmentDeletionStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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'', 'listAccountAssignmentDeletionStatus_filter' - Filters results based on the passed attribute value.+--+-- 'maxResults', 'listAccountAssignmentDeletionStatus_maxResults' - The maximum number of results to display for the assignment.+--+-- 'nextToken', 'listAccountAssignmentDeletionStatus_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'instanceArn', 'listAccountAssignmentDeletionStatus_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+newListAccountAssignmentDeletionStatus ::+ -- | 'instanceArn'+ Prelude.Text ->+ ListAccountAssignmentDeletionStatus+newListAccountAssignmentDeletionStatus pInstanceArn_ =+ ListAccountAssignmentDeletionStatus'+ { filter' =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ instanceArn = pInstanceArn_+ }++-- | Filters results based on the passed attribute value.+listAccountAssignmentDeletionStatus_filter :: Lens.Lens' ListAccountAssignmentDeletionStatus (Prelude.Maybe OperationStatusFilter)+listAccountAssignmentDeletionStatus_filter = Lens.lens (\ListAccountAssignmentDeletionStatus' {filter'} -> filter') (\s@ListAccountAssignmentDeletionStatus' {} a -> s {filter' = a} :: ListAccountAssignmentDeletionStatus)++-- | The maximum number of results to display for the assignment.+listAccountAssignmentDeletionStatus_maxResults :: Lens.Lens' ListAccountAssignmentDeletionStatus (Prelude.Maybe Prelude.Natural)+listAccountAssignmentDeletionStatus_maxResults = Lens.lens (\ListAccountAssignmentDeletionStatus' {maxResults} -> maxResults) (\s@ListAccountAssignmentDeletionStatus' {} a -> s {maxResults = a} :: ListAccountAssignmentDeletionStatus)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listAccountAssignmentDeletionStatus_nextToken :: Lens.Lens' ListAccountAssignmentDeletionStatus (Prelude.Maybe Prelude.Text)+listAccountAssignmentDeletionStatus_nextToken = Lens.lens (\ListAccountAssignmentDeletionStatus' {nextToken} -> nextToken) (\s@ListAccountAssignmentDeletionStatus' {} a -> s {nextToken = a} :: ListAccountAssignmentDeletionStatus)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listAccountAssignmentDeletionStatus_instanceArn :: Lens.Lens' ListAccountAssignmentDeletionStatus Prelude.Text+listAccountAssignmentDeletionStatus_instanceArn = Lens.lens (\ListAccountAssignmentDeletionStatus' {instanceArn} -> instanceArn) (\s@ListAccountAssignmentDeletionStatus' {} a -> s {instanceArn = a} :: ListAccountAssignmentDeletionStatus)++instance+ Core.AWSPager+ ListAccountAssignmentDeletionStatus+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAccountAssignmentDeletionStatusResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listAccountAssignmentDeletionStatusResponse_accountAssignmentsDeletionStatus+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAccountAssignmentDeletionStatus_nextToken+ Lens..~ rs+ Lens.^? listAccountAssignmentDeletionStatusResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ ListAccountAssignmentDeletionStatus+ where+ type+ AWSResponse ListAccountAssignmentDeletionStatus =+ ListAccountAssignmentDeletionStatusResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListAccountAssignmentDeletionStatusResponse'+ Prelude.<$> ( x+ Data..?> "AccountAssignmentsDeletionStatus"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListAccountAssignmentDeletionStatus+ where+ hashWithSalt+ _salt+ ListAccountAssignmentDeletionStatus' {..} =+ _salt+ `Prelude.hashWithSalt` filter'+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` instanceArn++instance+ Prelude.NFData+ ListAccountAssignmentDeletionStatus+ where+ rnf ListAccountAssignmentDeletionStatus' {..} =+ Prelude.rnf filter'+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf instanceArn++instance+ Data.ToHeaders+ ListAccountAssignmentDeletionStatus+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListAccountAssignmentDeletionStatus" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ ListAccountAssignmentDeletionStatus+ where+ toJSON ListAccountAssignmentDeletionStatus' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filter" Data..=) Prelude.<$> filter',+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("InstanceArn" Data..= instanceArn)+ ]+ )++instance+ Data.ToPath+ ListAccountAssignmentDeletionStatus+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ListAccountAssignmentDeletionStatus+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListAccountAssignmentDeletionStatusResponse' smart constructor.+data ListAccountAssignmentDeletionStatusResponse = ListAccountAssignmentDeletionStatusResponse'+ { -- | The status object for the account assignment deletion operation.+ accountAssignmentsDeletionStatus :: Prelude.Maybe [AccountAssignmentOperationStatusMetadata],+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: 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 'ListAccountAssignmentDeletionStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAssignmentsDeletionStatus', 'listAccountAssignmentDeletionStatusResponse_accountAssignmentsDeletionStatus' - The status object for the account assignment deletion operation.+--+-- 'nextToken', 'listAccountAssignmentDeletionStatusResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'httpStatus', 'listAccountAssignmentDeletionStatusResponse_httpStatus' - The response's http status code.+newListAccountAssignmentDeletionStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAccountAssignmentDeletionStatusResponse+newListAccountAssignmentDeletionStatusResponse+ pHttpStatus_ =+ ListAccountAssignmentDeletionStatusResponse'+ { accountAssignmentsDeletionStatus =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status object for the account assignment deletion operation.+listAccountAssignmentDeletionStatusResponse_accountAssignmentsDeletionStatus :: Lens.Lens' ListAccountAssignmentDeletionStatusResponse (Prelude.Maybe [AccountAssignmentOperationStatusMetadata])+listAccountAssignmentDeletionStatusResponse_accountAssignmentsDeletionStatus = Lens.lens (\ListAccountAssignmentDeletionStatusResponse' {accountAssignmentsDeletionStatus} -> accountAssignmentsDeletionStatus) (\s@ListAccountAssignmentDeletionStatusResponse' {} a -> s {accountAssignmentsDeletionStatus = a} :: ListAccountAssignmentDeletionStatusResponse) Prelude.. Lens.mapping Lens.coerced++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listAccountAssignmentDeletionStatusResponse_nextToken :: Lens.Lens' ListAccountAssignmentDeletionStatusResponse (Prelude.Maybe Prelude.Text)+listAccountAssignmentDeletionStatusResponse_nextToken = Lens.lens (\ListAccountAssignmentDeletionStatusResponse' {nextToken} -> nextToken) (\s@ListAccountAssignmentDeletionStatusResponse' {} a -> s {nextToken = a} :: ListAccountAssignmentDeletionStatusResponse)++-- | The response's http status code.+listAccountAssignmentDeletionStatusResponse_httpStatus :: Lens.Lens' ListAccountAssignmentDeletionStatusResponse Prelude.Int+listAccountAssignmentDeletionStatusResponse_httpStatus = Lens.lens (\ListAccountAssignmentDeletionStatusResponse' {httpStatus} -> httpStatus) (\s@ListAccountAssignmentDeletionStatusResponse' {} a -> s {httpStatus = a} :: ListAccountAssignmentDeletionStatusResponse)++instance+ Prelude.NFData+ ListAccountAssignmentDeletionStatusResponse+ where+ rnf ListAccountAssignmentDeletionStatusResponse' {..} =+ Prelude.rnf accountAssignmentsDeletionStatus+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListAccountAssignments.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.SSOAdmin.ListAccountAssignments+-- 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 assignee of the specified AWS account with the specified+-- permission set.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListAccountAssignments+ ( -- * Creating a Request+ ListAccountAssignments (..),+ newListAccountAssignments,++ -- * Request Lenses+ listAccountAssignments_maxResults,+ listAccountAssignments_nextToken,+ listAccountAssignments_instanceArn,+ listAccountAssignments_accountId,+ listAccountAssignments_permissionSetArn,++ -- * Destructuring the Response+ ListAccountAssignmentsResponse (..),+ newListAccountAssignmentsResponse,++ -- * Response Lenses+ listAccountAssignmentsResponse_accountAssignments,+ listAccountAssignmentsResponse_nextToken,+ listAccountAssignmentsResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListAccountAssignments' smart constructor.+data ListAccountAssignments = ListAccountAssignments'+ { -- | The maximum number of results to display for the assignment.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The identifier of the AWS account from which to list the assignments.+ accountId :: Prelude.Text,+ -- | The ARN of the permission set from which to list assignments.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAccountAssignments' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listAccountAssignments_maxResults' - The maximum number of results to display for the assignment.+--+-- 'nextToken', 'listAccountAssignments_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'instanceArn', 'listAccountAssignments_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'accountId', 'listAccountAssignments_accountId' - The identifier of the AWS account from which to list the assignments.+--+-- 'permissionSetArn', 'listAccountAssignments_permissionSetArn' - The ARN of the permission set from which to list assignments.+newListAccountAssignments ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'accountId'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ ListAccountAssignments+newListAccountAssignments+ pInstanceArn_+ pAccountId_+ pPermissionSetArn_ =+ ListAccountAssignments'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ instanceArn = pInstanceArn_,+ accountId = pAccountId_,+ permissionSetArn = pPermissionSetArn_+ }++-- | The maximum number of results to display for the assignment.+listAccountAssignments_maxResults :: Lens.Lens' ListAccountAssignments (Prelude.Maybe Prelude.Natural)+listAccountAssignments_maxResults = Lens.lens (\ListAccountAssignments' {maxResults} -> maxResults) (\s@ListAccountAssignments' {} a -> s {maxResults = a} :: ListAccountAssignments)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listAccountAssignments_nextToken :: Lens.Lens' ListAccountAssignments (Prelude.Maybe Prelude.Text)+listAccountAssignments_nextToken = Lens.lens (\ListAccountAssignments' {nextToken} -> nextToken) (\s@ListAccountAssignments' {} a -> s {nextToken = a} :: ListAccountAssignments)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listAccountAssignments_instanceArn :: Lens.Lens' ListAccountAssignments Prelude.Text+listAccountAssignments_instanceArn = Lens.lens (\ListAccountAssignments' {instanceArn} -> instanceArn) (\s@ListAccountAssignments' {} a -> s {instanceArn = a} :: ListAccountAssignments)++-- | The identifier of the AWS account from which to list the assignments.+listAccountAssignments_accountId :: Lens.Lens' ListAccountAssignments Prelude.Text+listAccountAssignments_accountId = Lens.lens (\ListAccountAssignments' {accountId} -> accountId) (\s@ListAccountAssignments' {} a -> s {accountId = a} :: ListAccountAssignments)++-- | The ARN of the permission set from which to list assignments.+listAccountAssignments_permissionSetArn :: Lens.Lens' ListAccountAssignments Prelude.Text+listAccountAssignments_permissionSetArn = Lens.lens (\ListAccountAssignments' {permissionSetArn} -> permissionSetArn) (\s@ListAccountAssignments' {} a -> s {permissionSetArn = a} :: ListAccountAssignments)++instance Core.AWSPager ListAccountAssignments where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAccountAssignmentsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listAccountAssignmentsResponse_accountAssignments+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAccountAssignments_nextToken+ Lens..~ rs+ Lens.^? listAccountAssignmentsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListAccountAssignments where+ type+ AWSResponse ListAccountAssignments =+ ListAccountAssignmentsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListAccountAssignmentsResponse'+ Prelude.<$> ( x+ Data..?> "AccountAssignments"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListAccountAssignments where+ hashWithSalt _salt ListAccountAssignments' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` accountId+ `Prelude.hashWithSalt` permissionSetArn++instance Prelude.NFData ListAccountAssignments where+ rnf ListAccountAssignments' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf accountId+ `Prelude.seq` Prelude.rnf permissionSetArn++instance Data.ToHeaders ListAccountAssignments where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListAccountAssignments" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListAccountAssignments where+ toJSON ListAccountAssignments' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just ("AccountId" Data..= accountId),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance Data.ToPath ListAccountAssignments where+ toPath = Prelude.const "/"++instance Data.ToQuery ListAccountAssignments where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListAccountAssignmentsResponse' smart constructor.+data ListAccountAssignmentsResponse = ListAccountAssignmentsResponse'+ { -- | The list of assignments that match the input AWS account and permission+ -- set.+ accountAssignments :: Prelude.Maybe [AccountAssignment],+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: 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 'ListAccountAssignmentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountAssignments', 'listAccountAssignmentsResponse_accountAssignments' - The list of assignments that match the input AWS account and permission+-- set.+--+-- 'nextToken', 'listAccountAssignmentsResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'httpStatus', 'listAccountAssignmentsResponse_httpStatus' - The response's http status code.+newListAccountAssignmentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAccountAssignmentsResponse+newListAccountAssignmentsResponse pHttpStatus_ =+ ListAccountAssignmentsResponse'+ { accountAssignments =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of assignments that match the input AWS account and permission+-- set.+listAccountAssignmentsResponse_accountAssignments :: Lens.Lens' ListAccountAssignmentsResponse (Prelude.Maybe [AccountAssignment])+listAccountAssignmentsResponse_accountAssignments = Lens.lens (\ListAccountAssignmentsResponse' {accountAssignments} -> accountAssignments) (\s@ListAccountAssignmentsResponse' {} a -> s {accountAssignments = a} :: ListAccountAssignmentsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listAccountAssignmentsResponse_nextToken :: Lens.Lens' ListAccountAssignmentsResponse (Prelude.Maybe Prelude.Text)+listAccountAssignmentsResponse_nextToken = Lens.lens (\ListAccountAssignmentsResponse' {nextToken} -> nextToken) (\s@ListAccountAssignmentsResponse' {} a -> s {nextToken = a} :: ListAccountAssignmentsResponse)++-- | The response's http status code.+listAccountAssignmentsResponse_httpStatus :: Lens.Lens' ListAccountAssignmentsResponse Prelude.Int+listAccountAssignmentsResponse_httpStatus = Lens.lens (\ListAccountAssignmentsResponse' {httpStatus} -> httpStatus) (\s@ListAccountAssignmentsResponse' {} a -> s {httpStatus = a} :: ListAccountAssignmentsResponse)++instance+ Prelude.NFData+ ListAccountAssignmentsResponse+ where+ rnf ListAccountAssignmentsResponse' {..} =+ Prelude.rnf accountAssignments+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListAccountsForProvisionedPermissionSet.hs view
@@ -0,0 +1,322 @@+{-# 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.SSOAdmin.ListAccountsForProvisionedPermissionSet+-- 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 AWS accounts where the specified permission set is+-- provisioned.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListAccountsForProvisionedPermissionSet+ ( -- * Creating a Request+ ListAccountsForProvisionedPermissionSet (..),+ newListAccountsForProvisionedPermissionSet,++ -- * Request Lenses+ listAccountsForProvisionedPermissionSet_maxResults,+ listAccountsForProvisionedPermissionSet_nextToken,+ listAccountsForProvisionedPermissionSet_provisioningStatus,+ listAccountsForProvisionedPermissionSet_instanceArn,+ listAccountsForProvisionedPermissionSet_permissionSetArn,++ -- * Destructuring the Response+ ListAccountsForProvisionedPermissionSetResponse (..),+ newListAccountsForProvisionedPermissionSetResponse,++ -- * Response Lenses+ listAccountsForProvisionedPermissionSetResponse_accountIds,+ listAccountsForProvisionedPermissionSetResponse_nextToken,+ listAccountsForProvisionedPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListAccountsForProvisionedPermissionSet' smart constructor.+data ListAccountsForProvisionedPermissionSet = ListAccountsForProvisionedPermissionSet'+ { -- | The maximum number of results to display for the PermissionSet.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The permission set provisioning status for an AWS account.+ provisioningStatus :: Prelude.Maybe ProvisioningStatus,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the PermissionSet from which the associated AWS accounts will+ -- be listed.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListAccountsForProvisionedPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listAccountsForProvisionedPermissionSet_maxResults' - The maximum number of results to display for the PermissionSet.+--+-- 'nextToken', 'listAccountsForProvisionedPermissionSet_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'provisioningStatus', 'listAccountsForProvisionedPermissionSet_provisioningStatus' - The permission set provisioning status for an AWS account.+--+-- 'instanceArn', 'listAccountsForProvisionedPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'listAccountsForProvisionedPermissionSet_permissionSetArn' - The ARN of the PermissionSet from which the associated AWS accounts will+-- be listed.+newListAccountsForProvisionedPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ ListAccountsForProvisionedPermissionSet+newListAccountsForProvisionedPermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ ListAccountsForProvisionedPermissionSet'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ provisioningStatus =+ Prelude.Nothing,+ instanceArn = pInstanceArn_,+ permissionSetArn =+ pPermissionSetArn_+ }++-- | The maximum number of results to display for the PermissionSet.+listAccountsForProvisionedPermissionSet_maxResults :: Lens.Lens' ListAccountsForProvisionedPermissionSet (Prelude.Maybe Prelude.Natural)+listAccountsForProvisionedPermissionSet_maxResults = Lens.lens (\ListAccountsForProvisionedPermissionSet' {maxResults} -> maxResults) (\s@ListAccountsForProvisionedPermissionSet' {} a -> s {maxResults = a} :: ListAccountsForProvisionedPermissionSet)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listAccountsForProvisionedPermissionSet_nextToken :: Lens.Lens' ListAccountsForProvisionedPermissionSet (Prelude.Maybe Prelude.Text)+listAccountsForProvisionedPermissionSet_nextToken = Lens.lens (\ListAccountsForProvisionedPermissionSet' {nextToken} -> nextToken) (\s@ListAccountsForProvisionedPermissionSet' {} a -> s {nextToken = a} :: ListAccountsForProvisionedPermissionSet)++-- | The permission set provisioning status for an AWS account.+listAccountsForProvisionedPermissionSet_provisioningStatus :: Lens.Lens' ListAccountsForProvisionedPermissionSet (Prelude.Maybe ProvisioningStatus)+listAccountsForProvisionedPermissionSet_provisioningStatus = Lens.lens (\ListAccountsForProvisionedPermissionSet' {provisioningStatus} -> provisioningStatus) (\s@ListAccountsForProvisionedPermissionSet' {} a -> s {provisioningStatus = a} :: ListAccountsForProvisionedPermissionSet)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listAccountsForProvisionedPermissionSet_instanceArn :: Lens.Lens' ListAccountsForProvisionedPermissionSet Prelude.Text+listAccountsForProvisionedPermissionSet_instanceArn = Lens.lens (\ListAccountsForProvisionedPermissionSet' {instanceArn} -> instanceArn) (\s@ListAccountsForProvisionedPermissionSet' {} a -> s {instanceArn = a} :: ListAccountsForProvisionedPermissionSet)++-- | The ARN of the PermissionSet from which the associated AWS accounts will+-- be listed.+listAccountsForProvisionedPermissionSet_permissionSetArn :: Lens.Lens' ListAccountsForProvisionedPermissionSet Prelude.Text+listAccountsForProvisionedPermissionSet_permissionSetArn = Lens.lens (\ListAccountsForProvisionedPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@ListAccountsForProvisionedPermissionSet' {} a -> s {permissionSetArn = a} :: ListAccountsForProvisionedPermissionSet)++instance+ Core.AWSPager+ ListAccountsForProvisionedPermissionSet+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listAccountsForProvisionedPermissionSetResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listAccountsForProvisionedPermissionSetResponse_accountIds+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listAccountsForProvisionedPermissionSet_nextToken+ Lens..~ rs+ Lens.^? listAccountsForProvisionedPermissionSetResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ ListAccountsForProvisionedPermissionSet+ where+ type+ AWSResponse+ ListAccountsForProvisionedPermissionSet =+ ListAccountsForProvisionedPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListAccountsForProvisionedPermissionSetResponse'+ Prelude.<$> (x Data..?> "AccountIds" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListAccountsForProvisionedPermissionSet+ where+ hashWithSalt+ _salt+ ListAccountsForProvisionedPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` provisioningStatus+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance+ Prelude.NFData+ ListAccountsForProvisionedPermissionSet+ where+ rnf ListAccountsForProvisionedPermissionSet' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf provisioningStatus+ `Prelude.seq` Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance+ Data.ToHeaders+ ListAccountsForProvisionedPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListAccountsForProvisionedPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ ListAccountsForProvisionedPermissionSet+ where+ toJSON ListAccountsForProvisionedPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ ("ProvisioningStatus" Data..=)+ Prelude.<$> provisioningStatus,+ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance+ Data.ToPath+ ListAccountsForProvisionedPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ListAccountsForProvisionedPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListAccountsForProvisionedPermissionSetResponse' smart constructor.+data ListAccountsForProvisionedPermissionSetResponse = ListAccountsForProvisionedPermissionSetResponse'+ { -- | The list of AWS @AccountIds@.+ accountIds :: Prelude.Maybe [Prelude.Text],+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: 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 'ListAccountsForProvisionedPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountIds', 'listAccountsForProvisionedPermissionSetResponse_accountIds' - The list of AWS @AccountIds@.+--+-- 'nextToken', 'listAccountsForProvisionedPermissionSetResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'httpStatus', 'listAccountsForProvisionedPermissionSetResponse_httpStatus' - The response's http status code.+newListAccountsForProvisionedPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListAccountsForProvisionedPermissionSetResponse+newListAccountsForProvisionedPermissionSetResponse+ pHttpStatus_ =+ ListAccountsForProvisionedPermissionSetResponse'+ { accountIds =+ Prelude.Nothing,+ nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of AWS @AccountIds@.+listAccountsForProvisionedPermissionSetResponse_accountIds :: Lens.Lens' ListAccountsForProvisionedPermissionSetResponse (Prelude.Maybe [Prelude.Text])+listAccountsForProvisionedPermissionSetResponse_accountIds = Lens.lens (\ListAccountsForProvisionedPermissionSetResponse' {accountIds} -> accountIds) (\s@ListAccountsForProvisionedPermissionSetResponse' {} a -> s {accountIds = a} :: ListAccountsForProvisionedPermissionSetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listAccountsForProvisionedPermissionSetResponse_nextToken :: Lens.Lens' ListAccountsForProvisionedPermissionSetResponse (Prelude.Maybe Prelude.Text)+listAccountsForProvisionedPermissionSetResponse_nextToken = Lens.lens (\ListAccountsForProvisionedPermissionSetResponse' {nextToken} -> nextToken) (\s@ListAccountsForProvisionedPermissionSetResponse' {} a -> s {nextToken = a} :: ListAccountsForProvisionedPermissionSetResponse)++-- | The response's http status code.+listAccountsForProvisionedPermissionSetResponse_httpStatus :: Lens.Lens' ListAccountsForProvisionedPermissionSetResponse Prelude.Int+listAccountsForProvisionedPermissionSetResponse_httpStatus = Lens.lens (\ListAccountsForProvisionedPermissionSetResponse' {httpStatus} -> httpStatus) (\s@ListAccountsForProvisionedPermissionSetResponse' {} a -> s {httpStatus = a} :: ListAccountsForProvisionedPermissionSetResponse)++instance+ Prelude.NFData+ ListAccountsForProvisionedPermissionSetResponse+ where+ rnf+ ListAccountsForProvisionedPermissionSetResponse' {..} =+ Prelude.rnf accountIds+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListCustomerManagedPolicyReferencesInPermissionSet.hs view
@@ -0,0 +1,309 @@+{-# 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.SSOAdmin.ListCustomerManagedPolicyReferencesInPermissionSet+-- 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 customer managed policies attached to a specified+-- PermissionSet.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListCustomerManagedPolicyReferencesInPermissionSet+ ( -- * Creating a Request+ ListCustomerManagedPolicyReferencesInPermissionSet (..),+ newListCustomerManagedPolicyReferencesInPermissionSet,++ -- * Request Lenses+ listCustomerManagedPolicyReferencesInPermissionSet_maxResults,+ listCustomerManagedPolicyReferencesInPermissionSet_nextToken,+ listCustomerManagedPolicyReferencesInPermissionSet_instanceArn,+ listCustomerManagedPolicyReferencesInPermissionSet_permissionSetArn,++ -- * Destructuring the Response+ ListCustomerManagedPolicyReferencesInPermissionSetResponse (..),+ newListCustomerManagedPolicyReferencesInPermissionSetResponse,++ -- * Response Lenses+ listCustomerManagedPolicyReferencesInPermissionSetResponse_customerManagedPolicyReferences,+ listCustomerManagedPolicyReferencesInPermissionSetResponse_nextToken,+ listCustomerManagedPolicyReferencesInPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListCustomerManagedPolicyReferencesInPermissionSet' smart constructor.+data ListCustomerManagedPolicyReferencesInPermissionSet = ListCustomerManagedPolicyReferencesInPermissionSet'+ { -- | The maximum number of results to display for the list call.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text,+ -- | The ARN of the @PermissionSet@.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListCustomerManagedPolicyReferencesInPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listCustomerManagedPolicyReferencesInPermissionSet_maxResults' - The maximum number of results to display for the list call.+--+-- 'nextToken', 'listCustomerManagedPolicyReferencesInPermissionSet_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'instanceArn', 'listCustomerManagedPolicyReferencesInPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+--+-- 'permissionSetArn', 'listCustomerManagedPolicyReferencesInPermissionSet_permissionSetArn' - The ARN of the @PermissionSet@.+newListCustomerManagedPolicyReferencesInPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ ListCustomerManagedPolicyReferencesInPermissionSet+newListCustomerManagedPolicyReferencesInPermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ ListCustomerManagedPolicyReferencesInPermissionSet'+ { maxResults =+ Prelude.Nothing,+ nextToken =+ Prelude.Nothing,+ instanceArn =+ pInstanceArn_,+ permissionSetArn =+ pPermissionSetArn_+ }++-- | The maximum number of results to display for the list call.+listCustomerManagedPolicyReferencesInPermissionSet_maxResults :: Lens.Lens' ListCustomerManagedPolicyReferencesInPermissionSet (Prelude.Maybe Prelude.Natural)+listCustomerManagedPolicyReferencesInPermissionSet_maxResults = Lens.lens (\ListCustomerManagedPolicyReferencesInPermissionSet' {maxResults} -> maxResults) (\s@ListCustomerManagedPolicyReferencesInPermissionSet' {} a -> s {maxResults = a} :: ListCustomerManagedPolicyReferencesInPermissionSet)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listCustomerManagedPolicyReferencesInPermissionSet_nextToken :: Lens.Lens' ListCustomerManagedPolicyReferencesInPermissionSet (Prelude.Maybe Prelude.Text)+listCustomerManagedPolicyReferencesInPermissionSet_nextToken = Lens.lens (\ListCustomerManagedPolicyReferencesInPermissionSet' {nextToken} -> nextToken) (\s@ListCustomerManagedPolicyReferencesInPermissionSet' {} a -> s {nextToken = a} :: ListCustomerManagedPolicyReferencesInPermissionSet)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+listCustomerManagedPolicyReferencesInPermissionSet_instanceArn :: Lens.Lens' ListCustomerManagedPolicyReferencesInPermissionSet Prelude.Text+listCustomerManagedPolicyReferencesInPermissionSet_instanceArn = Lens.lens (\ListCustomerManagedPolicyReferencesInPermissionSet' {instanceArn} -> instanceArn) (\s@ListCustomerManagedPolicyReferencesInPermissionSet' {} a -> s {instanceArn = a} :: ListCustomerManagedPolicyReferencesInPermissionSet)++-- | The ARN of the @PermissionSet@.+listCustomerManagedPolicyReferencesInPermissionSet_permissionSetArn :: Lens.Lens' ListCustomerManagedPolicyReferencesInPermissionSet Prelude.Text+listCustomerManagedPolicyReferencesInPermissionSet_permissionSetArn = Lens.lens (\ListCustomerManagedPolicyReferencesInPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@ListCustomerManagedPolicyReferencesInPermissionSet' {} a -> s {permissionSetArn = a} :: ListCustomerManagedPolicyReferencesInPermissionSet)++instance+ Core.AWSPager+ ListCustomerManagedPolicyReferencesInPermissionSet+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listCustomerManagedPolicyReferencesInPermissionSetResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listCustomerManagedPolicyReferencesInPermissionSetResponse_customerManagedPolicyReferences+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listCustomerManagedPolicyReferencesInPermissionSet_nextToken+ Lens..~ rs+ Lens.^? listCustomerManagedPolicyReferencesInPermissionSetResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ ListCustomerManagedPolicyReferencesInPermissionSet+ where+ type+ AWSResponse+ ListCustomerManagedPolicyReferencesInPermissionSet =+ ListCustomerManagedPolicyReferencesInPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListCustomerManagedPolicyReferencesInPermissionSetResponse'+ Prelude.<$> ( x+ Data..?> "CustomerManagedPolicyReferences"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListCustomerManagedPolicyReferencesInPermissionSet+ where+ hashWithSalt+ _salt+ ListCustomerManagedPolicyReferencesInPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance+ Prelude.NFData+ ListCustomerManagedPolicyReferencesInPermissionSet+ where+ rnf+ ListCustomerManagedPolicyReferencesInPermissionSet' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance+ Data.ToHeaders+ ListCustomerManagedPolicyReferencesInPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListCustomerManagedPolicyReferencesInPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ ListCustomerManagedPolicyReferencesInPermissionSet+ where+ toJSON+ ListCustomerManagedPolicyReferencesInPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance+ Data.ToPath+ ListCustomerManagedPolicyReferencesInPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ListCustomerManagedPolicyReferencesInPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListCustomerManagedPolicyReferencesInPermissionSetResponse' smart constructor.+data ListCustomerManagedPolicyReferencesInPermissionSetResponse = ListCustomerManagedPolicyReferencesInPermissionSetResponse'+ { -- | Specifies the names and paths of the customer managed policies that you+ -- have attached to your permission set.+ customerManagedPolicyReferences :: Prelude.Maybe [CustomerManagedPolicyReference],+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: 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 'ListCustomerManagedPolicyReferencesInPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'customerManagedPolicyReferences', 'listCustomerManagedPolicyReferencesInPermissionSetResponse_customerManagedPolicyReferences' - Specifies the names and paths of the customer managed policies that you+-- have attached to your permission set.+--+-- 'nextToken', 'listCustomerManagedPolicyReferencesInPermissionSetResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'httpStatus', 'listCustomerManagedPolicyReferencesInPermissionSetResponse_httpStatus' - The response's http status code.+newListCustomerManagedPolicyReferencesInPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListCustomerManagedPolicyReferencesInPermissionSetResponse+newListCustomerManagedPolicyReferencesInPermissionSetResponse+ pHttpStatus_ =+ ListCustomerManagedPolicyReferencesInPermissionSetResponse'+ { customerManagedPolicyReferences =+ Prelude.Nothing,+ nextToken =+ Prelude.Nothing,+ httpStatus =+ pHttpStatus_+ }++-- | Specifies the names and paths of the customer managed policies that you+-- have attached to your permission set.+listCustomerManagedPolicyReferencesInPermissionSetResponse_customerManagedPolicyReferences :: Lens.Lens' ListCustomerManagedPolicyReferencesInPermissionSetResponse (Prelude.Maybe [CustomerManagedPolicyReference])+listCustomerManagedPolicyReferencesInPermissionSetResponse_customerManagedPolicyReferences = Lens.lens (\ListCustomerManagedPolicyReferencesInPermissionSetResponse' {customerManagedPolicyReferences} -> customerManagedPolicyReferences) (\s@ListCustomerManagedPolicyReferencesInPermissionSetResponse' {} a -> s {customerManagedPolicyReferences = a} :: ListCustomerManagedPolicyReferencesInPermissionSetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listCustomerManagedPolicyReferencesInPermissionSetResponse_nextToken :: Lens.Lens' ListCustomerManagedPolicyReferencesInPermissionSetResponse (Prelude.Maybe Prelude.Text)+listCustomerManagedPolicyReferencesInPermissionSetResponse_nextToken = Lens.lens (\ListCustomerManagedPolicyReferencesInPermissionSetResponse' {nextToken} -> nextToken) (\s@ListCustomerManagedPolicyReferencesInPermissionSetResponse' {} a -> s {nextToken = a} :: ListCustomerManagedPolicyReferencesInPermissionSetResponse)++-- | The response's http status code.+listCustomerManagedPolicyReferencesInPermissionSetResponse_httpStatus :: Lens.Lens' ListCustomerManagedPolicyReferencesInPermissionSetResponse Prelude.Int+listCustomerManagedPolicyReferencesInPermissionSetResponse_httpStatus = Lens.lens (\ListCustomerManagedPolicyReferencesInPermissionSetResponse' {httpStatus} -> httpStatus) (\s@ListCustomerManagedPolicyReferencesInPermissionSetResponse' {} a -> s {httpStatus = a} :: ListCustomerManagedPolicyReferencesInPermissionSetResponse)++instance+ Prelude.NFData+ ListCustomerManagedPolicyReferencesInPermissionSetResponse+ where+ rnf+ ListCustomerManagedPolicyReferencesInPermissionSetResponse' {..} =+ Prelude.rnf customerManagedPolicyReferences+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListInstances.hs view
@@ -0,0 +1,225 @@+{-# 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.SSOAdmin.ListInstances+-- 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 Identity Center instances that the caller has access to.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListInstances+ ( -- * Creating a Request+ ListInstances (..),+ newListInstances,++ -- * Request Lenses+ listInstances_maxResults,+ listInstances_nextToken,++ -- * Destructuring the Response+ ListInstancesResponse (..),+ newListInstancesResponse,++ -- * Response Lenses+ listInstancesResponse_instances,+ listInstancesResponse_nextToken,+ listInstancesResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListInstances' smart constructor.+data ListInstances = ListInstances'+ { -- | The maximum number of results to display for the instance.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstances' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listInstances_maxResults' - The maximum number of results to display for the instance.+--+-- 'nextToken', 'listInstances_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+newListInstances ::+ ListInstances+newListInstances =+ ListInstances'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | The maximum number of results to display for the instance.+listInstances_maxResults :: Lens.Lens' ListInstances (Prelude.Maybe Prelude.Natural)+listInstances_maxResults = Lens.lens (\ListInstances' {maxResults} -> maxResults) (\s@ListInstances' {} a -> s {maxResults = a} :: ListInstances)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listInstances_nextToken :: Lens.Lens' ListInstances (Prelude.Maybe Prelude.Text)+listInstances_nextToken = Lens.lens (\ListInstances' {nextToken} -> nextToken) (\s@ListInstances' {} a -> s {nextToken = a} :: ListInstances)++instance Core.AWSPager ListInstances where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listInstancesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listInstancesResponse_instances+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listInstances_nextToken+ Lens..~ rs+ Lens.^? listInstancesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListInstances where+ type+ AWSResponse ListInstances =+ ListInstancesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListInstancesResponse'+ Prelude.<$> (x Data..?> "Instances" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListInstances where+ hashWithSalt _salt ListInstances' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListInstances where+ rnf ListInstances' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListInstances where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListInstances" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListInstances where+ toJSON ListInstances' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListInstances where+ toPath = Prelude.const "/"++instance Data.ToQuery ListInstances where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListInstancesResponse' smart constructor.+data ListInstancesResponse = ListInstancesResponse'+ { -- | Lists the IAM Identity Center instances that the caller has access to.+ instances :: Prelude.Maybe [InstanceMetadata],+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: 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 'ListInstancesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instances', 'listInstancesResponse_instances' - Lists the IAM Identity Center instances that the caller has access to.+--+-- 'nextToken', 'listInstancesResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'httpStatus', 'listInstancesResponse_httpStatus' - The response's http status code.+newListInstancesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListInstancesResponse+newListInstancesResponse pHttpStatus_ =+ ListInstancesResponse'+ { instances = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Lists the IAM Identity Center instances that the caller has access to.+listInstancesResponse_instances :: Lens.Lens' ListInstancesResponse (Prelude.Maybe [InstanceMetadata])+listInstancesResponse_instances = Lens.lens (\ListInstancesResponse' {instances} -> instances) (\s@ListInstancesResponse' {} a -> s {instances = a} :: ListInstancesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listInstancesResponse_nextToken :: Lens.Lens' ListInstancesResponse (Prelude.Maybe Prelude.Text)+listInstancesResponse_nextToken = Lens.lens (\ListInstancesResponse' {nextToken} -> nextToken) (\s@ListInstancesResponse' {} a -> s {nextToken = a} :: ListInstancesResponse)++-- | The response's http status code.+listInstancesResponse_httpStatus :: Lens.Lens' ListInstancesResponse Prelude.Int+listInstancesResponse_httpStatus = Lens.lens (\ListInstancesResponse' {httpStatus} -> httpStatus) (\s@ListInstancesResponse' {} a -> s {httpStatus = a} :: ListInstancesResponse)++instance Prelude.NFData ListInstancesResponse where+ rnf ListInstancesResponse' {..} =+ Prelude.rnf instances+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListManagedPoliciesInPermissionSet.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.SSOAdmin.ListManagedPoliciesInPermissionSet+-- 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 AWS managed policy that is attached to a specified permission+-- set.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListManagedPoliciesInPermissionSet+ ( -- * Creating a Request+ ListManagedPoliciesInPermissionSet (..),+ newListManagedPoliciesInPermissionSet,++ -- * Request Lenses+ listManagedPoliciesInPermissionSet_maxResults,+ listManagedPoliciesInPermissionSet_nextToken,+ listManagedPoliciesInPermissionSet_instanceArn,+ listManagedPoliciesInPermissionSet_permissionSetArn,++ -- * Destructuring the Response+ ListManagedPoliciesInPermissionSetResponse (..),+ newListManagedPoliciesInPermissionSetResponse,++ -- * Response Lenses+ listManagedPoliciesInPermissionSetResponse_attachedManagedPolicies,+ listManagedPoliciesInPermissionSetResponse_nextToken,+ listManagedPoliciesInPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListManagedPoliciesInPermissionSet' smart constructor.+data ListManagedPoliciesInPermissionSet = ListManagedPoliciesInPermissionSet'+ { -- | The maximum number of results to display for the PermissionSet.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the PermissionSet whose managed policies will be listed.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListManagedPoliciesInPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listManagedPoliciesInPermissionSet_maxResults' - The maximum number of results to display for the PermissionSet.+--+-- 'nextToken', 'listManagedPoliciesInPermissionSet_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'instanceArn', 'listManagedPoliciesInPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'listManagedPoliciesInPermissionSet_permissionSetArn' - The ARN of the PermissionSet whose managed policies will be listed.+newListManagedPoliciesInPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ ListManagedPoliciesInPermissionSet+newListManagedPoliciesInPermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ ListManagedPoliciesInPermissionSet'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ instanceArn = pInstanceArn_,+ permissionSetArn = pPermissionSetArn_+ }++-- | The maximum number of results to display for the PermissionSet.+listManagedPoliciesInPermissionSet_maxResults :: Lens.Lens' ListManagedPoliciesInPermissionSet (Prelude.Maybe Prelude.Natural)+listManagedPoliciesInPermissionSet_maxResults = Lens.lens (\ListManagedPoliciesInPermissionSet' {maxResults} -> maxResults) (\s@ListManagedPoliciesInPermissionSet' {} a -> s {maxResults = a} :: ListManagedPoliciesInPermissionSet)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listManagedPoliciesInPermissionSet_nextToken :: Lens.Lens' ListManagedPoliciesInPermissionSet (Prelude.Maybe Prelude.Text)+listManagedPoliciesInPermissionSet_nextToken = Lens.lens (\ListManagedPoliciesInPermissionSet' {nextToken} -> nextToken) (\s@ListManagedPoliciesInPermissionSet' {} a -> s {nextToken = a} :: ListManagedPoliciesInPermissionSet)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listManagedPoliciesInPermissionSet_instanceArn :: Lens.Lens' ListManagedPoliciesInPermissionSet Prelude.Text+listManagedPoliciesInPermissionSet_instanceArn = Lens.lens (\ListManagedPoliciesInPermissionSet' {instanceArn} -> instanceArn) (\s@ListManagedPoliciesInPermissionSet' {} a -> s {instanceArn = a} :: ListManagedPoliciesInPermissionSet)++-- | The ARN of the PermissionSet whose managed policies will be listed.+listManagedPoliciesInPermissionSet_permissionSetArn :: Lens.Lens' ListManagedPoliciesInPermissionSet Prelude.Text+listManagedPoliciesInPermissionSet_permissionSetArn = Lens.lens (\ListManagedPoliciesInPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@ListManagedPoliciesInPermissionSet' {} a -> s {permissionSetArn = a} :: ListManagedPoliciesInPermissionSet)++instance+ Core.AWSPager+ ListManagedPoliciesInPermissionSet+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listManagedPoliciesInPermissionSetResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listManagedPoliciesInPermissionSetResponse_attachedManagedPolicies+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listManagedPoliciesInPermissionSet_nextToken+ Lens..~ rs+ Lens.^? listManagedPoliciesInPermissionSetResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ ListManagedPoliciesInPermissionSet+ where+ type+ AWSResponse ListManagedPoliciesInPermissionSet =+ ListManagedPoliciesInPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListManagedPoliciesInPermissionSetResponse'+ Prelude.<$> ( x+ Data..?> "AttachedManagedPolicies"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListManagedPoliciesInPermissionSet+ where+ hashWithSalt+ _salt+ ListManagedPoliciesInPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance+ Prelude.NFData+ ListManagedPoliciesInPermissionSet+ where+ rnf ListManagedPoliciesInPermissionSet' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance+ Data.ToHeaders+ ListManagedPoliciesInPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListManagedPoliciesInPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ ListManagedPoliciesInPermissionSet+ where+ toJSON ListManagedPoliciesInPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance+ Data.ToPath+ ListManagedPoliciesInPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ListManagedPoliciesInPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListManagedPoliciesInPermissionSetResponse' smart constructor.+data ListManagedPoliciesInPermissionSetResponse = ListManagedPoliciesInPermissionSetResponse'+ { -- | An array of the AttachedManagedPolicy data type object.+ attachedManagedPolicies :: Prelude.Maybe [AttachedManagedPolicy],+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: 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 'ListManagedPoliciesInPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attachedManagedPolicies', 'listManagedPoliciesInPermissionSetResponse_attachedManagedPolicies' - An array of the AttachedManagedPolicy data type object.+--+-- 'nextToken', 'listManagedPoliciesInPermissionSetResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'httpStatus', 'listManagedPoliciesInPermissionSetResponse_httpStatus' - The response's http status code.+newListManagedPoliciesInPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListManagedPoliciesInPermissionSetResponse+newListManagedPoliciesInPermissionSetResponse+ pHttpStatus_ =+ ListManagedPoliciesInPermissionSetResponse'+ { attachedManagedPolicies =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | An array of the AttachedManagedPolicy data type object.+listManagedPoliciesInPermissionSetResponse_attachedManagedPolicies :: Lens.Lens' ListManagedPoliciesInPermissionSetResponse (Prelude.Maybe [AttachedManagedPolicy])+listManagedPoliciesInPermissionSetResponse_attachedManagedPolicies = Lens.lens (\ListManagedPoliciesInPermissionSetResponse' {attachedManagedPolicies} -> attachedManagedPolicies) (\s@ListManagedPoliciesInPermissionSetResponse' {} a -> s {attachedManagedPolicies = a} :: ListManagedPoliciesInPermissionSetResponse) Prelude.. Lens.mapping Lens.coerced++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listManagedPoliciesInPermissionSetResponse_nextToken :: Lens.Lens' ListManagedPoliciesInPermissionSetResponse (Prelude.Maybe Prelude.Text)+listManagedPoliciesInPermissionSetResponse_nextToken = Lens.lens (\ListManagedPoliciesInPermissionSetResponse' {nextToken} -> nextToken) (\s@ListManagedPoliciesInPermissionSetResponse' {} a -> s {nextToken = a} :: ListManagedPoliciesInPermissionSetResponse)++-- | The response's http status code.+listManagedPoliciesInPermissionSetResponse_httpStatus :: Lens.Lens' ListManagedPoliciesInPermissionSetResponse Prelude.Int+listManagedPoliciesInPermissionSetResponse_httpStatus = Lens.lens (\ListManagedPoliciesInPermissionSetResponse' {httpStatus} -> httpStatus) (\s@ListManagedPoliciesInPermissionSetResponse' {} a -> s {httpStatus = a} :: ListManagedPoliciesInPermissionSetResponse)++instance+ Prelude.NFData+ ListManagedPoliciesInPermissionSetResponse+ where+ rnf ListManagedPoliciesInPermissionSetResponse' {..} =+ Prelude.rnf attachedManagedPolicies+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListPermissionSetProvisioningStatus.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.SSOAdmin.ListPermissionSetProvisioningStatus+-- 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 status of the permission set provisioning requests for a+-- specified IAM Identity Center instance.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListPermissionSetProvisioningStatus+ ( -- * Creating a Request+ ListPermissionSetProvisioningStatus (..),+ newListPermissionSetProvisioningStatus,++ -- * Request Lenses+ listPermissionSetProvisioningStatus_filter,+ listPermissionSetProvisioningStatus_maxResults,+ listPermissionSetProvisioningStatus_nextToken,+ listPermissionSetProvisioningStatus_instanceArn,++ -- * Destructuring the Response+ ListPermissionSetProvisioningStatusResponse (..),+ newListPermissionSetProvisioningStatusResponse,++ -- * Response Lenses+ listPermissionSetProvisioningStatusResponse_nextToken,+ listPermissionSetProvisioningStatusResponse_permissionSetsProvisioningStatus,+ listPermissionSetProvisioningStatusResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListPermissionSetProvisioningStatus' smart constructor.+data ListPermissionSetProvisioningStatus = ListPermissionSetProvisioningStatus'+ { -- | Filters results based on the passed attribute value.+ filter' :: Prelude.Maybe OperationStatusFilter,+ -- | The maximum number of results to display for the assignment.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPermissionSetProvisioningStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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'', 'listPermissionSetProvisioningStatus_filter' - Filters results based on the passed attribute value.+--+-- 'maxResults', 'listPermissionSetProvisioningStatus_maxResults' - The maximum number of results to display for the assignment.+--+-- 'nextToken', 'listPermissionSetProvisioningStatus_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'instanceArn', 'listPermissionSetProvisioningStatus_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+newListPermissionSetProvisioningStatus ::+ -- | 'instanceArn'+ Prelude.Text ->+ ListPermissionSetProvisioningStatus+newListPermissionSetProvisioningStatus pInstanceArn_ =+ ListPermissionSetProvisioningStatus'+ { filter' =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ instanceArn = pInstanceArn_+ }++-- | Filters results based on the passed attribute value.+listPermissionSetProvisioningStatus_filter :: Lens.Lens' ListPermissionSetProvisioningStatus (Prelude.Maybe OperationStatusFilter)+listPermissionSetProvisioningStatus_filter = Lens.lens (\ListPermissionSetProvisioningStatus' {filter'} -> filter') (\s@ListPermissionSetProvisioningStatus' {} a -> s {filter' = a} :: ListPermissionSetProvisioningStatus)++-- | The maximum number of results to display for the assignment.+listPermissionSetProvisioningStatus_maxResults :: Lens.Lens' ListPermissionSetProvisioningStatus (Prelude.Maybe Prelude.Natural)+listPermissionSetProvisioningStatus_maxResults = Lens.lens (\ListPermissionSetProvisioningStatus' {maxResults} -> maxResults) (\s@ListPermissionSetProvisioningStatus' {} a -> s {maxResults = a} :: ListPermissionSetProvisioningStatus)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listPermissionSetProvisioningStatus_nextToken :: Lens.Lens' ListPermissionSetProvisioningStatus (Prelude.Maybe Prelude.Text)+listPermissionSetProvisioningStatus_nextToken = Lens.lens (\ListPermissionSetProvisioningStatus' {nextToken} -> nextToken) (\s@ListPermissionSetProvisioningStatus' {} a -> s {nextToken = a} :: ListPermissionSetProvisioningStatus)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listPermissionSetProvisioningStatus_instanceArn :: Lens.Lens' ListPermissionSetProvisioningStatus Prelude.Text+listPermissionSetProvisioningStatus_instanceArn = Lens.lens (\ListPermissionSetProvisioningStatus' {instanceArn} -> instanceArn) (\s@ListPermissionSetProvisioningStatus' {} a -> s {instanceArn = a} :: ListPermissionSetProvisioningStatus)++instance+ Core.AWSPager+ ListPermissionSetProvisioningStatus+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPermissionSetProvisioningStatusResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listPermissionSetProvisioningStatusResponse_permissionSetsProvisioningStatus+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPermissionSetProvisioningStatus_nextToken+ Lens..~ rs+ Lens.^? listPermissionSetProvisioningStatusResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ ListPermissionSetProvisioningStatus+ where+ type+ AWSResponse ListPermissionSetProvisioningStatus =+ ListPermissionSetProvisioningStatusResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPermissionSetProvisioningStatusResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "PermissionSetsProvisioningStatus"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListPermissionSetProvisioningStatus+ where+ hashWithSalt+ _salt+ ListPermissionSetProvisioningStatus' {..} =+ _salt+ `Prelude.hashWithSalt` filter'+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` instanceArn++instance+ Prelude.NFData+ ListPermissionSetProvisioningStatus+ where+ rnf ListPermissionSetProvisioningStatus' {..} =+ Prelude.rnf filter'+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf instanceArn++instance+ Data.ToHeaders+ ListPermissionSetProvisioningStatus+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListPermissionSetProvisioningStatus" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ ListPermissionSetProvisioningStatus+ where+ toJSON ListPermissionSetProvisioningStatus' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filter" Data..=) Prelude.<$> filter',+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("InstanceArn" Data..= instanceArn)+ ]+ )++instance+ Data.ToPath+ ListPermissionSetProvisioningStatus+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ListPermissionSetProvisioningStatus+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListPermissionSetProvisioningStatusResponse' smart constructor.+data ListPermissionSetProvisioningStatusResponse = ListPermissionSetProvisioningStatusResponse'+ { -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The status object for the permission set provisioning operation.+ permissionSetsProvisioningStatus :: Prelude.Maybe [PermissionSetProvisioningStatusMetadata],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPermissionSetProvisioningStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listPermissionSetProvisioningStatusResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'permissionSetsProvisioningStatus', 'listPermissionSetProvisioningStatusResponse_permissionSetsProvisioningStatus' - The status object for the permission set provisioning operation.+--+-- 'httpStatus', 'listPermissionSetProvisioningStatusResponse_httpStatus' - The response's http status code.+newListPermissionSetProvisioningStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPermissionSetProvisioningStatusResponse+newListPermissionSetProvisioningStatusResponse+ pHttpStatus_ =+ ListPermissionSetProvisioningStatusResponse'+ { nextToken =+ Prelude.Nothing,+ permissionSetsProvisioningStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listPermissionSetProvisioningStatusResponse_nextToken :: Lens.Lens' ListPermissionSetProvisioningStatusResponse (Prelude.Maybe Prelude.Text)+listPermissionSetProvisioningStatusResponse_nextToken = Lens.lens (\ListPermissionSetProvisioningStatusResponse' {nextToken} -> nextToken) (\s@ListPermissionSetProvisioningStatusResponse' {} a -> s {nextToken = a} :: ListPermissionSetProvisioningStatusResponse)++-- | The status object for the permission set provisioning operation.+listPermissionSetProvisioningStatusResponse_permissionSetsProvisioningStatus :: Lens.Lens' ListPermissionSetProvisioningStatusResponse (Prelude.Maybe [PermissionSetProvisioningStatusMetadata])+listPermissionSetProvisioningStatusResponse_permissionSetsProvisioningStatus = Lens.lens (\ListPermissionSetProvisioningStatusResponse' {permissionSetsProvisioningStatus} -> permissionSetsProvisioningStatus) (\s@ListPermissionSetProvisioningStatusResponse' {} a -> s {permissionSetsProvisioningStatus = a} :: ListPermissionSetProvisioningStatusResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPermissionSetProvisioningStatusResponse_httpStatus :: Lens.Lens' ListPermissionSetProvisioningStatusResponse Prelude.Int+listPermissionSetProvisioningStatusResponse_httpStatus = Lens.lens (\ListPermissionSetProvisioningStatusResponse' {httpStatus} -> httpStatus) (\s@ListPermissionSetProvisioningStatusResponse' {} a -> s {httpStatus = a} :: ListPermissionSetProvisioningStatusResponse)++instance+ Prelude.NFData+ ListPermissionSetProvisioningStatusResponse+ where+ rnf ListPermissionSetProvisioningStatusResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf permissionSetsProvisioningStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListPermissionSets.hs view
@@ -0,0 +1,250 @@+{-# 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.SSOAdmin.ListPermissionSets+-- 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 PermissionSets in an IAM Identity Center instance.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListPermissionSets+ ( -- * Creating a Request+ ListPermissionSets (..),+ newListPermissionSets,++ -- * Request Lenses+ listPermissionSets_maxResults,+ listPermissionSets_nextToken,+ listPermissionSets_instanceArn,++ -- * Destructuring the Response+ ListPermissionSetsResponse (..),+ newListPermissionSetsResponse,++ -- * Response Lenses+ listPermissionSetsResponse_nextToken,+ listPermissionSetsResponse_permissionSets,+ listPermissionSetsResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListPermissionSets' smart constructor.+data ListPermissionSets = ListPermissionSets'+ { -- | The maximum number of results to display for the assignment.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPermissionSets' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listPermissionSets_maxResults' - The maximum number of results to display for the assignment.+--+-- 'nextToken', 'listPermissionSets_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'instanceArn', 'listPermissionSets_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+newListPermissionSets ::+ -- | 'instanceArn'+ Prelude.Text ->+ ListPermissionSets+newListPermissionSets pInstanceArn_ =+ ListPermissionSets'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ instanceArn = pInstanceArn_+ }++-- | The maximum number of results to display for the assignment.+listPermissionSets_maxResults :: Lens.Lens' ListPermissionSets (Prelude.Maybe Prelude.Natural)+listPermissionSets_maxResults = Lens.lens (\ListPermissionSets' {maxResults} -> maxResults) (\s@ListPermissionSets' {} a -> s {maxResults = a} :: ListPermissionSets)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listPermissionSets_nextToken :: Lens.Lens' ListPermissionSets (Prelude.Maybe Prelude.Text)+listPermissionSets_nextToken = Lens.lens (\ListPermissionSets' {nextToken} -> nextToken) (\s@ListPermissionSets' {} a -> s {nextToken = a} :: ListPermissionSets)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listPermissionSets_instanceArn :: Lens.Lens' ListPermissionSets Prelude.Text+listPermissionSets_instanceArn = Lens.lens (\ListPermissionSets' {instanceArn} -> instanceArn) (\s@ListPermissionSets' {} a -> s {instanceArn = a} :: ListPermissionSets)++instance Core.AWSPager ListPermissionSets where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPermissionSetsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listPermissionSetsResponse_permissionSets+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPermissionSets_nextToken+ Lens..~ rs+ Lens.^? listPermissionSetsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListPermissionSets where+ type+ AWSResponse ListPermissionSets =+ ListPermissionSetsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPermissionSetsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "PermissionSets" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPermissionSets where+ hashWithSalt _salt ListPermissionSets' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` instanceArn++instance Prelude.NFData ListPermissionSets where+ rnf ListPermissionSets' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf instanceArn++instance Data.ToHeaders ListPermissionSets where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListPermissionSets" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListPermissionSets where+ toJSON ListPermissionSets' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("InstanceArn" Data..= instanceArn)+ ]+ )++instance Data.ToPath ListPermissionSets where+ toPath = Prelude.const "/"++instance Data.ToQuery ListPermissionSets where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListPermissionSetsResponse' smart constructor.+data ListPermissionSetsResponse = ListPermissionSetsResponse'+ { -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Defines the level of access on an AWS account.+ permissionSets :: 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 'ListPermissionSetsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listPermissionSetsResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'permissionSets', 'listPermissionSetsResponse_permissionSets' - Defines the level of access on an AWS account.+--+-- 'httpStatus', 'listPermissionSetsResponse_httpStatus' - The response's http status code.+newListPermissionSetsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPermissionSetsResponse+newListPermissionSetsResponse pHttpStatus_ =+ ListPermissionSetsResponse'+ { nextToken =+ Prelude.Nothing,+ permissionSets = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listPermissionSetsResponse_nextToken :: Lens.Lens' ListPermissionSetsResponse (Prelude.Maybe Prelude.Text)+listPermissionSetsResponse_nextToken = Lens.lens (\ListPermissionSetsResponse' {nextToken} -> nextToken) (\s@ListPermissionSetsResponse' {} a -> s {nextToken = a} :: ListPermissionSetsResponse)++-- | Defines the level of access on an AWS account.+listPermissionSetsResponse_permissionSets :: Lens.Lens' ListPermissionSetsResponse (Prelude.Maybe [Prelude.Text])+listPermissionSetsResponse_permissionSets = Lens.lens (\ListPermissionSetsResponse' {permissionSets} -> permissionSets) (\s@ListPermissionSetsResponse' {} a -> s {permissionSets = a} :: ListPermissionSetsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPermissionSetsResponse_httpStatus :: Lens.Lens' ListPermissionSetsResponse Prelude.Int+listPermissionSetsResponse_httpStatus = Lens.lens (\ListPermissionSetsResponse' {httpStatus} -> httpStatus) (\s@ListPermissionSetsResponse' {} a -> s {httpStatus = a} :: ListPermissionSetsResponse)++instance Prelude.NFData ListPermissionSetsResponse where+ rnf ListPermissionSetsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf permissionSets+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListPermissionSetsProvisionedToAccount.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.SSOAdmin.ListPermissionSetsProvisionedToAccount+-- 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 permission sets that are provisioned to a specified AWS+-- account.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListPermissionSetsProvisionedToAccount+ ( -- * Creating a Request+ ListPermissionSetsProvisionedToAccount (..),+ newListPermissionSetsProvisionedToAccount,++ -- * Request Lenses+ listPermissionSetsProvisionedToAccount_maxResults,+ listPermissionSetsProvisionedToAccount_nextToken,+ listPermissionSetsProvisionedToAccount_provisioningStatus,+ listPermissionSetsProvisionedToAccount_instanceArn,+ listPermissionSetsProvisionedToAccount_accountId,++ -- * Destructuring the Response+ ListPermissionSetsProvisionedToAccountResponse (..),+ newListPermissionSetsProvisionedToAccountResponse,++ -- * Response Lenses+ listPermissionSetsProvisionedToAccountResponse_nextToken,+ listPermissionSetsProvisionedToAccountResponse_permissionSets,+ listPermissionSetsProvisionedToAccountResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListPermissionSetsProvisionedToAccount' smart constructor.+data ListPermissionSetsProvisionedToAccount = ListPermissionSetsProvisionedToAccount'+ { -- | The maximum number of results to display for the assignment.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The status object for the permission set provisioning operation.+ provisioningStatus :: Prelude.Maybe ProvisioningStatus,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The identifier of the AWS account from which to list the assignments.+ accountId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPermissionSetsProvisionedToAccount' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listPermissionSetsProvisionedToAccount_maxResults' - The maximum number of results to display for the assignment.+--+-- 'nextToken', 'listPermissionSetsProvisionedToAccount_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'provisioningStatus', 'listPermissionSetsProvisionedToAccount_provisioningStatus' - The status object for the permission set provisioning operation.+--+-- 'instanceArn', 'listPermissionSetsProvisionedToAccount_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'accountId', 'listPermissionSetsProvisionedToAccount_accountId' - The identifier of the AWS account from which to list the assignments.+newListPermissionSetsProvisionedToAccount ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'accountId'+ Prelude.Text ->+ ListPermissionSetsProvisionedToAccount+newListPermissionSetsProvisionedToAccount+ pInstanceArn_+ pAccountId_ =+ ListPermissionSetsProvisionedToAccount'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ provisioningStatus =+ Prelude.Nothing,+ instanceArn = pInstanceArn_,+ accountId = pAccountId_+ }++-- | The maximum number of results to display for the assignment.+listPermissionSetsProvisionedToAccount_maxResults :: Lens.Lens' ListPermissionSetsProvisionedToAccount (Prelude.Maybe Prelude.Natural)+listPermissionSetsProvisionedToAccount_maxResults = Lens.lens (\ListPermissionSetsProvisionedToAccount' {maxResults} -> maxResults) (\s@ListPermissionSetsProvisionedToAccount' {} a -> s {maxResults = a} :: ListPermissionSetsProvisionedToAccount)++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listPermissionSetsProvisionedToAccount_nextToken :: Lens.Lens' ListPermissionSetsProvisionedToAccount (Prelude.Maybe Prelude.Text)+listPermissionSetsProvisionedToAccount_nextToken = Lens.lens (\ListPermissionSetsProvisionedToAccount' {nextToken} -> nextToken) (\s@ListPermissionSetsProvisionedToAccount' {} a -> s {nextToken = a} :: ListPermissionSetsProvisionedToAccount)++-- | The status object for the permission set provisioning operation.+listPermissionSetsProvisionedToAccount_provisioningStatus :: Lens.Lens' ListPermissionSetsProvisionedToAccount (Prelude.Maybe ProvisioningStatus)+listPermissionSetsProvisionedToAccount_provisioningStatus = Lens.lens (\ListPermissionSetsProvisionedToAccount' {provisioningStatus} -> provisioningStatus) (\s@ListPermissionSetsProvisionedToAccount' {} a -> s {provisioningStatus = a} :: ListPermissionSetsProvisionedToAccount)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listPermissionSetsProvisionedToAccount_instanceArn :: Lens.Lens' ListPermissionSetsProvisionedToAccount Prelude.Text+listPermissionSetsProvisionedToAccount_instanceArn = Lens.lens (\ListPermissionSetsProvisionedToAccount' {instanceArn} -> instanceArn) (\s@ListPermissionSetsProvisionedToAccount' {} a -> s {instanceArn = a} :: ListPermissionSetsProvisionedToAccount)++-- | The identifier of the AWS account from which to list the assignments.+listPermissionSetsProvisionedToAccount_accountId :: Lens.Lens' ListPermissionSetsProvisionedToAccount Prelude.Text+listPermissionSetsProvisionedToAccount_accountId = Lens.lens (\ListPermissionSetsProvisionedToAccount' {accountId} -> accountId) (\s@ListPermissionSetsProvisionedToAccount' {} a -> s {accountId = a} :: ListPermissionSetsProvisionedToAccount)++instance+ Core.AWSPager+ ListPermissionSetsProvisionedToAccount+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listPermissionSetsProvisionedToAccountResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listPermissionSetsProvisionedToAccountResponse_permissionSets+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listPermissionSetsProvisionedToAccount_nextToken+ Lens..~ rs+ Lens.^? listPermissionSetsProvisionedToAccountResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ ListPermissionSetsProvisionedToAccount+ where+ type+ AWSResponse+ ListPermissionSetsProvisionedToAccount =+ ListPermissionSetsProvisionedToAccountResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPermissionSetsProvisionedToAccountResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "PermissionSets" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ ListPermissionSetsProvisionedToAccount+ where+ hashWithSalt+ _salt+ ListPermissionSetsProvisionedToAccount' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` provisioningStatus+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` accountId++instance+ Prelude.NFData+ ListPermissionSetsProvisionedToAccount+ where+ rnf ListPermissionSetsProvisionedToAccount' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf provisioningStatus+ `Prelude.seq` Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf accountId++instance+ Data.ToHeaders+ ListPermissionSetsProvisionedToAccount+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListPermissionSetsProvisionedToAccount" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ ListPermissionSetsProvisionedToAccount+ where+ toJSON ListPermissionSetsProvisionedToAccount' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ ("ProvisioningStatus" Data..=)+ Prelude.<$> provisioningStatus,+ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just ("AccountId" Data..= accountId)+ ]+ )++instance+ Data.ToPath+ ListPermissionSetsProvisionedToAccount+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ ListPermissionSetsProvisionedToAccount+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListPermissionSetsProvisionedToAccountResponse' smart constructor.+data ListPermissionSetsProvisionedToAccountResponse = ListPermissionSetsProvisionedToAccountResponse'+ { -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Defines the level of access that an AWS account has.+ permissionSets :: 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 'ListPermissionSetsProvisionedToAccountResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listPermissionSetsProvisionedToAccountResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'permissionSets', 'listPermissionSetsProvisionedToAccountResponse_permissionSets' - Defines the level of access that an AWS account has.+--+-- 'httpStatus', 'listPermissionSetsProvisionedToAccountResponse_httpStatus' - The response's http status code.+newListPermissionSetsProvisionedToAccountResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPermissionSetsProvisionedToAccountResponse+newListPermissionSetsProvisionedToAccountResponse+ pHttpStatus_ =+ ListPermissionSetsProvisionedToAccountResponse'+ { nextToken =+ Prelude.Nothing,+ permissionSets =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listPermissionSetsProvisionedToAccountResponse_nextToken :: Lens.Lens' ListPermissionSetsProvisionedToAccountResponse (Prelude.Maybe Prelude.Text)+listPermissionSetsProvisionedToAccountResponse_nextToken = Lens.lens (\ListPermissionSetsProvisionedToAccountResponse' {nextToken} -> nextToken) (\s@ListPermissionSetsProvisionedToAccountResponse' {} a -> s {nextToken = a} :: ListPermissionSetsProvisionedToAccountResponse)++-- | Defines the level of access that an AWS account has.+listPermissionSetsProvisionedToAccountResponse_permissionSets :: Lens.Lens' ListPermissionSetsProvisionedToAccountResponse (Prelude.Maybe [Prelude.Text])+listPermissionSetsProvisionedToAccountResponse_permissionSets = Lens.lens (\ListPermissionSetsProvisionedToAccountResponse' {permissionSets} -> permissionSets) (\s@ListPermissionSetsProvisionedToAccountResponse' {} a -> s {permissionSets = a} :: ListPermissionSetsProvisionedToAccountResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listPermissionSetsProvisionedToAccountResponse_httpStatus :: Lens.Lens' ListPermissionSetsProvisionedToAccountResponse Prelude.Int+listPermissionSetsProvisionedToAccountResponse_httpStatus = Lens.lens (\ListPermissionSetsProvisionedToAccountResponse' {httpStatus} -> httpStatus) (\s@ListPermissionSetsProvisionedToAccountResponse' {} a -> s {httpStatus = a} :: ListPermissionSetsProvisionedToAccountResponse)++instance+ Prelude.NFData+ ListPermissionSetsProvisionedToAccountResponse+ where+ rnf+ ListPermissionSetsProvisionedToAccountResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf permissionSets+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ListTagsForResource.hs view
@@ -0,0 +1,252 @@+{-# 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.SSOAdmin.ListTagsForResource+-- 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 a specified resource.+--+-- This operation returns paginated results.+module Amazonka.SSOAdmin.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_nextToken,+ listTagsForResource_instanceArn,+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_nextToken,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the resource with the tags to be listed.+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listTagsForResource_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'instanceArn', 'listTagsForResource_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'resourceArn', 'listTagsForResource_resourceArn' - The ARN of the resource with the tags to be listed.+newListTagsForResource ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pInstanceArn_ pResourceArn_ =+ ListTagsForResource'+ { nextToken = Prelude.Nothing,+ instanceArn = pInstanceArn_,+ resourceArn = pResourceArn_+ }++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listTagsForResource_nextToken :: Lens.Lens' ListTagsForResource (Prelude.Maybe Prelude.Text)+listTagsForResource_nextToken = Lens.lens (\ListTagsForResource' {nextToken} -> nextToken) (\s@ListTagsForResource' {} a -> s {nextToken = a} :: ListTagsForResource)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+listTagsForResource_instanceArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_instanceArn = Lens.lens (\ListTagsForResource' {instanceArn} -> instanceArn) (\s@ListTagsForResource' {} a -> s {instanceArn = a} :: ListTagsForResource)++-- | The ARN of the resource with the tags to be listed.+listTagsForResource_resourceArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceArn = Lens.lens (\ListTagsForResource' {resourceArn} -> resourceArn) (\s@ListTagsForResource' {} a -> s {resourceArn = a} :: ListTagsForResource)++instance Core.AWSPager ListTagsForResource where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listTagsForResourceResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listTagsForResourceResponse_tags+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listTagsForResource_nextToken+ Lens..~ rs+ Lens.^? listTagsForResourceResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf resourceArn++instance Data.ToHeaders ListTagsForResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ListTagsForResource" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListTagsForResource where+ toJSON ListTagsForResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just ("ResourceArn" Data..= resourceArn)+ ]+ )++instance Data.ToPath ListTagsForResource where+ toPath = Prelude.const "/"++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | The pagination token for the list API. Initially the value is null. Use+ -- the output of previous API calls to make subsequent calls.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A set of key-value pairs that are used to manage the resource.+ 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 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listTagsForResourceResponse_nextToken' - The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+--+-- 'tags', 'listTagsForResourceResponse_tags' - A set of key-value pairs that are used to manage the resource.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { nextToken =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The pagination token for the list API. Initially the value is null. Use+-- the output of previous API calls to make subsequent calls.+listTagsForResourceResponse_nextToken :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe Prelude.Text)+listTagsForResourceResponse_nextToken = Lens.lens (\ListTagsForResourceResponse' {nextToken} -> nextToken) (\s@ListTagsForResourceResponse' {} a -> s {nextToken = a} :: ListTagsForResourceResponse)++-- | A set of key-value pairs that are used to manage the resource.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe [Tag])+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/ProvisionPermissionSet.hs view
@@ -0,0 +1,236 @@+{-# 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.SSOAdmin.ProvisionPermissionSet+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- The process by which a specified permission set is provisioned to the+-- specified target.+module Amazonka.SSOAdmin.ProvisionPermissionSet+ ( -- * Creating a Request+ ProvisionPermissionSet (..),+ newProvisionPermissionSet,++ -- * Request Lenses+ provisionPermissionSet_targetId,+ provisionPermissionSet_instanceArn,+ provisionPermissionSet_permissionSetArn,+ provisionPermissionSet_targetType,++ -- * Destructuring the Response+ ProvisionPermissionSetResponse (..),+ newProvisionPermissionSetResponse,++ -- * Response Lenses+ provisionPermissionSetResponse_permissionSetProvisioningStatus,+ provisionPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newProvisionPermissionSet' smart constructor.+data ProvisionPermissionSet = ProvisionPermissionSet'+ { -- | TargetID is an AWS account identifier, typically a 10-12 digit string+ -- (For example, 123456789012).+ targetId :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the permission set.+ permissionSetArn :: Prelude.Text,+ -- | The entity type for which the assignment will be created.+ targetType :: ProvisionTargetType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ProvisionPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'targetId', 'provisionPermissionSet_targetId' - TargetID is an AWS account identifier, typically a 10-12 digit string+-- (For example, 123456789012).+--+-- 'instanceArn', 'provisionPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'provisionPermissionSet_permissionSetArn' - The ARN of the permission set.+--+-- 'targetType', 'provisionPermissionSet_targetType' - The entity type for which the assignment will be created.+newProvisionPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'targetType'+ ProvisionTargetType ->+ ProvisionPermissionSet+newProvisionPermissionSet+ pInstanceArn_+ pPermissionSetArn_+ pTargetType_ =+ ProvisionPermissionSet'+ { targetId = Prelude.Nothing,+ instanceArn = pInstanceArn_,+ permissionSetArn = pPermissionSetArn_,+ targetType = pTargetType_+ }++-- | TargetID is an AWS account identifier, typically a 10-12 digit string+-- (For example, 123456789012).+provisionPermissionSet_targetId :: Lens.Lens' ProvisionPermissionSet (Prelude.Maybe Prelude.Text)+provisionPermissionSet_targetId = Lens.lens (\ProvisionPermissionSet' {targetId} -> targetId) (\s@ProvisionPermissionSet' {} a -> s {targetId = a} :: ProvisionPermissionSet)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+provisionPermissionSet_instanceArn :: Lens.Lens' ProvisionPermissionSet Prelude.Text+provisionPermissionSet_instanceArn = Lens.lens (\ProvisionPermissionSet' {instanceArn} -> instanceArn) (\s@ProvisionPermissionSet' {} a -> s {instanceArn = a} :: ProvisionPermissionSet)++-- | The ARN of the permission set.+provisionPermissionSet_permissionSetArn :: Lens.Lens' ProvisionPermissionSet Prelude.Text+provisionPermissionSet_permissionSetArn = Lens.lens (\ProvisionPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@ProvisionPermissionSet' {} a -> s {permissionSetArn = a} :: ProvisionPermissionSet)++-- | The entity type for which the assignment will be created.+provisionPermissionSet_targetType :: Lens.Lens' ProvisionPermissionSet ProvisionTargetType+provisionPermissionSet_targetType = Lens.lens (\ProvisionPermissionSet' {targetType} -> targetType) (\s@ProvisionPermissionSet' {} a -> s {targetType = a} :: ProvisionPermissionSet)++instance Core.AWSRequest ProvisionPermissionSet where+ type+ AWSResponse ProvisionPermissionSet =+ ProvisionPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ProvisionPermissionSetResponse'+ Prelude.<$> (x Data..?> "PermissionSetProvisioningStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ProvisionPermissionSet where+ hashWithSalt _salt ProvisionPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` targetId+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` targetType++instance Prelude.NFData ProvisionPermissionSet where+ rnf ProvisionPermissionSet' {..} =+ Prelude.rnf targetId+ `Prelude.seq` Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf targetType++instance Data.ToHeaders ProvisionPermissionSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.ProvisionPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ProvisionPermissionSet where+ toJSON ProvisionPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("TargetId" Data..=) Prelude.<$> targetId,+ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just ("TargetType" Data..= targetType)+ ]+ )++instance Data.ToPath ProvisionPermissionSet where+ toPath = Prelude.const "/"++instance Data.ToQuery ProvisionPermissionSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newProvisionPermissionSetResponse' smart constructor.+data ProvisionPermissionSetResponse = ProvisionPermissionSetResponse'+ { -- | The status object for the permission set provisioning operation.+ permissionSetProvisioningStatus :: Prelude.Maybe PermissionSetProvisioningStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ProvisionPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'permissionSetProvisioningStatus', 'provisionPermissionSetResponse_permissionSetProvisioningStatus' - The status object for the permission set provisioning operation.+--+-- 'httpStatus', 'provisionPermissionSetResponse_httpStatus' - The response's http status code.+newProvisionPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ProvisionPermissionSetResponse+newProvisionPermissionSetResponse pHttpStatus_ =+ ProvisionPermissionSetResponse'+ { permissionSetProvisioningStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status object for the permission set provisioning operation.+provisionPermissionSetResponse_permissionSetProvisioningStatus :: Lens.Lens' ProvisionPermissionSetResponse (Prelude.Maybe PermissionSetProvisioningStatus)+provisionPermissionSetResponse_permissionSetProvisioningStatus = Lens.lens (\ProvisionPermissionSetResponse' {permissionSetProvisioningStatus} -> permissionSetProvisioningStatus) (\s@ProvisionPermissionSetResponse' {} a -> s {permissionSetProvisioningStatus = a} :: ProvisionPermissionSetResponse)++-- | The response's http status code.+provisionPermissionSetResponse_httpStatus :: Lens.Lens' ProvisionPermissionSetResponse Prelude.Int+provisionPermissionSetResponse_httpStatus = Lens.lens (\ProvisionPermissionSetResponse' {httpStatus} -> httpStatus) (\s@ProvisionPermissionSetResponse' {} a -> s {httpStatus = a} :: ProvisionPermissionSetResponse)++instance+ Prelude.NFData+ ProvisionPermissionSetResponse+ where+ rnf ProvisionPermissionSetResponse' {..} =+ Prelude.rnf permissionSetProvisioningStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/PutInlinePolicyToPermissionSet.hs view
@@ -0,0 +1,228 @@+{-# 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.SSOAdmin.PutInlinePolicyToPermissionSet+-- 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 an inline policy to a permission set.+--+-- If the permission set is already referenced by one or more account+-- assignments, you will need to call @ @@ProvisionPermissionSet@@ @ after+-- this action to apply the corresponding IAM policy updates to all+-- assigned accounts.+module Amazonka.SSOAdmin.PutInlinePolicyToPermissionSet+ ( -- * Creating a Request+ PutInlinePolicyToPermissionSet (..),+ newPutInlinePolicyToPermissionSet,++ -- * Request Lenses+ putInlinePolicyToPermissionSet_instanceArn,+ putInlinePolicyToPermissionSet_permissionSetArn,+ putInlinePolicyToPermissionSet_inlinePolicy,++ -- * Destructuring the Response+ PutInlinePolicyToPermissionSetResponse (..),+ newPutInlinePolicyToPermissionSetResponse,++ -- * Response Lenses+ putInlinePolicyToPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newPutInlinePolicyToPermissionSet' smart constructor.+data PutInlinePolicyToPermissionSet = PutInlinePolicyToPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the permission set.+ permissionSetArn :: Prelude.Text,+ -- | The inline policy to attach to a PermissionSet.+ inlinePolicy :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutInlinePolicyToPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'putInlinePolicyToPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'putInlinePolicyToPermissionSet_permissionSetArn' - The ARN of the permission set.+--+-- 'inlinePolicy', 'putInlinePolicyToPermissionSet_inlinePolicy' - The inline policy to attach to a PermissionSet.+newPutInlinePolicyToPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'inlinePolicy'+ Prelude.Text ->+ PutInlinePolicyToPermissionSet+newPutInlinePolicyToPermissionSet+ pInstanceArn_+ pPermissionSetArn_+ pInlinePolicy_ =+ PutInlinePolicyToPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn = pPermissionSetArn_,+ inlinePolicy = pInlinePolicy_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+putInlinePolicyToPermissionSet_instanceArn :: Lens.Lens' PutInlinePolicyToPermissionSet Prelude.Text+putInlinePolicyToPermissionSet_instanceArn = Lens.lens (\PutInlinePolicyToPermissionSet' {instanceArn} -> instanceArn) (\s@PutInlinePolicyToPermissionSet' {} a -> s {instanceArn = a} :: PutInlinePolicyToPermissionSet)++-- | The ARN of the permission set.+putInlinePolicyToPermissionSet_permissionSetArn :: Lens.Lens' PutInlinePolicyToPermissionSet Prelude.Text+putInlinePolicyToPermissionSet_permissionSetArn = Lens.lens (\PutInlinePolicyToPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@PutInlinePolicyToPermissionSet' {} a -> s {permissionSetArn = a} :: PutInlinePolicyToPermissionSet)++-- | The inline policy to attach to a PermissionSet.+putInlinePolicyToPermissionSet_inlinePolicy :: Lens.Lens' PutInlinePolicyToPermissionSet Prelude.Text+putInlinePolicyToPermissionSet_inlinePolicy = Lens.lens (\PutInlinePolicyToPermissionSet' {inlinePolicy} -> inlinePolicy) (\s@PutInlinePolicyToPermissionSet' {} a -> s {inlinePolicy = a} :: PutInlinePolicyToPermissionSet)++instance+ Core.AWSRequest+ PutInlinePolicyToPermissionSet+ where+ type+ AWSResponse PutInlinePolicyToPermissionSet =+ PutInlinePolicyToPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ PutInlinePolicyToPermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ PutInlinePolicyToPermissionSet+ where+ hashWithSalt+ _salt+ PutInlinePolicyToPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` inlinePolicy++instance+ Prelude.NFData+ PutInlinePolicyToPermissionSet+ where+ rnf PutInlinePolicyToPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf inlinePolicy++instance+ Data.ToHeaders+ PutInlinePolicyToPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.PutInlinePolicyToPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutInlinePolicyToPermissionSet where+ toJSON PutInlinePolicyToPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just ("InlinePolicy" Data..= inlinePolicy)+ ]+ )++instance Data.ToPath PutInlinePolicyToPermissionSet where+ toPath = Prelude.const "/"++instance Data.ToQuery PutInlinePolicyToPermissionSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newPutInlinePolicyToPermissionSetResponse' smart constructor.+data PutInlinePolicyToPermissionSetResponse = PutInlinePolicyToPermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutInlinePolicyToPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'putInlinePolicyToPermissionSetResponse_httpStatus' - The response's http status code.+newPutInlinePolicyToPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PutInlinePolicyToPermissionSetResponse+newPutInlinePolicyToPermissionSetResponse+ pHttpStatus_ =+ PutInlinePolicyToPermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+putInlinePolicyToPermissionSetResponse_httpStatus :: Lens.Lens' PutInlinePolicyToPermissionSetResponse Prelude.Int+putInlinePolicyToPermissionSetResponse_httpStatus = Lens.lens (\PutInlinePolicyToPermissionSetResponse' {httpStatus} -> httpStatus) (\s@PutInlinePolicyToPermissionSetResponse' {} a -> s {httpStatus = a} :: PutInlinePolicyToPermissionSetResponse)++instance+ Prelude.NFData+ PutInlinePolicyToPermissionSetResponse+ where+ rnf PutInlinePolicyToPermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/PutPermissionsBoundaryToPermissionSet.hs view
@@ -0,0 +1,232 @@+{-# 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.SSOAdmin.PutPermissionsBoundaryToPermissionSet+-- 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 an AWS managed or customer managed policy to the specified+-- PermissionSet as a permissions boundary.+module Amazonka.SSOAdmin.PutPermissionsBoundaryToPermissionSet+ ( -- * Creating a Request+ PutPermissionsBoundaryToPermissionSet (..),+ newPutPermissionsBoundaryToPermissionSet,++ -- * Request Lenses+ putPermissionsBoundaryToPermissionSet_instanceArn,+ putPermissionsBoundaryToPermissionSet_permissionSetArn,+ putPermissionsBoundaryToPermissionSet_permissionsBoundary,++ -- * Destructuring the Response+ PutPermissionsBoundaryToPermissionSetResponse (..),+ newPutPermissionsBoundaryToPermissionSetResponse,++ -- * Response Lenses+ putPermissionsBoundaryToPermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newPutPermissionsBoundaryToPermissionSet' smart constructor.+data PutPermissionsBoundaryToPermissionSet = PutPermissionsBoundaryToPermissionSet'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text,+ -- | The ARN of the @PermissionSet@.+ permissionSetArn :: Prelude.Text,+ -- | The permissions boundary that you want to attach to a @PermissionSet@.+ permissionsBoundary :: PermissionsBoundary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutPermissionsBoundaryToPermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'putPermissionsBoundaryToPermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+--+-- 'permissionSetArn', 'putPermissionsBoundaryToPermissionSet_permissionSetArn' - The ARN of the @PermissionSet@.+--+-- 'permissionsBoundary', 'putPermissionsBoundaryToPermissionSet_permissionsBoundary' - The permissions boundary that you want to attach to a @PermissionSet@.+newPutPermissionsBoundaryToPermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ -- | 'permissionsBoundary'+ PermissionsBoundary ->+ PutPermissionsBoundaryToPermissionSet+newPutPermissionsBoundaryToPermissionSet+ pInstanceArn_+ pPermissionSetArn_+ pPermissionsBoundary_ =+ PutPermissionsBoundaryToPermissionSet'+ { instanceArn =+ pInstanceArn_,+ permissionSetArn =+ pPermissionSetArn_,+ permissionsBoundary =+ pPermissionsBoundary_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+putPermissionsBoundaryToPermissionSet_instanceArn :: Lens.Lens' PutPermissionsBoundaryToPermissionSet Prelude.Text+putPermissionsBoundaryToPermissionSet_instanceArn = Lens.lens (\PutPermissionsBoundaryToPermissionSet' {instanceArn} -> instanceArn) (\s@PutPermissionsBoundaryToPermissionSet' {} a -> s {instanceArn = a} :: PutPermissionsBoundaryToPermissionSet)++-- | The ARN of the @PermissionSet@.+putPermissionsBoundaryToPermissionSet_permissionSetArn :: Lens.Lens' PutPermissionsBoundaryToPermissionSet Prelude.Text+putPermissionsBoundaryToPermissionSet_permissionSetArn = Lens.lens (\PutPermissionsBoundaryToPermissionSet' {permissionSetArn} -> permissionSetArn) (\s@PutPermissionsBoundaryToPermissionSet' {} a -> s {permissionSetArn = a} :: PutPermissionsBoundaryToPermissionSet)++-- | The permissions boundary that you want to attach to a @PermissionSet@.+putPermissionsBoundaryToPermissionSet_permissionsBoundary :: Lens.Lens' PutPermissionsBoundaryToPermissionSet PermissionsBoundary+putPermissionsBoundaryToPermissionSet_permissionsBoundary = Lens.lens (\PutPermissionsBoundaryToPermissionSet' {permissionsBoundary} -> permissionsBoundary) (\s@PutPermissionsBoundaryToPermissionSet' {} a -> s {permissionsBoundary = a} :: PutPermissionsBoundaryToPermissionSet)++instance+ Core.AWSRequest+ PutPermissionsBoundaryToPermissionSet+ where+ type+ AWSResponse+ PutPermissionsBoundaryToPermissionSet =+ PutPermissionsBoundaryToPermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ PutPermissionsBoundaryToPermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ PutPermissionsBoundaryToPermissionSet+ where+ hashWithSalt+ _salt+ PutPermissionsBoundaryToPermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` permissionsBoundary++instance+ Prelude.NFData+ PutPermissionsBoundaryToPermissionSet+ where+ rnf PutPermissionsBoundaryToPermissionSet' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf permissionsBoundary++instance+ Data.ToHeaders+ PutPermissionsBoundaryToPermissionSet+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.PutPermissionsBoundaryToPermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ PutPermissionsBoundaryToPermissionSet+ where+ toJSON PutPermissionsBoundaryToPermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn),+ Prelude.Just+ ("PermissionsBoundary" Data..= permissionsBoundary)+ ]+ )++instance+ Data.ToPath+ PutPermissionsBoundaryToPermissionSet+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ PutPermissionsBoundaryToPermissionSet+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newPutPermissionsBoundaryToPermissionSetResponse' smart constructor.+data PutPermissionsBoundaryToPermissionSetResponse = PutPermissionsBoundaryToPermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutPermissionsBoundaryToPermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'putPermissionsBoundaryToPermissionSetResponse_httpStatus' - The response's http status code.+newPutPermissionsBoundaryToPermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PutPermissionsBoundaryToPermissionSetResponse+newPutPermissionsBoundaryToPermissionSetResponse+ pHttpStatus_ =+ PutPermissionsBoundaryToPermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+putPermissionsBoundaryToPermissionSetResponse_httpStatus :: Lens.Lens' PutPermissionsBoundaryToPermissionSetResponse Prelude.Int+putPermissionsBoundaryToPermissionSetResponse_httpStatus = Lens.lens (\PutPermissionsBoundaryToPermissionSetResponse' {httpStatus} -> httpStatus) (\s@PutPermissionsBoundaryToPermissionSetResponse' {} a -> s {httpStatus = a} :: PutPermissionsBoundaryToPermissionSetResponse)++instance+ Prelude.NFData+ PutPermissionsBoundaryToPermissionSetResponse+ where+ rnf+ PutPermissionsBoundaryToPermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/TagResource.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.SSOAdmin.TagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Associates a set of tags with a specified resource.+module Amazonka.SSOAdmin.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_instanceArn,+ tagResource_resourceArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the resource with the tags to be listed.+ resourceArn :: Prelude.Text,+ -- | A set of key-value pairs that are used to manage the resource.+ tags :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'tagResource_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'resourceArn', 'tagResource_resourceArn' - The ARN of the resource with the tags to be listed.+--+-- 'tags', 'tagResource_tags' - A set of key-value pairs that are used to manage the resource.+newTagResource ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pInstanceArn_ pResourceArn_ =+ TagResource'+ { instanceArn = pInstanceArn_,+ resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+tagResource_instanceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_instanceArn = Lens.lens (\TagResource' {instanceArn} -> instanceArn) (\s@TagResource' {} a -> s {instanceArn = a} :: TagResource)++-- | The ARN of the resource with the tags to be listed.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | A set of key-value pairs that are used to manage the resource.+tagResource_tags :: Lens.Lens' TagResource [Tag]+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ TagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.TagResource" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just ("ResourceArn" Data..= resourceArn),+ Prelude.Just ("Tags" Data..= tags)+ ]+ )++instance Data.ToPath TagResource where+ toPath = Prelude.const "/"++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TagResourceResponse+newTagResourceResponse pHttpStatus_ =+ TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+ rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/Types.hs view
@@ -0,0 +1,305 @@+{-# 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.SSOAdmin.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.SSOAdmin.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _ValidationException,++ -- * InstanceAccessControlAttributeConfigurationStatus+ InstanceAccessControlAttributeConfigurationStatus (..),++ -- * PrincipalType+ PrincipalType (..),++ -- * ProvisionTargetType+ ProvisionTargetType (..),++ -- * ProvisioningStatus+ ProvisioningStatus (..),++ -- * StatusValues+ StatusValues (..),++ -- * TargetType+ TargetType (..),++ -- * AccessControlAttribute+ AccessControlAttribute (..),+ newAccessControlAttribute,+ accessControlAttribute_key,+ accessControlAttribute_value,++ -- * AccessControlAttributeValue+ AccessControlAttributeValue (..),+ newAccessControlAttributeValue,+ accessControlAttributeValue_source,++ -- * AccountAssignment+ AccountAssignment (..),+ newAccountAssignment,+ accountAssignment_accountId,+ accountAssignment_permissionSetArn,+ accountAssignment_principalId,+ accountAssignment_principalType,++ -- * AccountAssignmentOperationStatus+ AccountAssignmentOperationStatus (..),+ newAccountAssignmentOperationStatus,+ accountAssignmentOperationStatus_createdDate,+ accountAssignmentOperationStatus_failureReason,+ accountAssignmentOperationStatus_permissionSetArn,+ accountAssignmentOperationStatus_principalId,+ accountAssignmentOperationStatus_principalType,+ accountAssignmentOperationStatus_requestId,+ accountAssignmentOperationStatus_status,+ accountAssignmentOperationStatus_targetId,+ accountAssignmentOperationStatus_targetType,++ -- * AccountAssignmentOperationStatusMetadata+ AccountAssignmentOperationStatusMetadata (..),+ newAccountAssignmentOperationStatusMetadata,+ accountAssignmentOperationStatusMetadata_createdDate,+ accountAssignmentOperationStatusMetadata_requestId,+ accountAssignmentOperationStatusMetadata_status,++ -- * AttachedManagedPolicy+ AttachedManagedPolicy (..),+ newAttachedManagedPolicy,+ attachedManagedPolicy_arn,+ attachedManagedPolicy_name,++ -- * CustomerManagedPolicyReference+ CustomerManagedPolicyReference (..),+ newCustomerManagedPolicyReference,+ customerManagedPolicyReference_path,+ customerManagedPolicyReference_name,++ -- * InstanceAccessControlAttributeConfiguration+ InstanceAccessControlAttributeConfiguration (..),+ newInstanceAccessControlAttributeConfiguration,+ instanceAccessControlAttributeConfiguration_accessControlAttributes,++ -- * InstanceMetadata+ InstanceMetadata (..),+ newInstanceMetadata,+ instanceMetadata_identityStoreId,+ instanceMetadata_instanceArn,++ -- * OperationStatusFilter+ OperationStatusFilter (..),+ newOperationStatusFilter,+ operationStatusFilter_status,++ -- * PermissionSet+ PermissionSet (..),+ newPermissionSet,+ permissionSet_createdDate,+ permissionSet_description,+ permissionSet_name,+ permissionSet_permissionSetArn,+ permissionSet_relayState,+ permissionSet_sessionDuration,++ -- * PermissionSetProvisioningStatus+ PermissionSetProvisioningStatus (..),+ newPermissionSetProvisioningStatus,+ permissionSetProvisioningStatus_accountId,+ permissionSetProvisioningStatus_createdDate,+ permissionSetProvisioningStatus_failureReason,+ permissionSetProvisioningStatus_permissionSetArn,+ permissionSetProvisioningStatus_requestId,+ permissionSetProvisioningStatus_status,++ -- * PermissionSetProvisioningStatusMetadata+ PermissionSetProvisioningStatusMetadata (..),+ newPermissionSetProvisioningStatusMetadata,+ permissionSetProvisioningStatusMetadata_createdDate,+ permissionSetProvisioningStatusMetadata_requestId,+ permissionSetProvisioningStatusMetadata_status,++ -- * PermissionsBoundary+ PermissionsBoundary (..),+ newPermissionsBoundary,+ permissionsBoundary_customerManagedPolicyReference,+ permissionsBoundary_managedPolicyArn,++ -- * Tag+ Tag (..),+ newTag,+ tag_key,+ tag_value,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Prelude as Prelude+import Amazonka.SSOAdmin.Types.AccessControlAttribute+import Amazonka.SSOAdmin.Types.AccessControlAttributeValue+import Amazonka.SSOAdmin.Types.AccountAssignment+import Amazonka.SSOAdmin.Types.AccountAssignmentOperationStatus+import Amazonka.SSOAdmin.Types.AccountAssignmentOperationStatusMetadata+import Amazonka.SSOAdmin.Types.AttachedManagedPolicy+import Amazonka.SSOAdmin.Types.CustomerManagedPolicyReference+import Amazonka.SSOAdmin.Types.InstanceAccessControlAttributeConfiguration+import Amazonka.SSOAdmin.Types.InstanceAccessControlAttributeConfigurationStatus+import Amazonka.SSOAdmin.Types.InstanceMetadata+import Amazonka.SSOAdmin.Types.OperationStatusFilter+import Amazonka.SSOAdmin.Types.PermissionSet+import Amazonka.SSOAdmin.Types.PermissionSetProvisioningStatus+import Amazonka.SSOAdmin.Types.PermissionSetProvisioningStatusMetadata+import Amazonka.SSOAdmin.Types.PermissionsBoundary+import Amazonka.SSOAdmin.Types.PrincipalType+import Amazonka.SSOAdmin.Types.ProvisionTargetType+import Amazonka.SSOAdmin.Types.ProvisioningStatus+import Amazonka.SSOAdmin.Types.StatusValues+import Amazonka.SSOAdmin.Types.Tag+import Amazonka.SSOAdmin.Types.TargetType+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2020-07-20@ of the Amazon Single Sign-On Admin SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "SSOAdmin",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "sso",+ Core.signingName = "sso",+ Core.version = "2020-07-20",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "SSOAdmin",+ 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++-- | You do not have sufficient access to perform this action.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"++-- | Occurs when a conflict with a previous successful write is detected.+-- This generally occurs when the previous write did not have time to+-- propagate to the host serving the current request. A retry (with+-- appropriate backoff logic) is the recommended response to this+-- exception.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"++-- | The request processing has failed because of an unknown error,+-- exception, or failure with an internal server.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"++-- | Indicates that a requested resource is not found.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"++-- | Indicates that the principal has crossed the permitted number of+-- resources that can be created.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"++-- | Indicates that the principal has crossed the throttling limits of the+-- API operations.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"++-- | The request failed because it contains a syntax error.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"
+ gen/Amazonka/SSOAdmin/Types/AccessControlAttribute.hs view
@@ -0,0 +1,109 @@+{-# 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.SSOAdmin.Types.AccessControlAttribute+-- 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.SSOAdmin.Types.AccessControlAttribute 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+import Amazonka.SSOAdmin.Types.AccessControlAttributeValue++-- | These are IAM Identity Center identity store attributes that you can+-- configure for use in attributes-based access control (ABAC). You can+-- create permissions policies that determine who can access your AWS+-- resources based upon the configured attribute values. When you enable+-- ABAC and specify @AccessControlAttributes@, IAM Identity Center passes+-- the attribute values of the authenticated user into IAM for use in+-- policy evaluation.+--+-- /See:/ 'newAccessControlAttribute' smart constructor.+data AccessControlAttribute = AccessControlAttribute'+ { -- | The name of the attribute associated with your identities in your+ -- identity source. This is used to map a specified attribute in your+ -- identity source with an attribute in IAM Identity Center.+ key :: Prelude.Text,+ -- | The value used for mapping a specified attribute to an identity source.+ value :: AccessControlAttributeValue+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccessControlAttribute' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'accessControlAttribute_key' - The name of the attribute associated with your identities in your+-- identity source. This is used to map a specified attribute in your+-- identity source with an attribute in IAM Identity Center.+--+-- 'value', 'accessControlAttribute_value' - The value used for mapping a specified attribute to an identity source.+newAccessControlAttribute ::+ -- | 'key'+ Prelude.Text ->+ -- | 'value'+ AccessControlAttributeValue ->+ AccessControlAttribute+newAccessControlAttribute pKey_ pValue_ =+ AccessControlAttribute'+ { key = pKey_,+ value = pValue_+ }++-- | The name of the attribute associated with your identities in your+-- identity source. This is used to map a specified attribute in your+-- identity source with an attribute in IAM Identity Center.+accessControlAttribute_key :: Lens.Lens' AccessControlAttribute Prelude.Text+accessControlAttribute_key = Lens.lens (\AccessControlAttribute' {key} -> key) (\s@AccessControlAttribute' {} a -> s {key = a} :: AccessControlAttribute)++-- | The value used for mapping a specified attribute to an identity source.+accessControlAttribute_value :: Lens.Lens' AccessControlAttribute AccessControlAttributeValue+accessControlAttribute_value = Lens.lens (\AccessControlAttribute' {value} -> value) (\s@AccessControlAttribute' {} a -> s {value = a} :: AccessControlAttribute)++instance Data.FromJSON AccessControlAttribute where+ parseJSON =+ Data.withObject+ "AccessControlAttribute"+ ( \x ->+ AccessControlAttribute'+ Prelude.<$> (x Data..: "Key")+ Prelude.<*> (x Data..: "Value")+ )++instance Prelude.Hashable AccessControlAttribute where+ hashWithSalt _salt AccessControlAttribute' {..} =+ _salt+ `Prelude.hashWithSalt` key+ `Prelude.hashWithSalt` value++instance Prelude.NFData AccessControlAttribute where+ rnf AccessControlAttribute' {..} =+ Prelude.rnf key `Prelude.seq` Prelude.rnf value++instance Data.ToJSON AccessControlAttribute where+ toJSON AccessControlAttribute' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Key" Data..= key),+ Prelude.Just ("Value" Data..= value)+ ]+ )
+ gen/Amazonka/SSOAdmin/Types/AccessControlAttributeValue.hs view
@@ -0,0 +1,87 @@+{-# 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.SSOAdmin.Types.AccessControlAttributeValue+-- 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.SSOAdmin.Types.AccessControlAttributeValue 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++-- | The value used for mapping a specified attribute to an identity source.+-- For more information, see+-- <https://docs.aws.amazon.com/singlesignon/latest/userguide/attributemappingsconcept.html Attribute mappings>+-- in the /IAM Identity Center User Guide/.+--+-- /See:/ 'newAccessControlAttributeValue' smart constructor.+data AccessControlAttributeValue = AccessControlAttributeValue'+ { -- | The identity source to use when mapping a specified attribute to IAM+ -- Identity Center.+ source :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccessControlAttributeValue' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'source', 'accessControlAttributeValue_source' - The identity source to use when mapping a specified attribute to IAM+-- Identity Center.+newAccessControlAttributeValue ::+ -- | 'source'+ Prelude.NonEmpty Prelude.Text ->+ AccessControlAttributeValue+newAccessControlAttributeValue pSource_ =+ AccessControlAttributeValue'+ { source =+ Lens.coerced Lens.# pSource_+ }++-- | The identity source to use when mapping a specified attribute to IAM+-- Identity Center.+accessControlAttributeValue_source :: Lens.Lens' AccessControlAttributeValue (Prelude.NonEmpty Prelude.Text)+accessControlAttributeValue_source = Lens.lens (\AccessControlAttributeValue' {source} -> source) (\s@AccessControlAttributeValue' {} a -> s {source = a} :: AccessControlAttributeValue) Prelude.. Lens.coerced++instance Data.FromJSON AccessControlAttributeValue where+ parseJSON =+ Data.withObject+ "AccessControlAttributeValue"+ ( \x ->+ AccessControlAttributeValue'+ Prelude.<$> (x Data..: "Source")+ )++instance Prelude.Hashable AccessControlAttributeValue where+ hashWithSalt _salt AccessControlAttributeValue' {..} =+ _salt `Prelude.hashWithSalt` source++instance Prelude.NFData AccessControlAttributeValue where+ rnf AccessControlAttributeValue' {..} =+ Prelude.rnf source++instance Data.ToJSON AccessControlAttributeValue where+ toJSON AccessControlAttributeValue' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Source" Data..= source)]+ )
+ gen/Amazonka/SSOAdmin/Types/AccountAssignment.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.SSOAdmin.Types.AccountAssignment+-- 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.SSOAdmin.Types.AccountAssignment 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+import Amazonka.SSOAdmin.Types.PrincipalType++-- | The assignment that indicates a principal\'s limited access to a+-- specified AWS account with a specified permission set.+--+-- The term /principal/ here refers to a user or group that is defined in+-- IAM Identity Center.+--+-- /See:/ 'newAccountAssignment' smart constructor.+data AccountAssignment = AccountAssignment'+ { -- | The identifier of the AWS account.+ accountId :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the permission set. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ permissionSetArn :: Prelude.Maybe Prelude.Text,+ -- | An identifier for an object in IAM Identity Center, such as a user or+ -- group. PrincipalIds are GUIDs (For example,+ -- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+ -- PrincipalIds in IAM Identity Center, see the+ -- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+ principalId :: Prelude.Maybe Prelude.Text,+ -- | The entity type for which the assignment will be created.+ principalType :: Prelude.Maybe PrincipalType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccountAssignment' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountId', 'accountAssignment_accountId' - The identifier of the AWS account.+--+-- 'permissionSetArn', 'accountAssignment_permissionSetArn' - The ARN of the permission set. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'principalId', 'accountAssignment_principalId' - An identifier for an object in IAM Identity Center, such as a user or+-- group. PrincipalIds are GUIDs (For example,+-- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+-- PrincipalIds in IAM Identity Center, see the+-- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+--+-- 'principalType', 'accountAssignment_principalType' - The entity type for which the assignment will be created.+newAccountAssignment ::+ AccountAssignment+newAccountAssignment =+ AccountAssignment'+ { accountId = Prelude.Nothing,+ permissionSetArn = Prelude.Nothing,+ principalId = Prelude.Nothing,+ principalType = Prelude.Nothing+ }++-- | The identifier of the AWS account.+accountAssignment_accountId :: Lens.Lens' AccountAssignment (Prelude.Maybe Prelude.Text)+accountAssignment_accountId = Lens.lens (\AccountAssignment' {accountId} -> accountId) (\s@AccountAssignment' {} a -> s {accountId = a} :: AccountAssignment)++-- | The ARN of the permission set. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+accountAssignment_permissionSetArn :: Lens.Lens' AccountAssignment (Prelude.Maybe Prelude.Text)+accountAssignment_permissionSetArn = Lens.lens (\AccountAssignment' {permissionSetArn} -> permissionSetArn) (\s@AccountAssignment' {} a -> s {permissionSetArn = a} :: AccountAssignment)++-- | An identifier for an object in IAM Identity Center, such as a user or+-- group. PrincipalIds are GUIDs (For example,+-- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+-- PrincipalIds in IAM Identity Center, see the+-- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+accountAssignment_principalId :: Lens.Lens' AccountAssignment (Prelude.Maybe Prelude.Text)+accountAssignment_principalId = Lens.lens (\AccountAssignment' {principalId} -> principalId) (\s@AccountAssignment' {} a -> s {principalId = a} :: AccountAssignment)++-- | The entity type for which the assignment will be created.+accountAssignment_principalType :: Lens.Lens' AccountAssignment (Prelude.Maybe PrincipalType)+accountAssignment_principalType = Lens.lens (\AccountAssignment' {principalType} -> principalType) (\s@AccountAssignment' {} a -> s {principalType = a} :: AccountAssignment)++instance Data.FromJSON AccountAssignment where+ parseJSON =+ Data.withObject+ "AccountAssignment"+ ( \x ->+ AccountAssignment'+ Prelude.<$> (x Data..:? "AccountId")+ Prelude.<*> (x Data..:? "PermissionSetArn")+ Prelude.<*> (x Data..:? "PrincipalId")+ Prelude.<*> (x Data..:? "PrincipalType")+ )++instance Prelude.Hashable AccountAssignment where+ hashWithSalt _salt AccountAssignment' {..} =+ _salt+ `Prelude.hashWithSalt` accountId+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` principalId+ `Prelude.hashWithSalt` principalType++instance Prelude.NFData AccountAssignment where+ rnf AccountAssignment' {..} =+ Prelude.rnf accountId+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf principalId+ `Prelude.seq` Prelude.rnf principalType
+ gen/Amazonka/SSOAdmin/Types/AccountAssignmentOperationStatus.hs view
@@ -0,0 +1,211 @@+{-# 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.SSOAdmin.Types.AccountAssignmentOperationStatus+-- 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.SSOAdmin.Types.AccountAssignmentOperationStatus 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+import Amazonka.SSOAdmin.Types.PrincipalType+import Amazonka.SSOAdmin.Types.StatusValues+import Amazonka.SSOAdmin.Types.TargetType++-- | The status of the creation or deletion operation of an assignment that a+-- principal needs to access an account.+--+-- /See:/ 'newAccountAssignmentOperationStatus' smart constructor.+data AccountAssignmentOperationStatus = AccountAssignmentOperationStatus'+ { -- | The date that the permission set was created.+ createdDate :: Prelude.Maybe Data.POSIX,+ -- | The message that contains an error or exception in case of an operation+ -- failure.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the permission set. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ permissionSetArn :: Prelude.Maybe Prelude.Text,+ -- | An identifier for an object in IAM Identity Center, such as a user or+ -- group. PrincipalIds are GUIDs (For example,+ -- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+ -- PrincipalIds in IAM Identity Center, see the+ -- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+ principalId :: Prelude.Maybe Prelude.Text,+ -- | The entity type for which the assignment will be created.+ principalType :: Prelude.Maybe PrincipalType,+ -- | The identifier for tracking the request operation that is generated by+ -- the universally unique identifier (UUID) workflow.+ requestId :: Prelude.Maybe Prelude.Text,+ -- | The status of the permission set provisioning process.+ status :: Prelude.Maybe StatusValues,+ -- | TargetID is an AWS account identifier, typically a 10-12 digit string+ -- (For example, 123456789012).+ targetId :: Prelude.Maybe Prelude.Text,+ -- | The entity type for which the assignment will be created.+ targetType :: Prelude.Maybe TargetType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccountAssignmentOperationStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createdDate', 'accountAssignmentOperationStatus_createdDate' - The date that the permission set was created.+--+-- 'failureReason', 'accountAssignmentOperationStatus_failureReason' - The message that contains an error or exception in case of an operation+-- failure.+--+-- 'permissionSetArn', 'accountAssignmentOperationStatus_permissionSetArn' - The ARN of the permission set. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'principalId', 'accountAssignmentOperationStatus_principalId' - An identifier for an object in IAM Identity Center, such as a user or+-- group. PrincipalIds are GUIDs (For example,+-- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+-- PrincipalIds in IAM Identity Center, see the+-- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+--+-- 'principalType', 'accountAssignmentOperationStatus_principalType' - The entity type for which the assignment will be created.+--+-- 'requestId', 'accountAssignmentOperationStatus_requestId' - The identifier for tracking the request operation that is generated by+-- the universally unique identifier (UUID) workflow.+--+-- 'status', 'accountAssignmentOperationStatus_status' - The status of the permission set provisioning process.+--+-- 'targetId', 'accountAssignmentOperationStatus_targetId' - TargetID is an AWS account identifier, typically a 10-12 digit string+-- (For example, 123456789012).+--+-- 'targetType', 'accountAssignmentOperationStatus_targetType' - The entity type for which the assignment will be created.+newAccountAssignmentOperationStatus ::+ AccountAssignmentOperationStatus+newAccountAssignmentOperationStatus =+ AccountAssignmentOperationStatus'+ { createdDate =+ Prelude.Nothing,+ failureReason = Prelude.Nothing,+ permissionSetArn = Prelude.Nothing,+ principalId = Prelude.Nothing,+ principalType = Prelude.Nothing,+ requestId = Prelude.Nothing,+ status = Prelude.Nothing,+ targetId = Prelude.Nothing,+ targetType = Prelude.Nothing+ }++-- | The date that the permission set was created.+accountAssignmentOperationStatus_createdDate :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe Prelude.UTCTime)+accountAssignmentOperationStatus_createdDate = Lens.lens (\AccountAssignmentOperationStatus' {createdDate} -> createdDate) (\s@AccountAssignmentOperationStatus' {} a -> s {createdDate = a} :: AccountAssignmentOperationStatus) Prelude.. Lens.mapping Data._Time++-- | The message that contains an error or exception in case of an operation+-- failure.+accountAssignmentOperationStatus_failureReason :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe Prelude.Text)+accountAssignmentOperationStatus_failureReason = Lens.lens (\AccountAssignmentOperationStatus' {failureReason} -> failureReason) (\s@AccountAssignmentOperationStatus' {} a -> s {failureReason = a} :: AccountAssignmentOperationStatus)++-- | The ARN of the permission set. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+accountAssignmentOperationStatus_permissionSetArn :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe Prelude.Text)+accountAssignmentOperationStatus_permissionSetArn = Lens.lens (\AccountAssignmentOperationStatus' {permissionSetArn} -> permissionSetArn) (\s@AccountAssignmentOperationStatus' {} a -> s {permissionSetArn = a} :: AccountAssignmentOperationStatus)++-- | An identifier for an object in IAM Identity Center, such as a user or+-- group. PrincipalIds are GUIDs (For example,+-- f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about+-- PrincipalIds in IAM Identity Center, see the+-- </singlesignon/latest/IdentityStoreAPIReference/welcome.html IAM Identity Center Identity Store API Reference>.+accountAssignmentOperationStatus_principalId :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe Prelude.Text)+accountAssignmentOperationStatus_principalId = Lens.lens (\AccountAssignmentOperationStatus' {principalId} -> principalId) (\s@AccountAssignmentOperationStatus' {} a -> s {principalId = a} :: AccountAssignmentOperationStatus)++-- | The entity type for which the assignment will be created.+accountAssignmentOperationStatus_principalType :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe PrincipalType)+accountAssignmentOperationStatus_principalType = Lens.lens (\AccountAssignmentOperationStatus' {principalType} -> principalType) (\s@AccountAssignmentOperationStatus' {} a -> s {principalType = a} :: AccountAssignmentOperationStatus)++-- | The identifier for tracking the request operation that is generated by+-- the universally unique identifier (UUID) workflow.+accountAssignmentOperationStatus_requestId :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe Prelude.Text)+accountAssignmentOperationStatus_requestId = Lens.lens (\AccountAssignmentOperationStatus' {requestId} -> requestId) (\s@AccountAssignmentOperationStatus' {} a -> s {requestId = a} :: AccountAssignmentOperationStatus)++-- | The status of the permission set provisioning process.+accountAssignmentOperationStatus_status :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe StatusValues)+accountAssignmentOperationStatus_status = Lens.lens (\AccountAssignmentOperationStatus' {status} -> status) (\s@AccountAssignmentOperationStatus' {} a -> s {status = a} :: AccountAssignmentOperationStatus)++-- | TargetID is an AWS account identifier, typically a 10-12 digit string+-- (For example, 123456789012).+accountAssignmentOperationStatus_targetId :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe Prelude.Text)+accountAssignmentOperationStatus_targetId = Lens.lens (\AccountAssignmentOperationStatus' {targetId} -> targetId) (\s@AccountAssignmentOperationStatus' {} a -> s {targetId = a} :: AccountAssignmentOperationStatus)++-- | The entity type for which the assignment will be created.+accountAssignmentOperationStatus_targetType :: Lens.Lens' AccountAssignmentOperationStatus (Prelude.Maybe TargetType)+accountAssignmentOperationStatus_targetType = Lens.lens (\AccountAssignmentOperationStatus' {targetType} -> targetType) (\s@AccountAssignmentOperationStatus' {} a -> s {targetType = a} :: AccountAssignmentOperationStatus)++instance+ Data.FromJSON+ AccountAssignmentOperationStatus+ where+ parseJSON =+ Data.withObject+ "AccountAssignmentOperationStatus"+ ( \x ->+ AccountAssignmentOperationStatus'+ Prelude.<$> (x Data..:? "CreatedDate")+ Prelude.<*> (x Data..:? "FailureReason")+ Prelude.<*> (x Data..:? "PermissionSetArn")+ Prelude.<*> (x Data..:? "PrincipalId")+ Prelude.<*> (x Data..:? "PrincipalType")+ Prelude.<*> (x Data..:? "RequestId")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "TargetId")+ Prelude.<*> (x Data..:? "TargetType")+ )++instance+ Prelude.Hashable+ AccountAssignmentOperationStatus+ where+ hashWithSalt+ _salt+ AccountAssignmentOperationStatus' {..} =+ _salt+ `Prelude.hashWithSalt` createdDate+ `Prelude.hashWithSalt` failureReason+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` principalId+ `Prelude.hashWithSalt` principalType+ `Prelude.hashWithSalt` requestId+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` targetId+ `Prelude.hashWithSalt` targetType++instance+ Prelude.NFData+ AccountAssignmentOperationStatus+ where+ rnf AccountAssignmentOperationStatus' {..} =+ Prelude.rnf createdDate+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf principalId+ `Prelude.seq` Prelude.rnf principalType+ `Prelude.seq` Prelude.rnf requestId+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf targetId+ `Prelude.seq` Prelude.rnf targetType
+ gen/Amazonka/SSOAdmin/Types/AccountAssignmentOperationStatusMetadata.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.SSOAdmin.Types.AccountAssignmentOperationStatusMetadata+-- 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.SSOAdmin.Types.AccountAssignmentOperationStatusMetadata 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+import Amazonka.SSOAdmin.Types.StatusValues++-- | Provides information about the AccountAssignment creation request.+--+-- /See:/ 'newAccountAssignmentOperationStatusMetadata' smart constructor.+data AccountAssignmentOperationStatusMetadata = AccountAssignmentOperationStatusMetadata'+ { -- | The date that the permission set was created.+ createdDate :: Prelude.Maybe Data.POSIX,+ -- | The identifier for tracking the request operation that is generated by+ -- the universally unique identifier (UUID) workflow.+ requestId :: Prelude.Maybe Prelude.Text,+ -- | The status of the permission set provisioning process.+ status :: Prelude.Maybe StatusValues+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccountAssignmentOperationStatusMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createdDate', 'accountAssignmentOperationStatusMetadata_createdDate' - The date that the permission set was created.+--+-- 'requestId', 'accountAssignmentOperationStatusMetadata_requestId' - The identifier for tracking the request operation that is generated by+-- the universally unique identifier (UUID) workflow.+--+-- 'status', 'accountAssignmentOperationStatusMetadata_status' - The status of the permission set provisioning process.+newAccountAssignmentOperationStatusMetadata ::+ AccountAssignmentOperationStatusMetadata+newAccountAssignmentOperationStatusMetadata =+ AccountAssignmentOperationStatusMetadata'+ { createdDate =+ Prelude.Nothing,+ requestId = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The date that the permission set was created.+accountAssignmentOperationStatusMetadata_createdDate :: Lens.Lens' AccountAssignmentOperationStatusMetadata (Prelude.Maybe Prelude.UTCTime)+accountAssignmentOperationStatusMetadata_createdDate = Lens.lens (\AccountAssignmentOperationStatusMetadata' {createdDate} -> createdDate) (\s@AccountAssignmentOperationStatusMetadata' {} a -> s {createdDate = a} :: AccountAssignmentOperationStatusMetadata) Prelude.. Lens.mapping Data._Time++-- | The identifier for tracking the request operation that is generated by+-- the universally unique identifier (UUID) workflow.+accountAssignmentOperationStatusMetadata_requestId :: Lens.Lens' AccountAssignmentOperationStatusMetadata (Prelude.Maybe Prelude.Text)+accountAssignmentOperationStatusMetadata_requestId = Lens.lens (\AccountAssignmentOperationStatusMetadata' {requestId} -> requestId) (\s@AccountAssignmentOperationStatusMetadata' {} a -> s {requestId = a} :: AccountAssignmentOperationStatusMetadata)++-- | The status of the permission set provisioning process.+accountAssignmentOperationStatusMetadata_status :: Lens.Lens' AccountAssignmentOperationStatusMetadata (Prelude.Maybe StatusValues)+accountAssignmentOperationStatusMetadata_status = Lens.lens (\AccountAssignmentOperationStatusMetadata' {status} -> status) (\s@AccountAssignmentOperationStatusMetadata' {} a -> s {status = a} :: AccountAssignmentOperationStatusMetadata)++instance+ Data.FromJSON+ AccountAssignmentOperationStatusMetadata+ where+ parseJSON =+ Data.withObject+ "AccountAssignmentOperationStatusMetadata"+ ( \x ->+ AccountAssignmentOperationStatusMetadata'+ Prelude.<$> (x Data..:? "CreatedDate")+ Prelude.<*> (x Data..:? "RequestId")+ Prelude.<*> (x Data..:? "Status")+ )++instance+ Prelude.Hashable+ AccountAssignmentOperationStatusMetadata+ where+ hashWithSalt+ _salt+ AccountAssignmentOperationStatusMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` createdDate+ `Prelude.hashWithSalt` requestId+ `Prelude.hashWithSalt` status++instance+ Prelude.NFData+ AccountAssignmentOperationStatusMetadata+ where+ rnf AccountAssignmentOperationStatusMetadata' {..} =+ Prelude.rnf createdDate+ `Prelude.seq` Prelude.rnf requestId+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/SSOAdmin/Types/AttachedManagedPolicy.hs view
@@ -0,0 +1,89 @@+{-# 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.SSOAdmin.Types.AttachedManagedPolicy+-- 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.SSOAdmin.Types.AttachedManagedPolicy 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 stores the details of the AWS managed policy.+--+-- /See:/ 'newAttachedManagedPolicy' smart constructor.+data AttachedManagedPolicy = AttachedManagedPolicy'+ { -- | The ARN of the AWS managed policy. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The name of the AWS managed policy.+ name :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AttachedManagedPolicy' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'attachedManagedPolicy_arn' - The ARN of the AWS managed policy. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'name', 'attachedManagedPolicy_name' - The name of the AWS managed policy.+newAttachedManagedPolicy ::+ AttachedManagedPolicy+newAttachedManagedPolicy =+ AttachedManagedPolicy'+ { arn = Prelude.Nothing,+ name = Prelude.Nothing+ }++-- | The ARN of the AWS managed policy. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+attachedManagedPolicy_arn :: Lens.Lens' AttachedManagedPolicy (Prelude.Maybe Prelude.Text)+attachedManagedPolicy_arn = Lens.lens (\AttachedManagedPolicy' {arn} -> arn) (\s@AttachedManagedPolicy' {} a -> s {arn = a} :: AttachedManagedPolicy)++-- | The name of the AWS managed policy.+attachedManagedPolicy_name :: Lens.Lens' AttachedManagedPolicy (Prelude.Maybe Prelude.Text)+attachedManagedPolicy_name = Lens.lens (\AttachedManagedPolicy' {name} -> name) (\s@AttachedManagedPolicy' {} a -> s {name = a} :: AttachedManagedPolicy)++instance Data.FromJSON AttachedManagedPolicy where+ parseJSON =+ Data.withObject+ "AttachedManagedPolicy"+ ( \x ->+ AttachedManagedPolicy'+ Prelude.<$> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "Name")+ )++instance Prelude.Hashable AttachedManagedPolicy where+ hashWithSalt _salt AttachedManagedPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` name++instance Prelude.NFData AttachedManagedPolicy where+ rnf AttachedManagedPolicy' {..} =+ Prelude.rnf arn `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/SSOAdmin/Types/CustomerManagedPolicyReference.hs view
@@ -0,0 +1,120 @@+{-# 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.SSOAdmin.Types.CustomerManagedPolicyReference+-- 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.SSOAdmin.Types.CustomerManagedPolicyReference 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++-- | Specifies the name and path of a customer managed policy. You must have+-- an IAM policy that matches the name and path in each AWS account where+-- you want to deploy your permission set.+--+-- /See:/ 'newCustomerManagedPolicyReference' smart constructor.+data CustomerManagedPolicyReference = CustomerManagedPolicyReference'+ { -- | The path to the IAM policy that you have configured in each account+ -- where you want to deploy your permission set. The default is @\/@. For+ -- more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names Friendly names and paths>+ -- in the /IAM User Guide/.+ path :: Prelude.Maybe Prelude.Text,+ -- | The name of the IAM policy that you have configured in each account+ -- where you want to deploy your permission set.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CustomerManagedPolicyReference' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'customerManagedPolicyReference_path' - The path to the IAM policy that you have configured in each account+-- where you want to deploy your permission set. The default is @\/@. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names Friendly names and paths>+-- in the /IAM User Guide/.+--+-- 'name', 'customerManagedPolicyReference_name' - The name of the IAM policy that you have configured in each account+-- where you want to deploy your permission set.+newCustomerManagedPolicyReference ::+ -- | 'name'+ Prelude.Text ->+ CustomerManagedPolicyReference+newCustomerManagedPolicyReference pName_ =+ CustomerManagedPolicyReference'+ { path =+ Prelude.Nothing,+ name = pName_+ }++-- | The path to the IAM policy that you have configured in each account+-- where you want to deploy your permission set. The default is @\/@. For+-- more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names Friendly names and paths>+-- in the /IAM User Guide/.+customerManagedPolicyReference_path :: Lens.Lens' CustomerManagedPolicyReference (Prelude.Maybe Prelude.Text)+customerManagedPolicyReference_path = Lens.lens (\CustomerManagedPolicyReference' {path} -> path) (\s@CustomerManagedPolicyReference' {} a -> s {path = a} :: CustomerManagedPolicyReference)++-- | The name of the IAM policy that you have configured in each account+-- where you want to deploy your permission set.+customerManagedPolicyReference_name :: Lens.Lens' CustomerManagedPolicyReference Prelude.Text+customerManagedPolicyReference_name = Lens.lens (\CustomerManagedPolicyReference' {name} -> name) (\s@CustomerManagedPolicyReference' {} a -> s {name = a} :: CustomerManagedPolicyReference)++instance Data.FromJSON CustomerManagedPolicyReference where+ parseJSON =+ Data.withObject+ "CustomerManagedPolicyReference"+ ( \x ->+ CustomerManagedPolicyReference'+ Prelude.<$> (x Data..:? "Path")+ Prelude.<*> (x Data..: "Name")+ )++instance+ Prelude.Hashable+ CustomerManagedPolicyReference+ where+ hashWithSalt+ _salt+ CustomerManagedPolicyReference' {..} =+ _salt+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` name++instance+ Prelude.NFData+ CustomerManagedPolicyReference+ where+ rnf CustomerManagedPolicyReference' {..} =+ Prelude.rnf path `Prelude.seq` Prelude.rnf name++instance Data.ToJSON CustomerManagedPolicyReference where+ toJSON CustomerManagedPolicyReference' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Path" Data..=) Prelude.<$> path,+ Prelude.Just ("Name" Data..= name)+ ]+ )
+ gen/Amazonka/SSOAdmin/Types/InstanceAccessControlAttributeConfiguration.hs view
@@ -0,0 +1,107 @@+{-# 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.SSOAdmin.Types.InstanceAccessControlAttributeConfiguration+-- 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.SSOAdmin.Types.InstanceAccessControlAttributeConfiguration 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+import Amazonka.SSOAdmin.Types.AccessControlAttribute++-- | Specifies the attributes to add to your attribute-based access control+-- (ABAC) configuration.+--+-- /See:/ 'newInstanceAccessControlAttributeConfiguration' smart constructor.+data InstanceAccessControlAttributeConfiguration = InstanceAccessControlAttributeConfiguration'+ { -- | Lists the attributes that are configured for ABAC in the specified IAM+ -- Identity Center instance.+ accessControlAttributes :: [AccessControlAttribute]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InstanceAccessControlAttributeConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessControlAttributes', 'instanceAccessControlAttributeConfiguration_accessControlAttributes' - Lists the attributes that are configured for ABAC in the specified IAM+-- Identity Center instance.+newInstanceAccessControlAttributeConfiguration ::+ InstanceAccessControlAttributeConfiguration+newInstanceAccessControlAttributeConfiguration =+ InstanceAccessControlAttributeConfiguration'+ { accessControlAttributes =+ Prelude.mempty+ }++-- | Lists the attributes that are configured for ABAC in the specified IAM+-- Identity Center instance.+instanceAccessControlAttributeConfiguration_accessControlAttributes :: Lens.Lens' InstanceAccessControlAttributeConfiguration [AccessControlAttribute]+instanceAccessControlAttributeConfiguration_accessControlAttributes = Lens.lens (\InstanceAccessControlAttributeConfiguration' {accessControlAttributes} -> accessControlAttributes) (\s@InstanceAccessControlAttributeConfiguration' {} a -> s {accessControlAttributes = a} :: InstanceAccessControlAttributeConfiguration) Prelude.. Lens.coerced++instance+ Data.FromJSON+ InstanceAccessControlAttributeConfiguration+ where+ parseJSON =+ Data.withObject+ "InstanceAccessControlAttributeConfiguration"+ ( \x ->+ InstanceAccessControlAttributeConfiguration'+ Prelude.<$> ( x+ Data..:? "AccessControlAttributes"+ Data..!= Prelude.mempty+ )+ )++instance+ Prelude.Hashable+ InstanceAccessControlAttributeConfiguration+ where+ hashWithSalt+ _salt+ InstanceAccessControlAttributeConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` accessControlAttributes++instance+ Prelude.NFData+ InstanceAccessControlAttributeConfiguration+ where+ rnf InstanceAccessControlAttributeConfiguration' {..} =+ Prelude.rnf accessControlAttributes++instance+ Data.ToJSON+ InstanceAccessControlAttributeConfiguration+ where+ toJSON+ InstanceAccessControlAttributeConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "AccessControlAttributes"+ Data..= accessControlAttributes+ )+ ]+ )
+ gen/Amazonka/SSOAdmin/Types/InstanceAccessControlAttributeConfigurationStatus.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.SSOAdmin.Types.InstanceAccessControlAttributeConfigurationStatus+-- 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.SSOAdmin.Types.InstanceAccessControlAttributeConfigurationStatus+ ( InstanceAccessControlAttributeConfigurationStatus+ ( ..,+ InstanceAccessControlAttributeConfigurationStatus_CREATION_FAILED,+ InstanceAccessControlAttributeConfigurationStatus_CREATION_IN_PROGRESS,+ InstanceAccessControlAttributeConfigurationStatus_ENABLED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype InstanceAccessControlAttributeConfigurationStatus = InstanceAccessControlAttributeConfigurationStatus'+ { fromInstanceAccessControlAttributeConfigurationStatus ::+ 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 InstanceAccessControlAttributeConfigurationStatus_CREATION_FAILED :: InstanceAccessControlAttributeConfigurationStatus+pattern InstanceAccessControlAttributeConfigurationStatus_CREATION_FAILED = InstanceAccessControlAttributeConfigurationStatus' "CREATION_FAILED"++pattern InstanceAccessControlAttributeConfigurationStatus_CREATION_IN_PROGRESS :: InstanceAccessControlAttributeConfigurationStatus+pattern InstanceAccessControlAttributeConfigurationStatus_CREATION_IN_PROGRESS = InstanceAccessControlAttributeConfigurationStatus' "CREATION_IN_PROGRESS"++pattern InstanceAccessControlAttributeConfigurationStatus_ENABLED :: InstanceAccessControlAttributeConfigurationStatus+pattern InstanceAccessControlAttributeConfigurationStatus_ENABLED = InstanceAccessControlAttributeConfigurationStatus' "ENABLED"++{-# COMPLETE+ InstanceAccessControlAttributeConfigurationStatus_CREATION_FAILED,+ InstanceAccessControlAttributeConfigurationStatus_CREATION_IN_PROGRESS,+ InstanceAccessControlAttributeConfigurationStatus_ENABLED,+ InstanceAccessControlAttributeConfigurationStatus'+ #-}
+ gen/Amazonka/SSOAdmin/Types/InstanceMetadata.hs view
@@ -0,0 +1,97 @@+{-# 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.SSOAdmin.Types.InstanceMetadata+-- 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.SSOAdmin.Types.InstanceMetadata 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++-- | Provides information about the IAM Identity Center instance.+--+-- /See:/ 'newInstanceMetadata' smart constructor.+data InstanceMetadata = InstanceMetadata'+ { -- | The identifier of the identity store that is connected to the IAM+ -- Identity Center instance.+ identityStoreId :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InstanceMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'identityStoreId', 'instanceMetadata_identityStoreId' - The identifier of the identity store that is connected to the IAM+-- Identity Center instance.+--+-- 'instanceArn', 'instanceMetadata_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+newInstanceMetadata ::+ InstanceMetadata+newInstanceMetadata =+ InstanceMetadata'+ { identityStoreId =+ Prelude.Nothing,+ instanceArn = Prelude.Nothing+ }++-- | The identifier of the identity store that is connected to the IAM+-- Identity Center instance.+instanceMetadata_identityStoreId :: Lens.Lens' InstanceMetadata (Prelude.Maybe Prelude.Text)+instanceMetadata_identityStoreId = Lens.lens (\InstanceMetadata' {identityStoreId} -> identityStoreId) (\s@InstanceMetadata' {} a -> s {identityStoreId = a} :: InstanceMetadata)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+instanceMetadata_instanceArn :: Lens.Lens' InstanceMetadata (Prelude.Maybe Prelude.Text)+instanceMetadata_instanceArn = Lens.lens (\InstanceMetadata' {instanceArn} -> instanceArn) (\s@InstanceMetadata' {} a -> s {instanceArn = a} :: InstanceMetadata)++instance Data.FromJSON InstanceMetadata where+ parseJSON =+ Data.withObject+ "InstanceMetadata"+ ( \x ->+ InstanceMetadata'+ Prelude.<$> (x Data..:? "IdentityStoreId")+ Prelude.<*> (x Data..:? "InstanceArn")+ )++instance Prelude.Hashable InstanceMetadata where+ hashWithSalt _salt InstanceMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` identityStoreId+ `Prelude.hashWithSalt` instanceArn++instance Prelude.NFData InstanceMetadata where+ rnf InstanceMetadata' {..} =+ Prelude.rnf identityStoreId+ `Prelude.seq` Prelude.rnf instanceArn
+ gen/Amazonka/SSOAdmin/Types/OperationStatusFilter.hs view
@@ -0,0 +1,67 @@+{-# 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.SSOAdmin.Types.OperationStatusFilter+-- 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.SSOAdmin.Types.OperationStatusFilter 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+import Amazonka.SSOAdmin.Types.StatusValues++-- | Filters he operation status list based on the passed attribute value.+--+-- /See:/ 'newOperationStatusFilter' smart constructor.+data OperationStatusFilter = OperationStatusFilter'+ { -- | Filters the list operations result based on the status attribute.+ status :: Prelude.Maybe StatusValues+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OperationStatusFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'status', 'operationStatusFilter_status' - Filters the list operations result based on the status attribute.+newOperationStatusFilter ::+ OperationStatusFilter+newOperationStatusFilter =+ OperationStatusFilter' {status = Prelude.Nothing}++-- | Filters the list operations result based on the status attribute.+operationStatusFilter_status :: Lens.Lens' OperationStatusFilter (Prelude.Maybe StatusValues)+operationStatusFilter_status = Lens.lens (\OperationStatusFilter' {status} -> status) (\s@OperationStatusFilter' {} a -> s {status = a} :: OperationStatusFilter)++instance Prelude.Hashable OperationStatusFilter where+ hashWithSalt _salt OperationStatusFilter' {..} =+ _salt `Prelude.hashWithSalt` status++instance Prelude.NFData OperationStatusFilter where+ rnf OperationStatusFilter' {..} = Prelude.rnf status++instance Data.ToJSON OperationStatusFilter where+ toJSON OperationStatusFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [("Status" Data..=) Prelude.<$> status]+ )
+ gen/Amazonka/SSOAdmin/Types/PermissionSet.hs view
@@ -0,0 +1,144 @@+{-# 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.SSOAdmin.Types.PermissionSet+-- 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.SSOAdmin.Types.PermissionSet 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 entity that contains IAM policies.+--+-- /See:/ 'newPermissionSet' smart constructor.+data PermissionSet = PermissionSet'+ { -- | The date that the permission set was created.+ createdDate :: Prelude.Maybe Data.POSIX,+ -- | The description of the PermissionSet.+ description :: Prelude.Maybe Prelude.Text,+ -- | The name of the permission set.+ name :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the permission set. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ permissionSetArn :: Prelude.Maybe Prelude.Text,+ -- | Used to redirect users within the application during the federation+ -- authentication process.+ relayState :: Prelude.Maybe Prelude.Text,+ -- | The length of time that the application user sessions are valid for in+ -- the ISO-8601 standard.+ sessionDuration :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createdDate', 'permissionSet_createdDate' - The date that the permission set was created.+--+-- 'description', 'permissionSet_description' - The description of the PermissionSet.+--+-- 'name', 'permissionSet_name' - The name of the permission set.+--+-- 'permissionSetArn', 'permissionSet_permissionSetArn' - The ARN of the permission set. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'relayState', 'permissionSet_relayState' - Used to redirect users within the application during the federation+-- authentication process.+--+-- 'sessionDuration', 'permissionSet_sessionDuration' - The length of time that the application user sessions are valid for in+-- the ISO-8601 standard.+newPermissionSet ::+ PermissionSet+newPermissionSet =+ PermissionSet'+ { createdDate = Prelude.Nothing,+ description = Prelude.Nothing,+ name = Prelude.Nothing,+ permissionSetArn = Prelude.Nothing,+ relayState = Prelude.Nothing,+ sessionDuration = Prelude.Nothing+ }++-- | The date that the permission set was created.+permissionSet_createdDate :: Lens.Lens' PermissionSet (Prelude.Maybe Prelude.UTCTime)+permissionSet_createdDate = Lens.lens (\PermissionSet' {createdDate} -> createdDate) (\s@PermissionSet' {} a -> s {createdDate = a} :: PermissionSet) Prelude.. Lens.mapping Data._Time++-- | The description of the PermissionSet.+permissionSet_description :: Lens.Lens' PermissionSet (Prelude.Maybe Prelude.Text)+permissionSet_description = Lens.lens (\PermissionSet' {description} -> description) (\s@PermissionSet' {} a -> s {description = a} :: PermissionSet)++-- | The name of the permission set.+permissionSet_name :: Lens.Lens' PermissionSet (Prelude.Maybe Prelude.Text)+permissionSet_name = Lens.lens (\PermissionSet' {name} -> name) (\s@PermissionSet' {} a -> s {name = a} :: PermissionSet)++-- | The ARN of the permission set. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+permissionSet_permissionSetArn :: Lens.Lens' PermissionSet (Prelude.Maybe Prelude.Text)+permissionSet_permissionSetArn = Lens.lens (\PermissionSet' {permissionSetArn} -> permissionSetArn) (\s@PermissionSet' {} a -> s {permissionSetArn = a} :: PermissionSet)++-- | Used to redirect users within the application during the federation+-- authentication process.+permissionSet_relayState :: Lens.Lens' PermissionSet (Prelude.Maybe Prelude.Text)+permissionSet_relayState = Lens.lens (\PermissionSet' {relayState} -> relayState) (\s@PermissionSet' {} a -> s {relayState = a} :: PermissionSet)++-- | The length of time that the application user sessions are valid for in+-- the ISO-8601 standard.+permissionSet_sessionDuration :: Lens.Lens' PermissionSet (Prelude.Maybe Prelude.Text)+permissionSet_sessionDuration = Lens.lens (\PermissionSet' {sessionDuration} -> sessionDuration) (\s@PermissionSet' {} a -> s {sessionDuration = a} :: PermissionSet)++instance Data.FromJSON PermissionSet where+ parseJSON =+ Data.withObject+ "PermissionSet"+ ( \x ->+ PermissionSet'+ Prelude.<$> (x Data..:? "CreatedDate")+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "PermissionSetArn")+ Prelude.<*> (x Data..:? "RelayState")+ Prelude.<*> (x Data..:? "SessionDuration")+ )++instance Prelude.Hashable PermissionSet where+ hashWithSalt _salt PermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` createdDate+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` relayState+ `Prelude.hashWithSalt` sessionDuration++instance Prelude.NFData PermissionSet where+ rnf PermissionSet' {..} =+ Prelude.rnf createdDate+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf relayState+ `Prelude.seq` Prelude.rnf sessionDuration
+ gen/Amazonka/SSOAdmin/Types/PermissionSetProvisioningStatus.hs view
@@ -0,0 +1,161 @@+{-# 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.SSOAdmin.Types.PermissionSetProvisioningStatus+-- 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.SSOAdmin.Types.PermissionSetProvisioningStatus 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+import Amazonka.SSOAdmin.Types.StatusValues++-- | A structure that is used to provide the status of the provisioning+-- operation for a specified permission set.+--+-- /See:/ 'newPermissionSetProvisioningStatus' smart constructor.+data PermissionSetProvisioningStatus = PermissionSetProvisioningStatus'+ { -- | The identifier of the AWS account from which to list the assignments.+ accountId :: Prelude.Maybe Prelude.Text,+ -- | The date that the permission set was created.+ createdDate :: Prelude.Maybe Data.POSIX,+ -- | The message that contains an error or exception in case of an operation+ -- failure.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the permission set that is being provisioned. For more+ -- information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ permissionSetArn :: Prelude.Maybe Prelude.Text,+ -- | The identifier for tracking the request operation that is generated by+ -- the universally unique identifier (UUID) workflow.+ requestId :: Prelude.Maybe Prelude.Text,+ -- | The status of the permission set provisioning process.+ status :: Prelude.Maybe StatusValues+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PermissionSetProvisioningStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accountId', 'permissionSetProvisioningStatus_accountId' - The identifier of the AWS account from which to list the assignments.+--+-- 'createdDate', 'permissionSetProvisioningStatus_createdDate' - The date that the permission set was created.+--+-- 'failureReason', 'permissionSetProvisioningStatus_failureReason' - The message that contains an error or exception in case of an operation+-- failure.+--+-- 'permissionSetArn', 'permissionSetProvisioningStatus_permissionSetArn' - The ARN of the permission set that is being provisioned. For more+-- information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'requestId', 'permissionSetProvisioningStatus_requestId' - The identifier for tracking the request operation that is generated by+-- the universally unique identifier (UUID) workflow.+--+-- 'status', 'permissionSetProvisioningStatus_status' - The status of the permission set provisioning process.+newPermissionSetProvisioningStatus ::+ PermissionSetProvisioningStatus+newPermissionSetProvisioningStatus =+ PermissionSetProvisioningStatus'+ { accountId =+ Prelude.Nothing,+ createdDate = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ permissionSetArn = Prelude.Nothing,+ requestId = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The identifier of the AWS account from which to list the assignments.+permissionSetProvisioningStatus_accountId :: Lens.Lens' PermissionSetProvisioningStatus (Prelude.Maybe Prelude.Text)+permissionSetProvisioningStatus_accountId = Lens.lens (\PermissionSetProvisioningStatus' {accountId} -> accountId) (\s@PermissionSetProvisioningStatus' {} a -> s {accountId = a} :: PermissionSetProvisioningStatus)++-- | The date that the permission set was created.+permissionSetProvisioningStatus_createdDate :: Lens.Lens' PermissionSetProvisioningStatus (Prelude.Maybe Prelude.UTCTime)+permissionSetProvisioningStatus_createdDate = Lens.lens (\PermissionSetProvisioningStatus' {createdDate} -> createdDate) (\s@PermissionSetProvisioningStatus' {} a -> s {createdDate = a} :: PermissionSetProvisioningStatus) Prelude.. Lens.mapping Data._Time++-- | The message that contains an error or exception in case of an operation+-- failure.+permissionSetProvisioningStatus_failureReason :: Lens.Lens' PermissionSetProvisioningStatus (Prelude.Maybe Prelude.Text)+permissionSetProvisioningStatus_failureReason = Lens.lens (\PermissionSetProvisioningStatus' {failureReason} -> failureReason) (\s@PermissionSetProvisioningStatus' {} a -> s {failureReason = a} :: PermissionSetProvisioningStatus)++-- | The ARN of the permission set that is being provisioned. For more+-- information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+permissionSetProvisioningStatus_permissionSetArn :: Lens.Lens' PermissionSetProvisioningStatus (Prelude.Maybe Prelude.Text)+permissionSetProvisioningStatus_permissionSetArn = Lens.lens (\PermissionSetProvisioningStatus' {permissionSetArn} -> permissionSetArn) (\s@PermissionSetProvisioningStatus' {} a -> s {permissionSetArn = a} :: PermissionSetProvisioningStatus)++-- | The identifier for tracking the request operation that is generated by+-- the universally unique identifier (UUID) workflow.+permissionSetProvisioningStatus_requestId :: Lens.Lens' PermissionSetProvisioningStatus (Prelude.Maybe Prelude.Text)+permissionSetProvisioningStatus_requestId = Lens.lens (\PermissionSetProvisioningStatus' {requestId} -> requestId) (\s@PermissionSetProvisioningStatus' {} a -> s {requestId = a} :: PermissionSetProvisioningStatus)++-- | The status of the permission set provisioning process.+permissionSetProvisioningStatus_status :: Lens.Lens' PermissionSetProvisioningStatus (Prelude.Maybe StatusValues)+permissionSetProvisioningStatus_status = Lens.lens (\PermissionSetProvisioningStatus' {status} -> status) (\s@PermissionSetProvisioningStatus' {} a -> s {status = a} :: PermissionSetProvisioningStatus)++instance+ Data.FromJSON+ PermissionSetProvisioningStatus+ where+ parseJSON =+ Data.withObject+ "PermissionSetProvisioningStatus"+ ( \x ->+ PermissionSetProvisioningStatus'+ Prelude.<$> (x Data..:? "AccountId")+ Prelude.<*> (x Data..:? "CreatedDate")+ Prelude.<*> (x Data..:? "FailureReason")+ Prelude.<*> (x Data..:? "PermissionSetArn")+ Prelude.<*> (x Data..:? "RequestId")+ Prelude.<*> (x Data..:? "Status")+ )++instance+ Prelude.Hashable+ PermissionSetProvisioningStatus+ where+ hashWithSalt+ _salt+ PermissionSetProvisioningStatus' {..} =+ _salt+ `Prelude.hashWithSalt` accountId+ `Prelude.hashWithSalt` createdDate+ `Prelude.hashWithSalt` failureReason+ `Prelude.hashWithSalt` permissionSetArn+ `Prelude.hashWithSalt` requestId+ `Prelude.hashWithSalt` status++instance+ Prelude.NFData+ PermissionSetProvisioningStatus+ where+ rnf PermissionSetProvisioningStatus' {..} =+ Prelude.rnf accountId+ `Prelude.seq` Prelude.rnf createdDate+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf permissionSetArn+ `Prelude.seq` Prelude.rnf requestId+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/SSOAdmin/Types/PermissionSetProvisioningStatusMetadata.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.SSOAdmin.Types.PermissionSetProvisioningStatusMetadata+-- 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.SSOAdmin.Types.PermissionSetProvisioningStatusMetadata 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+import Amazonka.SSOAdmin.Types.StatusValues++-- | Provides information about the permission set provisioning status.+--+-- /See:/ 'newPermissionSetProvisioningStatusMetadata' smart constructor.+data PermissionSetProvisioningStatusMetadata = PermissionSetProvisioningStatusMetadata'+ { -- | The date that the permission set was created.+ createdDate :: Prelude.Maybe Data.POSIX,+ -- | The identifier for tracking the request operation that is generated by+ -- the universally unique identifier (UUID) workflow.+ requestId :: Prelude.Maybe Prelude.Text,+ -- | The status of the permission set provisioning process.+ status :: Prelude.Maybe StatusValues+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PermissionSetProvisioningStatusMetadata' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'createdDate', 'permissionSetProvisioningStatusMetadata_createdDate' - The date that the permission set was created.+--+-- 'requestId', 'permissionSetProvisioningStatusMetadata_requestId' - The identifier for tracking the request operation that is generated by+-- the universally unique identifier (UUID) workflow.+--+-- 'status', 'permissionSetProvisioningStatusMetadata_status' - The status of the permission set provisioning process.+newPermissionSetProvisioningStatusMetadata ::+ PermissionSetProvisioningStatusMetadata+newPermissionSetProvisioningStatusMetadata =+ PermissionSetProvisioningStatusMetadata'+ { createdDate =+ Prelude.Nothing,+ requestId = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The date that the permission set was created.+permissionSetProvisioningStatusMetadata_createdDate :: Lens.Lens' PermissionSetProvisioningStatusMetadata (Prelude.Maybe Prelude.UTCTime)+permissionSetProvisioningStatusMetadata_createdDate = Lens.lens (\PermissionSetProvisioningStatusMetadata' {createdDate} -> createdDate) (\s@PermissionSetProvisioningStatusMetadata' {} a -> s {createdDate = a} :: PermissionSetProvisioningStatusMetadata) Prelude.. Lens.mapping Data._Time++-- | The identifier for tracking the request operation that is generated by+-- the universally unique identifier (UUID) workflow.+permissionSetProvisioningStatusMetadata_requestId :: Lens.Lens' PermissionSetProvisioningStatusMetadata (Prelude.Maybe Prelude.Text)+permissionSetProvisioningStatusMetadata_requestId = Lens.lens (\PermissionSetProvisioningStatusMetadata' {requestId} -> requestId) (\s@PermissionSetProvisioningStatusMetadata' {} a -> s {requestId = a} :: PermissionSetProvisioningStatusMetadata)++-- | The status of the permission set provisioning process.+permissionSetProvisioningStatusMetadata_status :: Lens.Lens' PermissionSetProvisioningStatusMetadata (Prelude.Maybe StatusValues)+permissionSetProvisioningStatusMetadata_status = Lens.lens (\PermissionSetProvisioningStatusMetadata' {status} -> status) (\s@PermissionSetProvisioningStatusMetadata' {} a -> s {status = a} :: PermissionSetProvisioningStatusMetadata)++instance+ Data.FromJSON+ PermissionSetProvisioningStatusMetadata+ where+ parseJSON =+ Data.withObject+ "PermissionSetProvisioningStatusMetadata"+ ( \x ->+ PermissionSetProvisioningStatusMetadata'+ Prelude.<$> (x Data..:? "CreatedDate")+ Prelude.<*> (x Data..:? "RequestId")+ Prelude.<*> (x Data..:? "Status")+ )++instance+ Prelude.Hashable+ PermissionSetProvisioningStatusMetadata+ where+ hashWithSalt+ _salt+ PermissionSetProvisioningStatusMetadata' {..} =+ _salt+ `Prelude.hashWithSalt` createdDate+ `Prelude.hashWithSalt` requestId+ `Prelude.hashWithSalt` status++instance+ Prelude.NFData+ PermissionSetProvisioningStatusMetadata+ where+ rnf PermissionSetProvisioningStatusMetadata' {..} =+ Prelude.rnf createdDate+ `Prelude.seq` Prelude.rnf requestId+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/SSOAdmin/Types/PermissionsBoundary.hs view
@@ -0,0 +1,119 @@+{-# 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.SSOAdmin.Types.PermissionsBoundary+-- 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.SSOAdmin.Types.PermissionsBoundary 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+import Amazonka.SSOAdmin.Types.CustomerManagedPolicyReference++-- | Specifies the configuration of the AWS managed or customer managed+-- policy that you want to set as a permissions boundary. Specify either+-- @CustomerManagedPolicyReference@ to use the name and path of a customer+-- managed policy, or @ManagedPolicyArn@ to use the ARN of an AWS managed+-- policy. A permissions boundary represents the maximum permissions that+-- any policy can grant your role. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html Permissions boundaries for IAM entities>+-- in the /IAM User Guide/.+--+-- Policies used as permissions boundaries don\'t provide permissions. You+-- must also attach an IAM 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/.+--+-- /See:/ 'newPermissionsBoundary' smart constructor.+data PermissionsBoundary = PermissionsBoundary'+ { -- | Specifies the name and path of a customer managed policy. You must have+ -- an IAM policy that matches the name and path in each AWS account where+ -- you want to deploy your permission set.+ customerManagedPolicyReference :: Prelude.Maybe CustomerManagedPolicyReference,+ -- | The AWS managed policy ARN that you want to attach to a permission set+ -- as a permissions boundary.+ managedPolicyArn :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PermissionsBoundary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'customerManagedPolicyReference', 'permissionsBoundary_customerManagedPolicyReference' - Specifies the name and path of a customer managed policy. You must have+-- an IAM policy that matches the name and path in each AWS account where+-- you want to deploy your permission set.+--+-- 'managedPolicyArn', 'permissionsBoundary_managedPolicyArn' - The AWS managed policy ARN that you want to attach to a permission set+-- as a permissions boundary.+newPermissionsBoundary ::+ PermissionsBoundary+newPermissionsBoundary =+ PermissionsBoundary'+ { customerManagedPolicyReference =+ Prelude.Nothing,+ managedPolicyArn = Prelude.Nothing+ }++-- | Specifies the name and path of a customer managed policy. You must have+-- an IAM policy that matches the name and path in each AWS account where+-- you want to deploy your permission set.+permissionsBoundary_customerManagedPolicyReference :: Lens.Lens' PermissionsBoundary (Prelude.Maybe CustomerManagedPolicyReference)+permissionsBoundary_customerManagedPolicyReference = Lens.lens (\PermissionsBoundary' {customerManagedPolicyReference} -> customerManagedPolicyReference) (\s@PermissionsBoundary' {} a -> s {customerManagedPolicyReference = a} :: PermissionsBoundary)++-- | The AWS managed policy ARN that you want to attach to a permission set+-- as a permissions boundary.+permissionsBoundary_managedPolicyArn :: Lens.Lens' PermissionsBoundary (Prelude.Maybe Prelude.Text)+permissionsBoundary_managedPolicyArn = Lens.lens (\PermissionsBoundary' {managedPolicyArn} -> managedPolicyArn) (\s@PermissionsBoundary' {} a -> s {managedPolicyArn = a} :: PermissionsBoundary)++instance Data.FromJSON PermissionsBoundary where+ parseJSON =+ Data.withObject+ "PermissionsBoundary"+ ( \x ->+ PermissionsBoundary'+ Prelude.<$> (x Data..:? "CustomerManagedPolicyReference")+ Prelude.<*> (x Data..:? "ManagedPolicyArn")+ )++instance Prelude.Hashable PermissionsBoundary where+ hashWithSalt _salt PermissionsBoundary' {..} =+ _salt+ `Prelude.hashWithSalt` customerManagedPolicyReference+ `Prelude.hashWithSalt` managedPolicyArn++instance Prelude.NFData PermissionsBoundary where+ rnf PermissionsBoundary' {..} =+ Prelude.rnf customerManagedPolicyReference+ `Prelude.seq` Prelude.rnf managedPolicyArn++instance Data.ToJSON PermissionsBoundary where+ toJSON PermissionsBoundary' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("CustomerManagedPolicyReference" Data..=)+ Prelude.<$> customerManagedPolicyReference,+ ("ManagedPolicyArn" Data..=)+ Prelude.<$> managedPolicyArn+ ]+ )
+ gen/Amazonka/SSOAdmin/Types/PrincipalType.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.SSOAdmin.Types.PrincipalType+-- 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.SSOAdmin.Types.PrincipalType+ ( PrincipalType+ ( ..,+ PrincipalType_GROUP,+ PrincipalType_USER+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PrincipalType = PrincipalType'+ { fromPrincipalType ::+ 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 PrincipalType_GROUP :: PrincipalType+pattern PrincipalType_GROUP = PrincipalType' "GROUP"++pattern PrincipalType_USER :: PrincipalType+pattern PrincipalType_USER = PrincipalType' "USER"++{-# COMPLETE+ PrincipalType_GROUP,+ PrincipalType_USER,+ PrincipalType'+ #-}
+ gen/Amazonka/SSOAdmin/Types/ProvisionTargetType.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.SSOAdmin.Types.ProvisionTargetType+-- 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.SSOAdmin.Types.ProvisionTargetType+ ( ProvisionTargetType+ ( ..,+ ProvisionTargetType_ALL_PROVISIONED_ACCOUNTS,+ ProvisionTargetType_AWS_ACCOUNT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ProvisionTargetType = ProvisionTargetType'+ { fromProvisionTargetType ::+ 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 ProvisionTargetType_ALL_PROVISIONED_ACCOUNTS :: ProvisionTargetType+pattern ProvisionTargetType_ALL_PROVISIONED_ACCOUNTS = ProvisionTargetType' "ALL_PROVISIONED_ACCOUNTS"++pattern ProvisionTargetType_AWS_ACCOUNT :: ProvisionTargetType+pattern ProvisionTargetType_AWS_ACCOUNT = ProvisionTargetType' "AWS_ACCOUNT"++{-# COMPLETE+ ProvisionTargetType_ALL_PROVISIONED_ACCOUNTS,+ ProvisionTargetType_AWS_ACCOUNT,+ ProvisionTargetType'+ #-}
+ gen/Amazonka/SSOAdmin/Types/ProvisioningStatus.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.SSOAdmin.Types.ProvisioningStatus+-- 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.SSOAdmin.Types.ProvisioningStatus+ ( ProvisioningStatus+ ( ..,+ ProvisioningStatus_LATEST_PERMISSION_SET_NOT_PROVISIONED,+ ProvisioningStatus_LATEST_PERMISSION_SET_PROVISIONED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ProvisioningStatus = ProvisioningStatus'+ { fromProvisioningStatus ::+ 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 ProvisioningStatus_LATEST_PERMISSION_SET_NOT_PROVISIONED :: ProvisioningStatus+pattern ProvisioningStatus_LATEST_PERMISSION_SET_NOT_PROVISIONED = ProvisioningStatus' "LATEST_PERMISSION_SET_NOT_PROVISIONED"++pattern ProvisioningStatus_LATEST_PERMISSION_SET_PROVISIONED :: ProvisioningStatus+pattern ProvisioningStatus_LATEST_PERMISSION_SET_PROVISIONED = ProvisioningStatus' "LATEST_PERMISSION_SET_PROVISIONED"++{-# COMPLETE+ ProvisioningStatus_LATEST_PERMISSION_SET_NOT_PROVISIONED,+ ProvisioningStatus_LATEST_PERMISSION_SET_PROVISIONED,+ ProvisioningStatus'+ #-}
+ gen/Amazonka/SSOAdmin/Types/StatusValues.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.SSOAdmin.Types.StatusValues+-- 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.SSOAdmin.Types.StatusValues+ ( StatusValues+ ( ..,+ StatusValues_FAILED,+ StatusValues_IN_PROGRESS,+ StatusValues_SUCCEEDED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype StatusValues = StatusValues'+ { fromStatusValues ::+ 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 StatusValues_FAILED :: StatusValues+pattern StatusValues_FAILED = StatusValues' "FAILED"++pattern StatusValues_IN_PROGRESS :: StatusValues+pattern StatusValues_IN_PROGRESS = StatusValues' "IN_PROGRESS"++pattern StatusValues_SUCCEEDED :: StatusValues+pattern StatusValues_SUCCEEDED = StatusValues' "SUCCEEDED"++{-# COMPLETE+ StatusValues_FAILED,+ StatusValues_IN_PROGRESS,+ StatusValues_SUCCEEDED,+ StatusValues'+ #-}
+ gen/Amazonka/SSOAdmin/Types/Tag.hs view
@@ -0,0 +1,95 @@+{-# 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.SSOAdmin.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.SSOAdmin.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 set of key-value pairs that are used to manage the resource. Tags can+-- only be applied to permission sets and cannot be applied to+-- corresponding roles that IAM Identity Center creates in AWS accounts.+--+-- /See:/ 'newTag' smart constructor.+data Tag = Tag'+ { -- | The key for the tag.+ key :: Prelude.Text,+ -- | The value of the tag.+ 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 for the tag.+--+-- 'value', 'tag_value' - The value of the tag.+newTag ::+ -- | 'key'+ Prelude.Text ->+ -- | 'value'+ Prelude.Text ->+ Tag+newTag pKey_ pValue_ =+ Tag' {key = pKey_, value = pValue_}++-- | The key for the tag.+tag_key :: Lens.Lens' Tag Prelude.Text+tag_key = Lens.lens (\Tag' {key} -> key) (\s@Tag' {} a -> s {key = a} :: Tag)++-- | The value of the tag.+tag_value :: Lens.Lens' Tag Prelude.Text+tag_value = Lens.lens (\Tag' {value} -> value) (\s@Tag' {} a -> s {value = a} :: Tag)++instance Data.FromJSON Tag where+ parseJSON =+ Data.withObject+ "Tag"+ ( \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.ToJSON Tag where+ toJSON Tag' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Key" Data..= key),+ Prelude.Just ("Value" Data..= value)+ ]+ )
+ gen/Amazonka/SSOAdmin/Types/TargetType.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.SSOAdmin.Types.TargetType+-- 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.SSOAdmin.Types.TargetType+ ( TargetType+ ( ..,+ TargetType_AWS_ACCOUNT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype TargetType = TargetType'+ { fromTargetType ::+ 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 TargetType_AWS_ACCOUNT :: TargetType+pattern TargetType_AWS_ACCOUNT = TargetType' "AWS_ACCOUNT"++{-# COMPLETE+ TargetType_AWS_ACCOUNT,+ TargetType'+ #-}
+ gen/Amazonka/SSOAdmin/UntagResource.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.SSOAdmin.UntagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Disassociates a set of tags from a specified resource.+module Amazonka.SSOAdmin.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_instanceArn,+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the resource with the tags to be listed.+ resourceArn :: Prelude.Text,+ -- | The keys of tags that are attached to the resource.+ tagKeys :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'untagResource_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'resourceArn', 'untagResource_resourceArn' - The ARN of the resource with the tags to be listed.+--+-- 'tagKeys', 'untagResource_tagKeys' - The keys of tags that are attached to the resource.+newUntagResource ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'resourceArn'+ Prelude.Text ->+ -- | 'tagKeys'+ Prelude.NonEmpty Prelude.Text ->+ UntagResource+newUntagResource+ pInstanceArn_+ pResourceArn_+ pTagKeys_ =+ UntagResource'+ { instanceArn = pInstanceArn_,+ resourceArn = pResourceArn_,+ tagKeys = Lens.coerced Lens.# pTagKeys_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+untagResource_instanceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_instanceArn = Lens.lens (\UntagResource' {instanceArn} -> instanceArn) (\s@UntagResource' {} a -> s {instanceArn = a} :: UntagResource)++-- | The ARN of the resource with the tags to be listed.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | The keys of tags that are attached to the resource.+untagResource_tagKeys :: Lens.Lens' UntagResource (Prelude.NonEmpty Prelude.Text)+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+ type+ AWSResponse UntagResource =+ UntagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UntagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UntagResource where+ hashWithSalt _salt UntagResource' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.UntagResource" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UntagResource where+ toJSON UntagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just ("ResourceArn" Data..= resourceArn),+ Prelude.Just ("TagKeys" Data..= tagKeys)+ ]+ )++instance Data.ToPath UntagResource where+ toPath = Prelude.const "/"++instance Data.ToQuery UntagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'untagResourceResponse_httpStatus' - The response's http status code.+newUntagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UntagResourceResponse+newUntagResourceResponse pHttpStatus_ =+ UntagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+untagResourceResponse_httpStatus :: Lens.Lens' UntagResourceResponse Prelude.Int+untagResourceResponse_httpStatus = Lens.lens (\UntagResourceResponse' {httpStatus} -> httpStatus) (\s@UntagResourceResponse' {} a -> s {httpStatus = a} :: UntagResourceResponse)++instance Prelude.NFData UntagResourceResponse where+ rnf UntagResourceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/UpdateInstanceAccessControlAttributeConfiguration.hs view
@@ -0,0 +1,227 @@+{-# 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.SSOAdmin.UpdateInstanceAccessControlAttributeConfiguration+-- 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 IAM Identity Center identity store attributes that you can+-- use with the IAM Identity Center instance for attributes-based access+-- control (ABAC). When using an external identity provider as an identity+-- source, you can pass attributes through the SAML assertion as an+-- alternative to configuring attributes from the IAM Identity Center+-- identity store. If a SAML assertion passes any of these attributes, IAM+-- Identity Center replaces the attribute value with the value from the IAM+-- Identity Center identity store. For more information about ABAC, see+-- </singlesignon/latest/userguide/abac.html Attribute-Based Access Control>+-- in the /IAM Identity Center User Guide/.+module Amazonka.SSOAdmin.UpdateInstanceAccessControlAttributeConfiguration+ ( -- * Creating a Request+ UpdateInstanceAccessControlAttributeConfiguration (..),+ newUpdateInstanceAccessControlAttributeConfiguration,++ -- * Request Lenses+ updateInstanceAccessControlAttributeConfiguration_instanceArn,+ updateInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration,++ -- * Destructuring the Response+ UpdateInstanceAccessControlAttributeConfigurationResponse (..),+ newUpdateInstanceAccessControlAttributeConfigurationResponse,++ -- * Response Lenses+ updateInstanceAccessControlAttributeConfigurationResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newUpdateInstanceAccessControlAttributeConfiguration' smart constructor.+data UpdateInstanceAccessControlAttributeConfiguration = UpdateInstanceAccessControlAttributeConfiguration'+ { -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed.+ instanceArn :: Prelude.Text,+ -- | Updates the attributes for your ABAC configuration.+ instanceAccessControlAttributeConfiguration :: InstanceAccessControlAttributeConfiguration+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateInstanceAccessControlAttributeConfiguration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceArn', 'updateInstanceAccessControlAttributeConfiguration_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+--+-- 'instanceAccessControlAttributeConfiguration', 'updateInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration' - Updates the attributes for your ABAC configuration.+newUpdateInstanceAccessControlAttributeConfiguration ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'instanceAccessControlAttributeConfiguration'+ InstanceAccessControlAttributeConfiguration ->+ UpdateInstanceAccessControlAttributeConfiguration+newUpdateInstanceAccessControlAttributeConfiguration+ pInstanceArn_+ pInstanceAccessControlAttributeConfiguration_ =+ UpdateInstanceAccessControlAttributeConfiguration'+ { instanceArn =+ pInstanceArn_,+ instanceAccessControlAttributeConfiguration =+ pInstanceAccessControlAttributeConfiguration_+ }++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed.+updateInstanceAccessControlAttributeConfiguration_instanceArn :: Lens.Lens' UpdateInstanceAccessControlAttributeConfiguration Prelude.Text+updateInstanceAccessControlAttributeConfiguration_instanceArn = Lens.lens (\UpdateInstanceAccessControlAttributeConfiguration' {instanceArn} -> instanceArn) (\s@UpdateInstanceAccessControlAttributeConfiguration' {} a -> s {instanceArn = a} :: UpdateInstanceAccessControlAttributeConfiguration)++-- | Updates the attributes for your ABAC configuration.+updateInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration :: Lens.Lens' UpdateInstanceAccessControlAttributeConfiguration InstanceAccessControlAttributeConfiguration+updateInstanceAccessControlAttributeConfiguration_instanceAccessControlAttributeConfiguration = Lens.lens (\UpdateInstanceAccessControlAttributeConfiguration' {instanceAccessControlAttributeConfiguration} -> instanceAccessControlAttributeConfiguration) (\s@UpdateInstanceAccessControlAttributeConfiguration' {} a -> s {instanceAccessControlAttributeConfiguration = a} :: UpdateInstanceAccessControlAttributeConfiguration)++instance+ Core.AWSRequest+ UpdateInstanceAccessControlAttributeConfiguration+ where+ type+ AWSResponse+ UpdateInstanceAccessControlAttributeConfiguration =+ UpdateInstanceAccessControlAttributeConfigurationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UpdateInstanceAccessControlAttributeConfigurationResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ UpdateInstanceAccessControlAttributeConfiguration+ where+ hashWithSalt+ _salt+ UpdateInstanceAccessControlAttributeConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` instanceAccessControlAttributeConfiguration++instance+ Prelude.NFData+ UpdateInstanceAccessControlAttributeConfiguration+ where+ rnf+ UpdateInstanceAccessControlAttributeConfiguration' {..} =+ Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf+ instanceAccessControlAttributeConfiguration++instance+ Data.ToHeaders+ UpdateInstanceAccessControlAttributeConfiguration+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.UpdateInstanceAccessControlAttributeConfiguration" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ UpdateInstanceAccessControlAttributeConfiguration+ where+ toJSON+ UpdateInstanceAccessControlAttributeConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ( "InstanceAccessControlAttributeConfiguration"+ Data..= instanceAccessControlAttributeConfiguration+ )+ ]+ )++instance+ Data.ToPath+ UpdateInstanceAccessControlAttributeConfiguration+ where+ toPath = Prelude.const "/"++instance+ Data.ToQuery+ UpdateInstanceAccessControlAttributeConfiguration+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateInstanceAccessControlAttributeConfigurationResponse' smart constructor.+data UpdateInstanceAccessControlAttributeConfigurationResponse = UpdateInstanceAccessControlAttributeConfigurationResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateInstanceAccessControlAttributeConfigurationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateInstanceAccessControlAttributeConfigurationResponse_httpStatus' - The response's http status code.+newUpdateInstanceAccessControlAttributeConfigurationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateInstanceAccessControlAttributeConfigurationResponse+newUpdateInstanceAccessControlAttributeConfigurationResponse+ pHttpStatus_ =+ UpdateInstanceAccessControlAttributeConfigurationResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+updateInstanceAccessControlAttributeConfigurationResponse_httpStatus :: Lens.Lens' UpdateInstanceAccessControlAttributeConfigurationResponse Prelude.Int+updateInstanceAccessControlAttributeConfigurationResponse_httpStatus = Lens.lens (\UpdateInstanceAccessControlAttributeConfigurationResponse' {httpStatus} -> httpStatus) (\s@UpdateInstanceAccessControlAttributeConfigurationResponse' {} a -> s {httpStatus = a} :: UpdateInstanceAccessControlAttributeConfigurationResponse)++instance+ Prelude.NFData+ UpdateInstanceAccessControlAttributeConfigurationResponse+ where+ rnf+ UpdateInstanceAccessControlAttributeConfigurationResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/UpdatePermissionSet.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.SSOAdmin.UpdatePermissionSet+-- 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 an existing permission set.+module Amazonka.SSOAdmin.UpdatePermissionSet+ ( -- * Creating a Request+ UpdatePermissionSet (..),+ newUpdatePermissionSet,++ -- * Request Lenses+ updatePermissionSet_description,+ updatePermissionSet_relayState,+ updatePermissionSet_sessionDuration,+ updatePermissionSet_instanceArn,+ updatePermissionSet_permissionSetArn,++ -- * Destructuring the Response+ UpdatePermissionSetResponse (..),+ newUpdatePermissionSetResponse,++ -- * Response Lenses+ updatePermissionSetResponse_httpStatus,+ )+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+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSOAdmin.Types++-- | /See:/ 'newUpdatePermissionSet' smart constructor.+data UpdatePermissionSet = UpdatePermissionSet'+ { -- | The description of the PermissionSet.+ description :: Prelude.Maybe Prelude.Text,+ -- | Used to redirect users within the application during the federation+ -- authentication process.+ relayState :: Prelude.Maybe Prelude.Text,+ -- | The length of time that the application user sessions are valid for in+ -- the ISO-8601 standard.+ sessionDuration :: Prelude.Maybe Prelude.Text,+ -- | The ARN of the IAM Identity Center instance under which the operation+ -- will be executed. For more information about ARNs, see+ -- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+ -- in the /AWS General Reference/.+ instanceArn :: Prelude.Text,+ -- | The ARN of the permission set.+ permissionSetArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePermissionSet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updatePermissionSet_description' - The description of the PermissionSet.+--+-- 'relayState', 'updatePermissionSet_relayState' - Used to redirect users within the application during the federation+-- authentication process.+--+-- 'sessionDuration', 'updatePermissionSet_sessionDuration' - The length of time that the application user sessions are valid for in+-- the ISO-8601 standard.+--+-- 'instanceArn', 'updatePermissionSet_instanceArn' - The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+--+-- 'permissionSetArn', 'updatePermissionSet_permissionSetArn' - The ARN of the permission set.+newUpdatePermissionSet ::+ -- | 'instanceArn'+ Prelude.Text ->+ -- | 'permissionSetArn'+ Prelude.Text ->+ UpdatePermissionSet+newUpdatePermissionSet+ pInstanceArn_+ pPermissionSetArn_ =+ UpdatePermissionSet'+ { description = Prelude.Nothing,+ relayState = Prelude.Nothing,+ sessionDuration = Prelude.Nothing,+ instanceArn = pInstanceArn_,+ permissionSetArn = pPermissionSetArn_+ }++-- | The description of the PermissionSet.+updatePermissionSet_description :: Lens.Lens' UpdatePermissionSet (Prelude.Maybe Prelude.Text)+updatePermissionSet_description = Lens.lens (\UpdatePermissionSet' {description} -> description) (\s@UpdatePermissionSet' {} a -> s {description = a} :: UpdatePermissionSet)++-- | Used to redirect users within the application during the federation+-- authentication process.+updatePermissionSet_relayState :: Lens.Lens' UpdatePermissionSet (Prelude.Maybe Prelude.Text)+updatePermissionSet_relayState = Lens.lens (\UpdatePermissionSet' {relayState} -> relayState) (\s@UpdatePermissionSet' {} a -> s {relayState = a} :: UpdatePermissionSet)++-- | The length of time that the application user sessions are valid for in+-- the ISO-8601 standard.+updatePermissionSet_sessionDuration :: Lens.Lens' UpdatePermissionSet (Prelude.Maybe Prelude.Text)+updatePermissionSet_sessionDuration = Lens.lens (\UpdatePermissionSet' {sessionDuration} -> sessionDuration) (\s@UpdatePermissionSet' {} a -> s {sessionDuration = a} :: UpdatePermissionSet)++-- | The ARN of the IAM Identity Center instance under which the operation+-- will be executed. For more information about ARNs, see+-- </general/latest/gr/aws-arns-and-namespaces.html Amazon Resource Names (ARNs) and AWS Service Namespaces>+-- in the /AWS General Reference/.+updatePermissionSet_instanceArn :: Lens.Lens' UpdatePermissionSet Prelude.Text+updatePermissionSet_instanceArn = Lens.lens (\UpdatePermissionSet' {instanceArn} -> instanceArn) (\s@UpdatePermissionSet' {} a -> s {instanceArn = a} :: UpdatePermissionSet)++-- | The ARN of the permission set.+updatePermissionSet_permissionSetArn :: Lens.Lens' UpdatePermissionSet Prelude.Text+updatePermissionSet_permissionSetArn = Lens.lens (\UpdatePermissionSet' {permissionSetArn} -> permissionSetArn) (\s@UpdatePermissionSet' {} a -> s {permissionSetArn = a} :: UpdatePermissionSet)++instance Core.AWSRequest UpdatePermissionSet where+ type+ AWSResponse UpdatePermissionSet =+ UpdatePermissionSetResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UpdatePermissionSetResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdatePermissionSet where+ hashWithSalt _salt UpdatePermissionSet' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` relayState+ `Prelude.hashWithSalt` sessionDuration+ `Prelude.hashWithSalt` instanceArn+ `Prelude.hashWithSalt` permissionSetArn++instance Prelude.NFData UpdatePermissionSet where+ rnf UpdatePermissionSet' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf relayState+ `Prelude.seq` Prelude.rnf sessionDuration+ `Prelude.seq` Prelude.rnf instanceArn+ `Prelude.seq` Prelude.rnf permissionSetArn++instance Data.ToHeaders UpdatePermissionSet where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "X-Amz-Target"+ Data.=# ( "SWBExternalService.UpdatePermissionSet" ::+ Prelude.ByteString+ ),+ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdatePermissionSet where+ toJSON UpdatePermissionSet' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Description" Data..=) Prelude.<$> description,+ ("RelayState" Data..=) Prelude.<$> relayState,+ ("SessionDuration" Data..=)+ Prelude.<$> sessionDuration,+ Prelude.Just ("InstanceArn" Data..= instanceArn),+ Prelude.Just+ ("PermissionSetArn" Data..= permissionSetArn)+ ]+ )++instance Data.ToPath UpdatePermissionSet where+ toPath = Prelude.const "/"++instance Data.ToQuery UpdatePermissionSet where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdatePermissionSetResponse' smart constructor.+data UpdatePermissionSetResponse = UpdatePermissionSetResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePermissionSetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updatePermissionSetResponse_httpStatus' - The response's http status code.+newUpdatePermissionSetResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdatePermissionSetResponse+newUpdatePermissionSetResponse pHttpStatus_ =+ UpdatePermissionSetResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+updatePermissionSetResponse_httpStatus :: Lens.Lens' UpdatePermissionSetResponse Prelude.Int+updatePermissionSetResponse_httpStatus = Lens.lens (\UpdatePermissionSetResponse' {httpStatus} -> httpStatus) (\s@UpdatePermissionSetResponse' {} a -> s {httpStatus = a} :: UpdatePermissionSetResponse)++instance Prelude.NFData UpdatePermissionSetResponse where+ rnf UpdatePermissionSetResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSOAdmin/Waiters.hs view
@@ -0,0 +1,24 @@+{-# 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.SSOAdmin.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.SSOAdmin.Waiters 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+import Amazonka.SSOAdmin.Lens+import Amazonka.SSOAdmin.Types
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- 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 Main (main) where++import Test.Amazonka.SSOAdmin+import Test.Amazonka.SSOAdmin.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "SSOAdmin"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/SSOAdmin.hs view
@@ -0,0 +1,778 @@+{-# 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.SSOAdmin+-- 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.SSOAdmin where++import Amazonka.SSOAdmin+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.Prelude+import Test.Amazonka.SSOAdmin.Internal+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"+-- [ requestAttachCustomerManagedPolicyReferenceToPermissionSet $+-- newAttachCustomerManagedPolicyReferenceToPermissionSet+--+-- , requestAttachManagedPolicyToPermissionSet $+-- newAttachManagedPolicyToPermissionSet+--+-- , requestCreateAccountAssignment $+-- newCreateAccountAssignment+--+-- , requestCreateInstanceAccessControlAttributeConfiguration $+-- newCreateInstanceAccessControlAttributeConfiguration+--+-- , requestCreatePermissionSet $+-- newCreatePermissionSet+--+-- , requestDeleteAccountAssignment $+-- newDeleteAccountAssignment+--+-- , requestDeleteInlinePolicyFromPermissionSet $+-- newDeleteInlinePolicyFromPermissionSet+--+-- , requestDeleteInstanceAccessControlAttributeConfiguration $+-- newDeleteInstanceAccessControlAttributeConfiguration+--+-- , requestDeletePermissionSet $+-- newDeletePermissionSet+--+-- , requestDeletePermissionsBoundaryFromPermissionSet $+-- newDeletePermissionsBoundaryFromPermissionSet+--+-- , requestDescribeAccountAssignmentCreationStatus $+-- newDescribeAccountAssignmentCreationStatus+--+-- , requestDescribeAccountAssignmentDeletionStatus $+-- newDescribeAccountAssignmentDeletionStatus+--+-- , requestDescribeInstanceAccessControlAttributeConfiguration $+-- newDescribeInstanceAccessControlAttributeConfiguration+--+-- , requestDescribePermissionSet $+-- newDescribePermissionSet+--+-- , requestDescribePermissionSetProvisioningStatus $+-- newDescribePermissionSetProvisioningStatus+--+-- , requestDetachCustomerManagedPolicyReferenceFromPermissionSet $+-- newDetachCustomerManagedPolicyReferenceFromPermissionSet+--+-- , requestDetachManagedPolicyFromPermissionSet $+-- newDetachManagedPolicyFromPermissionSet+--+-- , requestGetInlinePolicyForPermissionSet $+-- newGetInlinePolicyForPermissionSet+--+-- , requestGetPermissionsBoundaryForPermissionSet $+-- newGetPermissionsBoundaryForPermissionSet+--+-- , requestListAccountAssignmentCreationStatus $+-- newListAccountAssignmentCreationStatus+--+-- , requestListAccountAssignmentDeletionStatus $+-- newListAccountAssignmentDeletionStatus+--+-- , requestListAccountAssignments $+-- newListAccountAssignments+--+-- , requestListAccountsForProvisionedPermissionSet $+-- newListAccountsForProvisionedPermissionSet+--+-- , requestListCustomerManagedPolicyReferencesInPermissionSet $+-- newListCustomerManagedPolicyReferencesInPermissionSet+--+-- , requestListInstances $+-- newListInstances+--+-- , requestListManagedPoliciesInPermissionSet $+-- newListManagedPoliciesInPermissionSet+--+-- , requestListPermissionSetProvisioningStatus $+-- newListPermissionSetProvisioningStatus+--+-- , requestListPermissionSets $+-- newListPermissionSets+--+-- , requestListPermissionSetsProvisionedToAccount $+-- newListPermissionSetsProvisionedToAccount+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestProvisionPermissionSet $+-- newProvisionPermissionSet+--+-- , requestPutInlinePolicyToPermissionSet $+-- newPutInlinePolicyToPermissionSet+--+-- , requestPutPermissionsBoundaryToPermissionSet $+-- newPutPermissionsBoundaryToPermissionSet+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateInstanceAccessControlAttributeConfiguration $+-- newUpdateInstanceAccessControlAttributeConfiguration+--+-- , requestUpdatePermissionSet $+-- newUpdatePermissionSet+--+-- ]++-- , testGroup "response"+-- [ responseAttachCustomerManagedPolicyReferenceToPermissionSet $+-- newAttachCustomerManagedPolicyReferenceToPermissionSetResponse+--+-- , responseAttachManagedPolicyToPermissionSet $+-- newAttachManagedPolicyToPermissionSetResponse+--+-- , responseCreateAccountAssignment $+-- newCreateAccountAssignmentResponse+--+-- , responseCreateInstanceAccessControlAttributeConfiguration $+-- newCreateInstanceAccessControlAttributeConfigurationResponse+--+-- , responseCreatePermissionSet $+-- newCreatePermissionSetResponse+--+-- , responseDeleteAccountAssignment $+-- newDeleteAccountAssignmentResponse+--+-- , responseDeleteInlinePolicyFromPermissionSet $+-- newDeleteInlinePolicyFromPermissionSetResponse+--+-- , responseDeleteInstanceAccessControlAttributeConfiguration $+-- newDeleteInstanceAccessControlAttributeConfigurationResponse+--+-- , responseDeletePermissionSet $+-- newDeletePermissionSetResponse+--+-- , responseDeletePermissionsBoundaryFromPermissionSet $+-- newDeletePermissionsBoundaryFromPermissionSetResponse+--+-- , responseDescribeAccountAssignmentCreationStatus $+-- newDescribeAccountAssignmentCreationStatusResponse+--+-- , responseDescribeAccountAssignmentDeletionStatus $+-- newDescribeAccountAssignmentDeletionStatusResponse+--+-- , responseDescribeInstanceAccessControlAttributeConfiguration $+-- newDescribeInstanceAccessControlAttributeConfigurationResponse+--+-- , responseDescribePermissionSet $+-- newDescribePermissionSetResponse+--+-- , responseDescribePermissionSetProvisioningStatus $+-- newDescribePermissionSetProvisioningStatusResponse+--+-- , responseDetachCustomerManagedPolicyReferenceFromPermissionSet $+-- newDetachCustomerManagedPolicyReferenceFromPermissionSetResponse+--+-- , responseDetachManagedPolicyFromPermissionSet $+-- newDetachManagedPolicyFromPermissionSetResponse+--+-- , responseGetInlinePolicyForPermissionSet $+-- newGetInlinePolicyForPermissionSetResponse+--+-- , responseGetPermissionsBoundaryForPermissionSet $+-- newGetPermissionsBoundaryForPermissionSetResponse+--+-- , responseListAccountAssignmentCreationStatus $+-- newListAccountAssignmentCreationStatusResponse+--+-- , responseListAccountAssignmentDeletionStatus $+-- newListAccountAssignmentDeletionStatusResponse+--+-- , responseListAccountAssignments $+-- newListAccountAssignmentsResponse+--+-- , responseListAccountsForProvisionedPermissionSet $+-- newListAccountsForProvisionedPermissionSetResponse+--+-- , responseListCustomerManagedPolicyReferencesInPermissionSet $+-- newListCustomerManagedPolicyReferencesInPermissionSetResponse+--+-- , responseListInstances $+-- newListInstancesResponse+--+-- , responseListManagedPoliciesInPermissionSet $+-- newListManagedPoliciesInPermissionSetResponse+--+-- , responseListPermissionSetProvisioningStatus $+-- newListPermissionSetProvisioningStatusResponse+--+-- , responseListPermissionSets $+-- newListPermissionSetsResponse+--+-- , responseListPermissionSetsProvisionedToAccount $+-- newListPermissionSetsProvisionedToAccountResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseProvisionPermissionSet $+-- newProvisionPermissionSetResponse+--+-- , responsePutInlinePolicyToPermissionSet $+-- newPutInlinePolicyToPermissionSetResponse+--+-- , responsePutPermissionsBoundaryToPermissionSet $+-- newPutPermissionsBoundaryToPermissionSetResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateInstanceAccessControlAttributeConfiguration $+-- newUpdateInstanceAccessControlAttributeConfigurationResponse+--+-- , responseUpdatePermissionSet $+-- newUpdatePermissionSetResponse+--+-- ]+-- ]++-- Requests++requestAttachCustomerManagedPolicyReferenceToPermissionSet :: AttachCustomerManagedPolicyReferenceToPermissionSet -> TestTree+requestAttachCustomerManagedPolicyReferenceToPermissionSet =+ req+ "AttachCustomerManagedPolicyReferenceToPermissionSet"+ "fixture/AttachCustomerManagedPolicyReferenceToPermissionSet.yaml"++requestAttachManagedPolicyToPermissionSet :: AttachManagedPolicyToPermissionSet -> TestTree+requestAttachManagedPolicyToPermissionSet =+ req+ "AttachManagedPolicyToPermissionSet"+ "fixture/AttachManagedPolicyToPermissionSet.yaml"++requestCreateAccountAssignment :: CreateAccountAssignment -> TestTree+requestCreateAccountAssignment =+ req+ "CreateAccountAssignment"+ "fixture/CreateAccountAssignment.yaml"++requestCreateInstanceAccessControlAttributeConfiguration :: CreateInstanceAccessControlAttributeConfiguration -> TestTree+requestCreateInstanceAccessControlAttributeConfiguration =+ req+ "CreateInstanceAccessControlAttributeConfiguration"+ "fixture/CreateInstanceAccessControlAttributeConfiguration.yaml"++requestCreatePermissionSet :: CreatePermissionSet -> TestTree+requestCreatePermissionSet =+ req+ "CreatePermissionSet"+ "fixture/CreatePermissionSet.yaml"++requestDeleteAccountAssignment :: DeleteAccountAssignment -> TestTree+requestDeleteAccountAssignment =+ req+ "DeleteAccountAssignment"+ "fixture/DeleteAccountAssignment.yaml"++requestDeleteInlinePolicyFromPermissionSet :: DeleteInlinePolicyFromPermissionSet -> TestTree+requestDeleteInlinePolicyFromPermissionSet =+ req+ "DeleteInlinePolicyFromPermissionSet"+ "fixture/DeleteInlinePolicyFromPermissionSet.yaml"++requestDeleteInstanceAccessControlAttributeConfiguration :: DeleteInstanceAccessControlAttributeConfiguration -> TestTree+requestDeleteInstanceAccessControlAttributeConfiguration =+ req+ "DeleteInstanceAccessControlAttributeConfiguration"+ "fixture/DeleteInstanceAccessControlAttributeConfiguration.yaml"++requestDeletePermissionSet :: DeletePermissionSet -> TestTree+requestDeletePermissionSet =+ req+ "DeletePermissionSet"+ "fixture/DeletePermissionSet.yaml"++requestDeletePermissionsBoundaryFromPermissionSet :: DeletePermissionsBoundaryFromPermissionSet -> TestTree+requestDeletePermissionsBoundaryFromPermissionSet =+ req+ "DeletePermissionsBoundaryFromPermissionSet"+ "fixture/DeletePermissionsBoundaryFromPermissionSet.yaml"++requestDescribeAccountAssignmentCreationStatus :: DescribeAccountAssignmentCreationStatus -> TestTree+requestDescribeAccountAssignmentCreationStatus =+ req+ "DescribeAccountAssignmentCreationStatus"+ "fixture/DescribeAccountAssignmentCreationStatus.yaml"++requestDescribeAccountAssignmentDeletionStatus :: DescribeAccountAssignmentDeletionStatus -> TestTree+requestDescribeAccountAssignmentDeletionStatus =+ req+ "DescribeAccountAssignmentDeletionStatus"+ "fixture/DescribeAccountAssignmentDeletionStatus.yaml"++requestDescribeInstanceAccessControlAttributeConfiguration :: DescribeInstanceAccessControlAttributeConfiguration -> TestTree+requestDescribeInstanceAccessControlAttributeConfiguration =+ req+ "DescribeInstanceAccessControlAttributeConfiguration"+ "fixture/DescribeInstanceAccessControlAttributeConfiguration.yaml"++requestDescribePermissionSet :: DescribePermissionSet -> TestTree+requestDescribePermissionSet =+ req+ "DescribePermissionSet"+ "fixture/DescribePermissionSet.yaml"++requestDescribePermissionSetProvisioningStatus :: DescribePermissionSetProvisioningStatus -> TestTree+requestDescribePermissionSetProvisioningStatus =+ req+ "DescribePermissionSetProvisioningStatus"+ "fixture/DescribePermissionSetProvisioningStatus.yaml"++requestDetachCustomerManagedPolicyReferenceFromPermissionSet :: DetachCustomerManagedPolicyReferenceFromPermissionSet -> TestTree+requestDetachCustomerManagedPolicyReferenceFromPermissionSet =+ req+ "DetachCustomerManagedPolicyReferenceFromPermissionSet"+ "fixture/DetachCustomerManagedPolicyReferenceFromPermissionSet.yaml"++requestDetachManagedPolicyFromPermissionSet :: DetachManagedPolicyFromPermissionSet -> TestTree+requestDetachManagedPolicyFromPermissionSet =+ req+ "DetachManagedPolicyFromPermissionSet"+ "fixture/DetachManagedPolicyFromPermissionSet.yaml"++requestGetInlinePolicyForPermissionSet :: GetInlinePolicyForPermissionSet -> TestTree+requestGetInlinePolicyForPermissionSet =+ req+ "GetInlinePolicyForPermissionSet"+ "fixture/GetInlinePolicyForPermissionSet.yaml"++requestGetPermissionsBoundaryForPermissionSet :: GetPermissionsBoundaryForPermissionSet -> TestTree+requestGetPermissionsBoundaryForPermissionSet =+ req+ "GetPermissionsBoundaryForPermissionSet"+ "fixture/GetPermissionsBoundaryForPermissionSet.yaml"++requestListAccountAssignmentCreationStatus :: ListAccountAssignmentCreationStatus -> TestTree+requestListAccountAssignmentCreationStatus =+ req+ "ListAccountAssignmentCreationStatus"+ "fixture/ListAccountAssignmentCreationStatus.yaml"++requestListAccountAssignmentDeletionStatus :: ListAccountAssignmentDeletionStatus -> TestTree+requestListAccountAssignmentDeletionStatus =+ req+ "ListAccountAssignmentDeletionStatus"+ "fixture/ListAccountAssignmentDeletionStatus.yaml"++requestListAccountAssignments :: ListAccountAssignments -> TestTree+requestListAccountAssignments =+ req+ "ListAccountAssignments"+ "fixture/ListAccountAssignments.yaml"++requestListAccountsForProvisionedPermissionSet :: ListAccountsForProvisionedPermissionSet -> TestTree+requestListAccountsForProvisionedPermissionSet =+ req+ "ListAccountsForProvisionedPermissionSet"+ "fixture/ListAccountsForProvisionedPermissionSet.yaml"++requestListCustomerManagedPolicyReferencesInPermissionSet :: ListCustomerManagedPolicyReferencesInPermissionSet -> TestTree+requestListCustomerManagedPolicyReferencesInPermissionSet =+ req+ "ListCustomerManagedPolicyReferencesInPermissionSet"+ "fixture/ListCustomerManagedPolicyReferencesInPermissionSet.yaml"++requestListInstances :: ListInstances -> TestTree+requestListInstances =+ req+ "ListInstances"+ "fixture/ListInstances.yaml"++requestListManagedPoliciesInPermissionSet :: ListManagedPoliciesInPermissionSet -> TestTree+requestListManagedPoliciesInPermissionSet =+ req+ "ListManagedPoliciesInPermissionSet"+ "fixture/ListManagedPoliciesInPermissionSet.yaml"++requestListPermissionSetProvisioningStatus :: ListPermissionSetProvisioningStatus -> TestTree+requestListPermissionSetProvisioningStatus =+ req+ "ListPermissionSetProvisioningStatus"+ "fixture/ListPermissionSetProvisioningStatus.yaml"++requestListPermissionSets :: ListPermissionSets -> TestTree+requestListPermissionSets =+ req+ "ListPermissionSets"+ "fixture/ListPermissionSets.yaml"++requestListPermissionSetsProvisionedToAccount :: ListPermissionSetsProvisionedToAccount -> TestTree+requestListPermissionSetsProvisionedToAccount =+ req+ "ListPermissionSetsProvisionedToAccount"+ "fixture/ListPermissionSetsProvisionedToAccount.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestProvisionPermissionSet :: ProvisionPermissionSet -> TestTree+requestProvisionPermissionSet =+ req+ "ProvisionPermissionSet"+ "fixture/ProvisionPermissionSet.yaml"++requestPutInlinePolicyToPermissionSet :: PutInlinePolicyToPermissionSet -> TestTree+requestPutInlinePolicyToPermissionSet =+ req+ "PutInlinePolicyToPermissionSet"+ "fixture/PutInlinePolicyToPermissionSet.yaml"++requestPutPermissionsBoundaryToPermissionSet :: PutPermissionsBoundaryToPermissionSet -> TestTree+requestPutPermissionsBoundaryToPermissionSet =+ req+ "PutPermissionsBoundaryToPermissionSet"+ "fixture/PutPermissionsBoundaryToPermissionSet.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateInstanceAccessControlAttributeConfiguration :: UpdateInstanceAccessControlAttributeConfiguration -> TestTree+requestUpdateInstanceAccessControlAttributeConfiguration =+ req+ "UpdateInstanceAccessControlAttributeConfiguration"+ "fixture/UpdateInstanceAccessControlAttributeConfiguration.yaml"++requestUpdatePermissionSet :: UpdatePermissionSet -> TestTree+requestUpdatePermissionSet =+ req+ "UpdatePermissionSet"+ "fixture/UpdatePermissionSet.yaml"++-- Responses++responseAttachCustomerManagedPolicyReferenceToPermissionSet :: AttachCustomerManagedPolicyReferenceToPermissionSetResponse -> TestTree+responseAttachCustomerManagedPolicyReferenceToPermissionSet =+ res+ "AttachCustomerManagedPolicyReferenceToPermissionSetResponse"+ "fixture/AttachCustomerManagedPolicyReferenceToPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AttachCustomerManagedPolicyReferenceToPermissionSet)++responseAttachManagedPolicyToPermissionSet :: AttachManagedPolicyToPermissionSetResponse -> TestTree+responseAttachManagedPolicyToPermissionSet =+ res+ "AttachManagedPolicyToPermissionSetResponse"+ "fixture/AttachManagedPolicyToPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AttachManagedPolicyToPermissionSet)++responseCreateAccountAssignment :: CreateAccountAssignmentResponse -> TestTree+responseCreateAccountAssignment =+ res+ "CreateAccountAssignmentResponse"+ "fixture/CreateAccountAssignmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateAccountAssignment)++responseCreateInstanceAccessControlAttributeConfiguration :: CreateInstanceAccessControlAttributeConfigurationResponse -> TestTree+responseCreateInstanceAccessControlAttributeConfiguration =+ res+ "CreateInstanceAccessControlAttributeConfigurationResponse"+ "fixture/CreateInstanceAccessControlAttributeConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateInstanceAccessControlAttributeConfiguration)++responseCreatePermissionSet :: CreatePermissionSetResponse -> TestTree+responseCreatePermissionSet =+ res+ "CreatePermissionSetResponse"+ "fixture/CreatePermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreatePermissionSet)++responseDeleteAccountAssignment :: DeleteAccountAssignmentResponse -> TestTree+responseDeleteAccountAssignment =+ res+ "DeleteAccountAssignmentResponse"+ "fixture/DeleteAccountAssignmentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteAccountAssignment)++responseDeleteInlinePolicyFromPermissionSet :: DeleteInlinePolicyFromPermissionSetResponse -> TestTree+responseDeleteInlinePolicyFromPermissionSet =+ res+ "DeleteInlinePolicyFromPermissionSetResponse"+ "fixture/DeleteInlinePolicyFromPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteInlinePolicyFromPermissionSet)++responseDeleteInstanceAccessControlAttributeConfiguration :: DeleteInstanceAccessControlAttributeConfigurationResponse -> TestTree+responseDeleteInstanceAccessControlAttributeConfiguration =+ res+ "DeleteInstanceAccessControlAttributeConfigurationResponse"+ "fixture/DeleteInstanceAccessControlAttributeConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteInstanceAccessControlAttributeConfiguration)++responseDeletePermissionSet :: DeletePermissionSetResponse -> TestTree+responseDeletePermissionSet =+ res+ "DeletePermissionSetResponse"+ "fixture/DeletePermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeletePermissionSet)++responseDeletePermissionsBoundaryFromPermissionSet :: DeletePermissionsBoundaryFromPermissionSetResponse -> TestTree+responseDeletePermissionsBoundaryFromPermissionSet =+ res+ "DeletePermissionsBoundaryFromPermissionSetResponse"+ "fixture/DeletePermissionsBoundaryFromPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeletePermissionsBoundaryFromPermissionSet)++responseDescribeAccountAssignmentCreationStatus :: DescribeAccountAssignmentCreationStatusResponse -> TestTree+responseDescribeAccountAssignmentCreationStatus =+ res+ "DescribeAccountAssignmentCreationStatusResponse"+ "fixture/DescribeAccountAssignmentCreationStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeAccountAssignmentCreationStatus)++responseDescribeAccountAssignmentDeletionStatus :: DescribeAccountAssignmentDeletionStatusResponse -> TestTree+responseDescribeAccountAssignmentDeletionStatus =+ res+ "DescribeAccountAssignmentDeletionStatusResponse"+ "fixture/DescribeAccountAssignmentDeletionStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeAccountAssignmentDeletionStatus)++responseDescribeInstanceAccessControlAttributeConfiguration :: DescribeInstanceAccessControlAttributeConfigurationResponse -> TestTree+responseDescribeInstanceAccessControlAttributeConfiguration =+ res+ "DescribeInstanceAccessControlAttributeConfigurationResponse"+ "fixture/DescribeInstanceAccessControlAttributeConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeInstanceAccessControlAttributeConfiguration)++responseDescribePermissionSet :: DescribePermissionSetResponse -> TestTree+responseDescribePermissionSet =+ res+ "DescribePermissionSetResponse"+ "fixture/DescribePermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribePermissionSet)++responseDescribePermissionSetProvisioningStatus :: DescribePermissionSetProvisioningStatusResponse -> TestTree+responseDescribePermissionSetProvisioningStatus =+ res+ "DescribePermissionSetProvisioningStatusResponse"+ "fixture/DescribePermissionSetProvisioningStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribePermissionSetProvisioningStatus)++responseDetachCustomerManagedPolicyReferenceFromPermissionSet :: DetachCustomerManagedPolicyReferenceFromPermissionSetResponse -> TestTree+responseDetachCustomerManagedPolicyReferenceFromPermissionSet =+ res+ "DetachCustomerManagedPolicyReferenceFromPermissionSetResponse"+ "fixture/DetachCustomerManagedPolicyReferenceFromPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DetachCustomerManagedPolicyReferenceFromPermissionSet)++responseDetachManagedPolicyFromPermissionSet :: DetachManagedPolicyFromPermissionSetResponse -> TestTree+responseDetachManagedPolicyFromPermissionSet =+ res+ "DetachManagedPolicyFromPermissionSetResponse"+ "fixture/DetachManagedPolicyFromPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DetachManagedPolicyFromPermissionSet)++responseGetInlinePolicyForPermissionSet :: GetInlinePolicyForPermissionSetResponse -> TestTree+responseGetInlinePolicyForPermissionSet =+ res+ "GetInlinePolicyForPermissionSetResponse"+ "fixture/GetInlinePolicyForPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetInlinePolicyForPermissionSet)++responseGetPermissionsBoundaryForPermissionSet :: GetPermissionsBoundaryForPermissionSetResponse -> TestTree+responseGetPermissionsBoundaryForPermissionSet =+ res+ "GetPermissionsBoundaryForPermissionSetResponse"+ "fixture/GetPermissionsBoundaryForPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetPermissionsBoundaryForPermissionSet)++responseListAccountAssignmentCreationStatus :: ListAccountAssignmentCreationStatusResponse -> TestTree+responseListAccountAssignmentCreationStatus =+ res+ "ListAccountAssignmentCreationStatusResponse"+ "fixture/ListAccountAssignmentCreationStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAccountAssignmentCreationStatus)++responseListAccountAssignmentDeletionStatus :: ListAccountAssignmentDeletionStatusResponse -> TestTree+responseListAccountAssignmentDeletionStatus =+ res+ "ListAccountAssignmentDeletionStatusResponse"+ "fixture/ListAccountAssignmentDeletionStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAccountAssignmentDeletionStatus)++responseListAccountAssignments :: ListAccountAssignmentsResponse -> TestTree+responseListAccountAssignments =+ res+ "ListAccountAssignmentsResponse"+ "fixture/ListAccountAssignmentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAccountAssignments)++responseListAccountsForProvisionedPermissionSet :: ListAccountsForProvisionedPermissionSetResponse -> TestTree+responseListAccountsForProvisionedPermissionSet =+ res+ "ListAccountsForProvisionedPermissionSetResponse"+ "fixture/ListAccountsForProvisionedPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListAccountsForProvisionedPermissionSet)++responseListCustomerManagedPolicyReferencesInPermissionSet :: ListCustomerManagedPolicyReferencesInPermissionSetResponse -> TestTree+responseListCustomerManagedPolicyReferencesInPermissionSet =+ res+ "ListCustomerManagedPolicyReferencesInPermissionSetResponse"+ "fixture/ListCustomerManagedPolicyReferencesInPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListCustomerManagedPolicyReferencesInPermissionSet)++responseListInstances :: ListInstancesResponse -> TestTree+responseListInstances =+ res+ "ListInstancesResponse"+ "fixture/ListInstancesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListInstances)++responseListManagedPoliciesInPermissionSet :: ListManagedPoliciesInPermissionSetResponse -> TestTree+responseListManagedPoliciesInPermissionSet =+ res+ "ListManagedPoliciesInPermissionSetResponse"+ "fixture/ListManagedPoliciesInPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListManagedPoliciesInPermissionSet)++responseListPermissionSetProvisioningStatus :: ListPermissionSetProvisioningStatusResponse -> TestTree+responseListPermissionSetProvisioningStatus =+ res+ "ListPermissionSetProvisioningStatusResponse"+ "fixture/ListPermissionSetProvisioningStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPermissionSetProvisioningStatus)++responseListPermissionSets :: ListPermissionSetsResponse -> TestTree+responseListPermissionSets =+ res+ "ListPermissionSetsResponse"+ "fixture/ListPermissionSetsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPermissionSets)++responseListPermissionSetsProvisionedToAccount :: ListPermissionSetsProvisionedToAccountResponse -> TestTree+responseListPermissionSetsProvisionedToAccount =+ res+ "ListPermissionSetsProvisionedToAccountResponse"+ "fixture/ListPermissionSetsProvisionedToAccountResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPermissionSetsProvisionedToAccount)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseProvisionPermissionSet :: ProvisionPermissionSetResponse -> TestTree+responseProvisionPermissionSet =+ res+ "ProvisionPermissionSetResponse"+ "fixture/ProvisionPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ProvisionPermissionSet)++responsePutInlinePolicyToPermissionSet :: PutInlinePolicyToPermissionSetResponse -> TestTree+responsePutInlinePolicyToPermissionSet =+ res+ "PutInlinePolicyToPermissionSetResponse"+ "fixture/PutInlinePolicyToPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutInlinePolicyToPermissionSet)++responsePutPermissionsBoundaryToPermissionSet :: PutPermissionsBoundaryToPermissionSetResponse -> TestTree+responsePutPermissionsBoundaryToPermissionSet =+ res+ "PutPermissionsBoundaryToPermissionSetResponse"+ "fixture/PutPermissionsBoundaryToPermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutPermissionsBoundaryToPermissionSet)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+ res+ "TagResourceResponse"+ "fixture/TagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagResource)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+ res+ "UntagResourceResponse"+ "fixture/UntagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateInstanceAccessControlAttributeConfiguration :: UpdateInstanceAccessControlAttributeConfigurationResponse -> TestTree+responseUpdateInstanceAccessControlAttributeConfiguration =+ res+ "UpdateInstanceAccessControlAttributeConfigurationResponse"+ "fixture/UpdateInstanceAccessControlAttributeConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateInstanceAccessControlAttributeConfiguration)++responseUpdatePermissionSet :: UpdatePermissionSetResponse -> TestTree+responseUpdatePermissionSet =+ res+ "UpdatePermissionSetResponse"+ "fixture/UpdatePermissionSetResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdatePermissionSet)
+ test/Test/Amazonka/SSOAdmin.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.SSOAdmin+-- 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.SSOAdmin+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/SSOAdmin/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.SSOAdmin.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.SSOAdmin.Internal where