MCPcopy Create free account
hub / github.com/aws/aws-cli / create_credential_resolver

Function create_credential_resolver

awscli/botocore/credentials.py:81–174  ·  view source on GitHub ↗

Create a default credential resolver. This creates a pre-configured credential resolver that includes the default lookup chain for credentials.

(session, cache=None, region_name=None)

Source from the content-addressed store, hash-verified

79
80
81def create_credential_resolver(session, cache=None, region_name=None):
82 """Create a default credential resolver.
83
84 This creates a pre-configured credential resolver
85 that includes the default lookup chain for
86 credentials.
87
88 """
89 profile_name = session.get_config_variable('profile') or 'default'
90 metadata_timeout = session.get_config_variable('metadata_service_timeout')
91 num_attempts = session.get_config_variable('metadata_service_num_attempts')
92 disable_env_vars = session.instance_variables().get('profile') is not None
93
94 imds_config = {
95 'ec2_metadata_service_endpoint': session.get_config_variable(
96 'ec2_metadata_service_endpoint'
97 ),
98 'ec2_metadata_service_endpoint_mode': resolve_imds_endpoint_mode(
99 session
100 ),
101 'ec2_credential_refresh_window': _DEFAULT_ADVISORY_REFRESH_TIMEOUT,
102 'ec2_metadata_v1_disabled': session.get_config_variable(
103 'ec2_metadata_v1_disabled'
104 ),
105 }
106
107 if cache is None:
108 cache = {}
109
110 env_provider = EnvProvider()
111 container_provider = ContainerProvider()
112 instance_metadata_provider = InstanceMetadataProvider(
113 iam_role_fetcher=InstanceMetadataFetcher(
114 timeout=metadata_timeout,
115 num_attempts=num_attempts,
116 user_agent=session.user_agent(truncate=True),
117 config=imds_config,
118 )
119 )
120
121 profile_provider_builder = ProfileProviderBuilder(
122 session, cache=cache, region_name=region_name
123 )
124 assume_role_provider = AssumeRoleProvider(
125 load_config=lambda: session.full_config,
126 client_creator=_get_client_creator(session, region_name),
127 cache=cache,
128 profile_name=profile_name,
129 credential_sourcer=CanonicalNameCredentialSourcer(
130 [env_provider, container_provider, instance_metadata_provider]
131 ),
132 profile_provider_builder=profile_provider_builder,
133 )
134
135 pre_profile = [
136 env_provider,
137 assume_role_provider,
138 ]

Calls 15

providersMethod · 0.95
EnvProviderClass · 0.85
ContainerProviderClass · 0.85
AssumeRoleProviderClass · 0.85
_get_client_creatorFunction · 0.85
OriginalEC2ProviderClass · 0.85
BotoProviderClass · 0.85