AG¹«Ë¾

AG¹«Ë¾

AG¹«Ë¾¿Æ¼¼

  • »ù´¡ÉèÊ©Çå¾²

    »ù´¡ÉèÊ©Çå¾²
  • Êý¾ÝÇå¾²

    Êý¾ÝÇå¾²
  • ÔÆÅÌËãÇå¾²

    ÔÆÅÌËãÇå¾²
  • AIÇå¾²

    AIÇå¾²
  • ¹¤Òµ»¥ÁªÍøÇå¾²

    ¹¤Òµ»¥ÁªÍøÇå¾²
  • ÎïÁªÍøÇå¾²

    ÎïÁªÍøÇå¾²
  • ÐÅÏ¢ÊÖÒÕÓ¦ÓÃÁ¢Òì

    ÐÅÏ¢ÊÖÒÕÓ¦ÓÃÁ¢Òì
  • ËùÓвúÆ·

    ËùÓвúÆ·
  • ËùÓнâ¾ö¼Æ»®

    ËùÓнâ¾ö¼Æ»®

»ù´¡ÉèÊ©Çå¾²


  • Õþ¸®

    Õþ¸®
  • ÔËÓªÉÌ

    ÔËÓªÉÌ
  • ½ðÈÚ

    ½ðÈÚ
  • ÄÜÔ´

    ÄÜÔ´
  • ½»Í¨

    ½»Í¨
  • ÆóÒµ

    ÆóÒµ
  • ¿Æ½ÌÎÄÎÀ

    ¿Æ½ÌÎÄÎÀ

  • AG¹«Ë¾ÔÆ AG¹«Ë¾ÔÆ
  • AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI
  • TechWorldÊÖÒÕ¼ÎÄ껪 TechWorldÊÖÒÕ¼ÎÄ껪
  • ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á
  • ÊÖÒÕ²©¿Í ÊÖÒÕ²©¿Í
  • Àֳɰ¸Àý Àֳɰ¸Àý

ÏàÖúͬ°éÉó²é¸ü¶à >

ÏàÖúͬ°é¶¯Ì¬

³ÉΪÏàÖúͬ°é

  • AG¹«Ë¾ÔÆ AG¹«Ë¾ÔÆ
  • AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI
  • TechWorldÊÖÒÕ¼ÎÄ껪 TechWorldÊÖÒÕ¼ÎÄ껪
  • ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á
  • ÊÖÒÕ²©¿Í ÊÖÒÕ²©¿Í
  • Àֳɰ¸Àý Àֳɰ¸Àý

ÊÖÒÕÖ§³ÖÉó²é¸ü¶à >

²úÆ·Ö§³Ö

  • AG¹«Ë¾ÔÆ AG¹«Ë¾ÔÆ
  • AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI AG¹«Ë¾ÍþвÇ鱨ÖÐÐÄNTI
  • TechWorldÊÖÒÕ¼ÎÄ껪 TechWorldÊÖÒÕ¼ÎÄ껪
  • ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á ±±¾©AG¹«Ë¾¹«Òæ»ù½ð»á
  • ÊÖÒÕ²©¿Í ÊÖÒÕ²©¿Í
  • Àֳɰ¸Àý Àֳɰ¸Àý

·µ»ØÁбí

¹ØÓÚÔÆÔ­ÉúÓ¦Óã¬ÕâЩÇ徲Σº¦ÏàʶһÏÂ

2021-08-05

 

ÕªÒª£ºÔÆÔ­ÉúÓ¦ÓÃÊÂʵºÍ¹Å°åÓ¦ÓÃÓкβî±ð£¬Ç徲Σº¦ÉÏÓкÎת±ä£¿±¾ÎĽ«´Ó¹Å°åÓ¦ÓÃΣº¦¡¢Ó¦Óüܹ¹Àå¸ï´øÀ´µÄΣº¦¡¢ÔÆÅÌËãģʽ´øÀ´µÄΣº¦Èý¸öά¶È¾ÙÐÐÏÈÈÝ¡£

 

Ò».  ¸ÅÊö

Ëæ×ÅÔÆÅÌËãÊÖÒÕµÄÒ»Ö±Éú³¤£¬ÉÏÔÆÒѾ­²»ÔÙÊÇÒ»ÖÖÑ¡Ôñ£¬¶øÊÇÒ»ÖÖ¹²Ê¶£¬ÊÇÆóÒµÊý×Ö»¯×ªÐ͵ÄÐëÒªÌõ¼þ¡£ÔÚÏìӦʵ¼ùÀú³ÌÖУ¬¹Å°åÓ¦Óñ£´æÉý¼¶»ºÂý¡¢¼Ü¹¹Ó·Öס¢ÎÞ·¨µ¯ÐÔÀ©Õ¹¼°¿ìËÙµü´úµÈÎÊÌ⣬ÓÚÊǽüÄêÀ´ÔÆÔ­ÉúµÄ¿´·¨Ó¦Ô˶øÉú£¬ÒÀ¸½×ÅÔÆÔ­Éúµ¯ÐÔ¡¢Ñ¸ËÙ¡¢×ÊÔ´³ØºÍ·þÎñ»¯µÈÌØÕ÷£¬½â¾öÁËÓªÒµÔÚ¿ª·¢¡¢¼¯³É¡¢·Ö·¢ºÍÔËÐеÈÕû¸öÉúÃüÖÜÆÚÖÐÓöµ½µÄÎÊÌâ¡£

 

ÔÆÔ­ÉúÇéÐÎÖУ¬Ó¦ÓÃÓɹŰåµÄµ¥Ìå¼Ü¹¹×ªÏò΢·þÎñ¼Ü¹¹£¬ÔÆÅÌËãģʽҲÏìÓ¦µÄ´Ó»ù´¡ÉèÊ©¼´·þÎñ£¨Infrastructure as a Service£¬IaaS£©×ªÏòΪÈÝÆ÷¼´·þÎñ£¨Container as a Service£¬CaaS£©ºÍº¯Êý¼´·þÎñ£¨Function as a Service£¬FaaS£©¡£Ó¦Óüܹ¹ºÍÔÆÅÌËãģʽµÄÀå¸ïÊÇ·ñ»áµ¼Ö½øÒ»²½µÄΣº¦£¬ÕâЩΣº¦½ÏÖ®¹Å°åÓ¦ÓÃΣº¦ÓÖÓÐÄÄÐ©Çø±ð£¿ÔÚ½²ÊöÔÆÔ­ÉúÓ¦ÓÃÏêϸΣº¦Ç°£¬Ê×ÏÈö¾ÙÒÔÏÂÈý¸ö¿´·¨£¬ÕâЩ¿´·¨ÓÐÖúÓÚ¸÷È˸üºÃµØÃ÷È·±¾ÎÄËù½²ÊöµÄÄÚÈÝ¡£

 

¿´·¨Ò» ÔÆÔ­ÉúÓ¦ÓüÌÐøÁ˹ŰåÓ¦ÓõÄΣº¦ºÍAPIµÄΣº¦

ÔÆÔ­ÉúÓ¦ÓÃÔ´ÓڹŰåÓ¦Óã¬Òò¶øÔÆÔ­ÉúÓ¦ÓÃΣº¦Ò²¾Í¼ÌÐøÁ˹ŰåÓ¦ÓõÄΣº¦¡£±ðµÄ£¬ÓÉÓÚÔÆÔ­ÉúÓ¦Óüܹ¹µÄת±ä½ø¶øµ¼ÖÂÓ¦ÓÃAPI½»»¥µÄÔö¶à£¬¿ÉÒÔËµÔÆÔ­ÉúÓ¦ÓÃÖд󲿷ֽ»»¥Ä£Ê½ÒÑ´ÓWebÇëÇó/ÏìӦתÏòÖÖÖÖAPIÇëÇó/ÏìÓ¦ £¬ÀýÈçRESTful/HTTP¡¢gRPCµÈ£¬Òò¶øAPIΣº¦Ò²½øÒ»²½ÌáÉý¡£

¿´·¨¶þ Ó¦Óüܹ¹Àå¸ï½«»á´øÀ´ÐµÄΣº¦

ÓÉÓÚÓ¦Óüܹ¹Àå¸ï£¬ÔÆÔ­ÉúÓ¦ÓÃ×ñÕÕÃæÏò΢·þÎñ»¯µÄÉè¼Æ·½·¨£¬´Ó¶øµ¼Ö¹¦Ð§×é¼þ»¯¡¢·þÎñÊýÄ¿¼¤Ôö¡¢ÉèÖÃÖØ´óµÈÎÊÌ⣬½ø¶øÎªÔÆÔ­ÉúÓ¦ÓúÍÓªÒµ´øÀ´ÁËеÄΣº¦¡£

¿´·¨Èý ÅÌËãģʽÀå¸ï½«»á´øÀ´ÐµÄΣº¦

