अधिगम अभिलेख
RODMENA LRS
अनुरोध पर उपलब्धसीखने के लिए साक्ष्य स्टोर, जो यह रिकॉर्ड करता है कि एक बार क्या हुआ था और उसे पूरी तरह सटीक बनाए रखता है।
RODMENA LRS एक लर्निंग रिकॉर्ड स्टोर (Learning Record Store) है। यह xAPI फ़ॉर्मेट में सीखने की गतिविधि के रिकॉर्ड प्राप्त करता है, उन्हें बिना किसी बदलाव के संग्रहीत करता है और मानक xAPI क्वेरी इंटरफ़ेस के माध्यम से लौटाता है। यह xAPI 1.0.3 और xAPI 2.0 के लिए ADL LRS Conformance Test Suite के सभी परीक्षणों को पास करता है। डेटाबेस स्वयं ग्राहकों के रिकॉर्ड्स को एक-दूसरे से अलग रखता है। रिकॉर्ड की सामग्री को संग्रहीत स्थिति में एन्क्रिप्ट किया जाता है। शिक्षार्थी पहचानकर्ताओं को केवल एक कीड (keyed), छद्मनाम (pseudonymous) रूप में संग्रहीत किया जाता है। संग्रहीत रिकॉर्ड में फेरबदल नहीं किया जा सकता, यद्यपि अनुरोध पर किसी शिक्षार्थी का व्यक्तिगत डेटा मिटाया जा सकता है और डेटा मिटाने की इस प्रक्रिया को एक छेड़छाड़-सूचक लॉग में दर्ज किया जाता है।
यह किसके लिए है। लर्निंग प्लेटफ़ॉर्म और प्रशिक्षण प्रदाता जिन्हें शिक्षार्थी की गतिविधि के रिकॉर्ड के लिए एक मानक-अनुरूप (conformant) स्टोर की आवश्यकता होती है। यह एक बैक-एंड सेवा है जिस पर उत्पाद बनाए जाते हैं और वे इसे अपने सर्वर से कॉल करते हैं, तथा शिक्षार्थी व ब्राउज़र इससे सीधे संवाद नहीं करते हैं। REES इसका पहला उपभोक्ता है।
- स्थिति
- अनुरोध पर उपलब्ध
- किसका हिस्सा है
- पेशकशें
- लाइसेंस
- स्वामित्वाधीन। कॉपीराइट RODMENA LIMITED, सर्वाधिकार सुरक्षित।
- अनुरूपता
- 1,365 xAPI 1.0.3 अनुरूपता परीक्षण, सभी उत्तीर्ण
- 1,435 xAPI 2.0 अनुरूपता परीक्षण, सभी उत्तीर्ण
- 23 सितंबर 2026 को सत्यापित
- टैग
- xAPIलर्निंग रिकॉर्डअनुरूपतामल्टी-टेनेंटडेटा संरक्षणऑडिट ट्रेल
तकनीकी विशिष्टता
तकनीकी मूल्यांकनकर्ता (technical assessor) के लिए लिखा गया। जिस पंक्ति में कोई मापा गया मान (measured value) नहीं है, उसे छोड़ दिया गया है।
मानक
- xAPI 1.0.3
- ADL Experience API Specification, संस्करण 1.0.3
- xAPI 2.0
- IEEE 9274.1.1-2023
- संस्करण चयन
- प्रति अनुरोध, X-Experience-API-Version हेडर द्वारा। 1.0.x और 2.0.x स्वीकार किए जाते हैं, तथा अनुपलब्ध या अज्ञात वर्शन को 400 के साथ अस्वीकार कर दिया जाता है।
- अनुरूपता सूट
- ADL LRS Conformance Test Suite, अंतिम बार 23 सितंबर 2026 को चलाया गया
- अनुरूपता परिणाम
- xAPI 1.0.3: 1,365 में से 1,365। xAPI 2.0: 1,435 में से 1,435।
- सूट से परे
- जहाँ सुइट यह बताता है कि वह किसी आवश्यकता का परीक्षण नहीं करता है, वहाँ एक समर्पित जाँच उसे कवर करती है। हमें सुइट के छह ऐसे परीक्षण भी मिले जो कुछ भी सत्यापित नहीं करते हैं और हमने उन्हें अलग से कवर किया।
- डिज़ाइन के अनुसार
- OAuth 1.0 अप्रचलित (deprecated) है और इसे स्वीकार नहीं किया जाता है। इस सेवा पर बने उत्पाद इसे सर्वर-टू-सर्वर कॉल करते हैं। यह ब्राउज़र से क्रॉस-ओरिजिन कॉल स्वीकार नहीं करता है।
इंटरफ़ेस
- संसाधन
- Statements, State, Activity Profile, Agent Profile, Activities, Agents और About। सभी GET रूट्स HEAD का भी उत्तर देते हैं।
- प्रमाणीकरण
- सेवा द्वारा जारी किए गए क्रेडेंशियल्स का उपयोग करते हुए HTTP Basic। सीक्रेट्स 256 बिट्स के होते हैं और उन्हें केवल एक कीड वेरिफ़ायर (keyed verifier) के रूप में संग्रहीत किया जाता है। अज्ञात, अक्षम और समाप्त हो चुके क्रेडेंशियल्स को बाइट-समान 401 प्रतिक्रियाएं मिलती हैं।
- वैकल्पिक अनुरोध सिंटैक्स
- 1.0.3 के अंतर्गत समर्थित और 2.0 के अंतर्गत अस्वीकृत, क्योंकि वह विशिष्टता ऐसा अनिवार्य करती है।
- हस्ताक्षरित कथन
- RS256, RS384 और RS512 के साथ JWS, प्रमाणपत्र शामिल होने पर सत्यापित किया जाता है।
- अटैचमेंट
- multipart/mixed, SHA-2 हैश द्वारा मिलान किया गया। प्रति अटैचमेंट 5 MiB और प्रति स्टेटमेंट बॉडी 1 MiB, दोनों कॉन्फ़िगर करने योग्य।
- पेजिंग
- हस्ताक्षरित स्टेटलेस कर्सर जो रीस्टार्ट के बाद भी मान्य रहते हैं। सभी स्टेटमेंट प्रतिक्रियाओं में xAPI कंसिस्टेंसी हेडर शामिल होता है।
- इडेम्पोटेंसी
- समान स्टेटमेंट आईडी को दोबारा भेजने पर उसे बिना दोहराव के स्वीकार किया जाता है। परस्पर विरोधी स्टेटमेंट आईडी को 409 के साथ अस्वीकार कर दिया जाता है।
- दर सीमित करना
- प्रति क्रेडेंशियल, साथ ही विफल प्रमाणीकरण के लिए प्रति क्लाइंट एड्रेस एक अलग बजट।
पृथक्करण और सुरक्षा
- टेनेंट पृथक्करण
- PostgreSQL पंक्ति-स्तरीय सुरक्षा, टेनेंट डेटा रखने वाली प्रत्येक तालिका पर सक्षम और बलपूर्वक लागू (forced)। एप्लिकेशन डेटाबेस भूमिका किसी भी चीज़ की स्वामी नहीं है और वह इसे बायपास नहीं कर सकती। प्रत्येक ट्रांज़ैक्शन अपना टेनेंट केवल प्रमाणित क्रेडेंशियल से लेता है।
- पृथक्करण, लागू
- यदि किसी भी टेनेंट तालिका, या रनटाइम पर बनाए गए किसी भी विभाजन में यह नीति नहीं है, तो एक कैटलॉग परीक्षण बिल्ड को विफल कर देता है।
- विश्रामावस्था में एन्क्रिप्शन
- कथन निकायों, दस्तावेज़ों, अनुलग्नकों, गतिविधि परिभाषाओं और क्रेडेंशियल पहचानों पर AES-256-GCM, HKDF-SHA256 के साथ व्युत्पन्न प्रति-रिकॉर्ड कुंजी के अंतर्गत।
- सिफरटेक्स्ट बाइंडिंग
- एक सिफ़रटेक्स्ट (ciphertext) अपनी पंक्ति की पहचान से बाध्य (bound) होता है और यदि इसे किसी अन्य पंक्ति में ले जाया जाता है, तो यह डिक्रिप्ट नहीं होगा।
- कुंजी अभिरक्षा
- तीन कुंजियाँ डेटाबेस के बाहर, 0600 कुंजी फ़ाइलों में या एनवायरनमेंट में रखी गई हैं। कोई डिफ़ॉल्ट कुंजी नहीं है, और सेवा उनके बिना शुरू होने से इनकार कर देती है।
- कुंजी रोटेशन
- इंडेक्स कुंजी एक ऑफ़लाइन, पुनः आरंभ करने योग्य (resumable) री-की के माध्यम से रोटेट होती है, और क्रेडेंशियल कुंजी को रोटेट करने से क्रेडेंशियल फिर से जारी हो जाते हैं। क्योंकि रिकॉर्ड उस कुंजी की id संग्रहीत करते हैं जिसने उन्हें लिखा था, इसलिए रोटेशन के लिए किसी डेटा माइग्रेशन की आवश्यकता नहीं होती है।
- शिक्षार्थी पहचानकर्ता
- प्रति-टेनेंट कुंजी के तहत केवल HMAC-SHA256 टोकन के रूप में रखा जाता है, और दो टेनेंट में एक ही शिक्षार्थी दो असंबंधित टोकन उत्पन्न करता है। कोई भी कॉलम स्पष्ट रूप से (in clear) किसी शिक्षार्थी की पहचान नहीं रखता है।
- क्रेडेंशियल स्कोप
- statements/write, statements/read, statements/read/mine, state, profile, all/read और all का xAPI स्कोप सेट। सबसे सीमित स्कोप केवल उन्हीं स्टेटमेंट को पढ़ता है जिन्हें उस क्रेडेंशियल ने स्वयं लिखा था।
- अपरिवर्तनीयता
- डेटाबेस ट्रिगर UPDATE, DELETE और TRUNCATE को अस्वीकार करके स्टेटमेंट और अटैचमेंट को केवल-परिशिष्ट (append-only) बनाए रखते हैं। केवल शून्यकरण (voiding) फ़्लैग और मिटाना (erasure) ही अनुमत परिवर्तन हैं।
- डेटाबेस ट्रांसपोर्ट
- पूर्ण प्रमाणपत्र और होस्टनाम सत्यापन के साथ TLS अनिवार्य है, और सेवा इसके बिना शुरू होने से इनकार करती है।
- अनुरोध ऑडिट इवेंट
- प्रत्येक अनुरोध के लिए एक संरचित इवेंट, जिसमें अनुरोध आईडी, क्रेडेंशियल कुंजी आईडी, टेनेंट, मेथड, संसाधन, स्थिति, रिकॉर्ड संख्या, अवधि और फ़िल्टर नाम शामिल होते हैं। लॉग किए जाने से पहले फ़िल्टर में मौजूद शिक्षार्थी मानों को टोकनाइज़ किया जाता है।
- छेड़छाड़-सूचकता
- इरेज़र लॉग हैश-चेन्ड है, और एक ही कमांड पहली कड़ी से लेकर आखिरी कड़ी तक पूरी श्रृंखला को सत्यापित करता है।
डेटा संरक्षण
- मिटाना
- एक स्यूडोनिमाइज़ करने वाला रिडैक्शन। शिक्षार्थी को किसी भी ऐसी स्थिति में यादृच्छिक छद्म नाम (pseudonym) से बदल दिया जाता है जहाँ कोई स्टेटमेंट उनका नाम दे सकता है, फ़्री-टेक्स्ट प्रतिक्रियाएँ और अटैचमेंट हटा दिए जाते हैं, और उनके State और Agent Profile दस्तावेज़ हटा दिए जाते हैं। भौतिक विलोपन (physical deletion) का उपयोग नहीं किया जाता है।
- मिटाना, अभिलिखित
- मिटाने की प्रक्रिया (Erasures) को हैश-चेन्ड लॉग में लिखा जाता है। चूँकि कमांड ऐसे किसी भी मिटाने के प्रयास को अस्वीकार कर देता है जो किसी से मेल नहीं खाता, इसलिए गलत टाइप किया गया शिक्षार्थी पूर्ण किए गए विलोपन के रूप में मान्य नहीं हो सकता।
- बैकअप
- मिटाना तब पूर्ण होता है जब उससे पहले लिए गए बैकअप समाप्त हो जाते हैं। पुनर्स्थापन के बाद, मिटाने का लॉग पुनः चलाया जाता है।
- डेटा प्रतिधारण
- कैलेंडर माह के अनुसार, प्रति इंस्टेंस। माह को अलग किया जाता है, प्रति टेनेंट एक फ़ाइल के रूप में निर्यात किया जाता है, और हटा दिया जाता है। हटाना तब तक अस्वीकार किया जाता है जब तक निर्यातित पंक्ति गणना मेल न खाए।
- प्रतिधारण, प्रति ग्राहक
- जिस ग्राहक को अपनी स्वयं की प्रतिधारण अवधि चाहिए, उसे अपना स्वयं का इंस्टेंस चाहिए।
- निकास पर निर्यात
- मानक xAPI इंटरफ़ेस के माध्यम से, कोई भी ग्राहक xAPI JSON के रूप में अपने सभी रिकॉर्ड और उनके अटैचमेंट को पेज दर पेज देख सकता है और उन सभी को प्राप्त कर सकता है।
- डेटा रेज़िडेंसी
- एक इंस्टेंस उस क्षेत्र में चलता है जिसकी अनुबंध में आवश्यकता होती है। सेवा को केवल एक PostgreSQL डेटाबेस की आवश्यकता होती है।
संचालन और सत्यापन
- परिनियोजन मॉडल
- एक साझा मल्टी-टेनेंट इंस्टेंस, या प्रत्येक ग्राहक के लिए एक समर्पित इंस्टेंस।
- प्रोब सिद्ध करते हैं कि वे विफल हो सकते हैं
- हार्नेस 47 व्यवहार संबंधी प्रोब्स में से किसी से भी पास की गणना तब तक नहीं करेगा जब तक कि उस प्रोब को जानबूझकर खराब किए गए बिल्ड के विरुद्ध FAIL होते हुए न दिखाया गया हो। हम खराब बिल्ड के विरुद्ध अनुरूपता सुइट भी चलाते हैं।
यह क्या करता है
-
अनुरूपता-परीक्षित
xAPI 1.0.3 के लिए ADL LRS Conformance Test Suite के सभी 1,365 परीक्षण, और xAPI 2.0 के लिए सभी 1,435 परीक्षण उत्तीर्ण करता है।
-
रिकॉर्ड कभी नहीं बदलते
एक बार संग्रहीत होने के बाद, स्टेटमेंट को संपादित या अधिलेखित नहीं किया जा सकता, केवल अमान्य किया जा सकता है, जैसा कि मानक निर्दिष्ट करता है।
-
डिज़ाइन से पृथक
एप्लिकेशन कोड के अतिरिक्त, डेटाबेस द्वारा लागू किए जाने वाले नियमों के माध्यम से ग्राहकों के रिकॉर्ड अलग रखे जाते हैं।
-
एन्क्रिप्टेड और छद्मनामी
अभिलेख की सामग्री विश्रामावस्था में एन्क्रिप्ट की जाती है, और शिक्षार्थी पहचानकर्ताओं को केवल कुंजीयुक्त टोकन के रूप में अनुक्रमित किया जाता है।
-
ऑडिट ट्रेल के साथ मिटाना
अनुरोध पर, किसी शिक्षार्थी का व्यक्तिगत डेटा उसके रिकॉर्ड से हटा दिया जाता है, और डेटा मिटाने की इस प्रविष्टि को छेड़छाड़-सूचक, हैश-चेन्ड लॉग में दर्ज किया जाता है।
-
स्कोप किए गए क्रेडेंशियल
एक क्रेडेंशियल केवल उन ऑपरेशन्स तक सीमित होता है जिनकी उसे आवश्यकता होती है, यहाँ तक कि केवल उन्हीं रिकॉर्ड्स को पढ़ने तक जो उसने स्वयं लिखे थे।
दस्तावेज़ीकरण, पायलट या एकीकरण के लिए, हमसे संपर्क करें।