Pregled proxyja za provjeru autentičnosti NPS-a


Ovaj članak opisuje kako konfigurirati dijeljeni NPS za korištenje proxyja za NPS provjeru autentičnosti, tako da se može koristiti i za slanje obavijesti o pozivima u Webex aplikacije. Ako vaš NPS ne podržava druge aplikacije, možete slijediti pojednostavljeni postupak u Vodiču za rješenja za Webex za BroadWorkshttps://help.webex.com/z9gt5j .

Pregled NPS proxyja

Za kompatibilnost s Webex za BroadWorks, vaš NPS mora biti zakrpljen da podržava značajku NPS proxy, Push poslužitelj za VoIP u UCaaS .

Značajka implementira novi dizajn u Notification Push Server kako bi se riješila sigurnosna ranjivost dijeljenja privatnih ključeva certifikata push obavijesti s davateljima usluga za mobilne klijente. Umjesto dijeljenja certifikata i ključeva push obavijesti s davatelj usluge, NPS koristi novi API za dobivanje kratkotrajnog tokena push obavijesti od pozadinskog dijela UCaaS-a i koristi ovaj token za autentifikaciju s Apple APN-ovima i Google FCM uslugama.

Značajka također poboljšava sposobnost Notification Push Servera za slanje obavijesti na Android uređaje putem novog HTTPv1 API -ja Google Firebase Cloud Poruke (FCM).

XSP (ili Application Delivery Platform ADP) koji hostira NPS mora ispunjavati sljedeće zahtjeve:

Minimalne verzije i ograničenja zajedničkog boravka

  • NPS mora biti aktiviran na namjenskom XSP/ADP-u i NPS mora biti jedina hostirana aplikacija na poslužitelju. Time se eliminiraju smetnje u isporuci Push obavijesti.

  • U implementaciji bi trebala postojati samo jedna NPS aplikacija. Ako koristite mobilni UC-One Collaborate/Connect i/ili UC-One SaaS i implementirate Webex za BroadWorks, morate dijeliti ovaj jedinstveni NPS za sve aplikacije.

  • NPS mora biti na verziji R22 ili novijoj XSP ili ADP.

    R22/R23 XSP je kompatibilan sa R21 stogom ako je XSP samo pokreće NPS, a AS je R21.SP1. Vidi BroadWorks matrica kompatibilnosti za više informacija.

  • Više informacija o ADP poslužitelju možete pronaći nahttps://xchange.broadsoft.com/node/1051580 .

Zajednički NPS

Pročitajte ove napomene prije nego što konfigurirate svoj zajednički NPS za korištenje NPS proxyja:

  • Ako se vaš NPS koristi s drugim aplikacijama (ne samo s Webex aplikacija): Prvo konfigurirajte NPS proxy, a zatim promijenite NPS iz upotrebe naslijeđenog FCM API -ja na korištenje FCM HTTP v1 API-ja.

  • Nakon što ste potvrdili da obavijesti ispravno rade za starije aplikacije s NPS proxyjem, uklonite FCM API ključ za Android aplikaciju i APNs ključ za auth za iOS aplikaciju.

APN-ovi HTTP/2

  • Ako ste implementirali bilo koju iOS aplikaciju koja nije iz Cisco/BroadSoft, konfigurirajte te aplikacije da koriste HTTP/2 APNS protokol prije konfiguriranja NPS-a za korištenje NPS proxyja.

  • XSP/ADP-ovi koji već podržavaju aplikaciju Collaborate ili SaaS BroadWorks moraju se migrirati na HTTP/2. Za detaljne informacije o konfiguriranju HTTP/2, pogledajte HTTP/2 podrška za poslužitelj obavijesti za APNS (migracija NPS-a za podršku ovim iOS aplikacijama sažeta je u ovom članku).

Android FCMv1

  • Ako ste implementirali bilo koju Android aplikaciju koja nije iz Cisco/BroadSoft, konfigurirajte te aplikacije da koriste FCMv1 ključeve prije konfiguriranja NPS-a za korištenje NPS proxyja.

  • Ako XSP/ADP trenutno podržava aplikaciju Connect ili UC-One SaaS, tada omogućite FCMv1 ključeve poslije konfigurirate NPS proxy. Preporučujemo da sve dodatne aplikacije migrirate na FCMv1 ključeve, omogućite i testirate, a zatim onemogućite dok ne budete spremni dovršiti upute za postavljanje (tijek migracije je dokumentiran u ovom članku).

