Partilhar via


Authorization Server - Create Or Update

Cria um novo servidor de autorização ou atualiza um servidor de autorização existente.

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

Parâmetros do URI

Name Em Necessário Tipo Description
authsid
path True

string

Identificador do servidor de autorização.

Regex pattern: ^[^*#&+:<>?]+$

resourceGroupName
path True

string

O nome do grupo de recursos. O nome não é sensível a maiúsculas e minúsculas.

serviceName
path True

string

O nome do serviço Gestão de API.

Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

O ID da subscrição de destino.

api-version
query True

string

A versão da API a utilizar para esta operação.

Cabeçalho do Pedido

Name Necessário Tipo Description
If-Match

string

ETag da Entidade. Não é necessário ao criar uma entidade, mas é necessário ao atualizar uma entidade.

Corpo do Pedido

Name Necessário Tipo Description
properties.authorizationEndpoint True

string

Ponto final de autorização OAuth. Consulte http://tools.ietf.org/html/rfc6749#section-3.2.

properties.clientId True

string

ID de cliente ou aplicação registado neste servidor de autorização.

properties.clientRegistrationEndpoint True

string

Referência opcional a uma página onde é efetuado o registo de clientes ou aplicações para este servidor de autorização. Contém o URL absoluto para a entidade que está a ser referenciada.

properties.displayName True

string

Nome do servidor de autorização amigável.

properties.grantTypes True

GrantType[]

Forma de uma concessão de autorização, que o cliente utiliza para pedir o token de acesso.

properties.authorizationMethods

AuthorizationMethod[]

Verbos HTTP suportados pelo ponto final de autorização. O GET tem de estar sempre presente. POST é opcional.

properties.bearerTokenSendingMethods

BearerTokenSendingMethod[]

Especifica o mecanismo através do qual o token de acesso é transmitido à API.

properties.clientAuthenticationMethod

ClientAuthenticationMethod[]

Método de autenticação suportado pelo ponto final de token deste servidor de autorização. Os valores possíveis são Básico e/ou Corpo. Quando o Corpo é especificado, as credenciais do cliente e outros parâmetros são transmitidos no corpo do pedido no formato application/x-www-form-urlencoded.

properties.clientSecret

string

Segredo do cliente ou da aplicação registado neste servidor de autorização. Esta propriedade não será preenchida em operações "GET"! Utilize o pedido POST "/listSecrets" para obter o valor.

properties.defaultScope

string

Âmbito do token de acesso que vai ser pedido por predefinição. Pode ser substituído ao nível da API. Deve ser fornecido na forma de uma cadeia que contém valores delimitados pelo espaço.

properties.description

string

Descrição do servidor de autorização. Pode conter etiquetas de formatação HTML.

properties.resourceOwnerPassword

string

Opcionalmente, pode ser especificado quando o tipo de concessão de palavra-passe do proprietário do recurso é suportado por este servidor de autorização. Palavra-passe predefinida do proprietário do recurso.

properties.resourceOwnerUsername

string

Opcionalmente, pode ser especificado quando o tipo de concessão de palavra-passe do proprietário do recurso é suportado por este servidor de autorização. Nome de utilizador do proprietário do recurso predefinido.

properties.supportState

boolean

Se for verdadeiro, o servidor de autorização incluirá o parâmetro de estado do pedido de autorização para a respetiva resposta. O cliente pode utilizar o parâmetro de estado para aumentar a segurança do protocolo.

properties.tokenBodyParameters

TokenBodyParameterContract[]

Parâmetros adicionais exigidos pelo ponto final do token deste servidor de autorização representados como uma matriz de objetos JSON com propriedades de cadeia de nome e valor, ou seja, {"name" : "name value", "value": "a value"}.

properties.tokenEndpoint

string

Ponto final do token OAuth. Contém o URI absoluto para a entidade que está a ser referenciada.

properties.useInApiDocumentation

boolean

Se for verdadeiro, o servidor de autorização será utilizado na documentação da API no portal do programador. Falso por predefinição se não for fornecido nenhum valor.

properties.useInTestConsole

boolean

Se for verdadeiro, o servidor de autorização pode ser utilizado na consola de teste do portal do programador. Verdadeiro por predefinição se não for fornecido nenhum valor.

Respostas

Name Tipo Description
200 OK

AuthorizationServerContract

O servidor de autorização já está registado.

Headers

ETag: string

201 Created

AuthorizationServerContract

O servidor de autorização foi registado com êxito.

Headers

ETag: string

Other Status Codes

ErrorResponse

Resposta de erro que descreve o motivo pela qual a operação falhou.

Segurança

azure_auth

Fluxo OAuth2 do Azure Active Directory.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation representar a sua conta de utilizador

Exemplos

ApiManagementCreateAuthorizationServer

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/authorizationServers/newauthServer?api-version=2022-08-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"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/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/subid/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"
  }
}

