Bagikan melalui


AuthPlugin (Plugin Autentikasi)

Mensimulasikan autentikasi dan otorisasi menggunakan kunci API atau OAuth2.

Cuplikan layar prompt perintah dengan Dev Proxy mensimulasikan autentikasi menggunakan kunci API pada Azure Function yang berjalan secara lokal.

Contoh konfigurasi: Kunci API

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/rc.schema.json",
  "plugins": [
    {
      "name": "AuthPlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
      "configSection": "auth"
    }
  ],
  "auth": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/authplugin.schema.json",
    "type": "apiKey",
    "apiKey": {
      "parameters": [
        {
          "in": "header",
          "name": "x-api-key"
        },
        {
          "in": "query",
          "name": "code"
        }
      ],
      "allowedKeys": [
        "1234"
      ]
    }
  }
}

Contoh konfigurasi: OAuth2

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/rc.schema.json",
  "plugins": [
    {
      "name": "AuthPlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
      "configSection": "auth"
    }
  ],
  "auth": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/authplugin.schema.json",
    "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
    }
  }
}

Properti konfigurasi

Properti Deskripsi Wajib diisi
type Jenis autentikasi dan otorisasi yang harus digunakan Dev Proxy. Nilai yang diizinkan: apiKey, oauth2 Ya
apiKey Konfigurasi untuk autentikasi dan otorisasi kunci API. Ya, kapan typeapiKey
oauth2 Konfigurasi untuk autentikasi dan otorisasi OAuth2. Ya, kapan typeoauth2

Properti konfigurasi kunci API

Properti Deskripsi Wajib diisi
allowedKeys Daftar kunci API yang diizinkan. Ya
parameters Daftar parameter yang berisi kunci API. Ya

Properti konfigurasi parameter

Properti Deskripsi Wajib diisi
in Di mana parameter diharapkan ditemukan. Nilai yang diizinkan: header, query, cookie Ya
name Nama parameter. Ya

Properti konfigurasi OAuth2

Properti Deskripsi Wajib diisi
metadataUrl URL ke dokumen metadata OpenID Connect. Ya
allowedApplications Daftar ID aplikasi yang diizinkan. Biarkan kosong untuk tidak memvalidasi aplikasi (appid atau azp klaim) tempat token dikeluarkan. Tidak.
allowedAudiences Daftar audiens yang diizinkan. Biarkan kosong untuk tidak memvalidasi audiens (aud klaim) tempat token dikeluarkan. Tidak.
allowedPrincipals Daftar prinsipal yang diizinkan. Biarkan kosong untuk tidak memvalidasi prinsipal (oid klaim) tempat token dikeluarkan. Tidak.
allowedTenants Daftar penyewa yang diizinkan. Biarkan kosong untuk tidak memvalidasi penyewa (tid klaim) tempat token dikeluarkan. Tidak.
issuer Penerbit token yang diizinkan. Biarkan kosong untuk tidak memvalidasi penerbit token. Tidak.
roles Daftar peran yang diizinkan. Biarkan kosong untuk tidak memvalidasi peran (roles klaim) pada token. Tidak.
scopes Daftar cakupan yang diizinkan. Biarkan kosong untuk tidak memvalidasi cakupan (scp klaim) pada token. Tidak.
validateLifetime Atur ke false untuk menonaktifkan validasi masa pakai token. Bawaan true. Tidak.
validateSigningKey Atur ke false untuk menonaktifkan validasi tanda tangan token. true default Tidak.

Opsi baris Perintah

Tidak ada