ASP.NET Core JWT Bearer: ຕັ້ງຄ່າ backchannel proxy ສຳລັບ metadata
ໃຊ້ BackchannelHttpHandler ກ່ອນການດຶງຂໍ້ມູນຈະເລີ່ມຕົ້ນ, ເວັ້ນເສຍແຕ່ client ຄົບຖ້ວນ ຫຼື ຜູ້ຈັດການການຕັ້ງຄ່າແບບກຳນົດເອງມີ transport ນັ້ນແລ້ວ.
API ສາມາດຮັບ bearer token ແລ້ວລົ້ມເຫຼວໃນການດາວໂຫຼດ metadata ແລະ signing key ຂອງ server. ຕັ້ງຄ່າ scheme JWT bearer ນັ້ນຫຼັງຈາກການລົງທະບຽນທີ່ມີຢູ່ ແລະ ກ່ອນຄຳຮ້ອງຂໍ:
using System.Net;
using Microsoft.AspNetCore.Authentication.JwtBearer;
builder.Services.Configure<JwtBearerOptions>(
JwtBearerDefaults.AuthenticationScheme, options =>
{
options.BackchannelHttpHandler = new HttpClientHandler
{
UseProxy = true,
Proxy = new WebProxy("http://proxy.example:8080")
};
});ຈັບຄູ່ຊື່ທີ່ລົງທະບຽນ; ຖ້າແຕກຕ່າງຈາກ Bearer ເລີ່ມຕົ້ນ ໃຫ້ໃຊ້ຊື່ຕົວຈິງຂອງມັນ. ຮັກສາ Authority, Audience ແລະ ພາລາມິເຕີ token ທີ່ມີຢູ່. endpoint ສາທາລະນະຂອງ metadata ແລະ signing key ສາມາດໃຊ້ຜູ້ສະໝັກຈາກ ລາຍຊື່ HTTP proxy ສຳລັບ WebProxy URL ທີ່ບໍ່ມີບັນຊີນີ້ ເມື່ອອະນຸຍາດໃຫ້ເຂົ້າເຖິງຜ່ານ proxy ສາທາລະນະ.
ໃນການຕັ້ງຄ່າມາດຕະຖານ post-configuration ສ້າງ backchannel ຈາກ handler ນີ້. ຖ້າ Backchannel ຄົບຖ້ວນ ຫຼື ConfigurationManager ກຳນົດເອງສະໜອງ retriever ແລ້ວ ໃຫ້ຕັ້ງຄ່າ object ນັ້ນແທນ. property ຂອງ handler ບໍ່ override ທັງສອງ.
ຕັ້ງບັນຊີ proxy ໃດໆໃນ WebProxy ກ່ອນໃຊ້ ບໍ່ແມ່ນໂດຍການປ່ຽນ Proxy ໃນ SendAsync. ຮັກສາ issuer, audience, ລາຍເຊັນ, ອາຍຸ ແລະ validator ເພີ່ມເຕີມ. ການເຂົ້າສູ່ລະບົບ OIDC ແລະ ການໄດ້ຮັບ token ແຍກຕ່າງຫາກ ຮັກສາເສັ້ນທາງ HTTP ຂອງຕົນ.