Slika 1. Vizualni sažetak migracije na NPS proxy za provjeru autentičnosti
Tablica 1. Sažetak zadataka za prelazak na NPS proxy

Slijed

Naslov zadatka

Kada/zašto je zadatak potreban?

1

Prebacite NPS na HTTP/2 za UC-One SaaS (ili Connect) iOS aplikacije.

Ako NPS podržava te aplikacije, a one još nisu konfigurirane za HTTP/2.

2

Prebacite NPS na FCMv1 za UC-One SaaS (ili Connect) Android aplikacije.

Ako NPS podržava te aplikacije, a one još nisu konfigurirane za FCMv1.

3

Omogućite FCMv1 način rada i testirajte push obavijesti.

Ako NPS podržava UC-One Connect i/ili druge (ne-Ciscove) Android aplikacije.

4

Ponovno omogućite FCM naslijeđeni način rada.

Ako NPS podržava UC-One SaaS. Ako ostavite omogućen FCMv1, prije nego što konfigurirate NPS proxy, tada potisne obavijesti na UC-One SaaS počnu neuspjeh.

5

Instalirajte proxy zakrpe za NPS provjeru autentičnosti.

Ako je NPS na XSP R22 ili XSP R23.

6

Konfigurirajte NPS za korištenje proxyja za provjeru autentičnosti NPS:

  • Priložite tehničku podršku NPS-a

  • Zatražite CI OAuth račun

  • Stvorite CI račun na NPS-u i konfigurirajte timeout tokena za osvježavanje

  • Dodajte ID-ove Android aplikacija

  • Dodajte ID-ove iOS aplikacija

  • Provjerite/postavite URL-ove i vremenska ograničenja veze

  • Dodajte aplikacije na popis dopuštenih AS

  • (Ponovno) Omogućite FCMv1

  • Ponovno pokrenite XSP / ADP

  • Testirajte PN-ove za iOS i Android aplikacije

Uvijek potrebno.

7

Uklonite tipke za stari način FCM.

Za aplikacije koje NPS uspješno podržava na FCMv1.

Ovaj je zadatak obavezan za push obavijesti za UC-One SaaS i Webex aplikacije na iOS platformama.

Prije početka

Ako vaš XSP radi R22, morate primijeniti ap354313 prije nego što možete konfigurirati NPS aplikaciju da koristi HTTP/2 za APNS.

1

Postavite proizvodni URL i parametre veze na XSP_CLI/Applications/NotificationPushServer/APNS/Production>

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

set connectionPoolSize 2

set connectionTimeout 3000

set connectionIdleTimeoutInSeconds 600

Napomena: Nemojte postavljati vremensko ograničenje veze ispod 1000.

2

Dodajte ID-ove aplikacija u kontekst APNS aplikacija, pazeći da izostavite ključ Auth – postavite ga na prazan.

Za UC-One SaaS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.broadsoft.uc-one

Za Webex aplikacija: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

3

Provjerite ključeve za autentifikaciju pomoću XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> get

4

Ako auth ključ nije prazan za com.broadsoft.uc-one, možete ga očistiti sa XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> clear the-authkey

5

Omogući HTTP/2:

XSP_CLI/Applications/NotificationPushServer/APNS/GeneralSettings> set HTTP2Enabled true

6

Samo za UC-One SaaS aplikacije: Prijavite se na portal prodavača i idite na Konfiguracija > BroadWorks > .

7

Pomaknite se prema dolje do odjeljka Notification Push Server i odaberite svoje izdanje (npr Izdanje 22 ), zatim slijedite upute na portalu.

  • Ovaj zadatak se odnosi na NPS na XSP-u. Zanemari ako je vaš NPS na ADP-u.

  • Ovaj postupak možete koristiti za migraciju na FCMv1 obavijesti za UC-One Connect ili UC-One SaaS Android aplikacije.

  • Morate koristiti FCMv1 ako želite koristiti NPS proxy za provjeru autentičnosti push obavijesti za UC-One ili Webex Android aplikacije.

  • Ovaj zadatak priprema NPS za FCMv1 tako da ga možete omogućiti kao dio konfiguracije proxyja za provjeru autentičnosti NPS-a. Nemojte omogućavati FCMv1 dok ne budete spremni konfigurirati proxy za provjeru autentičnosti NPS-a, inače obavijesti SaaS klijentima neće uspjeti.

1

Preuzmite ID projekta s Firebase konzole:

  1. Prijavite se na console.firebase.google.com.

  2. Odaberite projekt aplikacije UC-One (Connect ili SaaS), otvorite njegove postavke projekta.

  3. Otvorite general karticu i zabilježite ID projekta.

