Integrationsreferenz für Datenbankanwendungstabellen

Datenbankanwendungstabellenkomponenten, die für die Integration mit Oracle Access Governance zertifiziert sind

Die Komponenten der Datenbankanwendungstabellen, die Sie integrieren können, sind unten aufgeführt.

Zertifizierte Komponenten

Zertifizierte Komponenten
Komponententyp Komponente
Oracle-spezifische Anforderungen
System Das Zielsystem kann Datenbanktabellen aus einem der folgenden RDBMS sein:
  • Oracle Autonomous Database
  • Oracle Database 23ai, 19c, 18c oder 12c als einzelne Datenbank, integrierbare Datenbank (PDB) oder Oracle RAC-Implementierung
  • Oracle Database 10g und 11g als einzelne Datenbank oder Oracle RAC-Implementierung
JDK JDK 1.6 oder höher
Microsoft SQL Server-spezifische Anforderungen
System Microsoft SQL Server 2016, 2017
JDBC-Treiber Für Microsoft SQL Server 2014: sqljdbc4 Version 4.0
Microsoft MySQL - Spezifische Anforderungen
System MySQL 5.x, MySQL 8.x
JDBC-Treiber mysql-connector-java-5.1.12-bin
Allgemeine Anforderungen
Format, in dem Benutzerdaten im System gespeichert werden

Sie können einen Connector für Datenbanktabellen nur verwenden, wenn Benutzerdaten in einem der folgenden Formate im Zielsystem gespeichert sind:

  • Alle Benutzerdaten befinden sich in einer einzelnen Tabelle oder View.
  • Benutzerdaten werden auf eine übergeordnete und eine oder mehrere untergeordnete Tabellen verteilt. Dieses Zielsystem kann nur als verwaltetes System und nicht als autoritative Quelle konfiguriert werden.
  • Alle Benutzerdaten befinden sich in einer einzigen aktualisierbaren View (die auf einer oder mehreren Tabellen basiert).
  • Benutzerdaten werden auf eine aktualisierbare View (die auf einer oder mehreren Tabellen basiert) und eine oder mehrere untergeordnete Views (die auf einer oder mehreren Tabellen basieren) verteilt. Dieser Systemtyp kann nur als verwaltetes System und nicht als autoritative Quelle mit diesem Connector konfiguriert werden. Mit anderen Worten: Eine autoritative Quelle kann keine untergeordneten Daten speichern.
Weitere Anforderungen des Systems

Das System muss folgende Anforderungen erfüllen:

  • Wenn übergeordnete und untergeordnete Tabellen nicht durch einen Fremdschlüssel verknüpft werden (z.B. wenn Sie Views verwenden), müssen die Namen der Fremdschlüsselspalten in beiden Tabellen identisch sein.
  • Der Primärschlüssel für alle Tabellen, die im Zielsystem verwendet werden, sollte von einer einzelnen Spalte für Identitäts-, Account-, Berechtigungs- und Lookup-Tabellen bereitgestellt werden. Zusammengesetzte Primärschlüssel werden nur für Tabellen unterstützt, die Berechtigungen und Identitäts-/Accounttabellen verknüpfen.

Unterstützte Konfigurationsmodi für Integrationen von Datenbanktabellen

Oracle Access Governance-Integrationen können je nach Anforderung für das Onboarding von Identitätsdaten und das Provisioning von Accounts in verschiedenen Konfigurationsmodi eingerichtet werden.

Unterstützte Modi

Das orchestrierte System der Datenbankanwendungstabellen unterstützt die folgenden Modi:

  • Autoritative Quelle
    Sie können Datenbankanwendungstabellen als zuverlässige (vertrauenswürdige) Quelle von Identitätsinformationen für Oracle Access Governance verwenden, wobei:
    • Alle Benutzerdaten befinden sich in einer einzelnen Tabelle oder View ODER
    • Alle Benutzerdaten befinden sich in einer einzigen aktualisierbaren View (die auf einer oder mehreren Tabellen basiert)
    .
  • Verwaltete Systeme
    Sie können Berechtigungen für Datenbankanwendungstabellen verwalten, wobei:
    • Alle Benutzerdaten befinden sich in einer einzelnen Tabelle oder View ODER
    • Alle Benutzerdaten befinden sich in einer einzigen aktualisierbaren View (die auf einer oder mehreren Tabellen basiert) ODER
    • Benutzerdaten werden auf eine übergeordnete und eine oder mehrere untergeordnete Tabellen verteilt. Oder
    • Benutzerdaten werden auf eine aktualisierbare View (die auf einer oder mehreren Tabellen basiert) und eine oder mehrere untergeordnete Views (die auf einer oder mehreren Tabellen basieren) verteilt.

