auth_util.py 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import os
  2. import platform
  3. import re
  4. client_type = os.environ.get('ALIBABA_CLOUD_PROFILE', 'default')
  5. environment_access_key_id = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_ID')
  6. environment_access_key_secret = os.environ.get('ALIBABA_CLOUD_ACCESS_KEY_SECRET')
  7. environment_security_token = os.environ.get('ALIBABA_CLOUD_SECURITY_TOKEN')
  8. environment_ECSMeta_data = os.environ.get('ALIBABA_CLOUD_ECS_METADATA')
  9. environment_ecs_metadata = os.environ.get('ALIBABA_CLOUD_ECS_METADATA')
  10. environment_imds_v1_disabled = os.environ.get('ALIBABA_CLOUD_IMDSV1_DISABLED', 'false')
  11. environment_ecs_metadata_disabled = os.environ.get('ALIBABA_CLOUD_ECS_METADATA_DISABLED', 'false')
  12. environment_credentials_file = os.environ.get('ALIBABA_CLOUD_CREDENTIALS_FILE')
  13. environment_profile_name = os.environ.get('ALIBABA_CLOUD_PROFILE')
  14. environment_oidc_token_file = os.environ.get('ALIBABA_CLOUD_OIDC_TOKEN_FILE')
  15. environment_role_arn = os.environ.get('ALIBABA_CLOUD_ROLE_ARN')
  16. environment_oidc_provider_arn = os.environ.get('ALIBABA_CLOUD_OIDC_PROVIDER_ARN')
  17. environment_role_session_name = os.environ.get('ALIBABA_CLOUD_ROLE_SESSION_NAME')
  18. environment_credentials_uri = os.environ.get('ALIBABA_CLOUD_CREDENTIALS_URI')
  19. environment_cli_profile_disabled = os.environ.get('ALIBABA_CLOUD_CLI_PROFILE_DISABLED', 'false')
  20. environment_sts_region = os.environ.get('ALIBABA_CLOUD_STS_REGION')
  21. environment_enable_vpc = os.environ.get('ALIBABA_CLOUD_VPC_ENDPOINT_ENABLED', 'false')
  22. enable_oidc_credential = environment_oidc_token_file is not None and environment_oidc_token_file != '' \
  23. and environment_role_arn is not None and environment_role_arn != '' \
  24. and environment_oidc_provider_arn is not None and environment_oidc_provider_arn != ''
  25. private_key = None
  26. def get_private_key(file_path):
  27. with open(file_path, encoding='utf-8') as f:
  28. key = f.read()
  29. return key
  30. def get_home():
  31. if platform.system() == 'Windows':
  32. home = os.getenv('HOME')
  33. home_path = os.getenv('HOMEPATH')
  34. home_drive = os.getenv('HOMEDRIVE')
  35. if home:
  36. return home
  37. elif home_path:
  38. has_drive_in_home_path = bool(re.match(r'^[A-Za-z]:', home_path))
  39. return home_path if has_drive_in_home_path else os.path.join(home_drive or '', home_path)
  40. else:
  41. return os.path.expanduser("~")
  42. else:
  43. return os.getenv('HOME') or os.getenv('HOMEPATH') or os.path.expanduser("~")