Technik:CoPlanner-Reportserver
ReportSvrConfig.xml
Die ReportSvrConfig.xml enthält die folgenden Einträge, welche definiert werden müssen:
| Eintrag | Beschreibung |
| reportServerUrl | URL über welche der Reportserver kommuniziert |
| serviceName | Name, unter welchem das ReportServer Service angelegt werden soll über das Tool ReportServerServiceInstall.exe. |
| serviceNameCopServer | Servicename des installierten CoPlanner Services, damit bei der Installation des ReportServer Services, die entsprechende Abhängigkeit definiert werden kann. Sollte es kein Service geben, oder dieses auf einem anderen Server installiert sein, diesen Eintrag einfach leer lassen. |
| ReportServerLogPath | Pfad und Name der Logdatei. Wir nur ein Name angegeben wird die Datei in den ReportServer-Ordner gespeichert. |
| EventsUrl | Hier muss die ReportServerUrl, wobei das + mit dem entsprechenden Namen oder IP-Adresse ersetzt sein muss, erweitert mit api/v1.0/events stehen |
| CopServerUrl | URL über die mit dem CoPlanner Server/Service kommuniziert werden kann. |
| MaxRows | Ab CoP 10 HF 1.2: Dies ist die Anzahl der Datensätze, die maximal vom CoPlanner Server empfangen werden kann. Diese sollte in Relation zur Leistung des Client-Rechners stehen. Wird beim Laden von Datensätzen in einer Eingabemaske die hier festgelegte maximale Datensatzanzahl überschritten, wird der Ladevorgang unterbrochen und eine Meldung ausgegeben, die auffordert, die Datenmenge mittels Filtern entsprechend einzuschränken. |
| MaxCells | Ab CoP 10 HF 1.2: Gibt an, wie viele Zellen (Produkt der Achsendimensionselemente) maximal vom CoPlanner Server geladen werden. Ist dieser Tag nicht vorhanden, oder wird 0 eingetragen, erfolgt keine Einschränkung. |
Beispiel für so eine Datei:
<?xml version="1.0" standalone="yes"?>
<ReportSvrConfig.xml>
<HTTPsREST>
<ReportServerURL>https://+:4445/coplanner/reporting</ReportServerURL>
<CopServerServiceName>CopService_95_HF43</CopServerServiceName>
<ReportServerServiceName>CopReportingService_95_HF43</ReportServerServiceName>
<ReportServerLogPath>CopReportServer.log</ReportServerLogPath>
<EventsUrl>https://myserver.coplanner.com:4445/coplanner/reporting/api/v1.0/events</EventsUrl>
<CopServerUrl>https://myserver.coplanner.com:4443/coplanner</CopServerUrl>
<MaxRows>100000</MaxRows>
<MaxCells>0</MaxCells>
</HTTPsREST>
</ReportSvrConfig.xml>
Einrichten der Verbindung vor CoP 10 HF 1.2
Ab CoP 10 HF 1.2 sind diese zwei Dateien nicht mehr notwendig.
Für die Verbindung zum CoPlanner-Server muss die ClientConfig.xml entsprechend konfiguriert werden.
ClientConfig.xml
<?xml version="1.0" encoding="utf-16" standalone="yes"?>
<ClientConfig>
<IpSettings>
<Version>1</Version>
<Server>localhost</Server>
<Port>8963</Port>
<MaxRows>100000</MaxRows>
<MaxCells>0</MaxCells>
<TcpFormatter>Native</TcpFormatter>
<SSLCommonName></SSLCommonName>
</IpSettings>
<Languages>
<Available>Deutsch|English</Available>
</Languages>
</ClientConfig>
Für die Anmeldung des ReportServers am CoPlanner Server muss die SessionSettings.xml konfiguriert werden. Dieser User muss im CoPlanner nur die Rechte haben für den Plan und das Unternehmen, welches hier definiert wurde. Die Anwender können unabhängig davon, auf alle Pläne und Unternehmen zugreifen, auf welche Sie berechtigt sind.
SessionSettings.xml
<?xml version="1.0" encoding="utf-16" standalone="yes"?> <SessionSetting> <Version>1</Version> <User>Administrator</User> <Password>pwd</Password> <Entity>Bike GmbH</Entity> <Plan>Plan Bike GmbH</Plan> </SessionSetting>
Für die SSPI Anmeldung ist im SessionSettings.xml als Username nichts und als Kennwort "SSPI" zu hinterlegen. Um SSPI zu verwenden muss der User in der Domäne und im CoPlanner angelegt werden und im CoPlanner die Rechte auf die angegebene Kombination von Plan und Unternehmen haben.
Anstatt des Namens des Unternehmens/des Plans kann auch die Copsys_ID in geschwungenen Klammern verwendet werden. z.B. {1}
ReportSvrConfig.exe
Ist das zentrale Tool, über welches Sie alle Konfigurationseinstellungen von oben treffen können. Über dieses Tool lässt sich auch das Reportserver-Service installieren bzw. deinstallieren.
Zusätzliche Voraussetzungen
Damit der Benutzer, unter dem der CoPlanner Reportserver als Konsole oder das Service läuft, nicht Administrator sein muss, muss für den Benutzer und die definierte reportServerUrl folgender Befehl in der Konsole als Administrator ausgeführt werden. In der ReportSvrConfig.exe wird dieser Schritt beim Installieren bzw. Deinstallieren des Services mitausgeführt. Die Bindung des SSL Zertifikats muss jedoch manuell über den unten beschriebenen Befehl ausgeführt werden.
netsh http add urlacl url=<reportServerUrl> user=<DOMAIN\user>
| Parameter | Beschreibung |
| url | reportServerUrl, welche in der Cop.Server.Report.Service.exe.config bzw. CopReportServer.exe.config vergeben wurde |
| user | Benutzer unter dem der CoPlanner Reportserver/das Service laufen soll |
Beispiel:
netsh http add urlacl url=https://+:4445/coplanner/reporting user=Cop\Serviceuser
Entfernen kann man diesen Eintrag mit netsh http delete urlacl url=<ReportServerUrl>
Beispiel: netsh http delete urlacl url=https://+:4445/coplanner/reporting
Bindung des SSL Zertifikats
Für die Bindung des SSL Zertifikats muss folgender Befehl als Administrator in der Konsole ausgeführt werden
netsh http add sslcert ipport=0.0.0.0:<Portnummer> certhash=<fingerprint> appid=<GUID>
| Parameter | Beschreibung |
| Portnummer | Portnummer, welche in der reportServerUrl verwendet wird. z.B. bei reportServerUrl https://+:4445/coplanner/reporting wäre das 4445 |
| certhash | Fingerabdruck des Zertifikats. Dieser ist in den Details des Zertifikats zu finden und muss hier ohne den Leerzeichen angegeben werden. |
| GUID | Die GUID unterscheidet sich, ob der Reportserver als Konsole oder als Service verwendet wird
|
Beispiel:
netsh http add sslcert ipport=0.0.0.0:4445 certhash=2170950415ef045f6cb314c92e124411dd0590bf appid={6ef7e594-5b5e-4626-904a-47b513e81e30}
Entfernen kann man diese Bindung mit netsh http delete sslcert ipport=0.0.0.0:<Portnummer>
Beispiel: netsh http delete sslcert ipport=0.0.0.0:4445
Anpassen des SSL Zertifikats
Muss man das SSL Zertifikat ändern, weil es beispielsweise abgelaufen ist, dann sind folgende Schritte notwendig:
- Löschen der bestehenden Bindung
Entfernen kann man diese Bindung mit netsh http delete sslcert ipport=0.0.0.0:<Portnummer>
Beispiel: netsh http delete sslcert ipport=0.0.0.0:4445
- Hinzufügen des neuen Zertifikats
Folgen Sie den Schritten, welche im Punkt darober unter Bindung des SSL Zertifikats angeführt sind.
Anpassung von http auf https
- Entfernen der http Reservierung
Entfernen kann man diesen Eintrag mit netsh http delete urlacl url=<ReportServerUrl>
Beispiel: netsh http delete urlacl url=https://+:4445/coplanner/reporting
- Anpassung der ReportSvrConfig. Hier muss nun die ReportServerUrl und entsprechend auch die EventUrl auf https angepasst werden. Wurde der CoPlanner Server schon angepasst, muss hier auch die CopServerUrl auf https angepasst werden. Achtung, waren hier dir URLs auf localhost, so müssen diese auf den Namen angepasst werden, über welchen Sie durch das Zertifikat sicher sind. Z.B. https://servername.domain.com:4443/coplanner
- Sofern das Service über die ReportSvrConfig.exe neu installiert wird, ist folgender Schritt nicht notwendig. Ansonsten bitte folgenden Schritt ausführen:
netsh http add urlacl url=<reportServerUrl> user=<DOMAIN\user>
| Parameter | Beschreibung |
| url | reportServerUrl, welche in der Cop.Server.Report.Service.exe.config bzw. CopReportServer.exe.config vergeben wurde |
| user | Benutzer unter dem der CoPlanner Reportserver/das Service laufen soll |
Beispiel:
netsh http add urlacl url=https://+:4445/coplanner/reporting user=Cop\Serviceuser
- Binden des Zertifikats
netsh http add sslcert ipport=0.0.0.0:<Portnummer> certhash=<fingerprint> appid=<GUID>
| Parameter | Beschreibung |
| Portnummer | Portnummer, welche in der reportServerUrl verwendet wird. z.B. bei reportServerUrl https://+:4445/coplanner/reporting wäre das 4445 |
| certhash | Fingerabdruck des Zertifikats. Dieser ist in den Details des Zertifikats zu finden und muss hier ohne den Leerzeichen angegeben werden. |
| GUID | Die GUID unterscheidet sich, ob der Reportserver als Konsole oder als Service verwendet wird
|
Beispiel:
netsh http add sslcert ipport=0.0.0.0:4445 certhash=2170950415ef045f6cb314c92e124411dd0590bf appid={6ef7e594-5b5e-4626-904a-47b513e81e30}
Konfiguration in der SvrConfig.xml
In der SvrConfig.xml muss der Eintrag ReportServerUrl auf die definierte ReportServerUrl gesetzt werden.
| !!!Achtung!!! Hier muss ein möglicherweise verwendetes + in der URL mit dem Servernamen/IP Adresse ersetzt werden. |