Преглед на Прокси за удостоверяване на NPS


В тази статия се описва как да конфигурирате споделен NPS да използва прокси сървър за NPS удостоверяване, така че да може да се използва и за пуш известия за удстоверяване в приложението Webex. Ако вашият NPS не поддържа други приложения, можете да следвате опростената процедура в Напътствията за решението Webex за BroadWorks https://help.webex.com/z9gt5j.

Общ преглед на NPS прокси сървър

За съвместимост с Webex за BroadWorks вашата NPS трябва да бъде поправена така, че да поддържа функцията NPS прокси сървър, Пуш сървър за VoIP в UCaaS.

Функцията прилага нов дизайн в сървъра за пуш известия,за да разреши проблема с уязвимост на споделените сертификати за пуш известия за осигуряване на ключове на доставчиците на услуги за мобилни клиенти. Вместо да споделя сертификати за пуш известия и ключове с доставчика на услуги, NPS използва нов API за получаване на краткотраен маркер за пуш известия от поддържащия кра на UCaaS и използва този маркер за удостоверяване с APPLE APN и услугите на Google FCM.

Освен това функцията подобрява възможностите на сървъра за пуш известия да изпраща пуш известия на устроства с Android чрез новия API на Google Firebase Cloud Messaging (FCM) HTTPv1.

Поправките на BroadWorks за функцията са достъпни на Xchange: https://xchange.broadsoft.com/node/1046235

За повече информация вижте Описание на функцията на пуш сървъра за VoIP в UCaaS на Xchange: https://xchange.broadsoft.com/node/1045458

XSP (или ADP на платформата за доставка на приложения), който е домакин на NPS, трябва да отговаря на следните изисквания:

Минимални версии и Ограничения за съвместно пребиваване

  • NPS трябва да се активира на специализиран XSP/ADP и да бъде единственото хоствано приложение на сървъра. Това е необходимо, за да се премахнат смущенията в доставката на известията push.

  • Трябва да има само едно NPS приложение в разгръщането. Ако използвате мобилни UC-One Collaborate/Connect и или UC-One SaaS, и внедрявате Webex за BroadWorks, трябва да споделите този единствен NPS с всички приложения.

  • NPS трябва да бъде от версия R22 или по-нова XSP, или ADP.

    R22/R23 XSP е съвместим със стека R21, ако XSP работи само NPS и AS е R21. SP1. Вижте матрицата за съвместимост на BroadWorks за повече информация.

  • Повече информация за ADP сървъра можете да намерите в https://xchange.broadsoft.com/node/1051580.

Споделяне на NPS

Прочетете тези бележки, преди да конфигурирате споделения си NPS да използва NPS прокси:

  • Ако вашият NPS се използва с други приложения (не само приложението Webex): Не променяйте възможността NPS наследеното от FCM API FCM HTTP v1 API, преди да конфигурирате NPS прокси.

    Можете да направите промяната, докато конфигурирате NPS да използва NPS прокси.

  • Когато сте проверили дали известията работят правилно за по-стари приложения с NPS прокси, можете да премахнете API на FCM на ключа за приложението Android, а APN на ключа за удостоверяване за приложението iOS.

APNs HTTP/2

  • Ако сте разгърнали всички приложения за iOS, които не са от Cisco/BroadSoft, конфигурирайте тези приложения да използват протокола HTTP/2 APNS, преди да конфигурирате NPS да използва NPS прокси сървъра.

  • XSP/ADPs, които вече поддържат приложението Collaborate или SaaS BroadWorks, трябва да бъдат мигрирани към HTTP/2. За подробна информация относно конфигурирането на HTTP/2 вижте HTTP/2 поддръжка на пуш сървър за известия за APNS (мигрирането на NPS за поддръжка на тези приложения на iOS е обобщено в тази статия).

Android FCMv1

  • Ако сте разгърнали всякакви приложения за Android, които не са от Cisco/BroadSoft, конфигурирайте тези приложения да използват клавишите FCMv1, преди да конфигурирате NPS да използва NPS прокси сървъра.

  • Ако XSP/ADP в момента поддържа приложението Connect или UC-One SaaS, тогава FCMv1 ключове не могат да бъдат разрешени, преди да конфигурирате NPS прокси. Препоръчваме ви да мигрирате всички допълнителни приложения към FCMv1 ключове, да активирате и тествате, след което да ги забраните, докато сте готови да завършите инструкциите за настройка (миграционният поток е документиран в тази статия).

