Übersicht über NPS-Authentifizierungsproxy


Dieser Artikel beschreibt, wie Sie einen freigegebenen NPS für die Verwendung eines NPS-Authentifizierungsproxy konfigurieren, damit er auch zum Senden von Anrufbenachrichtigungen an Webex-Apps verwendet werden kann. Wenn Ihr NPS andere Apps nicht unterstützt, können Sie das vereinfachte Verfahren im Webex für BroadWorks Solution Guide https://help.webex.com/z9gt5jbefolgen.

NPS-Proxy– Übersicht

Zur Kompatibilität mit Webex für BroadWorks muss Ihr NPS gepatcht werden, um die NPS-Proxy-Funktion Push Server für VoIP in UCaaS zuunterstützen.

Die Funktion implementiert ein neues Design im Notification Push Server, um die Sicherheitslücke beim Teilen von Push-Benachrichtigungs-Zertifikaten mit Dienstanbietern für mobile Clients zu beheben. Anstatt Push-Benachrichtigungszertifikate und Schlüssel mit dem Dienstanbieter zu teilen, verwendet das NPS eine neue API, um einen kurzlebigen Push-Benachrichtigungstoken vom UCaaS-Backend zu erhalten, und verwendet dieses Token für die Authentifizierung mit den Apple APNs- und Google FCM-Diensten.

Die Funktion verbessert außerdem die Fähigkeit des Notification Push Servers, Benachrichtigungen über die neue Google Firebase Cloud Messaging (FCM) HTTPv1-API an Android-Geräte zu senden.

Die BroadWorks-Patches für diese Funktion sind unter Xchange verfügbar: https://xchange.broadsoft.com/node/1046235

Weitere Informationen finden Sie unter Push server for VoIP in UCaaS Feature Description on Xchange: https://xchange.broadsoft.com/node/1045458

Der XSP (oder Application Delivery Platform ADP), der NPS hostet, muss folgende Anforderungen erfüllen:

Mindestversionen und Einschränkungen bei der Ko-Residenz

  • NPS muss auf einem dedizierten XSP/ADP aktiviert werden und NPS muss die einzige gehostete Anwendung auf dem Server sein. Dadurch wird eine Störung bei der Bereitstellung von Pushbenachrichtigungen behoben.

  • Es sollte nur eine NPS-App in einer Bereitstellung geben. Wenn Sie mobile UC-One Collaborate/Connect und oder UC-One SaaS verwenden und Webex für BroadWorks implementieren, müssen Sie diesen einzelnen NPS für alle Apps freigeben.

  • NPS muss auf Version R22 oder höher XSP oder ADP sein.

    R22/R23 XSP ist mit einem R21-Stack kompatibel, wenn der XSP nur NPS ausgeführt und der AS R21 ist. SP1 ein. Weitere Informationen finden Sie in der BroadWorks-Kompatibilitätsmatrix.

  • Weitere Informationen zum ADP-Server finden Sie unter https://xchange.broadsoft.com/node/1051580.

Gemeinsam genutzte NPS

Lesen Sie diese Hinweise, bevor Sie Ihren freigegebenen NPS für die Verwendung des NPS-Proxys konfigurieren:

  • Wenn Ihr NPS mit anderen Apps verwendet wird (nicht nur mit der Webex-App): Ändern Sie den NPS nicht davon ab, die FCM-Legacy-API zur Verwendung der FCM HTTP v1 API zu verwenden, bevor Sie den NPS-Proxy konfigurieren.

    Sie können während der Konfiguration von NPS für die Verwendung des NPS-Proxys umwechseln.

  • Wenn Sie überprüft haben, dass Benachrichtigungen für ältere Apps mit dem NPS-Proxy ordnungsgemäß funktionieren, können Sie den FCM API-Schlüssel für die Android-App und den APNs-Authentifizierungsschlüssel für die iOS-App entfernen.

APNs HTTP/2

Android FCMv1

  • Wenn Sie Android-Apps bereitgestellt haben, die nicht von Cisco/BroadSoft sind, konfigurieren Sie diese Apps so, dass sie die FCMv1-Schlüssel verwenden, bevor Sie NPS für die Verwendung des NPS-Proxy konfigurieren.

  • Wenn XSP/ADP aktuell die Connect- oder UC-One-SaaS-App unterstützt, können FCMv1-Schlüssel nicht aktiviert werden, bevor Sie den NPS-Proxy konfigurieren. Wir empfehlen Ihnen, alle zusätzlichen Apps zu den FCMv1-Schlüsseln zu migrieren, sie zu aktivieren und zu testen und dann zu deaktivieren, bis Sie die Einrichtungsanweisungen ausführen können (der Migrationsprozess ist in diesem Artikel dokumentiert).

