OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

نوٽ. ترجمو: Okta جو هي عظيم آرٽيڪل وضاحت ڪري ٿو ته ڪيئن OAuth ۽ OIDC (OpenID Connect) هڪ سادي ۽ صاف طريقي سان ڪم ڪن ٿا. هي علم ڊولپرز، سسٽم ايڊمنسٽريٽرن، ۽ مشهور ويب ايپليڪيشنن جي ”باقاعده استعمال ڪندڙن“ لاءِ به ڪارآمد ثابت ٿيندو، جيڪي گهڻو ڪري ٻين خدمتن سان ڳجهي ڊيٽا جي مٽاسٽا ڪندا آهن.

انٽرنيٽ جي پٿر جي دور ۾، خدمتن جي وچ ۾ معلومات جي حصيداري آسان هئي. توهان صرف پنهنجو لاگ ان ۽ پاسورڊ هڪ خدمت کان ٻئي کي ڏنو، ته جيئن هو توهان جي اڪائونٽ ۾ داخل ٿيو ۽ گهربل معلومات حاصل ڪري.

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ
”مون کي پنهنجو بئنڪ کاتو ڏي. ”اسان واعدو ڪريون ٿا ته پاسورڊ ۽ پئسا سان سڀ ڪجهه ٺيڪ ٿي ويندو. اھو ايماندار آھي، ايماندار!" *هي هي*

وحشتيني! ڪنهن کي به ڪڏهن به صارف کي صارف نالو ۽ پاسورڊ شيئر ڪرڻ جي ضرورت نه پوندي، سندون، ٻي خدمت سان. ڪابه ضمانت نه آهي ته هن خدمت جي پويان تنظيم ڊيٽا کي محفوظ رکندي ۽ ضروري کان وڌيڪ ذاتي معلومات گڏ نه ڪندي. اهو چريو ٿي سگهي ٿو، پر ڪجهه ائپس اڃا تائين هن مشق کي استعمال ڪن ٿا!

اڄ اتي ھڪڙو معيار آھي جيڪو ھڪڙي خدمت کي محفوظ طور تي ٻئي جي ڊيٽا کي استعمال ڪرڻ جي اجازت ڏئي ٿو. بدقسمتي سان، اهڙا معيار تمام گهڻا لفظ ۽ اصطلاح استعمال ڪن ٿا، جيڪي انهن جي سمجھ کي پيچيده ڪن ٿا. هن مواد جو مقصد اهو بيان ڪرڻ آهي ته اهي سادي نموني استعمال ڪندي ڪيئن ڪم ڪن ٿا (ڇا توهان سوچيو ٿا ته منهنجي ڊرائنگ ٻارن جي ڊبلنگ وانگر آهي؟ او سٺو!).

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

رستي جي ذريعي، هي گائيڊ وڊيو فارميٽ ۾ پڻ موجود آهي:

خواتين ۽ حضرات، ڀليڪار: OAuth 2.0

سچائي 2.0 هڪ حفاظتي معيار آهي جيڪو هڪ ايپليڪيشن کي ٻئي ايپليڪيشن ۾ معلومات تائين رسائي جي اجازت حاصل ڪرڻ جي اجازت ڏئي ٿو. پرمٽ جاري ڪرڻ لاء قدمن جو سلسلو [اجازت] (يا رضامندي [رضامندي]) اڪثر سڏين ٿا اختيار ڏيڻ [اختيار] يا اڃا به اختيار ڪيل اختيار [منظم اختيار]. هن معيار سان، توهان هڪ ايپليڪيشن کي ڊيٽا پڙهڻ جي اجازت ڏيو ٿا يا توهان جي طرفان ڪنهن ٻئي ايپليڪيشن جي افعال کي استعمال ڪرڻ جي بغير ان کي توهان جو پاسورڊ ڏيو. ڪلاس!

مثال طور، اچو ته چئو ته توهان هڪ سائيٽ دريافت ڪيو جنهن کي "Unlucky Pun of the Day" سڏيو ويندو آهي. [ڏينهن جو خوفناڪ عذاب] ۽ فون تي ٽيڪسٽ پيغامن جي صورت ۾ روزانه puns حاصل ڪرڻ لاء ان تي رجسٽر ڪرڻ جو فيصلو ڪيو. توھان واقعي پسند ڪيو سائيٽ، ۽ توھان ان کي پنھنجي سڀني دوستن سان حصيداري ڪرڻ جو فيصلو ڪيو. آخرڪار، هرڪو خوفناڪ پنن کي پسند ڪندو آهي، صحيح؟

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ
”بدقسمتي جو عذاب: ان ماڻهوءَ بابت ٻڌو آهي جنهن پنهنجي جسم جو کاٻي اڌ حصو وڃائي ڇڏيو هو؟ هاڻي هو هميشه صحيح آهي! (تقريبن ترجمو، ڇاڪاڻ ته اصل جو پنهنجو پن آهي - تقريباً ترجمو.)

