اپنی ویب سائٹ یا ایپ میں Posty5 کے ساتھ لاگ ان کیسے شامل کریں

لوگوں کو اپنے Posty5 اکاؤنٹ سے آپ کی سائٹ میں سائن ان کرنے دیں، بالکل Google کی طرح - OpenID Connect، رضامندی اسکرین اور Node.js و Angular کے لیے تیار پیکجز۔

ADاشتہار
اپنی ویب سائٹ یا ایپ میں Posty5 کے ساتھ لاگ ان کیسے شامل کریں

ہر نیا سائن اپ فارم لوگوں سے ایک اور پاس ورڈ مانگتا ہے، اور آپ جو بھی پاس ورڈ محفوظ کرتے ہیں وہ حفاظت کی ایک اور ذمہ داری بن جاتا ہے۔ Login with Posty5 لوگوں کو اسی Posty5 اکاؤنٹ سے آپ کی ویب سائٹ یا ایپ میں سائن ان کرنے دیتا ہے جو ان کے پاس پہلے سے موجود ہے، بالکل ویسے ہی جیسے وہ Sign in with Google چنتے ہیں۔

یہ مضمون بتاتا ہے کہ آپ کے صارفین کیا دیکھتے ہیں، ڈویلپر کے طور پر آپ کو کیا ملتا ہے، اور اسے شامل کرنے کے چار مراحل کیا ہیں۔ یہ Posty5 ڈویلپر پلیٹ فارم کا حصہ ہے، جس کی تفصیل API کلید اور SDK گائیڈ میں ہے۔

Login with Posty5 کیا ہے

Posty5 اب ایک OAuth 2.0 اور OpenID Connect فراہم کنندہ ہے۔ آپ اپنی ایپ Posty5 Studio میں رجسٹر کرتے ہیں، صارفین کو سائن ان کے لیے Posty5 پر بھیجتے ہیں، اور بدلے میں ایک دستخط شدہ ID ٹوکن حاصل کرتے ہیں جو آپ کے سرور کو بتاتا ہے کہ وہ کون ہیں۔ آپ کی سائٹ ان کا Posty5 پاس ورڈ کبھی نہیں دیکھتی۔

چونکہ یہ معیار کی پیروی کرتا ہے، اس لیے یہ Node.js اور Angular کے Posty5 پیکجز کے ساتھ اور کسی بھی تصدیق شدہ OpenID Connect لائبریری کے ساتھ کام کرتا ہے - ASP.NET Core، Python، PHP یا Java۔ ایپس رجسٹر کرنے اور صارفین کو سائن ان کرانے پر کوئی کریڈٹس خرچ نہیں ہوتے، ہر پلان پر۔

آپ کے صارفین کیا دیکھتے ہیں

  • آپ کے سائن ان صفحے پر Login with Posty5 یا Continue with Posty5 کا بٹن۔
  • اگر وہ ابھی سائن ان نہیں ہیں تو Posty5 کا اپنا سائن ان صفحہ - پاس ورڈ صرف posty5.com پر ٹائپ ہوتا ہے۔
  • ایک رضامندی اسکرین جس میں آپ کی ایپ کا نام، لوگو، ویب سائٹ، رازداری کی پالیسی اور شرائط ہوتی ہیں، آپ کی مانگی گئی ہر معلومات کے لیے ایک سطر، اور Allow اور Cancel۔
  • ان کا انتخاب یاد رکھا جاتا ہے: اگلا سائن ان سیدھا ہو جاتا ہے۔ وہ کسی بھی وقت اکاؤنٹ، پھر Connected apps میں جا کر آپ کی ایپ کی رسائی ہٹا سکتے ہیں۔

صارف کی طرف سے پورا طریقہ Login with Posty5 کیا ہے، اور کیا میرا ڈیٹا محفوظ ہے؟ میں بیان کیا گیا ہے، جس کا لنک آپ اپنے سائن ان صفحے پر دے سکتے ہیں۔

