ການຄົ້ນຫາ OIDC ຜ່ານ proxy ແລະ JWKS ໃນ .NET ດ້ວຍ HttpDocumentRetriever
ສັກ HttpClient ທີ່ຮູ້ຈັກ proxy ເຂົ້າໃນ retriever ທີ່ການຄົ້ນຫາການຕັ້ງຄ່າຂອງ Microsoft.IdentityModel ໃຊ້, ໂດຍຮັກສານະໂຍບາຍການໂຫຼດຂໍ້ມູນຄືນແລະການກວດສອບ.
var handler = new HttpClientHandler
{
Proxy = new WebProxy("http://proxy.example:8080"),
UseProxy = true
};
var http = new HttpClient(handler);
var documents = new HttpDocumentRetriever(http);
var configuration = await OpenIdConnectConfigurationRetriever.GetAsync(
"https://issuer.example/.well-known/openid-configuration",
documents,
cancellationToken);HttpDocumentRetriever ມາຈາກ Microsoft.IdentityModel.Protocols; OpenIdConnectConfigurationRetriever ມາຈາກແພັກເກດ OpenIdConnect ຂອງມັນ. ຮັກສາ HTTP client ໃຫ້ມີຊີວິດຕະຫຼອດໄລຍະການເຮັດວຽກ. ສຳລັບ URL discovery ແລະ JWKS ສາທາລະນະທີ່ອະນຸຍາດໃຫ້ມີຕົວກາງສາທາລະນະ, ລາຍຊື່ proxy HTTP ສະເໜີຜູ້ສະໝັກສຳລັບ URL ຂອງ WebProxy.
ການຄົ້ນຫາດຶງ discovery ກ່ອນ ແລ້ວໃຊ້ retriever ດຽວກັນທີ່ໃຫ້ໄປສຳລັບ jwks_uri ເມື່ອມີ. URL ເຫຼົ່ານັ້ນອາດມີໂຮສຕ໌ຕ່າງກັນ ແລະ proxy ຕ້ອງອະນຸຍາດທັງສອງ.
ສຳລັບການຢືນຢັນ proxy, ຕັ້ງຄ່າບັນຊີຂອງ WebProxy ກ່ອນການສ້າງ. ມັນບໍ່ແມ່ນຄວາມລັບລູກຄ້າຂອງຜູ້ອອກ.
ໃນບໍລິການຢືນຢັນທີ່ເຮັດວຽກຍາວນານ, ມອບ retriever ນີ້ໃຫ້ລະບົບ cache ແລະ ການໂຫຼດຄືນທີ່ຮອງຮັບ ແທນການດາວໂຫຼດການຕັ້ງຄ່າສຳລັບທຸກຄຳຮ້ອງທີ່ເຂົ້າມາ. ຮັກສານະໂຍບາຍຜູ້ອອກ, ຄວາມໄວ້ໃຈ HTTPS ແລະ ການກວດສອບ token ໃຫ້ເປັນເອກະລາດຈາກການເລືອກການຂົນສົ່ງນີ້.