def get_credentials()

in alibabacloud_credentials/provider/default.py [0:0]


    def get_credentials(self) -> Credentials:
        if self.__reuse_last_provider_enabled and self.__last_used_provider is not None:
            credentials = self.__last_used_provider.get_credentials()
            return Credentials(
                access_key_id=credentials.get_access_key_id(),
                access_key_secret=credentials.get_access_key_secret(),
                security_token=credentials.get_security_token(),
                provider_name=f'{self.get_provider_name()}/{credentials.get_provider_name()}'
            )

        error_messages = []
        for provider in self.__providers_chain:
            try:
                credentials = provider.get_credentials()
                if credentials is not None:
                    self.__last_used_provider = provider
                    return Credentials(
                        access_key_id=credentials.get_access_key_id(),
                        access_key_secret=credentials.get_access_key_secret(),
                        security_token=credentials.get_security_token(),
                        provider_name=f'{self.get_provider_name()}/{credentials.get_provider_name()}'
                    )
            except Exception as e:
                error_messages.append(f'{type(provider).__name__}: {str(e)}')

        raise CredentialException(
            f'unable to load credentials from any of the providers in the chain: {error_messages}')