feat(dynamic-secret): Minor improvements on usernameTemplate

This commit is contained in:
carlosmonastyrski
2025-06-05 17:18:56 -03:00
parent 5367d1ac2e
commit ac5bfbb6c9
33 changed files with 138 additions and 145 deletions
@@ -22,13 +22,13 @@ const generatePassword = (size = 48) => {
return customAlphabet(charset, 48)(size);
};
const generateUsername = (usernameTemplate?: string | null, identityName?: string) => {
const generateUsername = (usernameTemplate?: string | null, identity?: { name: string }) => {
const randomUsername = alphaNumericNanoId(32); // Username must start with an ascii letter, so we prepend the username with "inf-"
if (!usernameTemplate) return randomUsername;
return compileUsernameTemplate({
usernameTemplate,
randomUsername,
identityName
identity
});
};
@@ -102,12 +102,12 @@ export const SapHanaProvider = (): TDynamicProviderFns => {
inputs: unknown;
expireAt: number;
usernameTemplate?: string | null;
identityName?: string;
identity?: { name: string };
}) => {
const { inputs, expireAt, usernameTemplate, identityName } = data;
const { inputs, expireAt, usernameTemplate, identity } = data;
const providerInputs = await validateProviderInputs(inputs);
const username = generateUsername(usernameTemplate, identityName);
const username = generateUsername(usernameTemplate, identity);
const password = generatePassword();
const expiration = new Date(expireAt).toISOString();