Condividi tramite


Chiavi API

L'API amministrazione di Microsoft IIS consente la generazione e la visualizzazione delle informazioni sulla chiave API tramite endpoint protetti.

Informazioni sul token di accesso (/api/token di accesso)

Questo endpoint fornisce informazioni non sensibili sul token di accesso usato per la richiesta.

GET /api/access-token

{
    "id": "{access-token-id}",
    "expires_on": "2018-02-02T16:25:31.4003337Z",
    "type": "SWT",
    "api_key": {
        "purpose": "Admin",
        "id": "{api-key-id}",
        "_links": {
            "self": {
                "href": "/security/api-keys/{api-key-id}"
            }
        }
    }
}

Chiavi API (/security/api-keys)

Questo endpoint consente la creazione e l'eliminazione a livello di codice delle chiavi API. Ciò è utile per generare chiavi API che esistono solo per l'ambito di una sessione di scripting o per la gestione delle chiavi API con un'applicazione centrale. L'endpoint delle chiavi API si trova nel percorso /security, ovvero solo amministratori e amministratori IIS hanno accesso per impostazione predefinita.

GET /security/api-keys/{api-key-id}

{
    "purpose": "Admin",
    "id": "{api-key-id}",
    "created_on": "2017-02-02T16:25:31.4003337Z",
    "last_modified": "2017-02-02T16:25:31.4003337Z",
    "expires_on": "2018-02-02T16:25:31.4003337Z",
    "_links": {
        "access_token": {
            "href": "/security/access-tokens/{access-token-id}"
        }
    }
}

Creazione di una chiave API

La creazione di una chiave API è un'attività speciale che richiede due richieste. La richiesta aggiuntiva viene usata per evitare CSRF. Prima di tutto, l'utente deve eseguire una query sull'endpoint delle chiavi API e ricevere un token speciale dall'intestazione XSRF-TOKEN . L'utente può quindi creare la chiave API specificando l'intestazione XSRF-TOKEN nella richiesta di creazione.

Nota: XSRF-TOKEN viene inviato come intestazione HTTP.

Client                                                                                      Server
|                                                                                                |
| GET /security/api-keys                                                                         |
| ---------------------------------------------->                                                |
|                                                                                                |
|                                                                                                |
|                                                            XSRF-TOKEN: {value}                 |
|                                                <---------------------------------------------- |
|                                                                                                |
|                                                                                                |
| POST /security/api-keys                                                                        |
|      XSRF-TOKEN: {value}                                                                       |
|                                                                                                |
|      {                                                                                         |
|          "purpose": "Admin"                                                                    |
|      }                                                                                         |
| ---------------------------------------------->                                                |
|                                                                                                |
|                                                                                                |
|                                                   {                                            |
|                                                     "access_token" : "{access-token-value}"    |
|                                                   }                                            |
|                                                <---------------------------------------------- |

Richiesta POST per la creazione di chiavi API

La sezione richiesta POST della generazione di chiavi API è la posizione in cui è possibile specificare i parametri per la chiave API. Questo è un esempio di un corpo POST che crea una chiave API con uno scopo e una data di scadenza specifici.

{
    "purpose": "Admin",
    "expires_on": "2018-02-02T16:25:31.4003337Z",
}

Eliminazione di una chiave API

Le chiavi API possono essere eliminate eseguendo una richiesta DELETE nell'endpoint /security/api-keys/{api-key-id}