Sicurezza di Hub di notifica

Panoramica

In questo argomento viene descritto il modello di protezione degli hub di notifica di Azure.

Sicurezza della firma di accesso condiviso

Hub di notifica implementa uno schema di sicurezza a livello di entità denominato firma di accesso condiviso . Ogni regola contiene un nome, un valore chiave (segreto condiviso) e un set di diritti, come illustrato più avanti in Attestazioni di sicurezza.

Quando si crea un hub, vengono create automaticamente due regole: una con diritti di ascolto (che l'app client usa) e una con tutti i diritti (che il back-end dell'app usa):

  • DefaultListenSharedAccessSignature: concede solo l'autorizzazione listen .
  • DefaultFullSharedAccessSignature: concede autorizzazioni Listen, Manage e Send . Questo criterio deve essere usato solo nel back-end dell'app. Non usarlo nelle applicazioni client; usare un criterio con solo accesso in ascolto . Per creare un nuovo criterio di accesso personalizzato con un nuovo token di firma di accesso condiviso, vedere Token di firma di accesso condiviso per i criteri di accesso più avanti in questo articolo.

Quando si esegue la gestione delle registrazioni dalle app client, se le informazioni inviate tramite notifiche non sono riservate (ad esempio aggiornamenti meteorologici), un modo comune per accedere a un hub di notifica è assegnare il valore della chiave della regola di accesso solo in ascolto all'app client e il valore della chiave della regola di accesso completo al back-end dell'app.

Le app non devono incorporare il valore della chiave nelle app client di Windows Store; Avere invece l'app client recuperarla dal back-end dell'app all'avvio.

La chiave con l'accesso listen consente a un'app client di registrare qualsiasi tag. Se l'app deve limitare le registrazioni a tag specifici a client specifici, ad esempio quando i tag rappresentano gli ID utente, il back-end dell'app deve eseguire le registrazioni. Per altre informazioni, vedere Gestione della registrazione. Si noti che in questo modo, l'app client non avrà accesso diretto agli hub di notifica.

Attestazioni di sicurezza

Analogamente ad altre entità, le operazioni dell'hub di notifica sono consentite per tre attestazioni di sicurezza: Listen, Send e Manage.

Attestazione Descrizione Operazioni consentite
Attesa Creare o aggiornare, leggere ed eliminare singole registrazioni Creare o aggiornare una registrazione

Leggere una registrazione

Leggere tutte le registrazioni per un handle

Elimina registrazione
Send Inviare messaggi all'hub di notifica Send message
Gestione CRUD negli hub di notifica (incluso l'aggiornamento delle credenziali PNS e le chiavi di sicurezza) e lettura delle registrazioni basata sui tag Creare/Aggiornare/Leggere/Eliminare hub

Leggere le registrazioni per tag

Hub di notifica accetta token di firma di accesso condiviso generati con chiavi condivise configurate direttamente nell'hub.

Non è possibile inviare una notifica a più spazi dei nomi. Gli spazi dei nomi sono contenitori logici per Hub di notifica e non sono coinvolti nell'invio di notifiche.

Usare i criteri di accesso a livello di spazio dei nomi (credenziali) per le operazioni a livello di spazio dei nomi; ad esempio: elencare hub, creare o eliminare hub e così via. Solo i criteri di accesso a livello di hub consentono di inviare notifiche.

Token di firma di accesso condiviso per i criteri di accesso

Per creare una nuova attestazione di sicurezza o per visualizzare le chiavi di firma di accesso condiviso esistenti, eseguire le operazioni seguenti:

  1. Accedere al portale di Azure.
  2. Selezionare Tutte le risorse.
  3. Selezionare il nome dell'hub di notifica per il quale si vuole creare l'attestazione o visualizzare la chiave di firma di accesso condiviso.
  4. Nel menu a sinistra selezionare Criteri di accesso.
  5. Selezionare Nuovo criterio per creare una nuova attestazione di sicurezza. Assegnare al criterio un nome e selezionare le autorizzazioni che si desidera concedere. Quindi scegliere OK.
  6. La stringa di connessione completa (inclusa la nuova chiave di firma di accesso condiviso) viene visualizzata nella finestra Criteri di accesso. È possibile copiare questa stringa negli Appunti per un uso successivo.

Per estrarre la chiave di firma di accesso condiviso da un criterio specifico, selezionare il pulsante Copia accanto al criterio contenente la chiave di firma di accesso condiviso desiderata. Incollare questo valore in una posizione temporanea, quindi copiare la parte della chiave di firma di accesso condiviso della stringa di connessione. In questo esempio viene usato uno spazio dei nomi hub di notifica denominato mytestnamespace1 e un criterio denominato policy2. La chiave di firma di accesso condiviso è il valore vicino alla fine della stringa, specificata da SharedAccessKey:

Endpoint=sb://mytestnamespace1.servicebus.windows.net/;SharedAccessKeyName=policy2;SharedAccessKey=<SAS key value here>

Ottenere chiavi di firma di accesso condiviso

Passaggi successivi