Servicebenutzer mit Mindestberechtigungen konfigurieren

Benutzer mit minimalem Privileg für Datenbankanwendungstabellen konfigurieren (Oracle)

Um eine sichere Verbindung zwischen Oracle Access Governance und der Datenbankanwendungstabellen (Oracle) zu aktivieren, können Sie einen Servicebenutzer mit den Mindestberechtigungen erstellen, die für die Konfiguration der Integration erforderlich sind.

Für den Authoritative Source-Modus erforderliche Berechtigungen

Wenn Sie das orchestrierte System der Datenbankanwendungstabellen (Oracle) im autoritativen Modus konfigurieren, müssen Sie Ihrem Servicebenutzer Leseberechtigungen für die Tabelle mit Ihren Identitäten erteilen, damit diese in Oracle Access Governance geladen werden können. Die Mindestberechtigungen, die in diesem Fall erforderlich sind, sind die Berechtigung SELECT für die Tabelle mit Identitäts- oder Personeninformationen.

Beispiel:
GRANT SELECT ON MYDBAT_PERSON TO SERVICEUSER;
wobei:
  • MYDBAT_PERSON: Ist die Tabelle in der Datenbankanwendungstabellen-(Oracle-)Datenbank, die Identitätsinformationen enthält.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Für den Modus "Verwaltetes System" erforderliche Berechtigungen

Wenn Sie das orchestrierte System der Datenbankanwendungstabellen (Oracle) im verwalteten Systemmodus konfigurieren, müssen Sie Lese- und Schreibberechtigungen für Accounttabellen und Berechtigungstabellen erteilen, um die Abstimmung, das Erstellen, Aktualisieren und Löschen von Accounts und Accountberechtigungen zu ermöglichen. Die Mindestberechtigungen, die in diesem Fall erforderlich sind, sind die Berechtigungen SELECT, INSERT, UPDATE und DELETE für die Account- und Accountberechtigungstabellen.

Beispiel:
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_ROLES TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_GROUPS TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON_ROLE TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON_GROUP TO SERVICEUSER;
wobei
  • MYDBAT_PERSON: Ist die Tabelle in der Datenbankanwendungstabellen-(Oracle-)Datenbank mit Accountinformationen.
  • MYDBAT_ROLES: Die Tabelle in der Datenbankanwendungstabellen-(Oracle-)Datenbank enthält Rolleninformationen.
  • MYDBAT_GROUPS: Ist die Tabelle in der Oracle-(Database Application Tables-)Datenbank mit Gruppeninformationen.
  • MYDBAT_PERSON_ROLE: Ist die Tabelle in der Datenbankanwendungstabellen-(Oracle-)Datenbank, die Personenrolleninformationen enthält.
  • MYDBAT_PERSON_GROUP: Ist die Tabelle in der Datenbankanwendungstabellen-(Oracle-)Datenbank, die Informationen zu Gruppenrollen enthält.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Für benutzerdefinierte Skripte erforderliche Berechtigungen

Um benutzerdefinierte Skripte für Vorgänge mit der Integration von Datenbankanwendungstabellen (Oracle) zu entwickeln, wie unter Benutzerdefinierte Skripte für Datenbankanwendungstabellen (Oracle) mit Groovy entwickeln beschrieben, müssen Sie Berechtigungen zu gespeicherten Prozeduren oder anderen Datenbankobjekten hinzufügen, die in den benutzerdefinierten Skripten referenziert werden. Wenn Sie die gespeicherten Prozeduren mit dem Servicebenutzer erstellen, sollten Sie keine Berechtigungen benötigen. Wenn Stored Procedures oder andere Datenbankobjekte in einem anderen Benutzer erstellt werden, sollten Sie gegebenenfalls Berechtigungen erteilen.