Definições

Name Description
AuthorizationMethod

Verbos HTTP suportados pelo ponto final de autorização. O GET tem de estar sempre presente. POST é opcional.

AuthorizationServerContract

Definições externas do servidor de autorização OAuth.

BearerTokenSendingMethod

Especifica o mecanismo através do qual o token de acesso é transmitido à API.

ClientAuthenticationMethod

Método de autenticação suportado pelo ponto final de token deste servidor de autorização. Os valores possíveis são Básico e/ou Corpo. Quando o Corpo é especificado, as credenciais do cliente e outros parâmetros são transmitidos no corpo do pedido no formato application/x-www-form-urlencoded.

ErrorFieldContract

Contrato de campo de erro.

ErrorResponse

Resposta a Erros.

GrantType

Forma de uma concessão de autorização, que o cliente utiliza para pedir o token de acesso.

TokenBodyParameterContract

OAuth adquire o parâmetro do corpo do pedido de token (www-url-form-encoded).

AuthorizationMethod

Verbos HTTP suportados pelo ponto final de autorização. O GET tem de estar sempre presente. POST é opcional.

Name Tipo Description
DELETE

string

GET

string

HEAD

string

OPTIONS

string

PATCH

string

POST

string

PUT

string

TRACE

string

AuthorizationServerContract

Definições externas do servidor de autorização OAuth.

Name Tipo Description
id

string

ID de recurso completamente qualificado para o recurso. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

O nome do recurso

properties.authorizationEndpoint

string

Ponto final de autorização OAuth. Consulte http://tools.ietf.org/html/rfc6749#section-3.2.

properties.authorizationMethods

AuthorizationMethod[]

Verbos HTTP suportados pelo ponto final de autorização. O GET tem de estar sempre presente. POST é opcional.

properties.bearerTokenSendingMethods

BearerTokenSendingMethod[]

Especifica o mecanismo através do qual o token de acesso é transmitido à API.

properties.clientAuthenticationMethod

ClientAuthenticationMethod[]

Método de autenticação suportado pelo ponto final de token deste servidor de autorização. Os valores possíveis são Básico e/ou Corpo. Quando o Corpo é especificado, as credenciais do cliente e outros parâmetros são transmitidos no corpo do pedido no formato application/x-www-form-urlencoded.

properties.clientId

string

ID de cliente ou aplicação registado neste servidor de autorização.

properties.clientRegistrationEndpoint

string

Referência opcional a uma página onde é efetuado o registo de clientes ou aplicações para este servidor de autorização. Contém o URL absoluto para a entidade que está a ser referenciada.

properties.clientSecret

string

Segredo do cliente ou da aplicação registado neste servidor de autorização. Esta propriedade não será preenchida em operações "GET"! Utilize o pedido POST "/listSecrets" para obter o valor.

properties.defaultScope

string

Âmbito do token de acesso que vai ser pedido por predefinição. Pode ser substituído ao nível da API. Deve ser fornecido na forma de uma cadeia que contém valores delimitados pelo espaço.

properties.description

string

Descrição do servidor de autorização. Pode conter etiquetas de formatação HTML.

properties.displayName

string

Nome do servidor de autorização amigável.