Ëæ×ÅÔÆÅÌËãµÄÒ»Ö±Éú³¤£¬ÆóÒµÔÚÓ¦ÓõÄ΢·þÎñ»¯ºó£¬»á½øÒ»²½¾Û½¹ÓÚÓªÒµ×ÔÉí£¬²¢½«¹¦Ð§º¯Êý»¯£¬Òò¶ø·ºÆðÁËÎÞ·þÎñÆ÷ÅÌË㣨Serverless Computing£©ÕâÀàеÄÔÆÅÌËãģʽ£¬½ø¶øÒýÈëÁËServerlessÓ¦ÓúÍServerlessƽ̨µÄÐÂΣº¦¡£

 

×ÛÉÏËùÊö£¬¿ÉÒÔ¿´³öÔÆÔ­ÉúÓ¦ÓôøÀ´µÄΣº¦ÊǽûֹСêïµÄ¡£±¾ÎĽ«´Ó¹Å°åÓ¦ÓÃΣº¦¡¢Ó¦Óüܹ¹Àå¸ï´øÀ´µÄÐÂΣº¦¡¢ÔÆÅÌËãģʽÀå¸ï´øÀ´µÄÐÂΣº¦Èý¸öά¶È»®·Ö¾ÙÐÐÏÈÈÝ£¬Ï£Íû¿ÉÒÔÒý·¢¸÷È˸ü¶àµÄ˼Ë÷¡£

 

¶þ. ¹Å°åÓ¦ÓÃÃæÁÙµÄΣº¦

ÔÆÔ­ÉúÓ¦ÓÃΣº¦¿ÉÒԲο¼¹Å°åÓ¦ÓÃΣº¦¡£¹Å°åÓ¦ÓÃΣº¦ÒÔWebÓ¦ÓÃΣº¦ÎªÖ÷£¬Ö÷Òª°üÀ¨×¢Èë¡¢Ãô¸ÐÊý¾Ýй¶¡¢¿çÕ¾¾ç±¾¡¢Ê¹Óú¬ÓÐÒÑÖªÎó²îµÄ×é¼þ¡¢È±·¦µÄÈÕÖ¾¼Í¼ºÍ¼à¿ØµÈΣº¦¡£

 

±ðµÄ£¬ÔÆÔ­ÉúÇéÐÎÖУ¬Ó¦ÓõÄAPI½»»¥Ä£Ê½Öð½¥ÓÉ“ÈË»ú½»»¥”ת±äΪ“»ú»ú½»»¥”£¬ËäÈ»API´ó×Ú·ºÆðÊÇÔÆÔ­ÉúÇéÐεÄÒ»´óÌØµã£¬µ«ÊµÖÊÉÏÀ´Ëµ£¬APIΣº¦²¢ÎÞеÄת±ä£¬Òò¶øÆäΣº¦¿ÉÒԲο¼ÏÖÓеÄAPIΣº¦£¬Ö÷Òª°üÀ¨Çå¾²ÐÔ¹ýʧÉèÖá¢×¢Èë¡¢×ʲúÖÎÀí²»µ±¡¢×ÊԴȱʧºÍËÙÂÊÏÞÖÆµÈΣº¦¡£

 

ÓйعŰåÓ¦ÓÃΣº¦ºÍAPIΣº¦µÄ¸ü¶àϸ½Ú¿ÉÒÔ»®·Ö²Î¿¼OWASP×éÖ¯ÔÚ2017ºÍ2019ÄêÐû²¼µÄÓ¦ÓÃÊ®´óΣº¦±¨¸æ[1]ºÍAPIÊ®´óΣº¦±¨¸æ[2]¡£

 

Èý.  Ó¦Óüܹ¹Àå¸ï´øÀ´µÄÐÂΣº¦

3.1 ÔÆÔ­ÉúÓ¦ÓôøÀ´µÄÐÂΣº¦

ÔÆÔ­ÉúÓ¦ÓÃÃæÁÙµÄÐÂΣº¦Ö÷ÒªÌåÏÖÔÚ£ºÐÂÓ¦Óüܹ¹µÄ·ºÆð¡£ÐÂÓ¦Óüܹ¹×ñÕÕ΢·þÎñ»¯µÄÉè¼ÆÄ£Ê½£¬Í¨¹ýÓ¦ÓõÄ΢·þÎñ»¯£¬ÎÒÃÇÄܹ»¹¹½¨ÈÝ´íÐԺá¢Ò×ÓÚÖÎÀíµÄËÉñîºÏϵͳ£¬Óë´Ëͬʱ£¬ÐÂÓ¦Óüܹ¹µÄ·ºÆðÒ²»áÒýÈëеÄΣº¦£¬ÎªÁ˽ÏΪÍêÕûµØ¶ÔΣº¦¾ÙÐÐÆÊÎö£¬±¾ÎĽ«ÒÔÐÅϢϵͳÇ徲Ʒ¼¶ÈýÒªËØ£¬¼´ÉñÃØÐÔ£¨Confidentiality£©¡¢ÍêÕûÐÔ£¨Integrity£©¡¢¿ÉÓÃÐÔ£¨Availability£©×÷Ϊµ¼ÏòÏÈÈÝÓ¦Óüܹ¹×ª±ä´øÀ´µÄÐÂΣº¦¡£

 

ÉñÃØÐÔÊÜËðµÄΣº¦

µä·¶µÄÈçÐÅϢй¶Σº¦£¬¹¥»÷Õß¿Éͨ¹ýʹÓÃ×ʲúųÈõÐÔºÍÐá̽¡¢±©Á¦ÆÆ½âµÈ¹¥»÷·½·¨ÇÔÈ¡Óû§Òþ˽Êý¾Ý£¬´Ó¶øÔì³ÉÐÅϢй¶Σº¦¡£

ÍêÕûÐÔÊÜËðµÄΣº¦

µä·¶µÄÈçδÊÚȨ»á¼ûΣº¦£¬¹¥»÷Õß¿Éͨ¹ýʹÓÃ×ʲúųÈõÐÔºÍÖÐÐÄÈ˹¥»÷µÈÐÐÎªÈÆ¹ýϵͳµÄÈÏÖ¤ÊÚȨ»úÖÆ£¬Ö´ÐÐԽȨ²Ù×÷£¬´Ó¶øÔì³ÉδÊÚȨ»á¼ûµÄΣº¦¡£

¿ÉÓÃÐÔÊÜËðµÄΣº¦

µä·¶µÄÈçϵͳ±»¾Ü¾ø·þÎñµÄΣº¦£¬Ò»·½Ã棬¹¥»÷Õß¿Éͨ¹ý»ûÐα¨ÎÄ¡¢SYN·ººéµÈ¹¥»÷·½·¨ÎªÄ¿µÄϵͳÌṩ·ÇÕý³£·þÎñ£¬ÁíÒ»·½Ã棬ϵͳÇó¹ýÓÚ¹©µÄ³¡¾°Ò²»áµ¼ÖÂϵͳÔâÊܾܾø·þÎñΣº¦¡£

±¾Ð¡½Ú½ÓÏÂÀ´µÄÄÚÈÝ£¬½«ÒÔÐÅϢй¶¡¢Î´ÊÚȨ»á¼û¡¢¾Ü¾ø·þÎñΪÀý£¬»®·ÖÏÈÈÝÉÏÊöÈýÀàΣº¦¡£

 

3.1.1   Êý¾Ýй¶µÄΣº¦ 

ÔÆÔ­ÉúÇéÐÎÖУ¬ËäÈ»Ôì³ÉÓ¦ÓÃÊý¾Ýй¶Σº¦µÄÔµ¹ÊÔ­ÓÉÓÐÐí¶à£¬µ«¶¼Àë²»¿ªÒÔϼ¸¸öÒòËØ£º

Ó¦ÓÃÎó²î£ºÍ¨¹ý×ʲúÎó²î¶ÔÓ¦ÓÃÊý¾Ý¾ÙÐÐÇÔÈ¡¡£

ÃÜÔ¿²»¹æ·¶ÖÎÀí£ºÍ¨¹ý²»¹æ·¶µÄÃÜÔ¿ÖÎÀí¶ÔÓ¦ÓÃÊý¾Ý¾ÙÐÐÇÔÈ¡¡£

Ó¦ÓüäͨѶδ¾­¼ÓÃÜ£ºÍ¨¹ýÓ¦ÓüäͨѶδ¾­¼ÓÃܵÄȱÏݶԴ«ÊäÖÐÊý¾Ý¾ÙÐÐÇÔÈ¡£¬½ø¶øÉý¼¶µ½¶ÔÓ¦ÓÃÊý¾ÝµÄÇÔÈ¡¡£

 

3.1.1.1 Ó¦ÓÃÎó²î´øÀ´µÄΣº¦

Ó¦ÓÃÖд洢µÄÊý¾Ý¶àÊÇ»ùÓÚAPI¾ÙÐлá¼û£¬ÈôÓ¦ÓÃÖÐijAPIº¬ÓÐδÊÚȨ»á¼ûÎó²î£¬ÀýÈçRedisδÊÚȨ»á¼ûÎó²î£¬¹¥»÷Õß±ã¿ÉʹÓôËÎó²îÈÆ¹ýRedisÈÏÖ¤»úÖÆ£¬»á¼ûµ½ÄÚ²¿Êý¾Ý£¬½ø¶øµ¼ÖÂÁËÃô¸ÐÐÅϢй¶µÄΣº¦¡£

 