اهو واضح آهي ته رابطي جي فهرست مان هر شخص کي لکڻ هڪ اختيار ناهي. ۽، جيڪڏھن تون مون جھڙو ٿورڙو آھين، ته پوءِ توھان غير ضروري ڪم کان بچڻ لاءِ ڪنھن حد تائين وڃو. خوشقسمتيء سان، ڏينهن جو خوفناڪ پن توهان جي سڀني دوستن کي پاڻ کي دعوت ڏئي سگهي ٿو! هن کي ڪرڻ لاءِ، توهان کي صرف پنهنجي رابطن جي اي ميل تائين رسائي کولڻ جي ضرورت آهي - سائيٽ پاڻ انهن کي دعوتون موڪليندي (OAuth ضابطا)!

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ
”هر ڪو پنن سان پيار ڪندو آهي! - اڳ ۾ ئي لاگ ان ٿيو؟ ”ڇا توهان اڄ جي خوفناڪ پن جي ويب سائيٽ کي پنهنجي رابطي جي فهرست تائين رسائي جي اجازت ڏيڻ چاهيندا؟ - تنهنجي مهرباني! هاڻي کان وٺي، اسان هر روز ياد ڏياريندڙ موڪلينداسين هر ڪنهن کي جنهن کي توهان ڄاڻو ٿا، وقت جي آخر تائين! تون بهترين دوست آهين!”

  1. پنھنجي اي ميل سروس چونڊيو.
  2. جيڪڏهن ضروري هجي ته، ميل سائيٽ ڏانهن وڃو ۽ پنهنجي اڪائونٽ ۾ سائن ان ڪريو.
  3. توهان جي رابطن تائين رسائي جي اجازت ڏيو ڏينهن جو خوفناڪ پن.
  4. ڏينهن جي خوفناڪ پن سائيٽ ڏانهن واپس وڃو.

صورت ۾ توهان پنهنجو ذهن تبديل ڪيو، OAuth استعمال ڪندي ايپليڪيشنون پڻ رسائي کي رد ڪرڻ جو هڪ طريقو مهيا ڪن ٿيون. هڪ دفعو توهان اهو فيصلو ڪيو ته توهان هاڻي نه ٿا چاهيو ته رابطا شيئر ڪرڻ جي ڏينهن جي خوفناڪ پن سان، توهان وڃي سگهو ٿا ميل سائيٽ ۽ هٽائي سگهو ٿا پن سائيٽ کي مجاز ايپليڪيشنن جي فهرست مان.

OAuth فلو

اسان صرف ان جي ذريعي ويا آهيون جيڪو عام طور تي سڏيو ويندو آهي وهڪري [وھڻ] اوٿ. اسان جي مثال ۾، هي وهڪرو ڏسڻ ۾ ايندڙ مرحلن تي مشتمل آهي، گڏوگڏ ڪيترن ئي پوشيده قدمن تي مشتمل آهي، جنهن ۾ ٻه خدمتون معلومات جي محفوظ مٽاسٽا تي متفق آهن. اڳوڻو خوفناڪ پن آف دي ڊي مثال استعمال ڪري ٿو سڀ کان عام OAuth 2.0 وهڪري، جنهن کي ”اجازت ڏيڻ واري ڪوڊ“ جي وهڪري طور سڃاتو وڃي ٿو. ["اجازت ڏيڻ وارو ڪوڊ" وهڪري].

