public CredentialModel GetCredentials()

in aliyun-net-credentials/Provider/CLIProfileCredentialsProvider.cs [34:69]


        public CredentialModel GetCredentials()
        {
            if (AuthUtils.EnvironmentDisableCLIProfile)
            {
                throw new CredentialException("CLI credentials file is disabled.");
            }
            Config config = ParseProfile(CLI_CREDENTIALS_CONFIG_PATH);
            if (config == null)
            {
                throw new CredentialException("Unable to get profile form empty CLI credentials file.");
            }
            string refreshedProfileName = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_PROFILE");

            if (ShouldReloadCredentialsProvider(refreshedProfileName))
            {
                lock (credentialsProviderLock)
                {
                    if (ShouldReloadCredentialsProvider(refreshedProfileName))
                    {
                        if (!string.IsNullOrEmpty(refreshedProfileName))
                        {
                            this.currentProfileName = refreshedProfileName;
                        }
                        this.credentialsProvider = ReloadCredentialsProvider(config, this.currentProfileName);
                    }
                }
            }
            var credentials = this.credentialsProvider.GetCredentials();
            return new CredentialModel
            {
                AccessKeyId = credentials.AccessKeyId,
                AccessKeySecret = credentials.AccessKeySecret,
                SecurityToken = credentials.SecurityToken,
                ProviderName = string.Format("{0}/{1}", this.GetProviderName(), credentials.ProviderName)
            };
        }