aws-sdk-iam 0.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- aws_sdk_iam-0.2.0/LICENSE +21 -0
- aws_sdk_iam-0.2.0/PKG-INFO +111 -0
- aws_sdk_iam-0.2.0/README.md +89 -0
- aws_sdk_iam-0.2.0/pyproject.toml +41 -0
- aws_sdk_iam-0.2.0/setup.cfg +4 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/__init__.py +15 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_async.py +25 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_auth/_identity.py +15 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_auth/_providers.py +159 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_auth/_signers.py +83 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_auth/_sigv4.py +364 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_auth/_zapros_handler.py +62 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/accept_delegation_request.py +143 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/add_client_id_to_open_id_connect_provider.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/add_role_to_instance_profile.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/add_user_to_group.py +141 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/associate_delegation_request.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/attach_group_policy.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/attach_role_policy.py +159 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/attach_user_policy.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/change_password.py +159 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_access_key.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_account_alias.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_delegation_request.py +177 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_group.py +167 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_instance_profile.py +173 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_login_profile.py +175 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_open_id_connect_provider.py +181 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_policy.py +179 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_policy_version.py +173 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_role.py +175 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_saml_provider.py +175 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_service_linked_role.py +169 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_service_specific_credential.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_user.py +175 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/create_virtual_mfa_device.py +177 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/deactivate_mfa_device.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_access_key.py +141 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_account_alias.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_account_password_policy.py +130 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_group.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_group_policy.py +141 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_instance_profile.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_login_profile.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_open_id_connect_provider.py +143 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_policy.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_policy_version.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_role.py +159 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_role_permissions_boundary.py +143 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_role_policy.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_saml_provider.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_server_certificate.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_service_linked_role.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_service_specific_credential.py +131 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_signing_certificate.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_ssh_public_key.py +129 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_user.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_user_permissions_boundary.py +137 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_user_policy.py +141 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/delete_virtual_mfa_device.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/detach_group_policy.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/detach_role_policy.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/detach_user_policy.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/disable_organizations_root_credentials_management.py +169 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/disable_organizations_root_sessions.py +169 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/disable_outbound_web_identity_federation.py +118 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/enable_mfa_device.py +165 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/enable_organizations_root_credentials_management.py +175 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/enable_organizations_root_sessions.py +175 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/enable_outbound_web_identity_federation.py +140 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/generate_credential_report.py +146 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/generate_organizations_access_report.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/generate_service_last_accessed_details.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_access_key_last_used.py +143 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_account_authorization_details.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_account_password_policy.py +146 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_account_summary.py +142 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_context_keys_for_custom_policy.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_context_keys_for_principal_policy.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_credential_report.py +158 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_delegation_request.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_group.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_group_policy.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_human_readable_summary.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_instance_profile.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_login_profile.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_mfa_device.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_open_id_connect_provider.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_organizations_access_report.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_outbound_web_identity_federation_info.py +140 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_policy.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_policy_version.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_role.py +150 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_role_policy.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_saml_provider.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_server_certificate.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_service_last_accessed_details.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_service_last_accessed_details_with_entities.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_service_linked_role_deletion_status.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_ssh_public_key.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_user.py +150 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/get_user_policy.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_access_keys.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_account_aliases.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_attached_group_policies.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_attached_role_policies.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_attached_user_policies.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_delegation_requests.py +161 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_entities_for_policy.py +161 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_group_policies.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_groups.py +145 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_groups_for_user.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_instance_profile_tags.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_instance_profiles.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_instance_profiles_for_role.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_mfa_device_tags.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_mfa_devices.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_open_id_connect_provider_tags.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_open_id_connect_providers.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_organizations_features.py +169 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_policies.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_policies_granting_service_access.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_policy_tags.py +161 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_policy_versions.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_role_policies.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_role_tags.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_roles.py +145 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_saml_provider_tags.py +161 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_saml_providers.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_server_certificate_tags.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_server_certificates.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_service_specific_credentials.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_signing_certificates.py +159 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_ssh_public_keys.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_user_policies.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_user_tags.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_users.py +145 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/list_virtual_mfa_devices.py +143 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/put_group_policy.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/put_role_permissions_boundary.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/put_role_policy.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/put_user_permissions_boundary.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/put_user_policy.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/reject_delegation_request.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/remove_client_id_from_open_id_connect_provider.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/remove_role_from_instance_profile.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/remove_user_from_group.py +141 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/reset_service_specific_credential.py +151 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/resync_mfa_device.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/send_delegation_token.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/set_default_policy_version.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/set_security_token_service_preferences.py +131 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/simulate_custom_policy.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/simulate_principal_policy.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/tag_instance_profile.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/tag_mfa_device.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/tag_open_id_connect_provider.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/tag_policy.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/tag_role.py +152 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/tag_saml_provider.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/tag_server_certificate.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/tag_user.py +152 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/untag_instance_profile.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/untag_mfa_device.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/untag_open_id_connect_provider.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/untag_policy.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/untag_role.py +141 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/untag_saml_provider.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/untag_server_certificate.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/untag_user.py +141 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_access_key.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_account_password_policy.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_assume_role_policy.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_delegation_request.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_group.py +147 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_login_profile.py +153 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_open_id_connect_provider_thumbprint.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_role.py +157 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_role_description.py +161 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_saml_provider.py +175 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_server_certificate.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_service_specific_credential.py +131 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_signing_certificate.py +149 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_ssh_public_key.py +135 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/update_user.py +159 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/upload_server_certificate.py +189 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/upload_signing_certificate.py +193 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_operations/aws_identity_management_v20100508/upload_ssh_public_key.py +175 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_pagination.py +21 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_protocol/__init__.py +1 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_protocol/errors.py +58 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_protocol/xml.py +27 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_rule_engine/__init__.py +0 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_rule_engine/_aws_partition.py +160 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_rule_engine/_endpoint_rule_set.py +507 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_rule_engine/_endpoint_runtime.py +389 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_services/_pipeline.py +194 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_services/async_iam.py +9492 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/_services/iam.py +9301 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/__init__.py +108 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/_base.py +94 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/account_not_management_or_delegated_administrator_exception.py +54 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/caller_is_not_management_account_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/concurrent_modification_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/credential_report_expired_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/credential_report_not_present_exception.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/credential_report_not_ready_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/delete_conflict_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/duplicate_certificate_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/duplicate_ssh_public_key_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/entity_already_exists_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/entity_temporarily_unmodifiable_exception.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/feature_disabled_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/feature_enabled_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/invalid_authentication_code_exception.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/invalid_certificate_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/invalid_input_exception.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/invalid_public_key_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/invalid_user_type_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/key_pair_mismatch_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/limit_exceeded_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/malformed_certificate_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/malformed_policy_document_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/no_such_entity_exception.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/open_id_idp_communication_error_exception.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/organization_not_found_exception.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/organization_not_in_all_features_mode_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/password_policy_violation_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/policy_evaluation_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/policy_not_attachable_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/report_generation_limit_exceeded_exception.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/service_access_not_enabled_exception.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/service_failure_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/service_not_supported_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/unmodifiable_entity_exception.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/errors/unrecognized_public_key_encoding_exception.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/py.typed +0 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/accept_delegation_request_request.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_advisor_usage_granularity_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_detail.py +91 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_details.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_key.py +80 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_key_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_key_last_used.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_key_metadata.py +67 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_key_metadata_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/access_key_secret_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/account_alias_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/account_alias_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/account_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/action_name_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/action_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/add_client_id_to_open_id_connect_provider_request.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/add_role_to_instance_profile_request.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/add_user_to_group_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/all_users.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/arn_list_type.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/arn_type.py +6 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/assertion_encryption_mode_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/assignment_status_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/associate_delegation_request_request.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/attach_group_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/attach_role_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/attach_user_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/attached_permissions_boundary.py +53 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/attached_policies_list_type.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/attached_policy.py +36 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/attachment_count_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/authentication_code_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/boolean_object_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/boolean_type.py +7 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/bootstrap_datum.py +26 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/certificate_body_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/certificate_chain_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/certificate_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/certificate_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/certification_key_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/certification_map_type.py +56 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/certification_value_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/change_password_request.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/client_id_list_type.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/client_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/column_number.py +7 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/concurrent_modification_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/console_deep_link_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/context_entry.py +71 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/context_entry_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/context_key_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/context_key_names_result_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/context_key_type_enum.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/context_key_value_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/context_key_value_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_access_key_request.py +31 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_access_key_response.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_account_alias_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_delegation_request_request.py +131 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_delegation_request_response.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_group_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_group_response.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_instance_profile_request.py +57 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_instance_profile_response.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_login_profile_request.py +53 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_login_profile_response.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_open_id_connect_provider_request.py +83 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_open_id_connect_provider_response.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_policy_request.py +72 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_policy_response.py +35 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_policy_version_request.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_policy_version_response.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_role_request.py +105 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_role_response.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_saml_provider_request.py +90 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_saml_provider_response.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_service_linked_role_request.py +51 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_service_linked_role_response.py +33 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_service_specific_credential_request.py +56 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_service_specific_credential_response.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_user_request.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_user_response.py +33 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_virtual_mfa_device_request.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/create_virtual_mfa_device_response.py +42 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/credential_age_days.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/credential_report_expired_exception_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/credential_report_not_present_exception_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/credential_report_not_ready_exception_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/custom_suffix_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/date_type.py +24 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/deactivate_mfa_device_request.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delegation_permission.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delegation_request.py +249 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delegation_request_description_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delegation_request_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delegation_requests_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_access_key_request.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_account_alias_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_conflict_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_group_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_group_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_instance_profile_request.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_login_profile_request.py +29 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_open_id_connect_provider_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_policy_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_policy_version_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_role_permissions_boundary_request.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_role_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_role_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_saml_provider_request.py +32 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_server_certificate_request.py +36 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_service_linked_role_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_service_linked_role_response.py +32 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_service_specific_credential_request.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_signing_certificate_request.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_ssh_public_key_request.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_user_permissions_boundary_request.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_user_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_user_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/delete_virtual_mfa_device_request.py +32 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/deletion_task_failure_reason_type.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/deletion_task_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/deletion_task_status_type.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/detach_group_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/detach_role_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/detach_user_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/disable_organizations_root_credentials_management_request.py +24 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/disable_organizations_root_credentials_management_response.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/disable_organizations_root_sessions_request.py +22 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/disable_organizations_root_sessions_response.py +53 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/duplicate_certificate_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/duplicate_ssh_public_key_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/enable_mfa_device_request.py +64 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/enable_organizations_root_credentials_management_request.py +24 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/enable_organizations_root_credentials_management_response.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/enable_organizations_root_sessions_request.py +22 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/enable_organizations_root_sessions_response.py +53 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/enable_outbound_web_identity_federation_response.py +31 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/encoding_type.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/entity_already_exists_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/entity_details.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/entity_details_list_type.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/entity_info.py +73 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/entity_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/entity_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/entity_temporarily_unmodifiable_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/entity_type.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/error_details.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/eval_decision_details_type.py +76 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/eval_decision_source_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/evaluation_result.py +190 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/evaluation_results_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/exception_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/existing_user_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/feature_disabled_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/feature_enabled_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/feature_type.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/features_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/generate_credential_report_response.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/generate_organizations_access_report_request.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/generate_organizations_access_report_response.py +31 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/generate_service_last_accessed_details_request.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/generate_service_last_accessed_details_response.py +31 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_access_key_last_used_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_access_key_last_used_response.py +51 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_account_authorization_details_request.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_account_authorization_details_response.py +125 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_account_password_policy_response.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_account_summary_response.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_context_keys_for_custom_policy_request.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_context_keys_for_policy_response.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_context_keys_for_principal_policy_request.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_credential_report_response.py +69 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_delegation_request_request.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_delegation_request_response.py +81 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_group_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_group_policy_response.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_group_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_group_response.py +72 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_human_readable_summary_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_human_readable_summary_response.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_instance_profile_request.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_instance_profile_response.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_login_profile_request.py +29 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_login_profile_response.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_mfa_device_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_mfa_device_response.py +75 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_open_id_connect_provider_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_open_id_connect_provider_response.py +99 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_organizations_access_report_request.py +67 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_organizations_access_report_response.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_outbound_web_identity_federation_info_response.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_policy_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_policy_response.py +35 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_policy_version_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_policy_version_response.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_role_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_role_policy_response.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_role_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_role_response.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_saml_provider_request.py +30 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_saml_provider_response.py +126 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_server_certificate_request.py +36 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_server_certificate_response.py +42 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_service_last_accessed_details_request.py +51 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_service_last_accessed_details_response.py +159 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_service_last_accessed_details_with_entities_request.py +62 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_service_last_accessed_details_with_entities_response.py +139 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_service_linked_role_deletion_status_request.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_service_linked_role_deletion_status_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_ssh_public_key_request.py +56 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_ssh_public_key_response.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_user_policy_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_user_policy_response.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_user_request.py +31 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/get_user_response.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/global_endpoint_token_version.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/group.py +72 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/group_detail.py +110 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/group_detail_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/group_list_type.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/group_name_list_type.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/group_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/instance_profile.py +106 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/instance_profile_list_type.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/instance_profile_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/integer_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/invalid_authentication_code_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/invalid_certificate_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/invalid_input_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/invalid_public_key_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/invalid_user_type_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/job_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/job_status_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/key_pair_mismatch_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/limit_exceeded_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/line_number.py +7 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_access_keys_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_access_keys_response.py +67 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_account_aliases_request.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_account_aliases_response.py +65 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_attached_group_policies_request.py +57 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_attached_group_policies_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_attached_role_policies_request.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_attached_role_policies_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_attached_user_policies_request.py +55 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_attached_user_policies_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_delegation_requests_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_delegation_requests_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_entities_for_policy_request.py +91 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_entities_for_policy_response.py +99 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_group_policies_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_group_policies_response.py +61 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_groups_for_user_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_groups_for_user_response.py +61 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_groups_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_groups_response.py +61 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_instance_profile_tags_request.py +51 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_instance_profile_tags_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_instance_profiles_for_role_request.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_instance_profiles_for_role_response.py +69 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_instance_profiles_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_instance_profiles_response.py +67 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_mfa_device_tags_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_mfa_device_tags_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_mfa_devices_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_mfa_devices_response.py +61 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_open_id_connect_provider_tags_request.py +58 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_open_id_connect_provider_tags_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_open_id_connect_providers_request.py +20 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_open_id_connect_providers_response.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_organizations_features_request.py +20 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_organizations_features_response.py +51 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policies_granting_service_access_entry.py +53 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policies_granting_service_access_request.py +66 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policies_granting_service_access_response.py +69 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policies_request.py +95 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policies_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policy_granting_service_access_response_list_type.py +66 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policy_tags_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policy_tags_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policy_versions_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_policy_versions_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_role_policies_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_role_policies_response.py +61 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_role_tags_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_role_tags_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_roles_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_roles_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_saml_provider_tags_request.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_saml_provider_tags_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_saml_providers_request.py +20 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_saml_providers_response.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_server_certificate_tags_request.py +53 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_server_certificate_tags_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_server_certificates_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_server_certificates_response.py +67 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_service_specific_credentials_request.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_service_specific_credentials_response.py +67 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_signing_certificates_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_signing_certificates_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_ssh_public_keys_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_ssh_public_keys_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_user_policies_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_user_policies_response.py +61 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_user_tags_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_user_tags_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_users_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_users_response.py +59 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_virtual_mfa_devices_request.py +57 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/list_virtual_mfa_devices_response.py +67 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/locale_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/login_profile.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/malformed_certificate_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/malformed_policy_document_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/managed_policy_detail.py +163 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/managed_policy_detail_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/marker_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/max_items_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/max_password_age_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/mfa_device.py +56 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/mfa_device_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/minimum_password_length_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/no_such_entity_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/notes_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/notification_channel_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/open_id_connect_provider_list_entry.py +28 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/open_id_connect_provider_list_type.py +60 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/open_id_connect_provider_url_type.py +6 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/open_id_idp_communication_error_exception_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/organization_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/organizations_decision_detail.py +36 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/organizations_entity_path_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/organizations_policy_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/owner_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/password_policy.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/password_policy_violation_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/password_reuse_prevention_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/password_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/path_prefix_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/path_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/permission_check_result_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/permission_check_status_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/permission_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/permissions_boundary_attachment_type.py +33 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/permissions_boundary_decision_detail.py +36 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy.py +155 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_description_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_detail.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_detail_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_document_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_document_version_list_type.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_evaluation_decision_type.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_evaluation_error_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_granting_service_access.py +83 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_granting_service_access_list_type.py +62 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_group.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_group_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_identifier_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_list_type.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_name_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_not_attachable_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_owner_entity_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_parameter.py +69 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_parameter_list_type.py +50 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_parameter_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_parameter_type_enum.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_parameter_value_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_parameter_values_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_path_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_role.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_role_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_scope_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_source_type.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_type.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_usage_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_user.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_user_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_version.py +71 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/policy_version_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/position.py +36 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/private_key_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/private_key_list.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/private_key_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/public_key_fingerprint_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/public_key_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/public_key_material_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/put_group_policy_request.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/put_role_permissions_boundary_request.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/put_role_policy_request.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/put_user_permissions_boundary_request.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/put_user_policy_request.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/reason_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/redirect_url_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/region_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/reject_delegation_request_request.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/remove_client_id_from_open_id_connect_provider_request.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/remove_role_from_instance_profile_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/remove_user_from_group_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/report_content_type.py +26 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/report_format_type.py +31 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/report_generation_limit_exceeded_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/report_state_description_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/report_state_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/request_message_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/requestor_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/requestor_workflow_id_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/reset_service_specific_credential_request.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/reset_service_specific_credential_response.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/resource_handling_option_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/resource_name_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/resource_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/resource_specific_result.py +138 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/resource_specific_result_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/response_marker_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/resync_mfa_device_request.py +64 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role.py +162 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_description_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_detail.py +197 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_detail_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_last_used.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_list_type.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_max_session_duration_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_permission_restriction_arn_list_type.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_usage_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/role_usage_type.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/saml_metadata_document_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/saml_private_key.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/saml_provider_list_entry.py +60 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/saml_provider_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/saml_provider_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/send_delegation_token_request.py +34 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/serial_number_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/server_certificate.py +80 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/server_certificate_metadata.py +97 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/server_certificate_metadata_list_type.py +58 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/server_certificate_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_credential_alias.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_credential_secret.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_failure_exception_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_last_accessed.py +125 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_name.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_namespace_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_namespace_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_not_supported_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_password.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_specific_credential.py +154 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_specific_credential_id.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_specific_credential_metadata.py +134 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_specific_credentials_list_type.py +62 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/service_user_name.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/services_last_accessed.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/session_duration_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/set_default_policy_version_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/set_security_token_service_preferences_request.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/signing_certificate.py +80 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/simulate_custom_policy_request.py +178 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/simulate_policy_response.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/simulate_principal_policy_request.py +188 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/simulation_policy_list_type.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/sort_key_type.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/ssh_public_key.py +93 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/ssh_public_key_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/ssh_public_key_metadata.py +71 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/state_type.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/statement.py +82 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/statement_list_type.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/status_type.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/string_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/summary_content_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/summary_key_type.py +103 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/summary_map_type.py +71 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/summary_state_type.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/summary_value_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_instance_profile_request.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_key_list_type.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_key_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_list_type.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_mfa_device_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_open_id_connect_provider_request.py +54 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_policy_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_role_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_saml_provider_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_server_certificate_request.py +51 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_user_request.py +45 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tag_value_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/thumbprint_list_type.py +38 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/thumbprint_type.py +6 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tracked_action_last_accessed.py +63 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/tracked_actions_last_accessed.py +56 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/unmodifiable_entity_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/unrecognized_public_key_encoding_message.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/untag_instance_profile_request.py +51 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/untag_mfa_device_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/untag_open_id_connect_provider_request.py +58 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/untag_policy_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/untag_role_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/untag_saml_provider_request.py +49 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/untag_server_certificate_request.py +53 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/untag_user_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_access_key_request.py +56 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_account_password_policy_request.py +142 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_assume_role_policy_request.py +41 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_delegation_request_request.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_group_request.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_login_profile_request.py +56 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_open_id_connect_provider_thumbprint_request.py +62 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_role_description_request.py +39 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_role_description_response.py +33 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_role_request.py +53 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_role_response.py +20 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_saml_provider_request.py +85 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_saml_provider_response.py +29 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_server_certificate_request.py +61 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_service_specific_credential_request.py +69 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_signing_certificate_request.py +58 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_ssh_public_key_request.py +56 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/update_user_request.py +47 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/upload_server_certificate_request.py +91 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/upload_server_certificate_response.py +57 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/upload_signing_certificate_request.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/upload_signing_certificate_response.py +40 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/upload_ssh_public_key_request.py +43 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/upload_ssh_public_key_response.py +37 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/user.py +122 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/user_detail.py +160 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/user_detail_list_type.py +48 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/user_list_type.py +46 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/user_name_type.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/virtual_mfa_device.py +104 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/virtual_mfa_device_list_type.py +52 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam/types/virtual_mfa_device_name.py +5 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam.egg-info/PKG-INFO +111 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam.egg-info/SOURCES.txt +779 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam.egg-info/dependency_links.txt +1 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam.egg-info/requires.txt +1 -0
- aws_sdk_iam-0.2.0/src/aws_sdk_iam.egg-info/top_level.txt +1 -0
- aws_sdk_iam-0.2.0/tests/test_endpoint_rules.py +315 -0
- aws_sdk_iam-0.2.0/tests/test_sigv4.py +433 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Karen Petrosyan
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: aws-sdk-iam
|
|
3
|
+
Version: 0.2.0
|
|
4
|
+
Summary: Python SDK for AWS IAM.
|
|
5
|
+
Classifier: Development Status :: 4 - Beta
|
|
6
|
+
Classifier: Intended Audience :: Developers
|
|
7
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
8
|
+
Classifier: Operating System :: OS Independent
|
|
9
|
+
Classifier: Programming Language :: Python :: 3
|
|
10
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
15
|
+
Classifier: Topic :: Software Development :: Code Generators
|
|
16
|
+
Classifier: Typing :: Typed
|
|
17
|
+
Requires-Python: >=3.10
|
|
18
|
+
Description-Content-Type: text/markdown
|
|
19
|
+
License-File: LICENSE
|
|
20
|
+
Requires-Dist: zapros>=0.12.0
|
|
21
|
+
Dynamic: license-file
|
|
22
|
+
|
|
23
|
+
# Getting Started
|
|
24
|
+
|
|
25
|
+
## Installation
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
pip install aws_sdk_iam
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Usage
|
|
32
|
+
|
|
33
|
+
```python
|
|
34
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
async def main():
|
|
38
|
+
async with AsyncIAMClient() as s3:
|
|
39
|
+
# Example: call the accept_delegation_request operation
|
|
40
|
+
response = await s3.accept_delegation_request()
|
|
41
|
+
print(response)
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Pagination
|
|
45
|
+
|
|
46
|
+
Some operations in this SDK support pagination. If the operation supports pagination it will have an `iter_` prefixed method that returns an async iterator.
|
|
47
|
+
|
|
48
|
+
```python
|
|
49
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
async def main():
|
|
53
|
+
async with AsyncIAMClient() as s3:
|
|
54
|
+
# Example: paginate over get_group
|
|
55
|
+
async for item in s3.iter_get_group():
|
|
56
|
+
print(item)
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Waiters
|
|
60
|
+
|
|
61
|
+
Waiters poll an operation until a resource reaches a desired state. If the operation supports waiters it will have a `wait_` prefixed method.
|
|
62
|
+
|
|
63
|
+
```python
|
|
64
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
async def main():
|
|
68
|
+
async with AsyncIAMClient() as s3:
|
|
69
|
+
# Example: wait for instance_profile_exists
|
|
70
|
+
await s3.wait_instance_profile_exists(max_wait_time=300)
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Error Handling
|
|
74
|
+
|
|
75
|
+
The SDK raises exceptions for errors returned by the API. Catch them to handle failures gracefully.
|
|
76
|
+
|
|
77
|
+
```python
|
|
78
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
79
|
+
from aws_sdk_iam.error import ConcurrentModificationException
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
async def main():
|
|
83
|
+
async with AsyncIAMClient() as s3:
|
|
84
|
+
try:
|
|
85
|
+
await s3.accept_delegation_request()
|
|
86
|
+
except ConcurrentModificationException as e:
|
|
87
|
+
print(f"Error: {e}")
|
|
88
|
+
print(e.data) # additional error data
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Retrying
|
|
92
|
+
|
|
93
|
+
The SDK retries failed operations automatically. Retry behaviour follows the Smithy specification: errors are retried based on their `is_retryable` and `is_throttling_error` attributes. Throttling errors use a longer base delay. Network-level failures (connection errors and timeouts) are also retried. Non-retryable errors, such as client errors without the `@retryable` trait, are raised immediately without further attempts.
|
|
94
|
+
|
|
95
|
+
The number of attempts defaults to 3 and can be changed at the client level via `retry_max_attempts`, or per call via `config_overrides`.
|
|
96
|
+
|
|
97
|
+
```python
|
|
98
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
async def main():
|
|
102
|
+
async with AsyncIAMClient() as s3:
|
|
103
|
+
# Default: 3 attempts for every operation
|
|
104
|
+
response = await s3.accept_delegation_request()
|
|
105
|
+
|
|
106
|
+
# Override per operation
|
|
107
|
+
response = await s3.accept_delegation_request(config_overrides={"retry_max_attempts": 5})
|
|
108
|
+
|
|
109
|
+
# Disable retries for this call
|
|
110
|
+
response = await s3.accept_delegation_request(config_overrides={"retry_max_attempts": 1})
|
|
111
|
+
```
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# Getting Started
|
|
2
|
+
|
|
3
|
+
## Installation
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
pip install aws_sdk_iam
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## Usage
|
|
10
|
+
|
|
11
|
+
```python
|
|
12
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
async def main():
|
|
16
|
+
async with AsyncIAMClient() as s3:
|
|
17
|
+
# Example: call the accept_delegation_request operation
|
|
18
|
+
response = await s3.accept_delegation_request()
|
|
19
|
+
print(response)
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Pagination
|
|
23
|
+
|
|
24
|
+
Some operations in this SDK support pagination. If the operation supports pagination it will have an `iter_` prefixed method that returns an async iterator.
|
|
25
|
+
|
|
26
|
+
```python
|
|
27
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
async def main():
|
|
31
|
+
async with AsyncIAMClient() as s3:
|
|
32
|
+
# Example: paginate over get_group
|
|
33
|
+
async for item in s3.iter_get_group():
|
|
34
|
+
print(item)
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Waiters
|
|
38
|
+
|
|
39
|
+
Waiters poll an operation until a resource reaches a desired state. If the operation supports waiters it will have a `wait_` prefixed method.
|
|
40
|
+
|
|
41
|
+
```python
|
|
42
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
async def main():
|
|
46
|
+
async with AsyncIAMClient() as s3:
|
|
47
|
+
# Example: wait for instance_profile_exists
|
|
48
|
+
await s3.wait_instance_profile_exists(max_wait_time=300)
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Error Handling
|
|
52
|
+
|
|
53
|
+
The SDK raises exceptions for errors returned by the API. Catch them to handle failures gracefully.
|
|
54
|
+
|
|
55
|
+
```python
|
|
56
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
57
|
+
from aws_sdk_iam.error import ConcurrentModificationException
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
async def main():
|
|
61
|
+
async with AsyncIAMClient() as s3:
|
|
62
|
+
try:
|
|
63
|
+
await s3.accept_delegation_request()
|
|
64
|
+
except ConcurrentModificationException as e:
|
|
65
|
+
print(f"Error: {e}")
|
|
66
|
+
print(e.data) # additional error data
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Retrying
|
|
70
|
+
|
|
71
|
+
The SDK retries failed operations automatically. Retry behaviour follows the Smithy specification: errors are retried based on their `is_retryable` and `is_throttling_error` attributes. Throttling errors use a longer base delay. Network-level failures (connection errors and timeouts) are also retried. Non-retryable errors, such as client errors without the `@retryable` trait, are raised immediately without further attempts.
|
|
72
|
+
|
|
73
|
+
The number of attempts defaults to 3 and can be changed at the client level via `retry_max_attempts`, or per call via `config_overrides`.
|
|
74
|
+
|
|
75
|
+
```python
|
|
76
|
+
from aws_sdk_iam import AsyncIAMClient
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
async def main():
|
|
80
|
+
async with AsyncIAMClient() as s3:
|
|
81
|
+
# Default: 3 attempts for every operation
|
|
82
|
+
response = await s3.accept_delegation_request()
|
|
83
|
+
|
|
84
|
+
# Override per operation
|
|
85
|
+
response = await s3.accept_delegation_request(config_overrides={"retry_max_attempts": 5})
|
|
86
|
+
|
|
87
|
+
# Disable retries for this call
|
|
88
|
+
response = await s3.accept_delegation_request(config_overrides={"retry_max_attempts": 1})
|
|
89
|
+
```
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
[project]
|
|
2
|
+
name = "aws-sdk-iam"
|
|
3
|
+
version = "0.2.0"
|
|
4
|
+
description = "Python SDK for AWS IAM."
|
|
5
|
+
readme = "README.md"
|
|
6
|
+
requires-python = ">=3.10"
|
|
7
|
+
classifiers = [
|
|
8
|
+
"Development Status :: 4 - Beta",
|
|
9
|
+
"Intended Audience :: Developers",
|
|
10
|
+
"License :: OSI Approved :: MIT License",
|
|
11
|
+
"Operating System :: OS Independent",
|
|
12
|
+
"Programming Language :: Python :: 3",
|
|
13
|
+
"Programming Language :: Python :: 3.10",
|
|
14
|
+
"Programming Language :: Python :: 3.11",
|
|
15
|
+
"Programming Language :: Python :: 3.12",
|
|
16
|
+
"Programming Language :: Python :: 3.13",
|
|
17
|
+
"Programming Language :: Python :: 3.14",
|
|
18
|
+
"Topic :: Software Development :: Code Generators",
|
|
19
|
+
"Typing :: Typed",
|
|
20
|
+
]
|
|
21
|
+
dependencies = [
|
|
22
|
+
"zapros>=0.12.0",
|
|
23
|
+
]
|
|
24
|
+
|
|
25
|
+
[tool.pytest.ini_options]
|
|
26
|
+
pythonpath = ["src"]
|
|
27
|
+
testpaths = ["tests"]
|
|
28
|
+
|
|
29
|
+
[tool.pyright]
|
|
30
|
+
include = ["src", "tests"]
|
|
31
|
+
extraPaths = ["src"]
|
|
32
|
+
pythonVersion = "3.14"
|
|
33
|
+
|
|
34
|
+
[dependency-groups]
|
|
35
|
+
dev = [
|
|
36
|
+
"inline-snapshot>=0.33.0",
|
|
37
|
+
"pyright>=1.1.409",
|
|
38
|
+
"pytest>=9.0.3",
|
|
39
|
+
"ruff>=0.15.14",
|
|
40
|
+
"trio",
|
|
41
|
+
]
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from ._auth._identity import Identity as Identity, Credentials as Credentials
|
|
3
|
+
from ._auth._providers import (
|
|
4
|
+
IdentityNotFound as IdentityNotFound,
|
|
5
|
+
IdentityProvider as IdentityProvider,
|
|
6
|
+
ChainedProvider as ChainedProvider,
|
|
7
|
+
CachedProvider as CachedProvider,
|
|
8
|
+
CredentialsProvider as CredentialsProvider,
|
|
9
|
+
StaticAwsCredentialsProvider as StaticAwsCredentialsProvider,
|
|
10
|
+
EnvCredentialsProvider as EnvCredentialsProvider,
|
|
11
|
+
ProfileCredentialsProvider as ProfileCredentialsProvider,
|
|
12
|
+
)
|
|
13
|
+
from ._auth._signers import Signer as Signer, SigV4Signer as SigV4Signer
|
|
14
|
+
from ._services.iam import IAMClient as IAMClient
|
|
15
|
+
from ._services.async_iam import AsyncIAMClient as AsyncIAMClient
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
import asyncio
|
|
4
|
+
from typing import TYPE_CHECKING
|
|
5
|
+
|
|
6
|
+
if TYPE_CHECKING:
|
|
7
|
+
import trio
|
|
8
|
+
else:
|
|
9
|
+
try:
|
|
10
|
+
import trio
|
|
11
|
+
except ImportError:
|
|
12
|
+
trio = None
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def in_trio_run() -> bool:
|
|
16
|
+
if trio is None:
|
|
17
|
+
return False
|
|
18
|
+
return trio.lowlevel.in_trio_run()
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
async def anysleep(delay: float) -> None:
|
|
22
|
+
if in_trio_run():
|
|
23
|
+
await trio.sleep(delay)
|
|
24
|
+
else:
|
|
25
|
+
await asyncio.sleep(delay)
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from datetime import datetime
|
|
4
|
+
from typing import TypedDict
|
|
5
|
+
from typing_extensions import NotRequired
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class Identity(TypedDict):
|
|
9
|
+
expiration: NotRequired[datetime | None]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class Credentials(Identity):
|
|
13
|
+
access_key: str
|
|
14
|
+
secret_key: str
|
|
15
|
+
session_token: NotRequired[str | None]
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
import configparser
|
|
4
|
+
import os
|
|
5
|
+
from abc import abstractmethod
|
|
6
|
+
from datetime import datetime, timezone
|
|
7
|
+
from pathlib import Path
|
|
8
|
+
from typing import Generic, TypeVar
|
|
9
|
+
|
|
10
|
+
from aws_sdk_iam._auth._identity import (
|
|
11
|
+
Credentials,
|
|
12
|
+
Identity,
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class IdentityNotFound(Exception):
|
|
17
|
+
"""Raised when a provider cannot resolve an identity. Chain continues."""
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
IdentityT = TypeVar("IdentityT", bound="Identity")
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class IdentityProvider(Generic[IdentityT]):
|
|
24
|
+
@abstractmethod
|
|
25
|
+
def resolve_identity(self) -> IdentityT:
|
|
26
|
+
raise NotImplementedError
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class ChainedProvider(IdentityProvider[IdentityT]):
|
|
30
|
+
"""Try each provider in order; first non-`IdentityNotFound` wins."""
|
|
31
|
+
|
|
32
|
+
def __init__(self, *providers: IdentityProvider[IdentityT]) -> None:
|
|
33
|
+
if not providers:
|
|
34
|
+
raise ValueError("ChainedProvider requires at least one provider")
|
|
35
|
+
self._providers = providers
|
|
36
|
+
|
|
37
|
+
def resolve_identity(self) -> IdentityT:
|
|
38
|
+
errors: list[str] = []
|
|
39
|
+
for p in self._providers:
|
|
40
|
+
try:
|
|
41
|
+
return p.resolve_identity()
|
|
42
|
+
except IdentityNotFound as e:
|
|
43
|
+
errors.append(f"{type(p).__name__}: {e}")
|
|
44
|
+
raise IdentityNotFound("no provider succeeded: " + "; ".join(errors))
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class CachedProvider(IdentityProvider[IdentityT]):
|
|
48
|
+
"""Cache an identity until its `expiration` (minus skew) elapses."""
|
|
49
|
+
|
|
50
|
+
_SKEW_SECONDS = 60
|
|
51
|
+
|
|
52
|
+
def __init__(self, inner: IdentityProvider[IdentityT]) -> None:
|
|
53
|
+
self._inner = inner
|
|
54
|
+
self._cached: IdentityT | None = None
|
|
55
|
+
|
|
56
|
+
def resolve_identity(self) -> IdentityT:
|
|
57
|
+
if self._cached is not None and not self._expired(self._cached):
|
|
58
|
+
return self._cached
|
|
59
|
+
self._cached = self._inner.resolve_identity()
|
|
60
|
+
return self._cached
|
|
61
|
+
|
|
62
|
+
@classmethod
|
|
63
|
+
def _expired(cls, ident: Identity) -> bool:
|
|
64
|
+
exp = ident.get("expiration")
|
|
65
|
+
if exp is None:
|
|
66
|
+
return False
|
|
67
|
+
return (exp - datetime.now(timezone.utc)).total_seconds() <= cls._SKEW_SECONDS
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
class CredentialsProvider(IdentityProvider[Credentials]):
|
|
71
|
+
"""Base class for providers that resolve AWS `Credentials`."""
|
|
72
|
+
|
|
73
|
+
@abstractmethod
|
|
74
|
+
def resolve_identity(self) -> Credentials:
|
|
75
|
+
raise NotImplementedError
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
class StaticAwsCredentialsProvider(CredentialsProvider):
|
|
79
|
+
def __init__(self, credentials: Credentials) -> None:
|
|
80
|
+
self._credentials = credentials
|
|
81
|
+
|
|
82
|
+
def resolve_identity(self) -> Credentials:
|
|
83
|
+
return self._credentials
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
class EnvCredentialsProvider(CredentialsProvider):
|
|
87
|
+
"""Read AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY / AWS_SESSION_TOKEN."""
|
|
88
|
+
|
|
89
|
+
def resolve_identity(self) -> Credentials:
|
|
90
|
+
ak = os.environ.get("AWS_ACCESS_KEY_ID")
|
|
91
|
+
sk = os.environ.get("AWS_SECRET_ACCESS_KEY")
|
|
92
|
+
if not ak or not sk:
|
|
93
|
+
raise IdentityNotFound("AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY unset")
|
|
94
|
+
out: Credentials = {"access_key": ak, "secret_key": sk}
|
|
95
|
+
token = os.environ.get("AWS_SESSION_TOKEN")
|
|
96
|
+
if token:
|
|
97
|
+
out["session_token"] = token
|
|
98
|
+
return out
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
class ProfileCredentialsProvider(CredentialsProvider):
|
|
102
|
+
"""Read ~/.aws/credentials and ~/.aws/config for the active profile."""
|
|
103
|
+
|
|
104
|
+
def __init__(
|
|
105
|
+
self,
|
|
106
|
+
profile: str | None = None,
|
|
107
|
+
credentials_file: Path | None = None,
|
|
108
|
+
config_file: Path | None = None,
|
|
109
|
+
) -> None:
|
|
110
|
+
self._profile = profile or os.environ.get("AWS_PROFILE", "default")
|
|
111
|
+
self._cred_file = credentials_file or Path(
|
|
112
|
+
os.environ.get("AWS_SHARED_CREDENTIALS_FILE")
|
|
113
|
+
or Path.home() / ".aws" / "credentials"
|
|
114
|
+
)
|
|
115
|
+
self._cfg_file = config_file or Path(
|
|
116
|
+
os.environ.get("AWS_CONFIG_FILE") or Path.home() / ".aws" / "config"
|
|
117
|
+
)
|
|
118
|
+
|
|
119
|
+
def resolve_identity(self) -> Credentials:
|
|
120
|
+
section = self._load_profile()
|
|
121
|
+
ak = section.get("aws_access_key_id")
|
|
122
|
+
sk = section.get("aws_secret_access_key")
|
|
123
|
+
if not ak or not sk:
|
|
124
|
+
raise IdentityNotFound(
|
|
125
|
+
f"profile {self._profile!r}: missing aws_access_key_id/aws_secret_access_key"
|
|
126
|
+
)
|
|
127
|
+
out: Credentials = {"access_key": ak, "secret_key": sk}
|
|
128
|
+
token = section.get("aws_session_token")
|
|
129
|
+
if token:
|
|
130
|
+
out["session_token"] = token
|
|
131
|
+
return out
|
|
132
|
+
|
|
133
|
+
def _load_profile(self) -> dict[str, str]:
|
|
134
|
+
merged: dict[str, str] = {}
|
|
135
|
+
if self._cfg_file.is_file():
|
|
136
|
+
cfg = configparser.ConfigParser()
|
|
137
|
+
cfg.read(self._cfg_file)
|
|
138
|
+
# config file profiles look like `[profile foo]`, except default
|
|
139
|
+
key = (
|
|
140
|
+
"default" if self._profile == "default" else f"profile {self._profile}"
|
|
141
|
+
)
|
|
142
|
+
if cfg.has_section(key):
|
|
143
|
+
merged.update(dict(cfg.items(key)))
|
|
144
|
+
if self._cred_file.is_file():
|
|
145
|
+
cfg = configparser.ConfigParser()
|
|
146
|
+
cfg.read(self._cred_file)
|
|
147
|
+
if cfg.has_section(self._profile):
|
|
148
|
+
merged.update(dict(cfg.items(self._profile)))
|
|
149
|
+
if not merged:
|
|
150
|
+
raise IdentityNotFound(
|
|
151
|
+
f"profile {self._profile!r} not found in {self._cred_file} or {self._cfg_file}"
|
|
152
|
+
)
|
|
153
|
+
return merged
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
def default_aws_credentials_chain() -> IdentityProvider[Credentials]:
|
|
157
|
+
return CachedProvider(
|
|
158
|
+
ChainedProvider(EnvCredentialsProvider(), ProfileCredentialsProvider())
|
|
159
|
+
)
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from abc import ABC, abstractmethod
|
|
4
|
+
from typing import Generic, TypeVar
|
|
5
|
+
from typing import Any
|
|
6
|
+
from zapros import Request
|
|
7
|
+
from aws_sdk_iam._auth._sigv4 import SigV4AuthContext, sign_sigv4
|
|
8
|
+
from aws_sdk_iam._auth._identity import Credentials, Identity
|
|
9
|
+
from aws_sdk_iam._auth._providers import IdentityProvider
|
|
10
|
+
|
|
11
|
+
IdentityT = TypeVar("IdentityT", bound="Identity")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class Signer(ABC, Generic[IdentityT]):
|
|
15
|
+
"""Per-request request signer. Holds an IdentityProvider plus static config."""
|
|
16
|
+
|
|
17
|
+
def __init__(self, provider: IdentityProvider[IdentityT]) -> None:
|
|
18
|
+
self.provider = provider
|
|
19
|
+
|
|
20
|
+
@abstractmethod
|
|
21
|
+
async def asign(self, req: Request) -> Request: ...
|
|
22
|
+
@abstractmethod
|
|
23
|
+
def sign(self, req: Request) -> Request: ...
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
class SigV4Signer(Signer[Credentials]):
|
|
27
|
+
"""aws.auth#sigv4 — AWS Signature Version 4.
|
|
28
|
+
|
|
29
|
+
The full auth scheme (``name`` variant, ``signingName``, ``signingRegion``,
|
|
30
|
+
encoding/normalization flags) is provided by the caller — either from the
|
|
31
|
+
endpoint rule-set's ``authSchemes`` property or built by the generated
|
|
32
|
+
``get_signer`` from operation defaults.
|
|
33
|
+
"""
|
|
34
|
+
|
|
35
|
+
def __init__(
|
|
36
|
+
self, provider: IdentityProvider[Credentials], *, auth_scheme: dict[str, Any]
|
|
37
|
+
) -> None:
|
|
38
|
+
super().__init__(provider)
|
|
39
|
+
self._auth_scheme = auth_scheme
|
|
40
|
+
|
|
41
|
+
async def asign(self, req: Request) -> Request:
|
|
42
|
+
creds = self.provider.resolve_identity()
|
|
43
|
+
ctx: SigV4AuthContext = {
|
|
44
|
+
"type": "sig_v4",
|
|
45
|
+
"access_key_id": creds["access_key"],
|
|
46
|
+
"secret_access_key": creds["secret_key"],
|
|
47
|
+
"session_token": creds.get("session_token"),
|
|
48
|
+
"signing_region": self._auth_scheme["signingRegion"],
|
|
49
|
+
"signing_name": self._auth_scheme["signingName"],
|
|
50
|
+
}
|
|
51
|
+
if req.body is None:
|
|
52
|
+
body: bytes | None = b""
|
|
53
|
+
elif isinstance(req.body, bytes):
|
|
54
|
+
body = req.body
|
|
55
|
+
else:
|
|
56
|
+
body = None
|
|
57
|
+
# Strip Accept-Encoding so transports/intermediaries can't transcode
|
|
58
|
+
# the response and so the value never enters the canonical request.
|
|
59
|
+
if "accept-encoding" in req.headers:
|
|
60
|
+
del req.headers["Accept-Encoding"]
|
|
61
|
+
return sign_sigv4(req, ctx, body)
|
|
62
|
+
|
|
63
|
+
def sign(self, req: Request) -> Request:
|
|
64
|
+
creds = self.provider.resolve_identity()
|
|
65
|
+
ctx: SigV4AuthContext = {
|
|
66
|
+
"type": "sig_v4",
|
|
67
|
+
"access_key_id": creds["access_key"],
|
|
68
|
+
"secret_access_key": creds["secret_key"],
|
|
69
|
+
"session_token": creds.get("session_token"),
|
|
70
|
+
"signing_region": self._auth_scheme["signingRegion"],
|
|
71
|
+
"signing_name": self._auth_scheme["signingName"],
|
|
72
|
+
}
|
|
73
|
+
if req.body is None:
|
|
74
|
+
body: bytes | None = b""
|
|
75
|
+
elif isinstance(req.body, bytes):
|
|
76
|
+
body = req.body
|
|
77
|
+
else:
|
|
78
|
+
body = None
|
|
79
|
+
# Strip Accept-Encoding so transports/intermediaries can't transcode
|
|
80
|
+
# the response and so the value never enters the canonical request.
|
|
81
|
+
if "accept-encoding" in req.headers:
|
|
82
|
+
del req.headers["Accept-Encoding"]
|
|
83
|
+
return sign_sigv4(req, ctx, body)
|