´ë·®±¸¸ÅȨ >
ÄÄÇ»ÅÍ/ÀÎÅͳÝ
>
IT Àü¹®¼­

ÆîÃ帱â
API º¸¾È ÀÎ ¾×¼Ç : API º¸¾È ±â¼ú°ú ¸ð¹ü »ç·Ê (¿øÁ¦:API Security in Action)
Á¤°¡ 45,000¿ø
ÆǸŰ¡ 40,500¿ø (10% , 4,500¿ø)
I-Æ÷ÀÎÆ® 2,250P Àû¸³(6%)
ÆǸŻóÅ ÆǸÅÁß
ºÐ·ù IT Àü¹®¼­
ÃâÆÇ»ç/¹ßÇàÀÏ ¿¡ÀÌÄÜÃâÆÇ / 2024.03.29
ÆäÀÌÁö ¼ö 716 page
ISBN 9791161758299
»óÇ°ÄÚµå 356884196
°¡¿ëÀç°í Àç°íºÎÁ·À¸·Î ÃâÆÇ»ç ¹ßÁÖ ¿¹Á¤ÀÔ´Ï´Ù.
 
ÁÖ¹®¼ö·® :
´ë·®±¸¸Å Àü¹® ÀÎÅÍÆÄÅ© ´ë·®ÁÖ¹® ½Ã½ºÅÛÀ» ÀÌ¿ëÇÏ½Ã¸é °ßÀû¿¡¼­ºÎÅÍ ÇàÁ¤¼­·ù±îÁö Æí¸®ÇÏ°Ô ¼­ºñ½º¸¦ ¹ÞÀ¸½Ç ¼ö ÀÖ½À´Ï´Ù.
µµ¼­¸¦ °ßÀûÇÔ¿¡ ´ãÀ¸½Ã°í ½Ç½Ã°£ °ßÀûÀ» ¹ÞÀ¸½Ã¸é ±â´Ù¸®½Ç ÇÊ¿ä¾øÀÌ ÇÒÀιÞÀ¸½Ç ¼ö ÀÖ´Â °¡°ÝÀ» È®ÀÎÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
¸ÅÁÖ ¹ß¼ÛÇØ µå¸®´Â ÀÎÅÍÆÄÅ©ÀÇ ½Å°£¾È³» Á¤º¸¸¦ ¹Þ¾Æº¸½Ã¸é »óÇ°ÀÇ ¼±Á¤À» ´õ¿í Æí¸®ÇÏ°Ô ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.

 ´ë·®±¸¸ÅȨ  > ÄÄÇ»ÅÍ/ÀÎÅÍ³Ý  > IT Àü¹®¼­

 