Beispiel:
GRANT EXECUTE ON MYDBAT_CUSTOMDEV.GET_USERROLE TO SERVICEUSER;
wobei:
  • MYDBAT_CUSTOMDEV: Ist der Benutzer, mit dem Sie die Stored Procedure erstellt haben.
  • GET_USERROLE ist der Name der gespeicherten Prozedur.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Benutzer mit minimalem Privileg für Datenbankanwendungstabellen (MSSQL) konfigurieren

Um eine sichere Verbindung zwischen Oracle Access Governance und der Datenbankanwendungstabellen-(MSSQL-)Datenbank zu aktivieren, können Sie einen Servicebenutzer mit den Mindestberechtigungen erstellen, die für die Konfiguration der Integration erforderlich sind.

Für den Authoritative Source-Modus erforderliche Berechtigungen

Wenn Sie das orchestrierte System der Datenbankanwendungstabellen (MSSQL) im autoritativen Modus konfigurieren, müssen Sie Ihrem Servicebenutzer Leseberechtigungen für die Tabelle mit Ihren Identitäten erteilen, damit diese in Oracle Access Governance geladen werden können. Die Mindestberechtigungen, die in diesem Fall erforderlich sind, sind die Berechtigung SELECT für die Tabelle mit Identitäts- oder Personeninformationen.

Beispiel:
GRANT SELECT ON MYDBAT_PERSON TO SERVICEUSER;
wobei:
  • MYDBAT_PERSON: Ist die Tabelle in der Datenbankanwendungstabellen-(MSSQL-)Datenbank, die Identitätsinformationen enthält.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Für den Modus "Verwaltetes System" erforderliche Berechtigungen

Wenn Sie das orchestrierte System "Database Application Tables" (MSSQL) im Modus "Managed System" konfigurieren, müssen Sie Lese- und Schreibberechtigungen für Accounttabellen und Berechtigungstabellen erteilen, um die Abstimmung, das Erstellen, Aktualisieren und Löschen von Accounts und Accountberechtigungen zu ermöglichen. Die Mindestberechtigungen, die in diesem Fall erforderlich sind, sind die Berechtigungen SELECT, INSERT, UPDATE und DELETE für die Account- und Accountberechtigungstabellen.

Beispiel:
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_ROLES TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_GROUPS TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON_ROLE TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON_GROUP TO SERVICEUSER;
wobei
  • MYDBAT_PERSON: Ist die Tabelle in der Datenbankanwendungstabellen-(MSSQL-)Datenbank, die Accountinformationen enthält.
  • MYDBAT_ROLES: Ist die Tabelle in der Datenbankanwendungstabellen-(MSSQL-)Datenbank, die Rolleninformationen enthält.
  • MYDBAT_GROUPS: Ist die Tabelle in der Datenbankanwendungstabellen-(MSSQL-)Datenbank, die Gruppeninformationen enthält.
  • MYDBAT_PERSON_ROLE: Ist die Tabelle in der Datenbankanwendungstabellen-(MSSQL-)Datenbank, die Rolleninformationen für Personen enthält.
  • MYDBAT_PERSON_GROUP: Ist die Tabelle in der Datenbankanwendungstabellen-(MSSQL-)Datenbank mit Gruppenrolleninformationen.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Für benutzerdefinierte Skripte erforderliche Berechtigungen

Wenn Sie benutzerdefinierte Skripte für Vorgänge mit der Integration von Datenbankanwendungstabellen (MSSQL) entwickeln möchten, wie unter Benutzerdefinierte Skripte für Datenbankanwendungstabellen (Oracle) mit Groovy entwickeln beschrieben, müssen Sie Berechtigungen zu gespeicherten Prozeduren oder anderen Datenbankobjekten hinzufügen, die in Ihren benutzerdefinierten Skripten referenziert werden. Wenn Sie die gespeicherten Prozeduren mit dem Servicebenutzer erstellen, sollten Sie keine Berechtigungen benötigen. Wenn Stored Procedures oder andere Datenbankobjekte in einem anderen Benutzer erstellt werden, sollten Sie gegebenenfalls Berechtigungen erteilen.

Beispiel:
GRANT EXECUTE ON OBJECT::dbo.GET_USERROLE TO SERVICEUSER;
wobei:
  • OBJECT::dbo: Ist das Microsoft MSSQL-Datenbankobjekt.
  • GET_USERROLE ist der Name der gespeicherten Prozedur.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Servicebenutzer mit Mindestberechtigungen für Datenbankanwendungstabellen konfigurieren (MySQL)

