• # Re: Les droits en postgresql

    Posté par . En réponse au journal Les droits en postgresql. Évalué à 1.

    J'oubliais:

    J'écris ce journal car j'ai vu dans le code d'une application qu'on pouvait faire cela avec Oracle.

    En gros, on peut mettre une fontion policy à un shema qui ressemble à un morceau de code qui s'ajoute au where pour vérifier les droits. Mais je ne connais pas Oracle. Est-ce possible en Postgresql.

    Ca a l'air cool, vu dans le code de compiere:

    DBMS_RLS.ADD_POLICY (
    'Compiere', -- object_schema
    t.TableName, -- object_name
    t.TableName || '_Pol', -- policy_name
    'Compiere', -- function_schema
    'Compiere_Context.GetPredicate', -- policy_function
    NULL, -- statement_types 'SELECT,INSERT,UPDATE,DELETE'
    TRUE, -- update_check
    );

    Et la fontion Compiere_Context.GetPredicate:

    ...
    Predicate := 'AD_Client_ID IN (' || SYS_CONTEXT('CompiereInc','ClientList')·
    || ') AND AD_Org_ID IN (' || SYS_CONTEXT('CompiereInc','OrgList') || ')';
    ...