Ã¥³»¿ë
# ÃßõÀÇ ±Û # ¡°º¸¾È ¼­ºñ½º ¼³°è ¹× ±¸Çö¿¡ ´ëÇÑ Æ÷°ýÀûÀÎ °¡À̵åÀÌ´Ù. º¸¾ÈÀ» °ü¸®ÇÏ´Â ¸ðµç API ½Ç¹«ÀÚ°¡ ¹Ýµå½Ã Àоî¾ß ÇÒ Ã¥ÀÌ´Ù.¡± ¦¡ ±æº£¸£Æ®Åä Ÿī¸®(Gilberto Taccari), ÆæŸ(Penta) ¡°API º¸¾È¿¡ ´ëÇÑ ½ÉÃþÀûÀÎ ÀÌÇظ¦ ¿øÇÏ´Â »ç¶÷Àº ÀÌ Ã¥À» Àоî¾ß ÇÑ´Ù.¡± ¦¡ ¹Ùºñ ¸°(Bobby Lin), DBS ÀºÇà "API¸¦ °³¹ßÇÏ´Â »ç¶÷µé¿¡°Ô ÀÌ Ã¥À» °­·ÂÈ÷ ÃßõÇÑ´Ù." ¦¡ È£¸£Çì º¸(Jorge Bo), ³ª¶õÀÚ X(Naranja X) "³»°¡ ÀÐÀº API º¸¾È¿¡ ´ëÇÑ °¡Àå Æ÷°ýÀûÀÎ °¡À̵åÀÌ´Ù." ¦¡ ¸¶Å© ·Ñ·Î(Marc Roulleau), Áö·Î(GIRO) # ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ # ´Ù¾çÇÑ È¯°æ¿¡¼­ API¸¦ º¸È£ÇÏ´Â µ¥ ÇÊ¿äÇÑ ±â¼úÀ» ¾È³»Çϱâ À§ÇØ ¾´ Ã¥ÀÌ´Ù. ±âº» º¸¾È ÄÚµù ±â¼úÀ» ´Ù·ç´Â °ÍÀ» ½ÃÀÛÀ¸·Î ÀÎÁõ ¹× ±ÇÇÑ¿¡ ´ëÇÑ ±â¼úÀ» ½Éµµ ÀÖ°Ô »ìÆ캻´Ù. ±× °úÁ¤¿¡¼­ ¼Óµµ Á¦ÇÑ ¹× ¾Ïȣȭ¿Í °°Àº ±â¼úÀ» »ç¿ëÇØ °ø°ÝÀ¸·ÎºÎÅÍ API¸¦ °­È­ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» ¾Ë°Ô µÉ °ÍÀÌ´Ù. À¥ API ±¸Ãà °æÇèÀÌ ÀÖ°í API º¸¾È ±â¼ú ¹× ¸ð¹ü »ç·Ê¿¡ ´ëÇÑ Áö½ÄÀ» Çâ»ó½ÃÅ°·Á´Â °³¹ßÀÚ¸¦ À§ÇØ ÀÌ Ã¥À» ½è´Ù. µ¶ÀÚ´Â RESTfulÀ̳ª ´Ù¸¥ ¿ø°Ý API¸¦ ±¸ÃàÇÏ´Â µ¥ Àͼ÷ÇØ¾ß Çϸç, ÆíÁý±â³ª ÅëÇÕ °³¹ß ȯ°æ(IDE, Integrated Development Environment)°ú °°Àº ÇÁ·Î±×·¡¹Ö ¾ð¾î¿Í µµ±¸¸¦ »ç¿ëÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ÇÏÁö¸¸ º¸¾È ÄÚµùÀ̳ª ¾Ïȣȭ¿¡ ´ëÇÑ »çÀü °æÇèÀº ¾ø´Ù°í °¡Á¤ÇÒ °ÍÀÌ´Ù. ÀÌ Ã¥Àº ÃֽŠAPI º¸¾ÈÀÇ Àû¿ë ¹æ½ÄÀ» ºü¸£°Ô ¾Ë°í ½Í¾îÇÏ´Â ±â¼ú ¼³°èÀÚ(technical architect)¿¡°Ôµµ À¯¿ëÇÏ°Ô »ç¿ëµÉ °ÍÀÌ´Ù. # ÀÌ Ã¥ÀÇ ±¸¼º # ÀÌ Ã¥Àº ÃÑ 5ºÎ, 13ÀåÀ¸·Î ±¸¼ºµÅ ÀÖ´Ù. 1ºÎ¿¡¼­´Â API º¸¾ÈÀÇ ±âº» »çÇ×À» ¼³¸íÇÏ°í, Ã¥ÀÇ ³ª¸ÓÁö ºÎºÐÀ» À§ÇÑ º¸¾ÈÀÇ ±âÃÊÀûÀÎ ³»¿ëÀ¸·Î ±¸¼ºÇÑ´Ù. 1Àå¿¡¼­´Â API º¸¾È¿¡ ´ëÇÑ ÁÖÁ¦¿Í API º¸¾ÈÀÇ ±¸¼º ¿ä¼Ò¸¦ Á¤ÀÇÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼Ò°³ÇÏ°í, API º¸¾È°ú °ü·ÃµÈ ±âº» ¸ÞÄ¿´ÏÁò°ú APIÀÇ À§Çù ¹× Ãë¾à¼ºÀ» ¾î¶»°Ô °í·ÁÇÒ °ÍÀÎÁö¿¡ ´ëÇØ ¾Ë¾Æº»´Ù. 2Àå¿¡¼­´Â º¸¾È °³¹ß°ú °ü·ÃµÈ ±âº» ¿øÄ¢°ú ÀÌ·¯ÇÑ ¿øÄ¢ÀÌ API º¸¾È¿¡ Àû¿ëµÇ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÏ°í, Ç¥ÁØ ÄÚµù ¹æ½ÄÀ» »ç¿ëÇØ ÀϹÝÀûÀÎ ¼ÒÇÁÆ®¿þ¾î º¸¾È °áÇÔÀ» ¹æÁöÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¾Ë¾Æº»´Ù. ¶ÇÇÑ API¸¦ À§ÇØ Ã¥ Àüü¿¡ °ÉÃÄ ÄÚµå »ùÇÃÀÇ ±âÃÊ°¡ µÇ´Â Natter¶ó´Â ¿¹Á¦ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼Ò°³ÇÑ´Ù. 3Àå¿¡¼­´Â ÀÌ Ã¥ÀÇ ³ª¸ÓÁö ºÎºÐÀÇ ¸ðµç ±âº» º¸¾È ¸ÞÄ¿´ÏÁò °³¹ß¿¡ ´ëÇØ »ìÆ캸¸ç, ±âº» ÀÎÁõ(authentication), ¼Óµµ Á¦ÇÑ(rate-limiting), °¨»ç ·Î±ë(audit logging), Á¢±Ù ÅëÁ¦(access control) ¸ÞÄ¿´ÏÁòÀ» Natter API¿¡ Ãß°¡ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¾Ë¾Æº»´Ù. 2ºÎ¿¡¼­´Â RESTful API¿¡ ´ëÇÑ ÀÎÁõ ¸ÞÄ¿´ÏÁòÀ» ÀÚ¼¼È÷ »ìÆ캻´Ù. ÀÎÁõÀº ´Ù¸¥ ¸ðµç º¸¾È ÅëÁ¦ÀÇ ±â¹ÝÀ̱⠵DZ⠶§¹®¿¡ È®½ÇÇÏ°Ô ±¸ÃàµÇµµ·Ï ½Ã°£À» ÅõÀÚÇØ¾ß ÇÑ´Ù. 4Àå¿¡¼­´Â ÀüÅëÀûÀÎ ¼¼¼Ç ÄíÅ°(session cookie) ÀÎÁõ¿¡ ´ëÇØ ´Ù·ç°í ÃֽŠÀ¥ API¸¦ »ç¿ëÇϱâ À§ÇØ À̸¦ ¾÷µ¥ÀÌÆ®Çؼ­ ±âÁ¸ À¥ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ±â¼úÀ» Àû¿ëÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁØ´Ù. ¶ÇÇÑ ÃֽŠÀ¥ API »ç¿ëÀ» À§ÇØ SameSite ÄíÅ° ¼³Á¤°ú °°Àº »õ·Î¿î °³¹ß¿¡ ´ëÇؼ­µµ ´Ù·ç°Ô µÉ °ÍÀÌ´Ù. 5Àå¿¡¼­´Â Àü´ÞÀÚ ÅäÅ«(bearer token)°ú Ç¥ÁØ ±ÇÇÑ Çì´õ¸¦ Æ÷ÇÔÇÑ ÅäÅ« ±â¹Ý ÀÎÁõ¿¡ ´ëÇÑ ´ëü Á¢±Ù ¹æ½ÄÀ» »ìÆ캻´Ù. ¶ÇÇÑ ·ÎÄà ÀúÀå¼Ò¸¦ »ç¿ëÇØ À¥ ºê¶ó¿ìÀú¿¡ ÅäÅ«À» ÀúÀåÇÏ°í ¹é¿£µå(backend)¿¡¼­ µ¥ÀÌÅͺ£À̽º ÅäÅ« ÀúÀå¼Ò¸¦ °­È­ÇÏ´Â ³»¿ëµµ ´Ù·é´Ù. 6Àå¿¡¼­´Â JSON À¥ ÅäÅ«(JSON Web Token)°ú °°Àº ÀÚü Æ÷ÇÔ ÅäÅ« Çü½Ä°ú ´ëü ÅäÅ« Çü½Ä¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. 3ºÎ¿¡¼­´Â ±ÇÇÑ¿¡ ´ëÇÑ Á¢±Ù ¹æ½Ä°ú ´©°¡ ¹«¾ùÀ» ÇÒ ¼ö ÀÖ´ÂÁö °áÁ¤ÇÏ´Â °Í¿¡ ´ëÇØ »ìÆ캻´Ù. 7Àå¿¡¼­´Â ÅäÅ« ±â¹Ý ÀÎÁõ(token-based authentication)¿¡ ´ëÇÑ Ç¥ÁØ Á¢±Ù ¹æ½ÄÀÌÀÚ ±ÇÇÑ À§ÀÓ¿¡ ´ëÇÑ Á¢±Ù ¹æ½ÄÀÎ OAuth2¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. 8Àå¿¡¼­´Â »ç¿ëÀÚÀÇ ½Å¿øÀ» ÅëÇؼ­ ¼öÇàÇÒ ¼ö ÀÖ´Â ÇàÀ§¸¦ °áÁ¤ÇÏ´Â ½Å¿ø ±â¹Ý(identity-based) Á¢±Ù ÅëÁ¦ ±â¼úÀ» ÀÚ¼¼È÷ »ìÆ캸¸ç, Á¢±Ù ÅëÁ¦ ¸ñ·Ï(access control list), ¿ªÇÒ ±â¹Ý(role-based) Á¢±Ù ÅëÁ¦ ¹× ¼Ó¼º ±â¹Ý(attribute-based) Á¢±Ù ÅëÁ¦¿¡ ´ëÇØ ´Ù·é´Ù. 9Àå¿¡¼­´Â ¼¼ºÐÈ­µÈ Å°¸¦ ±â¹ÝÀ¸·Î ÇÏ´Â ½Å¿ø ±â¹Ý ¹æ½ÄÀ» ´ëüÇÏ´Â ±â´É ±â¹Ý(capability-based) Á¢±Ù ÅëÁ¦¿¡ ´ëÇØ »ìÆ캸¸ç, Á¢±Ù ÅëÁ¦¿¡ ´ëÇÑ Èï¹Ì·Ó°í »õ·Î¿î Á¢±ÙÀÌ °¡´ÉÇÑ ÅäÅ« Çü½ÄÀÎ ¸¶Ä«·Õ(macaroon)¿¡ ´ëÇØ ´Ù·é´Ù. 4ºÎ¿¡¼­´Â Äí¹ö³×Ƽ½º ȯ°æ¿¡¼­ ½ÇÇàµÇ´Â ¸¶ÀÌÅ©·Î¼­ºñ½º API º¸¾È¿¡ ´ëÇØ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù. 10Àå¿¡¼­´Â Äí¹ö³×Ƽ½º¿¡ API¸¦ ¹èÆ÷ÇÏ´Â ¹æ¹ý°ú °³¹ßÀÚ °üÁ¡¿¡¼­ º¸¾ÈÀ» À§ÇÑ ¸ð¹ü »ç·Ê¸¦ ÀÚ¼¼È÷ ¼Ò°³ÇÑ´Ù. 11Àå¿¡¼­´Â ¼­ºñ½º °£(service-to-service) API È£Ã⠽à ÀÎÁõ¿¡ ´ëÇÑ Á¢±Ù ¹æ½Ä°ú ¼­ºñ½º °èÁ¤ ÀÚ°Ý Áõ¸í ¹× ±âŸ ºñ¹Ð Á¤º¸¸¦ ¾ÈÀüÇÏ°Ô ÀúÀåÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. 5ºÎ¿¡¼­´Â »ç¹° ÀÎÅͳÝ(IoT, Internet of Things)¿¡¼­ÀÇ API¿¡ ´ëÇØ »ìÆ캻´Ù. 12Àå¿¡¼­´Â »ç¹° ÀÎÅÍ³Ý È¯°æ¿¡¼­ Ŭ¶óÀ̾ðÆ®¿Í ¼­ºñ½º °£ÀÇ Åë½ÅÀ» º¸È£ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÑ´Ù. API ¿äûÀÌ ¿©·¯ Àü¼Û ÇÁ·ÎÅäÄÝ(transport protocol)À» ÅëÇØ À̵¿ÇØ¾ß ÇÒ ¶§ ´Ü´ë´Ü(end-to-end) º¸¾ÈÀ» º¸ÀåÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¹è¿ï °ÍÀÌ´Ù. 13Àå¿¡¼­´Â »ç¹° ÀÎÅÍ³Ý È¯°æ¿¡¼­ API ¿äûÀ» ½ÂÀÎÇÏ´Â ¹æ½Ä¿¡ ´ëÇØ ÀÚ¼¼È÷ ¼³¸íÇϸç, ¿Â¶óÀÎ ¼­ºñ½º¿¡¼­ ÀåÄ¡ÀÇ ¿¬°áÀÌ ²÷°åÀ» ¶§ ¿ÀÇÁ¶óÀÎ ÀÎÁõ ¹× Á¢±Ù ÅëÁ¦¿¡ ´ëÇؼ­µµ »ìÆ캻´Ù. # ¿Å±äÀÌÀÇ ¸» # ¹Ù¾ßÈå·Î IT ¼­ºñ½ºÀÇ ´ëÇõ½Å±â¶ó°í Çصµ °ú¾ðÀº ¾Æ´Ñ °Í °°´Ù. ¸¶ÀÌÅ©·Î¼­ºñ½º, Ŭ¶ó¿ìµå, ÄÁÅ×À̳Ê, »ç¹° ÀÎÅͳÝÀÇ µîÀåÀ¸·Î ÀÎÇØ IT ȯ°æÀº ±Þ°ÝÈ÷ º¯È­ÇÏ°í ÀÖÀ¸¸ç, ÀÌ·¯ÇÑ º¯È­ÀÇ Çٽɿ¡´Â API°¡ ÀÖ´Ù. ÀÌÁ¦´Â ¸ðµç °ÍÀ» È¥ÀÚ ´ã´çÇÏÁö ¾Ê´Â´Ù. ÀϺθ¸ ´ã´çÇÏ°í ³ª¸ÓÁö´Â API¸¦ ÅëÇؼ­ ¿¬°áÇϱ⸸ ÇÏ´Â Æí¾ÈÇÑ ¼¼»óÀÌ ¿Â °ÍÀÌ´Ù. ÀÌ·¯ÇÑ È¯°æ¿¡¼­ º¸¾Èµµ º¯È­ÇØ¾ß ÇÑ´Ù. ƯÈ÷ °¢ ¼­ºñ½º¸¦ ¿¬°áÇÏ´Â API º¸¾ÈÀº ¹«¾ùº¸´Ùµµ Áß¿äÇϸç, APIÀÇ º¸¾È Ãë¾àÁ¡À¸·Î ÀÎÇØ Áß¿ä Á¤º¸°¡ ³ëÃâµÇ´Â º¸¾È »ç°í°¡ ¹ß»ýÇÒ ¼ö ÀÖ´Ù. ÀÌ Ã¥Àº API°¡ ¹«¾ùÀÎÁöºÎÅÍ ½ÃÀÛÇؼ­ ½ÇÁ¦ÀûÀ¸·Î API º¸¾ÈÀ» Àû¿ëÇϱâ À§ÇÑ ¹æ¹ý±îÁö Á¦½ÃÇÏ°í ÀÖ´Ù. API °³³ä°ú °³¹ß º¸¾È, ÅäÅ« ±â¹Ý ÀÎÁõ°ú ±ÇÇÑ, Äí¹ö³×Ƽ½º ȯ°æ¿¡¼­ÀÇ ¸¶ÀÌÅ©·Î¼­ºñ½º¿Í »ç¹°ÀÎÅÍ³Ý È¯°æ¿¡¼­ÀÇ API±îÁö Àü¹ÝÀûÀÎ API º¸¾È¿¡ ´ëÇÑ ¿µ¿ªÀ» ´Ù·ç°í ÀÖ´Ù. º¸¾È ÄÚµù ±â¼úÀ» ½ÃÀÛÀ¸·Î ÀÎÁõ ¹× ±ÇÇÑ¿¡ ´ëÇÑ ±â¼úÀ» ½Éµµ ÀÖ°Ô ´Ù·ç°í ÀÖÀ¸¸ç, ¼Óµµ Á¦ÇÑ, ¾Ïȣȭ¿Í °°Àº ±â¼úÀ» ÅëÇØ °ø°ÝÀ¸·ÎºÎÅÍ API¸¦ º¸È£ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀ» Á¦°øÇÑ´Ù. ƯÈ÷³ª ´Ü¼øÈ÷ °³³ä À§ÁÖÀÇ ¼³¸íÀÌ ¾Æ´Ñ ÀÌÇظ¦ µ½±â À§ÇÑ ¿¹½Ã³ª ½ÇÁ¦ Àû¿ë °¡´ÉÇÑ ´Ù¾çÇÑ ÇÁ·Î±×·¥ ¼Ò½º±îÁö Á¦°øÇÏ°í ÀÖ¾î µ¶ÀÚ¿¡°Ô ¸¹Àº µµ¿òÀ» ÁÖ±â À§ÇÑ ÈçÀûÀÌ ¿³º¸ÀδÙ. ÀúÀÚ´Â API º¸¾È¿¡ ´ëÇÑ ³»¿ë ÀÌ¿Ü¿¡µµ º¸¾È¿¡ ´ëÇÑ ±âÃÊÀûÀÌ°í, Àü¹ÝÀûÀÎ ¿µ¿ªÀ» ´Ù·ç°í ÀÖÀ¸¸ç, ÀڽŸ¸ÀÇ ´Ù¾çÇÑ Ã¶ÇÐÀ» ´ã¾Æ¼­ Ã¥À» ÁýÇÊÇß´Ù. IT º¸¾È ºÐ¾ß´Â ºü¸£°Ô º¯È­ÇÏ°í ÀÖ´Ù. ÇÏÁö¸¸ ½Ã´ë¿Í »ó°ü¾øÀÌ Ã³À½ API¸¦ Á¢ÇÏ´Â ÇлýºÎÅÍ API °³¹ßÀÚ, Àü¹®ÀûÀ¸·Î º¸¾ÈÀ» ´Ù·ç´Â ´ã´çÀÚ±îÁö ´Ù¾çÇÑ »ç¶÷¿¡°Ô ÀÌ Ã¥ÀÌ µµ¿òÀ» ÁÙ ¼ö ÀÖÀ» °ÍÀ̶ó È®½ÅÇÑ´Ù.
¸ñÂ÷
1ºÎ. ±âÃÊ 1Àå. API º¸¾ÈÀÇ Á¤ÀÇ 1.1 ºñÀ¯: ¿îÀü¸éÇã ½ÃÇè ÀÀ½Ã 1.2 API Á¤ÀÇ 1.2.1 API ¹æ½Ä 1.3 »óȲ»óÀÇ API º¸¾È 1.3.1 ÀϹÝÀûÀÎ API ¹èÆ÷ 1.4 API º¸¾È ¿ä¼Ò 1.4.1 ÀÚ»ê 1.4.2 º¸¾È ¸ñÇ¥ 1.4.3 ȯ°æ ¹× À§Çù ¸ðµ¨ 1.5 º¸¾È ¸ÞÄ¿´ÏÁò 1.5.1 ¾Ïȣȭ 1.5.2 ½Äº° ¹× ÀÎÁõ 1.5.3 Á¢±Ù ÅëÁ¦ ¹× ±ÇÇÑ 1.5.4 °¨»ç ·Î±ë 1.5.5 ¼Óµµ Á¦ÇÑ ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 2Àå. º¸¾È API °³¹ß 2.1 Natter API 2.1.1 Natter API °³¿ä 2.1.2 ±¸Çö °³¿ä 2.1.3 ÇÁ·ÎÁ§Æ® Áغñ 2.1.4 µ¥ÀÌÅͺ£À̽º ÃʱâÈ­ 2.2 REST API °³¹ß 2.2.1 ½Å±Ô °ø°£ »ý¼º 2.3 REST ¿£µåÆ÷ÀÎÆ® ¿¬°á 2.3.1 »ç¿ë 2.4 ÁÖÀÔ °ø°Ý 2.4.1 ÁÖÀÔ °ø°Ý ¹æÁö 2.4.2 ±ÇÇÑÀ» ÅëÇÑ SQL ÁÖÀÔ ¿ÏÈ­ 2.5 ÀÔ·Â À¯È¿¼º °ËÁõ 2.6 ¾ÈÀüÇÑ Ãâ·Â »ý¼º 2.6.1 Å©·Î½º »çÀÌÆ® ½ºÅ©¸³Æà °ø°Ý ¾Ç¿ë 2.6.2 Å©·Î½º »çÀÌÆ® ½ºÅ©¸³Æà ¹æÁö 2.6.3 º¸¾È ±â´É ±¸Çö ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 3Àå. Natter API º¸¾È 3.1 º¸¾È ÅëÁ¦¸¦ ÅëÇÑ À§Çù ÇØ°á 3.2 °¡¿ë¼ºÀ» À§ÇÑ ¼Óµµ Á¦ÇÑ 3.2.1 ±¸¾Æ¹Ù·Î ¼Óµµ Á¦ÇÑ 3.3 À§Á¶ ¹æÁö¸¦ À§ÇÑ ÀÎÁõ 3.3.1 HTTP Basic ÀÎÁõ 3.3.2 ½ºÅ©¸³Æ®·Î ¾ÈÀüÇÑ ºñ¹Ð¹øÈ£ ÀúÀå 3.3.3 3.3.4 Natter API¿¡ »ç¿ëÀÚ µî·Ï 3.3.5 »ç¿ëÀÚ ÀÎÁõ 3.4 ¾Ïȣȭ¸¦ ÅëÇÑ µ¥ÀÌÅÍ ºñ°ø°³ À¯Áö 3.4.1 HTTPS È°¼ºÈ­ 3.4.2 ¾ö°ÝÇÑ Àü¼Û º¸¾È 3.5 Ã¥ÀÓ ÃßÀû¼ºÀ» À§ÇÑ °¨»ç ·Î±ë 3.6 Á¢±Ù ÅëÁ¦ 3.6.1 ÀÎÁõ Àû¿ë 3.6.2 Á¢±Ù ÅëÁ¦ ¸ñ·Ï 3.6.3 Natter¿¡¼­ Á¢±Ù ÅëÁ¦ Àû¿ë 3.6.4 Natter °ø°£¿¡ ½Å±Ô ¸â¹ö Ãß°¡ 3.6.5 ±ÇÇÑ »ó½Â °ø°Ý ¹æÁö ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 2ºÎ. ÅäÅ« ±â¹Ý ÀÎÁõ 4Àå. ¼¼¼Ç ÄíÅ° ÀÎÁõ 4.1 À¥ ºê¶ó¿ìÀú¿¡¼­ ÀÎÁõ 4.1.1 ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼­ Natter API È£Ãâ 4.1.2 ¾ç½Ä Á¦Ãâ °¡·Îä±â 4.1.3 µ¿ÀÏÇÑ Ãâó¿¡¼­ HTML Á¦°ø 4.1.4 HTTP ÀÎÁõÀÇ ¹®Á¦Á¡ 4.2 ÅäÅ« ±â¹Ý ÀÎÁõ 4.2.1 ÅäÅ« ÀúÀå¼Ò Ãß»óÈ­ 4.2.2 ÅäÅ« ±â¹Ý ·Î±×ÀÎ ±¸Çö 4.3 ¼¼¼Ç ÄíÅ° 4.3.1 ¼¼¼Ç °íÁ¤ °ø°Ý ¹æÁö 4.3.2 ÄíÅ° º¸¾È ¼Ó¼º 4.3.3 ¼¼¼Ç ÄíÅ° À¯È¿¼º °ËÁõ 4.4 »çÀÌÆ® °£ ¿äû À§Á¶ °ø°Ý ¹æÁö 4.4.1 SameSite ÄíÅ° 4.4.2 Çؽà ±â¹Ý ÀÌÁß Á¦Ãâ ÄíÅ° 4.4.3 Natter API¿ë ÀÌÁß Á¦Ãâ ÄíÅ° 4.5 Natter ·Î±×ÀÎ UI ±¸Ãà 4.5.1 ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼­ ·Î±×ÀÎ API È£Ãâ 4.6 ·Î±×¾Æ¿ô ±¸Çö ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 5Àå. ÃֽŠÅäÅ« ±â¹Ý ÀÎÁõ 5.1 CORS¸¦ ÅëÇÑ µµ¸ÞÀÎ °£ ¿äû Çã¿ë 5.1.1 »çÀü ¿äû 5.1.2 CORS Çì´õ 5.1.3 Natter API¿¡ CORS Çì´õ Ãß°¡ 5.2 ÄíÅ°¸¦ »ç¿ëÇÏÁö ¾Ê´Â ÅäÅ« 5.2.1 µ¥ÀÌÅͺ£À̽º¿¡ ÅäÅ« »óÅ ÀúÀå 5.2.2 º£¾î·¯ ÀÎÁõ ½ºÅ°¸¶ 5.2.3 ¸¸·áµÈ ÅäÅ« »èÁ¦ 5.2.4 À¥ ÀúÀå¼Ò¿¡ ÅäÅ« ÀúÀå 5.2.5 CORS ÇÊÅÍ ¾÷µ¥ÀÌÆ® 5.2.6 À¥ ÀúÀå¼Ò¿¡ ´ëÇÑ Å©·Î½º »çÀÌÆ® ½ºÅ©¸³Æà °ø°Ý 5.3 µ¥ÀÌÅͺ£À̽º ÅäÅ« ÀúÀå¼Ò °­È­ 5.3.1 µ¥ÀÌÅͺ£À̽º ÅäÅ« ÇØ½Ì 5.3.2 HMACÀ¸·Î ÅäÅ« ÀÎÁõÇϱâ 5.3.3 ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 6Àå. ÀÚü Æ÷ÇÔ ÅäÅ« ¹× JSON À¥ ÅäÅ« 6.1 Ŭ¶óÀ̾ðÆ®¿¡ ÅäÅ« »óÅ ÀúÀå 6.1.1 HMAC¸¦ ÅëÇÑ JSON ÅäÅ« º¸È£ 6.2 JSON À¥ ÅäÅ« 6.2.1 Ç¥ÁØ JWT Ŭ·¹ÀÓ 6.2.2 JOSE Çì´õ 6.2.3 Ç¥ÁØ JWT »ý¼º 6.2.4 ¼­¸íµÈ JWT À¯È¿¼º °ËÁõ 6.3 ¹Î°¨ÇÑ ¼Ó¼º ¾Ïȣȭ 6.3.1 ÀÎÁõµÈ ¾Ïȣȭ 6.3.2 NaCl·Î ÀÎÁõµÈ ¾Ïȣȭ 6.3.3 ¾ÏȣȭµÈ JWT 6.3.4 JWT ¶óÀ̺귯¸® »ç¿ë 6.4 ¾ÈÀüÇÑ API ¼³°è¸¦ À§ÇÑ À¯Çü »ç¿ë 6.5 ÅäÅ« Æó±â ó¸® 6.5.1 ÇÏÀ̺긮µå ÅäÅ« ±¸Çö ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 3ºÎ. ±ÇÇÑ 7Àå. OAuth2 ¹× OpenID Connect 7.1 ¹üÀ§ ÅäÅ« 7.1.1 Natter¿¡ ¹üÀ§ ÅäÅ« Ãß°¡ 7.1.2 ¹üÀ§¿Í Çã°¡ÀÇ Â÷ÀÌ 7.2 OAuth2 ¼Ò°³ 7.2.1 Ŭ¶óÀ̾ðÆ® À¯Çü 7.2.2 ±ÇÇÑ ºÎ¿© 7.2.3 OAuth2 ¿£µåÆ÷ÀÎÆ® °ËÃâ 7.3. ±ÇÇÑ ÄÚµå ºÎ¿© 7.3.1 ´Ù¸¥ À¯ÇüÀÇ Å¬¶óÀ̾ðÆ®¿¡ ´ëÇÑ URI ¸®´ÙÀÌ·ºÆ® 7.3.2 Áõ¸í Å° ÄÚµå ±³È¯À¸·Î ÄÚµå ±³È¯ °­È­ 7.3.3 »õ·Î °íħ ÅäÅ« 7.4 Á¢±Ù ÅäÅ« À¯È¿¼º °ËÁõ 7.4.1 ÅäÅ« ÀÚü °Ë»ç 7.4.2 HTTPS Ŭ¶óÀ̾ðÆ® ±¸¼º º¸¾È 7.4.3 ÅäÅ« Æó±â 7.4.4 JWT Á¢±Ù ÅäÅ« 7.4.5 ¾ÏȣȭµÈ JWT Á¢±Ù ÅäÅ« 7.4.6 ±ÇÇÑ ¼­¹öÀÇ ÅäÅ« º¹È£È­ Çã¿ë 7.5 ÅëÇÕ ÀÎÁõ 7.6 OpenID Connect 7.6.1 ID ÅäÅ« 7.6.2 OIDC °­È­ 7.6.3 API¿¡ ID ÅäÅ« Àü´Þ ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 8Àå. ½Å¿ø ±â¹Ý Á¢±Ù ÅëÁ¦ 8.1 »ç¿ëÀÚ ¹× ±×·ì 8.1.1 LDAP ±×·ì 8.2 ¿ªÇÒ ±â¹Ý Á¢±Ù ÅëÁ¦ 8.2.1 Çã°¡¿¡ ¿ªÇÒ ¸ÅÇÎ 8.2.2 °íÁ¤ ¿ªÇÒ 8.2.3 »ç¿ëÀÚ ¿ªÇÒ °áÁ¤ 8.2.4 µ¿Àû ¿ªÇÒ 8.3 ¼Ó¼º ±â¹Ý Á¢±Ù ÅëÁ¦ 8.3.1 °áÁ¤ °áÇÕ 8.3.2 ABAC °áÁ¤ ±¸Çö 8.3.3 Á¤Ã¥ ¿¡ÀÌÀüÆ® ¹× API °ÔÀÌÆ®¿þÀÌ 8.3.4 ºÐ»ê Á¤Ã¥ ½ÃÇà ¹× XACML 8.3.5 ABACÀÇ ¸ð¹ü »ç·Ê ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 9Àå. ±â´É ±â¹Ý º¸¾È ¹× ¸¶Ä«·Õ 9.1 ±â´É ±â¹Ý º¸¾È 9.2 ±â´É ¹× REST 9.2.1 URI·Î¼­ÀÇ ±â´É 9.2.2 Natter API¿¡¼­ ±â´É URI »ç¿ë 9.2.3 HATEOAS 9.2.4 ºê¶ó¿ìÀú ±â¹Ý Ŭ¶óÀ̾ðÆ®ÀÇ ±â´É URI 9.2.5 ±â´É°ú ½Å¿ø °áÇÕ 9.2.6 ±â´É URI °­È­ 9.3 ¸¶Ä«·Õ: ÁÖÀÇ »çÇ×ÀÌ ÀÖ´Â ÅäÅ« 9.3.1 »óȲº° ÁÖÀÇ »çÇ× 9.3.2 ¸¶Ä«·Õ ÅäÅ« ÀúÀå¼Ò 9.3.3 ÀÚ»ç ÁÖÀÇ »çÇ× 9.3.4 Ÿ»ç ÁÖÀÇ »çÇ× ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 4ºÎ. Äí¹ö³×Ƽ½ºÀÇ ¸¶ÀÌÅ©·Î¼­ºñ½º API 10Àå. Äí¹ö³×Ƽ½ºÀÇ ¸¶ÀÌÅ©·Î¼­ºñ½º API 10.1 Äí¹ö³×Ƽ½ºÀÇ ¸¶ÀÌÅ©·Î¼­ºñ½º API 10.2 Äí¹ö³×Ƽ½º¿¡ Natter ¹èÆ÷ 10.2.1 µµÄ¿ ÄÁÅ×À̳ʷΠH2 µ¥ÀÌÅͺ£À̽º ºôµå 10.2.2 Äí¹ö³×Ƽ½º¿¡ µ¥ÀÌÅͺ£À̽º ¹èÆ÷ 10.2.3 Natter API¸¦ µµÄ¿ ÄÁÅ×À̳ʷΠºôµå 10.2.4 ¸µÅ© ¹Ì¸®º¸±â ¸¶ÀÌÅ©·Î¼­ºñ½º 10.2.5 ½Å±Ô ¸¶ÀÌÅ©·Î¼­ºñ½º ¹èÆ÷ 10.2.6 ¸µÅ© ¹Ì¸®º¸±â ¸¶ÀÌÅ©·Î¼­ºñ½º È£Ãâ 10.2.7 SSRF °ø°Ý ¹æÁö 10.2.8 DNS ¸®¹ÙÀεù °ø°Ý 10.3 ¸¶ÀÌÅ©·Î¼­ºñ½º Åë½Å º¸¾È 10.3.1 TLS·Î Åë½Å º¸¾È 10.3.2 TLS¿¡ ¼­ºñ½º ¸Þ½Ã »ç¿ë 10.3.3 ³×Æ®¿öÅ© ¿¬°á Àá±Ý 10.4 µé¾î¿À´Â ¿äû º¸¾È ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 11Àå. ¼­ºñ½º °£ API º¸¾È 11.1 API Å° ¹× JWT º£¾î·¯ ÀÎÁõ 11.2 OAuth2 Ŭ¶óÀ̾ðÆ® ÀÚ°Ý Áõ¸í ºÎ¿© 11.2.1 ¼­ºñ½º °èÁ¤ 11.3 OAuth2¿¡ JWT º£¾î·¯ ºÎ¿© 11.3.1 Ŭ¶óÀ̾ðÆ® ÀÎÁõ 11.3.2 JWT »ý¼º 11.3.3 ¼­ºñ½º °èÁ¤ ÀÎÁõ 11.4 »óÈ£ TLS ÀÎÁõ 11.4.1 TLS ÀÎÁõ¼­ ÀÎÁõ ÀÛµ¿ ¹æ½Ä 11.4.2 Ŭ¶óÀ̾ðÆ® ÀÎÁõ¼­ ÀÎÁõ 11.4.3 Ŭ¶óÀ̾ðÆ® ½Å¿ø À¯È¿¼º °ËÁõ 11.4.4 ¼­ºñ½º ¸Þ½Ã »ç¿ë 11.4.5 OAuth2¸¦ ÅëÇÑ »óÈ£ TLS 11.4.6 ÀÎÁõ¼­ ¹ÙÀεù Á¢±Ù ÅäÅ« 11.5 ¼­ºñ½º ÀÚ°Ý Áõ¸í °ü¸® 11.5.1 Äí¹ö³×Ƽ½º ºñ¹Ð 11.5.2 Å° ¹× ºñ¹Ð °ü¸® ¼­ºñ½º 11.5.3 µð½ºÅ©¿¡ ¼ö¸íÀÌ ±ä ºñ¹Ð ¹æÁö 11.5.4 Å° ÆÄ»ý 11.6 »ç¿ëÀÚ ¿äû¿¡ ´ëÇÑ ¼­ºñ½º API È£Ãâ 11.6.1 ÆÒÅÒ ÅäÅ« ¾ç½Ä 11.6.2 OAuth2 ÅäÅ« ±³È¯ ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 5ºÎ. IoT¿ë API 12Àå. IoT Åë½Å º¸¾È 12.1 Àü¼Û °èÃþ º¸¾È 12.1.1 µ¥ÀÌÅͱ׷¥ TLS 12.1.2 Á¦ÇÑµÈ ÀåÄ¡¸¦ À§ÇÑ ¾ÏÈ£ Á¦Ç°±º 12.2 »çÀü °øÀ¯ Å° 12.2.1 PSK ¼­¹ö ±¸Çö 12.2.2 PSK Ŭ¶óÀ̾ðÆ® 12.2.3 ¿ø½Ã PSK ¾ÏÈ£ Á¦Ç°±º Áö¿ø 12.2.4 ¼ø¹æÇâ ºñ¹Ð¼ºÀ» °¡Áø PSK 12.3 Á¾´Ü °£ º¸¾È 12.3.1 COSE 12.3.2 COSEÀÇ ´ëü ¹æ¾È 12.3.3 ¿À¿ë ¹æÁö ÀÎÁõ ¾Ïȣȭ 12.4 Å° ¹èÆ÷ ¹× °ü¸® 12.4.1 ÀÏȸ¼º Å° ÇÁ·ÎºñÀú´× 12.4.2 Å° ¹èÆ÷ ¼­¹ö 12.4.3 Àü¹æ ºñ¹Ð À¯Áö¿¡ ´ëÇÑ ·¡Ä© 12.4.4 ħÇØ ÈÄ º¸¾È ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à 13Àå. IoT API º¸¾È 13.1 ÀåÄ¡ ÀÎÁõ 13.1.1 ÀåÄ¡ ½Äº° 13.1.2 ÀåÄ¡ ÀÎÁõ¼­ 13.1.3 Àü¼Û °èÃþ¿¡¼­ ÀÎÁõ 13.2 Á¾´Ü °£ ÀÎÁõ 13.2.1 OSCORE 13.2.2 REST API¿¡¼­ Àç»ý ¹æÁö 13.3 Á¦ÇÑµÈ È¯°æÀ» À§ÇÑ OAuth2 13.3.1 ÀåÄ¡ ±ÇÇÑ ºÎ¿© 13.3.2 ACE-OAuth 13.4 ¿ÀÇÁ¶óÀÎ Á¢±Ù ÅëÁ¦ 13.4.1 ¿ÀÇÁ¶óÀÎ »ç¿ëÀÚ ÀÎÁõ 13.4.2 ¿ÀÇÁ¶óÀÎ ±ÇÇÑ ¿¬½À ¹®Á¦ Á¤´ä ¿ä¾à ºÎ·Ï A. ÀÚ¹Ù ¹× ¸ÞÀÌºì ¼³Á¤ ºÎ·Ï B. Äí¹ö³×Ƽ½º ¼³Á¤