Um eine sichere Verbindung zwischen Oracle Access Governance und der Datenbank "Datenbankanwendungstabellen" (MySQL) zu aktivieren, können Sie einen Servicebenutzer mit den Mindestberechtigungen erstellen, die für die Konfiguration der Integration erforderlich sind.

Für den Authoritative Source-Modus erforderliche Berechtigungen

Wenn Sie das orchestrierte System der Datenbankanwendungstabellen (MySQL) im autoritativen Modus konfigurieren, müssen Sie Ihrem Servicebenutzer Leseberechtigungen für die Tabelle mit Ihren Identitäten erteilen, damit diese in Oracle Access Governance geladen werden können. Die Mindestberechtigungen, die in diesem Fall erforderlich sind, sind die Berechtigung SELECT für die Tabelle mit Identitäts- oder Personeninformationen.

Beispiel:
GRANT SELECT ON MYDBAT_PERSON TO SERVICEUSER;
wobei:
  • MYDBAT_PERSON: Ist die Tabelle in der Datenbankanwendungstabellendatenbank (MySQL), die Identitätsinformationen enthält.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Für den Modus "Verwaltetes System" erforderliche Berechtigungen

Wenn Sie das orchestrierte System der Datenbankanwendungstabellen (MySQL) im Modus des verwalteten Systems konfigurieren, müssen Sie Lese- und Schreibberechtigungen für Accounttabellen und Berechtigungstabellen erteilen, um die Abstimmung, das Erstellen, Aktualisieren und Löschen von Accounts und Accountberechtigungen zu ermöglichen. Die Mindestberechtigungen, die in diesem Fall erforderlich sind, sind die Berechtigungen SELECT, INSERT, UPDATE und DELETE für die Account- und Accountberechtigungstabellen.

Beispiel:
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_ROLES TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_GROUPS TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON_ROLE TO SERVICEUSER;
GRANT SELECT, INSERT, UPDATE, DELETE ON MYDBAT_PERSON_GROUP TO SERVICEUSER;
wobei
  • MYDBAT_PERSON: Ist die Tabelle in der Datenbankanwendungstabellendatenbank (MySQL), die Accountinformationen enthält.
  • MYDBAT_ROLES: Ist die Tabelle in der Datenbankanwendungstabellendatenbank (MySQL), die Rolleninformationen enthält.
  • MYDBAT_GROUPS: Ist die Tabelle in der Datenbank "Database Application Tables" (MySQL), die Gruppeninformationen enthält.
  • MYDBAT_PERSON_ROLE: Ist die Tabelle in der Datenbankanwendungstabellendatenbank (MySQL), die Personenrolleninformationen enthält.
  • MYDBAT_PERSON_GROUP: Ist die Tabelle in der Datenbankanwendungstabellendatenbank (MySQL), die Gruppenrolleninformationen enthält.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Für benutzerdefinierte Skripte erforderliche Berechtigungen

Wenn Sie benutzerdefinierte Skripte für Vorgänge mit der Integration von Datenbankanwendungstabellen (MySQL) entwickeln möchten, wie unter Benutzerdefinierte Skripte für Datenbankanwendungstabellen (Oracle) mit Groovy entwickeln beschrieben, müssen Sie Berechtigungen zu gespeicherten Prozeduren oder anderen Datenbankobjekten hinzufügen, die in Ihren benutzerdefinierten Skripten referenziert werden. Wenn Sie die gespeicherten Prozeduren mit dem Servicebenutzer erstellen, sollten Sie keine Berechtigungen benötigen. Wenn Stored Procedures oder andere Datenbankobjekte in einem anderen Benutzer erstellt werden, sollten Sie gegebenenfalls Berechtigungen erteilen.

Beispiel:
GRANT EXECUTE ON MYSQLDB.GET_USERROLE TO 'SERVICEUSER';
wobei:
  • MYSQLDB: Ist die Datenbank MySQL, in der Sie die Stored Procedure erstellt haben.
  • GET_USERROLE ist der Name der gespeicherten Prozedur.
  • SERVICEUSER: Ist der Serviceaccountbenutzer.

Unterstützte Vorgänge beim Provisioning von Datenbanktabellen

