- 在editStorageForm中初始化oss_storage_quota_value和oss_quota_unit - 删除重复的旧配额说明块,保留新的当前配额设置显示 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
33 lines
1.9 KiB
JavaScript
33 lines
1.9 KiB
JavaScript
import { CredentialsProviderError } from "@smithy/property-provider";
|
|
import { isAssumeRoleProfile, resolveAssumeRoleCredentials } from "./resolveAssumeRoleCredentials";
|
|
import { isLoginProfile, resolveLoginCredentials } from "./resolveLoginCredentials";
|
|
import { isProcessProfile, resolveProcessCredentials } from "./resolveProcessCredentials";
|
|
import { isSsoProfile, resolveSsoCredentials } from "./resolveSsoCredentials";
|
|
import { isStaticCredsProfile, resolveStaticCredentials } from "./resolveStaticCredentials";
|
|
import { isWebIdentityProfile, resolveWebIdentityCredentials } from "./resolveWebIdentityCredentials";
|
|
export const resolveProfileData = async (profileName, profiles, options, callerClientConfig, visitedProfiles = {}, isAssumeRoleRecursiveCall = false) => {
|
|
const data = profiles[profileName];
|
|
if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {
|
|
return resolveStaticCredentials(data, options);
|
|
}
|
|
if (isAssumeRoleRecursiveCall || isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {
|
|
return resolveAssumeRoleCredentials(profileName, profiles, options, callerClientConfig, visitedProfiles, resolveProfileData);
|
|
}
|
|
if (isStaticCredsProfile(data)) {
|
|
return resolveStaticCredentials(data, options);
|
|
}
|
|
if (isWebIdentityProfile(data)) {
|
|
return resolveWebIdentityCredentials(data, options, callerClientConfig);
|
|
}
|
|
if (isProcessProfile(data)) {
|
|
return resolveProcessCredentials(options, profileName);
|
|
}
|
|
if (isSsoProfile(data)) {
|
|
return await resolveSsoCredentials(profileName, data, options, callerClientConfig);
|
|
}
|
|
if (isLoginProfile(data)) {
|
|
return resolveLoginCredentials(profileName, options, callerClientConfig);
|
|
}
|
|
throw new CredentialsProviderError(`Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`, { logger: options.logger });
|
|
};
|