HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //lib/python3/dist-packages/awscli/customizations/dlm/__pycache__/iam.cpython-310.pyc
o

.&�a�@sddlZGdd�de�ZdS)�Nc@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�IAMcCs
||_dS)N)�
iam_client)�selfr�r�?/usr/lib/python3/dist-packages/awscli/customizations/dlm/iam.py�__init__s
zIAM.__init__cC�0z
|jj|d�WdS|jjjyYdSw)z,Method to verify if a particular role exists)�RoleNameFT)r�get_role�
exceptions�NoSuchEntityException)r�	role_namerrr�check_if_role_exists	���zIAM.check_if_role_existscCr)z.Method to verify if a particular policy exists��	PolicyArnFT)r�
get_policyrr)r�
policy_arnrrr�check_if_policy_existsrzIAM.check_if_policy_existscCs|jj||d�S)z?Method to attach LifecyclePolicy to role specified by role_name)rr	)r�attach_role_policy)rrr
rrr�attach_policy_to_roles�zIAM.attach_policy_to_rolecCs|jj|t�|�d�S)zXMethod to create role with a given role name
            and assume_role_policy
        )r	�AssumeRolePolicyDocument)r�create_role�json�dumps)rr
�assume_role_policyrrr�create_role_with_trust_policy s�z!IAM.create_role_with_trust_policycCsB|jj|d�}|jj||�di��dd�d�}|�di��di�S)zvMethod to get the Policy for a particular ARN
        This is used to display the policy contents to the user
        r�Policy�DefaultVersionId�)r�	VersionId�
PolicyVersion�Document)rr�get_policy_version�get)r�arn�pol_det�policy_version_detailsrrrr(s��zIAM.get_policyN)	�__name__�
__module__�__qualname__rrrrrrrrrrrsr)r�objectrrrrr�<module>s