Фигура 1. Визуално обобщение на миграцията към NPS прокси сървър за удостоверяване
Таблица 1. Обобщение на задачите за мигриране към NPS прокси

Последователност

Заглавие на задачата

Кога/Защо се изисква задачата?

1

Мигриране на NPS към HTTP/2 за IOS приложения на UC-One SaaS (или Connect) iOS.

Ако NPS поддържа тези приложения и те все още не са конфигурирани за HTTP/2.

2

Мигрирайте NPS към FCMv1 за приложения на Android за UC-One SaaS (или Connect).

Ако NPS поддържа тези приложения, и те все още не са конфигурирани за FCMv1.

3

Разрешете режима FCMv1 и тестови пуш известия.

Ако NPS поддържа UC-One Connect и/или други (не-Cisco) Android приложения.

4

Повторно разрешаване на стар режим FCM.

Ако NPS поддържа UC-One SaaS. Ако оставите разрешен FCMv1, преди да конфигурирате NPS прокси, пуш известията към UC-One SaaS започват да бъдат неуспешни.

5

Инсталиране на поправки в прокси за удостоверяване на NPS

Ако NPS е на XSP R22 или XSP R23.

6

Конфигуриране на NPS да използва прокси сървър за NPS удостоверяване:

  • Прикрепване на техническа поддръжка от NPS

  • Заявяване на CI OAuth акаунт

  • Създаване на CI акаунт на NPS и конфигуриране на изчакване на маркер за удостоверяване

  • Добавяне на идентификатори на приложения за Android

  • Добавяне на идентификатори за приложения на iOS

  • Проверка/Задаване на URL адреси и изтичане на времето за изчакване на връзката

  • Добавяне на приложения към списъка с разрешените за AS .

  • (Повторно) активиране на FCMv1

  • Рестартиране на XSP / ADP

  • Тестване на PNs за приложения за iOS и Android

Винаги се изисква.

7

Премахване на клавишите за стар режим на FCM.

За приложения, които се поддържат успешно от NPS на FCMv1.

Тази задача е задължителна за пуш известия до UC-One SaaS и Webex приложения на iOS платформи.

Преди да започнете

Ако вашият XSP изпълнява R22, трябва да приложите ap354313, преди да можете да конфигурирате NPS приложението да използва HTTP/2 за APNS.

1

Задате производствения URL и параметрите на връзката в XSP_CLI/Applications/NotificationPushServer/APNS/Production>

задайте url https://api.push.apple.com/3/device

задате connectionPoolSize 2

задаване на Timeout 3000 на връзката

задаване на connectionIdleTimeoutInSeconds 600

Забележка: Не задавайте времето за изчакване на връзката под 1000.

2

Добавете идентификаторите на приложението в контекста на APNS приложенията, като се уверите, че пропускате ключа Auth – задайте го да се изпразни.

За UC-One SaaS:XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> добавете com.broadsoft.uc-one

За приложение Webex : XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> добавете com.cisco.squared

3

Проверете клавишите за удостоверяване с XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> get

4

Ако ключът за удостоверяване не е изпразнен за com.broadsoft.uc-one, можете да го изчистите с XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> clear the-authkey

5

Активиране на HTTP/2:

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

6

Само за прпиложения UC-One SaaS : Влезте в портала за дилъри и отворете Конфигурация > BroadWorks > .

7

Превъртете надолу до раздела „Пуш сървър за удостоверяване“ и изберете вашето издание (напр. Издание 22 ), след което следвайте инструкциите, предоставени в портала.

  • Тази задача се отнася за NPS на XSP. Игнорирайте го, ако вашият NPS е на ADP.

  • Можете да използвате тази процедура за мигриране към FCMv1 известия за приложения за Android на UC-One Connect или UC-One SaaS .

  • Трябва да използвате FCMv1, ако искате да използвате NPS прокси за удостоверяване на пуш известия за UC-One или приложенията на Webex Android.

  • Тази задача подготвя NPS за FCMv1, така че да можете да го разрешите като част от конфигурацията на NPS прокси за удостоверяване. Не разрешавайте FCMv1, докато не сте готови да конфигурирате NPS прокси за удостоверяване или известията до SaaS клиентите ще бъдат неуспешни.

1