Wenn Sie einen Account aus Oracle Access Governance für Datenbankanwendungstabellen bereitstellen, werden bestimmte Vorgänge unterstützt.

Das orchestrierte System der Datenbankanwendungstabellen unterstützt die folgenden Accountvorgänge beim Provisioning eines Benutzers:
  • Account erstellen
  • Account aktivieren
  • Account deaktivieren
  • Account widerrufen
  • Berechtigung zuweisen
  • Berechtigung entfernen

Unterstützte Datentypen

Die Datentypen, die für Reconciliation- und Provisioning-Vorgänge unterstützt werden, werden im folgenden Abschnitt aufgeführt:

Für Oracle Database

Folgende Datentypen werden für Reconciliation- und Provisioning-Vorgänge für ein orchestriertes Oracle Database-System unterstützt:

  • VARCHAR2
  • CHAR
  • NUMBER
  • NUMERIC
  • INTEGER
  • INT
  • SMALLINT
  • DOUBLE
  • FLOAT
  • DECIMAL
  • DEZ
  • REAL
  • DATE
  • TIMESTAMP

Für Microsoft SQL Server

Folgende Datentypen werden für Reconciliation- und Provisioning-Vorgänge für ein orchestriertes Microsoft SQL Server-Datenbanksystem unterstützt:

  • CHAR
  • VARCHAR
  • SMALLINT
  • INT
  • BIGINT
  • DECIMAL
  • NUMERIC
  • NVARCHAR
  • FLOAT
  • REAL
  • KLEINES DATUM/ZEIT
  • DATETIME

Für MySQL

Folgende Datentypen werden für Reconciliation- und Provisioning-Vorgänge für ein orchestriertes MySQL-Datenbanksystem unterstützt:

  • Frachtbrief
  • SMALLINT
  • MEDIUMINT
  • INT
  • BIGINT
  • FLOAT
  • DOUBLE
  • DECIMAL
  • CHAR
  • VARCHAR
  • TINYTEXT
  • DATE
  • DATETIME
  • TIMESTAMP

Unterstützte Standardattribute

Da für die Integration von Datenbankanwendungstabellen eine Schema-Discovery erforderlich ist und das erkannte Schema nicht fest ist, werden keine bestimmten Standardattribute als solche unterstützt. Sie können die schema.json ändern, um Core- und benutzerdefinierte Attribute nach Bedarf hinzuzufügen. Sie müssen mindestens die Attribute uid und name angeben, die für eine Oracle Access Governance-Identität erforderlich sind, wie unter Coreidentitätsattribute definiert.

Standardabgleichsregeln

Um Accounts Identitäten in Oracle Access Governance zuzuordnen, benötigen Sie eine Vergleichsregel für jedes orchestrierte System.

Die Standardabgleichsregel für das orchestrierte System der Datenbankanwendungstabellen lautet:

Standardabgleichsregeln
Modus Standardabgleichsregel
Autoritative Herkunft

Identitätsabgleich prüft, ob eingehende Identitäten mit einer vorhandenen Identität übereinstimmen oder neu sind

Bildschirmwert:

Employee user name = Employee user name

Attributname:

Identity.userName = Identity.userName

Verwaltetes Systeme

Beim Kontenabgleich wird geprüft, ob eingehende Konten mit vorhandenen Identitäten übereinstimmen.

Bildschirmwert:

User login = Employee user name

Attributname:

Account.name = Identity.userName

Tabellenrichtlinien für Datenbankanwendungen

Wenn Sie Datenbankzugriffstabellen mit Oracle Access Governance verwenden, sollten Sie die folgenden Richtlinien in Design und Struktur Ihrer Tabellen berücksichtigen.

Allgemeine Richtlinien

