Freigeben über


Authorization Server - Create Or Update

Erstellt einen neuen Autorisierungsserver oder aktualisiert einen vorhandenen Autorisierungsserver.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/authorizationServers/{authsid}?api-version=2024-05-01

URI-Parameter

Name In Erforderlich Typ Beschreibung
authsid
path True

string

minLength: 1
maxLength: 80
pattern: ^[^*#&+:<>?]+$

Bezeichner des Autorisierungsservers.

resourceGroupName
path True

string

minLength: 1
maxLength: 90

Der Name der Ressourcengruppe. Bei dem Namen wird die Groß-/Kleinschreibung nicht beachtet.

serviceName
path True

string

minLength: 1
maxLength: 50
pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

Der Name des API-Verwaltungsdiensts.

subscriptionId
path True

string (uuid)

Die ID des Zielabonnements. Der Wert muss eine UUID sein.

api-version
query True

string

minLength: 1

Die API-Version, die für diesen Vorgang verwendet werden soll.

Anforderungsheader

Name Erforderlich Typ Beschreibung
If-Match

string

ETag der Entität. Beim Erstellen einer Entität nicht erforderlich, aber beim Aktualisieren einer Entität erforderlich.

Anforderungstext

Name Erforderlich Typ Beschreibung
properties.authorizationEndpoint True

string

OAuth-Autorisierungsendpunkt. Siehe http://tools.ietf.org/html/rfc6749#section-3.2.

properties.clientId True

string

Client- oder App-ID, die bei diesem Autorisierungsserver registriert ist.

properties.clientRegistrationEndpoint True

string

Optionaler Verweis auf eine Seite, auf der Client- oder App-Registrierung für diesen Autorisierungsserver ausgeführt wird. Enthält absolute URL zu Entität, auf die verwiesen wird.

properties.displayName True

string

minLength: 1
maxLength: 50

Benutzerfreundlicher Autorisierungsservername.

properties.grantTypes True

GrantType[]

Form einer Autorisierungserteilung, die der Client zum Anfordern des Zugriffstokens verwendet.

properties.authorizationMethods

AuthorizationMethod[]

HTTP-Verben, die vom Autorisierungsendpunkt unterstützt werden. GET muss immer vorhanden sein. POST ist optional.

properties.bearerTokenSendingMethods

BearerTokenSendingMethod[]

Gibt den Mechanismus an, mit dem zugriffstoken an die API übergeben wird.

properties.clientAuthenticationMethod

ClientAuthenticationMethod[]

Vom Tokenendpunkt dieses Autorisierungsservers unterstützte Authentifizierungsmethode. Mögliche Werte sind "Basic" und/oder "Body". Wenn "Body" angegeben wird, werden Clientanmeldeinformationen und andere Parameter im Anforderungstext im Anwendungs-/x-www-form-urlencoded-Format übergeben.

properties.clientSecret

string

Client- oder App-Geheimschlüssel, der bei diesem Autorisierungsserver registriert ist. Diese Eigenschaft wird für 'GET'-Vorgänge nicht ausgefüllt! Verwenden Sie die POST-Anforderung "/listSecrets", um den Wert abzurufen.

properties.defaultScope

string

Zugriffstokenbereich, der standardmäßig angefordert wird. Kann auf API-Ebene überschrieben werden. Sollte in Form einer Zeichenfolge bereitgestellt werden, die durch Leerzeichen getrennte Werte enthält.

properties.description

string

Beschreibung des Autorisierungsservers. Kann HTML-Formatierungstags enthalten.

properties.resourceOwnerPassword

string

Kann optional angegeben werden, wenn der Typ der Kennworterteilung des Ressourcenbesitzers von diesem Autorisierungsserver unterstützt wird. Standardkennwort des Ressourcenbesitzers.

properties.resourceOwnerUsername

string

Kann optional angegeben werden, wenn der Typ der Kennworterteilung des Ressourcenbesitzers von diesem Autorisierungsserver unterstützt wird. Standardbenutzerbenutzername der Ressource.

properties.supportState

boolean

Bei "true" enthält der Autorisierungsserver zustandsparameter aus der Autorisierungsanforderung an seine Antwort. Der Client kann zustandsparameter verwenden, um die Protokollsicherheit auszuheben.

properties.tokenBodyParameters

TokenBodyParameterContract[]

Zusätzliche Parameter, die vom Tokenendpunkt dieses Autorisierungsservers als Array von JSON-Objekten mit Namen- und Wertzeichenfolgeneigenschaften dargestellt werden, d. h. {"name" : "name value", "value": "a value"}.

properties.tokenEndpoint

string

OAuth-Tokenendpunkt. Enthält einen absoluten URI für die Entität, auf die verwiesen wird.

properties.useInApiDocumentation

boolean

Bei "true" wird der Autorisierungsserver in der API-Dokumentation im Entwicklerportal verwendet. False standardmäßig, wenn kein Wert angegeben wird.

properties.useInTestConsole

boolean

Bei "true" kann der Autorisierungsserver in der Testkonsole des Entwicklerportals verwendet werden. True standardmäßig, wenn kein Wert angegeben wird.

Antworten

Name Typ Beschreibung
200 OK

AuthorizationServerContract

Der Autorisierungsserver ist bereits registriert.

Header

ETag: string

201 Created

AuthorizationServerContract

Der Autorisierungsserver wurde erfolgreich registriert.

Header

ETag: string

Other Status Codes

ErrorResponse

Fehlerantwort, die beschreibt, warum der Vorgang fehlgeschlagen ist.

Sicherheit

azure_auth

Azure Active Directory OAuth2-Fluss.

Typ: oauth2
Ablauf: implicit
Autorisierungs-URL: https://login.microsoftonline.com/common/oauth2/authorize

Bereiche

Name Beschreibung
user_impersonation Identitätswechsel ihres Benutzerkontos

Beispiele

ApiManagementCreateAuthorizationServer

Beispielanforderung

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer?api-version=2024-05-01

{
  "properties": {
    "displayName": "test2",
    "useInTestConsole": false,
    "useInApiDocumentation": true,
    "description": "test server",
    "clientRegistrationEndpoint": "https://www.contoso.com/apps",
    "authorizationEndpoint": "https://www.contoso.com/oauth2/auth",
    "authorizationMethods": [
      "GET"
    ],
    "tokenEndpoint": "https://www.contoso.com/oauth2/token",
    "supportState": true,
    "defaultScope": "read write",
    "grantTypes": [
      "authorizationCode",
      "implicit"
    ],
    "bearerTokenSendingMethods": [
      "authorizationHeader"
    ],
    "clientId": "1",
    "clientSecret": "2",
    "resourceOwnerUsername": "un",
    "resourceOwnerPassword": "pwd"
  }
}

Beispiel für eine Antwort

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer",
  "type": "Microsoft.ApiManagement/service/authorizationServers",
  "name": "newauthServer",
  "properties": {
    "displayName": "test2",
    "useInTestConsole": false,
    "useInApiDocumentation": true,
    "description": "test server",
    "clientRegistrationEndpoint": "https://www.contoso.com/apps",
    "authorizationEndpoint": "https://www.contoso.com/oauth2/auth",
    "authorizationMethods": [
      "GET"
    ],
    "tokenEndpoint": "https://www.contoso.com/oauth2/token",
    "supportState": true,
    "defaultScope": "read write",
    "grantTypes": [
      "authorizationCode",
      "implicit"
    ],
    "bearerTokenSendingMethods": [
      "authorizationHeader"
    ],
    "clientId": "1",
    "resourceOwnerUsername": "un",
    "resourceOwnerPassword": "pwd"
  }
}
{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer",
  "type": "Microsoft.ApiManagement/service/authorizationServers",
  "name": "newauthServer",
  "properties": {
    "displayName": "test2",
    "useInTestConsole": false,
    "useInApiDocumentation": true,
    "description": "test server",
    "clientRegistrationEndpoint": "https://www.contoso.com/apps",
    "authorizationEndpoint": "https://www.contoso.com/oauth2/auth",
    "authorizationMethods": [
      "GET"
    ],
    "tokenEndpoint": "https://www.contoso.com/oauth2/token",
    "supportState": true,
    "defaultScope": "read write",
    "grantTypes": [
      "authorizationCode",
      "implicit"
    ],
    "bearerTokenSendingMethods": [
      "authorizationHeader"
    ],
    "clientId": "1",
    "resourceOwnerUsername": "un",
    "resourceOwnerPassword": "pwd"
  }
}