Получаване на ИД на проекта от конзолата на Firebase:

  1. влезете в console.firebase.google.com.

  2. Изберете проекта на приложението UC-One (Свързване или SaaS), отворете настройките на проекта му.

  3. Отворете раздела Общи и запишете ИД на проекта.

2

Вземете частен ключ на личния си акаунт от Firebase:

  1. Придвижете се до раздела със сервизни акаунти в настройките на проекта.

  2. Или създайте нов сервизен акаунт и вземете неговия частен ключ.

  3. Или отворете съществуващ сервизен акаунт и генерирайте нов частен ключ за него.

    Забележка: Акаунтът на услугата трябва да има разрешение firebaseadmin-sdk.

  4. Изтеглете ключа на сигурно място.

3

Копирайте ключа в XSP, който хоства вашия NPS.

4

Добавете ИД на проекта и свързания частен ключ към контекста на проектите FCM:

XSP_CLI/Applications/NotificationPushServer/FCM/Projects> добавете project-id path/to/keyfile

5

Добавете приложението UC-One (Connect или SaaS) и свързния ИД на проект към тонтекста на приложенията FCM:

XSP_CLI/Applications/NotificationPushServer/FCM/Applications> добавете ид на приложението com.broadsoft.connect projectId project-id

6

Проверете конфигурацията за FCM спрямо атрибутите и препоръчителните стойности, показани тук. Използвайте версията на командата set, за да промените стоностите, ако е необходимо

Изпълнете XSP_CLI/Приложения/NotificationPushServer/FCM> получите

Parameter

Препоръчвана стойност

authURL

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

pushURL

https://fcm.googleapis.com/v1/projects/ PROJECT-ID /съобщения:изпрати

диапазон

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

маркер TimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

  • Тази задача се отнася за NPS на ADP. Игнорирайте го, ако вашият NPS е на XSP.

  • Можете да използвате тази процедура за мигриране към FCMv1 известия за приложения за Android на UC-One Connect или UC-One SaaS .

  • Трябва да използвате FCMv1, ако искате да използвате NPS прокси за удостоверяване на пуш известия за UC-One или приложенията на Webex Android.

  • Тази задача подготвя NPS за FCMv1, така че да можете да го разрешите като част от конфигурацията на NPS прокси за удостоверяване. Не разрешавайте FCMv1, докато не сте готови да конфигурирате NPS прокси за удостоверяване или известията до SaaS клиентите ще бъдат неуспешни.

1

Получаване на ИД на проекта от конзолата на Firebase:

  1. влезете в console.firebase.google.com.

  2. Изберете проекта на приложението UC-One (Свързване или SaaS), отворете настройките на проекта му.

  3. Отворете раздела Общи и запишете ИД на проекта.

2

Вземете поверителния ключ на личния си акаунт от Firebase:

  1. Придвижете се до раздела със сервизни акаунти в настройките на проекта.

  2. или създате нов сервизен акаунт и вземене неговия частен ключ.

  3. Или отворете съществуващ сервизен акаунт и генерирайте нов частен ключ за него.

    Забележка: Акаунтът на услугата трябва да има разрешение firebaseadmin-sdk.

  4. Изтеглете ключа (.json файл) на защитено място.

3

Импортирайте.json file на ADP сървъра /bw/install.

4

Влезте в ADP CLI и добавете проекта и API ключа към контекста на fCM проектите:

ADP_CLI/Applications/NotificationPushServer/FCM/Projects> добавете connect-ucaas /bw/install/filename.json

5

Добавете приложението и ИД на проекта в контекста на приложенията на FCM:

ADP_CLI/Applications/NotificationPushServer/FCM/Applications> добавете ид на приложението ;com.broadsoft.ucaas.connect projectId project-id

6

Проверете конфигурацията си:

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

Трябва да направите това (като част от мигрирането), само ако:

  • Вашият NPS се използва за приложения за Android UC-One SaaS или BroadWorks Connect.

  • Вече тествахте дали пуш известията за повикване към други приложения работат с FCMv1 API.

Временно сте забранили FCMv1, защото FCMv1 ключовете за тези приложения трябва да са активирани само по време на процеса на конфигуриране на прокси сървъра за удостоверяване на NPS.

1

Влезте в XSP хостинга на вашия споделен NPS.

2