Alle Datenbankzugriffstabellen müssen den folgenden Richtlinien entsprechen:
  • Die Spalten Name und Schlüssel für eine Entity müssen als NOT NULL konfiguriert sein.
  • Für eine bestimmte Entity kann dieselbe Datenbankspalte als Name und Schlüssel konfiguriert werden. Sie können bei Bedarf auch andere Spalten für diese Spalten verwenden.
  • Jedes Kernattribut, das in der ACCOUNT-Entity enthalten ist, muss die folgenden Regeln erfüllen:
    • Der Spaltendatentyp muss mit dem Oracle Access Governance-seitigen Datentyp kompatibel sein.
    • Jedes Attribut, das als "nature":["REQUIRED"] in der Schema-JSON-Datei konfiguriert ist, muss einem NOT NULL-Datenbankfeld entsprechen.
  • ENTITLEMENT- und LOOKUP-Tabellen müssen ein Primärschlüssel-Constraint für Schlüsselspalten aufweisen.
  • Wenn die zugehörigen Spalten in den Tabellen ENTITLEMENT und LOOKUP übereinstimmen, müssen Sie keine Fremdschlüsselbeziehung zwischen Ihren Tabellen ACCOUNT/TARGETACCOUNT und den Tabellen ENTITLEMENT und LOOKUP definieren. Weitere Informationen finden Sie im folgenden Abschnitt.

Tabellenbeziehungen

Benutzertabellen, die ACCOUNT-/TARGETACCOUNT-Entitys zugeordnet sind, können eine Beziehung zu ENTITLEMENT- und LOOKUP-Tabellen haben. Wenn der Connector {\b Database Application Tables} die Schema-Discovery ausführt, sucht er zunächst nach Fremdschlüsseln (FK), die als Constraints in den Datenbanktabellen definiert sind und die Beziehung zwischen der Benutzertabelle und den ENTITLEMENT- oder LOOKUP-Tabellen definieren. Beispiel für die Beziehung zwischen einer Benutzertabelle und einer Lookup-Tabelle für das Land des Benutzers:
CREATE TABLE MYDBAT_PERSON
  (USERID VARCHAR2 NOT NULL ENABLE,
   USERNAME VARCHAR2 NOT NULL ENABLE,
   FIRSTNAME VARCHAR2,
   LASTNAME VARCHAR2,
   EMAIL VARCHAR2 NOT NULL ENABLE,
   HOMECOUNTRY VARCHAR2,
   FOREIGN KEY (HOMECOUNTRY) REFERENCES MYDBAT_COUNTRY(COUNTRYCODE));