ڈویلپر کے طور پر آپ کو کیا ملتا ہے

  • معیاری OpenID Connect - ہر سائن ان پر لازمی PKCE کے ساتھ authorization code flow، اور ایک discovery دستاویز جس سے زیادہ تر لائبریریاں خود کو کنفیگر کر لیتی ہیں۔
  • دستخط شدہ ID ٹوکنز (RS256) جن میں صارف کا نام، تصویر، ای میل اور یہ کہ ای میل تصدیق شدہ ہے یا نہیں شامل ہوتا ہے - صرف ان scopes کے لیے جن کی صارف نے اجازت دی۔
  • آپ کی ایپ کے لیے ایک نجی صارف ID۔ sub آپ کی ایپ کے لیے مستقل رہتا ہے اور دوسرے ڈویلپرز کی ایپس میں مختلف ہوتا ہے، اس لیے ایپس آپس میں صارفین کو ملا نہیں سکتیں۔
  • Node.js بیک اینڈ کے لیے @posty5/oauth، جس کے دستخط شدہ لاگ ان لنکس کو کسی session store کی ضرورت نہیں، اور @posty5/oauth-angular، Angular کے لیے ایک حسبِ ضرورت Continue with Posty5 بٹن۔
  • صرف فرنٹ اینڈ والی ایپس کے لیے براؤزر سائن ان - ہر ایپ کے لیے الگ سے آن ہوتا ہے، اور صرف انہی ویب سائٹ origins سے قبول ہوتا ہے جو آپ درج کرتے ہیں۔
  • Posty5 Studio میں ہر ایپ کے لیے ایک Users ٹیب، اور ایپ میں شامل کی گئی ایک API کلید جو یہی فہرست آپ کے سرور سے پڑھتی ہے۔

چار مراحل میں شامل کریں

  1. Posty5 Studio میں Developers Kit کھولیں، پھر OAuth apps، اور Register app منتخب کریں۔ وہ نام، لوگو اور لنکس درج کریں جو صارفین دیکھیں گے، اور اپنا callback پتہ redirect URI کے طور پر دیں۔
  2. client ID اور client secret اپنے سرور کی کنفیگریشن میں کاپی کریں۔ secret صرف ایک بار دکھایا جاتا ہے؛ آپ اسے بعد میں تبدیل (rotate) کر سکتے ہیں۔
  3. @posty5/oauth انسٹال کریں اور دو routes شامل کریں - ایک جو لاگ ان لنک بنا کر صارف کو Posty5 پر بھیجے، اور آپ کا callback، جو نتیجے کی تصدیق کرے۔
  4. اپنے سائن ان صفحے پر Login with Posty5 بٹن لگائیں، ایک بار خود سائن ان کر کے دیکھیں، اور اپنے صارف ریکارڈز کو موصول ہونے والے sub سے منسلک کریں۔
const link = await posty5.createLoginLink({ returnTo: "/account" });
res.cookie("p5_binding", link.binding, { httpOnly: true, secure: true, sameSite: "lax" });
res.redirect(link.url);

// on your redirect URI
const { claims, returnTo } = await posty5.handleLoginCallback(req.query, { binding: req.cookies.p5_binding });

لاگ ان لنک PKCE verifier، nonce اور آپ کا واپسی پتہ ایک مہر بند state کے اندر رکھتا ہے، اس لیے دونوں درخواستوں کے درمیان آپ کے سرور کو کچھ محفوظ نہیں رکھنا پڑتا، اور ایک cookie لنک کو اسی براؤزر سے باندھ دیتی ہے جس نے اسے مانگا تھا۔

اپنی پہلی OAuth ایپ رجسٹر کریں

Posty5 Studio میں ایپ بنائیں، اس کی credentials کاپی کریں، اور اپنی سائٹ پر سائن ان آزما کر دیکھیں۔