Придвижете се до хостинга на FCM и деактивирайте FCM v1: XSP_CLI/Applications/NotificationPushServer/FCM> set V1enabled false за да се върнете към използване на стария API ключ на FCM.

Инсталирайте следните лепенки, за да поддържате nPS удостоверяване прокси функцията:

Поправки за R22

Поправки за R23

1

Създайте заявка за обслужване с контакта си за включване или са TAC, за да обезпечите своя акаунт на клиент AAuth (Webex Common Identity) . Озаглавете заявката си за обслужване NPS конфигурация за настройка на прокси за удостоверяване.

Cisco предоставя ИД на клиент на OAuth , клиентска тайна и маркер за опресняване, който е валиден 60 дни. Ако маркерът изтече, преди да го използвате с вашия NPS, можете да изпратите друга заявка.
2

Създаване на клиентския акаунт на NPS:

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

За да потвърдите дали въведените от вас сотйности съвадат с онова, което сте получили, изпълнете XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> get

3

Въведете URL на NPS прокси сървъра и задайте интервала за опресняване на маркера (препоръчваната стойност е 30 минути):

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

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set VOIPTokenRefreshInterval 1800

4

(За известия за Android) Добавете ИД на приложението за Android към контекста на приложенията на FCM на NPS.

За приложение на Webex на Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> добавете ид на приложението com.cisco.wx2.android

За UC-Едно приложение на Android: XSP_CLI / Приложения / УведомлениеPushServer / FCM / Приложения> добавете приложениеId com.broadsoft.connect

5

(За известия на Apple iOS) Добавете ИД на приложението в контекста на приложенията APNS, като се уверите, че пропускате ключа за удостоверяване – задайте го да се изпразни.

За приложение Webex на iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> добавете com.cisco.squared

За приложение UC-One на iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> добавете com.cisco.squared

6

Конфигурирайте следните URL адреси на NPS:

Таблица 2.

XSP CLI контекст

Parameter

Стойност

XSP_CLI/Applications/NotificationPushServer/FCM>

authURL

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

pushURL

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

диапазон

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

XSP_CLI/Приложения/УведомлениеPushServer/APNS/Производство>

URL адрес

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

7

Конфигурирайте следните параметри на NPS връзката към показаните препоръчителни стойности:

Таблица 3.

XSP CLI контекст

Parameter

Стойност

XSP_CLI/Applications/NotificationPushServer/FCM>

маркер TimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

XSP_CLI/Приложения/УведомлениеPushServer/APNS/Производство>

connectionTimeout

3000

connectionPoolSize

2

connectionIdleTimeoutInSeconds

600

8

Проверете дали сървърът за приложени филтрира ИД на приложенията, тъ като е възможно да бъде необходимо да добавяте приложения Webex към списъка с разрешения:

  1. Изпълнете AS_CLI/System/PushNotification> get и проверете стоността на enforceAllowedApplicationList. Ако е вярно , трябва да изпълните тази под задача. В противен случай пропуснете останалата част от под задачата.

  2. AS_CLI/System/PushNotification/AllowedApplications> добавете com.cisco.wx2.android “Webex Android”

  3. AS_CLI/System/PushNotification/AllowedApplications> добавете com.cisco.squared “Webex iOS”

1

Рестартиране на XSP:

bwrestart
2

Тествайте известията за повикване към Android като направите повикване от абонат на BroadWorks до повикващия клиент на Android. Проверете дали известието за повикване се появява на устройството с Android.

Забележка: Ако пуш известията са неуспешни за приложението за Android UC-One, възможно е да има грешка в конфигурацията. Ако това е вашата ситуация, можете да се върнете към стария FCM, както следва:

  1. Деактивирайте FCMv1: XSP_CLI/Applications/NotificationPushServer/FCM> set V1Enabled false

  2. Стартирайте отново XSP: bwrestart

  3. Проверете конфигурацията си.

  4. Активирайте отново FCMv1 и рестартирайте XSP.

  5. Повторете теста.

3

Тествайте известията за повикване до iOS, като направите повикване от абонат на BroadWorks до повикващия клиент на iOS. Проверете дали известието за повикване се появява на устройството с iOS.

Забележка: Ако пуш известията започнат да са неуспешни за приложението на UC-One за iOS, е възможно да има грешка в конфигурацията. Ако това е вашата ситуация, можете да се върнете към стария двоичен интерфейс със set HTTP2Enabled false