¹Å°åµ¥ÌåÓ¦Óüܹ¹Ï£¬ÓÉÓÚAPI»á¼û¹æÄ£ÎªÓû§µ½Ó¦Ó㬹¥»÷ÕßÖ»ÄÜ¿´µ½Íⲿ½øÈëÖÁÓ¦ÓõÄÁ÷Á¿£¬ÎÞ·¨¿´µ½Ó¦ÓÃÄÚ²¿µÄÁ÷Á¿£¬ÒÔÊÇÕë¶Ô¶ñÒâʹÓÃAPIÎó²î¾ÙÐÐÊý¾ÝÇÔÈ¡Ôì³ÉµÄËðʧ¹æÄ£Í¨³£ÊÇÓÐÏ޵ġ£

 

·´¹Û΢·þÎñ»¯Ó¦Óüܹ¹£¬µ±µ¥ÌåÓ¦Óñ»²ð·ÖΪÈô¸É¸ö·þÎñºó£¬ÕâЩ·þÎñ»áƾ֤ӪҵÇéÐξÙÐÐÏ໥»á¼û£¬API»á¼û¹æÄ£±äΪ·þÎñµ½·þÎñ£¨Service to Service£©£¬Èôij·þÎñÒòAPIÎó²îµ¼Ö¹¥»÷ÕßÓÐÀû¿Éͼ£¬ÄÇô¹¥»÷Õß½«»á¿´µ½Ó¦ÓÃÄÚ²¿µÄÁ÷Á¿£¬ÕâÎÞÒÉΪ¹¥»÷ÕßÌṩÁ˸ü¶àµÄ¹¥»÷ÇþµÀ£¬Òò¶øÕë¶ÔÊý¾Ýй¶µÄΣº¦Ë®Æ½¶øÑÔ£¬Î¢·þÎñ¼Ü¹¹Ïà±È¹Å°åµ¥ÌåÓ¦Óüܹ¹´øÀ´µÄΣº¦¸ü´ó¡£±ðµÄ£¬Ëæ×Å·þÎñÊýÄ¿µÖ´ïÒ»¶¨¹æÄ££¬APIÊýÄ¿½«Ò»Ö±µÝÔö£¬½ø¶øÀ©´óÁ˹¥»÷Ãæ£¬Ôö´óÁËÊý¾Ýй¶µÄΣº¦¡£

 

3.1.1.2 ÃÜÔ¿²»¹æ·¶ÖÎÀí´øÀ´µÄΣº¦

ÔÚÓ¦ÓõĿª·¢Àú³ÌÖУ¬¿ª·¢Õß³£ÊèÓÚ¶ÔÃÜÔ¿µÄÖÎÀí´Ó¶øµ¼ÖÂÊý¾Ýй¶µÄΣº¦£¬ÀýÈ翪·¢Õß½«ÃÜÔ¿ÐÅÏ¢¡¢Êý¾Ý¿âÅþÁ¬ÃÜÂëµÈÃô¸ÐÐÅÏ¢Ó²±àÂëÔÚÓ¦ÓóÌÐòÖУ¬´Ó¶øÔö´óÁËÖîÈçÓ¦ÓóÌÐòÈÕ־й¶¡¢Ó¦ÓóÌÐò»á¼ûÃÜԿй¶µÄΣº¦¡£

 

¹Å°åµ¥ÌåÓ¦Óüܹ¹ÖУ¬¿ª·¢Õß³£½«ÉèÖÃÁ¬Í¬Ó¦ÓÃÒ»Æð´ò°ü£¬µ±ÐèÒªÐÞ¸ÄÉèÖÃʱ£¬Ö»ÐèµÇ¼ÖÁ·þÎñ¶Ë¾ÙÐÐÏìÓ¦Ð޸ģ¬ÔÙ¶ÔÓ¦ÓþÙÐÐÖØÆô±ã¿ÉʵÏÖ£¬ÕâÖÖµ¥¸ö¼¯ÖÐʽÉèÖÃÎļþµÄ´æ´¢·½·¨´ÓÃÜÔ¿ÖÎÀíΣº¦µÄ½Ç¶ÈÉϽ²ÊÇÏà¶Ô¿É¿ØµÄ¡£

 

΢·þÎñÓ¦Óüܹ¹ÖУ¬Ó¦ÓõÄÉèÖÃÊýÄ¿Óë·þÎñÊýÄ¿µÄÖð½¥Ôö¶àÊdzÉÕý±ÈµÄ£¬ÀýÈç΢·þÎñÓ¦ÓÃÖлᱣ´æÖÖÖÖ·þÎñ¡¢ÖÖÖÖÊý¾Ý¿â»á¼û¡¢ÖÖÖÖÇéÐαäÁ¿µÄÉèÖã¬ÇÒ¸÷ÉèÖÃÖ§³Ö¶¯Ì¬µ÷½â¡£Í¬Ê±£¬Î¢·þÎñÓ¦Óüܹ¹¶Ô·þÎñµÄÉèÖÃÖÎÀíÒ²Ìá³öÁ˸ü¸ßµÄÒªÇó£¬ÀýÈç´úÂëÓëÉèÖÿÉÊèÉ¢¡¢ÉèÖÃÖ§³ÖÂþÑÜʽ¡¢ÉèÖøüеÄʵʱÐÔ¡¢ÉèÖÿÉͳһ¾ÙÐÐÖÎÀíµÈ£¬Òò¶øÎ¢·þÎñϵÄÉèÖÃÖÎÀíÔ½·¢Öش󣬶ÔÔËάְԱµÄÒªÇó¸ü¸ß£¬ÃÜÔ¿ÖÎÀíµÄÄѶÈÒ²ÔÚÒ»Ö±ÌáÉý£¬×îÖÕ»áÔì³É¸ü´óµÄÊý¾Ýй¶Σº¦¡£

 

3.1.1.3 Ó¦ÓÃͨѶδ¾­¼ÓÃÜ´øÀ´µÄΣº¦

ÈôÊÇÓ¦ÓýÓÄÉHTTPЭÒé¾ÙÐÐÊý¾Ý´«Ê䣬ÄÇôHTTPÒ³ÃæµÄËùÓÐÐÅÏ¢½«¶¼ÒÔ´¿Îı¾ÐÎʽ¾ÙÐд«Ê䣬²¢ÇÒĬÈϲ»ÌṩÈκμÓÃܲ½·¥¡£Òò¶øÔÚÊý¾Ý´«ÊäÀú³ÌÖÐÒ×±»¹¥»÷Õß¼àÌý¡¢½Ø»ñºÍ¸Ä¶¯£¬µä·¶µÄ¹¥»÷Á÷³ÌΪ¹¥»÷Õßͨ¹ýFiddler¡¢WiresharkµÈ×¥°ü¹¤¾ß¾ÙÐÐÁ÷Á¿¼àÌý£¬½Ø»ñ´«ÊäµÄÃô¸ÐÐÅÏ¢£¨ÀýÈçÊý¾Ý¿âÃÜÂë¡¢µÇ¼ÃÜÂëµÈ£©£¬×îºó¹¥»÷Õ߯¾Ö¤×ÔÉíÒâͼ¶ÔÃô¸ÐÊý¾Ý¾ÙÐи͝²¢·¢ËÍÖÁ·þÎñ¶Ë£¬½ø¶øµ¼ÖÂÊý¾Ýй¶µÄΣº¦¡£

 

¹Å°åµ¥ÌåÓ¦Óüܹ¹ÖУ¬ÓÉÓÚÍøÂçÍØÆËÏà¶Ô¼òÆÓ£¬ÇÒÓ¦ÓÃͨѶ¶à»ùÓÚHTTP/HTTPS£¬Òò¶øÔì³ÉµÄÊý¾Ýй¶Σº¦¶àÊÇÓÉÓÚ½ÓÄÉÁËHTTPЭÒ顣΢·þÎñÓ¦Óüܹ¹ÖУ¬ÍøÂçÍØÆËÏà¶ÔÖØ´ó£¬Òò×ñÕÕÂþÑÜʽµÄÌØµã£¬Ó¦ÓüäµÄͨѶ²»µ«½ÓÄÉHTTP/HTTPSЭÒ飬»¹½ÓÄÉgRPCµÈЭÒ飬ÓÉÓÚgRPCЭÒéĬÈϲ»¼ÓÃÜ£¬Òò¶ø½«»áµ¼Ö¹¥»÷ÃæµÄÔö¶à£¬ÎªÊý¾Ýй¶´øÀ´Á˸ü¶àµÄΣº¦¡£

 

3.1.2  Î´ÊÚȨ»á¼ûµÄΣº¦