2

Preuzmite privatni ključ računa usluge od Firebasea:

  1. Idite na karticu Servisni računi u postavkama projekta.

  2. Ili stvorite novi račun usluge i nabavite njegov privatni ključ.

  3. Ili otvorite postojeći račun usluge i generirajte novi privatni ključ za njega.

    Napomena: Račun račun usluge mora imati firebaseadmin-sdk dopuštenje.

  4. Preuzmite ključ na sigurno mjesto.

3

Kopirajte ključ na XSP na kojem se nalazi vaš NPS.

4

Dodajte ID projekta i povezani privatni ključ u kontekst FCM projekata:

XSP_CLI/Applications/NotificationPushServer/FCM/Projects> add project-id path/to/keyfile

5

Dodajte aplikaciju UC-One (Connect ili SaaS) i pridruženi ID projekta kontekstu FCM aplikacija:

XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add applicationId com.broadsoft.connect projectId project-id

6

Provjerite konfiguraciju za FCM u odnosu na atribute i preporučene vrijednosti prikazane ovdje. Upotrijebi set verzija naredbe za promjenu vrijednosti ako je potrebno:

Pokrenite XSP_CLI/Applications/NotificationPushServer/FCM> get

Parametar

Preporučena vrijednost

authURL

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

pushURL

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

scope

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

tokenTimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

  • Ovaj zadatak se odnosi na NPS na ADP-u. Zanemari ako je vaš NPS na XSP.

  • Ovaj postupak možete koristiti za migraciju na FCMv1 obavijesti za UC-One Connect ili UC-One SaaS Android aplikacije.

  • Morate koristiti FCMv1 ako želite koristiti NPS proxy za provjeru autentičnosti push obavijesti za UC-One ili Webex Android aplikacije.

  • Ovaj zadatak priprema NPS za FCMv1 tako da ga možete omogućiti kao dio konfiguracije proxyja za provjeru autentičnosti NPS-a. Nemojte omogućavati FCMv1 dok ne budete spremni konfigurirati proxy za provjeru autentičnosti NPS-a, inače obavijesti SaaS klijentima neće uspjeti.

1

Preuzmite ID projekta s Firebase konzole:

  1. Prijavite se na console.firebase.google.com.

  2. Odaberite projekt aplikacije UC-One (Connect ili SaaS), otvorite njegove postavke projekta.

  3. Otvorite general karticu i zabilježite ID projekta.

2

Preuzmite privatni ključ računa usluge od Firebasea:

  1. Idite na karticu Servisni računi u postavkama projekta.

  2. Ili stvorite novi račun usluge i nabavite njegov privatni ključ.

  3. Ili otvorite postojeći račun usluge i generirajte novi privatni ključ za njega.

    Napomena: Račun račun usluge mora imati firebaseadmin-sdk dopuštenje.

  4. Preuzmite ključ (.json datoteku) na sigurno mjesto.

3

Uvezite .json datoteku na ADP poslužitelj /bw/install.

4

Prijavite se na ADP CLI i dodajte projekt i API ključ u kontekst FCM projekata:

ADP_CLI/Applications/NotificationPushServer/FCM/Projects> add connect-ucaas /bw/install/filename.json

5

Dodajte aplikaciju i ID projekta kontekstu FCM aplikacija:

ADP_CLI/Applications/NotificationPushServer/FCM/Applications> add applicationId com.broadsoft.ucaas.connect projectId project-id

6

Provjerite svoju konfiguraciju:

ADP_CLI/Applications/NotificationPushServer/FCM/Projects> get
Project ID Accountkey
========================
connect-ucaas ********
ADP_CLI/Applications/NotificationPushServer/FCM/Applications> get
Application ID Project ID
===================================
com.broadsoft.ucaas.connect connect-ucaas

To trebate učiniti (kao dio migracije) samo ako:

  • Vaš NPS se koristi za UC-One SaaS ili BroadWorks Connect Android aplikacije.

  • Već ste testirali da push obavijesti o pozivima drugim aplikacijama rade s FCMv1 API-jem.

Privremeno onemogućujete FCMv1 jer FCMv1 ključevi za ove aplikacije mora samo biti omogućen tijekom procesa konfiguracije proxyja za NPS provjeru autentičnosti.

1

Prijavite se na XSP koji hostira vaš zajednički NPS.

2

Idite na FCM kontekst i onemogućite FCM v1: XSP_CLI/Applications/NotificationPushServer/FCM> set V1enabled false da biste se vratili na korištenje FCM naslijeđenog API ključa.

