func()

in credentials/ecs_ram_role_credentials_provider.go [53:73]


func (e *ECSRAMRoleCredentialsProvider) GetCredential() (credentials *CredentialModel, err error) {
	if e.sessionCredential == nil || e.needUpdateCredential() {
		err = e.updateCredential()
		if err != nil {
			if e.credentialExpiration > (int(time.Now().Unix()) - int(e.lastUpdateTimestamp)) {
				// 虽然有错误,但是已有的 credentials 还有效
			} else {
				return
			}
		}
	}

	credentials = &CredentialModel{
		AccessKeyId:     tea.String(e.sessionCredential.AccessKeyId),
		AccessKeySecret: tea.String(e.sessionCredential.AccessKeySecret),
		SecurityToken:   tea.String(e.sessionCredential.SecurityToken),
		Type:            tea.String("ecs_ram_role"),
	}

	return
}