ÔÆÔ­ÉúÇéÐÎÖУ¬Ó¦ÓÃδÊÚȨ»á¼ûµÄΣº¦¶àÊÇÓÉÓÚÓ¦ÓÃ×ÔÉíÎó²î»ò»á¼ûȨÏÞ¹ýʧµØÉèÖõ¼Ö¡£

 

3.1.2.1 Ó¦ÓÃÎó²î´øÀ´µÄΣº¦

Ó¦ÓÃÎó²îÊÇÔì³ÉδÊÚȨ»á¼ûµÄÒ»´óÒòËØ¡£Î´ÊÚȨ»á¼ûÎó²îºÜÊÇÖ®¶à£¬½ÏΪ³£ÓõÄÈçRedis¡¢MongoDB¡¢Jenkins¡¢Docker¡¢Zookeeper¡¢HadoopµÈÓ¦Óö¼ÔøÆØ¹â¹ýÏà¹ØÎó²î£¬ÀýÈçDockerÆØ³öµÄDocker Remote APIδÊÚȨ»á¼ûÎó²î£¬¹¥»÷Õß¿Éͨ¹ýDocker Client»òHTTPÇëÇóÖ±½Ó»á¼ûDocker Remote API£¬½ø¶ø¶ÔÈÝÆ÷¾ÙÐÐн¨¡¢É¾³ý¡¢ÔÝÍ£µÈΣÏÕ²Ù×÷£¬ÉõÖÁÊÇ»ñÈ¡ËÞÖ÷»úshellȨÏÞ¡£ÔÙÈçMongoDBδÊÚȨ»á¼ûÎó²î£¬¸ÃÎó²îÔì³ÉµÄ»ù´¡Ôµ¹ÊÔ­ÓÉÔÚÓÚMongoDBÔÚÆô¶¯Ê±½«ÈÏÖ¤ÐÅϢĬÈÏÉèÖÃΪ¿Õ¿ÚÁ´Ó¶øµ¼ÖµÇÈÎÃü»§¿Éͨ¹ýĬÈ϶˿ÚÎÞÐèÃÜÂë¶ÔÊý¾Ý¿â¾ÙÐÐí§Òâ²Ù×÷²¢ÇÒ¿ÉÒÔÔ¶³Ì»á¼ûÊý¾Ý¿â¡£

 

´ÓÎó²î³ÉÒòµÄÆðµãÀ´¿´£¬ÈÏÖ¤¼°ÊÚȨ»úÖÆµÄ±¡ÈõÊÇÆäÖ÷ÒªÔµ¹ÊÔ­ÓÉ£¬ÔÚµ¥ÌåÓ¦Óüܹ¹Ï£¬Ó¦ÓÃ×÷Ϊһ¸öÕûÌå¶ÔÓû§¾ÙÐÐÈÏÖ¤ÊÚȨ£¬ÇÒÓ¦ÓõĻá¼ûȪԴÏà¶Ô¼òµ¥£¬»ù±¾Îªä¯ÀÀÆ÷£¬Òò¶øÎ£º¦ÊÇÏà¶Ô¿É¿ØµÄ£¬Î¢·þÎñÓ¦Óüܹ¹Ï£¬Æä°üÀ¨µÄËùÓзþÎñ¾ùÐè¶Ô¸÷×ԵĻá¼û¾ÙÐÐÊÚȨ£¬´Ó¶øÃ÷È·Ä¿½ñÓû§µÄ»á¼û¿ØÖÆÈ¨ÏÞ£¬±ðµÄ£¬·þÎñµÄ»á¼ûȪԴ³ýÁËÓû§Í⻹°üÀ¨ÄÚ²¿µÄÆäËû·þÎñ£¬Òò¶øÔÚ΢·þÎñ¼Ü¹¹Ï£¬Ó¦ÓõÄÈÏÖ¤ÊÚȨ»úÖÆ¸üÎªÖØ´ó£¬ÎªÔÆÔ­ÉúÓ¦ÓôøÀ´Á˸ü¶àµÄ¹¥»÷Ãæ¡£

 

3.1.2.2 »á¼ûȨÏÞ¹ýʧÉèÖôøÀ´µÄΣº¦

ÓÉÓÚÔËάְԱ¶ÔÓû§µÄ»á¼ûȨÏÞ¾ÙÐÐÁ˹ýʧÉèÖ㬽ø¶ø»áÔö´ó±»¹¥»÷ÕßʹÓõÄΣº¦¡£ÀýÈ磬ÔËάְԱ¶ÔWebÓ¦Óûá¼ûȨÏÞ¾ÙÐÐÏìÓ¦ÉèÖã¬Õë¶ÔͨË×Óû§£¬ÔËάְԱӦֻ¸¶ÓëÆäÖ»¶Á²Ù×÷£¬ÈôÔËάְԱ¾ÙÐÐÁ˹ýʧµÄÉèÖã¬ÀýÈçΪͨË×Óû§ÉèÖÃÁËд²Ù×÷£¬ÄÇô¹¥»÷Õß±ã»áʹÓôËȱÏÝÈÆ¹ýÈÏÖ¤»áÊ¶È¤ÖÆ¶ÔÓ¦ÓÃÌᳫδÊÚȨ»á¼û¹¥»÷¡£

 

¹Å°åÓ¦Óüܹ¹ÖУ¬Ó¦ÓÃÓÉÓÚÉè¼ÆÏà¶Ô¼òµ¥£¬Æä»á¼ûȨÏÞÒ²Ïà¶Ô¼òµ¥£¬ÏÕÐ©Ö»Éæ¼°Óû§¶ÔÓ¦ÓõĻá¼ûȨÏÞÕâÒ»²ãÃæ£¬Òò´Ë¶ÔÓ¦µÄ»á¼ûȨÏÞÉèÖÃÒ²Ïà¶Ô¼òÆÓ¡£ÓÉÓÚ»á¼ûȨÏÞÉèÖüòÆÓµÄÌØµã£¬Óû§Éí·Ýƾ֤µÈÃô¸ÐÐÅÏ¢³£´æ´¢ÔÚÓ¦ÓõķþÎñ¶Ë£¬Ò»µ©¹¥»÷ÕßʹÓÃÉèÖõÄȱÏݶÔÓ¦ÓÃÌᳫδÊÚȨ»á¼ûÈëÇÖ£¬¾ÍÓпÉÄÜÄõ½ËùÓÐÉúÑÄÔÚºó¶ËµÄÊý¾Ý£¬´Ó¶øÔì³ÉÖØ´óΣº¦¡£

 

΢·þÎñÓ¦Óüܹ¹Ï£¬ÓÉÓÚ»á¼ûȨÏÞ»¹ÐèÉæ¼°·þÎñ¶Ô·þÎñÕâÒ»²ãÃæ£¬Òò´Ë½«»áµ¼ÖÂȨÏÞÓ³Éä¹ØÏµ±äµÃÔ½·¢ÖØ´ó£¬ÏìÓ¦µÄȨÏÞÉèÖÃÄѶÈÒ²ÔÚͬ²½ÔöÌí£¬ÀýÈçÒ»¸öÖØ´óÓ¦Óñ»²ð·ÖΪ100¸ö·þÎñ£¬ÔËάְԱÐèÒªÑÏÃܵضÔÿ¸ö·þÎñ¸¶ÓëÆäÓ¦ÓеÄȨÏÞ£¬ÈôÊÇÒòÊèºöµ¼ÖÂΪij¸ö·þÎñÉèÖÃÁ˹ýʧµÄȨÏÞ£¬¹¥»÷Õß¾ÍÓпÉÄÜʹÓôËȱÏݶԷþÎñÕö¿ª¹¥»÷£¬Èô¸Ã·þÎñÖаüÀ¨Îó²î£¬½ø¶ø¿ÉÄܻᵼÖ¼òµ¥Îó²îÀ©Õ¹ÖÁÕû¸öÓ¦ÓõÄΣº¦¡£ÒÔÊÇÔõÑù¶ÔÔÆÔ­ÉúÓ¦ÓõĻá¼ûȨÏÞ¾ÙÐиßЧÂÊÖÎÀí³ÉΪÁËÒ»¸ö½ÏÄѵÄÎÊÌ⣬ÕâÒ²Êǵ¼ÖÂÆäΣº¦µÄÒªº¦ÒòËØ¡£

 

3.1.3 ±»¾Ü¾ø·þÎñµÄΣº¦

