ব্ৰাউজাৰে পৰিচয় প্ৰদানকাৰীক লগ ধৰে, তাৰ পিছত এপ্লিকেচনে ঘূৰাই দিয়া অনুমোদন ক'ড বিনিময় কৰোঁতে লগইন বিফল হয়। সেই বিনিময়টো এপ্লিকেচন চাৰ্ভাৰৰ পৰা ওলোৱা অনুৰোধ, যাৰ নিজৰ HTTP ক্লায়েন্ট আছে।

Spring Security 6.5 ত উপলব্ধ RestClient-ভিত্তিক API ৰ বাবে, অনুমোদন ক'ড টোকেন সঁহাৰি ক্লায়েন্টলৈ প্ৰক্সি-সজাগ অনুৰোধ ফেক্টৰী যোগান ধৰক:

SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
factory.setProxy(new java.net.Proxy(
    java.net.Proxy.Type.HTTP,
    new java.net.InetSocketAddress("proxy.example", 8080)));
factory.setConnectTimeout(5000);
factory.setReadTimeout(15000);

RestClient tokenHttp = RestClient.builder()
    .requestFactory(factory)
    .messageConverters(converters -> {
        converters.clear();
        converters.add(new FormHttpMessageConverter());
        converters.add(new OAuth2AccessTokenResponseHttpMessageConverter());
    })
    .defaultStatusHandler(new OAuth2ErrorResponseErrorHandler())
    .build();

RestClientAuthorizationCodeTokenResponseClient tokenClient =
    new RestClientAuthorizationCodeTokenResponseClient();
tokenClient.setRestClient(tokenHttp);

ৰূপান্তৰক আৰু ত্ৰুটি পৰিচালক শ্ৰেণীয়ে Spring Security ৰ নথিভুক্ত টোকেন অনুৰোধৰ আচৰণ ৰক্ষা কৰে। কেৱল এটা অসম্পৰ্কিত JSON API ৰ বাবে সংৰূপিত সাধাৰণ RestClient সমতুল্য প্ৰতিস্থাপন নহয়।

একে tokenClient ক বিদ্যমান সুৰক্ষা সংৰূপত সংযোগ কৰক:

http.oauth2Login(login -> login
    .tokenEndpoint(token -> token
        .accessTokenResponseClient(tokenClient)));

এইবোৰ সংৰূপ খণ্ড, এনে এপ্লিকেচনৰ বাবে যি ইতিমধ্যে তাৰ ক্লায়েন্ট পঞ্জীয়ন আৰু SecurityFilterChain ৰাখে। ইহঁতে প্ৰমাণীকৰণ নোহোৱা HTTP প্ৰক্সি বাছনি কৰে; শপতনামা বিচৰা প্ৰক্সিয়ে বাছনি কৰা পৰিবহনৰ মিলা প্ৰমাণীকৰণ সংৰূপৰ প্ৰয়োজন। অনুমোদিত ৰাজহুৱা পথত ৰাজহুৱাভাৱে উপলব্ধ HTTPS টোকেন এণ্ডপইণ্টৰ বাবে, HTTP প্ৰক্সি তালিকাৰ পৰা এটা HTTP প্ৰৱিষ্টিয়ে সেই একাউণ্ট-নোহোৱা প্ৰক্সি ঠিকনা পূৰণ কৰিব পাৰে।

প্ৰক্সি হ'ষ্টক তাৰ প'ৰ্ট আৰু URL আঁচনিৰ পৰা পৃথক ৰাখক। পৰিচয় প্ৰদানকাৰীৰ টোকেন URI গন্তব্য হিচাপে ৰাখক। উদাহৰণে প্ৰমাণপত্ৰ বৈধতা প্ৰতিস্থাপন নকৰে।

পিছৰ অনুৰোধসমূহৰ নিজৰ মালিকীস্বত্ব পৰীক্ষা লাগে। UserInfo আহৰণ, ৰিফ্ৰেছ টোকেন বিনিময়, client-credentials অনুদান আৰু সুৰক্ষিত API কলত অন্য ক্লায়েন্ট বস্তু ব্যৱহাৰ কৰিব পাৰি। সেই কাৰ্যইয়ো পথৰ প্ৰয়োজন হ'লে মিলা সমৰ্থিত ক্লায়েন্ট সংৰূপ কৰক। Spring Security 6.5 ৰ প্ৰতিক্ৰিয়াশীল client_credentials প্ৰবাহৰ বাবে, প্ৰতিক্ৰিয়াশীল টোকেন ক্লায়েন্ট আৰু তাৰ অনুদান প্ৰদানকাৰী পৃথকে সংৰূপ কৰক।

OAuth2RestTemplate আৰু AccessTokenProvider ব্যৱহাৰ কৰা পুৰণি উদাহৰণ পুৰণি Spring Security OAuth প্ৰকল্পৰ। ক'ড অভিযোজিত কৰাৰ আগতে ইনষ্টল কৰা এপ্লিকেচনে ব্যৱহাৰ কৰা API বাছনি কৰক; সেই বস্তুবোৰ এই সংৰূপত নিমিশ্ৰিত কৰিব।

সম্পৰ্কিত প্ৰবন্ধ