Abbildung 1. Visuelle Zusammenfassung der Migration zum NPS-Authentifizierungsproxy
Tabelle 1. Zusammenfassung der Aufgaben für die Migration zum NPS-Proxy

Sequenz

Aufgabenbezeichnung

Wann/Warum ist eine Aufgabe erforderlich?

1

Migrieren Sie NPS zu HTTP/2 für UC-One SaaS (oder Connect)-iOS-Apps.

Wenn der NPS diese Apps unterstützt und sie noch nicht für HTTP/2 konfiguriert sind.

2

Migrieren Sie NPS zu FCMv1 für UC-One SaaS (oder Connect)-Android-Apps.

Wenn der NPS diese Apps unterstützt und sie noch nicht für FCMv1 konfiguriert sind.

3

Aktivieren Sie den FCMv1-Modus und testen Sie Push-Benachrichtigungen.

Wenn der NPS UC-One Connect und/oder andere (nicht-Cisco) Android-Apps unterstützt.

4

Aktivieren Sie den LEGACY-Modus des FCM erneut.

Wenn der NPS UC-One SaaS unterstützt. Wenn Sie FCMv1 aktiviert lassen, bevor Sie den NPS-Proxy konfigurieren, fehlschlagende Push-Benachrichtigungen an UC-One SaaS.

5

Installieren Sie NPS-Authentifizierungsproxy-Patches.

Wenn NPS auf XSP R22 oder XSP R23 ist.

6

Konfigurieren Sie NPS, um den NPS-Authentifizierungsproxy zu verwenden:

  • Technischen Support von NPS anhängen

  • CI OAuth-Konto anfordern

  • Erstellen Sie ein CI-Konto auf NPS und konfigurieren Sie das Timeout für das Aktualisierungstoken

  • Android-App-IDs hinzufügen

  • iOS-App-IDs hinzufügen

  • URLs und Zeitüberschreitungen bei der Verbindung überprüfen/festlegen

  • Apps zu AS-Allow-Liste hinzufügen

  • (Erneut) FCMv1 aktivieren

  • XSP/ADP neu starten

  • Testen von PNs für iOS- und Android-Apps

Immer erforderlich.

7

Entfernen Sie die Schlüssel für den FCM-Legacy-Modus.

Für Apps, die von NPS auf FCMv1 erfolgreich unterstützt werden.

Diese Aufgabe ist obligatorisch für Push-Benachrichtigungen an UC-One SaaS- und Webex-Apps auf iOS-Plattformen.

Vorbereitungen

Wenn Ihr XSP R22 verwendet, müssen Sie ap354313 anwenden, bevor Sie die NPS-Anwendung so konfigurieren können, dass sie HTTP/2 für APNS verwendet.

1

Legen Sie die Produktions-URL und die Verbindungsparameter auf XSP_CLI/Applications/NotificationPtusServer/APNS/Production fest>

URL festlegen https://api.push.apple.com/3/device

Verbindung festlegenPoolSize 2

connectionTimeout 3000 festlegen

connectionIdleTimeoutInSeconds 600 festlegen

Hinweis: Setzen Sie das Zeitüberschreitungs-

2

Fügen Sie die Anwendungs-IDs zum APNS-Anwendungskontext hinzu und achten Sie darauf, den Auth-Schlüssel zu leeren.

Für UC-One SaaS:XSP_CLI/Anwendungen/NotificationPinnenServer/APNS/Production/Tokens> add com.broadsoft.uc-one

Für die Webex-App: XSP_CLI/Anwendungen/NotificationPinnenServer/APNS/Production/Tokens> com.cisco.squared hinzufügen

3

Überprüfen Sie die Authentifizierungsschlüssel mit den XSP_CLI/Anwendungen/Benachrichtigungsserver/APNS/Production/Tokens> get

4

Wenn der Authentifizierungsschlüssel für com.broadsoft.uc-one nicht leer ist, können Sie ihn mit XSP_CLI/Applications/NotificationPtusServer/APNS/Production/Tokens löschen> löschen Sie den-authkey

5

HTTP/2 aktivieren:

XSP_CLI/Anwendungen/NotificationP proxyServer/APNS/GeneralSettings> legen Sie HTTP2Enabled true fest

6

Nur für UC-One-SaaS-Apps: Melden Sie sich beim Reseller-Portal an und wechseln Sie zu Konfiguration > BroadWorks > .

7

