Pregled proxyja za NPS provjeru autentičnosti


U ovom se članku opisuje kako konfigurirati zajednički NPS za korištenje proxyja za NPS provjeru autentičnosti, tako da se može koristiti i za prosljeđivanje obavijesti o pozivima u Webex aplikacije. Ako vaš NPS ne podržava druge aplikacije, možete slijediti pojednostavljeni postupak u Vodiču https://help.webex.com/z9gt5jza rješenja Webex za BroadWorks .

Pregled NPS proxyja

Za kompatibilnost s Webexom za BroadWorks, vaš NPS mora biti zakrpan kako bi podržavao značajku NPS proxyja, Push Server for VoIP u UCaaS-u.

Značajka implementira novi dizajn u Push Server obavijesti kako bi se riješila sigurnosna ranjivost dijeljenja privatnih ključeva s certifikatom push obavijesti s davateljima usluga za mobilne klijente. Umjesto dijeljenja certifikata i ključeva s push obavijestima s davateljem usluga, NPS koristi novi API za dobivanje kratkotrajnog tokena za push obavijesti iz UCaaS pozadinskog sustava i koristi ovaj token za provjeru autentičnosti s Apple APN-ovima i Google FCM uslugama.

Značajka također poboljšava mogućnost push poslužitelja obavijesti za slanje obavijesti na Android uređaje putem novog HTTPv1 API-ja za razmjenu poruka u oblaku Google Firebase (FCM).

XSP (ili Platforma za isporuku aplikacija ADP) u kojoj se nalazi NPS mora ispunjavati sljedeće zahtjeve:

Minimalne verzije i ograničenja boravka

  • NPS se mora aktivirati na namjenskom XSP/ADP-u, a NPS mora biti jedina hostirana aplikacija na poslužitelju. Time se uklanjaju smetnje u isporuci Push obavijesti.

  • U implementaciji bi trebala postojati samo jedna NPS aplikacija. Ako koristite mobilni UC-One Collaborate/Connect 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 kompatibilan je s R21 stogom ako XSP pokreće samo NPS, a AS je R21. SP1. Dodatne informacije potražite u matrici kompatibilnosti sa širokim radom.

  • Više informacija o ADP serveru možete pronaći na . https://xchange.broadsoft.com/node/1051580

Zajednički NPS

Pročitajte ove bilješke prije konfiguriranja zajedničkog NPS-a za korištenje NPS proxyja:

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

  • Nakon što potvrdite da obavijesti ispravno funkcioniraju za starije aplikacije s NPS proxyjem, uklonite ključ FCM API-ja za aplikaciju Android i tipku APN-ova za aplikaciju iOS.

APN-ovi HTTP/2

  • Ako ste implementirali bilo koju iOS aplikaciju koja nije iz Cisco/BroadSofta, 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. Detaljne informacije o konfiguriranju HTTP/2 potražite u članku HTTP/2 Support to Notification Push Server za APNS (migracija NPS-a radi podrške tim iOS aplikacijama sažeta je u ovom članku).

Android FCMv1

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

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

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

Slijed

Naslov zadatka

Kada/zašto je zadatak obavezan?

1

Migrirajte 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

Migrirajte 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-Cisco) Android aplikacije.

4

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

Ako NPS podržava UC-One SaaS. Ako ostavite FCMv1 omogućenim, prije konfiguriranja NPS proxyja, proslijeđene obavijesti na UC-One SaaS počinju propadati.

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 NPS provjeru autentičnosti:

  • Priložite techsupport iz NPS-a

  • Zatražite CI OAuth račun

  • Stvaranje CI računa na NPS-u i konfiguriranje vremenskog ograničenja tokena za osvježavanje

  • Dodavanje ID-ova aplikacija za Android

  • Dodavanje ID-ova aplikacija za iOS

  • Provjera/postavljanje URL-ova i prekoračenja vremena veze

  • Dodavanje aplikacija na popis dopuštenih za AS

  • (Ponovno) Omogući FCMv1

  • Ponovno pokreni XSP / ADP

  • Testiranje PIN-ova za aplikacije za iOS i Android

Uvijek potrebno.

7

Uklonite tipke FCM naslijeđenog načina rada.

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

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

Prije nego što počnete

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

1