OAuth ڪيئن ڪم ڪندو آهي ان جي تفصيل ۾ ڊائيونگ ڪرڻ کان اڳ، اچو ته ڪجهه اصطلاحن جي معنيٰ بابت ڳالهايون:

  • وسيلن جو مالڪ:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    اهو تون آهين! توهان پنهنجي سند، توهان جي ڊيٽا، ۽ انهن سڀني سرگرمين کي سنڀاليندا آهيو جيڪي توهان جي اڪائونٽن تي ڪيا ويندا.

  • مختاران مائي:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    هڪ ايپليڪيشن (مثال طور، The Terriible Pun of the Day جي خدمت) جيڪا رسائي ڪرڻ چاهي ٿي يا ان جي طرفان ڪجهه ڪارناما انجام ڏيڻ چاهي ٿي. وسيلن جو مالڪ'ا.

  • اختيار ڏيڻ وارو سرور:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    ايپ جيڪو ڄاڻي ٿو وسيلن جو مالڪ'a ۽ جنهن ۾ u وسيلن جو مالڪاڳ ۾ ئي هڪ اڪائونٽ آهي.

  • وسيلن جي سرور:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    ايپليڪيشن پروگرامنگ انٽرفيس (API) يا خدمت جيڪا مختاران مائي جي طرفان استعمال ڪرڻ چاهي ٿو وسيلن جو مالڪ'ا.

  • Redirect URI:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    لنڪ جو اختيار ڏيڻ وارو سرور ريٽائرڊ ڪندو وسيلن جو مالڪ۽ اجازت ڏيڻ کان پوءِ مختاران مائيتي. اهو ڪڏهن ڪڏهن "ڪال بيڪ URL" طور حوالو ڏنو ويندو آهي.

  • جواب جو قسم:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    معلومات جو قسم حاصل ٿيڻ جي توقع ڪئي وئي مختاران مائي. سڀ کان عام جواب جو قسم'ohm ڪوڊ آهي، اهو آهي مختاران مائي حاصل ڪرڻ جي اميد رکي ٿو تصديق ڪندڙ ڪوڊ.

  • دائري:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    هي اجازتن جو تفصيلي بيان آهي جيڪي گهربل آهن مختاران مائي'y، جيئن ڊيٽا تائين رسائي يا ڪجهه ڪارناما انجام ڏيڻ.

  • جي اجازت:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    اختيار ڏيڻ وارو سرور وٺندو اسڪواسدرخواست ڪئي مختاران مائياوم، ۽ پڇي ٿو وسيلن جو مالڪ'a، ڇا هو مهيا ڪرڻ لاء تيار آهي مختاران مائي'مناسب اجازتون آهن.

  • ڪسٽمر ID:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    هي ID سڃاڻپ ڪرڻ لاء استعمال ڪيو ويندو آهي مختاران مائيهڪ تي اختيار ڏيڻ وارو سروراي.

  • ڪلائنٽ راز:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    هي اهو پاسورڊ آهي جيڪو صرف ڄاڻي ٿو مختاران مائي'تو ۽ اختيار ڏيڻ وارو سرورتي. اهو انهن کي ذاتي طور تي معلومات حصيداري ڪرڻ جي اجازت ڏئي ٿو.

  • تصديق ڪندڙ ڪوڊ:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    عارضي ڪوڊ صحيحيت جي مختصر مدت سان، جيڪو مختاران مائي فراهم ڪري ٿو اختيار ڏيڻ وارو سرورجي بدلي ۾ رسائي جي ٽوڪن.

  • رسائي جي ٽوڪن:

    OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

    ڪنجي جيڪا ڪلائنٽ استعمال ڪندي گفتگو ڪرڻ لاءِ وسيلن جي سروراوم. بيج يا ڪيئي ڪارڊ جو هڪ قسم جيڪو مهيا ڪري مختاران مائيڊيٽا جي درخواست ڪرڻ يا ان تي عمل ڪرڻ جي اجازت آھي وسيلن جي سرورتوهان جي طرفان.

ويچاري: ڪڏهن ڪڏهن اختيار ڪرڻ وارو سرور ۽ ريسورس سرور ساڳيو سرور آهن. جڏهن ته، ڪجهه حالتن ۾، اهي مختلف سرور ٿي سگهن ٿا، جيتوڻيڪ اهي ساڳئي تنظيم سان لاڳاپيل نه هجن. مثال طور، اختيار ڪرڻ وارو سرور ٿي سگهي ٿو ٽئين پارٽي جي خدمت جيڪا ريسورس سرور طرفان ڀروسي ڪئي وڃي.