±»¾Ü¾ø·þÎñÊÇÓ¦ÓóÌÐòµÄÃæÁٵij£¼ûΣº¦¡£Ôì³É¾Ü¾ø·þÎñµÄÖ÷ÒªÔµ¹ÊÔ­ÓɰüÀ¨Á½·½Ã棬һ·½ÃæÊÇÓÉÓÚÓ¦ÓÃ×ÔÉíÎó²îËùÖ£¬ÀýÈçReDoSÎó²î¡¢Nginx¾Ü¾ø·þÎñÎó²îµÈ£¬ÁíÒ»·½ÃæÊÇÓÉÓÚ»á¼ûÐèÇóÓë×ÊÔ´ÄÜÁ¦²»Æ¥ÅäËùÖ£¬ÀýÈçijµçÉÌÆ½Ì¨µÄ¹ºÖÃAPIÓÉÓÚ´¦Öóͷ£ÇëÇóÄÜÁ¦ÓÐÏÞ£¬Òò¶øÎÞ·¨ÃæÁÙÍ»ÈçÆäÀ´µÄ´ó×Ú¹ºÖÃÇëÇ󣬵¼ÖÂÁËÆ½Ì¨×ÊÔ´£¨CPU¡¢ÄÚ´æ¡¢ÍøÂ磩µÄºÄ¾¡ÉõÖÁÍ߽⡣ÕâÖÖ³¡¾°ÍùÍù²»´øÓжñÒâÍýÏ룬¶ø´øÓжñÒâÍýÏëµÄÔòÖ÷ÒªÒÔACK¡¢SYNC·ººé¹¥»÷¼°CC£¨Challenge Collapsar£©µÈ¹¥»÷ΪÖ÷£¬Æä×îÖÕÄ¿µÄÒ²ÊÇÓ¦ÓÃ×ÊÔ´µÄºÄ¾¡¡£

 

3.1.3.1Ó¦ÓÃÎó²î´øÀ´µÄΣº¦

Ó¦ÓÃÎó²î¿ÉÒÔµ¼ÖÂÓ¦Óñ»¾Ü¾ø·þÎñ£¬ÄÇôÏêϸÊÇÔõÑùµ¼ÖµÄÄØ£¿ÒÔReDoS£¨Regular expression Denial of Service£©Îó²îΪÀý£¬ReDoSΪÕýÔò±í´ïʽ¾Ü¾ø·þÎñ£¬¹¥»÷Õß¶Ô¸ÃÎó²îµÄʹÓÃͨ³£ÊÇÕâÑùµÄÒ»¸ö³¡¾°£¬Ó¦ÓóÌÐòΪÓû§ÌṩÁËÕýÔò±í´ïʽµÄÊäÈëÀàÐÍÓÖûÓжÔÏêϸµÄÊäÈë¾ÙÐÐÓÐÓÃÑéÖ¤£¬ÄÇô¹¥»÷Õß±ã¿Éͨ¹ý½á¹¹ÆÊÎöЧÂʼ«µÍµÄÕýÔò±í´ïʽ×÷ΪÊäÈë½ø¶øÔÚ¶Ìʱ¼äÄÚÒý·¢100%µÄCPUÕ¼ÓÃÂÊ£¬×îÖÕµ¼ÖÂ×ÊÔ´ºÄ¾¡£¬ÉõÖÁÓ¦ÓóÌÐòÍß½âµÄΣº¦¡£

 

3.1.3.2»á¼ûÐèÇóÓë×ÊÔ´ÄÜÁ¦²»Æ¥Åä´øÀ´µÄΣº¦

´Ë´¦ÒÔCC¹¥»÷¾ÙÀý£¬Æä¹¥»÷Ô­Àíͨ³£Êǹ¥»÷Õßͨ¹ý¿ØÖƽ©Ê¬ÍøÂç¡¢È⼦»òÊðÀí·þÎñÆ÷Ò»Ö±µØÏòÄ¿µÄÖ÷»ú·¢ËÍ´ó×ÚÕýµ±ÇëÇ󣬴ӶøÊ¹Õý³£Óû§µÄÇëÇó´¦Öóͷ£±äµÃÒì³ £»ºÂý¡£

 

¹Å°åWeb³¡¾°ÖУ¬¹¥»÷ÕßʹÓÃÊðÀí·þÎñÆ÷ÏòÊܺ¦ÕßÌᳫ´ó×ÚHTTP GETÇëÇ󣬸ÃÇëÇóÖ÷Ҫͨ¹ý¶¯Ì¬Ò³ÃæÏòÊý¾Ý¿â·¢ËÍ»á¼û²Ù×÷£¬Í¨¹ý´ó×ÚµÄÅþÁ¬£¬Êý¾Ý¿â¸ºÔؼ«¸ß£¬Áè¼ÝÆäÕý³£´¦Öóͷ£ÄÜÁ¦£¬´Ó¶øÎÞ·¨ÏìÓ¦Õý³£ÇëÇ󣬲¢×îÖÕµ¼Ö·þÎñÆ÷å´»ú¡£

 

ÔÚ΢·þÎñÓ¦Óüܹ¹Ï£¬ÓÉÓÚAPIÊýÄ¿»áËæ×Å·þÎñÊýÄ¿µÄµÝÔö¶øµÝÔö£¬Òò¶ø¿ÉÄܽ«»áµ¼Ö¼òµ¥ÇëÇóÌìÉúÊýÒÔÍò¼ÆµÄÖØ´óÖÐÐIJãºÍºó¶Ë·þÎñŲÓ㬽ø¶ø¸üÈÝÒ×ÒýÆð±»¾Ü¾ø·þÎñµÄΣº¦£¬ÀýÈçÈô΢·þÎñÓ¦ÓõÄAPIÉè¼ÆÎ´Ë¼Á¿Ì«¶àÒòµ¥¸öAPIŲÓÃÒýÆðµÄºÄʱÎÊÌ⣬ÄÇôµ±Íⲿ»á¼ûÁ¿Í»Ôöʱ£¬½«»áµ¼Ö»á¼ûÐèÇóÓë×ÊÔ´ÄÜÁ¦²»Æ¥ÅäµÄÎÊÌ⣬ʹ·þÎñ¶ËÎÞ·¨¶ÔÇëÇó×÷³öʵʱµÄÏìÓ¦£¬Ôì³ÉÒ³Ãæ¿¨ËÀµÄÕ÷Ï󣬽ø¶ø»áÒýÆðϵͳÍß½âµÄΣº¦¡£

 

3.2 ÔÆÔ­ÉúÓªÒµ´øÀ´µÄÐÂΣº¦

ÔÆÔ­ÉúÓ¦ÓÃӪҵΣº¦ºÍÔÆÔ­ÉúÓ¦ÓÃΣº¦ÓкÎÇø±ð£¿ÔÆÔ­ÉúÓ¦ÓÃΣº¦Ö÷ÒªÊÇWebÓ¦ÓÃΣº¦£¬¼´ÍøÂç²ãÃæµÄΣº¦£¬¶øÔÆÔ­ÉúÓ¦ÓÃӪҵΣº¦ÎÞÏÔ×ŵÄÍøÂç¹¥»÷ÌØÕ÷£¬¶àÊÇʹÓÃӪҵϵͳµÄÎó²î»ò¹æÔò¶ÔӪҵϵͳ¾ÙÐй¥»÷À´Ä²Àû£¬´Ó¶øÔì³ÉÒ»¶¨µÄËðʧ¡£

 

±ðµÄ£¬Óë¹Å°åÓ¦Óüܹ¹ÖеÄӪҵΣº¦²î±ð£¬Î¢·þÎñÓ¦Óüܹ¹ÖУ¬Èô·þÎñ¼äµÄÇå¾²²½·¥²»ÍêÉÆ£¬ÀýÈçÓû§ÊÚȨ²»Êʵ±¡¢ÇëÇóȪԴУÑé²»ÑÏ¿áµÈ£¬½«»áµ¼ÖÂÕë¶Ô΢·þÎñÓªÒµ²ãÃæµÄ¹¥»÷±äµÃÔ½·¢ÈÝÒ×£¬ÀýÈçÕë¶ÔÒ»¸öµçÉÌÓ¦Ó㬹¥»÷Õß¿ÉÒÔ¶ÔÌØ¶¨µÄ·þÎñ¾ÙÐй¥»÷£¬ÀýÈçͨ¹ýAPI´«Èë²»·¨Êý¾Ý£¬»òÕßÖ±½ÓÐ޸ķþÎñµÄÊý¾Ý¿âϵͳµÈ¡£¹¥»÷Õß¿ÉÒÔÈÆ¹ýÑéÖ¤Âë·þÎñ£¬Ö±½ÓŲÓö©µ¥ÖÎÀí·þÎñÀ´¾ÙÐÐÞ¶ÑòëµÈ¶ñÒâ²Ù×÷¡£¹¥»÷ÕßÉõÖÁ¿ÉÒÔͨ¹ýÖ±½ÓÐ޸Ķ©µ¥ÖÎÀíºÍÖ§¸¶Ëù¶ÔÓ¦µÄ·þÎñϵͳ£¬ÈƹýÖ§¸¶µÄ°ì·¨£¬Ö±½ÓÀֳɹºÖÃÉÌÆ·µÈ¡£

 