Definitionen

Name Beschreibung
AuthorizationMethod

HTTP-Verben, die vom Autorisierungsendpunkt unterstützt werden. GET muss immer vorhanden sein. POST ist optional.

AuthorizationServerContract

Externe OAuth-Autorisierungsservereinstellungen.

BearerTokenSendingMethod

Gibt den Mechanismus an, mit dem zugriffstoken an die API übergeben wird.

ClientAuthenticationMethod

Vom Tokenendpunkt dieses Autorisierungsservers unterstützte Authentifizierungsmethode. Mögliche Werte sind "Basic" und/oder "Body". Wenn "Body" angegeben wird, werden Clientanmeldeinformationen und andere Parameter im Anforderungstext im Anwendungs-/x-www-form-urlencoded-Format übergeben.

ErrorAdditionalInfo

Der Ressourcenverwaltungsfehler zusätzliche Informationen.

ErrorDetail

Das Fehlerdetails.

ErrorResponse

Fehlerantwort

GrantType

Form einer Autorisierungserteilung, die der Client zum Anfordern des Zugriffstokens verwendet.

TokenBodyParameterContract

OAuth-Anforderungstextparameter (www-url-form-encoded).

AuthorizationMethod

HTTP-Verben, die vom Autorisierungsendpunkt unterstützt werden. GET muss immer vorhanden sein. POST ist optional.

