Skip to main content
Skip table of contents

TBeCbPermissionMigrationSubController

TBeCbPermissionMigrationSubController


Sammlung von Funktionen zur Migration von der alten Berechtigungs-Logik nach RABAC.

HINWEIS: Diese Klasse kann nicht im Codeblock erzeugt werden. Jedoch ist eine Instanz dieser Klasse in der Klasse TBeCbPermissionController vorhanden.

ACHTUNG: Diese Klasse dient nur für die Migration und wird ab einer bestimmten Master-Version wieder entfernt werden!

Eigenschaften

Funktionen und Methoden

CbReset()

Setzt RABAB zurück/Löscht alle RABAC-Daten.

CbPreprocessDabMSK():L

Prüft ob die Datensätze in der DabMSK migrierbar sind.

CbPreprocessDabPWD():L

Prüft ob die Datensätze in der DabPWD migrierbar sind.

CbCleanupDabMSK()

Löscht alle nicht migrierbaren Datensätze in der DabMSK.

CbCleanupDabPWD()

Löscht alle nicht migrierbaren Datensätze in der DabPWD.

CbCleanupPermissionRoles()

Löscht alle überflüssigen Rollen, d.h. Rollen, für die keine Berechtigungen existieren.

CbMigrateUsers()

Migriert die Benutzer

CbMigrateMasks()

Migriert designbare Formulare/Masken.

CbMigratePermissions()

Migriert alle weiteren Berechtigungen (z.B. Für Formular-Actions und Modul-Logins)

Beispiel

CODE
|
  cLogFileName, oPermissionController,
  bReset, bPreprocess, bCleanup,
  bMigrate, bMigrateUsers, bMigrateMasks, bMigratePermissions
|

bReset              := True,
bPreprocess         := True,
bCleanup            := False,
bMigrate            := True,
bMigrateUsers       := True,
bMigrateMasks       := True,
bMigratePermissions := True,

//******************************************************************************
// Log-Funktion
//******************************************************************************
function Log(cMessage)
   ProcessMsg(),
   WriteLn(cMessage),
   RABAC_Log(cLogFileName, cMessage),
   ProcessMsg(),
end,

cLogFileName          := 'C:\be_debug\rabac_migration.log',
oPermissionController := CreateObject('TBeCbPermissionController'),
startseq
   oPermissionController.CbLogFileName := cLogFileName,
   // --------------------------------------------------------------------------
   if bReset then
      Log('Resetting RABAC Data ...'),
      oPermissionController.CbMigration.CbReset(),
   endif,
   // --------------------------------------------------------------------------
   if bPreprocess then
      if oPermissionController.CbMigration.CbPreprocessDabMSK() then
         Log('Preprocess DabMSK: OK'),
      else
         Log('Preprocess DabMSK: FAILED'),
         bMigrate := False,
         if bCleanup then
            oPermissionController.CbMigration.CbCleanupDabMSK(),
         endif,
      endif,
      if oPermissionController.CbMigration.CbPreprocessDabPWD() then
         Log('Preprocess DabPWD: OK'),
      else
         Log('Preprocess DabPWD: FAILED'),
         bMigrate := False,
         if bCleanup then
            oPermissionController.CbMigration.CbCleanupDabPWD(),
         endif,
      endif,
   endif,
   // --------------------------------------------------------------------------
   if bMigrate and
      (bMigrateUsers or bMigrateMasks or bMigratePermissions) then
      Log('Running Migration ...'),
      if bMigrateUsers then
         Log('Migration: Users'),
         oPermissionController.CbMigration.CbMigrateUsers(),
      endif,
      if bMigrateMasks then
         Log('Migration: Masks'),
         oPermissionController.CbMigration.CbMigrateMasks(),
      endif,
      if bMigratePermissions then
         Log('Migration: Permissions'),
         oPermissionController.CbMigration.CbMigratePermissions(),
      endif,
      Log('Migration: DONE'),
      Log('Running CleanupPermissionRoles'),
      oPermissionController.CbMigration.CbCleanupPermissionRoles(),
      Log('CleanupPermissionRoles: DONE'),
 else
      Log('Skipping Migration ...'),
   endif,
always
   DestroyObject(oPermissionController),
stopseq,

Weitere Verknüpfungen


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.