2017-01-10 3 views
7

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

दस्तावेज़ का उल्लेख है कि अस्थायी संस्करण विकास स्थितियों के लिए उपयोगी है लेकिन यह नहीं बताता है कि उत्पादन वातावरण में उपयोग किए जाने पर इसका नुकसान क्या होता है।

मेरे पास एस्पनेटकोर वेब एपीआई है जिसमें क्लाइंट को पहचान सर्वर 4 का उपयोग करके प्रमाणित किया जाता है। सिस्टम फिलहाल अस्थायी हस्ताक्षर के साथ ठीक काम करता है लेकिन मुझे आश्चर्य है कि अन्य संस्करण का उपयोग करने में कोई फायदा है या नहीं।

धन्यवाद,

उत्तर

12

नुकसान है, कि हर बार जब आप IdentityServer पुनरारंभ करें, कुंजी सामग्री बदल जाएगा - या IOW - सभी टोकन है कि पिछले कुंजी सामग्री के साथ करा दिया गया है मान्य करने के लिए असफल हो जायेगी।

"अस्थायी" वास्तव में केवल उन स्थितियों के लिए है जहां आपके पास अन्य महत्वपूर्ण सामग्री उपलब्ध नहीं है।

+0

जिज्ञासा से बाहर, एक ऐसे ग्राहक के साथ क्या होगा जो इस उदाहरण में पुरानी कुंजी सामग्री का उपयोग करके प्रमाणित करने का प्रयास करता है? क्या यह बस एक नया टोकन का अनुरोध करेगा? –

7
AddTemporarySigningCredential के बजाय

AddDeveloperSigningCredential

उपयोग करने के लिए http://docs.identityserver.io/en/release/topics/startup.html#refstartupkeymaterial से विचार करें:

AddDeveloperSigningCredential

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

चेतावनी: AddDeveloperSigningCredential केवल जब IdentityServer मेजबान, एक एकमात्र मशीन पर चल रहा है उत्पादन खेत के लिए आप AddSigningCredential उपयोग करने की आवश्यकता के लिए इस्तेमाल किया जा सकता है।

+2

AddTemporary नवीनतम पूर्वावलोकन समर्थन .NET कोर में अनुपलब्ध प्रतीत होता है ?? –

+2

@RasmusChristensen, सही, https://github.com/IdentityServer/IdentityServer4/issues/1139 देखें –

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