Utilizzo dei token API Monitor
Puoi utilizzare i token API Monitor per autenticarti conIBM Cloud Monitoring servizio quando si utilizzaPython script o ilIBM Cloud Monitoring API REST per automatizzare le attività di routine e monitorare le notifiche.
Considera le seguenti informazioni per ciascuna istanza diIBM Cloud Monitoring servizio:
- È disponibile un token API Monitor per team.
- Se il token è compromesso o i criteri di sicurezza della tua organizzazione richiedono la reimpostazione del token dopo determinate condizioni, un utente con autorizzazioni di amministratore può reimpostare il token API.
Ottenere il token API Monitor tramite l'interfaccia utente di monitoraggio
Completa i seguenti passaggi per ottenere il token API Monitor:
- Dal* Selettore* pulsante nella barra di navigazione, scegli Impostazioni
- Dal* Monitora l'API* sezione, copia il file Monitora il token API.
Dopo aver ottenuto il token, puoi eseguire chiamate API e utilizzare questo token nel file Authorization intestazione.
Quando copi il token includi il file Bearer parola chiave:Authorization: Bearer MONITOR_API_TOKEN
Reimpostazione del token API Monitor tramite l'interfaccia utente di monitoraggio
Completa i seguenti passaggi per reimpostare il token API Monitor:
- Dal* Selettore* pulsante nella barra di navigazione, scegli Impostazioni.
- Nel* Monitora l'API* sezione, fare clic Reimposta gettone per reimpostare il token API.
Ottenere il token API Monitor utilizzando l'API
Puoi utilizzare l'API Token per ottenere il token API Monitor.
Ad esempio, puoi utilizzare quanto seguecURL comando per ottenere il token API Monitor:
curl -X GET <MONITORING_REST_API_ENDPOINT>/api/token -H "Authorization: $AUTH_TOKEN" -H "IBMInstanceID: $GUID" -H "SysdigTeamID: $TEAM_ID" -H "content-type: application/json"
GET <MONITORING_REST_API_ENDPOINT>/api/token -H "Authorization: $AUTH_TOKEN" -H "IBMInstanceID: $GUID" -H "SysdigTeamID: $TEAM_ID" -H "content-type: application/json"
Dove
-
<MONITORING_REST_API_ENDPOINT>indica l'endpoint target dalla chiamata API REST. Per ulteriori informazioni, vedere Endpoint API REST. Ad esempio, l'endpoint pubblico per un'istanza disponibile negli Stati Uniti del sud è il seguente:https://us-south.monitoring.cloud.ibm.com/api -
Puoi passare più intestazioni utilizzando
-H.AuthorizationEIBMInstanceIDsono intestazioni necessarie per l'autenticazione.SysdigTeamIDdefinisce il team per il quale desideri ottenere il token API Monitor.Per ottenere un
AUTH_TOKENe ilGUIDVedere,Intestazioni per token IAM.
Quando l'autorizzazione consentita in un'istanza di monitoraggio è impostata su IAM_ONLY, ottieni la seguente risposta {"errors":[{"reason":"Not enough privileges to complete the action","message":"Access is denied"}]} quando provi a ottenere il token API Monitor.
Codice JSON di esempio
Puoi utilizzare il seguente codice JSON di esempio per ottenere il token API Monitor:
def get_sysdig_api_token(self, instance_guid):
""" Get the Monitor API token by calling the /api/token endpoint """
if self.access_token == None:
self.get_iam_token()
if self.access_token == None:
# If the token is still None we have problems ....
return None
headers = { "Authorization": self.access_token,
"Accept": "application/json",
"IBMInstanceID": instance_guid }
url = self.sysdig_endpoint + "/api/token"
response = requests.get(url, headers=headers)
if response.status_code == 200:
data = response.json()
return data["token"]["key"]
else:
print_error("Error getting Monitor API token - {}".format(response.text))
return None