Führen Sie einen Bildlauf nach unten zum Abschnitt Notification Push Server durch, und wählen Sie Ihre Version (z. B. Version 22) aus, und folgen Sie den Anweisungen im Portal.

  • Diese Aufgabe gilt für NPS auf XSP. Ignorieren Sie es, wenn Ihr NPS auf ADP ist.

  • Sie können dieses Verfahren für die Migration zu FCMv1-Benachrichtigungen für UC-One Connect- oder UC-One-SaaS-Android-Apps verwenden.

  • Sie müssen FCMv1 verwenden, wenn Sie den NPS-Proxy zur Authentifizierung von Pushbenachrichtigungen für UC-One oder die Webex Android-Apps verwenden möchten.

  • Diese Aufgabe bereitet den NPS für FCMv1 vor, damit Sie ihn als Teil der Konfiguration des NPS-Authentifizierungsproxy aktivieren können. Aktivieren Sie FCMv1 erst, wenn Sie bereit sind, den NPS-Authentifizierungsproxy zu konfigurieren, oder Benachrichtigungen an SaaS-Clients werden fehlschlagen.

1

Holen Sie sich die Projekt-ID von der Firebase-Konsole:

  1. Melden Sie sich an, um console.firebase.google.com.

  2. Wählen Sie das Projekt der UC-One-App (Connect oder SaaS) aus und öffnen Sie die Projekteinstellungen.

  3. Öffnen Sie die Registerkarte Allgemein und zeichnen Sie die Projekt-ID auf.

2

Holen Sie sich den privaten Schlüssel Ihres Dienstkontos von Firebase:

  1. Navigieren Sie in den Projekteinstellungen zur Registerkarte Dienstkonten.

  2. Erstellen Sie entweder ein neues Dienstkonto und erhalten Sie einen privaten Schlüssel.

  3. Oder öffnen Sie ein vorhandenes Dienstkonto und generieren Sie einen neuen privaten Schlüssel für das Konto.

    Hinweis: Das Dienstkonto muss über die Berechtigung firebaseadmin-sdk verfügen.

  4. Laden Sie den Schlüssel an einen sicheren Speicherort herunter.

3

Kopieren Sie den Schlüssel in den XSP, der Ihre NPS hosten.

4

Fügen Sie die Projekt-ID und den dazugehörigen privaten Schlüssel zum FCM-Projektkontext hinzu:

XSP_CLI/Anwendungen/BenachrichtigungEntschlüsselungServer/FCM/Projects>Projekt-ID-Pfad/zu/keyfile hinzufügen

5

Fügen Sie die UC-One-Anwendung (Connect oder SaaS) und die zugehörige Projekt-ID zum FCM-Anwendungskontext hinzu:

XSP_CLI/Anwendungen/NotificationPtusServer/FCM/Applications> applicationId com.broadsoft.connect projectId project-id hinzufügen

6

Überprüfen Sie die Konfiguration für FCM nach den hier gezeigten Attributen und empfohlenen Werten. Verwenden Sie die Set-Version des Befehls, um Werte zu ändern, wenn erforderlich:

Ausführen XSP_CLI/Anwendungen/NotificationPtusServer/FCM> Get

Parameter

Empfohlener Wert

Authurl

https://www.googleapis.com/oauth2/v4/token

pushURL

https://fcm.googleapis.com/v1/projects/PROJECT-ID/messages:send

Umfang

https://www.googleapis.com/auth/firebase.messaging

tokenTimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMillseconds

1000

connectionIdleTimeoutInSeconds

600

  • Diese Aufgabe gilt für NPS auf ADP. Ignorieren Sie es, wenn Ihr NPS auf XSP ist.

  • Sie können dieses Verfahren für die Migration zu FCMv1-Benachrichtigungen für UC-One Connect- oder UC-One-SaaS-Android-Apps verwenden.

  • Sie müssen FCMv1 verwenden, wenn Sie den NPS-Proxy zur Authentifizierung von Pushbenachrichtigungen für UC-One oder die Webex Android-Apps verwenden möchten.

  • Diese Aufgabe bereitet den NPS für FCMv1 vor, damit Sie ihn als Teil der Konfiguration des NPS-Authentifizierungsproxy aktivieren können. Aktivieren Sie FCMv1 erst, wenn Sie bereit sind, den NPS-Authentifizierungsproxy zu konfigurieren, oder Benachrichtigungen an SaaS-Clients werden fehlschlagen.

1

Holen Sie sich die Projekt-ID von der Firebase-Konsole:

  1. Melden Sie sich an, um console.firebase.google.com.

  2. Wählen Sie das Projekt der UC-One-App (Connect oder SaaS) aus und öffnen Sie die Projekteinstellungen.

  3. Öffnen Sie die Registerkarte Allgemein und zeichnen Sie die Projekt-ID auf.