ÀÌ ÃâÆÇ»çÀÇ °ü·Ã»óÇ°
Tkinter¸¦ »ç¿ëÇÑ ÆÄÀ̽ã GUI ÇÁ·Î±×·¡¹Ö | Moore, Alan D.,ÀÌÅ»ó | ¿¡ÀÌÄÜÃâÆÇ
RESTful Web API ÆÐÅÏ°ú ¸ð¹ü »ç·Ê | ¸¶ÀÌÅ© ¾Ö¸Õ½¼,±è¼ºÁØ | ¿¡ÀÌÄÜÃâÆÇ
Çؼ® °¡´ÉÇÑ AI | ÃÖ¿µÀç,Thampi, Ajay | ¿¡ÀÌÄÜÃâÆÇ
Åë°èÀÇ ÇÔÁ¤ | ¾Ù·± B. ´Ù¿ì´Ï,±è»óÇö | ¿¡ÀÌÄÜÃâÆÇ
125°¡Áö ¹®ÀÚ¿­ ¾Ë°í¸®µë | º¸ÀÌý ¸®ÅÍ,Ƽ¿¡¸® ¸£Å©·Î,¸·½É Å©·Î½´¸ð¾î,³²±âȯ | ¿¡ÀÌÄÜÃâÆÇ