×ÛÉÏ£¬Ó¦ÓÃ΢·þÎñ»¯µÄÉè¼ÆÄ£Ê½´øÀ´µÄӪҵΣº¦¿É°üÀ¨Á½·½Ã棬һ·½ÃæÊÇδÊÚȨ»á¼ûΣº¦£¬µä·¶³¡¾°Îª¹¥»÷Õßͨ¹ýȨÏÞÈÆ¹ý¶ÔӪҵϵͳµÄÒªº¦²ÎÊý¾ÙÐÐÐ޸ĴӶøÔì³ÉÓªÒµËðʧ£¬ÁíÒ»·½ÃæÔòÊÇAPIÀÄÓõÄΣº¦£¬µä·¶µÄÊǶÔӪҵϵͳµÄÞ¶Ñòë²Ù×÷¡£

 

3.2.1 Î´ÊÚȨ»á¼ûµÄΣº¦

ÔÚÔÆÔ­ÉúÓªÒµÇéÐÎÖУ¬Ôì³ÉδÊÚȨ»á¼ûΣº¦µÄÔµ¹ÊÔ­ÓÉ£¬¿ÉÒÔ´óÖ·ÖΪӪҵ²ÎÊýÒì³£ºÍÓªÒµÂß¼­Òì³£Á½·½Ã棬ΪÁ˸üΪÇåÎúµÄ˵Ã÷ÉÏÊöÒì³£ÔõÑùµ¼ÖÂδÊÚȨ»á¼ûµÄΣº¦£¬ÕâÀïÒÔÒ»¸ö΢·þÎñ¼Ü¹¹µÄµçÉÌϵͳ¾ÙÀý˵Ã÷¡£Èçͼ1Ëùʾ£º

IMG_256

ͼ 1ijµçÉÌϽµµÍ÷³Ìͼ

 

3.2.1.1ÓªÒµ²ÎÊýÒì³£´øÀ´µÄΣº¦

APIŲÓÃÀú³ÌÖÐÍùÍù»áת´ïÏà¹ØµÄ²ÎÊý¡£²ÎÊýµÄȡֵƾ֤Ӫҵ³¡¾°µÄ²î±ð»áÓвî±ðµÄȡֵ¹æÄ£¡£ÀýÈçÉÌÆ·ÊýÄ¿±ØÐèΪ·Ç¸ºÕûÊý£¬¼ÛÇ®±ØÐè´óÓÚ0µÈ¡£ÈôAPI¶ÔÏìÓ¦²ÎÊýµÄ¼à²â»úÖÆ²»ÍêÉÆ£¬ÄÇô¹¥»÷Õß±ã¿Éͨ¹ýÊäÈëÒì³£²ÎÊýµ¼ÖÂӪҵϵͳÊܵ½Ëðʧ¡£ÀýÈçÔÚͼ1ËùʾµÄµçÉÌϵͳÖУ¬ÈôÉÌÆ·¼ÛǮֻÔÚÉÌÆ·ÏÈÈÝ·þÎñÖоÙÐÐУÑ飬¶øÎ´ÔÚ¶©µ¥ÖÎÀíºÍÖ§¸¶·þÎñÖоÙÐÐУÑ飬ÄÇô¹¥»÷ÕßÔò¿ÉÒÔͨ¹ýÖ±½ÓŲÓö©µ¥ÖÎÀíºÍÖ§¸¶·þÎñµÄAPI½«¶©µ¥¼ÛÇ®ÐÞ¸ÄΪ0Ôª»òÕ߸ºÖµ£¬´Ó¶ø¸øÓªÒµÏµÍ³Ôì³ÉËðʧ¡£

 

3.2.1.2ÓªÒµÂß¼­Òì³£´øÀ´µÄΣº¦

Ïà±ÈÓÚǰһÀàÒì³££¬´ËÀàÒì³£Ò»Ñùƽ³£½ÏΪÒþ²Ø¡£¹¥»÷Õß½ÓÄÉijЩҪÁìʹAPIŲÓõÄÂß¼­Ë³Ðò·ºÆðÒì³££¬°üÀ¨Òªº¦Å²Óð취ȱʧ¡¢µ¹ÖõÈ¡£ÀýÈçÔÚͼ1ËùʾµÄµçÉÌϵͳÖУ¬¹¥»÷Õß¿ÉÒÔʹÓÃÎó²îÈÆ¹ýÖ§¸¶µÄ°ì·¨Ö±½ÓÌá½»¶©µ¥¡£ÕâÑù¾Í»á·ºÆðÓªÒµÂß¼­Òªº¦°ì·¨È±Ê§µÄÇéÐΣ¬½ø¶ø»áΪӪҵϵͳ´øÀ´Ëðʧ£¬ÀýÈçÑéÖ¤ÂëÈÆ¹ýÒì³£¾ÍÊôÓÚÓªÒµÂß¼­Òì³£µÄÒ»ÖÖ¡£

 

3.2.2 APIÀÄÓõÄΣº¦

Õë¶Ô´ËÀàΣº¦£¬Í¨³£Ö¸µÄÊǹ¥»÷Õß¶ÔӪҵϵͳµÄÞ¶Ñòë²Ù×÷£¬Î£º¦³ÉÒòÔòÊÇÓÉÓÚӪҵƵÂÊÒì³£ËùÖ£¬ÕâÀïÒÔµçÉÌϵͳ¾ÙÀý˵Ã÷¡£

 

ӪҵƵÂÊÒì³£Ö÷ÒªÖ¸Õë¶ÔÒ»¸ö»òÒ»×éAPIµÄƵÈÔŲÓá£ÓªÒµÏµÍ³ÍùÍùͨ¹ýͼÐÎÑéÖ¤ÂëµÄ·½·¨À´×èÖ¹»úеÈËË¢µ¥µÄ²Ù×÷¡£ÀýÈçÔÚͼ1ËùʾµÄµçÉÌϵͳÖУ¬¹¥»÷Õß¿ÉÒÔÈÆ¹ýÑéÖ¤ÂëËù¶ÔÓ¦µÄ·þÎñ£¬Ö±½Ó¶Ô¶©µ¥¾ÙÐвÙ×÷£¬½ø¶øÊµÏÖ»úеˢµ¥£¬¶ÔµçÉ̾ÙÐÐÞ¶Ñòë¡£

 

ËÄ. ÔÆÅÌËãģʽÀå¸ï´øÀ´µÄÐÂΣº¦

×÷ΪһÖÖеÄÔÆÅÌËãģʽ£¬Serverless¾ß±¸Ðí¶àÌØÕ÷£¬µä·¶µÄÖ÷ÒªÓÐÊäÈëÔ´µÄ²»È·¶¨ÐÔ¡¢·þÎñÆ÷ÍйÜÔÆ·þÎñÉÌ¡¢¹©Ó¦ÉÌËø¶¨µÈ£¬ÕâÐ©ÌØÕ÷¿ÉÄÜ»á¸øServerless´øÀ´ÐµÄΣº¦¡£

 

±ðµÄ£¬ÓÉÓÚServerless×îÖÕ·ºÆðµÄÕվɶà¸öº¯Êý×é³ÉµÄÓ¦Óã¬ÇÒ±»ServerlessÌṩµÄ·þÎñ¶ËÔËÐУ¬Òò´ËServerlessΣº¦»¹Ó¦°üÀ¨ServerlessÓ¦ÓõÄΣº¦¼°Serverlessƽ̨µÄΣº¦¡£

 

×îºóServerlessÒò¹ºÖᢰ²Åű¾Ç®µÍ¡¢º¯Êý»á¼ûÓòÃûÏà¶Ô¿ÉÐŵȽ«»áʹServerlessÃæÁÙ±»ÀÄÓõÄΣº¦¡£

 

4.1 ServerlessÌØÕ÷´øÀ´µÄΣº¦

4.1.1  ÊäÈëÔ´²»È·¶¨´øÀ´µÄΣº¦

Serverlessº¯ÊýÊÇÓÉһϵÁÐÊÂÎñ´¥·¢µÄ£¬ÈçÔÆ´æ´¢ÊÂÎñ£¨S3¡¢BlobsºÍÆäËûÔÆ´æ´¢£©¡¢Á÷Êý¾Ý´¦Öóͷ££¨È磺AWS Kinesis£©¡¢Í¨Öª£¨È磺SMS¡¢µç×ÓÓʼþ¡¢IoT£©µÈ£¬¼øÓÚ´ËÌØÕ÷£¬ÎÒÃDz»Ó¦¸Ã°ÑÀ´×ÔAPIŲÓõÄÊäÈë×÷ΪΨһ¹¥»÷Ãæ¡£±ðµÄ£¬ÎÒÃDz»ÔÙ¿ØÖÆÔ´µ½×ÊÔ´¼äµÄÕâÌõÏߣ¬ÈôÊǺ¯Êý±»Óʼþ»òÊý¾Ý¿â´¥·¢£¬½«ÎÞ´¦¿ÉÉèÖ÷À»ðǽ»òÈÎºÎÆäËû¿ØÖƲ½·¥À´ÑéÖ¤ÊÂÎñÔ´[4]¡£¿É¼ûÊäÈëÔ´µÄ²»È·¶¨ÐÔ½«¿ÉÄܵ¼ÖÂÒ»¶¨µÄΣº¦¡£

 

