fix: 修复配额说明重复和undefined问题
- 在editStorageForm中初始化oss_storage_quota_value和oss_quota_unit - 删除重复的旧配额说明块,保留新的当前配额设置显示 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
90
backend/node_modules/@aws-sdk/credential-provider-sso/dist-es/resolveSSOCredentials.js
generated
vendored
Normal file
90
backend/node_modules/@aws-sdk/credential-provider-sso/dist-es/resolveSSOCredentials.js
generated
vendored
Normal file
@@ -0,0 +1,90 @@
|
||||
import { setCredentialFeature } from "@aws-sdk/core/client";
|
||||
import { fromSso as getSsoTokenProvider } from "@aws-sdk/token-providers";
|
||||
import { CredentialsProviderError } from "@smithy/property-provider";
|
||||
import { getSSOTokenFromFile } from "@smithy/shared-ini-file-loader";
|
||||
const SHOULD_FAIL_CREDENTIAL_CHAIN = false;
|
||||
export const resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, clientConfig, parentClientConfig, callerClientConfig, profile, filepath, configFilepath, ignoreCache, logger, }) => {
|
||||
let token;
|
||||
const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;
|
||||
if (ssoSession) {
|
||||
try {
|
||||
const _token = await getSsoTokenProvider({
|
||||
profile,
|
||||
filepath,
|
||||
configFilepath,
|
||||
ignoreCache,
|
||||
})();
|
||||
token = {
|
||||
accessToken: _token.token,
|
||||
expiresAt: new Date(_token.expiration).toISOString(),
|
||||
};
|
||||
}
|
||||
catch (e) {
|
||||
throw new CredentialsProviderError(e.message, {
|
||||
tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
|
||||
logger,
|
||||
});
|
||||
}
|
||||
}
|
||||
else {
|
||||
try {
|
||||
token = await getSSOTokenFromFile(ssoStartUrl);
|
||||
}
|
||||
catch (e) {
|
||||
throw new CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {
|
||||
tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
|
||||
logger,
|
||||
});
|
||||
}
|
||||
}
|
||||
if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {
|
||||
throw new CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {
|
||||
tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
|
||||
logger,
|
||||
});
|
||||
}
|
||||
const { accessToken } = token;
|
||||
const { SSOClient, GetRoleCredentialsCommand } = await import("./loadSso");
|
||||
const sso = ssoClient ||
|
||||
new SSOClient(Object.assign({}, clientConfig ?? {}, {
|
||||
logger: clientConfig?.logger ?? callerClientConfig?.logger ?? parentClientConfig?.logger,
|
||||
region: clientConfig?.region ?? ssoRegion,
|
||||
userAgentAppId: clientConfig?.userAgentAppId ?? callerClientConfig?.userAgentAppId ?? parentClientConfig?.userAgentAppId,
|
||||
}));
|
||||
let ssoResp;
|
||||
try {
|
||||
ssoResp = await sso.send(new GetRoleCredentialsCommand({
|
||||
accountId: ssoAccountId,
|
||||
roleName: ssoRoleName,
|
||||
accessToken,
|
||||
}));
|
||||
}
|
||||
catch (e) {
|
||||
throw new CredentialsProviderError(e, {
|
||||
tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
|
||||
logger,
|
||||
});
|
||||
}
|
||||
const { roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}, } = ssoResp;
|
||||
if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {
|
||||
throw new CredentialsProviderError("SSO returns an invalid temporary credential.", {
|
||||
tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,
|
||||
logger,
|
||||
});
|
||||
}
|
||||
const credentials = {
|
||||
accessKeyId,
|
||||
secretAccessKey,
|
||||
sessionToken,
|
||||
expiration: new Date(expiration),
|
||||
...(credentialScope && { credentialScope }),
|
||||
...(accountId && { accountId }),
|
||||
};
|
||||
if (ssoSession) {
|
||||
setCredentialFeature(credentials, "CREDENTIALS_SSO", "s");
|
||||
}
|
||||
else {
|
||||
setCredentialFeature(credentials, "CREDENTIALS_SSO_LEGACY", "u");
|
||||
}
|
||||
return credentials;
|
||||
};
|
||||
Reference in New Issue
Block a user