Visão geral do proxy de autenticação NPS


Este artigo descreve como configurar um NPS compartilhado para usar proxy de autenticação NPS, de modo que ele também possa ser usado para enviar notificações de chamadas para aplicativos do WebEx. Se o seu NPS não suportar outros aplicativos, você poderá seguir o procedimento simplificado no guia de soluções do WebEx para BroadWorks https://help.webex.com/z9gt5j.

Visão geral do proxy NPS

Para compatibilidade com o WebEx para BroadWorks, o NPS deve receber patches para suportar o recurso de proxy NPS, servidor de envio para VoIP no UCaaS.

O recurso implementa um novo design no servidor de envio de notificação para resolver a vulnerabilidade de segurança do compartilhamento de chaves privadas de certificados de notificações por push com provedores de serviços para clientes móveis. Em vez de compartilhar certificados de notificação por push e chaves com o provedor de serviços, o NPS usa uma nova API para obter um token de notificação por push de vida curta a partir do back-end do UCaaS e usa esse token para autenticação com os serviços do Apple APNs e do Google FCM.

O recurso também aprimora a capacidade do servidor de envio de notificação para enviar notificações para dispositivos Android por meio da nova API HTTPv1 do Google firebase Cloud Messaging (FCM).

Os patches do BroadWorks para o recurso estão disponíveis no XChange: https://xchange.broadsoft.com/node/1046235

Para obter mais informações, consulte a Descrição do servidor push para VoIP na UCaaS de função no XChange: https://xchange.broadsoft.com/node/1045458

O XSP (ou plataforma de entrega de aplicativos ADP) que hospeda o NPS deve atender aos seguintes requisitos:

Mínimo de versões e restrições de residência

  • O NPS deve ser ativado em um XSP dedicado/ADP e o NPS deve ser o único aplicativo hospedado no servidor. Isso é para eliminar a interferência da entrega de notificações por push.

  • Deve haver apenas um aplicativo NPS em uma implantação. Se estiver usando o UC móvel-um colaborador/Connect ou UC-um SaaS e estiver implementando WebEx para BroadWorks, você deverá compartilhar esse NPS único para todos os aplicativos.

  • O NPS deve estar na versão R22 ou posterior XSP ou ADP.

    O R22/R23 XSP é compatível com uma pilha R21 se o XSP executar apenas o NPS e o as for R21. SP. Consulte a matriz de compatibilidade do BroadWorks para obter mais informações.

  • Mais informações sobre o servidor ADP podem ser encontradas em https://xchange.broadsoft.com/node/1051580.

NPS compartilhado

Leia estas notas antes de configurar o NPS compartilhado para usar o proxy NPS:

  • Se o seu NPS for usado com outros aplicativos (não apenas no aplicativo WebEx): Não altere o NPS de usar o API de legado do FCM para usar o FCM API do HTTP v1 antes de configurar o proxy NPS.

    Você pode mudar ao configurar o NPS para usar proxy NPS.

  • Depois de verificar se as notificações estão funcionando corretamente para aplicativos mais antigos com o proxy NPS, você pode remover a chave API do FCM para o aplicativo Android e a chave de autenticação do APNs para o aplicativo iOS.

HTTP do APNs/2

  • Se você tiver implantado aplicativos iOS que não sejam do Cisco/BroadSoft, configure esses aplicativos para usar o protocolo de HTTP/2 APNS antes de configurar o NPS para usar o proxy NPS.

  • XSP/ADPs que já são compatíveis com o aplicativo collaborate ou SaaS BroadWorks precisam ser migrados para HTTP/2. Para obter informações detalhadas sobre a configuração do HTTP/2, consulte http/2 support to Notification Server para o APNS (a migração do NPS para suporte a esses aplicativos Ios é resumido neste artigo).

Android FCMv1

  • Se você tiver implantado aplicativos Android que não sejam do Cisco/BroadSoft, configure esses aplicativos para usar as teclas FCMv1 antes de configurar o NPS para usar o proxy NPS.

  • Se o XSP/ADP suporta atualmente o aplicativo Connect ou UC-One SaaS, as teclas FCMv1 não podem ser ativadas antes de você configurar o proxy NPS. Recomendamos que você migre todos os aplicativos adicionais para chaves do FCMv1, ative e teste e, em seguida, desative até estar pronto para concluir as instruções de configuração (o fluxo de migração está documentado neste artigo).

Figura 1. Resumo Visual da migração para proxy de autenticação NPS
Tabela 1. Resumo das tarefas a serem migradas para o proxy NPS

