static_ak.py 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. from alibabacloud_credentials.provider.refreshable import Credentials
  2. from alibabacloud_credentials_api import ICredentialsProvider
  3. from alibabacloud_credentials.utils import auth_util
  4. class StaticAKCredentialsProvider(ICredentialsProvider):
  5. def __init__(self, *,
  6. access_key_id: str = None,
  7. access_key_secret: str = None):
  8. self.access_key_id = access_key_id or auth_util.environment_access_key_id
  9. self.access_key_secret = access_key_secret or auth_util.environment_access_key_secret
  10. if self.access_key_id is None or self.access_key_id == '':
  11. raise ValueError('the access key id is empty')
  12. if self.access_key_secret is None or self.access_key_secret == '':
  13. raise ValueError('the access key secret is empty')
  14. def get_credentials(self) -> Credentials:
  15. return Credentials(
  16. access_key_id=self.access_key_id,
  17. access_key_secret=self.access_key_secret,
  18. provider_name=self.get_provider_name()
  19. )
  20. async def get_credentials_async(self) -> Credentials:
  21. return self.get_credentials()
  22. def get_provider_name(self) -> str:
  23. return 'static_ak'