ÔڹŰåÓ¦ÓóÌÐò¿ª·¢ÖУ¬¿ª·¢Õ߯¾Ö¤×ÔÉíʵ¼ùÂÄÀú£¬ÔÚÊýÄ¿ÓÐÏ޵ĿÉÄÜÐÔÖпÉÅжϳö¶ñÒâÊäÈëȪԴ£¬µ«ServerlessģʽϺ¯ÊýŲÓÃÊÇÓÉÊÂÎñÔ´´¥·¢£¬ÊäÈëȪԴµÄ²»È·¶¨ÐÔÏÞÖÆÁË¿ª·¢ÕßµÄÅжÏ¡£ÀýÈçµ±º¯Êý¶©ÔÄÒ»¸öÊÂÎñÔ´ºó£¬¸Ãº¯ÊýÔÚ¸ÃÀàÐ͵ÄÊÂÎñ±¬·¢Ê±±»´¥·¢£¬ÕâЩÊÂÎñ¿ÉÄÜȪԴÓÚFaaSƽ̨£¬Ò²¿ÉÄÜȪԴÓÚδ֪µÄÊÂÎñÔ´£¬¹ØÓÚȪԴδ֪µÄÊÂÎñÔ´¿ÉÒÔ±»±êעΪ²»ÊÜÐÅÍС£ÔÚÏÖʵӦÓó¡¾°ÖУ¬ÈôÊÇ¿ª·¢ÕßûÓÐÓÅÒìµÄϰ¹ß¶ÔÊÂÎñÔ´¾ÙÐзÖÀ࣬Ôò»á¾­³£µ¼Ö½«²»ÊÜÐÅÍеÄÊÂÎñ´íÒÔΪÊÇFaaSƽ̨ÊÂÎñ£¬½ø¶ø½«ÆäÊÓΪÊÜÐÅÍеÄÊäÈëÀ´´¦Öóͷ££¬×îÖÕ´øÀ´ÁËΣº¦¡£ 

 

ÏêϸµØ£¬ÊäÈëȪԴµÄ²»È·¶¨ÐÔ»áΪServerlessÓ¦ÓôøÀ´×¢ÈëµÄΣº¦£¬Óë¹Å°åÓ¦ÓÃÏàͬµÄÊÇ£¬×¢Èë¹¥»÷Àú³ÌÓë²¢ÎÞÌ«´óÇø±ð£¬²î±ðµÄÊǹ¥»÷ÏòÁ¿µÄת±ä£¬¹Å°åÓ¦ÓÃÖÐÓÃÓÚ×¢Èë¹¥»÷µÄÏòÁ¿Í¨³£Ö¸¹¥»÷Õß¿ÉÒÔ¿ØÖÆ»òʹÓÃÓ¦ÓÃÊäÈëµÄÈκÎλÖ㬵«ServerlessÓ¦ÓÃÓÉÓÚÊäÈëµÄ²»È·¶¨ÐÔÒò¶ø´øÀ´Á˸ü´óµÄ¹¥»÷Ãæ¡£

 

4.1.2 ·þÎñÍйÜÔÆ·þÎñ³§ÉÌ´øÀ´µÄΣº¦

¹Å°åÓ¦ÓÃÖУ¬ÀýÈçWebÓ¦Óó£°²ÅÅÔÚÍâµØ/Ô¶³Ì·þÎñÆ÷ÉÏ£¬¹ØÓÚ·þÎñ¶ËµÄ²Ù×÷ϵͳÎó²îÐÞ²¹¡¢ÍøÂçÍØÆËµÄÇå¾²¡¢Ó¦ÓÃÔÚ·þÎñ¶ËµÄ»á¼ûÈÕÖ¾¼°¼à¿ØµÈ¾ùÐèÒªÌØ¶¨µÄÔËάְԱÐÐÖ¹Ö㬶øServerlessµÄ·þÎñÆ÷ÍйÜÔÆ·þÎñÉ̵ÄÌØµã½«µ¼Ö¿ª·¢ÕßÎÞ·¨¸ÐÖªµ½·þÎñÆ÷µÄ±£´æ£¬ÏÖʵÉÏ¿ª·¢ÕßÒ²ÎÞÐë¶Ô·þÎñÆ÷¾ÙÐвÙ×÷£¬Ö»Ðè¹Ø×¢Ó¦ÓÃ×Ô¼ºµÄÇå¾²¼´¿É£¬·þÎñÆ÷µÄÇå¾²Ôò½»ÓÉÔÆ³§ÉÌÖÎÀíServerlessµÄÕâÒ»ÌØÕ÷ÏÖʵÉϽµµÍÁËÇ徲Σº¦¡£

 

4.1.3  ¹©Ó¦ÉÌËø¶¨´øÀ´µÄΣº¦

“¹©Ó¦ÉÌËø¶¨”ÊÇÖ¸Óû§ÒÀÀµÌض¨¹©Ó¦ÉÌÌṩµÄ²úÆ·¼°·þÎñ£¬²¢ÇÒÔÚ²»±¬·¢ÊµÖÊÐÔת»»±¾Ç®»òÔËÓªÓ°ÏìµÄÇéÐÎÏÂÎÞ·¨Ê¹ÓÃÆäËû¹©Ó¦É̵ÄÔÆ·þÎñ£¬ÔÚServerlessÖУ¬“¹©Ó¦ÉÌËø¶¨”ÊÇÏÖÔÚ±£´æµÄÒ»´óÎÊÌ⣬ÀýÈçÓû§Ñ¡ÔñAWS×÷ΪӦÓõÄÔËÐÐÇéÐΣ¬ÓÉÓÚһЩԵ¹ÊÔ­ÓÉ£¬¸ÃÓ¦ÓÃÐèǨáãÖÁMicrosoft Azureƽ̨£¬µ«“¹©Ó¦ÉÌËø¶¨”µÄÎÊÌâµ¼ÖÂÎÞ·¨ÈÝÒ׵Ľ«Ö®Ç°ÔËÐеÄÓ¦Óü°Ê¹ÓõÄÏìÓ¦×ÊÔ´ÈçS3´æ´¢Í°µÈƽ»¬Ç¨áãÖÁMicrosoft Azureƽ̨ÖУ¬½ø¶øµ¼ÖÂÆóÒµÃæÁÙÓ¦ÓÃת»»±¾Ç®µÄΣº¦¡£

 

4.2 ServerlessÓ¦ÓÃΣº¦

ServerlessÓ¦ÓÃÊôÓÚÔÆÔ­ÉúÓ¦Óã¬ÆäÓ¦ÓÃ×Ô¼ºÓë¹Å°åÓ¦Óûù±¾ÊÇÏàͬµÄ£¬Î¨Ò»Çø±ðÊÇÓ¦ÓôúÂë±àдÐèÒª²ÎÕÕÔÆ³§ÉÌÌṩµÄÌØÓдúÂëÄ£°æ£¬¶ø¹Å°åÓ¦ÓÃͨ³£Ã»ÓÐÕâ¸öÏÞÖÆ¡£

 

ServerlessÓ¦ÓÃÊôÓÚÔÆÔ­ÉúÓ¦Óã¬ÔÆÔ­ÉúÓ¦ÓÃÓÖÔ´ÓڹŰåÓ¦Óã¬Òò¶ø¹Å°åÓ¦ÓÃÃæÁÙµÄΣº¦ÏÕЩ¿ÉÒÔÖÜÈ«ÁýÕÖServerlessÓ¦ÓÃΣº¦£¬¹ØÓÚΣº¦ÆÊÎö²¿·Ö¿ÉÒԲο¼Ö®Ç°¹Å°åÓ¦ÓÃΣº¦µÄÄÚÈÝ£¬¸üÏêϸµÄÄÚÈÝ¿ÉÒԲο¼OWASP×éÖ¯ÔÚ2017ÄêÐû²¼µÄServerlessÓ¦ÓÃÊ®´óΣº¦±¨¸æ[4]¡£

 

4.3 Serverlessƽ̨Σº¦

Serverlessƽ̨Ö÷ÒªÖ¸FaaSƽ̨£¬ÏÖÔÚÖ÷Á÷µÄFaaSƽ̨·ÖΪÁ½ÖÖÀàÐÍ£¬Ò»ÖÖÊÇÃæÏò¹«ÓÐÔÆÌṩÉ̵ÄFaaSƽ̨£¬³£¼ûµÄÓÐAWS Lambda¡¢Microsoft Azure Functions¡¢Google Cloud FunctionsµÈ£¬ÁíÒ»·½ÃæÔòÊÇÃæÏò˽ÓÐÔÆµÄFaaSƽ̨£¬´ËÀàÒÔ¿ªÔ´ÏîÄ¿¾Ó¶à£¬ÇÒ¾ùÖ§³ÖÔÚKubernetesÉϾÙÐа²ÅÅ£¬³£¼ûµÄÓÐApache OpenWhisk[7]¡¢Kubeless[8]¡¢OpenFaaS[9]¡¢Fission[10]µÈ¡£ÀàËÆÔÚIaaSƽ̨ÉÏÔËÐÐÐé»ú¡¢PaaSƽ̨ÉÏÔËÐвÙ×÷ϵͳºÍÓ¦Óã¬FaaSƽ̨½ÏÖ®ÉÏÊöƽ̨µÄÖ÷񻂿±ðΪÆäÔËÐеÄÊÇÒ»¸ö¸öServerlessº¯Êý¡£FaaSƽ̨×ÔÉíÈÏÕæÔÆÇéÐεØÇå¾²ÖÎÀí£¬Ö÷Òª°üÀ¨Êý¾Ý¡¢´æ´¢¡¢ÍøÂç¡¢ÅÌËã¡¢²Ù×÷ϵͳµÈ¡£

 

