FCLT#88993 Einde ondersteuning database prs.setpassword en prs.testpassword

svn path=/Database/trunk/; revision=69186
This commit is contained in:
Jos Groot Lipman
2025-05-28 13:35:43 +00:00
parent ff3dcf8f5c
commit ad6800612d

View File

@@ -93,6 +93,8 @@ AS
pexcludekey IN NUMBER DEFAULT -1)
RETURN NUMBER;
PROCEDURE setpassword(pperslidkey IN NUMBER, pwachtwoord IN VARCHAR2);
PROCEDURE upsertkenmerk (p_kenmerk_key IN NUMBER, p_prs_key IN NUMBER, p_waarde IN VARCHAR2);
PROCEDURE movetoruimte (p_prs_key IN NUMBER, p_ruimte_key IN NUMBER, p_alg_type IN VARCHAR2, p_virtual IN NUMBER DEFAULT 0);
@@ -549,6 +551,30 @@ AS
RETURN lnextfiatteur;
END;
// Let op: Als pwachtwoord IS NULL wordt het wachtwoord gewist
// Als pwachtwoord IS NOT NULL wordt een random(!!) wachtwoord ingesteld zodat de gebruik zelf 'wachtwoord vergeten' kan gaan doen
PROCEDURE setpassword(pperslidkey IN NUMBER, pwachtwoord IN VARCHAR2)
IS
BEGIN
IF pwachtwoord IS NULL
THEN
UPDATE prs_perslid
SET prs_perslid_salt = NULL,
prs_perslid_wachtwoord_hash = NULL,
prs_perslid_wachtwoord_exp = NULL,
prs_perslid_otpsecret = NULL
WHERE prs_perslid_key = pperslidkey;
ELSE
UPDATE prs_perslid
SET prs_perslid_salt = DBMS_RANDOM.string ('a', 32)
WHERE prs_perslid_key = pperslidkey;
UPDATE prs_perslid
SET prs_perslid_wachtwoord_hash = DBMS_RANDOM.string ('a', 32), -- zodat wachtwoord vergeten mogelijk wordt
prs_perslid_wachtwoord_exp = SYSDATE -- direct verlopen
WHERE prs_perslid_key = pperslidkey;
END IF;
END;
-- Er wordt nu niet getrackt (wat eigenlijk niet zo goed is)
PROCEDURE upsertkenmerk (p_kenmerk_key IN NUMBER,
p_prs_key IN NUMBER,
@@ -795,7 +821,7 @@ AS
-- v_prs_perslid_nr 20
-- v_prs_srtperslid_omschrijving 21
-- v_prs_perslid_oslogin 22
-- v_prs_perslid_wachtwoord 23 NIET ONDERSTEUND/Genegeerd
-- v_prs_perslid_wachtwoord 23
-- v_prs_perslid_titel 24
-- v_prs_perslid_apikey 25
-- v_prs_kostenplaats_nr 26
@@ -1174,7 +1200,7 @@ AS
v_fielddelimitor,
v_colnr (22),
v_prs_perslid_oslogin);
v_errorhint := 'Inlezen prs_perslid_wachtwoord kolom:' || v_colnr (23); // 23 NIET ONDERSTEUND/Genegeerd
v_errorhint := 'Inlezen prs_perslid_wachtwoord kolom:' || v_colnr (23);
fac.imp_getfield_nr (v_newline,
v_fielddelimitor,
v_colnr (23),
@@ -2327,7 +2353,7 @@ AS
RETURNING prs_perslid_key
INTO v_perslid_key;
-- prs.setpassword(v_perslid_key, recPersLid.prs_perslid_wachtwoord);
prs.setpassword(v_perslid_key, recPersLid.prs_perslid_wachtwoord);
COMMIT;
v_count_update := v_count_update + 1;
@@ -2352,10 +2378,10 @@ AS
prs_perslid_apikey = recPersLid.prs_perslid_apikey
WHERE prs_perslid_key = v_perslid_key;
-- IF recPersLid.prs_perslid_wachtwoord IS NOT NULL
-- THEN
-- prs.setpassword(v_perslid_key, recPersLid.prs_perslid_wachtwoord);
-- END IF;
IF recPersLid.prs_perslid_wachtwoord IS NOT NULL
THEN
prs.setpassword(v_perslid_key, recPersLid.prs_perslid_wachtwoord);
END IF;
END IF;
-- Voor CUST-postprocessing (van de kenmerken) is het handig te onthouden: