NPS Kimlik Doğrulama Proxy'sine Genel Bakış


Bu makalede, paylaşılan bir NPS kimlik doğrulama proxy'sinin Webex uygulamalarına çağrı bildirimlerini göndermek için de kullanılabilmesi için nasıl yapılandırılacağı anlatılmaktadır. NPS'niz diğer uygulamaları desteklemiyorsa BroadWorks Webex Kılavuzu https://help.webex.com/z9gt5j'ndaki basitleştirilmiş prosedürü izleyebilirsiniz.

NPS Proxy'sine Genel Bakış

BroadWorks için Webex ile uyumluluk için NPS'nizin UCaaS'de VoIP için Gönderme Sunucusu olan NPS Proxy özelliğini destekleyecek şekilde yaması gerekir.

Bu özellik, anlık bildirim sertifikası özel anahtarlarının mobil istemciler için hizmet sağlayıcılarıyla paylaşılmasının güvenlik açığını çözmek için Bildirim Gönderme Sunucusu'nda yeni bir tasarım uygular. Anında iletme bildirimi sertifikalarını ve anahtarlarını hizmet sağlayıcısı ile paylaşmak yerine, NPS, UCaaS arka ucundan kısa süreli bir anında iletme bildirimi belirteci almak için yeni bir API kullanır ve Apple APN'ler ve Google FCM hizmetleriyle kimlik doğrulaması için bu belirteci kullanır.

Bu özellik ayrıca, Bildirim Gönderme Sunucusunun yeni Google Firebase Cloud Messaging (FCM) HTTPv1 API'si aracılığıyla Android cihazlara anında iletme bildirimleri gönderme özelliğini de geliştirir.

NPS'yi barındıran XSP (veya Uygulama Teslimat Platformu ADP), aşağıdaki gereksinimleri karşılamalıdır:

Minimum Sürümler ve Ortak Oturma Kısıtlamaları

  • NPS, özel bir XSP/ADP üzerinde etkinleştirilmelidir ve sunucuda barındırılan tek uygulama NPS olmalıdır. Bu, anında iletme bildirimlerinin gönderilmesine olan müdahaleyi ortadan kaldırmaktır.

  • Bir dağıtımda yalnızca bir NPS uygulaması olmalıdır. Mobil UC-One Collaborate/Connect ve/veya UC-One SaaS kullanıyorsanız ve BroadWorks için Webex uyguluyorsanız bu tek NPS'yi tüm uygulamalar için paylaşmanız gerekir.

  • NPS, sürüm R22 veya üstü XSP veya ADP'de olmalıdır.

    R22/R23 XSP, XSP'nin yalnızca NPS çalıştırması ve AS'nin R21.SP1 olması durumunda R21 yığını ile uyumludur. Daha fazla bilgi için bkz. BroadWorks Uyumluluk Matrisi.

  • ADP sunucusuyla ilgili daha fazla bilgi https://xchange.broadsoft.com/node/1051580 adresinde bulunabilir.

Paylaşılan NPS

Paylaşılan NPS'nizi NPS Proxy'sini kullanacak şekilde yapılandırmadan önce bu notları okuyun:

  • NPS'niz diğer uygulamalarla kullanılıyorsa (yalnızca Webex uygulaması değil): Önce NPS proxy'sini yapılandırın, ardından NPS'yi FCM eski API'sini kullanarak FCM HTTP v1 API'sini kullanmaya dönüştürün.

  • NPS proxy'si ile eski uygulamalar için bildirimlerin düzgün çalıştığını doğruladıktan sonra, Android uygulaması için FCM API anahtarını ve iOS uygulaması için APNs kimlik doğrulama anahtarını kaldırın.

APN'leri HTTP/2

  • Cisco/BroadSoft'un sunmadığı herhangi bir iOS uygulaması dağıttıysanız NPS'yi NPS proxy'sini kullanacak şekilde yapılandırmadan önce bu uygulamaları HTTP/2 APNS protokolünü kullanacak şekilde yapılandırın.

  • Halihazırda Collaborate veya SaaS BroadWorks uygulamasını destekleyen XSP/ADP'lerin HTTP/2'ye taşınması gerekir. HTTP/2'nin yapılandırılması hakkında ayrıntılı bilgi için bkz. APNS için HTTP/2 Bildirim Gönderme Sunucusuna Destek (NPS'nin bu iOS uygulamalarını desteklemesi için taşınması bu makalede özetlenmiştir).