Wert Beschreibung
DELETE
GET
HEAD
OPTIONS
PATCH
POST
PUT
TRACE

AuthorizationServerContract

Externe OAuth-Autorisierungsservereinstellungen.

Name Typ Beschreibung
id

string

Vollqualifizierte Ressourcen-ID für die Ressource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Der Name der Ressource

properties.authorizationEndpoint

string

OAuth-Autorisierungsendpunkt. Siehe http://tools.ietf.org/html/rfc6749#section-3.2.

properties.authorizationMethods

AuthorizationMethod[]

HTTP-Verben, die vom Autorisierungsendpunkt unterstützt werden. GET muss immer vorhanden sein. POST ist optional.

properties.bearerTokenSendingMethods

BearerTokenSendingMethod[]

Gibt den Mechanismus an, mit dem zugriffstoken an die API übergeben wird.

properties.clientAuthenticationMethod

ClientAuthenticationMethod[]

Vom Tokenendpunkt dieses Autorisierungsservers unterstützte Authentifizierungsmethode. Mögliche Werte sind "Basic" und/oder "Body". Wenn "Body" angegeben wird, werden Clientanmeldeinformationen und andere Parameter im Anforderungstext im Anwendungs-/x-www-form-urlencoded-Format übergeben.

properties.clientId

string

Client- oder App-ID, die bei diesem Autorisierungsserver registriert ist.

properties.clientRegistrationEndpoint

string

Optionaler Verweis auf eine Seite, auf der Client- oder App-Registrierung für diesen Autorisierungsserver ausgeführt wird. Enthält absolute URL zu Entität, auf die verwiesen wird.

properties.clientSecret

string

Client- oder App-Geheimschlüssel, der bei diesem Autorisierungsserver registriert ist. Diese Eigenschaft wird für 'GET'-Vorgänge nicht ausgefüllt! Verwenden Sie die POST-Anforderung "/listSecrets", um den Wert abzurufen.

properties.defaultScope

string

Zugriffstokenbereich, der standardmäßig angefordert wird. Kann auf API-Ebene überschrieben werden. Sollte in Form einer Zeichenfolge bereitgestellt werden, die durch Leerzeichen getrennte Werte enthält.

properties.description

string

Beschreibung des Autorisierungsservers. Kann HTML-Formatierungstags enthalten.

properties.displayName

string

minLength: 1
maxLength: 50

Benutzerfreundlicher Autorisierungsservername.

properties.grantTypes

GrantType[]

Form einer Autorisierungserteilung, die der Client zum Anfordern des Zugriffstokens verwendet.

