Azure App Service Container
Stellen Sie FoxIDs in Ihrem Azure Tenant als eigene private Cloud bereit.
Eine FoxIDs Installation ist wie ein Eimer, es gibt keine externen Abhängigkeiten und es ist einfach, mit wenig Aufwand eine sehr hohe Verfügbarkeit zu erreichen. FoxIDs werden aktualisiert, indem die zwei App Services auf die neue FoxIDs Version aktualisiert werden. Neue FoxIDs Releases sind abwärtskompatibel, konsultieren Sie bitte die release notes vor dem Update.
FoxIDs wird in der Ressourcengruppe FoxIDs (optional) bereitgestellt, in der Sie Owner oder Contributor und User Access Administrator auf Abonnement oder Ressourcengruppenebene sein müssen.
Sie können eine kleine Bereitstellung in Azure mit geringer Ressourcennutzung durchführen, zu einem Azure Preis von etwa �80 bis �100 pro Monat.
Die Azure Container Bereitstellung umfasst:
- Zwei App Services, eine für die FoxIDs Site und eine für die FoxIDs Control Site (Client und API). Beide App Services werden im selben Linux App Service Plan gehostet.
- FoxIDs wird mit Docker Containern aus Docker Hub bereitgestellt und beide App Services sind mit kontinuierlicher Bereitstellung konfiguriert.
- Key Vault. Zertifikate und Secrets werden in Key Vault gespeichert und verwaltet.
- Cosmos DB. Enthält alle Daten einschließlich Tenants, Umgebungen und Benutzer. Cosmos DB ist eine NoSQL Datenbank und die Daten werden in JSON Dokumenten gespeichert.
- Redis cache. Hält Sequenzen (z. B. Login und Logout), Daten Cache zur Leistungsverbesserung und Zähler, um die Authentifizierung gegen verschiedene Angriffe zu schützen.
- Application Insights und Log Analytics workspace. Logs werden an Application Insights gesendet und im Log Analytics workspace abgefragt.
- VLAN mit Subnetzen.
- Subnetz für App services, Cosmos DB und Key Vault.
- Subnetz mit Private Link zu Redis.
Eine weitere Alternative ist die Bereitstellung von FoxIDs mit Kubernetes (K8s) in Azure Kubernetes Service (AKS).
E Mails mit Sendgrid oder SMTP senden
FoxIDs unterstützt das Senden von E Mails mit SendGrid und SMTP als E Mail Provider.
Erster Login und Admin Benutzer
Nach erfolgreicher Bereitstellung öffnen Sie FoxIDs Control Client unter https://foxidscontrolxxxxxxxxxx.azurewebsites.net (der App Service, der mit foxidscontrol... beginnt), der Sie zum Master Tenant führt.
Der Standard Admin Benutzer ist admin@foxids.com mit dem Passwort FirstAccess! (Sie müssen das Passwort beim ersten Login ändern)

Optional navigieren Sie zur Registerkarte Users und erstellen weitere Admin Benutzer und vergeben die Admin role mit dem Wert foxids:tenant.admin.

Sie sollten die Konfiguration der Anwendungsregistrierungen und Authentifizierungsmethoden im Master Tenant im Allgemeinen nicht ändern, es sei denn, Sie sind sicher, was Sie tun.
Fahren Sie stattdessen mit dem nächsten Schritt fort, um einen main Tenant zu erstellen.
Main Tenant erstellen
Erstellen Sie einen main Tenant für Ihre Umgebungen.
Berücksichtigen Sie custom domains, bevor Sie den
mainTenant erstellen.
Klicken Sie New Tenant und erstellen Sie den main Tenant.