Postavite proizvodni URL i parametre povezivanja 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: Ne postavljajte vremensko ograničenje veze ispod 1000.

2

Dodajte ID-ove aplikacije u kontekst APNS aplikacija, pazeći da izostavite tipku Auth – postavite ga na prazno.

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

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

3

Provjerite auth tipke 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 pomoću 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 Configuration > BroadWorks > .

7

Pomaknite se prema dolje do odjeljka Push Server obavijesti i odaberite izdanje (npr. izdanje 22), a zatim slijedite upute navedene na portalu.

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

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

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

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

1

Nabavite ID projekta s Firebase konzole:

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

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

  3. Otvorite karticu Općenito i zabilježite ID projekta.

2

Nabavite privatni ključ svog servisnog računa iz Firebasea:

  1. Idite na karticu Računi servisa 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 servisa mora imati dozvolu firebaseadmin-sdk .

  4. Preuzmite ključ na sigurno mjesto.

3

Kopirajte ključ na XSP hosting vaš NPS.

4

Dodajte ID projekta i pridruženi 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 u kontekst FCM aplikacija:

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

6

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

Pokreni 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 se zadatak odnosi na NPS na ADP-u. Zanemarite ga ako je vaš NPS na XSP-u.

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

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

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

1

Nabavite ID projekta s Firebase konzole:

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

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

  3. Otvorite karticu Općenito i zabilježite ID projekta.

2

Nabavite privatni ključ svog servisnog računa iz Firebasea:

  1. Idite na karticu Računi servisa 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 servisa mora imati dozvolu firebaseadmin-sdk .

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

3

Uvoz .json datoteke na ADP poslužitelj /bw/install.

4

Prijavite se na ADP CLI i dodajte ključ projekta i API-ja u kontekst FCM projekata:

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

5

Dodajte aplikaciju i ID projekta u kontekst FCM aplikacija:

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

6

Provjerite 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 koristi se za UC-One SaaS ili BroadWorks Connect Android aplikacije.

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

Privremeno onemogućujete FCMv1 jer ključevi FCMv1 za te aplikacije moraju biti omogućeni samo tijekom postupka konfiguracije proxyja za NPS provjeru autentičnosti.

1

Prijavite se na XSP hosting vaš zajednički NPS.

2

Idite na kontekst FCM-a 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

Stvorite zahtjev za uslugom sa svojim kontaktom za uključivanje ili pomoću TAC-a da biste dodijelili svoj (Webex Common Identity) OAuth klijentski račun. Naslovnite NPS konfiguraciju zahtjeva za uslugu za postavljanje proxy poslužiteljaAuth.

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

Stvorite klijentski račun 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 podudaranje vrijednosti koje ste unijeli s onima koje ste dobili, pokrenite XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> get

3

Unesite URL proxy poslužitelja NPS i postavite interval osvježavanja tokena (preporučeno je 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 o Androidu) Dodajte ID-ove Android aplikacija u kontekst FCM aplikacija na NPS-u.

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

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

5

(Za Obavijesti o sustavu Apple iOS) Dodajte ID aplikacije u kontekst APNS aplikacija, pazeći da izostavite tipku Auth - postavite ga na prazno.

Za aplikaciju Webex 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 s preporučenim prikazanim vrijednostima:

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 prikazuje li aplikacijski poslužitelj ID-ove aplikacija jer ćete možda morati dodati webex aplikacije na popis dopuštenih:

  1. Pokreni AS_CLI/System/PushNotification> get i provjeriti vrijednost enforceAllowedApplicationList. Ako jest. true, morate dovršiti ovaj pod zadatak. U suprotnom preskočite ostatak pot zadatka.

  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 na Android upućivanjem poziva od pretplatnika BroadWorksa na klijent koji poziva na Androidu. Provjerite prikazuje li se obavijest o pozivu na uređaju sa sustavom Android.

Napomena: Ako push obavijesti počnu propadati 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 pokreni XSP: bwrestart

  3. Provjerite konfiguraciju.

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

  5. Ponovite test.

3

Testirajte obavijesti o pozivima na iOS upućivanjem poziva od pretplatnika BroadWorksa na klijent pozivanje na iOS-u. Provjerite prikazuje li se obavijest o pozivu na uređaju sa sustavom iOS.

Napomena: Ako push obavijesti počnu propadati 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 s set HTTP2Enabled false