2

Holen Sie sich den privaten Schlüssel Ihres Dienstkontos von Firebase:

  1. Navigieren Sie in den Projekteinstellungen zur Registerkarte Dienstkonten.

  2. Erstellen Sie entweder ein neues Dienstkonto und erhalten Sie einen privaten Schlüssel.

  3. Oder öffnen Sie ein vorhandenes Dienstkonto und generieren Sie einen neuen privaten Schlüssel für das Konto.

    Hinweis: Das Dienstkonto muss über die Berechtigung firebaseadmin-sdk verfügen.

  4. Laden Sie den Schlüssel (.json-Datei) an einen sicheren Speicherort herunter.

3

Importieren Sie die .json-Datei in den ADP-Server /youtube/install.

4

Melden Sie sich bei ADP CLI an und fügen Sie das Projekt und den API-Schlüssel zum FCM-Projektkontext hinzu:

ADP_CLI/Applications/NotificationPtusServer/FCM/Projects> connect-ucaas /youtube/install/filename.json hinzufügen

5

Fügen Sie die Anwendung und Projekt-ID zum FCM-Anwendungskontext hinzu:

ADP_CLI/Anwendungen/NotificationPtusServer/FCM/Applications> applicationId com.broadsoft.ucaas.connect projectId project-id hinzufügen

6

Überprüfen Sie Ihre Konfiguration:


  ADP_CLI/Anwendungen/BenachrichtigungP **Server/FCM/Projects> Sie erhalten 
 Projekt-ID-Accountkey 
 "*"*" 
 connect-ucaas ";

  ADP_CLI/Applications/NotificationPtusServer/FCM/Applications> Get Application ID 
 Project ID 
 "Projekt-ID ""*"*"", 
 com.broadsoft.ucaas.connect-ucaas

Dies müssen Sie nur tun (als Teil der Migration), wenn:

  • Ihr NPS wird für UC-One SaaS- oder BroadWorks Connect-Android-Apps verwendet.

  • Sie haben bereits getestet, dass Anruf-Pushbenachrichtigungen an andere Apps mit FCMv1 API funktionieren.

Sie deaktivieren FCMv1 vorübergehend, da FCMv1-Schlüssel für diese Apps nur während des NpS-Authentifizierungsproxykonfigurationsprozesses aktiviert werden müssen.

1

Melden Sie sich beim XSP an, der Ihr freigegebenes NPS hosten.

2

Navigieren Sie zum FCM-Kontext und deaktivieren Sie FCM v1: XSP_CLI/Anwendungen/BenachrichtigungSserver/FCM> damit V1enabled auf die Verwendung des legacy-API-Schlüssels des FCM zurück gesetzt wird.

Installieren Sie die folgenden Patches zur Unterstützung der NPS-Authentifizierungsproxy-Funktion:

R22-Patches

R23-Patches

1

Erstellen Sie eine Dienstanfrage mit Ihrem Onboarding-Kontakt oder tac, um Ihr (Webex Gemeinsame Identität) OAuth-Clientkonto zu bereitstellen. Titel Ihrer Service-Anfrage NPS-Konfiguration für Auth Proxy Setup.

Cisco gibt Ihnen eine OAuth-Client-ID, einen Client-Schlüssel und ein Aktualisierungstoken, das 60 Tage gültig ist. Wenn der Token ausläuft, bevor Sie ihn mit Ihrem NPS verwenden, können Sie eine weitere Anfrage erheben.
2

Erstellen Sie das Client-Konto auf dem NPS:

XSP_CLI/Anwendungen/NotificationPtusServer/CiscoCI/Client> clientID client-ID-From-Step1 festlegen


  XSP_CLI/Anwendungen/NotificationPretServer/CiscoCI/Client> legen Sie "Neues Passwort" fest: Client-Secret-From-Step1

  XSP_CLI/Anwendungen/NotificationPtusServer/CiscoCI/Client> RefreshToken Neues Passwort festlegen: Aktualisieren-Token-von-Schritt 1

Um zu überprüfen, ob die eingegebenen Werte mit den Eingaben übereinstimmen, führen Sie XSP_CLI/Anwendungen/NotificationPgesellServer/CiscoCI/Client aus> get

3

Geben Sie die NPS-Proxy-URL ein und legen Sie das Tokenaktualisierungsintervall fest (30 Minuten empfohlen):

XSP_CLI/Anwendungen/NotificationPtusServer/CloudNPSService> URL festlegen https://nps.uc-one.broadsoft.com/nps/