Melden Sie sich im main Tenant an, wo Sie mit der Konfiguration Ihrer Anwendungen und Authentifizierungsmethoden beginnen können.
Custom domains
Custom domains werden mit custom primary domains und einer custom domain im main Tenant konfiguriert.
Custom primary domains
Die primären Domains der FoxIDs und FoxIDs Control Sites können angepasst werden. Die neuen primären custom domains können in den App Services oder über einen reverse proxy konfiguriert werden.
Wichtig: Ändern Sie die primäre Domain, bevor Sie Tenants hinzufügen.
Domains:
- Die Standarddomain der FoxIDs Site ist
https://foxidsxxxx.azurewebsites.netund kann in eine custom primary domain geändert werden, z. B.https://somedomain.comoderhttps://id.somedomain.com - Die Standarddomain der FoxIDs Control Site ist
https://foxidscontrolxxxx.azurewebsites.netund kann in eine custom primary domain geändert werden, z. B.https://control.somedomain.com
Die FoxIDs Site unterstützt eine primäre Domain und mehrere custom domains, die mit anderen Tenants als dem Master Tenant verbunden sind. Die FoxIDs Control Site unterstützt nur eine primäre Domain.
Neue primäre custom domains konfigurieren:
Melden Sie sich bei FoxIDs Control Client mit der Standard/alten primären Domain an. Wählen Sie die Registerkarte
Applications, klicken Sie aufOpenID Connect - foxids_control_clientund klicken Sie Show advanced.- Fügen Sie die neue primäre custom domain URL der FoxIDs Control Site zur Liste
Allow CORS originshinzu, ohne abschließenden Slash. - Fügen Sie die neuen primären custom domain Login und Logout Redirect URIs der FoxIDs Control Client Site zur Liste
Redirect URIshinzu, einschließlich des abschließenden/master/authentication/login_callbackund/master/authentication/logout_callback.
Wenn Sie Tenants hinzugefügt haben, bevor Sie die primäre Domain ändern, muss die Konfiguration
OpenID Connect - foxids_control_clientin jedem Tenant durchgeführt werden.- Fügen Sie die neue primäre custom domain URL der FoxIDs Control Site zur Liste
Die primären custom domains werden in jedem App Service oder über einen reverse proxy konfiguriert. Je nach reverse proxy kann es erforderlich sein, die Domains zusätzlich in jedem App Service zu konfigurieren:
- Wenn in App Services konfiguriert: Fügen Sie die primären custom domains im Azure Portal in den FoxIDs App Service und den FoxIDs Control App Service unter der Registerkarte
Custom domainshinzu, indem Sie den LinkAdd custom domainklicken. - Wenn über reverse proxy konfiguriert: Die primären custom domains werden über den reverse proxy bereitgestellt.
- Wenn in App Services konfiguriert: Fügen Sie die primären custom domains im Azure Portal in den FoxIDs App Service und den FoxIDs Control App Service unter der Registerkarte
Konfigurieren Sie dann die neue primäre custom domain der FoxIDs Site im FoxIDs App Service unter der Registerkarte
Environment variables:- Die Einstellung
Settings__FoxIDsEndpointwird auf die neue primäre custom domain der FoxIDs Site geändert.
- Die Einstellung
Und konfigurieren Sie die neuen primären custom domains der FoxIDs Site und FoxIDs Control Site im FoxIDs Control App Service unter der Registerkarte
Environment variables:- Die Einstellung
Settings__FoxIDsEndpointwird auf die neue primäre custom domain der FoxIDs Site geändert. - Die Einstellung
Settings__FoxIDsControlEndpointwird auf die neue primäre custom domain der FoxIDs Control Site geändert.
- Die Einstellung
Custom domain im main Tenant
Sie können eine kürzere und schönere URL erreichen, bei der das Tenant Element aus der URL entfernt wird. Dies wird erreicht, indem die FoxIDs Site primäre custom domain im main Tenant als custom domain konfiguriert wird.
Custom domains werden unterstützt, wenn die FoxIDs Site hinter einem reverse proxy steht, der Domain Rewrite durchführen kann.
Alternativ unterstützt FoxIDs custom domains, indem die HTTP Request Domain gelesen und als custom domain verwendet wird, wenn die Einstellung Setting__RequestDomainAsCustomDomain in den FoxIDs App Service Environment variables auf true gesetzt ist.
In diesem Fall muss der FoxIDs App Service mit der custom domain konfiguriert werden.
Die Domain wird im main Tenant konfiguriert und im Master Tenant als verifiziert markiert.

Reverse proxy
Es wird empfohlen, sowohl den FoxIDs Azure App Service als auch den FoxIDs Control Azure App Service hinter einem reverse proxy zu platzieren.
Azure Front Door
Azure Front Door kann als reverse proxy konfiguriert werden. Azure Front Door rewritet Domains standardmäßig.
Aktivieren Sie kein caching. Der
Accept-LanguageHeader wird bei aktiviertem caching nicht weitergeleitet. Der Header ist erforderlich, damit FoxIDs Kulturen unterstützt.
Konfiguration:
- Fügen Sie einen Azure Front Door Endpunkt für den FoxIDs App Service und den FoxIDs Control App Service hinzu
- Im Networking Bereich der App Services. Aktivieren Sie die Zugriffs Beschränkung, sodass nur Traffic von Azure Front Door erlaubt ist
- Fügen Sie die Einstellung
Settings__TrustProxyHeadersmit dem Werttrueim FoxIDs App ServiceEnvironment variableshinzu - Deaktivieren Sie Session affinity
- Optional konfigurieren Sie WAF Policies
Alternativer reverse proxy
Optional können Sie einen anderen reverse proxy auswählen.
Zugriff einschränken
Optional Zugriff einschränken, wenn Sie einen anderen reverse proxy als Azure Front Door verwenden.
Sowohl die FoxIDs als auch die FoxIDs Control Sites können den Zugriff basierend auf dem X-FoxIDs-Secret HTTP Header einschränken.
Die Zugriffsbeschränkung wird aktiviert, indem ein Secret mit dem Namen Settings--ProxySecret in Key Vault hinzugefügt wird.
Gewähren Sie Ihrer IP Adresse Zugriff über die Key Vault Firewall

Gewähren Sie Ihrem Benutzer List und Set Berechtigungen in Access policies.

Fügen Sie das Secret
Settings--ProxySecrethinzu
Entfernen Sie nach erfolgreicher Konfiguration Ihre IP Adresse und Berechtigungen.
Die App Services müssen neu gestartet werden, um das Secret zu lesen.
Nachdem das reverse proxy Secret in Key Vault konfiguriert wurde, muss der reverse proxy den X-FoxIDs-Secret HTTP Header in allen Backend Calls zu FoxIDs hinzufügen, um Zugriff zu erhalten.
Standardseite festlegen
Eine alternative Standardseite kann für die FoxIDs Site mit der Einstellung Settings__WebsiteUrl konfiguriert werden, z. B. mit dem Wert https://www.foxidsxxxx.com in den FoxIDs App Service Environment variables.
Bereitstellungsfehler beheben
Key Vault soft deleted
Wenn Sie eine frühere Bereitstellung gelöscht haben, ist Key Vault nur soft deleted und existiert noch einige Monate mit demselben Namen. In diesem Fall können Sie einen 'ConflictError' mit der Fehlermeldung 'Exist soft deleted vault with the same name.' erhalten.
Die Lösung ist, die alte Key Vault zu löschen (purge), wodurch der Name freigegeben wird.