Compartilhar via


AuthPlugin

Simula autenticação e autorização usando chaves de API ou OAuth2.

Captura de tela de um prompt de comando com o Proxy de Desenvolvimento simulando a autenticação usando a chave de API em uma Função do Azure em execução localmente.

Definição de instância do plug-in

{
  "name": "AuthPlugin",
  "enabled": true,
  "pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll",
  "configSection": "auth"
}

Exemplo de configuração: chave de API

{
  "auth": {
    "type": "apiKey",
    "apiKey": {
      "parameters": [
        {
          "in": "header",
          "name": "x-api-key"
        },
        {
          "in": "query",
          "name": "code"
        }
      ],
      "allowedKeys": [
        "1234"
      ]
    }
  }
}

Exemplo de configuração: OAuth2

{
  "auth": {
    "type": "oauth2",
    "oauth2": {
      "metadataUrl": "https://login.microsoftonline.com/organizations/v2.0/.well-known/openid-configuration",
      "allowedApplications": [
        "00000000-0000-0000-0000-000000000000"
      ],
      "allowedAudiences": [
        "00000000-0000-0000-0000-000000000000"
      ],
      "allowedPrincipals": [
        "00000000-0000-0000-0000-000000000000"
      ],
      "allowedTenants":[
        "00000000-0000-0000-0000-000000000000"
      ],
      "issuer": "https://login.microsoftonline.com/ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0/v2.0",
      "scopes": [
        "Posts.Read"
      ],
      "validateLifetime": true,
      "validateSigningKey": true
    }
  }
}

Propriedades de configuração

Propriedade Descrição Obrigatório
type Tipo de autenticação e autorização que o Dev Proxy deve usar. Valores permitidos: apiKey e oauth2 Sim
apiKey Configuração para autenticação e autorização de chave de API. Sim, quando type é apiKey
oauth2 Configuração para autenticação e autorização OAuth2. Sim, quando type é oauth2

Propriedades de configuração da chave de API

Propriedade Descrição Obrigatório
allowedKeys Lista de chaves de API permitidas. Sim
parameters Lista de parâmetros que contêm a chave de API. Sim

Propriedades de configuração de parâmetro

Propriedade Descrição Obrigatório
in Onde se espera que o parâmetro seja encontrado. Valores permitidos: header, query, cookie Sim
name Nome do parâmetro. Sim

Propriedades de configuração do OAuth2

Propriedade Descrição Obrigatório
metadataUrl URL para o documento de metadados do OpenID Connect. Sim
allowedApplications Lista de IDs de aplicativo permitidos. Deixe em branco para não validar o aplicativo (appid azp ou declaração) para o qual o token é emitido. Não
allowedAudiences Lista de audiências permitidas. Deixe em branco para não validar o público-alvo (aud declaração) para o qual o token é emitido. Não
allowedPrincipals Lista de entidades permitidas. Deixe em branco para não validar a entidade de segurança (oid declaração) para a qual o token é emitido. Não
allowedTenants Lista de inquilinos permitidos. Deixe em branco para não validar o locatário (tid declaração) para o qual o token é emitido. Não
issuer Emissor de token permitido. Deixe em branco para não validar o emissor do token. Não
roles Lista de funções permitidas. Deixe em branco para não validar as funções (roles claim) no token. Não
scopes Lista de escopos permitidos. Deixe vazio para não validar os escopos (scp claim) no token. Não
validateLifetime Defina como false para desabilitar a validação do tempo de vida do token. Padrão true. Não
validateSigningKey Defina como false para desabilitar a validação da assinatura do token. Inadimplência true Não

Opções de linha de comando

Nenhum