Android FCMv1'ın

  • Cisco/BroadSoft'un sunmadığı herhangi bir Android uygulaması dağıttıysanız NPS'yi NPS proxy'sini kullanacak şekilde yapılandırmadan önce bu uygulamaları FCMv1 anahtarlarını kullanacak şekilde yapılandırın.

  • XSP/ADP şu anda Connect veya UC-One SaaS uygulamasını destekliyorsa NPS proxy'sini yapılandırdıktan sonra FCMv1 anahtarlarını etkinleştirin. Tüm ek uygulamaları FCMv1 anahtarlarına taşımanızı, etkinleştirmenizi ve test etmenizi, ardından kurulum talimatlarını (geçiş akışı bu makalede belgelenmiştir) tamamlamaya hazır olana kadar devre dışı bırakmanızı öneririz.

Şekil 1. NPS Kimlik Doğrulama Proxy'sine Geçişin Görsel Özeti
Tablo 1. NPS Proxy'sine Geçiş Görevlerinin Özeti

Sıra

Görev Başlığı

Görev Ne Zaman/Neden Gereklidir?

1

UC-One SaaS (veya Connect) iOS uygulamaları için NPS'yi HTTP/2'ye geçirin.

NPS bu uygulamaları destekliyorsa ve henüz HTTP/2 için yapılandırmamışsa.

2

UC-One SaaS (veya Connect) Android uygulamaları için NPS'yi FCMv1'e geçirin.

NPS bu uygulamaları destekliyorsa ve henüz FCMv1 için yapılandırmamışsa.

3

FCMv1 modunu etkinleştirin ve anında iletme bildirimlerini test edin.

NPS, UC-One Connect ve/veya diğer (Cisco olmayan) Android uygulamalarını destekliyorsa.

4

FCM eski modunu yeniden etkinleştirin.

NPS, UC-One SaaS'ı destekliyorsa. NPS proxy'sini yapılandırmadan önce FCMv1'i etkin bırakırsanız UC-One SaaS'a gönderilen anında iletme bildirimleri başarısız olmaya başlar.

5

NPS kimlik doğrulama proxy yamalarını yükleyin.

NPS XSP R22 veya XSP R23 üzerindeyse.

6

NPS'yi NPS kimlik doğrulama proxy'sini kullanacak şekilde yapılandırın:

  • NPS'den teknik desteği ekleme

  • CI OAuth hesabı isteme

  • NPS'de CI hesabı oluşturun ve yenileme belirteci zaman aşımını yapılandırın

  • Android uygulama kimliklerini ekle

  • iOS uygulama kimliklerini ekle

  • URL'leri ve bağlantı zaman aşımlarını kontrol etme/ayarlama

  • Uygulamaları AS izin verilenler listesine ekle

  • FCMv1'i (Yeniden) Etkinleştirme

  • XSP / ADP'yi yeniden başlatma

  • iOS ve Android uygulamaları için PN'leri test et

Her zaman gerekli.

7

FCM eski mod tuşlarını kaldırın.

FCMv1'de NPS tarafından başarıyla desteklenen uygulamalar için.

Bu görev, iOS platformlarındaki UC-One SaaS ve Webex uygulamalarına yönelik anında iletme bildirimleri için zorunludur.

Başlamadan önce

XSP'niz R22 çalıştırıyorsa NPS uygulamasını APNS için HTTP/2 kullanacak şekilde yapılandırmadan önce ap354313'ü uygulamanız gerekir.

1

Üretim URL'sini ve bağlantı parametrelerini şuradan ayarlayın: XSP_CLI/Applications/NotificationPushServer/APNS/Production>

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

set connectionPoolSize 2

set connectionTimeout 3000

set connectionIdleTimeoutInSeconds 600

Not: Bağlantı zaman aşımını 1000’in altına ayarlamayın.

2

Kimlik Doğrulama anahtarını atlayıp boş olarak ayarladığınızdan emin olmak için uygulama kimliklerini APNS uygulamaları bağlamına ekleyin.

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

Webex uygulaması için: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

3

Kimlik doğrulama anahtarlarını şununla kontrol edin: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> get

4

Eğer kimlik doğrulama anahtarı şunun için boş değilse: com.broadsoft.uc-one, ile temizleyebilirsiniz XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> clear the-authkey

5

HTTP/2’yi etkinleştirin:

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

6

Yalnızca UC-One SaaS uygulamaları için: Satıcı portalında oturum açın ve adresine gidin Yapılandırma > BroadWorks > .

7

