Passport.js ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ¿© Node.js ¾ÖÇø®ÄÉÀ̼ǿ¡¼ ÀÎÁõ Àü·«À» ±¸ÇöÇϱâ À§ÇÑ Á¾ÇÕ °¡À̵åÀÎ "Passport.js"¿¡ ¿À½Å °ÍÀ» ȯ¿µÇÕ´Ï´Ù. Passport.js´Â ÀÎÁõ ¸ÞÄ¿´ÏÁòÀ» ±¸ÇöÇÏ´Â ÇÁ·Î¼¼½º¸¦ °£¼ÒÈÇÏ°í ±¤¹üÀ§ÇÑ ÀÎÁõ Àü·«À» Áö¿øÇÏ¸ç ¾ÖÇø®ÄÉÀÌ¼Ç º¸¾ÈÀ» À§ÇÑ À¯¿¬ÇÑ ¸ðµâ½Ä Á¢±Ù ¹æ½ÄÀ» Á¦°øÇÏ´Â Node.js¿ë Àαâ ÀÎÁõ ¹Ìµé¿þ¾îÀÔ´Ï´Ù.
1Àå, 'Passport.js ¼Ò°³'¿¡¼´Â Passport.js¸¦ ¼Ò°³ÇÏ´Â °ÍÀ¸·Î ½ÃÀÛÇÕ´Ï´Ù. Passport.js°¡ ¹«¾ùÀÎÁö, Node.js ¾ÖÇø®ÄÉÀ̼ǿ¡¼ ¾î¶² ¿ëµµ·Î »ç¿ëµÇ´ÂÁö, ¿Ö ÀÎÁõ 󸮸¦ À§ÇØ ÀÌ ±â¼úÀÌ ¼±ÅõǾú´ÂÁö ¾Ë¾Æº¾´Ï´Ù. ÀÌ Àå¿¡¼´Â Passport.jsÀÇ ¾ÆÅ°ÅØó¿¡ ´ëÇÑ °³¿ä¸¦ Á¦°øÇÏ¿© ¸ðµâ½Ä ¼³°è¿Í È®À强À» ÀÌÇØÇϱâ À§ÇÑ Åä´ë¸¦ ¸¶·ÃÇÕ´Ï´Ù.
2Àå, 'ȯ°æ ¼³Á¤Çϱâ'¿¡¼´Â °³¹ß ȯ°æÀ» ¼³Á¤ÇÏ´Â ¹æ¹ýÀ» ¾È³»ÇÕ´Ï´Ù. Node.js¿Í NPMÀ» ¼³Ä¡ÇÏ°í, Node.js ¾ÖÇø®ÄÉÀ̼ÇÀ» ºôµåÇÏ´Â µ¥ ÇʼöÀûÀÎ ÇÁ·¹ÀÓ¿öÅ©ÀÎ Express.js¸¦ ¼³Á¤ÇÏ°í, Passport.js¸¦ ±¸¼ºÇÕ´Ï´Ù. ¶ÇÇÑ ÀÌ Àå¿¡¼´Â Passport.js°¡ Express.js¿Í ÅëÇյǴ ¹æ½Ä¿¡¼ Áß¿äÇÑ ¿ªÇÒÀ» ÇÏ´Â ¹Ìµé¿þ¾î¿¡ ´ëÇØ °£·«ÇÏ°Ô ¼³¸íÇÕ´Ï´Ù.
3Àå, 'Passport.js Àü·«'¿¡¼´Â Passport.js¿¡¼ Áö¿øÇÏ´Â ´Ù¾çÇÑ ÀÎÁõ Àü·«À» »ìÆ캾´Ï´Ù. ·ÎÄà ÀÎÁõ, Google°ú °°Àº Ç÷§Æû°ú ÅëÇÕÇϱâ À§ÇÑ OAuth Àü·«, API º¸¾ÈÀ» À§ÇÑ JWT(JSON À¥ ÅäÅ«) ÀÎÁõ¿¡ ´ëÇØ ÀÚ¼¼È÷ »ìÆ캾´Ï´Ù. ÀÌ·¯ÇÑ Àü·«À» ÀÌÇØÇÏ¸é ¾ÖÇø®ÄÉÀ̼ǿ¡ ÀûÇÕÇÑ ÀÎÁõ ¹æ¹ýÀ» ¼±ÅÃÇÏ°í ±¸ÇöÇÒ ¼ö ÀÖ´Â Áö½ÄÀ» °®Ãß°Ô µË´Ï´Ù.
4Àå, 'Passport.js¸¦ »ç¿ëÇÏ¿© ÀÎÁõ ±¸ÇöÇϱâ'¿¡¼´Â Passport.js¸¦ »ç¿ëÇÏ¿© ÀÎÁõ ¸ÞÄ¿´ÏÁòÀ» ±¸ÇöÇÏ´Â ¹æ¹ýÀ» ¾È³»ÇÕ´Ï´Ù. »ç¿ëÀÚ À̸§°ú ºñ¹Ð¹øÈ£·Î ·ÎÄà ÀÎÁõÀ» ¼³Á¤ÇÏ°í, Ÿ»ç ·Î±×ÀÎÀ» À§ÇÑ OAuth ÀÎÁõÀ» ÅëÇÕÇÏ°í, JWT ÀÎÁõ ÅäÅ«À» »ç¿ëÇÏ¿© API¸¦ º¸È£ÇÏ´Â ¹æ¹ýÀ» ¹è¿ì°Ô µË´Ï´Ù.
5Àå, 'Passport.js¿¡¼ ¿À·ù ó¸®Çϱâ'¿¡¼´Â ÀÎÁõ ¿À·ù¸¦ È¿°úÀûÀ¸·Î ó¸®ÇÏ´Â ¹æ¹ýÀ» ÁßÁ¡ÀûÀ¸·Î ´Ù·ì´Ï´Ù. ¿À·ù ¸Þ½ÃÁö¿Í ÄݹéÀ» °ü¸®ÇÏ°í »ç¿ëÀÚ ÁöÁ¤ÇÏ¿© ¿øÈ°ÇÑ »ç¿ëÀÚ °æÇèÀ» Á¦°øÇÏ´Â µ¿½Ã¿¡ ÀÎÁõ ½ÇÆи¦ ¿ì¾ÆÇÏ°Ô Ã³¸®ÇÏ´Â ¹æ¹ýÀ» ¹è¿ó´Ï´Ù.
6Àå, 'Passport.js·Î °æ·Î º¸¾ÈÇϱâ'¿¡¼´Â Passport.js¸¦ »ç¿ëÇÏ¿© ¾ÖÇø®ÄÉÀÌ¼Ç ³»¿¡¼ °æ·Î¸¦ º¸È£ÇÏ´Â ¹æ¹ýÀ» »ìÆ캾´Ï´Ù. º¸È£µÈ °æ·ÎÀÇ °³³äÀ» ÀÌÇØÇÏ°í, ÀÎÁõ »óÅ¿¡ µû¶ó °æ·Î¸¦ ¸¸µé°í º¸È£ÇÏ´Â ¹æ¹ýÀ» ¹è¿ì¸ç, ÀÎÁõµÈ »ç¿ëÀÚ¸¸ ¾ÖÇø®ÄÉÀ̼ÇÀÇ Áß¿äÇÑ ºÎºÐ¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº¾´Ï´Ù.
7Àå, '·Î±×¾Æ¿ô ¹× ¼¼¼Ç °ü¸®'¿¡¼´Â Passport.js¸¦ »ç¿ëÇÑ Express.js ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¼¼¼Ç °ü¸®¸¦ ´Ù·ì´Ï´Ù. ¼¼¼ÇÀÇ ÀÛµ¿ ¹æ½ÄÀ» »ìÆ캸°í, ¼¼¼Ç¿¡¼ »ç¿ëÀÚ¸¦ ¾ÈÀüÇÏ°Ô ·Î±×¾Æ¿ôÇÏ´Â ¹æ¹ýÀ» ¹è¿ì°í, »ç¿ëÀÚ ¼¼¼ÇÀ» È¿°úÀûÀ¸·Î °ü¸®ÇÏ¿© ¾ÖÇø®ÄÉÀ̼ÇÀÇ º¸¾ÈÀ» °ÈÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº¾´Ï´Ù.
8Àå, 'Passport.js Àü·« Å×½ºÆ®Çϱâ'¿¡¼´Â Passport.js·Î ±¸ÇöµÈ ÀÎÁõ Àü·«À» Å×½ºÆ®ÇÏ´Â ¹æ¹ýÀ» ¾È³»ÇÕ´Ï´Ù. Å×½ºÆ® µµ±¸¿Í ÇÁ·¹ÀÓ¿öÅ©¸¦ »ìÆ캸°í, ·ÎÄÃ, OAuth ¹× JWT ÀÎÁõ Àü·«¿¡ ´ëÇÑ ´ÜÀ§ Å×½ºÆ®¸¦ ÀÛ¼ºÇÏ¿© ÀÎÁõ ¸ÞÄ¿´ÏÁòÀÌ ¾ÈÁ¤ÀûÀ¸·Î ÀÛµ¿ÇÏ´ÂÁö È®ÀÎÇÏ´Â ¹æ¹ýÀ» ¹è¿ó´Ï´Ù.
9Àå, 'Passport.jsÀÇ Ãß°¡ ±â´É'¿¡¼´Â Passport.jsÀÇ °í±Þ ±â´É ¹× ÅëÇÕ¿¡ ´ëÇØ »ìÆ캾´Ï´Ù. Connect ½ºÅ¸ÀÏ ¹Ìµé¿þ¾î¿Í ÇÔ²² Passport.js¸¦ »ç¿ëÇÏ¿© ±â´ÉÀ» È®ÀåÇÏ´Â ¹æ¹ý, Socket.IO¸¦ »ç¿ëÇÏ¿© Passport.js¸¦ ½Ç½Ã°£ ¾ÖÇø®ÄÉÀ̼ǰú ÅëÇÕÇÏ´Â ¹æ¹ý, ±âŸ °í±Þ »ç¿ë »ç·Ê¸¦ »ìÆ캾´Ï´Ù.
Node.js ÀÎÁõÀ» óÀ½ »ç¿ëÇϵç, Áö½ÄÀ» ½ÉÈÇÏ°íÀÚ Çϵç, ÀÌ Ã¥Àº Node.js ¾ÖÇø®ÄÉÀ̼ǿ¡¼ ¾ÈÀüÇÏ°í È®Àå °¡´ÉÇÑ ÀÎÁõ ¼Ö·ç¼ÇÀ» ±¸ÇöÇÏ´Â µ¥ ÇÊ¿äÇÑ µµ±¸¿Í ±â¼úÀ» Á¦°øÇÕ´Ï´Ù. ÀÌ Ã¥À» ¸¶Ä¡¸é Passport.js¸¦ »ç¿ëÇÏ¿© ÀڽŠÀÖ°Ô ÀÎÁõÀ» ÅëÇÕÇÏ°í ¾ÖÇø®ÄÉÀ̼ÇÀÇ ¸®¼Ò½º¿Í µ¥ÀÌÅ͸¦ º¸È£ÇÒ ¼ö ÀÖ´Â ±â¼úÀ» °®Ãß°Ô µÉ °ÍÀÔ´Ï´Ù. Passport.jsÀÇ ¼¼°è·Î ¶Ù¾îµé¾î °·ÂÇÑ ÀÎÁõÀ» À§ÇØ ±× ÈûÀ» È°¿ëÇغ¸¼¼¿ä!
1Àå : Passport.js ¼Ò°³
___1. Passport.js¶õ?
___2. Passport.js¸¦ »ç¿ëÇØ¾ß ÇÏ´Â ÀÌÀ¯
___3. Passport.js ¾ÆÅ°ÅØó °³¿ä
2Àå : ȯ°æ ¼³Á¤Çϱâ
___1. Node.js ¹× NPM ¼³Ä¡Çϱâ
___2. Express.js ¼³Ä¡Çϱâ
___3. Passport.js ¼³Ä¡ ¹× ¼³Á¤Çϱâ
___4. ¹Ìµé¿þ¾î¿¡ ´ëÇÑ °³¿ä
3Àå : Passport.js Àü·«
___1. ·ÎÄÃ Àü·«
___2. OAuth Àü·«
___3. JWT Àü·«
___4. Google OAuth Àü·«
4Àå : Passport.js¸¦ »ç¿ëÇÏ¿© ÀÎÁõ ±¸ÇöÇϱâ
___1. ·ÎÄÃ ÀÎÁõ
___2. OAuth ÀÎÁõ
___3. JWT ÀÎÁõ
5Àå : Passport.jsÀÇ ¿À·ù ó¸®
___1. ÀÎÁõ ¿À·ù ó¸®
___2. ¿À·ù 󸮸¦ À§ÇÑ »ç¿ëÀÚ Á¤ÀÇ Äݹé
6Àå : Passport.js·Î °æ·Î º¸¾È ¼³Á¤Çϱâ
___1. º¸È£ °æ·Î ¼Ò°³
___2. Passport.js¸¦ »ç¿ëÇÏ¿© °æ·Î »ý¼º ¹× º¸¾È ¼³Á¤Çϱâ
7Àå : ·Î±×¾Æ¿ô ¹× ¼¼¼Ç °ü¸®
___1. Express.jsÀÇ ¼¼¼Ç ÀÌÇØ
___2. »ç¿ëÀÚ ·Î±×¾Æ¿ô
___3. »ç¿ëÀÚ ¼¼¼Ç °ü¸®Çϱâ
8Àå : Passport.js Àü·« Å×½ºÆ®
___1. Å×½ºÆ® µµ±¸
___2. ·ÎÄà Àü·«¿¡ ´ëÇÑ Å×½ºÆ® ÀÛ¼º
___3. OAuth ¹× JWT Àü·«¿¡ ´ëÇÑ Å×½ºÆ® ÀÛ¼ºÇϱâ
9Àå : Passport.jsÀÇ Ãß°¡ ±â´É
___1. Connect ½ºÅ¸ÀÏ ¹Ìµé¿þ¾î¿Í ÇÔ²² Passport.js »ç¿ë
___2. Socket.IO¿Í ÇÔ²² Passport.js »ç¿ëÇϱâ