2013-12-11 25 views
5

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

उत्तर

4

Shibboleth पर एक नज़र डालें, जो एक SAML पहचान प्रदाता के कार्यान्वयन का उपयोग करने के लिए तैयार है। तथ्य यह है, आप पहले से ही एक आवेदन है, जो आप कार्य करने के लिए के रूप में पहचान प्रदाता आपके पास दो विकल्प प्रदान करता है चाहते हैं कि:

  1. कॉन्फ़िगर Shibboleth एक प्रमाणीकरण स्रोत के रूप में आप उपयोगकर्ता डेटा मॉडल का उपयोग करने के लिए (यकीन नहीं करता है, तो यह संभव है)
  2. जावा लाइब्रेरी OpenSAML-Java का उपयोग करें जिसका उपयोग शिबबोलेथ को लागू करने के लिए किया जाता है। यह केवल SAML 2.0 की वेब एसएसओ प्रोफ़ाइल के आसपास SAML Assertions के हैंडलिंग (निर्माण, सत्यापन, एक्सचेंज) प्रदान करता है। आपको App2 और App1 में अपने आप पर वेब अनुरोध पुनर्निर्देशन की प्रक्रिया बनाना है।

SAML बहुत दर्द रहित नहीं है, इसके अलावा यह एक व्यापक मानक है जो ओपनआईडी या ओथ जैसे अन्य सरल मानकों के लिए एक उदाहरण के रूप में कार्य करता है (उनके पास कुछ सिद्धांत सामान्य हैं, लेकिन निश्चित रूप से बहुत आसान हैं)।

1
: इसका बहुत ज्यादा एक ही कहानी की तुलना में यह CORBA बनाम जावा RMI के साथ था

यहाँ एक अच्छा प्रारंभिक बिंदु कुछ बुनियादी समझ क्या जब SAML Web Browser SSO Profile का उपयोग किया जाता हासिल करने के लिए है

आपके प्रश्न के दो भाग हैं।

आप चाहते हैं:

  • जावा SAML सर्वर (STS)
  • जावा SAML ग्राहक

एक एसटीएस लेखन एक गैर तुच्छ मुद्दा है। मौजूदा कार्यान्वयन का उपयोग करके आप बेहतर हो सकते हैं। OpenAM एक और संभावना है। यह पहचान भंडारों के लिए कई विकल्पों का समर्थन करता है।

ग्राहक के संदर्भ में, SAML : SAML connectivity/toolkit देखें।

संबंधित मुद्दे