Bagikan melalui


Get Public Keys - Get Public Keys

Dapatkan kunci publik yang digunakan oleh layanan untuk menandatangani tanda terima, yang disebutkan dalam draf SCITT IETF sebagai bagian dari implementasi jwks_uri

GET {endpoint}/jwks?api-version=2025-01-31-preview

Parameter URI

Nama Dalam Diperlukan Jenis Deskripsi
endpoint
path True

string (uri)

api-version
query True

string

minLength: 1

Versi API yang digunakan untuk operasi ini.

Respons

Nama Jenis Deskripsi
200 OK

JwksDocument

Permintaan telah berhasil.

Media Types: "application/json", "application/concise-problem-details+cbor"

400 Bad Request

file

Respons kesalahan validasi

Media Types: "application/json", "application/concise-problem-details+cbor"

404 Not Found

file

Respons kesalahan tidak ditemukan

Media Types: "application/json", "application/concise-problem-details+cbor"

429 Too Many Requests

file

Respons kesalahan tidak ditemukan

Media Types: "application/json", "application/concise-problem-details+cbor"

Header

Retry-After: integer

500 Internal Server Error

file

Respons kesalahan server

Media Types: "application/json", "application/concise-problem-details+cbor"

Other Status Codes

file

Respons kesalahan layanan tidak tersedia

Media Types: "application/json", "application/concise-problem-details+cbor"

Header

Retry-After: integer

Contoh

GetPublicKeys

Permintaan sampel

GET {endpoint}/jwks?api-version=2025-01-31-preview

Respon sampel

Content-Type: application/json
{
  "keys": [
    {
      "alg": "ismwdpkyzdpcdsxlhdrcyu",
      "crv": "krvghelqczlomlykmvq",
      "d": "sjrntenzgpayzxqeyylodzzot",
      "dp": "okaildkxkhdiuz",
      "dq": "cr",
      "e": "whulawpi",
      "k": "umuebehxryklpmphgvfflgxhmw",
      "kid": "sjvhzuxmiidkyt",
      "kty": "aleunvywecrqn",
      "n": "agbjjczwjkuzidwazv",
      "p": "mwqnfqougntmfkkqrhwfawqdfvc",
      "q": "ihgggpjpvqrugoctea",
      "qi": "hauoxhsdatbqpwyjy",
      "use": "sobsnevfheiclufbfronhqufiry",
      "x": "jiifvniadtvfdosxgtdgju",
      "x5c": [
        "bpqymrr"
      ],
      "y": "owpcmhs"
    }
  ]
}
Content-Type: application/concise-problem-details+cbor
"{binary}"
Content-Type: application/concise-problem-details+cbor
"{binary}"
Content-Type: application/concise-problem-details+cbor
"{binary}"
Content-Type: application/concise-problem-details+cbor
"{binary}"
Content-Type: application/concise-problem-details+cbor
"{binary}"

Definisi

Nama Deskripsi
JsonWebKey

rfc7517 Representasi Kunci Web JSON yang diadaptasi dari definisi keangkuhan bersama dalam jenis umum

JwksDocument

Dokumen seperti JWKS

JsonWebKey

rfc7517 Representasi Kunci Web JSON yang diadaptasi dari definisi keangkuhan bersama dalam jenis umum

Nama Jenis Deskripsi
alg

string

Parameter "alg" (algoritma) mengidentifikasi algoritma yang dimaksudkan untuk digunakan dengan kunci. Nilai yang digunakan harus terdaftar dalam registri IANA "JSON Web Signature and Encryption Algorithms" yang ditetapkan oleh [JWA] atau menjadi nilai yang berisi Nama Tahan Tabrakan.

crv

string

Parameter "crv" (kurva) mengidentifikasi jenis kurva

d

string

Kunci privat eksponen privat RSA atau ECC

dp

string

Parameter Kunci Privat RSA

dq

string

Parameter Kunci Privat RSA

e

string

Eksponen publik RSA, di Base64

k

string

Kunci simetris

kid

string

Parameter "kid" (ID kunci) digunakan untuk mencocokkan kunci tertentu. Ini digunakan, misalnya, untuk memilih di antara sekumpulan kunci dalam Set JWK selama rollover kunci. Struktur nilai "anak" tidak ditentukan. Ketika nilai "anak" digunakan dalam Set JWK, kunci yang berbeda dalam Set JWK HARUS menggunakan nilai "anak" yang berbeda. (Salah satu contoh di mana kunci yang berbeda mungkin menggunakan nilai "anak" yang sama adalah jika mereka memiliki nilai "kty" (jenis kunci) yang berbeda tetapi dianggap sebagai alternatif yang setara oleh aplikasi menggunakannya.) Nilai "kid" adalah string peka huruf besar/kecil.

kty

string

Parameter "kty" (jenis kunci) mengidentifikasi keluarga algoritma kriptografi yang digunakan dengan kunci, seperti "RSA" atau "EC". Nilai "kty" harus terdaftar di registri "JSON Web Key Type" IANA yang ditetapkan oleh [JWA] atau menjadi nilai yang berisi Nama Tahan Tabrakan. Nilai "kty" adalah string peka huruf besar/kecil.

n

string

Modulus RSA, di Base64

p

string

Prime rahasia RSA

q

string

Prime rahasia RSA, dengan p < q

qi

string

Parameter Kunci Privat RSA

use

string

Gunakan ("penggunaan kunci publik") mengidentifikasi penggunaan kunci publik yang dimaksudkan. Parameter "gunakan" digunakan untuk menunjukkan apakah kunci publik digunakan untuk mengenkripsi data atau memverifikasi tanda tangan pada data. Nilai biasanya "sig" (tanda tangan) atau "enc" (enkripsi).

x

string

Koordinat X untuk titik Kurva Elips

x5c

string[]

Parameter "x5c" (rantai sertifikat X.509) berisi rantai satu atau beberapa sertifikat PKIX [RFC5280]. Rantai sertifikat direpresentasikan sebagai array JSON dari string nilai sertifikat. Setiap string dalam array dikodekan base64 (Bagian 4 dari [RFC4648] -- bukan base64url-encoded) DER [ITU. X690.1994] Nilai sertifikat PKIX. Sertifikat PKIX yang berisi nilai kunci HARUS menjadi sertifikat pertama.

y

string

Koordinat Y untuk titik Kurva Elips

JwksDocument

Dokumen seperti JWKS

Nama Jenis Deskripsi
keys

JsonWebKey[]

Daftar kunci publik yang digunakan untuk verifikasi tanda terima.