CREATE TABLE MYDBAT_COUNTRY
  (COUNTRYCODE VARCHAR2 NOT NULL ENABLE,
   COUNTRYNAME VARCHAR2 NOT NULL ENABLE,
   CONSTRAINT MYDBAT_COUNTRY_PK PRIMARY KEY (COUNTRYCODE)
                        
Wenn kein Fremdschlüssel definiert ist, versucht der Connector für Datenbankanwendungstabellen, den Spaltennamen zu entsprechen. Wenn die Spaltennamen übereinstimmen, wird die Beziehung abgeglichen. Beispiel:
CREATE TABLE MYDBAT_PERSON
  (USERID VARCHAR2 NOT NULL ENABLE,
   USERNAME VARCHAR2 NOT NULL ENABLE,
   FIRSTNAME VARCHAR2,
   LASTNAME VARCHAR2,
   EMAIL VARCHAR2 NOT NULL ENABLE,
   COUNTRYCODE VARCHAR2);

CREATE TABLE MYDBAT_COUNTRY
  (COUNTRYCODE VARCHAR2 NOT NULL ENABLE,
   COUNTRYNAME VARCHAR2 NOT NULL ENABLE,
   CONSTRAINT MYDBAT_COUNTRY_PK PRIMARY KEY (COUNTRYCODE)
Wenn jedoch keine Fremdschlüsselbeziehung zwischen den Tabellen definiert ist und die Spaltennamen nicht übereinstimmen, wird ein Fehler ausgelöst. Dies geschieht beispielsweise, wenn Sie die Spalten wie folgt definieren:
CREATE TABLE MYDBAT_PERSON
  (USERID VARCHAR2 NOT NULL ENABLE,
   USERNAME VARCHAR2 NOT NULL ENABLE,
   FIRSTNAME VARCHAR2,
   LASTNAME VARCHAR2,
   EMAIL VARCHAR2 NOT NULL ENABLE,
   HOMECOUNTRY VARCHAR2);

CREATE TABLE MYDBAT_COUNTRY
  (COUNTRYCODE VARCHAR2 NOT NULL ENABLE,
   COUNTRYNAME VARCHAR2 NOT NULL ENABLE,
   CONSTRAINT MYDBAT_COUNTRY_PK PRIMARY KEY (COUNTRYCODE)

Die gleichen Prinzipien wie oben für die Beziehung zwischen einem Benutzer und einem Lookup gelten beim Definieren von Tabellen für die Beziehung zwischen einem Benutzer und Berechtigungen.

Identitätsattribut mit Accountattribut verknüpfen

Sie können ein Identitätsattribut mit einem Accountattribut verknüpfen, indem Sie die Accountattributeinstellungen bearbeiten.

  1. Melden Sie sich bei der Oracle Access Governance-Konsole an, und navigieren Sie zu Serviceadministration → Orchestrierte Systeme.
  2. Wählen Sie Integration verwalten für das orchestrierte DBAT-System aus, in dem Sie ein Identitätsattribut mit einem Accountattribut verknüpfen möchten.
  3. Wählen Sie in der Kachel "Accountattribute" die Option Verwalten aus.
  4. Wählen Sie für das Accountattribut, das Sie zuordnen möchten, im Aktionsmenü die Option Verknüpftes Identitätsattribut bearbeiten aus.
  5. Wählen Sie das Identitätsattribut aus, das Sie mit Ihrem Accountattribut verknüpfen möchten, und klicken Sie auf Speichern. Der Wert wird jetzt in den Spalten Verknüpftes Identitätsattribut für Ihr Accountattribut angezeigt.

DBAT-Affiliation-Unterstützung für benutzerdefinierte mehrwertige Identitätsattribute

Orchestrierte DBAT-Systeme unterstützen Zugehörigkeitsdaten durch die Implementierung benutzerdefinierter (komplexer) mehrwertiger Attribute.

Die Zugehörigkeit wird aktiviert, indem eine benutzerdefinierte Tabelle für die erforderliche Zugehörigkeit hinzugefügt und mit der Kontentabelle verknüpft wird. Beispiel: Sie haben eine Kontentabelle, Benutzer ähnlich der Folgenden:

Konto (z.B. BENUTZER) → PK (USER_ID)
USER_ID USER_NAME FIRST_NAME LAST_NAME EMAIL STATUS
1 USR001 Benutzer Eins userone@email.com ACTIVE
2 USR002 Benutzer Two usertwo@email.com ACTIVE

Als Nächstes müssen Sie eine benutzerdefinierte Tabelle für die Zugehörigkeit erstellen, die Sie darstellen möchten. Beispiel: Sie möchten eine Zugehörigkeit haben, mit der Sie einer Identität mehrere Berufsbezeichnungen zuweisen können. Erstellen Sie dazu eine Tabelle mit Jobs wie folgt:

Zugehörigkeit (z.B. JOBS) → Composite PK (USER_ID, JOBCODE)
TÄTIGKEITSSCHLÜSSEL USER_ID JOBNAME BESCHREIBUNG
JB001 1 Ein Job Dies ist ein Job
1 Andere Tätigkeit Dies ist ein weiterer Job
2 Neue Tätigkeit Dies ist ein neuer Job

Die Tabelle Account wird durch den zusammengesetzten Primärschlüssel (USER_ID, JOBCODE) direkt mit der Tabelle Affiliation verknüpft.

Schließlich müssen Sie die Affilierung zur schema.json-Füllung hinzufügen, wie im folgenden Snippet gezeigt.

[
  {
    "type": "ACCOUNT",
    "name": "ACCOUNT",
    "displayName": "Account",
    "attributes": [
      {
        "name": "JOBS",
        "targetName": "JOBS",
        "displayName": "",
        "dataType": "",
        "nature": ["MULTIVALUED"],
        "usage": [
          "READ"
        ],
        "relationship": {
          "relatedTo": "__CUSTOM_COMPLEX__", // Indicates the custom relationship 
          "relatedBy": "", 
          "relationshipProperties": [
            {
              "name": "JOBCODE",
              "dataType": "TEXT",
              "nature": ["REQUIRED"] 
            },
            {
              "name": "JOBNAME",
              "dataType": "TEXT",
              "nature": ["REQUIRED"]
            },
            {
              "name": "DESCRIPTION",
              "dataType": "TEXT",
              "nature": []
            }
          ]
        }
      }
    ]
  }
]

Fügen Sie diesen Tabellennamen zusammen mit anderen Zugehörigkeitstabellen in die Integrationseinstellungen ein. Weitere Informationen hierzu finden Sie unter Zuordnungen.