ایک ہی راستہ، چاہے آپ جوڑ رہے ہوں کچھ بھی۔
آپ کی چلائی ہوئی ڈیٹابیس، آپ کی ڈالی ہوئی فائل، آپ کے اپنے سرور پر ایک چھوٹی اسکرپٹ۔ یہ سب ایک ہی جدول کی اندراجات ہیں، سب ایک ہی طرح اندراج شدہ ہوتے ہیں، اور کوئی نیا قسم شامل کرنا ایک اندراج ہے، کوئی نیا اسکرین نہیں۔
آپ آج کیا جوڑ سکتے ہیں
دو شکلیں، اور ایک فائل
ایک ڈیٹابیس، براہِ راست
PostgreSQL، MySQL یا MongoDB۔ میزبان، پورٹ، ڈیٹابیس، صارف، پاس ورڈ، TLS بذاتِ خود آن۔ صرف پڑھنے کے لیے — ڈیش-بی کچھ بھی ایسا نہیں کر سکتا جو آپ کے پروڈکشن ڈیٹا میں لکھے۔
آپ کے اپنے سرور پر ایک کنیکٹر
ایک PHP فائل جو آپ ڈیٹابیس کے پاس اپ لوڈ کرتے ہیں۔ ڈیش-بی کو ایک پتہ اور ایک دستخط راز ملتا ہے، اور اس کے سوا کچھ نہیں: نہ میزبان، نہ صارف نام، نہ پاس ورڈ۔ یہی واحد ذریعہ ہے جو لکھ سکتا ہے، اور یہی اس کی وجہ ہے۔
ایک فائل
بورڈ پر کوئی اسپریڈشیٹ یا CSV ڈالیں اور وہ ایک حقیقی جدول بن جاتی ہے، جس کے کالم فائل سے پڑھے جاتے ہیں، آپ کے اندازے سے نہیں۔ کوئی اندراج نہیں، کوئی اسناد نہیں، سیٹ اپ کرنے کی کچھ نہیں۔
پاس ورڈ کا کیا ہوتا ہے
کوئی راز آپ کو کبھی واپس نہیں دکھایا جاتا
ایک بار اسناد محفوظ ہو جانے کے بعد، اسے محفوظ کرنے والا فارم اسے دوبارہ دکھا نہیں سکتا۔ یہ کوئی ترتیب نہیں — یہ اُس کوڈ سے الگ ایک الگ کوڈ ہے جو فارم کو محفوظ شدہ قدروں سے بھرتا ہے، اور الگ رکھا گیا ہے جان بوجھ کر، تاکہ "محفوظ شدہ قدر دکھاؤ" کسی ایک فلیگ کی اتنی دور نہ ہو جتنی دور ایک ڈیٹابیس پاس ورڈ کو ایک ایسے صفحے میں لکھنے کی ہے جو اسکرین شاٹ، اسکرین شیئر یا DOM سے پڑھا جا سکتا ہے۔
کنیکٹر اسی لیے موجود ہے تاکہ آپ کا سب سے مضبوط راز آپ کے اپنے سرور کو کبھی نہ چھوڑے۔
آپ کی ڈیٹابیس اسناد اسی مشین کی کنفیگ فائل میں رہتی ہیں جس کے پاس وہ پہلے سے تھیں۔ ڈیش-بی کے پاس ایک پتہ اور ایک دستخط ہوتا ہے، اور ان میں سے کوئی ایک بھی آپ کی ڈیٹابیس کسی اور کے لیے نہیں کھولتا۔
کسی اور چیز میں سائن اِن کرنا
یہاں سائن اِن باکس کیوں نہیں ہے
ایک اکاؤنٹ کو جوڑنا — جو ڈیٹابیس جوڑنے کے برعکس ہے — کا مطلب ہے فراہم کنندہ کا اپنا سائن اِن صفحہ، اس کی اپنی ایک ونڈو میں، اور ایک بروکر جو ایپلیکیشن راز رکھتا ہے تاکہ ڈیش-بی کبھی نہ رکھے اور کبھی آپ کا پاس ورڈ نہ دیکھے۔
یہ صفحے کے اندر نہیں کیا جاتا، اور یہ کوئی پسند نہیں بلکہ اصول ہے۔ Google اور Facebook دونوں فریم ہونے سے انکار کرتے ہیں، جان بوجھ کر: کسی اور کے دستاویز کے اندر دکھایا گیا سائن اِن فارم فشنگ صفحے سے ممتاز نہیں کیا جا سکتا، اور ایک بنانا خالی مستطیل کی ترسیل ہوگی۔
کیٹلاگ انہی کے لیے بنایا گیا ہے اور طریقہ کار موجود ہے؛ مگر خود ربط ابھی کھلے نہیں، اس لیے ڈیزائنر آپ کو کوئی بٹن پیش نہیں کرے گا جو آپ کے چننے کے بعد ناکام ہو۔ جب وہ کھلیں گے تو وہ اوپر کے سب کے ساتھ ایک ہی جدول میں اندراجات کے طور پر آئیں گے۔
ٹیسٹ سے ثابت شدہ دو چیزیں
وہ جانچیں جنہیں پیچھے ہٹنے کی اجازت نہیں
- کوئی راز واپس دکھایا نہیں جاتا۔ ایک ٹیسٹ ہر فراہم کنندہ کے ہر خانے میں ایک نشان ڈالتا ہے اور پھر دکھائے گئے صفحے میں اسے تلاش کرتا ہے۔
- سائن اِن کا جواب تبھی قابلِ اعتماد سمجھا جاتا ہے جب اس کی ہر بات جانچ لی جائے — یہ کہاں سے آیا، اس کی شکل کیا ہے، وہ یک بار استعمال ہونے والی قیمت جو اسے لازمی ساتھ لانی چاہیے، اور اس کی عمر — اور یہ سب کچھ اس سے پہلے تصدیق کیا جاتا ہے کہ اس کا ایک بھی خانہ پڑھا جائے۔ ایک وقت میں صرف ایک سائن اِن زیرِ عمل ہوتا ہے، اس لیے پرانا سائن اِن کسی بعد کے پیغام سے جواب نہیں دیا جا سکتا۔
یہ دونوں اس لیے موجود ہیں کیونکہ وہ خرابی جو ان سے روکی جاتی ہے خاموش ہوتی ہے: پہلا پاس ورڈ کو اسکرین شاٹ میں لیک کر دیتا، اور دوسرا کسی لنک کو کسی اور کا اکاؤنٹ آپ کے اکاؤنٹ سے جوڑنے کی اجازت دے دیتا۔
جوڑنا صرف آدھا کام ہے۔
ایک ٹائل آپ کے جوڑے گئے ڈیٹا کو پڑھ سکتی ہے۔ کنیکٹر کے ساتھ، ٹائل اس میں لکھ بھی سکتی ہے — بورڈ پر موجود ایک بٹن جو آپ کے اپنے ڈیٹابیس میں ایک قطار شامل کر دے۔