ÀÌ ºÐ¾ß ½Å°£ °ü·Ã»óÇ°
2024 SD¿¡µà Win-Q 3DÇÁ¸°ÅÍ¿î¿ë±â´É»ç ½Ç±â ´Ü±âÇÕ°Ý | ¹Úº´¿í | ½Ã´ë°í½Ã±âȹ
2024 SD¿¡µà À¯¼±¹è GTQ Æ÷Åä¼¥ 1±Þ °ú¿Ü³ëÆ® | Á¶Àθí | ½Ã´ë°í½Ã±âȹ
Çؼ® °¡´ÉÇÑ AI | ÃÖ¿µÀç,Thampi, Ajay | ¿¡ÀÌÄÜÃâÆÇ
2024 ÃÖ½ÅÆÇ ISMS-P ÀÎÁõ½É»ç¿ø ÀÚ°Ý°ËÁ¤ ½ÇÀü¸ðÀÇ°í»ç | ¿À¼¼Çö,ÇÑÁ¾ºó,±èâÁß,Çã¾Æ¶÷,ÃÖÇü¿í ¿Ü | ´Ù¶ô¿ø
³ª, °³¹ßÀÚ·Î 100¸í Ãë¾÷½ÃÄ×´Ù | ±è±Ô¼® | ÀÌÁö½ºÆÛºí¸®½Ì
 
µµ¼­¸¦ ±¸ÀÔÇϽŠ°í°´ ¿©·¯ºÐµéÀÇ ¼­ÆòÀÔ´Ï´Ù.
ÀÚÀ¯·Î¿î ÀÇ°ß ±³È¯ÀÌ °¡´ÉÇÕ´Ï´Ù¸¸, ¼­ÆòÀÇ ¼º°Ý¿¡ ¸ÂÁö ¾Ê´Â ±ÛÀº »èÁ¦µÉ ¼ö ÀÖ½À´Ï´Ù.

µî·ÏµÈ ¼­ÆòÁß ºÐ¾ß¿Í »ó°ü¾øÀÌ ¸ÅÁÖ ¸ñ¿äÀÏ 5ÆíÀÇ ¿ì¼öÀÛÀ» ¼±Á¤ÇÏ¿©, S-Money 3¸¸¿øÀ» Àû¸³Çص帳´Ï´Ù.
ÃÑ 0°³ÀÇ ¼­ÆòÀÌ ÀÖ½À´Ï´Ù.