Partager via


AuthPlugin

Simule l’authentification et l’autorisation à l’aide de clés API ou OAuth2.

Capture d’écran d’une invite de commandes avec le proxy de développement simulant l’authentification à l’aide de la clé API sur une fonction Azure exécutée localement.

Définition de l’instance de plug-in

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

Exemple de configuration : clé API

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

Exemple de configuration : 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
    }
  }
}

Propriétés de configuration

Propriété Description Obligatoire
type Type d’authentification et d’autorisation que le proxy de développement doit utiliser. Valeurs autorisées : apiKey, oauth2 Oui
apiKey Configuration pour l’authentification et l’autorisation de clé API. Oui, quand c’est typeapiKey
oauth2 Configuration pour l’authentification et l’autorisation OAuth2. Oui, quand c’est typeoauth2

Propriétés de configuration de clé API

Propriété Description Obligatoire
allowedKeys Liste des clés API autorisées. Oui
parameters Liste des paramètres qui contiennent la clé API. Oui

Propriétés de configuration des paramètres

Propriété Description Obligatoire
in Où le paramètre est attendu. Valeurs autorisées : header, query, cookie. Oui
name Nom du paramètre. Oui

Propriétés de configuration OAuth2

Propriété Description Obligatoire
metadataUrl URL du document de métadonnées OpenID Connect. Oui
allowedApplications Liste des ID d’application autorisés. Laissez vide pour ne pas valider l’application (appid ou azp la revendication) pour laquelle le jeton est émis. Non
allowedAudiences Liste des audiences autorisées. Laissez vide pour ne pas valider l’audience (aud revendication) pour laquelle le jeton est émis. Non
allowedPrincipals Liste des principaux autorisés. Laissez vide pour ne pas valider le principal (oid revendication) pour lequel le jeton est émis. Non
allowedTenants Liste des locataires autorisés. Laissez vide pour ne pas valider le locataire (tid revendication) pour lequel le jeton est émis. Non
issuer Émetteur de jeton autorisé. Laissez vide pour ne pas valider l’émetteur du jeton. Non
roles Liste des rôles autorisés. Laissez vide pour ne pas valider les rôles (roles revendication) sur le jeton. Non
scopes Liste des étendues autorisées. Laissez vide pour ne pas valider les étendues (scp revendication) sur le jeton. Non
validateLifetime Définissez cette option pour false désactiver la validation de la durée de vie du jeton. Par défaut, true. Non
validateSigningKey Définissez cette option pour false désactiver la validation de la signature de jeton. true par défaut Non

Options de ligne de commande

Aucune