Gestione dell'accesso IAM per Event Notifications
In qualità di titolare dell'account, puoi gestire l'accesso all'istanza di Event Notifications presente nel tuo account utilizzando IBM Cloud® Identity and Access Management.
Come proprietario dell'account, puoi impostare delle politiche all'interno del tuo account per creare diversi livelli di accesso per i vari utenti. Ad esempio, alcuni utenti possono avere accesso di tipo " Read only " a
un'istanza, ma accesso di tipo " Write " a un'altra. Puoi decidere chi è autorizzato a creare, aggiornare ed eliminare le istanze di Event Notifications.
Event Notifications ha adottato l'IAM. I segreti dell'app non vengono generati per le nuove istanze. Utilizza invece le chiavi API.
Ruoli utente
L'ambito di una politica di accesso si basa sul ruolo assegnato di un utente.
Le politiche consentono di concedere l'accesso a diversi livelli. Alcune delle opzioni sono le seguenti:
- Accesso a tutte le istanze del servizio nel tuo account
- Accesso alle istanze di un singolo servizio nel tuo account
- Accesso a una specifica risorsa all'interno di un'istanza
- Accesso a tutti i servizi abilitati a IAM nel tuo account
I ruoli di gestione della piattaforma consentono agli utenti di eseguire attività sulle risorse del servizio a livello di piattaforma. Ad esempio, è possibile assegnare ruoli per determinare chi può creare o eliminare ID, creare istanze e associare le istanze alle applicazioni. La seguente tabella classifica le azioni quando vengono assegnate ai ruoli di gestione della piattaforma.
| Ruolo piattaforma | Autorizzazioni | Azioni di esempio |
|---|---|---|
| Visualizzatore | Visualizza le istanze Event Notifications. | Puoi vedere i dati di un utente Cloud Directory o la configurazione del provider di identità. |
| Editor | Visualizza e associa le istanze Event Notifications. | Puoi associare le applicazioni a un'istanza di Event Notifications. |
| Operatore | Crea, elimina, modifica, sospendi, riprendi, visualizza o associa le istanze Event Notifications. | Puoi creare o eliminare un'istanza Event Notifications dal catalogo. |
| Amministratore | Tutte le azioni di gestione per ogni servizio nell'account. | Puoi eseguire tutte le azioni dell'operatore e hai la possibilità di assegnare politiche ad altri utenti. |
La seguente tabella descrive le azioni associate ai ruoli di accesso al servizio. I ruoli di accesso al servizio consentono agli utenti di accedere all'API Event Notifications e di richiamare anche l'API Event Notifications.
| Ruolo del servizio | Autorizzazioni | Azioni di esempio |
|---|---|---|
| Lettore | Visualizza i dati di un'istanz Event Notifications | Visualizza i dettagli dell'istanza del servizio come origini, regole, argomenti e canali |
| Scrittore | Visualizza e modifica un'istanza Event Notifications |
|
| Editor canale | Visualizza, crea ed elimina le sottoscrizioni Event Notifications | Visualizza, crea, aggiorna ed elimina le sottoscrizioni Event Notifications |
| Gestore | Visualizza, modifica ed elimina i dati in un'istanza Event Notifications |
|
| Lettore configurazione del servizio | Leggi la configurazione dei servizi per la gestione della governance | Visualizza configurazioni dei servizi |
| Gestore origine eventi | Integrazione di origine con Event Notifications utilizzando l'autorizzazione servizio - servizio |
|
| Publisher Event Notifications | Crea notifica e visualizza conteggio notifiche | Invia notifiche e visualizza conteggio notifiche |
| Gestore dispositivi | Ruolo personalizzato per gestire la registrazione del dispositivo di push con il servizio Event Notifications |
|
Per ulteriori informazioni sull'assegnazione dei ruoli utente nell'IU, vedi Gestione dell'accesso IAM.
Politiche di accesso Event Notifications
Ad ogni utente che accede al servizio Event Notifications nel tuo account deve essere assegnata una politica di accesso con un ruolo utente IAM definito. Tale politica determina quali azioni l'utente può eseguire nel contesto del servizio o dell'istanza che selezioni.
Le azioni sono personalizzate e definite dal servizio IBM Cloud come operazioni consentite dal servizio stesso. Le azioni vengono quindi associate ai ruoli utente IAM. Alcune delle azioni intraprese possono tracciare il servizio Activity Tracker. Nella seguente tabella, le azioni e le autorizzazioni richieste per Event Notifications sono associate.
| Azione del servizio | Nome di visualizzazione | Ruolo | Descrizione |
|---|---|---|---|
event-notifications.sources.create |
POST /event-notifications/v1/instances/{instanceID}/sources |
Gestore, Amministratore, Event - Source - Manager | Crea origine per l'istanza Event Notifications |
event-notifications.sources.read |
GET /event-notifications/v1/instances/{instanceID}/sources/{sourceID} |
Gestore, Amministratore, Event - Source - Manager, Canale - Editor | Ottieni origine per l'istanza Event Notifications |
event-notifications.sources.update |
PUT /event-notifications/v1/instances/{instanceID}/sources/{sourceID} |
Gestore, Amministratore, Event - Source - Manager | Aggiorna origine per l'istanza Event Notifications |
event-notifications.sources.delete |
DELETE /event-notifications/v1/instances/{instanceID}/sources/{sourceID} |
Gestore, Amministratore, Event - Source - Manager | Elimina origine dall'istanza Event Notifications |
event-notifications.sources.list |
GET /event-notifications/v1/instances/{instanceID}/sources |
Gestore, Amministratore, Event - Source - Manager, Editor del canale | Ottieni tutte le origini dell'istanza Event Notifications |
event-notifications.topics.create |
POST /event-notifications/v1/instances/{instanceID}/topics |
Responsabile, Scrittore, Amministratore | Crea argomento per l'istanza Event Notifications |
event-notifications.topics.read |
GET /event-notifications/v1/instances/{instanceID}/topics/{topicID} |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Ottieni argomento per l'istanza Event Notifications |
event-notifications.topics.update |
PUT /event-notifications/v1/instances/{instanceID}/topic/{topicID} |
Responsabile, Scrittore, Amministratore | Aggiorna argomento per istanza Event Notifications |
event-notifications.topics.delete |
DELETE /event-notifications/v1/instances/{instanceID}/topic/{topicID} |
Responsabile, Amministratore | Elimina argomento dall'istanza Event Notifications |
event-notifications.topics.list |
GET /event-notifications/v1/instances/{instanceID}/topics |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Ottieni tutti gli argomenti per istanza Event Notifications |
event-notifications.rules.create |
POST /event-notifications/v1/instances/{instanceID}/rules |
Responsabile, Scrittore, Amministratore | Crea regola per istanza Event Notifications |
event-notifications.rules.read |
GET /event-notifications/v1/instances/{instanceID}/rules/{ruleID} |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Ottieni regola per l'istanza Event Notifications |
event-notifications.rules.update |
PUT /event-notifications/v1/instances/{instanceID}/rules/{ruleID} |
Responsabile, Scrittore, Amministratore | Aggiorna regola per istanza Event Notifications |
event-notifications.rules.delete |
DELETE /event-notifications/v1/instances/{instanceID}/rules/{ruleID} |
Responsabile, Amministratore | Elimina regola dall'istanza Event Notifications |
event-notifications.rules.list |
GET /event-notifications/v1/instances/{instanceID}/rules |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Richiama tutte le regole per l'istanza Event Notifications |
event-notifications.destinations.create |
POST /event-notifications/v1/instances/{instanceID}/destinations |
Responsabile, Scrittore, Amministratore | Crea destinazione per l'istanza Event Notifications |
event-notifications.destinations.read |
GET /event-notifications/v1/instances/{instanceID}/destinations/{destinationID} |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Ottieni destinazione per istanza Event Notifications |
event-notifications.destinations.update |
PUT /event-notifications/v1/instances/{instanceID}/destinations/{destinationID} |
Responsabile, Scrittore, Amministratore | Aggiorna destinazione per istanza Event Notifications |
event-notifications.destinations.delete |
DELETE /event-notifications/v1/instances/{instanceID}/destinations/{destinationID} |
Responsabile, Amministratore | Elimina destinazione dall'istanza Event Notifications |
event-notifications.destinations.list |
GET /event-notifications/v1/instances/{instanceID}/destinations |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Richiama tutte le destinazioni per l'istanza Event Notifications |
event-notifications.subscriptions.create |
POST /event-notifications/v1/instances/{instanceID}/subscriptions |
Gestore, Scrittore, Amministratore, Canale - Editor | Crea sottoscrizione per istanza Event Notifications |
event-notifications.subscriptions.read |
GET /event-notifications/v1/instances/{instanceID}/subscriptions/{subscriptionID} |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Ottieni sottoscrizione per istanza Event Notifications |
event-notifications.subscriptions.update |
PUT /event-notifications/v1/instances/{instanceID}/subscriptions/{subscriptionID} |
Gestore, Scrittore, Amministratore, Canale - Editor | Aggiorna sottoscrizione per istanza Event Notifications |
event-notifications.subscriptions.delete |
DELETE /event-notifications/v1/instances/{instanceID}/subscriptions/{subscriptionID} |
Responsabile, Amministratore, Canale - Editor | Elimina sottoscrizione dall'istanza Event Notifications |
event-notifications.subscriptions.list |
GET /event-notifications/v1/instances/{instanceID}/subscriptions |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Ottieni tutte le sottoscrizioni per l'istanza Event Notifications |
event-notifications.notifications.post |
POST /event-notifications/v1/instances/{{instance_id}}/notifications |
Gestore, Scrittore, Amministratore, Event - Source - Manager, Event - Notification - Publisher | Invia notifica all'istanza Event Notifications |
event-notifications.counts.get |
GET /event-notifications/v1/instances/{instanceID}/counts |
Gestore, Lettore, Event - Source - Manager, Channel - Editor, Event - Notification - Publisher | Ottieni tutte le notifiche per l'istanza Event Notifications |
event-notifications.events.create |
GET /event-notifications/v1/instances/{instanceID}/events/{eventID}?sourceID=* |
Gestore, Amministratore, Event - Source - Manager | Ottieni evento per istanza Event Notifications |
event-notifications.events.read |
POST /event-notifications/v1/instances/{instanceID}/sources |
Gestore, Amministratore, Event - Source - Manager | |
event-notifications.events.list |
GET /event-notifications/v1/instances/{instanceID}/events?sourceID=* |
Gestore, Amministratore, Event - Source - Manager | Ottieni tutti gli eventi per istanza Event Notifications |
event-notifications.events.delete |
DELETE /event-notifications/v1/instances/{instanceID}/events/{eventID}?sourceID=* |
Gestore, Amministratore, Event - Source - Manager | Elimina gli eventi dall'istanza Event Notifications |
event-notifications.publickey.read |
GET /event-notifications/v1/instances/{instanceID}/destinations/{destinationID}/public_key |
Manager, Lettore, Scrittore, Amministratore, Canale - Editor | Leggi publickey utilizzato per la firma del webhook |
event-notifications.severities.create |
POST /event-notifications/v1/instances/{instanceID}/severities |
Gestore - origine - eventi | Crea gravità personalizzate |
event-notifications.severities.read |
GET /event-notifications/v1/instances/{instanceID}/severities/{severity_id}?sourceID=* |
Gestore - origine - eventi | Ottieni una gravità basata sull'origine |
event-notifications.severities.list |
GET /event-notifications/v1/instances/{instanceID}/severities?sourceID=* |
Gestore, Lettore, Amministratore, Event - Source - Manager | Richiama tutte le severità in base all'origine |
event-notifications.severities.delete |
DELETE /event-notifications/v1/instances/{instanceID}/severities/{severity_id}?sourceID=* |
Gestore - origine - eventi | Elimina una severità in base all'origine |
event-notifications.email-status.create |
POST /event-notifications/v1/instances/{instanceID}/email-status/sources/{sourceID}/notifications/{notificationID} |
Stato - Reporter | Crea / aggiorna lo stato corrente di un'email inviata |
event-notifications.sms-status.create |
POST /event-notifications/v1/instances/{instanceID}/sms-status/sources/{sourceID}/notifications/{notificationID} |
Stato - Reporter | Crea / aggiorna lo stato corrente di un SMS inviato |
event-notifications.webhook-status.create |
POST /event-notifications/v1/instances/{instanceID}/webhook-status/sources/{sourceID}/notifications/{notificationID} |
Stato - Reporter | Crea / aggiorna lo stato corrente di un webhook inviato |
event-notifications.devices.create |
POST /event-notifications/v1/instances/{instanceID}/destinations/{id}/devices |
Responsabile, Amministratore, Gestore periferiche | Crea un dispositivo in una destinazione FCM delle notifiche di push |
event-notifications.devices.read |
GET /event-notifications/v1/instances/{instanceID}/destinations/{id}/devices/{device_id} |
Responsabile, Amministratore, Gestore periferiche | Ottieni un singolo dispositivo in una destinazione FCM di notifiche di push |
event-notifications.devices.list |
GET /event-notifications/v1/instances/{instanceID}/destinations/{id}/devices |
Responsabile, Amministratore, Gestore periferiche | Crea tutti i dispositivi in una destinazione FCM di notifiche di push |
event-notifications.devices.update |
PUT /event-notifications/v1/instances/{instanceID}/destinations/{id}/devices/{device_id} |
Responsabile, Amministratore, Gestore periferiche | Aggiorna un dispositivo esistente in una destinazione FCM delle notifiche di push |
event-notifications.devices.delete |
POST /event-notifications/v1/instances/{instanceID}/destinations/{id}/devices/{device_id} |
Responsabile, Amministratore, Gestore periferiche | Elimina un dispositivo esistente in una destinazione FCM di notifiche di push |
event-notifications.tag-subscriptions.list |
GET /event-notifications/v1/instances/{instanceID}/destinations/{id}/tag_subscriptions |
Responsabile, Amministratore | elencare tutte le sottoscrizioni in una destinazione DCM di push |
event-notifications.tag-subscriptions.devices.list |
GET /event-notifications/v1/instances/{instanceID}/destinations/{id}/tag_subscriptions/devices/{device_id} |
Responsabile, Amministratore, Gestore periferiche | Ottieni un singolo dispositivo dalle sottoscrizioni di tag in una destinazione FCM di notifiche di push |
event-notifications.tag-subscriptions.create |
POST /event-notifications/v1/instances/{instanceID}/destinations/{id}/tag_subscriptions |
Responsabile, Amministratore, Gestore periferiche | Crea una sottoscrizione tag in una destinazione FCM di notifiche di push |
event-notifications.tag-subscriptions.delete |
DELETE /event-notifications/v1/instances/{instanceID}/destinations/{id}/tag_subscriptions |
Responsabile, Amministratore, Gestore periferiche | Elimina le sottoscrizioni tag in una destinazione FCM di notifiche di push |
event-notifications.channel-groups.create |
POST /event-notifications/v1/instances/{instance_id}/destinations/{id}/fcm_channel_groups |
Responsabile, Amministratore, Gestore periferiche | Crea un gruppo di canali in una destinazione FCM di notifiche di push |
event-notifications.channel-groups.read |
POST /event-notifications/v1/instances/{instance_id}/destinations/{id}/fcm_channel_groups/{group_id} |
Responsabile, Amministratore, Gestore periferiche | Ottieni un nuovo gruppo di canali in una destinazione FCM di notifiche di push |
event-notifications.channel-groups.list |
GET /event-notifications/v1/instances/{instance_id}/destinations/{id}/fcm_channel_groups |
Responsabile, Amministratore, Gestore periferiche | Elencare tutti i gruppi di canale in una destinazione FCM di notifiche di push |
event-notifications.channel-groups.update |
PUT /event-notifications/v1/instances/{instance_id}/destinations/{id}/fcmChannelGroups/{group_id} |
Responsabile, Amministratore, Gestore periferiche | Aggiorna un gruppo di canali esistente in una destinazione FCM delle notifiche di push |
event-notifications.channel-groups.delete |
DELETE /event-notifications/v1/instances/{instance_id}/destinations/{id}/fcm_channel_groups/{group_id} |
Responsabile, Amministratore | Elimina un gruppo di canali esistente in una destinazione FCM di notifiche di push |
event-notifications.integrations.list |
GET /event-notifications/v1/instances/{instance_id}/integrations |
Responsabile, Amministratore, Gestore periferiche | Elencare tutte le integrazioni di Key Management Services |
event-notifications.integrations.read |
GET /event-notifications/v1/instances/{instance_id}/integrations/{id} |
Responsabile, Amministratore, Gestore periferiche | Ottieni un'unica integrazione di Key Management Services |
event-notifications.integrations.update |
PUT /event-notifications/v1/instances/{instance_id}/integrations/{id} |
Responsabile, Amministratore, Gestore periferiche | Aggiorna un'integrazione Key Management Services esistente |
Gestione delle chiavi API
Al momento della creazione delle credenziali del servizio, puoi notare che viene visualizzata un'apiKey invece dell'appSecret.
Per utilizzare tutte le API ReST, devi generare il token di accesso tramite il seguente comando curl:
Parametri
curl -k -X POST \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "Accept: application/json" \
--data-urlencode "grant_type=urn:ibm:params:oauth:grant-type:apikey" \
--data-urlencode "apikey=G2c7oaUuOjul1RbmbjAeI7YwJSUCW_hmfif3GhLabYPE" \
"https://iam.cloud.ibm.com/identity/token"
Risposta
{
"access_token": "eyJraWQiOiIyMDE3MTAzMC0wMDowMDowMCIsImFsZyI6IlJTMjU2In0.eyJpYW1faWQiOiJpYW0tU2VydmljZUlkLTcwMTgzMDYwLWY3NWUtNGQ5Yy04NjY5LTA4NTNkYzc2NDQyMSIsImlkIjoiaWFtLVNlcnZpY2VJZC03MDE4MzA2MC1mNzVlLTRkOWMtODY2OS0wODUzZGM3NjQ0MjEiLCJyZWFsbWlkIjoiaWFtIiwiaWRlbnRpZmllciI6IlNlcnZpY2VJZC03MDE4MzA2MC1mNzVlLTRkOWMtODY2OS0wODUzZGM3NjQ0MjEiLCJzdWIiOiJTZXJ2aWNlSWQtNzAxODMwNjAtZjc1ZS00ZDljLTg2NjktMDg1M2RjNzY0NDIxIiwic3ViX3R5cGUiOiJTZXJ2aWNlSWQiLCJhY2NvdW50Ijp7ImJzcyI6IjJmZDIwM2E1M2Q5MDI1ZDI4NTU5YjZhZDFhM2JhMTNjIn0sImlhdCI6MTUzNDc2MDIwNywiZXhwIjoxNTM0NzYzODA3LCJpc3MiOiJodHRwczovL2lhbS5ibHVlbWl4Lm5ldC9pZGVudGl0eSIsImdyYW50X3R5cGUiOiJ1cm46aWJtOnBhcmFtczpvYXV0aDpncmFudC10eXBlOmFwaWtleSIsInNjb3BlIjoiaWJtIG9wZW5pZCIsImNsaWVudF9pZCI6ImltZnB1c2giLCJhY3IiOjEsImFtciI6WyJwd2QiXX0.MSUIk3KvFKeidTa4Qf9Ydf-7_boRwPRyigRjBkF0KWT2AVxeQ7oDVOgSEvApzy1tKSoi4N-bAIDpsOkd-BYnYtZnAFJxn9IGSnHli4YXOabLnLIuXbvYJBqCeAWVZoTiqQO6H7ZY__8Nf1YlfGms-iV4FFRPVAq1bx_9BylY1t2gq6WhTWciSGhoq5CHr_bdbc3qK6NRHDzvOfqBP5hDRDo9WAVFSSqtMJNttGR1Dj92jM0o9yADWe32WoVXbxMDX7VZ-wEAbvIJIW1ZcQPPKG9rfW57XOthZSWSbE4MxrUkoHvrBiGqcJfm_yV_mZD_Ynbm4yDSW4q0HbHOB1K7mg",
"refresh_token": "J1D6UZp3fEhxRdPCzhY4kvt7ojXIdUHjmO8x9pxGMgSZt0XpGd15F098WFKKUwp_v0pktQxdOZtcBGx3sL5THYUxU-PlkxELZ3gKX78dWf4P7lYDLDXR2x_n48fPIvRQoDD0ZJAKewO3o1IcegmNdf_InSgvu2M3Ra3FwlJPDN9mRH6-2e8pHnvq4e1rdY6pV0ufxweKc9dGqU-U7VU765BCg84kr8tkb9kpZnnPseDJ89gf5lhkZteKoNVkn-uiLUF0L-yv33tgtoDrdU5-FqaV00TUbLBoJEeTTnUD1fgIGB6SfphIImCQ0368gTU2emGBe3lzlQBnvkOXaMoBds3Nc2YL6px2LhqBWFd_ho68P4ahz1cbTn1rhqIjZMokeN88sreAKsRWhH7nVgBpfN3FS7OJBrVTx55j44vrZdH3vFJ-glLNb3FBwI6_6N_i2lVz7W-_W9xHW2CTYO7e3PYEZorQDBRZFIPImES6v7UV7YyaYG5ikktHHsOZsMzb6UYP-Kg1k2z_UTOumBkCDYxeV9GxukgSSK7Nckpysi5DJt4VgEnyxlbnfmWhtVeSzl8vjIBLJFE7oe7QDn3YyfCDP4QS4cIkTAvvpE5916pXk-rU9NLbIp6mmJw4PwY8__ao6CmCZJ4IDlr6GsDu4Ocn72yGgsNSwI-sq-dJyMuYG494CQ3MOooWsUjzhLTIHGsuHOkouMh07yR-v-D0dNrBeRmXM-JyF6BmtAS-rcivztjjbfJV3NNZcjC9RJvgf7OW5kp7dSRXMlohHu4tAxgVy16ON3Hm1TFnZt5jsaYLcwxuC6s2Qv7N4QEf2VIWLI5UWjbuj1IFi_Jq4RAkCCNgdvKo6RWaMbvZ8XL-3VKaDiJ60oy7wjGwZmWAWIFBZ1S3Br5waaT51T6mFV_s0VTu-68HhFpdIb1WFCXrU8DEcsamkUU7XRiTtBEIFNWQWnDDGMtn_vFGJCFygOd8CMsj",
"token_type": "Bearer",
"expires_in": 3600,
"expiration": 1534763807,
"scope": "ibm openid"
}
Una volta generato il token di accesso utilizzando il comando curl riportato sopra, utilizzare le API REST passando l' Bearer <value of access_token> e nell'intestazione Authorization.
Ad esempio:
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer eyJraWQiOiIyMDE3MTAzMC0wMDowMDowMCIsImFsZyI6IlJTMjU2In0.eyJpYW1faWQiOiJpYW0tU2VydmljZUlkLTYxZDdhNzJkLWM3YzAtNGNlZS05Zjg0LWI2ZDc1NzgzMWM2NSIsImlkIjoiaWFtLVNlcnZpY2VJZC02MWQ3YTcyZC1jN2MwLTRjZWUtOWY4NC1iNmQ3NTc4MzFjNjUiLCJyZWFsbWlkIjoiaWFtIiwiaWRlbnRpZmllciI6IlNlcnZpY2VJZC02MWQ3YTcyZC1jN2MwLTRjZWUtOWY4NC1iNmQ3NTc4MzFjNjUiLCJzdWIiOiJTZXJ2aWNlSWQtNjFkN2E3MmQtYzdjMC00Y2VlLTlmODQtYjZkNzU3ODMxYzY1Iiwic3ViX3R5cGUiOiJTZXJ2aWNlSWQiLCJhY2NvdW50Ijp7ImJzcyI6Ijk3MDg5MjkzNTg0OTg1NzBhYjYxMjUwNDk3ZjBmMDI2In0sImlhdCI6MTUzNTM2NTQ5MywiZXhwIjoxNTM1MzY5MDkzLCJpc3MiOiJodHRwczovL2lhbS5ibHVlbWl4Lm5ldC9pZGVudGl0eSIsImdyYW50X3R5cGUiOiJ1cm46aWJtOnBhcmFtczpvYXV0aDpncmFudC10eXBlOmFwaWtleSIsInNjb3BlIjoiaWJtIG9wZW5pZCIsImNsaWVudF9pZCI6ImRlZmF1bHQiLCJhY3IiOjEsImFtciI6WyJwd2QiXX0.ASKxD9Wrz5--OYVkPIsufKK9RNKKhJKuvRldm5mnGNv6PSH7sPBB6NiRG-SSGzEC0ZIei1WqtRE-0TRHwzSnIjXPb3yffBcvNtXuG9wT8GT8zsvxQ7bJk0ovge_0Xrrcym4cCTq2jO6ROWzOZ275wkH0h4fIzukbPv7YpT2Z-DdxIwHY_uALxqcCY83xODtMIs21PO6YwQ3KX4YfNEpKUminJpo45T8po4k049PODQKEK65YrqHYK1_voCJUu9xt9uVoGd-r962fhnbuxeEAe6di9KGVfOGfEdZFHgexoG__wXHa0Rmv9dCl-nNI4WMZfCTj8jgfEOhuZstpW7pW2g' --header 'Accept-Language: en-US' -d '{ \
"message": { \
"alert": "Notification alert message" \
} \
}' 'https://us-east.imfpush.cloud.ibm.com/imfpush/v1/apps/4809d407-85ff-4d11-ae4b-0fcdf8a833f1/messages'
Per ulteriori informazioni su IAM, consulta Accesso IAM.