क्लाइंट पहचान और कैशिंग वैधता अवधि के साथ SOVD प्राधिकरण जाँच के परिणाम को बंडल करता है।
एआई-जनितअसत्यापितमॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 6613e74c168cउद्गमखुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल
क्लाइंट पहचान और कैशिंग वैधता अवधि के साथ SOVD प्राधिकरण जाँच के परिणाम को बंडल करता है।
संरचना ara::diag::SovdAuthorization::ValidateAuthorizationOutput मॉड्यूल diag[SWS_DM_01927] में प्राधिकरण जाँच ValidateAuthorization() के रिटर्न प्रकार के रूप में कार्य करती है। यह रूटीन या लॉक जैसे अस्थायी संसाधनों तक पहुंच की पहचान और रखरखाव के लिए वैकल्पिक क्लाइंट पहचान [SWS_DM_01819] और साथ ही सत्यापन को कैश करने के लिए वैधता समय [SWS_DM_01820] प्रसारित करती है। यदि पहचान फ़ील्ड खाली रहता है, तो प्रेषित टोकन समाप्त या अमान्य होते ही संरक्षित संसाधनों तक पहुंच समाप्त हो जाती है [SWS_DM_01819]।
संदर्भ
संरचना ara::diag::SovdAuthorization::ValidateAuthorizationOutput AUTOSAR Adaptive Platform [SWS_DM_01927]AUTOSAR_AP_SWS_Diagnostics §8.52.2 “Struct: ValidateAuthorizationOutput” के मॉड्यूल diag में ऑपरेशन ValidateAuthorization() के लिए एक मानकीकृत रिटर्न प्रकार के रूप में कार्य करती है। यह सेवा-उन्मुख डायग्नोस्टिक एक्सेस (SOVD) के दौरान एप्लिकेशन-साइड प्राधिकरण लॉजिक और Diagnostic Management के बीच एक इंटरफ़ेस तत्व के रूप में कार्य करती है। जैसे ही कोई बाहरी डायग्नोस्टिक क्लाइंट SOVD टोकन के माध्यम से वाहन संसाधनों तक पहुंच का अनुरोध करता है, Diagnostic Management सत्यापन का अनुरोध करता है। संरचना इस जाँच के दो प्रमुख परिणाम प्रेषित करती है: क्लाइंट का एक वैकल्पिक पहचानकर्ता (identity) [SWS_DM_01819] और प्राधिकरण के कैशिंग के लिए वैधता समय (validUntil) [SWS_DM_01820]।
जीवनचक्र
एक डेटा संरचना (Plain Struct) के रूप में, ValidateAuthorizationOutput का एक क्षणिक जीवन चक्र होता है [SWS_DM_01927]। इसे प्राधिकरण जाँच के एप्लिकेशन-विशिष्ट कार्यान्वयन द्वारा इंस्टेंटिएट किया जाता है, सत्यापन परिणामों से भरा जाता है, और कॉलिंग Diagnostic Management को वैल्यू द्वारा (Return-by-Value या मूव-सिमेंटिक्स) पास किया जाता है। संरचना अपने डेटा फ़ील्ड identity (प्रकार ara::core::Optional<ara::core::String>[SWS_DM_01819]) और validUntil (प्रकार std::chrono::system_clock::time_point[SWS_DM_01820]) को प्रत्यक्ष सदस्य चर के रूप में रखती है। ऑब्जेक्ट में स्वयं कोई आंतरिक स्थितियां या स्थिति संक्रमण नहीं होते हैं, लेकिन फ़ील्ड validUntil के माध्यम से यह Diagnostic Management में बनाए रखी गई प्राधिकरण स्थिति (कैशिंग) के जीवनकाल को सीधे निर्धारित करता है [SWS_DM_01820]। समवर्तीता के संबंध में, इंस्टेंस सत्यापन कॉल के भीतर स्थानीय रूप से थ्रेड में बनाया जाना चाहिए; एक ही संरचना के लिए समवर्ती राइट एक्सेस निर्दिष्ट नहीं है (व्याख्या: डेटा रेस से सुरक्षा कॉलिंग वातावरण की ज़िम्मेदारी है)। प्रश्न Q-0579316b13023b31 (खुला) फ्रेमवर्क द्वारा मूल्यांकन के बाद, स्कोप से बाहर निकलते ही संरचना इंस्टेंस का जीवन चक्र नियमित रूप से समाप्त हो जाता है।
उपयोग पथ
ValidateAuthorizationOutput के उपयोग का विशिष्ट क्रम निम्नलिखित चरणों में विभाजित है:
अनुरोध प्राप्त करना: एक बाहरी क्लाइंट सुरक्षा टोकन के साथ Diagnostic Management को SOVD डायग्नोस्टिक अनुरोध भेजता है।
सत्यापन का अनुरोध करना: Diagnostic Management टोकन को ValidateAuthorization() के माध्यम से एप्लिकेशन-विशिष्ट प्राधिकरण इंस्टेंस को अग्रेषित करता है।
परिणाम का मूल्यांकन करना: Diagnostic Management संरचना को लेता है, validUntil तक सत्यापन परिणाम को बफर करता है, और अस्थायी संसाधनों (जैसे चल रहे डायग्नोस्टिक रूटीन या लॉक) को प्रेषित पहचान से संबद्ध करता है [SWS_DM_01819][SWS_DM_01820]।
अनुक्रम आरेख: प्राधिकरण जाँच और बफरिंग के लिए सत्यापन प्रक्रिया और ValidateAuthorizationOutput का रिटर्न। स्रोत: [SWS_DM_01819], [SWS_DM_01820], [SWS_DM_01927]।
त्रुटि परिदृश्य
यद्यपि ValidateAuthorizationOutput एक साधारण डेटा प्रकार के रूप में अपने स्वयं के कोई त्रुटि कोड या अपवाद नहीं फेंकता है, लेकिन गलत या अपूर्ण असाइनमेंट परिचालन त्रुटियों का कारण बनते हैं:
टोकन नवीनीकरण पर अनुपलब्ध क्लाइंट पहचान: यदि identity खाली छोड़ दिया जाता है (खाली वैकल्पिक), तो क्लाइंट केवल तब तक अस्थायी संसाधनों तक पहुंचता है जब तक कि वही टोकन मौजूद रहता है और validUntil समाप्त नहीं होता है [SWS_DM_01819]। यदि क्लाइंट किसी समाप्त हो चुके टोकन को नवीनीकृत करता है, तो सेट पहचान के बिना Diagnostic Management इसे पहचान नहीं सकता है; सक्रिय रूटीन या मौजूदा लॉक तक पहुंच खो जाती है [SWS_DM_01819]।
अमान्य या समाप्त टाइमस्टैम्प: यदि validUntil में पास किया गया समय पहले ही बीत चुका है, तो Diagnostic Management में कैशिंग तुरंत छोड़ दी जानी चाहिए (व्याख्या: प्रत्येक बाद का क्लाइंट अनुरोध एक नए सत्यापन कॉल को बाध्य करता है)। प्रश्न Q-c715941f9302fd13 (खुला)
पहचान टकराव: यदि प्राधिकरण एप्लिकेशन गलती से विभिन्न क्लाइंट्स के लिए समान पहचान स्ट्रिंग लौटाता है, तो Diagnostic Management इन्हें समान मानता है [SWS_DM_01819], जिससे लॉक और अस्थायी संसाधनों का अनधिकृत अधिग्रहण हो सकता है।
यह गाइड AUTOSAR Adaptive Platform R25-11 विनिर्देश (मॉड्यूल diag) के आधार पर AI द्वारा क्यूरेट किया गया था।
UML क्लास आरेख
Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.
Identity of the client. This identity string if present will be used to re-identify a client even if it uses a new token (e.g. because the old one expired) so that it has access to the temporary resources (e.g. running routines, locks, etc.). If the identity string is the same as one returned earlier, the client will be considered identical. Depending on the security concept it could be for example the ’client_id’, the ’sub’, or a combination of both. If the identity string is not provided, the client will only have access to the temporary resources as long as it provides the same access token and validUntil is not yet expired.
Time until this validation may be reused. The point in time until which the authentication state may be reused if the same token is provided by the client (caching).
Identity of the client. This identity string if present will be used to re-identify a client even if it uses a new token (e.g. because the old one expired) so that it has access to the temporary resources (e.g. running routines, locks, etc.). If the identity string is the same as one returned earlier, the client will be considered identical. Depending on the security concept it could be for example the ’client_id’, the ’sub’, or a combination of both. If the identity string is not provided, the client will only have access to the temporary resources as long as it provides the same access token and validUntil is not yet expired.
Time until this validation may be reused. The point in time until which the authentication state may be reused if the same token is provided by the client (caching).
gemini-3.8-flash-low· 2026-10-13 · जर्मन मूल