Single Sign On und abgesetztes UI
RDB und Single Sign On
Voraussetzungen
-
Installierte Oracle-Client-Software mit der Version 10.2.0 oder höher.
-
Bei Public Grants darf es nur ein einziges RDB-Schema geben. Andernfalls sind die Zugriffe auf die einzelnen Datenbankobjekte nicht mehr eindeutig.
Aktivierung von Single Sign On
-
Public Grants aktivieren:
Führen Sie ein normales RDB-Setup mit public_grants = 'yes' aus. Alternativ kann man für den bereits bestehenden Benutzer das Skript "RDB_AppUserPublic.sql“ ausführen.
-
Betriebssystem-Benutzer anlegen:
SQL> create user "OPS$[Domaine]\[BenutzerName]" identified externally
OPS$ ist ein Präfix und ist über den Oracle-Parameter "os_authent_prefix" einstellbar bzw. kann auch leer sein.
Dem Betriebssystem-Benutzer muss die Rolle R_APP_PVSSRDB zugewiesen werden.
-
Geben Sie in der Config-Datei die folgenden Config-Einträge ein:
[ValueArchiveRDB] DbUser = "" DbPass = "" Db = "MEINE_DB"
RDB-Zugriff von einem abgesetzten UI
Um auf die Oracle Datenbank von einem abgesetzten User Interface direkt zugreifen zu können (Config-Eintrag queryRDBdirect = 1), gehen Sie wie folgt vor:
-
Installieren Sie den Oracle-Client (Version ab 10.1.0.4).
-
Installieren Sie WinCC OA vollständig.
-
Aktualisieren Sie die beiden DLLs LibAce**.dll und LibSQLApi**.dll auf die neueste Version im /bin Verzeichnis des UI Projektes.
-
Fügen Sie einen tnsnames-Eintrag auf dem Server hinzu, damit Sie auf die Datenbank zugreifen können (dies kann mit tnsping getestet werden).
<SERVER.<DOMAIN> =
(DESCRIPTION =
(ENABLE=BROKEN)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = <HOST>)(PORT = 1521))
)
(CONNECT_DATA =
(SID = <SID>)
(SERVER = DEDICATED)
)
)
wobei <SERVER>, <DOMAIN>, <HOST> und <SID> je nach Oracle-Server angepasst werden müssen.
-
Fügen Sie die folgenden Config-Einträge zu der Config-Datei Ihres Projektes:
[general]
useRDBArchive = 1
useRDBGroups = 1
[ValueArchiveRDB]
DbUser = "<username>"
DbPass = "<password>" # ist nicht zwingend erforderlich
Db = "<dbname>"
[ui]
queryRDBdirect = 1
CtrlDLL = "CtrlRDBArchive"
CtrlDLL = "CtrlRDBCompr"
[ctrl]
queryRDBdirect = 1
CtrlDLL = "CtrlRDBArchive"
CtrlDLL = "CtrlRDBCompr"
Fügen Sie auch einen CTRL-Manager ein, da dieser vom UI gestartet wird. Kopieren Sie einen CTRL-Manager von einem anderen Installationstyp in Ihr Projekt. Der CTRL-Manager WCCOActrl.exe muss in dem bin-Verzeichnis des UI-Projektes vorhanden sein.
Beim abgesetzten UI werden die DB-Parameter zuerst aus der Config-Datei gelesen. Alle Parameter, die nicht in der Config-Datei definiert wurden, werden mit den Werten aus den internen Datenpunktelementen des Typs _RDBArchive befüllt.