ھاڻي ته اسان OAuth 2.0 جي بنيادي تصورن کي ڍڪي ڇڏيو آھي، اچو ته پنھنجي مثال ڏانھن واپس وڃو ۽ ويجھو نظر رکون ته OAuth جي وهڪري ۾ ڇا ٿئي ٿو.

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

  1. توهان، وسيلن جو مالڪ, توهان مهيا ڪرڻ چاهيو ٿا Therible Pun of the Day جي خدمت (مختاران مائيy) توهان جي رابطن تائين رسائي حاصل ڪريو ته جيئن اهي توهان جي سڀني دوستن کي دعوتون موڪلي سگهن.
  2. مختاران مائي برائوزر کي صفحي ڏانهن منتقل ڪري ٿو اختيار ڏيڻ وارو سرور'a ۽ سوال ۾ شامل ڪريو ڪسٽمر ID, Redirect URI, جواب جو قسم ۽ هڪ يا وڌيڪ اسڪواس (اجازت) ان جي ضرورت آهي.
  3. اختيار ڏيڻ وارو سرور توهان جي تصديق ڪري ٿي، جيڪڏهن ضروري هجي ته صارف نالو ۽ پاسورڊ لاء پڇي.
  4. اختيار ڏيڻ وارو سرور فارم ڏيکاري ٿو جي اجازت (تصديقون) سڀني جي فهرست سان اسڪواسدرخواست ڪئي مختاران مائياوم. توهان متفق آهيو يا انڪار ڪريو.
  5. اختيار ڏيڻ وارو سرور توهان کي سائيٽ ڏانهن منتقل ڪري ٿو مختاران مائي'a، استعمال ڪندي Redirect URI گڏجي گڏ تصديق ڪندڙ ڪوڊ (اجازت ڏيڻ جو ڪوڊ).
  6. مختاران مائي سان سڌو رابطو ڪري ٿو اختيار ڏيڻ وارو سرور'ohm (براؤزر کي نظرانداز ڪندي وسيلن جو مالڪ'a) ۽ محفوظ طور تي موڪلي ٿو ڪسٽمر ID, ڪلائنٽ راز и تصديق ڪندڙ ڪوڊ.
  7. اختيار ڏيڻ وارو سرور ڊيٽا چيڪ ڪري ٿو ۽ جواب ڏئي ٿو رسائي جي ٽوڪناوم (رسائي ٽوڪن).
  8. هاڻي مختاران مائي استعمال ڪري سگھن ٿا رسائي جي ٽوڪن ڏانهن هڪ درخواست موڪلڻ لاء وسيلن جي سرور رابطن جي فهرست حاصل ڪرڻ لاء.

ڪلائنٽ جي سڃاڻپ ۽ راز

توهان جي رابطن تائين رسائي حاصل ڪرڻ لاءِ ڏينهن جي خوفناڪ پن جي اجازت ڏيڻ کان گهڻو اڳ ، ڪلائنٽ ۽ اٿارائزيشن سرور هڪ ڪم ڪندڙ تعلق قائم ڪيو هو. اختيار ڪرڻ وارو سرور ڪلائنٽ ID ۽ ڪلائنٽ راز ٺاهي ٿو (ڪڏهن ڪڏهن سڏيو ويندو آهي ايپ جي سڃاڻپ и ايپ راز) ۽ انهن کي موڪليو ڪلائنٽ ڏانهن وڌيڪ رابطي لاءِ OAuth اندر.

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ
"- سلام! مان توهان سان گڏ ڪم ڪرڻ چاهيان ٿو! - يقينا، ڪو مسئلو ناهي! هتي توهان جي ڪلائنٽ ID ۽ راز آهن!

نالي جو مطلب اهو آهي ته ڪلائنٽ راز کي راز ۾ رکيو وڃي ته جيئن صرف ڪلائنٽ ۽ اختيار ڪندڙ سرور کي ڄاڻ هجي. آخرڪار، اهو هن جي مدد سان آهي ته اختيار ڪندڙ سرور ڪلائنٽ جي سچائي جي تصديق ڪري ٿي.

پر اهو سڀ ڪجهه ناهي... مهرباني ڪري ڀليڪار ڪريو OpenID Connect!

