पासकीज़ एकीकरण के लिए नियंत्रक समापन बिंदु को परिभाषित करना

FrontendController.java में, लॉगिन और प्रोफ़ाइल पेजों के अनुरोधों को संभालने के लिए एंडपॉइंट परिभाषित करें। इंडेक्स() विधि को लॉगिन पेज प्रस्तुत करना चाहिए, जबकि प्रोफ़ाइल() विधि उपयोगकर्ता सत्र को मान्य करेगी और उपयोगकर्ता प्रोफ़ाइल प्रदर्शित करेगी।

@Controllerpublic class FrontendController {  @Value(\\\"${projectID}\\\")  private String projectID;  @Value(\\\"${apiSecret}\\\")  private String apiSecret;  private final CorbadoSdk sdk;  @Autowired  public FrontendController(      @Value(\\\"${projectID}\\\") final String projectID, @Value(\\\"${apiSecret}\\\") final String apiSecret)      throws StandardException {    final Config config = new Config(projectID, apiSecret);    this.sdk = new CorbadoSdk(config);  }  @RequestMapping(\\\"/\\\")  public String index(final Model model) {    model.addAttribute(\\\"PROJECT_ID\\\", projectID);    return \\\"index\\\";  }  ...

पासकी प्रोफाइल पेज जोड़ें

सफल प्रमाणीकरण के बाद, कॉर्बाडो यूआई घटक उपयोगकर्ता को पुनर्निर्देशित करता है। यह पृष्ठ उपयोगकर्ता के बारे में जानकारी प्रदर्शित करता है और लॉग आउट करने के लिए एक बटन प्रदान करता है। टेम्प्लेट फ़ोल्डर में, निम्न सामग्री के साथ एक फ़ाइल प्रोफ़ाइल.html जोड़ें:

                             

:/protected

User ID: [[${USER_ID}]]

Name: [[${USER_NAME}]]

Email: [[${USER_EMAIL}]]

इसके बाद, फ्रंटएंडकंट्रोलर.जावा के अंदर एनोटेशन के साथ एक प्रोफ़ाइल() विधि बनाएं:

@RequestMapping(\\\"/profile\\\")public String profile() {  return \\\"profile\\\";}

कॉर्बाडो सत्र सत्यापित करें

इससे पहले कि हम सत्र में एम्बेड की गई जानकारी का उपयोग कर सकें, हमें यह सत्यापित करना होगा कि सत्र वैध है। इसलिए हम cbo_short_session कुकी (सत्र) लेते हैं और Corbado Java SDK से सत्र सेवा का उपयोग करके उसके हस्ताक्षर को सत्यापित करते हैं। इसके साथ किया जा सकता है:

final SessionValidationResult validationResp =          sdk.getSessions().getAndValidateCurrentUser(cboShortSession);

कॉर्बाडो सत्र से डेटा प्राप्त करें

यह cbo_short_session कुकी लेता है, इसे मान्य करता है और उपयोगकर्ता आईडी और उपयोगकर्ता का पूरा नाम लौटाता है।

प्रोफ़ाइल मैपिंग के लिए अंतिम कोड इस प्रकार दिखता है:

  @RequestMapping(\\\"/profile\\\")  public String profile(      final Model model, @CookieValue(\\\"cbo_short_session\\\") final String cboShortSession) {    try {      // Validate user from token      final SessionValidationResult validationResp =          sdk.getSessions().getAndValidateCurrentUser(cboShortSession);      // get list of emails from identifier service      List emails;      emails = sdk.getIdentifiers().listAllEmailsByUserId(validationResp.getUserID());      //      model.addAttribute(\\\"PROJECT_ID\\\", projectID);      model.addAttribute(\\\"USER_ID\\\", validationResp.getUserID());      model.addAttribute(\\\"USER_NAME\\\", validationResp.getFullName());      // select email of your liking or list all emails      model.addAttribute(\\\"USER_EMAIL\\\", emails.get(0).getValue());    } catch (final Exception e) {      System.out.println(e.getMessage());      model.addAttribute(\\\"ERROR\\\", e.getMessage());      return \\\"error\\\";    }    return \\\"profile\\\";  }

आपका एप्लिकेशन लॉन्च हो रहा है

अपना स्प्रिंग बूट एप्लिकेशन प्रारंभ करने के लिए, /पूर्ण निर्देशिका पर जाएँ और चलाएँ:

./mvnw spring-boot:run

लॉगिन पेज को क्रियाशील देखने के लिए अपने ब्राउज़र में http://localhost:8080 पर जाएं।

\\\"How

निष्कर्ष

इस गाइड में दिखाया गया है कि कॉर्बाडो का उपयोग करके जावा स्प्रिंग बूट एप्लिकेशन में पासकी को कैसे एकीकृत किया जाए। इन चरणों का पालन करके, आप पासवर्ड रहित प्रमाणीकरण को कुशलतापूर्वक और सुरक्षित रूप से कार्यान्वित कर सकते हैं। सत्र प्रबंधन और मौजूदा अनुप्रयोगों में कॉर्बाडो को एकीकृत करने पर अधिक विस्तृत दस्तावेज़ीकरण के लिए, आधिकारिक कॉर्बाडो दस्तावेज़ देखें।

","image":"http://www.luping.net/uploads/20240911/172604988566e16e5d0837f.jpg","datePublished":"2024-09-11T18:18:05+08:00","dateModified":"2024-09-11T18:18:05+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > जावा स्प्रिंग बूट में पासकीज़ को कैसे एकीकृत करें

जावा स्प्रिंग बूट में पासकीज़ को कैसे एकीकृत करें

2024-09-11 को प्रकाशित
ब्राउज़ करें:443

जावा स्प्रिंग बूट में पासकीज़ का परिचय

पासकी पारंपरिक पासवर्ड पर भरोसा किए बिना उपयोगकर्ताओं को प्रमाणित करने का एक आधुनिक, सुरक्षित तरीका प्रदान करते हैं। इस गाइड में, हम आपको टेम्पलेट इंजन के रूप में थाइमेलिफ़ का उपयोग करके जावा स्प्रिंग बूट एप्लिकेशन में पासकी को एकीकृत करने के बारे में बताएंगे।

हम कार्यान्वयन प्रक्रिया को सरल बनाते हुए, बैकएंड से कनेक्ट करने के लिए कॉर्बाडो के पासकी-प्रथम यूआई घटक का उपयोग करेंगे। यह ट्यूटोरियल मानता है कि आपको HTML और जावा स्प्रिंग बूट की बुनियादी समझ है, और आपने Corbado Java SDK इंस्टॉल कर लिया है।

पूर्ण मूल ट्यूटोरियल देखें

जावा स्प्रिंग बूट में पासकीज़ को लागू करने के लिए पूर्वापेक्षाएँ

शुरू करने से पहले, सुनिश्चित करें कि आपके प्रोजेक्ट सेटअप में कॉर्बाडो जावा एसडीके शामिल है। इस ट्यूटोरियल के लिए, हम उदाहरण के तौर पर संस्करण 0.0.1 का उपयोग करेंगे। अपनी pom.xml फ़ाइल में निम्नलिखित निर्भरता जोड़ें:

com.corbadocorbado-java0.0.1

वैकल्पिक रूप से, यदि आप ग्रैडल का उपयोग कर रहे हैं, तो जोड़ें:

implementation "com.corbado:corbado-java:0.0.1"

अपना कॉर्बाडो खाता और प्रोजेक्ट सेट करना

शुरू करने के लिए, डेवलपर पैनल के माध्यम से कॉर्बाडो खाते के लिए साइन अप करें। सेटअप के दौरान, आप "कॉर्बाडो कम्प्लीट" का चयन करके और अपने परिवेश के लिए "वेब ऐप" चुनकर अपने प्रोजेक्ट को कॉन्फ़िगर करेंगे। एप्लिकेशन यूआरएल और रिलाइंग पार्टी आईडी प्रदान करना सुनिश्चित करें, जो आमतौर पर क्रमशः http://localhost:8080 और localhost पर सेट होता है। पासकी को सही डोमेन से जोड़ने के लिए ये सेटिंग्स महत्वपूर्ण हैं।

इसके बाद, कॉर्बाडो डेवलपर पैनल से एक एपीआई रहस्य उत्पन्न करें। यह उपयोगकर्ता डेटा पुनर्प्राप्ति सहित बैकएंड संचार के लिए आवश्यक होगा।

अपना जावा स्प्रिंग बूट पासकी एप्लिकेशन बनाना

स्प्रिंग बूट स्टार्टर रिपॉजिटरी को क्लोन करें:

git clone https://github.com/spring-guides/gs-spring-boot.git

इस प्रोजेक्ट के भीतर, HelloController.java का नाम बदलकर frontendController.java कर दें। यह नियंत्रक उपयोगकर्ता के अनुरोधों के आधार पर HTML फ़ाइलें प्रदान करेगा। अपनी एप्लिकेशन.प्रॉपर्टीज़ फ़ाइल में, प्रोजेक्टआईडी और एपीआईसीक्रेट को पर्यावरण चर के रूप में संग्रहीत करें (दोनों को कॉर्बाडो डेवलपर पैनल से प्राप्त किया जा सकता है)।

पासकीज़ लॉगिन पेज बनाना

/complete/src/main/resources/templates निर्देशिका में एक Index.html फ़ाइल बनाएं। यह फ़ाइल कॉर्बाडो पासकी-प्रथम यूआई घटक को एम्बेड करते हुए लॉगिन पेज के रूप में काम करेगी। यहां मूल संरचना है:



  

पासकीज़ एकीकरण के लिए नियंत्रक समापन बिंदु को परिभाषित करना

FrontendController.java में, लॉगिन और प्रोफ़ाइल पेजों के अनुरोधों को संभालने के लिए एंडपॉइंट परिभाषित करें। इंडेक्स() विधि को लॉगिन पेज प्रस्तुत करना चाहिए, जबकि प्रोफ़ाइल() विधि उपयोगकर्ता सत्र को मान्य करेगी और उपयोगकर्ता प्रोफ़ाइल प्रदर्शित करेगी।

@Controller
public class FrontendController {

  @Value("${projectID}")
  private String projectID;

  @Value("${apiSecret}")
  private String apiSecret;

  private final CorbadoSdk sdk;

  @Autowired
  public FrontendController(
      @Value("${projectID}") final String projectID, @Value("${apiSecret}") final String apiSecret)
      throws StandardException {
    final Config config = new Config(projectID, apiSecret);
    this.sdk = new CorbadoSdk(config);
  }

  @RequestMapping("/")
  public String index(final Model model) {
    model.addAttribute("PROJECT_ID", projectID);
    return "index";
  }
  ...

पासकी प्रोफाइल पेज जोड़ें

सफल प्रमाणीकरण के बाद, कॉर्बाडो यूआई घटक उपयोगकर्ता को पुनर्निर्देशित करता है। यह पृष्ठ उपयोगकर्ता के बारे में जानकारी प्रदर्शित करता है और लॉग आउट करने के लिए एक बटन प्रदान करता है। टेम्प्लेट फ़ोल्डर में, निम्न सामग्री के साथ एक फ़ाइल प्रोफ़ाइल.html जोड़ें:


  
    

:/protected

User ID: [[${USER_ID}]]

Name: [[${USER_NAME}]]

Email: [[${USER_EMAIL}]]

इसके बाद, फ्रंटएंडकंट्रोलर.जावा के अंदर एनोटेशन के साथ एक प्रोफ़ाइल() विधि बनाएं:

@RequestMapping("/profile")
public String profile() {
  return "profile";
}

कॉर्बाडो सत्र सत्यापित करें

इससे पहले कि हम सत्र में एम्बेड की गई जानकारी का उपयोग कर सकें, हमें यह सत्यापित करना होगा कि सत्र वैध है। इसलिए हम cbo_short_session कुकी (सत्र) लेते हैं और Corbado Java SDK से सत्र सेवा का उपयोग करके उसके हस्ताक्षर को सत्यापित करते हैं। इसके साथ किया जा सकता है:

final SessionValidationResult validationResp =
          sdk.getSessions().getAndValidateCurrentUser(cboShortSession);

कॉर्बाडो सत्र से डेटा प्राप्त करें

यह cbo_short_session कुकी लेता है, इसे मान्य करता है और उपयोगकर्ता आईडी और उपयोगकर्ता का पूरा नाम लौटाता है।

प्रोफ़ाइल मैपिंग के लिए अंतिम कोड इस प्रकार दिखता है:

  @RequestMapping("/profile")
  public String profile(
      final Model model, @CookieValue("cbo_short_session") final String cboShortSession) {
    try {
      // Validate user from token
      final SessionValidationResult validationResp =
          sdk.getSessions().getAndValidateCurrentUser(cboShortSession);
      // get list of emails from identifier service
      List emails;

      emails = sdk.getIdentifiers().listAllEmailsByUserId(validationResp.getUserID());

      //
      model.addAttribute("PROJECT_ID", projectID);
      model.addAttribute("USER_ID", validationResp.getUserID());
      model.addAttribute("USER_NAME", validationResp.getFullName());
      // select email of your liking or list all emails
      model.addAttribute("USER_EMAIL", emails.get(0).getValue());

    } catch (final Exception e) {
      System.out.println(e.getMessage());
      model.addAttribute("ERROR", e.getMessage());
      return "error";
    }
    return "profile";
  }

आपका एप्लिकेशन लॉन्च हो रहा है

अपना स्प्रिंग बूट एप्लिकेशन प्रारंभ करने के लिए, /पूर्ण निर्देशिका पर जाएँ और चलाएँ:

./mvnw spring-boot:run

लॉगिन पेज को क्रियाशील देखने के लिए अपने ब्राउज़र में http://localhost:8080 पर जाएं।

How to Integrate Passkeys into Java Spring Boot

निष्कर्ष

इस गाइड में दिखाया गया है कि कॉर्बाडो का उपयोग करके जावा स्प्रिंग बूट एप्लिकेशन में पासकी को कैसे एकीकृत किया जाए। इन चरणों का पालन करके, आप पासवर्ड रहित प्रमाणीकरण को कुशलतापूर्वक और सुरक्षित रूप से कार्यान्वित कर सकते हैं। सत्र प्रबंधन और मौजूदा अनुप्रयोगों में कॉर्बाडो को एकीकृत करने पर अधिक विस्तृत दस्तावेज़ीकरण के लिए, आधिकारिक कॉर्बाडो दस्तावेज़ देखें।

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/corbado/how-to-integrate-passkeys-into-java-spring-boot-3264?1 यदि कोई उल्लंघन है, तो हटाने के लिए कृपया [email protected] से संपर्क करें यह
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3