Bildirim Gönderme Sunucusu bölümüne gidin ve sürümünüzü (örn. Sürüm 22) seçin, ardından portalda verilen talimatları izleyin.

  • Bu görev XSP üzerindeki NPS için geçerlidir. NPS'niz ADP üzerindeyse yoksayın.

  • UC-One Connect veya UC-One SaaS Android uygulamalarına yönelik FCMv1 bildirimlerine geçiş yapmak için bu prosedürü kullanabilirsiniz.

  • UC-One veya Webex Android uygulamalarına gönderilen anında iletme bildirimlerinin kimliğini doğrulamak için NPS proxy'sini kullanmak istiyorsanız FCMv1'i kullanmanız gerekir.

  • Bu görev, NPS'yi FCMv1 için hazırlar ve böylece NPS kimlik doğrulama proxy'sinin yapılandırılmasının bir parçası olarak etkinleştirebilirsiniz. NPS kimlik doğrulama proxy'sini yapılandırmaya hazır olana kadar FCMv1'i etkinleştirmeyin; aksi takdirde SaaS istemcilerine yönelik bildirimler başarısız olur.

1

Firebase konsolundan proje kimliğini alma:

  1. console.firebase.google.com’da oturum açın.

  2. UC-One (Connect veya SaaS) uygulama projesini seçin, proje ayarlarını açın.

  3. Genel sekmesini açın ve proje kimliğini kaydedin.

2

Firebase'den hizmet hesabınızın özel anahtarını alın:

  1. Proje ayarlarında Hizmet hesapları sekmesine gidin.

  2. Yeni bir hizmet hesabı oluşturun ve hizmetin özel anahtarını alın.

  3. Alternatif olarak mevcut bir hizmet hesabını açın ve bu hesap için yeni bir özel anahtar oluşturun.

    Not: Hizmet hesabına firebaseadmin-sdk izni olmalıdır.

  4. Anahtarı güvenli bir konuma indirin.

3

Anahtarı, NPS'nizi barındıran XSP'ye kopyalayın.

4

Proje kimliğini ve ilişkili özel anahtarı FCM projeleri bağlamına ekleyin:

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

5

UC-One (Connect veya SaaS) uygulamasını ve ilişkili proje kimliğini FCM uygulamaları bağlamına ekleyin:

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

6

FCM yapılandırmasını, burada gösterilen öznitelikler ve önerilen değerlerle karşılaştırarak kontrol edin. Kullan set gerekirse değerleri değiştirmek için komutun sürümü:

Çalıştır XSP_CLI/Applications/NotificationPushServer/FCM> get

Parametre

Önerilen Değer

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 IZLEME

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

  • Bu görev ADP üzerindeki NPS için geçerlidir. NPS'niz XSP üzerindeyse yoksayın.

  • UC-One Connect veya UC-One SaaS Android uygulamalarına yönelik FCMv1 bildirimlerine geçiş yapmak için bu prosedürü kullanabilirsiniz.

  • UC-One veya Webex Android uygulamalarına gönderilen anında iletme bildirimlerinin kimliğini doğrulamak için NPS proxy'sini kullanmak istiyorsanız FCMv1'i kullanmanız gerekir.

  • Bu görev, NPS'yi FCMv1 için hazırlar ve böylece NPS kimlik doğrulama proxy'sinin yapılandırılmasının bir parçası olarak etkinleştirebilirsiniz. NPS kimlik doğrulama proxy'sini yapılandırmaya hazır olana kadar FCMv1'i etkinleştirmeyin; aksi takdirde SaaS istemcilerine yönelik bildirimler başarısız olur.

1

Firebase konsolundan proje kimliğini alma:

  1. console.firebase.google.com’da oturum açın.

  2. UC-One (Connect veya SaaS) uygulama projesini seçin, proje ayarlarını açın.

  3. Genel sekmesini açın ve proje kimliğini kaydedin.

2

Firebase'den hizmet hesabınızın özel anahtarını alın:

  1. Proje ayarlarında Hizmet hesapları sekmesine gidin.

  2. Yeni bir hizmet hesabı oluşturun ve hizmetin özel anahtarını alın.

  3. Alternatif olarak mevcut bir hizmet hesabını açın ve bu hesap için yeni bir özel anahtar oluşturun.

    Not: Hizmet hesabına firebaseadmin-sdk izni olmalıdır.

  4. Anahtarı (.json dosyası) güvenli bir konuma indirin.

3

.json dosyasını ADP sunucusuna içe aktarın /bw/install.

4

ADP CLI’da oturum açın ve proje ve API anahtarını FCM projeleri bağlamına ekleyin:

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

5

Uygulama ve proje kimliğini FCM uygulamaları bağlamına ekleyin:

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

6

Yapılandırmanızı doğrulayın:

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

Bunu yalnızca aşağıdaki koşullarda yapmanız gerekebilir (geçiş kapsamında):

  • NPS'niz, UC-One SaaS veya BroadWorks Connect Android uygulamaları için kullanılır.

  • Diğer uygulamalara çağrı anında iletme bildirimlerinin FCMv1 API’si ile çalıştığını zaten test ettiniz.

