Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

HINWEIS


Table of Contents
minLevel1
maxLevel2

Die Inbetriebnahme des frisch installierten primedocs-Servers erfolgt in wenigen Schritten.

...

Diese Seite betrifft die OnPremises-Variante.
Bei der "Software as a Service"-Variante sind keine Serverinstallationen durch den Kunden notwendig.


Schritt 1: Konfiguration überprüfen

Zuerst wird die Konfigurationsdatei "primedocs.config" überprüft. Sie befindet sich im Installationsverzeichnis (standardmässig unter C:\inetpub\wwwroot\primedocs\primedocs.config).

In der "primedocs.config" sollten keine Platzhalter wie {{OPERATION_DB_CONNECTION_STRING}}, {{GUID}} oder {{RAND}} vorhanden sein.

Nachfolgend befindet sich ein Beispiel einer funktionierenden Standard-primedocs.config-Konfiguration:

Standardvariante:

Code Block
languagexml
<primedocs operationDbConnectionString="Data Source=your-sql-server.yourcorp.local;Initial Catalog=primedocs_Prod_Operation;User ID=primedocsuser;Password=password_here;MultipleActiveResultSets=True"
           databaseLoggingEnabled="false">
  <datasources>
    <add id="9e769582-b411-43fa-b8f6-d15ea3d83dde" isPrimary="true" dbConnectionString="Data Source=your-sql-server.yourcorp.local;Initial Catalog=primedocs_Prod;User ID=primedocsuser;Password=password_here;MultipleActiveResultSets=True;Encrypt=False" name="primedocs" />
  </datasources>
  <clients>
    <!-- Windows Client OIDC Settings -->
    <add id="710be047-475a-4991-90b3-351ea93d6908" oidcClientId="DefaultClient" oidcClientSecret="G754ePPG0SBC" userAuthType="FromLogin" />
    <!-- WebApi to invoke the Connect (DCS) -->
    <add id="84234199-5448-4d73-8182-b5623e51e99c" basicAuth="CONNECT-USER:izieAoETHS04" mappedToPrimarySid="CONNECT-USER" />
  </clients>
  <apps>
    <add id="e185dddd-2cb4-43e2-a6fe-cf4272dd3401" name="Service" url="https://your-url.local/service/" logFilePath="Service\" type="Service" />
    <add id="9ef34d3a-13b5-4f06-b437-b300474beb6d" name="IdentityServer" url="https://your-url.local/ids/" logFilePath="IdS\" type="IdentityServer" />
    <add id="c74a324d-7c36-4d2f-b422-f2fdad41f81e" name="HealthMonitor" url="https://your-url.local/healthmonitor/" type="HealthMonitor" />
    <add id="f7199131-de81-4d40-a254-39e7db9660f0" name="DataSourceAdminApp" url="https://your-url.local/datasourceadminapp/" logFilePath="DataSourceAdminApp\" type="DataSourceAdminApp" />
    <add id="279b5480-27e5-4a09-bf9f-4c10d1770c76" name="App" url="https://your-url.local/app/" logFilePath="App\" type="App" />    
    <add id="f25dc7b9-d989-4d03-89ff-3ee17bf7d020" name="JobHost" logFilePath="JobHost\" type="JobHost" />
    <add id="1cdca9fc-780b-477e-af20-29be64bf8dae" name="Connect" url="https://your-url.local/connect/" logFilePath="Connect\" type="Connect" />
    <add id="1d28ed6f-74d4-4942-b254-b287db6e1cf9" name="AddressService" url="https://your-url.local/addressservice/" logFilePath="AddressService\" type="AddressService" />
    <add id="a7ee7e49-b0eb-472c-aecb-cc0ca5257342" name="WebApi" url="https://your-url.local/webapi/" logFilePath="WebApi\" type="WebApi" />
    <add id="822a4c62-ed2d-4165-9bb1-eb979632c0aa" name="AdminApp" url="https://your-url.local/adminapp/" logFilePath="AdminApp\" type="AdminApp" />
  </apps>
  <identity signingCertFilePath="cert.pfx"
            signingCertPassword="kWFgDhRAMgKk"
            introspectionSecret="1Ubp4Efp6H3G">
    <providers>
      <winAuth authority="https://your-url.local/IdSWindowsAuth" 
               clientId="winauth" clientSecret="winauth-L2VDmPzm7PbK" />
    </providers>	
  </identity>
  <service streamBufferSizeInBytes="81920">
    <syncBehavior maxConcurrentClients="30" initialAverageSyncTimeInSeconds="10" timeoutInSeconds="120" />
  </service>
  <healthMonitor basicAuth="user:YHBAe5oAwsi2" clientSecret="healthmonitor-s5iZRGCWZ7ZE" intervalInSeconds="600"/>
</primedocs>

“WithoutIdS”-Variante

