Ein Identity Provider (IdP) ist was mit ShareFile Enterprise benötigt wird und oft wird hierfür Microsoft Active Directory Federation Service (ADFS) als IdP verwendet. ShareFile und XenMobile arbeiten nahtlos zusammen, wenn XenMobile als IdP eingesetzt wird. Dies würde aber die nahtlose Integration mit Windows Clients, die das Outlook Plug-ing, Desktop Sync etc. nutzen, nicht ermöglichen. Die Lösung ist der Einsatz beider IdP zur gleichen Zeit und darum DualIdP. Mit ADFS 2.0 kann das Zertifikat (ADFS selbst Signiert) zur Signierung nicht mit privaten Schlüssel exportiert werden um es mit XenMobile zu nutzen. Selbst wenn, dann wäre dies nur für ein Jahr bevor ADFS automatisch ein neues selbst Signiertes Zertifikat erstellen würde.
Citrix hat ein sehr gutes Dokument, dass erklärt wie DualIdP mit XenMobile und ADFS (Configure ADFS and XenMobile as a Dual IDP) eingerichtet werden kann. Ich möchte hier aber keinen langweilen und das Dokument evtl. mit ein paar Screenshots aufzubessern. Ich selber habe das Dokument verwendet und es gibt meiner Meinung nach etwas zu ergänzen und ein Fehler zu korrigieren. Was sie tun sollen sind meine Kommentare lesen und diese mit dem Dokument für ein Erfolgreiches Setup nutzen.
Kommentare zum Dokument
- Auf Site 3 ist zu lesen: "PEM Encoding Algorithm - Drop down to DES".
Mit DES und selbst einer 2048 Key Size werden nach dem erstellen nur 2036 als private Key herauskommen und wird mit ADFS nicht funktionieren. Das ist schlicht falsch. Sie müssen DES3 für den PEM Encoding Algorithm auswählen damit sie die 2048 als Key Size erhalten. - Auf Seite 7 ist zu lesen: "Run Powershell as Administrator on the ADFS server. Type: Get-ADFSProperties"
Das wird nichts, wenn nicht zuvor die Cmdlets für ADFS geladen werden. Zum Laden der Cmdlets folgenden Befehl im PoSh ausführen: "Add-PSSnapin Microsoft.Adfs.PowerShell" - Nachdem sie mit dem ADFS Abschnitt fertig sind und den ADFS Dienst neu starten wird es evtl. nicht funktionieren! Im Eventlog des ADFS finden sie ggf. den Event 133, in dem zu lesen ist: "The private key for the certificate that was configured could not be accessed." Dies ist offensichtlich ein Berechtigungsproblem mit dem ADFS Dienstkonto beim Zugriff auf das Zertifikat zur Signierung.
Merken sie sich das Verwendete Konto für den ADFS Dienst wie z.B. Netzwerkdienst oder ein bestimmter Benutzer der während des ADFS Setup verwendet wurde. Dann folgen sie der Anleitung: "Confirm that private keys for certificates are accessible by the AD FS 2.0 service user account" vom TechNet Artikel Things to Check Before Troubleshooting AD FS 2.0 um dem Konto die Rechte für den Zugriff auf das Zertifikat zu geben. Danach starten sie den ADFS Dienst neu. - Auf der letzten Seite: Logout URL: Logout URL to ADFS, eg https://adfs.company.com/adfs/ls/?wa=wsignout1.0 (this will need to be added as a logout point on ADFS if not done so already).
Diese kleine Randbemerkung sollte unbedingt befolgt werden, ansonsten kommt es zur Fehlermeldung beim Abmelden von ShareFile. Um den Logoutpunkt hinzuzufügen müssen sie in die Einstellungen des "Relying Party Trust" gehen und dort auf Endpunkte. Hier erstellen sie einen neuen "SAML Logout" Endpunkt.

Hoffe das hilft bei einem erfolgreichen Setup des DualIdP mit XenMobile und ADFS.