OAuth 2.0 صرف ان لاءِ ٺهيل آهي اجازت ڏيڻ - هڪ ايپليڪيشن کان ٻئي تائين ڊيٽا ۽ افعال تائين رسائي فراهم ڪرڻ لاءِ. اوپن آءِ ڊي ڪنيڪٽ (OIDC) OAuth 2.0 جي چوٽي تي هڪ پتلي پرت آهي جيڪا اڪائونٽ ۾ لاگ ان ٿيل صارف جو لاگ ان ۽ پروفائل تفصيل شامل ڪري ٿي. لاگ ان سيشن جي تنظيم کي اڪثر سڏيو ويندو آهي تصديق [تصديق]، ۽ سسٽم ۾ لاگ ان ٿيل صارف بابت معلومات (يعني اٽڪل وسيلن جو مالڪ'e) - ذاتي ڊيٽا [سڃاڻپ]. جيڪڏهن اختيار ڪرڻ وارو سرور OIDC کي سپورٽ ڪري ٿو، اهو ڪڏهن ڪڏهن حوالو ڏنو ويندو آهي ذاتي ڊيٽا مهيا ڪندڙ [سڃاڻپ فراهم ڪندڙ]ڇاڪاڻ ته اهو مهيا ڪري ٿو مختاران مائيبابت ڄاڻ آهي وسيلن جو مالڪاي.

OpenID Connect توهان کي منظرنامو لاڳو ڪرڻ جي اجازت ڏئي ٿو جتي هڪ لاگ ان ڪيترن ئي ايپليڪيشنن ۾ استعمال ڪري سگهجي ٿو - اهو طريقو پڻ سڃاتو وڃي ٿو اڪيلو سائن آن (ايس ايس او). مثال طور، هڪ ايپليڪيشن شايد سماجي نيٽ ورڪن جهڙوڪ Facebook يا Twitter سان SSO انضمام جي حمايت ڪري ٿي، صارفين کي هڪ اڪائونٽ استعمال ڪرڻ جي اجازت ڏئي ٿي جيڪي انهن وٽ اڳ ۾ ئي آهن ۽ استعمال ڪرڻ کي ترجيح ڏين ٿا.

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

وهڪري (فلو) OpenID Connect ساڳيو نظر اچي ٿو جيئن OAuth جي صورت ۾. فرق صرف اهو آهي ته ابتدائي درخواست ۾، استعمال ٿيل مخصوص دائرو آهي openid، - اي مختاران مائي آخرڪار وانگر ٿي رسائي جي ٽوڪن، ۽ ID ٽوڪن.

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

جيئن OAuth جي وهڪري ۾، رسائي جي ٽوڪن OpenID Connect ۾، هي ڪجهه قدر آهي جيڪو واضح ناهي مختاران مائيتي. نقطي نظر کان مختاران مائيرسائي جي ٽوڪن ڪردارن جي هڪ تار جي نمائندگي ڪري ٿو جيڪا هر درخواست سان گڏ گذري وئي آهي وسيلن جي سرور'y، جيڪو طئي ڪري ٿو ته ٽوڪن صحيح آهي. ID ٽوڪن هڪ مڪمل طور تي مختلف شيء جي نمائندگي ڪري ٿو.

ID ٽوڪن هڪ JWT آهي

ID ٽوڪن اکرن جو خاص فارميٽ ٿيل اسٽرنگ آھي جيڪو JSON ويب ٽوڪن يا JWT طور سڃاتو وڃي ٿو (ڪڏهن ڪڏهن JWT ٽوڪن کي "jots" وانگر بيان ڪيو ويندو آهي). ٻاهرين مبصرن لاءِ، JWT شايد سمجھ ۾ نه ايندڙ گبباري وانگر لڳي، پر مختاران مائي JWT مان مختلف معلومات ڪڍي سگھي ٿو، جهڙوڪ ID، صارف جو نالو، لاگ ان وقت، ختم ٿيڻ جي تاريخ ID ٽوڪن'a، JWT سان مداخلت ڪرڻ جي ڪوشش جي موجودگي. ڊيٽا اندر ID ٽوڪنسڏيو ويندو آهي ايپليڪيشنون [دعوي].

OAuth ۽ OpenID Connect لاءِ هڪ نمايان گائيڊ

OIDC جي صورت ۾، اتي به هڪ معياري طريقو آهي جنهن جي ذريعي مختاران مائي فرد بابت اضافي معلومات جي درخواست ڪري سگھي ٿي [سڃاڻپ] от اختيار ڏيڻ وارو سرور'a، مثال طور، هڪ اي ميل پتو استعمال ڪندي رسائي جي ٽوڪن.

OAuth ۽ OIDC بابت وڌيڪ سکو

تنهن ڪري، اسان مختصر طور تي جائزو ورتو ته ڪيئن OAuth ۽ OIDC ڪم ڪري ٿو. اونهي کوٽڻ لاءِ تيار؟ OAuth 2.0 ۽ OpenID Connect بابت وڌيڪ سکڻ لاءِ هتي اضافي وسيلا آهن:

هميشه وانگر، تبصرو ڪرڻ لاء آزاد محسوس ڪريو. اسان جي تازه ترين خبرن سان تازه ڪاري ڪرڻ لاء، رڪنيت حاصل ڪريو Twitter и يوٽيوب ڊولپرز لاءِ اوڪٽا!

پي ايس مترجم کان

اسان جي بلاگ تي پڻ پڙهو:

جو ذريعو: www.habr.com

تبصرو شامل ڪريو