properties.resourceOwnerPassword

string

Kann optional angegeben werden, wenn der Typ der Kennworterteilung des Ressourcenbesitzers von diesem Autorisierungsserver unterstützt wird. Standardkennwort des Ressourcenbesitzers.

properties.resourceOwnerUsername

string

Kann optional angegeben werden, wenn der Typ der Kennworterteilung des Ressourcenbesitzers von diesem Autorisierungsserver unterstützt wird. Standardbenutzerbenutzername der Ressource.

properties.supportState

boolean

Bei "true" enthält der Autorisierungsserver zustandsparameter aus der Autorisierungsanforderung an seine Antwort. Der Client kann zustandsparameter verwenden, um die Protokollsicherheit auszuheben.

properties.tokenBodyParameters

TokenBodyParameterContract[]

Zusätzliche Parameter, die vom Tokenendpunkt dieses Autorisierungsservers als Array von JSON-Objekten mit Namen- und Wertzeichenfolgeneigenschaften dargestellt werden, d. h. {"name" : "name value", "value": "a value"}.

properties.tokenEndpoint

string

OAuth-Tokenendpunkt. Enthält einen absoluten URI für die Entität, auf die verwiesen wird.

properties.useInApiDocumentation

boolean

Bei "true" wird der Autorisierungsserver in der API-Dokumentation im Entwicklerportal verwendet. False standardmäßig, wenn kein Wert angegeben wird.

properties.useInTestConsole

boolean

Bei "true" kann der Autorisierungsserver in der Testkonsole des Entwicklerportals verwendet werden. True standardmäßig, wenn kein Wert angegeben wird.

type

string

Der Typ der Ressource. Z. B. "Microsoft.Compute/virtualMachines" oder "Microsoft.Storage/storageAccounts"

BearerTokenSendingMethod

Gibt den Mechanismus an, mit dem zugriffstoken an die API übergeben wird.

Wert Beschreibung
authorizationHeader
query

ClientAuthenticationMethod

Vom Tokenendpunkt dieses Autorisierungsservers unterstützte Authentifizierungsmethode. Mögliche Werte sind "Basic" und/oder "Body". Wenn "Body" angegeben wird, werden Clientanmeldeinformationen und andere Parameter im Anforderungstext im Anwendungs-/x-www-form-urlencoded-Format übergeben.

Wert Beschreibung
Basic

Standardclientauthentifizierungsmethode.

Body

Body based Authentication method.

ErrorAdditionalInfo

Der Ressourcenverwaltungsfehler zusätzliche Informationen.

Name Typ Beschreibung
info

object

Die zusätzlichen Informationen.

type

string

Der zusätzliche Informationstyp.

ErrorDetail

Das Fehlerdetails.

Name Typ Beschreibung
additionalInfo

ErrorAdditionalInfo[]

Die zusätzlichen Informationen des Fehlers.

code

string

Der Fehlercode.

details

ErrorDetail[]

Die Fehlerdetails.

message

string

Die Fehlermeldung.

target

string

Das Fehlerziel.

ErrorResponse

Fehlerantwort

Name Typ Beschreibung
error

ErrorDetail

Das Fehlerobjekt.

GrantType

Form einer Autorisierungserteilung, die der Client zum Anfordern des Zugriffstokens verwendet.

Wert Beschreibung
authorizationCode

Autorisierungscodegenehmigungsfluss wie https://tools.ietf.org/html/rfc6749#section-4.1beschrieben.

clientCredentials

Fluss zur Erteilung von Clientanmeldeinformationen wie https://tools.ietf.org/html/rfc6749#section-4.4beschrieben.

implicit

Impliziter Code grant-Fluss wie beschrieben https://tools.ietf.org/html/rfc6749#section-4.2.

resourceOwnerPassword

Ablauf der Kennworterteilung des Ressourcenbesitzers wie https://tools.ietf.org/html/rfc6749#section-4.3beschrieben.

TokenBodyParameterContract

OAuth-Anforderungstextparameter (www-url-form-encoded).

Name Typ Beschreibung
name

string

name des body-Parameters.

value

string

body-Parameterwert.