properties.grantTypes

GrantType[]

Forma de uma concessão de autorização, que o cliente utiliza para pedir o token de acesso.

properties.resourceOwnerPassword

string

Opcionalmente, pode ser especificado quando o tipo de concessão de palavra-passe do proprietário do recurso é suportado por este servidor de autorização. Palavra-passe predefinida do proprietário do recurso.

properties.resourceOwnerUsername

string

Opcionalmente, pode ser especificado quando o tipo de concessão de palavra-passe do proprietário do recurso é suportado por este servidor de autorização. Nome de utilizador predefinido do proprietário do recurso.

properties.supportState

boolean

Se for verdadeiro, o servidor de autorização incluirá o parâmetro de estado do pedido de autorização para a respetiva resposta. O cliente pode utilizar o parâmetro de estado para aumentar a segurança do protocolo.

properties.tokenBodyParameters

TokenBodyParameterContract[]

Parâmetros adicionais exigidos pelo ponto final do token deste servidor de autorização representados como uma matriz de objetos JSON com propriedades de cadeia de nome e valor, ou seja, {"name" : "name value", "value": "a value"}.

properties.tokenEndpoint

string

Ponto final do token OAuth. Contém o URI absoluto para a entidade que está a ser referenciada.

properties.useInApiDocumentation

boolean

Se for verdadeiro, o servidor de autorização será utilizado na documentação da API no portal do programador. Falso por predefinição se não for fornecido nenhum valor.

properties.useInTestConsole

boolean

Se for verdadeiro, o servidor de autorização pode ser utilizado na consola de teste do portal do programador. Verdadeiro por predefinição se não for fornecido nenhum valor.

type

string

O tipo de recurso. Por exemplo, "Microsoft.Compute/virtualMachines" ou "Microsoft.Storage/storageAccounts"

BearerTokenSendingMethod

Especifica o mecanismo através do qual o token de acesso é transmitido à API.

Name Tipo Description
authorizationHeader

string

query

string

ClientAuthenticationMethod

Método de autenticação suportado pelo ponto final de token deste servidor de autorização. Os valores possíveis são Básico e/ou Corpo. Quando o Corpo é especificado, as credenciais do cliente e outros parâmetros são transmitidos no corpo do pedido no formato application/x-www-form-urlencoded.

Name Tipo Description
Basic

string

Método de Autenticação de Cliente Básico.

Body

string

Método de Autenticação baseado no corpo.

ErrorFieldContract

Contrato de campo de erro.

Name Tipo Description
code

string

Código de erro ao nível da propriedade.

message

string

Representação legível por humanos do erro ao nível da propriedade.

target

string

Nome da propriedade.

ErrorResponse

Resposta a Erros.

Name Tipo Description
error.code

string

Código de erro definido pelo serviço. Este código serve como um sub-estado para o código de erro HTTP especificado na resposta.

error.details

ErrorFieldContract[]

A lista de campos inválidos enviados a pedido, em caso de erro de validação.

error.message

string

Representação legível por humanos do erro.

GrantType

Forma de uma concessão de autorização, que o cliente utiliza para pedir o token de acesso.

Name Tipo Description
authorizationCode

string

Fluxo de Concessão de Código de Autorização conforme descrito https://tools.ietf.org/html/rfc6749#section-4.1.

clientCredentials

string

Fluxo de Concessão de Credenciais de Cliente conforme descrito https://tools.ietf.org/html/rfc6749#section-4.4.

implicit

string

Fluxo de Concessão de Código Implícito, conforme descrito https://tools.ietf.org/html/rfc6749#section-4.2.

resourceOwnerPassword

string

Fluxo de Concessão de Palavra-passe do Proprietário do Recurso, conforme descrito https://tools.ietf.org/html/rfc6749#section-4.3.

TokenBodyParameterContract

OAuth adquire o parâmetro do corpo do pedido de token (www-url-form-encoded).

Name Tipo Description
name

string

nome do parâmetro do corpo.

value

string

valor do parâmetro do corpo.