dash-b · विशेषताएँ · कनेक्ट

एक ही तरीका, चाहे आप कनेक्ट क्या कर रहे हों।

आपके चलाया हुआ डेटाबेस, आपके द्वारा डाली गई फ़ाइल, आपके अपने सर्वर पर एक छोटी स्क्रिप्ट। ये सब एक ही तालिका में प्रविष्टियाँ हैं, ये सब एक ही तरह पंजीकृत होते हैं, और नया प्रकार जोड़ना एक नई स्क्रीन नहीं बल्कि एक प्रविष्टि है।

आज आप क्या जोड़ सकते हैं

दो आकार, और एक फ़ाइल

एक डेटाबेस, सीधे

PostgreSQL, MySQL या MongoDB। होस्ट, पोर्ट, डेटाबेस, उपयोगकर्ता, पासवर्ड, TLS डिफ़ॉल्ट रूप से चालू। केवल-पढ़ने योग्य — dash-b जो कुछ भी करता है वह आपके प्रोडक्शन डेटा में लिख नहीं सकता।

आपके अपने सर्वर पर एक कनेक्टर

एक PHP फ़ाइल जिसे आप डेटाबेस के पास अपलोड करते हैं। dash-b को एक पता और एक साइनिंग सीक्रेट मिलता है, और इससे आगे कुछ नहीं: न होस्ट, न उपयोगकर्ता नाम, न पासवर्ड। यह एकमात्र स्रोत है जो लिख सकता है, और यही इसका कारण है।

एक फ़ाइल

बोर्ड पर एक स्प्रेडशीट या CSV डालें और वह एक वास्तविक तालिका बन जाती है, जिसके कॉलम फ़ाइल से पढ़े जाते हैं, आपके द्वारा अनुमान लगाए नहीं जाते। न कोई पंजीकरण, न क्रेडेंशियल, सेट अप करने को कुछ नहीं।

पासवर्ड का क्या होता है

कोई सीक्रेट आपको कभी वापस नहीं दिखाया जाता

एक बार क्रेडेंशियल संग्रहीत होने के बाद, उसे संग्रहीत करने वाला फ़ॉर्म उसे दोबारा नहीं दिखा सकता। यह कोई सेटिंग नहीं है — यह उस कोड से अलग एक अलग कोड है जो सहेजे गए मानों से फ़ॉर्म भरता है, और जानबूझकर अलग रखा गया है, ताकि "सहेजा गया मान दिखाएँ" किसी एक फ़्लैग की दूरी पर न हो और डेटाबेस पासवर्ड ऐसे पेज में न लिखा जा सके जिसे स्क्रीनशॉट लिया जा सके, स्क्रीन-शेयर किया जा सके या DOM से पढ़ा जा सके।

कनेक्टर इसलिए मौजूद है ताकि आपका सबसे मज़बूत सीक्रेट आपके अपने सर्वर को कभी न छोड़े।

आपके डेटाबेस क्रेडेंशियल उस मशीन की कॉन्फ़िग फ़ाइल में रहते हैं जिसके पास वे पहले से थे। dash-b के पास एक पता और एक हस्ताक्षर होता है, और इनमें से कोई भी आपका डेटाबेस किसी और के लिए नहीं खोलता।

किसी अन्य चीज़ में साइन इन करना

यहाँ साइन-इन बॉक्स क्यों नहीं है

एक खाते को कनेक्ट करना — डेटाबेस के विपरीत — यानी प्रदाता का अपना साइन-इन पेज, उसकी अपनी एक विंडो में, और एक ब्रोकर जो एप्लिकेशन सीक्रेट रखता है ताकि dash-b कभी न रखे और आपका पासवर्ड कभी न देखे।

यह पेज के भीतर नहीं किया जाता, और यह कोई पसंद की बात नहीं है। Google और Facebook दोनों फ़्रेम में होने से इनकार करते हैं, जानबूझकर: किसी और के दस्तावेज़ के भीतर दिखाया गया साइन-इन फ़ॉर्म फ़िशिंग पेज से अलग नहीं किया जा सकता, और एक बनाने पर एक खाली आयत शिप होती।

कैटलॉग इन्हीं के लिए बना है और तंत्र अपनी जगह है; स्वयं कनेक्शन अभी खुले नहीं हैं, इसलिए डिज़ाइनर आपको ऐसा बटन नहीं देगा जो आपके चुनने के बाद विफल हो जाए। जब वे खुलेंगे, वे ऊपर बताई गई हर चीज़ की तरह उसी तालिका में प्रविष्टियों के रूप में आएँगे।

परीक्षण द्वारा स्थिर की गई दो चीज़ें

वे जाँचें जिन्हें पीछे खिसकने की अनुमति नहीं है

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

दोनों इसलिए मौजूद हैं क्योंकि जिस विफलता को वे रोकते हैं वह मौन होती है: पहला पासवर्ड को स्क्रीनशॉट में लीक कर देता, और दूसरा किसी लिंक को किसी और का खाता आपके खाते से जोड़ने दे देता।

जुड़ा होना केवल आधा काम है।

एक टाइल आपके द्वारा जोड़ी गई चीज़ों को पढ़ सकती है। कनेक्टर के साथ, एक टाइल उसमें लिख भी सकती है — बोर्ड पर एक बटन जो आपके अपने डेटाबेस में एक पंक्ति जोड़ दे।