Sequência

Título da tarefa

Quando/por que a tarefa é necessária?

1

Migre o NPS para HTTP/2 para UC-One SaaS (ou Connect) iOS aplicativos.

Se o NPS suportar esses aplicativos e eles ainda não estiverem configurados para HTTP/2.

2

Migre o NPS para o FCMv1 para os aplicativos UC-One SaaS (ou Connect) Android.

Se o NPS suportar esses aplicativos, e eles ainda não estiverem configurados para o FCMv1.

3

Ative o modo FCMv1 e teste as notificações por push.

Se o NPS for compatível com UC-One Connect e/ou outros (não-Cisco) apps Android.

4

Habilite novamente o modo herdado do FCM.

Se o NPS for compatível com UC-um SaaS. Se você deixar o FCMv1 ativado, antes de configurar o proxy NPS, as notificações por push para UC-a um SaaS começarão a falhar.

5

Instale as correções de proxy de autenticação NPS.

Se o NPS estiver no XSP R22 ou XSP R23.

6

Configurar NPS para usar o proxy de autenticação NPS:

  • Conectar techsupport a partir do NPS

  • Solicitar conta do IC OAuth

  • Criar conta de CI no NPS e configurar o tempo limite de token de atualização

  • Adicionar IDs de aplicativos Android

  • Adicionar IDs de aplicativos do iOS

  • Marque/defina URLs e tempos limite de conexão

  • Adicionar aplicativos à lista de permitidos

  • (Re-) Ativar FCMv1

  • Reiniciar XSP/ADP

  • Testar PNs para aplicativos iOS e Android

Sempre necessário.

7

Remova as teclas de modo herdado do FCM.

Para os aplicativos com suporte do NPS no FCMv1.

Essa tarefa é obrigatória para notificações por push para os aplicativos UC-One SaaS e WebEx em plataformas iOS.

Antes de começar

Se o XSP estiver executando o R22, você precisará aplicar o ap354313 antes de configurar o aplicativo NPS para usar HTTP/2 para o APNS.

1

Defina a URL de produção e os parâmetros de conexão em XSP_CLI/applications/notificationpushserver/apns/production >

definir https://api.push.apple.com/3/device da URL

definir connectionPoolSize 2

Set connectionTimeout 3000

definir connectionIdleTimeoutInSeconds 600

Observação: Não defina o tempo limite de conexão abaixo de 1000.

2

Adicione as IDs de aplicativos ao contexto de aplicativos de APNS, certificando-se de omitir a chave de autenticação – defina-a como vazia.

Para UC-um SaaS: XSP_CLI/applications/notificationpushserver/apns/production/tokens > Adicionar com. broadsoft. UC-um

Para o aplicativo WebEx: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens > Adicionar com. Cisco. ao quadrado

3

Verifique as chaves de autenticação com XSP_CLI/applications/notificationpushserver/apns/production/tokens > obter

4

Se a chave de autenticação não estiver vazia para com. broadsoft. UC-One , você poderá limpá-la com XSP_CLI/Applications/notificationpushserver/APNs/Production/tokens > desmarque a opção-authkey

5

Ativar HTTP/2:

XSP_CLI/Applications/NotificationPushServer/APNS/GeneralSettings > conjunto HTTP2Enabled verdadeiro

6

Somente para os aplicativos UC-um SaaS: Faça login no portal de integradores e vá para configuração > BroadWorks > .

7

Role para baixo até a seção servidor de notificação por push e selecione sua versão (por exemplo, versão 22 ) e siga as instruções fornecidas no Portal.

  • Esta tarefa se aplica ao NPS no XSP. Ignore-o se seu NPS estiver em ADP.

  • Você pode usar este procedimento para migrar para notificações do FCMv1 para os aplicativos UC-One Connect ou UC-One SaaS.

  • Você deve usar o FCMv1 se quiser usar o proxy NPS para autenticar notificações por push para UC-One ou os aplicativos do Android do WebEx.

  • Esta tarefa prepara o NPS para FCMv1 para que você possa ativá-lo como parte da configuração do proxy de autenticação NPS. Não habilite o FCMv1 até que você esteja pronto para configurar proxy de autenticação NPS ou notificações para clientes SaaS falharão.

1

Obtenha o ID do projeto no console firebase:

  1. Inicie sessão no console.firebase.google.com.

  2. Selecione o projeto de aplicativo UC-um (Connect ou SaaS), abra suas configurações de projeto.

  3. Abra a guia geral e grave a ID do projeto.

2

