ຜູ້ໃຊ້ກົດ “ເຂົ້າສູ່ລະບົບ”, ໄປຮອດໜ້າຂອງຜູ້ໃຫ້ບໍລິການ ແລ້ວກັບມາ Rails. ຂັ້ນຕອນຕໍ່ໄປຍັງອາດລົ້ມເຫຼວໄດ້ ເພາະມັນເລີ່ມການເຊື່ອມຕໍ່ໃໝ່ຈາກເຊີບເວີ Rails.

browser → provider authorization page → browser callback to Rails
Rails   → provider token endpoint → Rails

ບຣາວເຊີຕິດຕາມການປ່ຽນເສັ້ນທາງການອະນຸຍາດດ້ວຍການຕັ້ງຄ່າເຄືອຂ່າຍຂອງຕົນເອງ. Rails ເຮັດການແລກປ່ຽນໂທເຄັນຜ່ານຊ່ອງທາງຫຼັງດ້ວຍລູກຄ້າ HTTP ທີ່ກົນລະຍຸດ OmniAuth ທີ່ຕິດຕັ້ງໄວ້ເລືອກ. ຜູ້ປະຕິບັດງານທີ່ແລ່ນຢູ່ຫຼັງພຣັອກຊີຂອງອົງກອນຕ້ອງການເສັ້ນທາງນັ້ນໃນຄຳຮ້ອງຂອງຕົນໄປຫາຜູ້ໃຫ້ບໍລິການ.

OAuth 1.0 ຍັງມີຂັ້ນຕອນໂທເຄັນຄຳຮ້ອງຝັ່ງເຊີບເວີ ກ່ອນທີ່ຜູ້ໃຊ້ຈະອະນຸຍາດການເຂົ້າເຖິງ. ການໄຫຼຂອງລະຫັດອະນຸຍາດຂອງ OAuth 2.0 ມີການແລກປ່ຽນໂທເຄັນຂອງຕົນເອງຫຼັງການເອີ້ນກັບ. ລຳດັບທີ່ແນ່ນອນຂຶ້ນກັບກົນລະຍຸດ ແຕ່ບຣາວເຊີ ແລະ ເຊີບເວີແອັບພລິເຄຊັນຍັງເປັນຈຸດເລີ່ມຕົ້ນທີ່ແຕກຕ່າງກັນ.

ຊອກຫາການຕັ້ງຄ່າຂອງລູກຄ້າ

ຕິດຕາມກົນລະຍຸດໄປຫາລູກຄ້າ HTTP ທີ່ສົ່ງໂທເຄັນ ແລະ ຄຳຮ້ອງ API ຂອງຜູ້ໃຫ້ບໍລິການ. ໃຊ້ຕົວເລືອກພຣັອກຊີທີ່ມີເອກະສານຂອງລູກຄ້ານັ້ນ. ບາງກົນລະຍຸດສົ່ງຕົວເລືອກລູກຄ້າໄປຫາຄັງຂໍ້ມູນ OAuth; ອື່ນໆຕັ້ງຄ່າການເຊື່ອມຕໍ່ HTTP ຢູ່ກ້ອງມັນ. ຕົວເລືອກທີ່ກົນລະຍຸດໜຶ່ງຍອມຮັບ ບໍ່ໄດ້ກາຍເປັນຕົວເລືອກຮ່ວມຂອງ OmniAuth ໂດຍອັດຕະໂນມັດ.

ໃຫ້ URL ການອະນຸຍາດ, ໂທເຄັນ ແລະ ການເອີ້ນກັບຂອງຜູ້ໃຫ້ບໍລິການອະທິບາຍບໍລິການຕົວຈິງຂອງມັນ. ພຣັອກຊີຂາອອກເປັນການຕັ້ງຄ່າການຂົນສົ່ງເພື່ອໄປຮອດຜູ້ໃຫ້ບໍລິການ ບໍ່ແມ່ນທີ່ຢູ່ເອີ້ນກັບທົດແທນ ແລະ ບໍ່ແມ່ນຊ່ອງຂໍ້ມູນທີ່ເພີ່ມໃສ່ພາລາມິເຕີຄຳຮ້ອງ OAuth.

ເມື່ອຕິດຕາມການເຂົ້າສູ່ລະບົບ ໃຫ້ໝາຍຂັ້ນຕອນສຸດທ້າຍທີ່ສຳເລັດ. ໜ້າເຂົ້າສູ່ລະບົບຂອງຜູ້ໃຫ້ບໍລິການທີ່ສະແດງຂຶ້ນພິສູດວ່າເສັ້ນທາງຂອງບຣາວເຊີໄດ້ເຮັດວຽກ. ການເອີ້ນກັບທີ່ Rails ໄດ້ຮັບພິສູດວ່າບຣາວເຊີໄດ້ກັບມາ. ຄຳຮ້ອງໂທເຄັນຕໍ່ໄປເປັນຈຸດທີ່ຈະກວດກາການເຊື່ອມຕໍ່ພຣັອກຊີ, ການທ້າທາຍ ຫຼື ການຕອບສະໜອງຈາກຜູ້ໃຫ້ບໍລິການຈາກຂະບວນການ Rails.

ບົດຄວາມທີ່ກ່ຽວຂ້ອງ