alibabacloud_credentials/utils/auth_util.py (43 lines of code) (raw):
import os
import platform
import re
client_type = os.environ.get('ALIBABA_CLOUD_PROFILE', 'default')
environment_access_key_id = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID')
environment_access_key_secret = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET')
environment_security_token = os.environ.get('ALIBABA_CLOUD_SECURITY_TOKEN')
environment_ECSMeta_data = os.environ.get('ALIBABA_CLOUD_ECS_METADATA')
environment_ecs_metadata = os.environ.get('ALIBABA_CLOUD_ECS_METADATA')
environment_imds_v1_disabled = os.environ.get('ALIBABA_CLOUD_IMDSV1_DISABLED', 'false')
environment_ecs_metadata_disabled = os.environ.get('ALIBABA_CLOUD_ECS_METADATA_DISABLED', 'false')
environment_credentials_file = os.environ.get('ALIBABA_CLOUD_CREDENTIALS_FILE')
environment_profile_name = os.environ.get('ALIBABA_CLOUD_PROFILE')
environment_oidc_token_file = os.environ.get('ALIBABA_CLOUD_OIDC_TOKEN_FILE')
environment_role_arn = os.environ.get('ALIBABA_CLOUD_ROLE_ARN')
environment_oidc_provider_arn = os.environ.get('ALIBABA_CLOUD_OIDC_PROVIDER_ARN')
environment_role_session_name = os.environ.get('ALIBABA_CLOUD_ROLE_SESSION_NAME')
environment_credentials_uri = os.environ.get('ALIBABA_CLOUD_CREDENTIALS_URI')
environment_cli_profile_disabled = os.environ.get('ALIBABA_CLOUD_CLI_PROFILE_DISABLED', 'false')
environment_sts_region = os.environ.get('ALIBABA_CLOUD_STS_REGION')
environment_enable_vpc = os.environ.get('ALIBABA_CLOUD_VPC_ENDPOINT_ENABLED', 'false')
enable_oidc_credential = environment_oidc_token_file is not None and environment_oidc_token_file != '' \
and environment_role_arn is not None and environment_role_arn != '' \
and environment_oidc_provider_arn is not None and environment_oidc_provider_arn != ''
private_key = None
def get_private_key(file_path):
with open(file_path, encoding='utf-8') as f:
key = f.read()
return key
def get_home():
if platform.system() == 'Windows':
home = os.getenv('HOME')
home_path = os.getenv('HOMEPATH')
home_drive = os.getenv('HOMEDRIVE')
if home:
return home
elif home_path:
has_drive_in_home_path = bool(re.match(r'^[A-Za-z]:', home_path))
return home_path if has_drive_in_home_path else os.path.join(home_drive or '', home_path)
else:
return os.path.expanduser("~")
else:
return os.getenv('HOME') or os.getenv('HOMEPATH') or os.path.expanduser("~")