Code Block
languagexml
<primedocs>
  <datasources>
    <add id="26735c39-3d6e-44c6-b701-f5ab6cc429fd" isPrimary="true" dbConnectionString="Data Source=your-sql-server.yourcorp.local;Initial Catalog=primedocs_Prod;User ID=primedocsuser;Password=password_here;MultipleActiveResultSets=True;Encrypt=False" name="primedocs" />
  </datasources>
  <apps>
    <add id="7e132bcb-b088-4cb2-b717-30174884b8f4" name="Service" url="https://your-url.local/service/" logFilePath="Service\" type="Service" />
    <add id="60e0654e-9e62-4df2-8b24-4d00f2677cfa" name="HealthMonitor" url="https://your-url.local/healthmonitor/" type="HealthMonitor" />
    <add id="80e85dff-e533-42df-b8f3-930598d9b955" name="JobHost" logFilePath="JobHost\" type="JobHost" />
    <add id="f7199131-de81-4d40-a254-39e7db9660f0" name="DataSourceAdminApp" url="https://your-url.local/datasourceadminapp/" logFilePath="DataSourceAdminApp\" type="DataSourceAdminApp" />
    <add id="c5667157-6cce-4da6-93ce-464b68947349" name="Connect" url="https://your-url.local/connect/" logFilePath="Connect\" type="Connect" />
    <add id="7ee9d094-e728-4e36-91ea-8fb64aa6b765" name="AddressService" url="https://your-url.local/addressservice/" logFilePath="AddressService\" type="AddressService" />
  </apps>
  <service streamBufferSizeInBytes="81920">
    <syncBehavior maxConcurrentClients="30" initialAverageSyncTimeInSeconds="10" timeoutInSeconds="120" />
  </service>
  <healthMonitor basicAuth="user:iPvKHKDmvlwP" clientSecret="healthmonitor-k9VBA5TXke9P" intervalInSeconds="600"/>
</primedocs>

...

Note

Die GUIDs, Passwörter, Secrets, URLs und ConnectionStrings sollten nicht vom obigen Beispiel übernommen werden.
Bei der Installation werden die GUIDs, Passwörter und Secrets automatisch zufällig erstellt.


Schritt 2: Datenbank über Dashboard initialisieren

Nun muss die Datenbank initialisiert werden. Hierfür kann die DataSourceAdminApp bzw. das sogenannte Dashboard verwendet werden.

Das Dashboard kann im Browser aufgerufen werden unter der entsprechenden URL, z. B. https://your-url.local/datasourceadminapp.

Die Authentifizierung für den Zugriff geschieht über die integrierte Windows-Authentifizierung (siehe Schritt 3).

Im Dashboard wird eine Übersicht über die konfigurierten Datenbanken angezeigt. Wählen Sie die einzige konfigurierte Datenbank (im Beispiel "primedocs_Prod").

Image Modified

Anschliessend kann die Initialisierung durch Wählen des Buttons "Init Datasource" ausgelöst werden.


Schritt 3: Zugriff auf Admin/Dashboard einschränken

Nach der Installation hat jeder Windows-Benutzer in der Domäne Zugriff auf das Dashboard. An dieser Stelle sollte der Zugriff eingeschränkt werden auf wenige Benutzer.

Die Authentifizierung geschieht über Windows. Die Berechtigungskonfiguration dafür kann in der entsprechenden "Web.config"-Datei (standardmässig unter "C:\inetpub\wwwroot\primedocs\datasourceadminapp\Web.config") vorgenommen werden und wird durch den IIS durchgesetzt.


Schritt 4: Verschlüsselungsschlüssel generieren

Auf neuen Datenbanken sollte ein "symmetric encryption key" (symmetrischer Verschlüsselungsschlüssel) erstellt werden.

Die folgende Meldung weist auf das Fehlen dieses Schlüssels hin:

Image Modified

Der Schlüssel kann im Reiter "Settings" unter "General Settings" bei "SymmetricEncryptionKey" mit dem Button "generate" erstellt werden.


Schritt 5 (Optional): Background Jobs konfigurieren

Der "JobHost" ist eine Konsolenapplikation, welche z. B. für die automatische Benutzerdatensynchronisation, Verwaltung von dynamischen Gruppen, das caching von Gruppeninformationen für Benutzer oder für ein automatisiertes Sichern der primedocs-Daten im primedocs-Package-Format (".oopx") genutzt werden kann.

Über die Standardinstallation wird vorgeschlagen, den "JobHost" einmal täglich als "Scheduled Task" einzurichten. Hierbei wird der "JobHost" ohne Parameter gestartet. Dies sorgt dafür, dass sowohl Benutzersynchronisation ("UserSync"), Verwalten von dynamischen Gruppen ("DynamicGroupLinking") und ein Caching aller Gruppeninformation für Benutzer ("PrincipalConnectorCaching") gestartet werden. Die eigentliche Konfiguration dieser Jobs erfolgt in der jeweiligen Datenquelle.

Package-Backup konfigurieren

Über den JobHost können automatisiert die primedocs-Daten im primedocs-Package-Format (".oopx") in ein konfigurierbares Verzeichnis (p für path) abgelegt werden. Über einen weiteren Parameter (r für retain) können ältere Backups automatisch gelöscht werden. Die generierten primedocs Packages oder Teile davon können über das Admin Dashboard wieder importiert werden.

Panel
panelIconIdatlassian-warning
panelIcon:warning:
bgColor

...

#FFEBE6

ACHTUNG
Diese Backups enthalten nur Daten, welche auch über das Admin Dashboard als "Package Export" exportiert werden können. Benutzerdaten sind so z. B. nicht exportierbar. Es handelt sich hier nicht um ein vollständiges Backup aller Daten. Für ein vollständiges Backup im Desaster Recovery-Fall ist ein SQL Backup & Restore empfohlen.

Aufruf:

Code Block
languagepowershell
primedocs.JobHost.exe PackageBackup -p "D:\primedocsBackup" -r 14

Der Standardwert von -r ist 7, d. h. es verbleiben maximal 7 Backups von jeder Datenquelle im Verzeichnis.

Hilfe anzeigen

Um die Hilfe beim JobHost anzuzeigen nutzen Sie diesen Parameter:

Code Block
languagepowershell
primedocs.JobHost.exe --help