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 đến từ Microsoft.IdentityModel.Protocols; OpenIdConnectConfigurationRetriever đến từ gói OpenIdConnect của nó. Giữ máy khách HTTP sống trong suốt thời gian làm việc. Với các URL discovery và JWKS công khai nơi trung gian công cộng được phép, danh sách proxy HTTP cung cấp ứng viên cho URL WebProxy.

Tìm kiếm lấy discovery trước, sau đó dùng cùng retriever được cung cấp cho jwks_uri khi có. Những URL đó có thể ở các máy chủ khác nhau, và proxy phải cho phép cả hai.

Để xác thực proxy, hãy cấu hình tài khoản của WebProxy trước khi khởi tạo. Đây không phải bí mật máy khách của nhà phát hành.

Trong dịch vụ xác thực chạy lâu dài, hãy trao retriever này cho cơ chế bộ nhớ đệm và làm mới được hỗ trợ thay vì tải cấu hình cho mỗi yêu cầu đến. Giữ chính sách về nhà phát hành, tin cậy HTTPS và xác thực mã thông báo độc lập với lựa chọn vận chuyển này.

Bài viết liên quan