XSP_CLI/Anwendungen/NotificationP telefonserver/cloudNPSService> voIPTokenRefreshInterval 1800 festlegen

4

(Für Android-Benachrichtigungen) Fügen Sie die Android-Anwendungs-IDs zum FCM-Anwendungskontext im NPS hinzu.

Für die Webex-App auf Android: XSP_CLI/Anwendungen/NotificationP proxyServer/FCM/Applications> ApplicationId com.cisco.wx2.android hinzufügen

Für UC-One-App auf Android: XSP_CLI/Anwendungen/BenachrichtigungEntbindenServer/FCM/Applications> applicationId com.broadsoft.connect hinzufügen

5

(Für Apple iOS-Benachrichtigungen) Fügen Sie die Anwendungs-ID zum APNS-Anwendungskontext hinzu und achten Sie darauf, den Authentifizierungsschlüssel zu entfernen– setzen Sie ihn auf leer.

Für die Webex-App auf iOS: XSP_CLI/Anwendungen/NotificationPinnenServer/APNS/Production/Tokens> com.cisco.squared hinzufügen

Für UC-One-App auf iOS: XSP_CLI/Anwendungen/NotificationPinnenServer/APNS/Production/Tokens> com.cisco.squared hinzufügen

6

Konfigurieren Sie die folgenden NPS-URLs:

Tabelle 2.

XSP CLI-Kontext

Parameter

Wert

XSP_CLI/Applications/NotificationPtusServer/FCM>

Authurl

https://www.googleapis.com/oauth2/v4/token

pushURL

https://fcm.googleapis.com/v1/projects//messages:send

Umfang

https://www.googleapis.com/auth/firebase.messaging

XSP_CLI/Anwendungen/NotificationPinnenServer/APNS/Production>

URL

https://api.push.apple.com/3/device

7

Konfigurieren Sie die folgenden NPS-Verbindungsparameter auf die empfohlenen Werte:

Tabelle 3.

XSP CLI-Kontext

Parameter

Wert

XSP_CLI/Applications/NotificationPtusServer/FCM>

tokenTimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMillseconds

1000

connectionIdleTimeoutInSeconds

600

XSP_CLI/Anwendungen/NotificationPinnenServer/APNS/Production>

Connectiontimeout

1000

connectionPoolSize

2

connectionIdleTimeoutInSeconds

600

8

Überprüfen Sie, ob es sich bei dem Anwendungsserver um Anwendungs-IDs handelt, da Sie die Webex-Apps möglicherweise der Liste "Zulassen" hinzufügen müssen:

  1. Führen AS_CLI/System/PushBenachrichtigung aus> erhalten und überprüfen Sie den Wert vonenforceAllowedApplicationList. Wenn es wahr ist, müssen Sie diese Unteraufgabe abschließen. Andernfalls überspringen Sie den Rest der Unteraufgabe.

  2. AS_CLI/System/PushNotification/AllowedApplications> com.cisco.wx2.android "Webex Android" hinzufügen

  3. AS_CLI/System/PushNotification/AllowedApplications> com.cisco.squared "Webex iOS" hinzufügen

1

XSP neu starten:

anstarten
2

Testen Sie Anrufbenachrichtigungen für Android, indem Sie anrufe von einem BroadWorks-Abonnenten zum Anruf-Client auf Android tätigen. Vergewissern Sie sich, dass auf dem Android-Gerät eine Anrufbenachrichtigung angezeigt wird.

Hinweis: Wenn Pushbenachrichtigungen für die UC-One-Android-Anwendung fehlschlagen, liegt die Fehlkonfiguration vor. Wenn dies Ihre Situation ist, können Sie wie folgt zum alten FCM zurückdrungen:

  1. FCMv1 deaktivieren: XSP_CLI/Anwendungen/BenachrichtigungSetzserver/FCM> v1Enabled falsch festlegen

  2. XSP neu starten: anstarten

  3. Überprüfen Sie Ihre Konfiguration.

  4. Aktivieren Sie FCMv1 erneut und starten Sie XSP neu.

  5. Wiederholen Sie den Test.

3

Testen Sie Anrufbenachrichtigungen für iOS, indem Sie unter iOS Anrufe von einem BroadWorks-Abonnenten zum Anrufclient tätigen. Stellen Sie sicher, dass auf dem iOS-Gerät eine Anrufbenachrichtigung angezeigt wird.

Hinweis: Wenn Pushbenachrichtigungen für die UC-One-iOS-Anwendung fehlschlagen, liegt gegebenenfalls eine Fehlkonfiguration vor. Wenn dies Ihre Situation ist, können Sie die veraltete Binärschnittstelle mit der Option HTTP2Enabled false älteren.