HttpClient 5 ৰ সৈতে RestTemplate প্ৰক্সি ক্ৰেডেন্সিয়েল সীমিত কৰক
Spring 6 RestTemplate লৈ পৰিবহন দিয়াৰ আগতে Apache HttpClient 5 ক্ৰেডেন্সিয়েল প্ৰক্সি হোষ্ট আৰু পৰ্টত সীমিত কৰক।
প্ৰক্সি লগইন পৰিবহনৰ ক্ৰেডেন্সিয়েল প্ৰদানকাৰীৰ অন্তৰ্গত। Spring 6 ৰ সৈতে Apache HttpClient 5 ব্যৱহাৰ কৰিলে, সেই একাউণ্টটো মধ্যস্থতাকাৰীত সীমিত কৰক:
var proxy = new org.apache.hc.core5.http.HttpHost(
"http", "proxy.example", 8080);
var credentials = new org.apache.hc.client5.http.impl.auth
.BasicCredentialsProvider();
credentials.setCredentials(
new org.apache.hc.client5.http.auth.AuthScope(proxy),
new org.apache.hc.client5.http.auth.UsernamePasswordCredentials(
proxyUser, proxyPassword.toCharArray()));
var http = org.apache.hc.client5.http.impl.classic.HttpClients.custom()
.setProxy(proxy)
.setDefaultCredentialsProvider(credentials)
.build();
var factory = new org.springframework.http.client
.HttpComponentsClientHttpRequestFactory(http);
var rest = new org.springframework.web.client.RestTemplate(factory);এপ্লিকেশনে proxyUser আৰু proxyPassword মান যোগান ধৰে আৰু HTTP ক্লায়েন্টৰ জীৱনচক্ৰৰ মালিক। কল স্থানত আন এটা ডিফল্ট টেমপ্লেট নিৰ্মাণ নকৰি কৰ্মভাৰৰ বাবে rest পুনৰ ব্যৱহাৰ কৰক।
AuthScope এ এই ক্ৰেডেন্সিয়েল ক'ত বৈধ সেইয়া সীমিত কৰে। উদাহৰণে সাধাৰণ ব্যৱহাৰকাৰীনাম/পাছৱৰ্ড ক্ৰেডেন্সিয়েল যোগান ধৰে; BasicCredentialsProvider নামে প্ৰতিটো প্ৰত্যাহ্বানক HTTP Basic স্কিম ব্যৱহাৰ কৰিবলৈ বাধ্য নকৰে।
HTTPS গন্তব্যৰ সৈতে, পৰিবহনে CONNECT ৰ সময়ত প্ৰক্সি প্ৰত্যাহ্বানৰ উত্তৰ দিব পাৰে, এপ্লিকেশ্যনৰ এনক্ৰিপ্টেড HTTP অনুৰোধৰ আগতেই। Proxy-Authorization যোগ কৰা সাধাৰণ গন্তব্য ইন্টাৰচেপ্টৰ সেই আলোচনাৰ সমতুল্য নহয়।
যিকোনো গন্তব্য একাউণ্ট সুকীয়াকৈ সংৰূপ কৰক। যদি প্ৰক্সিয়ে অনুৰোধ নাকচ কৰিয়েই থাকে, তেন্তে ইয়াৰ ঘোষিত প্ৰমাণীকৰণ স্কিম আৰু প্ৰকৃত হোষ্ট আৰু পৰ্ট ৰাখক। আন এণ্ডপইণ্টৰ বাবে সীমিত ক্ৰেডেন্সিয়েল কেৱল পাছৱৰ্ড শুদ্ধ হোৱাৰ বাবে নিমিলিব নহয়।