Contextos são divisões lógicas que funcionam como marcadores da URL de publicação de eventos. Eles permitem reutilizar tópicos em diferentes cenários.
O servidor externo de autorização é definido por contexto. Isso significa que quando dois contextos diferentes são disponibilizados para um tópico, é possível utilizar dois endpoints distintos de autorização para o mesmo tópico.
A tela Contexts lista todos os contextos cadastrados no seu Events Hub:
Para entender como os contextos funcionam, é importante saber como o Events Hub coordena a publicação e subscrição a eventos:
Para publicar eventos, você precisa criar um caminho (URL) que serve como canal de envio de eventos de um publicador até o Events Hub.
Essa URL é formada por URL base
+ context
+ handler
+ topic
:
event-receiver
+ um código único (hash).Exemplo
Imagine que você quer criar um fluxo de publicação de vários tipos de alerta e testá-lo sem notificar os subscritores. Para fazer isso, você pode:
Criar um handler chamado "Alerts", com o path
/alerts
.Cadastrar tópicos agrupados no handler. Por exemplo:
/latency
para alertas de latência eapi-update
para alertas de atualização das APIs.Criar um contexto para testes (por exemplo,
testing
) e habilitá-lo para o tópico que deseja testar para que os subscritores não recebam alertas.
Para cadastrar subscritores no contexto de teste, você deve vinculá-los ao tópico e habilitá-los somente para o contexto
testing
.Se não cadastrar nenhum contexto, o Events Hub define "Default" como padrão, e nenhum marcador é adicionado à URL de publicação. Portanto, requisições para o tópico
latency
ouapi-update
serão enviadas para<url-base>/alerts/latency
/<url-base>/alerts/api-update
e todos os subscritores ativos nele receberão os eventos.
Levando em conta o exemplo acima, as URLs de publicação para o tópico latency
serão:
<url-base>/alerts/latency
<url-base>/testing/alerts/latency
A maior vantagem de usar contextos diferentes é poder reutilizar as configurações de políticas de segurança e tentativas de entrega definidas no handler, sem precisar criar novos tópicos. E como os endpoints de autorização são definidos por contexto, você pode usar um mock de autorização para testes enquanto mantém a autorização do contexto padrão inalterada.
IMPORTANTOs contextos são divisões lógicas que facilitam a criação e manutenção de tópicos, permitindo reutilizá-los em diferentes cenários. Eles não são ambientes fisicamente separados uns dos outros.
Isso quer dizer que, se você usa o contexto "Default" para eventos produtivos e o contexto "Testing" para eventos de teste, consegue controlar os publicadores, subscritores e endpoints de autorização para cada contexto. No entanto, todos os eventos recebidos e distribuídos no Events Hub compartilham a mesma infraestrutura.
Testes que sobrecarreguem a infraestrutura, mesmo feitos no contexto de teste, poderão afetar o recebimento e distribuição de eventos nos outros contextos.
Os endpoints que validam os publicadores são definidos para cada contexto. Isso é feito na tela Authorizations, que contém duas seções: OAUTH e JWT. Em ambas são mostrados todos os contextos cadastrados no Events Hub, indicando a URL de autorização que está definida para cada um.
A utilização de interceptores de segurança é opcional. No entanto, se adicionar políticas ao seu handler, você precisa configurar a URL da autorização vinculada ao interceptor. Com exceção do "IP Filtering Validation", todos dependem dessa configuração para funcionar.
NOTEVeja como usar a Sensedia API Platform para autorização dos publicadores.
Os contextos são vinculados aos tópicos através da aba Topics na criação ou edição de handlers. Para publicar eventos, você relaciona os tópicos e seus contextos a publicadores e subscritores. Isso ocorre da seguinte forma:
Publicadores: na etapa Topics durante o registro do publicador, selecione os tópicos desejados. Você verá os contextos disponíveis para cada tópico.
Subscritores: ao cadastrar um subscritor, você deve inscrevê-lo nos tópicos dos quais receberá eventos. Habilitando contextos do tópico a ele, apenas receberá eventos dos publicadores ativos no contexto.
Você pode criar até 5 contextos no Events Hub. O contexto "Default" é padrão e não pode ser editado ou excluído.
TIPAo atingir o limite de contextos, o botão + será desabilitado, impedindo o cadastro de novos contextos. Se precisar de um novo contexto, você precisará excluir um dos existentes.
Para criar um novo contexto, clique no botão +. Preencha os campos:
Após registrá-lo, o contexto será exibido na etapa TOPICS de criação/edição de handlers e poderá ser habilitado para qualquer tópico.
Ao clicar sobre o nome de um contexto, você verá os tópicos vinculados a ele. Nesta tela, é possível:
NOTESó é possível excluir contextos que não estão associados a nenhum tópico. Se estiverem, você precisará desabilitar o contexto em cada tópico para poder excluí-lo.
Nosso site utiliza cookies para habilitar funcionalidades essenciais de avaliação e notificações. Não utilizamos cookies de rastreamento para publicidade ou análise de terceiros.Saiba mais