Obtenha a chave privada da sua conta de serviço no firebase:

  1. Navegue até a guia contas de serviço nas configurações do projeto.

  2. Crie uma nova conta de serviço e obtenha sua chave particular.

  3. Ou abra uma conta de serviço existente e gere uma nova chave privada para ela.

    Observação: A conta de serviço deve ter a permissão firebaseadmin-SDK.

  4. Faça o download da chave em um local seguro.

3

Copie a chave para o XSP que hospeda seu NPS.

4

Adicione a ID do projeto e a chave privada associada ao contexto de projetos do FCM:

XSP_CLI/Applications/NotificationPushServer/FCM/Projects > Adicionar projeto-caminho de ID/to/keyfile

5

Adicione o aplicativo UC-um (Connect ou SaaS) e o ID de projeto associado ao contexto de aplicativos do FCM:

XSP_CLI/Applications/NotificationPushServer/FCM/Applications > Adicionar ApplicationId com. broadsoft. Connect ProjectId projeto-ID

6

Verifique a configuração do FCM em relação aos atributos e os valores recomendados mostrados aqui. Use a versão set do comando para alterar os valores, se necessário:

Execute XSP_CLI/applications/notificationpushserver/fcm > Get

Parâmetro

Valor recomendado

authURL

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

pushURL

https://fcm.googleapis.com/v1/projects/ ID do projeto- /messages: enviar

abrangência

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

tokenTimeToLiveInSeconds

3600

connectionPoolSize

10

connectionTimeoutInMilliseconds

3000

connectionIdleTimeoutInSeconds

600

  • Esta tarefa se aplica ao NPS na ADP. Ignore-o se seu NPS estiver no XSP.

  • Você pode usar este procedimento para migrar para notificações do FCMv1 para os aplicativos UC-One Connect ou UC-One SaaS.

  • Você deve usar o FCMv1 se quiser usar o proxy NPS para autenticar notificações por push para UC-One ou os aplicativos do Android do WebEx.

  • Esta tarefa prepara o NPS para FCMv1 para que você possa ativá-lo como parte da configuração do proxy de autenticação NPS. Não habilite o FCMv1 até que você esteja pronto para configurar proxy de autenticação NPS ou notificações para clientes SaaS falharão.

1

Obtenha o ID do projeto no console firebase:

  1. Inicie sessão no console.firebase.google.com.

  2. Selecione o projeto de aplicativo UC-um (Connect ou SaaS), abra suas configurações de projeto.

  3. Abra a guia geral e grave a ID do projeto.

2

Obtenha a chave privada da sua conta de serviço no firebase:

  1. Navegue até a guia contas de serviço nas configurações do projeto.

  2. Crie uma nova conta de serviço e obtenha sua chave particular.

  3. Ou abra uma conta de serviço existente e gere uma nova chave privada para ela.

    Observação: A conta de serviço deve ter a permissão firebaseadmin-SDK.

  4. Faça o download da chave (arquivo. JSON) em um local seguro.

3

Importar o arquivo. JSON para o servidor ADP /BW/install.

4

Faça login na ADP CLI e adicione o projeto e a chave de API ao contexto de projetos do FCM:

ADP_CLI/Applications/NotificationPushServer/FCM/Projects > Add Connect-ucaas/BW/install/ filename. JSON

5

Adicione o aplicativo e a ID de projeto ao contexto de aplicativos do FCM:

ADP_CLI/Applications/NotificationPushServer/FCM/Applications > Adicionar ApplicationId com. broadsoft. ucaas. Connect ProjectId projeto-ID

6

Verifique sua configuração:

ADP_CLI/Applications/NotificationPushServer/FCM/Projects > obter ID de projeto AccountKey = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = * * * * * *
ADP_CLI/Applications/NotificationPushServer/FCM/Applications > Obtenha a ID do aplicativo ID do projeto = = = = = = = = = = = = = = = broadsoft  . ucaas. Connect Connect-ucaas. @ @ = com... conectar conectar-se

Você precisa fazer isso (como parte da migração) se:

  • Seu NPS é usado para aplicativos do at UC-One SaaS ou BroadWorks Connect Android.

  • Você já testou que as notificações por push de chamadas para outros aplicativos estão trabalhando com a API do FCMv1.

Você está Desabilitando temporariamente o FCMv1 porque as teclas de FCMv1 para esses aplicativos devem ser ativadas apenas durante o processo de configuração do proxy de autenticação NPS.

1

Faça login no XSP que hospeda seu NPS compartilhado.

2