Bu uygulamalara yönelik FCMv1 anahtarlarının yalnızca NPS kimlik doğrulama proxy'si yapılandırma sürecinde etkinleştirilmesi gerektiği için FCMv1'i geçici olarak devre dışı bırakıyorsunuz.

1

Paylaşılan NPS'nizi barındıran XSP'de oturum açın.

2

FCM bağlamına gidin ve FCM v1'i devre dışı bırakın: XSP_CLI/Applications/NotificationPushServer/FCM> set V1enabled false FCM eski API anahtarını kullanmaya geri dönün.

1

(Webex Common Identity) OAuth müşteri hesabınızı sağlamak için ekleme kişiniz veya TAC ile bir hizmet isteği oluşturun. Kimlik Doğrulama Proxy Kurulumu için hizmet isteğinizin NPS Yapılandırmasını başlığa koyun.

Cisco size bir OAuth istemci kimliği, istemci gizli anahtarı ve 60 gün geçerli olan bir yenileme belirteci verir. Belirteci NPS ile kullanmadan önce geçerse başka bir istek gönderebilirsiniz.
2

NPS'de istemci hesabı oluşturun:

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

Girdiğiniz değerlerin size verilen değerlerle eşleştiğini doğrulamak için şunu çalıştırın: XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client> get

3

NPS Proxy URL'sini girin ve belirteç yenileme aralığını ayarlayın (önerilen 30 dakika):

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

XSP_CLI/Applications/NotificationPushServer/CloudNPSService> set VOIPTokenRefreshInterval 1800

4

(Android bildirimleri için) Android uygulama kimliklerini NPS'deki FCM uygulamaları bağlamına ekleyin.

Android üzerindeki Webex uygulaması için: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add com.cisco.wx2.android

Android üzerindeki UC-One uygulaması için: XSP_CLI/Applications/NotificationPushServer/FCM/Applications> add com.broadsoft.connect

5

(Apple iOS bildirimleri için) Kimlik doğrulama anahtarını atlayıp boş olarak ayarladığınızdan emin olarak uygulama kimliğini APNS uygulamaları bağlamına ekleyin.

iOS üzerindeki Webex uygulaması için: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

iOS üzerindeki UC-One uygulaması için: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens> add com.cisco.squared

6

Aşağıdaki NPS URL'lerini yapılandırın:

Tablo 2.

XSP CLI Bağlamı

Parametre

Değer

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

Aşağıdaki NPS bağlantı parametrelerini gösterilen önerilen değerlere yapılandırın:

Tablo 3.

XSP CLI Bağlamı

Parametre

Değer

XSP_CLI/Applications/NotificationPushServer/FCM>

tokenTimeToLiveInSeconds

3600 IZLEME

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

XSP_CLI/Applications/NotificationPushServer/APNS/Production>

connectionTimeout

3000

connectionPoolSize

2

connectionIdleTimeoutInSeconds

600

8

Uygulama Sunucusunun uygulama kimliklerini tarayıp taramadığını kontrol edin, çünkü Webex uygulamalarını izin verilenler listesine eklemeniz gerekebilir:

  1. Çalıştır AS_CLI/System/PushNotification> get ve değerini kontrol edin: enforceAllowedApplicationList. Eğer öyleyse true, bu alt görevi tamamlamanız gerekir. Aksi takdirde alt görevin geri kalanını atlayın.

  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

XSP'yi yeniden başlatın:

bwrestart
2

BroadWorks abonesinden Android'de arayan istemciye çağrı yaparak Android'e yapılan çağrı bildirimlerini test edin. Android cihazda çağrı bildiriminin göründüğünü doğrulayın.

Not: UC-One Android uygulaması için anında iletme bildirimleri başarısız olursa yanlış bir yapılandırmanın olması mümkündür. Bu durumda, aşağıdaki gibi eski FCM'ye dönebilirsiniz:

  1. FCMv1’i Devre Dışı Bırak: XSP_CLI/Applications/NotificationPushServer/FCM> set V1Enabled false

  2. XSP'yi yeniden başlat: bwrestart

  3. Yapılandırmanızı kontrol edin.

  4. FCMv1'i yeniden etkinleştirin ve XSP'yi yeniden başlatın.

  5. Testi tekrarlayın.

3

BroadWorks abonesinden iOS üzerinde arayan istemciye çağrı yaparak iOS'a yapılan çağrı bildirimlerini test edin. iOS cihazında çağrı bildiriminin göründüğünü doğrulayın.

Not: UC-One iOS uygulaması için anında iletme bildirimleri başarısız olursa yanlış bir yapılandırmanın olması mümkündür. Bu durumda, eski ikili arayüze şununla dönebilirsiniz: set HTTP2Enabled false