4.4 Serverless±»ÀÄÓõÄΣº¦

Serverless±»ÀÄÓÃÏêϸÊÇÖ¸¹¥»÷Õßͨ¹ý¶ñÒâ¹¹½¨Serverlessº¯Êý²¢Ê¹ÓÃÆä³äµ±Õû¸ö¹¥»÷ÖеÄÒ»»·£¬ÕâÖÖ·½·¨¿ÉÔÚÒ»¶¨Ë®Æ½ÉϹæ±ÜÇå¾²×°±¸µÄ¼ì²â¡£µ¼ÖÂServerless±»ÀÄÓõÄÔµ¹ÊÔ­ÓÉÖ÷Òª°üÀ¨ÒÔϼ¸µã£º

1. ÔƳ§ÉÌÌṩServerlessº¯ÊýµÄÃâ·ÑÊÔÓÃ

½üЩÄ꣬¸÷´óÔÆ³§ÉÌΪÁËÓû§ÌåÑ飬¾ù¶ÔÓû§ÌṩÃâ·ÑµÄServerlessÌײÍ£¬°üÀ¨Ã¿ÔÂÃâ·ÑµÄº¯ÊýŲÓöî¶È£¬ÕâÖÖ·½·¨ËäÈ»ÎüÒýÁ˸ü¶àµÄÓû§È¥Ê¹ÓÃServerlessº¯Êý, µ«Ò²Ê¹µÃ¹¥»÷ÕߵĹ¥»÷±¾Ç®´ó·ù½µµÍ¡£

 

2. Óû§°²ÅÅServerlessº¯ÊýµÄ±¾Ç®µÍ

ÓÉÓÚServerless·þÎñ¶ËÍйÜÔÆ³§É̵ĻúÖÆ£¬¹ÊÓû§Ö»ÐèʵÏÖº¯ÊýµÄ½¹µãÂß¼­£¬¶øÎÞÐëÌåÌùº¯ÊýÊÇÔõÑù±»°²Åż°Ö´ÐеÄ£¬Ê¹ÓÃÕâÐ©ÌØµã£¬¹¥»÷Õß¿ÉÒÔ±àд¶ÔÆäÓÐÀûµÄServerlessº¯Êý²¢ÄÜʡȥ°²Åŵı¾Ç®¡£

 

3. Serverlessº¯Êý»á¼ûÓòÃû¿ÉÐÅ

µ±Óû§°²ÅÅÍêServerlessº¯Êýºó£¬ÐèҪͨ¹ý´¥·¢Æ÷È¥´¥·¢º¯ÊýµÄÖ´ÐУ¬Í¨³£Óû§Ê¹ÓÃÔÆ³§ÉÌÌṩµÄAPIÍø¹Ø×÷Ϊ´¥·¢Æ÷£¬½¨ÉèAPIÍø¹Ø´¥·¢Æ÷Ö®ºó£¬ÔƳ§ÉÌ»áΪÓû§Ìṩһ¸ö¹«ÍøµÄÓòÃû£¬ÓÃÓÚ»á¼ûÓû§±àдµÄServerlessº¯Êý¡£ÐèÒª×¢ÖØµÄÊÇ£¬¸Ã¹«ÍøÓòÃûͨ³£ÊÇÔÆ³§ÉÌÓòÃûÏà¹ØµÄ×ÓÓòÃû£¬Òò¶øÊÇÏà¶Ô¿ÉÐŵÄ£¬¼øÓÚ´Ë£¬¹¥»÷Õß¿ÉÒÔʹÓú¯Êý»á¼ûÓòÃûµÄ¿ÉÐÅÈ¥Òþ²ØÆä¹¥»÷×ʲú£¬ÌÓ±ÜÇå¾²×°±¸µÄ¼ì²â¡£

 

Îå. ×ܽá

±¾ÎÄÏêϸÆÊÎöÁËÔÆÔ­ÉúÓ¦ÓÃÃæÁÙµÄΣº¦£¬¿ÉÒÔ¿´³ö£¬ÔÆÔ­ÉúÓ¦ÓÃÏà±È¹Å°åÓ¦ÓÃÃæÁÙµÄΣº¦Ö÷ҪΪӦÓüܹ¹Àå¸ï¼°ÐµÄÔÆÅÌËãģʽ´øÀ´µÄΣº¦£¬¶øÕë¶ÔÓ¦ÓÃ×Ô¼ºµÄΣº¦²¢Î޽ϴóת±ä£¬Òò¶ø¶ÔÔÆÔ­ÉúÓ¦Óüܹ¹ºÍÎÞ·þÎñÆ÷ÅÌËãģʽµÄÉî¶ÈÃ÷È·½«»áÓÐÖúÓÚÏàʶÕû¸öÔÆÔ­ÉúÓ¦ÓÃÇå¾²¡£

²Î¿¼ÎÄÏ×

[1] https://owasp.org/www-project-top-ten/

[2] https://owasp.org/www-project-api-security/ 

[3] https://netflixtechblog.com/starting-the-avalanche-640e69b14a06 

[4] https://www.owasp.org/index.php/OWASP_Serverless_Top_10_Project 

[5] https://github.com/apache/openwhisk 

[6] https://github.com/kubeless/kubeless 

[7 https://github.com/openfaas/faas 

[8] https://github.com/fission/fission 

?

ÄúµÄÁªÏµ·½·¨

*ÐÕÃû
*µ¥Î»Ãû³Æ
*ÁªÏµ·½·¨
*ÑéÖ¤Âë AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø
Ìá½»µ½ÓÊÏä

¹ºÖÃÈÈÏß

  • ¹ºÖÃ×Éѯ:

    400-818-6868-1

Ìá½»ÏîÄ¿ÐèÇó

½Ó´ý¼ÓÈëAG¹«Ë¾¿Æ¼¼£¬³ÉΪÎÒÃǵÄÏàÖúͬ°é£¡
  • *ÇëÐÎòÄúµÄÐèÇó
  • *×îÖÕ¿Í»§Ãû³Æ
  • *ÏîÄ¿Ãû³Æ
  • Äú¸ÐÐËȤµÄ²úÆ·
  • ÏîĿԤËã
ÄúµÄÁªÏµ·½·¨
  • *ÐÕÃû
  • *ÁªÏµµç»°
  • *ÓÊÏä
  • *Ö°Îñ
  • *¹«Ë¾
  • *¶¼»á
  • *ÐÐÒµ
  • *ÑéÖ¤Âë AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø
  • Ìá½»µ½ÓÊÏä
AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø
AG¹«Ë¾(Öйú¼¯ÍÅ)¡¤ÓÐÏÞ¹«Ë¾¹ÙÍø

·þÎñÖ§³Ö

ÖÇÄܿͷþ
ÖÇÄܿͷþ
¹ºÖÃ/ÊÛºóÊÖÒÕÎÊÌâ
Ã˹ܼÒ-ÊÛºó·þÎñϵͳ
Ã˹ܼÒ-ÊÛºó·þÎñϵͳ
ÔÚÏßÌáµ¥|ÖÇÄÜÎÊ´ð|֪ʶ¿â
Ö§³ÖÈÈÏß
Ö§³ÖÈÈÏß
400-818-6868
AG¹«Ë¾¿Æ¼¼ÉçÇø
AG¹«Ë¾¿Æ¼¼ÉçÇø
×ÊÁÏÏÂÔØ|ÔÚÏßÎÊ´ð|ÊÖÒÕ½»Á÷
΢²©
΢²©

΢²©

΢ÐÅ
΢ÐÅ

΢ÐÅ

BÕ¾
BÕ¾

BÕ¾

¶¶Òô
¶¶Òô

¶¶Òô

ÊÓÆµºÅ
ÊÓÆµºÅ

ÊÓÆµºÅ

·þÎñÈÈÏß

400-818-6868

·þÎñʱ¼ä

7*24Сʱ

? 2026 NSFOCUS AG¹«Ë¾¿Æ¼¼ www.nsfocus.com All Rights Reserved . ¾©¹«Íø°²±¸ 11010802021605ºÅ ¾©ICP±¸14004349ºÅ ¾©ICPÖ¤110355ºÅ

ÍøÕ¾µØÍ¼