انضمام کا طریقہ منتخب کریں

  • Node.js بیک اینڈ والی ویب سائٹ - @posty5/oauth استعمال کریں۔ client secret آپ کے سرور پر ہی رہتا ہے۔
  • Angular ایپ - @posty5/oauth-angular کا بٹن استعمال کریں اور سائن ان آپ کے بیک اینڈ کو چلانے دیں۔ دیکھیں Angular میں Continue with Posty5 بٹن کیسے شامل کریں۔
  • بغیر بیک اینڈ والی اسٹیٹک ایپ - ایپ کے لیے براؤزر سائن ان آن کریں، اپنی سائٹ کے origins درج کریں، اور Angular پیکج کا browser موڈ یا PKCE سپورٹ کرنے والا کوئی بھی OpenID Connect کلائنٹ استعمال کریں۔
  • کوئی بھی دوسری زبان - اپنی OpenID Connect لائبریری کو اپنے client ID اور secret کے ساتھ https://api.posty5.com کی طرف اشارہ کریں۔

شروع کرنے سے پہلے جاننے کی حدود

  • کوئی refresh token نہیں ہیں۔ access token 1 گھنٹے تک چلتا ہے، اس لیے سائن ان کے بعد اپنا session خود رکھیں۔
  • خاموش سائن ان (prompt=none) دستیاب نہیں۔ آپ prompt=login یا max_age کے ذریعے نئے سرے سے سائن ان لازمی کر سکتے ہیں۔
  • Login with Posty5 صرف شناخت شیئر کرتا ہے - نام، تصویر اور ای میل۔ یہ آپ کی ایپ کو صارف کے Posty5 مواد تک رسائی نہیں دیتا۔
  • ایک اکاؤنٹ زیادہ سے زیادہ 20 OAuth ایپس رجسٹر کر سکتا ہے، اور ہر ایپ میں زیادہ سے زیادہ 10 درست redirect URIs ہو سکتے ہیں۔

اکثر پوچھے جانے والے سوالات

کیا Login with Posty5 پر کریڈٹس خرچ ہوتے ہیں؟

نہیں۔ OAuth ایپس رجسٹر کرنے اور صارفین کو سائن ان کرانے پر کوئی کریڈٹس خرچ نہیں ہوتے، ہر پلان پر۔

میری ایپ کو کون سا ڈیٹا مل سکتا ہے؟

صرف وہی جس کی صارف اجازت دے: آپ کی ایپ کے لیے ایک صارف ID ہمیشہ، profile scope کے ساتھ نام اور پروفائل تصویر، اور email scope کے ساتھ ای میل پتہ اور یہ کہ وہ تصدیق شدہ ہے یا نہیں۔

کیا میں اسے بیک اینڈ کے بغیر استعمال کر سکتا ہوں؟

جی ہاں۔ ایپ کے لیے براؤزر سائن ان آن کریں اور اپنی سائٹ کے origins درج کریں۔ پھر براؤزر PKCE کے ساتھ اور client secret کے بغیر code کا تبادلہ کرتا ہے۔ اگر آپ کے پاس بیک اینڈ ہے تو سائن ان کے لیے وہی بہتر جگہ ہے۔

میری دوسری ایپ میں صارف ID مختلف کیوں ہے؟

sub pairwise ہوتا ہے: یہ ہر ایپ کے پہلے redirect URI کے host پر منحصر ہے، اس لیے مختلف ڈویلپرز کی ایپس صارفین کو ملا نہیں سکتیں۔ ایک ہی host سے رجسٹر کی گئی ایپس کو ایک ہی قدر ملتی ہے۔

کیا میں دیکھ سکتا ہوں کہ میری ایپ میں کس نے سائن ان کیا؟

جی ہاں۔ Posty5 Studio میں ہر ایپ کا ایک Users ٹیب ہے، اور ایپ میں شامل کی گئی API کلید یہی فہرست آپ کے سرور سے پڑھتی ہے، جس میں صرف وہی ہوتا ہے جو ہر صارف نے شیئر کیا۔

جب کوئی صارف رسائی ہٹا دے تو کیا ہوتا ہے؟

اس صارف کے لیے آپ کے access tokens کام کرنا بند کر دیتے ہیں، صارف آپ کی Users فہرست سے نکل جاتا ہے، اور اس کے اگلے سائن ان پر رضامندی اسکرین دوبارہ دکھائی دیتی ہے۔ آپ کی سائٹ پر اس کا اکاؤنٹ متاثر نہیں ہوتا۔

ADاشتہار