Navegue até o contexto de FCM e desative FCM V1: XSP_CLI/Applications/NotificationPushServer/FCM > defina V1enabled false para reverter para usar a chave API herdada do FCM.

Instale os seguintes patches para suportar o recurso proxy de autenticação NPS:

R22 patches

R23 patches

1

Crie uma solicitação de serviço com seu contato integrado ou com o TAC para provisionar sua conta de cliente OAuth do (WebEx Common Identity). Título sua solicitação de serviço configuração de NPS para configuração de proxy de autenticação.

A Cisco fornece um ID de cliente OAuth, um segredo de cliente e um token de atualização válido por 60 dias. Se o token expirar antes de usá-lo com o NPS, você poderá elevar outra solicitação.
2

Crie a conta do cliente no NPS:

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client > defina clientId cliente-ID-de-Step1

XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client > conjunto clientSecret nova senha: cliente-segredo do Step1
XSP_CLI/Applications/NotificationPushServer/CiscoCI/Client > conjunto RefreshToken nova senha: Atualizar-token-de-Step1

Para verificar os valores inseridos correspondentes ao que você recebeu, execute XSP_CLI/applications/notificationpushserver/ciscoci/client > Get

3

Digite o URL do proxy NPS e defina o intervalo de atualização do token (30 minutos recomendado):

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

XSP_CLI/Applications/NotificationPushServer/CloudNPSService > conjunto VOIPTokenRefreshInterval 1800

4

(Para notificações do Android) Adicione as IDs de aplicativos do Android ao contexto de aplicativos do FCM no NPS.

Para o aplicativo WebEx no Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications > Adicionar ApplicationId com. Cisco. WX2. Android

Para o UC-One App no Android: XSP_CLI/Applications/NotificationPushServer/FCM/Applications > Adicionar ApplicationId com. broadsoft. Connect

5

(Para notificações do Apple iOS) Adicione a ID do aplicativo ao contexto de aplicativos do APNS, certificando-se de omitir a chave de autenticação, defina-a como vazia.

Para o aplicativo WebEx em iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens > Adicionar com. Cisco. ao quadrado

Para o UC-One App em iOS: XSP_CLI/Applications/NotificationPushServer/APNS/Production/Tokens > Adicionar com. Cisco. ao quadrado

6

Configure os seguintes URLs de NPS:

Tabela 2.

Contexto CLI do XSP

Parâmetro

Valor

XSP_CLI/Applications/NotificationPushServer/FCM >

authURL

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

pushURL

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

abrangência

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

XSP_CLI/Applications/NotificationPushServer/APNS/Production >

URL

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

7

Configure os seguintes parâmetros de conexão NPS para os valores recomendados mostrados:

Tabela 3.

Contexto CLI do XSP

Parâmetro

Valor

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

Verifique se o servidor de aplicativos está censurando IDs de aplicativos, pois talvez seja necessário adicionar os aplicativos WebEx à lista de permissões:

  1. Execute AS_CLI/system/pushnotification > Get e verifique o valor de enforceAllowedApplicationList. Se for verdadeiro , você precisa preencher essa subtarefa. Caso contrário, pule o restante da subtarefa.

  2. AS_CLI/System/PushNotification/AllowedApplications > Adicionar com. Cisco. WX2. Android "WebEx Android"

  3. AS_CLI/System/PushNotification/AllowedApplications > Adicionar com. Cisco. quadrado "WebEx Ios"

1

Reinicie o XSP:

bwrestart
2

Teste as notificações de chamadas para o Android fazendo chamadas de um assinante do BroadWorks para o cliente da chamada no Android. Verifique se a notificação de chamada aparece no dispositivo Android.

Observação: Se as notificações por push começarem a falhar para o aplicativo UC-One Android, é possível que haja uma configuração incorreta. Se essa for sua situação, você poderá reverter para o FCM herdado da seguinte forma:

  1. Desativar FCMv1: XSP_CLI/Applications/NotificationPushServer/FCM > definido V1Enabled falso

  2. Reiniciar XSP: bwrestart

  3. Verifique sua configuração.

  4. Reative o FCMv1 e reinicie o XSP.

  5. Repita o teste.

3

Teste as notificações de chamadas para o iOS fazendo chamadas de um assinante do BroadWorks para o cliente da chamada em iOS. Verifique se a notificação de chamada é exibida no dispositivo iOS.

Observação: Se as notificações por push começarem a falhar para o aplicativo UC-One iOS, é possível que haja uma configuração incorreta. Se essa for sua situação, você poderá reverter para a interface binária herdada com set HTTP2Enabled false.