1

Izradite zahtjev za uslugom sa svojim kontaktom za uključivanje ili s TAC-om kako biste osigurali svoj (Webex Common Identity) OAuth račun klijenta. Naslov svog zahtjev za uslugom NPS konfiguracija za postavljanje proxyja za autentifikaciju .

Cisco vam daje OAuth ID klijenta, tajnu klijenta i token za osvježavanje koji vrijedi 60 dana. Ako token istekne prije nego što ga upotrijebite sa svojim NPS-om, možete podnijeti drugi zahtjev.
2

Izradite račun klijenta na NPS-u:

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> set clientId client-Id-From-Step1

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> set clientSecret
New Password: client-Secret-From-Step1
XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> set RefreshToken
New Password: Refresh-Token-From-Step1

Da biste provjerili da se vrijednosti koje ste unijeli podudaraju s onim što ste dobili, pokrenite XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> get

3

Unesite NPS proxy URL i postavite interval osvježavanja tokena (preporučuje se 30 minuta):

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set url https://nps.uc-one.broadsoft.com/nps/

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set VOIPTokenRefreshInterval 1800

4

(Za obavijesti za Android ) Dodajte ID-ove Android aplikacija u kontekst FCM aplikacija na NPS-u.

Za Webex aplikacija na Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add com.cisco.wx2.android

Za aplikaciju UC-One na Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add com.broadsoft.connect

5

(Za obavijesti Apple iOS -a) Dodajte ID aplikacije u kontekst APNS aplikacija, pazeći da izostavite ključ Auth – postavite ga na prazan.

Za Webex aplikacija na iOS-u: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

Za aplikaciju UC-One na iOS-u: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

6

Konfigurirajte sljedeće NPS URL-ove:

Tablica 2

XSP CLI kontekst

Parametar

Vrijednost

XSP_CLI/Applications/NotificationPushServer/FCM>

authURL

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

pushURL

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

scope

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

XSP_CLI/Applications/NotificationPushServer/APNS/Production>

url

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

7

Konfigurirajte sljedeće parametre NPS veze na prikazane preporučene vrijednosti:

Tablica 3.

XSP CLI kontekst

Parametar

Vrijednost

XSP_CLI/Applications/NotificationPushServer/FCM>

tokenTimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

XSP_CLI/Applications/NotificationPushServer/APNS/Production>

connectionTimeout

3000

connectionPoolSize

2

connectionIdleTimeoutInSeconds

600

8

Provjerite provjerava li aplikacijski poslužitelj ID-ove aplikacija jer ćete možda morati dodati Webex aplikacije na popis dopuštenja:

  1. Pokrenite AS_CLI/System/PushNotification> get i provjerite vrijednost enforceAllowedApplicationList. Ako jest true, morate dovršiti ovaj podzadatak. U suprotnom, preskočite ostatak podzadatka.

  2. AS_CLI/System/PushNotification/AllowedApplications> add com.cisco.wx2.android “Webex Android”

  3. AS_CLI/System/PushNotification/AllowedApplications> add com.cisco.squared “Webex iOS”

1

Ponovno pokrenite XSP:

bwrestart
2

Testirajte obavijesti o pozivima za Android upućivanjem poziva od pretplatnika BroadWorksa klijentu koji poziva na Android. Provjerite pojavljuje li se obavijest o pozivu na Android uređaj.

Napomena: Ako push obavijesti počnu ne uspijevati za UC-One android aplikaciju, moguće je da postoji pogrešna konfiguracija. Ako je to vaša situacija, možete se vratiti na naslijeđeni FCM na sljedeći način:

  1. Onemogući FCMv1: XSP_CLI/Applications/NotificationPushServer/FCM> set V1Enabled false

  2. Ponovno pokrenite XSP: bwrestart

  3. Provjerite svoju konfiguraciju.

  4. Ponovno omogućite FCMv1 i ponovno pokrenite XSP.

  5. Ponovite test.

3

Testirajte obavijesti o pozivima za iOS upućivanjem poziva od pretplatnika BroadWorksa klijentu koji poziva na iOS-u. Provjerite pojavljuje li se obavijest o pozivu na iOS uređaj.

Napomena: Ako push obavijesti počnu neuspjeh za UC-One iOS aplikaciju, moguće je da postoji pogrešna konfiguracija. Ako je to vaša situacija, možete se vratiti na naslijeđeno binarno sučelje sa set HTTP2Enabled false