Webãã©ãããã©ãŒã ã€ã³ãã©ã®å æ¬çã¬ã€ããææ°ã®Webã¢ããªã±ãŒã·ã§ã³ã«ã¹ã±ãŒã©ããªãã£ãä¿¡é Œæ§ãã°ããŒãã«ãªãªãŒããä¿èšŒããå®è£ ãã¬ãŒã ã¯ãŒã¯ã«çŠç¹ãåœãŠãŸãã
Webãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ïŒã°ããŒãã«ãªã¹ã±ãŒã©ããªãã£ãå®çŸããå®è£ ãã¬ãŒã ã¯ãŒã¯
仿¥ã®çžäºæ¥ç¶ãããäžçã§ã¯ãã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã«ãªãŒãããããšãç®æãããžãã¹ã«ãšã£ãŠãå ç¢ã§ã¹ã±ãŒã©ãã«ãªWebãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ãæãéèŠã§ãããã®èšäºã§ã¯ãã¹ã±ãŒã©ããªãã£ãä¿¡é Œæ§ãã»ãã¥ãªãã£ãå¯èœã«ããå®è£ ãã¬ãŒã ã¯ãŒã¯ã«çŠç¹ãåœãŠããã®ãããªã€ã³ãã©ã¹ãã©ã¯ãã£ãæ§ç¯ããããã®äž»èŠãªã³ã³ããŒãã³ããšèæ ®äºé ã«ã€ããŠè©³ãã説æããŸããã°ããŒãã«ãªãŠãŒã¶ãŒããŒã¹ã®èŠæ±ã«å¯Ÿå¿ã§ããWebãã©ãããã©ãŒã ã®èšèšãšãããã€ã«åœ¹ç«ã€ãããŸããŸãªãã¯ãããžãŒãã¢ãŒããã¯ãã£ãã¿ãŒã³ããã¹ããã©ã¯ãã£ã¹ãæ¢ããŸãã
Webãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ã®çè§£
Webãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ã¯ãWebã¢ããªã±ãŒã·ã§ã³ããµãŒãã¹ã®æäŸããµããŒããããã¹ãŠã®åºç€ãšãªãã·ã¹ãã ãšãã¯ãããžãŒãå å«ããŸããããã«ã¯ãããŒããŠã§ã¢ããœãããŠã§ã¢ããããã¯ãŒã¯ãããŒã¿ããŒã¹ãå«ãŸããŸããé©åã«èšèšãããã€ã³ãã©ã¹ãã©ã¯ãã£ã¯ãé«è² è·æãäºæãã¬ã€ãã³ãã®éã«ããã¢ããªã±ãŒã·ã§ã³ãå©çšå¯èœã§ãå¿çæ§ãé«ããå®å šã§ããããšãä¿èšŒããŸããã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã®ããã«ã¯ãå°ççãªåæ£ãããŒã«ã©ã€ãºãããã³ã³ãã³ãé ä¿¡ã®èæ ®ãå«ãŸããŸãã
Webãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ã®äž»èŠã³ã³ããŒãã³ã
- ãµãŒããŒãšã³ã³ãã¥ãŒãã£ã³ã°ãªãœãŒã¹ïŒ ç©çãµãŒããŒãä»®æ³ãã·ã³ãã¯ã©ãŠãããŒã¹ã®ã³ã³ãã¥ãŒãã£ã³ã°ã€ã³ã¹ã¿ã³ã¹ãå«ãŸããŸããéžæã¯ãã³ã¹ããã¹ã±ãŒã©ããªãã£ã®èŠä»¶ãå¿ èŠãªå¶åŸ¡ãªã©ã®èŠå ã«ãã£ãŠæ±ºãŸããŸããAmazon Web Services (AWS)ãGoogle Cloud Platform (GCP)ãMicrosoft Azureãªã©ã®ã¯ã©ãŠããããã€ããŒã¯ãInfrastructure-as-a-Service (IaaS) ãã Platform-as-a-Service (PaaS) ãŸã§ãããŸããŸãªãªãã·ã§ã³ãæäŸããŠããŸãã
- ãããã¯ãŒãã³ã°ïŒ ãããã¯ãŒãã³ã°ã€ã³ãã©ã¹ãã©ã¯ãã£ã«ã¯ãã«ãŒã¿ãŒãã¹ã€ããããã¡ã€ã¢ãŠã©ãŒã«ãããŒããã©ã³ãµãŒãå«ãŸããŸããé©åãªãããã¯ãŒã¯æ§æã¯ããã©ãã£ãã¯ãå¹ççã«ã«ãŒãã£ã³ã°ããã»ãã¥ãªãã£ã確ä¿ããããã«äžå¯æ¬ ã§ããã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã«ãšã£ãŠãã³ã³ãã³ãããªããªãŒãããã¯ãŒã¯ (CDN) ã¯ãã³ã³ãã³ãããŠãŒã¶ãŒã®è¿ãã«ãã£ãã·ã¥ããã¬ã€ãã³ã·ãåæžããããã«äžå¯æ¬ ã§ãã人æ°ã®CDNã®äŸã«ã¯ãCloudflareãAkamaiãAmazon CloudFrontããããŸãã
- ããŒã¿ããŒã¹ïŒ ããŒã¿ããŒã¹ã¯ã¢ããªã±ãŒã·ã§ã³ã®ããŒã¿ãä¿åããŸããé©åãªããŒã¿ããŒã¹æè¡ã®éžæã¯ãã¢ããªã±ãŒã·ã§ã³ã®ããŒã¿ã¢ãã«ãããã©ãŒãã³ã¹èŠä»¶ãã¹ã±ãŒã©ããªãã£ã®ããŒãºã«ãã£ãŠæ±ºãŸããŸããéžæè¢ã«ã¯ããªã¬ãŒã·ã§ãã«ããŒã¿ããŒã¹ (äŸ: MySQL, PostgreSQL)ãNoSQLããŒã¿ããŒã¹ (äŸ: MongoDB, Cassandra)ãã€ã³ã¡ã¢ãªããŒã¿ããŒã¹ (äŸ: Redis, Memcached) ããããŸããããŒã¿ããŒã¹ã®ã¬ããªã±ãŒã·ã§ã³ãšã·ã£ãŒãã£ã³ã°ã¯ãé«å¯çšæ§ãšã¹ã±ãŒã©ããªãã£ã確ä¿ããããã®éèŠãªæŠç¥ã§ãã
- ã¹ãã¬ãŒãžïŒ ãã¡ã€ã«ãç»åãåç»ããã®ä»ã®ããŒã¿ãä¿åããããã«ã¹ãã¬ãŒãžãœãªã¥ãŒã·ã§ã³ãå¿ èŠã§ããéžæè¢ã«ã¯ããªããžã§ã¯ãã¹ãã¬ãŒãž (äŸ: Amazon S3, Google Cloud Storage)ããããã¯ã¹ãã¬ãŒãž (äŸ: Amazon EBS, Azure Disks)ããã¡ã€ã«ã¹ãã¬ãŒãž (äŸ: Amazon EFS, Azure Files) ããããŸããã¹ãã¬ãŒãžãœãªã¥ãŒã·ã§ã³ãéžæããéã«ã¯ãããŒã¿ã®èä¹ æ§ãå¯çšæ§ãã³ã¹ããèæ ®ããŠãã ããã
- ãã£ãã·ã³ã°ïŒ ãã£ãã·ã³ã°ã¯ãããã©ãŒãã³ã¹ãåäžãããããã¯ãšã³ãã·ã¹ãã ã®è² è·ã軜æžããããã®éèŠãªãã¯ããã¯ã§ãããã£ãã·ã³ã°ã¯ããã©ãŠã¶ãã£ãã·ã¥ãCDNãã£ãã·ã¥ããµãŒããŒãµã€ããã£ãã·ã¥ãããŒã¿ããŒã¹ãã£ãã·ã¥ãªã©ãããŸããŸãªã¬ãã«ã§å®è£ ã§ããŸããRedisãMemcachedã®ãããªããŒã«ã¯ããµãŒããŒãµã€ããã£ãã·ã³ã°ã§äžè¬çã«äœ¿çšãããŸãã
- ã¢ãã¿ãªã³ã°ãšãã®ã³ã°ïŒ å æ¬çãªã¢ãã¿ãªã³ã°ãšãã®ã³ã°ã¯ãåé¡ãè¿ éã«ç¹å®ã解決ããããã«äžå¯æ¬ ã§ããPrometheusãGrafanaãElasticsearchã®ãããªããŒã«ãã¢ãã¿ãªã³ã°ãšãã®ã³ã°ã§äžè¬çã«äœ¿çšãããŸããéèŠãªã¡ããªã¯ã¹ã«å¯ŸããŠã¢ã©ãŒããèšå®ããããšã§ããŠãŒã¶ãŒã«åœ±é¿ãåã¶åã«åé¡ãç©æ¥µçã«å¯ŸåŠã§ããŸãã
- ã»ãã¥ãªãã£ïŒ ã»ãã¥ãªãã£ã¯æéèŠã§ãããã¡ã€ã¢ãŠã©ãŒã«ãäŸµå ¥æ€ç¥ã·ã¹ãã ãå®è£ ãã宿çãªã»ãã¥ãªãã£ç£æ»ã宿œããŠãã ãããSQLã€ã³ãžã§ã¯ã·ã§ã³ãã¯ãã¹ãµã€ãã¹ã¯ãªããã£ã³ã° (XSS) ãªã©ã®äžè¬çãªWebã®è匱æ§ããä¿è·ããŸããHTTPSã䜿çšããŠãã¹ãŠã®ãã©ãã£ãã¯ãæå·åããŠãã ããã
å®è£ ãã¬ãŒã ã¯ãŒã¯ïŒã°ããŒãã«ã¹ã±ãŒã«ã§ã®ã¢ãŒããã¯ãã£èšèš
å®è£ ãã¬ãŒã ã¯ãŒã¯ã¯ãWebãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ãæ§ç¯ããã³ãããã€ããããã®æ§é åãããã¢ãããŒããæäŸããŸãã䜿çšãããååããã¿ãŒã³ããã¯ãããžãŒãå®çŸ©ããŸããæç¢ºã«å®çŸ©ããããã¬ãŒã ã¯ãŒã¯ã¯ãäžè²«æ§ã確ä¿ããè€éãã軜æžããéçºããŒã éã®ååãä¿é²ããŸãã
ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£
ãã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ã¯ãã¹ã±ãŒã©ãã«ã§å埩åã®ããWebã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã®äººæ°ã®ããã¢ãããŒãã§ãããã®ã¢ãŒããã¯ãã£ã§ã¯ãã¢ããªã±ãŒã·ã§ã³ã¯ãããã¯ãŒã¯ãä»ããŠçžäºã«éä¿¡ããå°ããç¬ç«ãããµãŒãã¹ã«åè§£ãããŸããåãã€ã¯ããµãŒãã¹ã¯ç¬ç«ããŠéçºããããã€ãã¹ã±ãŒãªã³ã°ã§ãããããã¢ããªã±ãŒã·ã§ã³ã®ç®¡çãšæŽæ°ã容æã«ãªããŸããããã¯ç¹ã«ãç°ãªãå°åã§ç°ãªããµãŒãã¹ããŒãžã§ã³ãæ©èœã»ãããå¿ èŠãšãªãã°ããŒãã«ãªæèã§åœ¹ç«ã¡ãŸãã äŸïŒ ã°ããŒãã«ãªeã³ããŒã¹ãã©ãããã©ãŒã ã¯ãååã«ã¿ãã°ç®¡çãæ³šæåŠçãæ¯æãã²ãŒããŠã§ã€çµ±åãé éããžã¹ãã£ã¯ã¹ã«å¥ã ã®ãã€ã¯ããµãŒãã¹ãå®è£ ãããããããŸãããåãã€ã¯ããµãŒãã¹ã¯ãç°ãªãå°ççå°åã§ã®éèŠã«åºã¥ããŠç¬ç«ããŠã¹ã±ãŒãªã³ã°ã§ããŸãã
ãã€ã¯ããµãŒãã¹ã®å©ç¹ïŒ
- ã¹ã±ãŒã©ããªãã£ïŒ åã ã®ãµãŒãã¹ã¯éèŠã«å¿ããŠç¬ç«ããŠã¹ã±ãŒãªã³ã°ã§ããŸãã
- å埩åïŒ 1ã€ã®ãµãŒãã¹ã倱æããŠããå¿ ãããã¢ããªã±ãŒã·ã§ã³å šäœãããŠã³ããããã§ã¯ãããŸããã
- éçºãµã€ã¯ã«ã®é«éåïŒ å°èŠæš¡ã§ç¬ç«ããããŒã ããç°ãªããµãŒãã¹ã§åæã«äœæ¥ã§ããŸãã
- ãã¯ãããžãŒã®å€æ§æ§ïŒ ç°ãªããµãŒãã¹ãç°ãªãæè¡ã§æ§ç¯ã§ããããããã®ä»äºã«æé©ãªããŒã«ãéžæã§ããŸãã
ãã€ã¯ããµãŒãã¹ã®èª²é¡ïŒ
- è€éæ§ïŒ 忣ã·ã¹ãã ã®ç®¡çã¯è€éã«ãªãããšããããŸãã
- éçšãªãŒããŒãããïŒ å€ãã®ãµãŒãã¹ããããã€ããã³ç®¡çããã«ã¯ãå ç¢ãªèªååãšã¢ãã¿ãªã³ã°ãå¿ èŠã§ãã
- ãµãŒãã¹ééä¿¡ïŒ ãµãŒãã¹éã®å¹ççã§ä¿¡é Œæ§ã®é«ãéä¿¡ãäžå¯æ¬ ã§ãã
DockerãšKubernetesã«ããã³ã³ããå
DockerãKubernetesã®ãããªã³ã³ããåæè¡ã¯ãã¢ããªã±ãŒã·ã§ã³ã®ãããã€ãšç®¡çã®æ¹æ³ã«é©åœããããããŸãããDockerã䜿çšãããšãã¢ããªã±ãŒã·ã§ã³ãšãã®äŸåé¢ä¿ãã³ã³ããã«ããã±ãŒãžåã§ããç°ãªãç°å¢ã§ãäžè²«ããŠå®è¡ãããããšãä¿èšŒãããŸããKubernetesã¯ãã³ã³ããåãããã¢ããªã±ãŒã·ã§ã³ã®ãããã€ãã¹ã±ãŒãªã³ã°ã管çãèªååããã³ã³ãããªãŒã±ã¹ãã¬ãŒã·ã§ã³ãã©ãããã©ãŒã ã§ãããã®çµã¿åããã«ãããç°ãªãã°ããŒãã«ãªãŒãžã§ã³ãžã®ãããã€ã容æã«ãªããŸãã äŸïŒ DockerãšKubernetesã䜿çšããããšã§ãäŒæ¥ã¯æå°éã®æ§æå€æŽã§åãã¢ããªã±ãŒã·ã§ã³ãè€æ°ã®ã¯ã©ãŠããªãžã§ã³ (äŸ: ç±³åœæ±éšãEU西éšãã¢ãžã¢å€ªå¹³æŽ) ã«ç°¡åã«ãããã€ã§ããŸããKubernetesã¯ãã³ã³ãããç°ãªãããŒãã«èªåçã«åæ£ãããé«å¯çšæ§ãä¿èšŒããŸãã
ã³ã³ããåã®å©ç¹ïŒ
- äžè²«æ§ïŒ ã³ã³ããã¯ãã¢ããªã±ãŒã·ã§ã³ãç°ãªãç°å¢ã§äžè²«ããŠå®è¡ãããããšãä¿èšŒããŸãã
- ç§»æ€æ§ïŒ ã³ã³ããã¯ããªã³ãã¬ãã¹ã®ããŒã¿ã»ã³ã¿ãŒãã¯ã©ãŠããããã€ããŒãå«ãç°ãªãç°å¢éã§ç°¡åã«ç§»åã§ããŸãã
- å颿§ïŒ ã³ã³ããã¯ã¢ããªã±ãŒã·ã§ã³éã«åé¢ãæäŸããç«¶åãé²ããã»ãã¥ãªãã£ãåäžãããŸãã
- ã¹ã±ãŒã©ããªãã£ïŒ Kubernetesã䜿çšãããšãéèŠã«å¿ããŠã³ã³ããåãããã¢ããªã±ãŒã·ã§ã³ãç°¡åã«ã¹ã±ãŒã«ã¢ãããŸãã¯ã¹ã±ãŒã«ããŠã³ã§ããŸãã
ãµãŒããŒã¬ã¹ã³ã³ãã¥ãŒãã£ã³ã°
ãµãŒããŒã¬ã¹ã³ã³ãã¥ãŒãã£ã³ã°ã¯ãã¯ã©ãŠããããã€ããŒããã·ã³ãªãœãŒã¹ã®å²ãåœãŠãåçã«ç®¡çããã¯ã©ãŠãã³ã³ãã¥ãŒãã£ã³ã°ã®å®è¡ã¢ãã«ã§ããããã¯ãéçºè ããµãŒããŒã®ããããžã§ãã³ã°ã管çã«ã€ããŠå¿é ããå¿ èŠããªãããšãæå³ããŸãã圌ãã¯åã«ã³ãŒãã颿°ãšããŠãããã€ããã¯ã©ãŠããããã€ããŒãéèŠã«å¿ããŠå®è¡ç°å¢ãèªåçã«ã¹ã±ãŒãªã³ã°ããŸãããã®ã¢ãããŒãã¯ãã€ãã³ãé§ååã®ã¢ããªã±ãŒã·ã§ã³ããã©ãã£ãã¯ãã¿ãŒã³ãäºæž¬äžå¯èœãªã¢ããªã±ãŒã·ã§ã³ã«æé©ã§ãã äŸïŒ ç»ååŠçãµãŒãã¹ã¯ããµãŒããŒã¬ã¹é¢æ°ã䜿çšããŠå®è£ ã§ããŸãããŠãŒã¶ãŒãç»åãã¢ããããŒããããšããµãŒããŒã¬ã¹é¢æ°ãããªã¬ãŒãããŠç»åã®ãµã€ãºã倿ŽããããŒã¿ããŒã¹ã«ä¿åããŸãã颿°ã¯ãã¢ããããŒããããç»åã®æ°ã«åºã¥ããŠèªåçã«ã¹ã±ãŒãªã³ã°ããŸãã
ãµãŒããŒã¬ã¹ã³ã³ãã¥ãŒãã£ã³ã°ã®å©ç¹ïŒ
- ã³ã¹ãå¹çïŒ äœ¿çšãããªãœãŒã¹ã«å¯ŸããŠã®ã¿æ¯æããŸãã
- ã¹ã±ãŒã©ããªãã£ïŒ ã¯ã©ãŠããããã€ããŒãéèŠã«å¿ããŠå®è¡ç°å¢ãèªåçã«ã¹ã±ãŒãªã³ã°ããŸãã
- éçšãªãŒããŒãããã®åæžïŒ ãµãŒããŒã管çããå¿ èŠããããŸããã
- éçºãµã€ã¯ã«ã®é«éåïŒ éçºè ã¯ã€ã³ãã©ç®¡çã§ã¯ãªããã³ãŒãã®èšè¿°ã«éäžã§ããŸãã
CI/CDãã€ãã©ã€ã³
ç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³/ç¶ç¶çããªããªãŒ (CI/CD) ãã€ãã©ã€ã³ã¯ãã³ãŒã倿Žã®ãã«ãããã¹ãããããã€ã®ããã»ã¹ãèªååããŸããããã«ãããéçºè ã¯æ°æ©èœããã°ä¿®æ£ãããé »ç¹ãã€ä¿¡é Œæ§é«ããªãªãŒã¹ã§ããŸããCI/CDãã€ãã©ã€ã³ã«ã¯éåžžãã³ãŒãã®ã³ãããããã«ãããã¹ãããããã€ã®åã¹ããŒãžãå«ãŸããŸãã äŸïŒ éçºè ãGitãªããžããªã«ã³ãŒããã³ããããããšãCI/CDãã€ãã©ã€ã³ãèªåçã«ã¢ããªã±ãŒã·ã§ã³ããã«ãããèªåãã¹ããå®è¡ããã¢ããªã±ãŒã·ã§ã³ãã¹ããŒãžã³ã°ç°å¢ã«ãããã€ããŸããã¹ããŒãžã³ã°ç°å¢ã§å€æŽãæ€èšŒãããåŸãã¯ã³ã¯ãªãã¯ã§æ¬çªç°å¢ã«ãããã€ã§ããŸãã
CI/CDã®å©ç¹ïŒ
- ãªãªãŒã¹ãµã€ã¯ã«ã®é«éåïŒ èªååããããã«ãããã¹ãããããã€ããã»ã¹ã«ãããããéããªãªãŒã¹ãµã€ã¯ã«ãå¯èœã«ãªããŸãã
- ã³ãŒãå質ã®åäžïŒ èªåãã¹ãã¯ãã°ã®ç¹å®ãšé²æ¢ã«åœ¹ç«ã¡ãŸãã
- ãªã¹ã¯ã®äœæžïŒ èªåãããã€ã¡ã³ãã¯äººçãã¹ã®ãªã¹ã¯ãäœæžããŸãã
- ã³ã©ãã¬ãŒã·ã§ã³ã®ä¿é²ïŒ CI/CDã¯éçºããŒã ãšéçšããŒã ã®éã®ã³ã©ãã¬ãŒã·ã§ã³ãä¿é²ããŸãã
Webãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ã«ãããã°ããŒãã«ãªèæ ®äºé
ã°ããŒãã«ãªãªãŒãã£ãšã³ã¹åãã®Webãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ãæ§ç¯ããã«ã¯ãã¬ã€ãã³ã·ãããŒã«ãªãŒãŒã·ã§ã³ãã³ã³ãã©ã€ã¢ã³ã¹ãã»ãã¥ãªãã£ãªã©ãããã€ãã®èŠå ãæ éã«èæ ®ããå¿ èŠããããŸãã
ã¬ã€ãã³ã·ã®æé©å
ã¬ã€ãã³ã·ãšã¯ããŠãŒã¶ãŒã®ãªã¯ãšã¹ããããµãŒããŒã®ã¬ã¹ãã³ã¹ãŸã§ã®é å»¶ã®ããšã§ããé«ãã¬ã€ãã³ã·ã¯ãç¹ã«ã€ã³ã¿ã©ã¯ãã£ããªã¢ããªã±ãŒã·ã§ã³ã«ãããŠããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«å€§ããªåœ±é¿ãäžããå¯èœæ§ããããŸããã¬ã€ãã³ã·ãæå°éã«æããã«ã¯ãã¢ããªã±ãŒã·ã§ã³ããŠãŒã¶ãŒã®è¿ãã«ãããã€ããããšãéèŠã§ããããã¯ãã³ã³ãã³ãããªããªãŒãããã¯ãŒã¯ (CDN) ã䜿çšããããã¢ããªã±ãŒã·ã§ã³ãè€æ°ã®ã¯ã©ãŠããªãžã§ã³ã«ãããã€ãããããããšã§å®çŸã§ããŸãããŸããããŒã¿ããŒã¹ã¯ãšãªãã¢ããªã±ãŒã·ã§ã³ã³ãŒããæé©åããŠåŠçæéãæå°éã«æããããšãéèŠã§ãã
ããŒã«ãªãŒãŒã·ã§ã³
ããŒã«ãªãŒãŒã·ã§ã³ãšã¯ãã¢ããªã±ãŒã·ã§ã³ãããŸããŸãªèšèªãæåã«é©å¿ãããããã»ã¹ã§ããããã«ã¯ãããã¹ãã®ç¿»èš³ãæ¥ä»ãæ°å€ã®æžåŒèšå®ãç»åããã®ä»ã®ã¡ãã£ã¢ãçŸå°ã®å¥œã¿ã«åãããããšãå«ãŸããŸããããŒã«ã©ã€ãºãããã³ã³ãã³ããæäŸããããšã§ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžããã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã«ãšã£ãŠã¢ããªã±ãŒã·ã§ã³ãããã¢ã¯ã»ã¹ãããããªããŸãã確ç«ãããããŒã«ãªãŒãŒã·ã§ã³ãã¬ãŒã ã¯ãŒã¯ããªãœãŒã¹ã䜿çšããããšãéèŠã§ãã äŸïŒ ã°ããŒãã«ãªeã³ããŒã¹ãã©ãããã©ãŒã ã¯ãäŸ¡æ ŒãçŸå°é貚ã§è¡šç€ºããåå°åã«é©ããæ¥ä»ãšæå»ã®åœ¢åŒã䜿çšããå¿ èŠããããŸãã
ã³ã³ãã©ã€ã¢ã³ã¹
ã³ã³ãã©ã€ã¢ã³ã¹ãšã¯ãååœã®æ³åŸãèŠå¶ãéµå®ããããšãæããŸããããã«ã¯ãããŒã¿ãã©ã€ãã·ãŒæ³ (äŸ: ãšãŒãããã®GDPRãã«ãªãã©ã«ãã¢ã®CCPA)ãã¢ã¯ã»ã·ããªãã£åºæº (äŸ: WCAG)ãæ¥çåºæã®èŠå¶ (äŸ: å»çã«ãããHIPAA) ãå«ãŸããŸããäºæ¥ãå±éããåå°åã®ã³ã³ãã©ã€ã¢ã³ã¹èŠä»¶ãçè§£ããã³ã³ãã©ã€ã¢ã³ã¹ã確ä¿ããããã®é©åãªæªçœ®ãè¬ããããšãéèŠã§ãã äŸïŒ ãšãŒãããã®ãŠãŒã¶ãŒããå人ããŒã¿ãåéããå ŽåãGDPRãéµå®ããå¿ èŠããããŸããããã«ã¯ãããŒã¿åéã«å¯Ÿããæç¢ºãªåæãåŸãããšããŠãŒã¶ãŒã«èªåã®ããŒã¿ã«ã¢ã¯ã»ã¹ãä¿®æ£ãæ¶å»ããæš©å©ãæäŸããããšãå«ãŸããŸãã
ã»ãã¥ãªãã£
ã»ãã¥ãªãã£ã¯ãããããWebãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ã«ãšã£ãŠéèŠãªèæ ®äºé ã§ãããã°ããŒãã«ãªã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠã¯ç¹ã«éèŠã§ãããããã³ã°ããã«ãŠã§ã¢ãããŒã¿äŸµå®³ãªã©ãããŸããŸãªè åšããã¢ããªã±ãŒã·ã§ã³ãšããŒã¿ãä¿è·ããå¿ èŠããããŸãããã¡ã€ã¢ãŠã©ãŒã«ãäŸµå ¥æ€ç¥ã·ã¹ãã ã宿çãªã»ãã¥ãªãã£ç£æ»ãªã©ã®åŒ·åãªã»ãã¥ãªãã£å¯Ÿçã宿œããŠãã ããããŸããåŸæ¥å¡ã«ã»ãã¥ãªãã£ã®ãã¹ããã©ã¯ãã£ã¹ã«ã€ããŠæè²ããå ç¢ãªã»ãã¥ãªãã£ã€ã³ã·ãã³ã察å¿èšç»ãçå®ããŠãã ãããè匱æ§ã«ã€ããŠã·ã¹ãã ã宿çã«ãã¹ãããæŽæ°ããŠãã ãããäžè¬çãªWebãšã¯ã¹ããã€ãããä¿è·ããããã«ãWebã¢ããªã±ãŒã·ã§ã³ãã¡ã€ã¢ãŠã©ãŒã« (WAF) ã®äœ¿çšãæ€èšããŠãã ããã äŸïŒ ãã¹ãŠã®ãŠãŒã¶ãŒã¢ã«ãŠã³ãã«å€èŠçŽ èªèšŒ (MFA) ã䜿çšããäžæ£ã¢ã¯ã»ã¹ãé²ãããã«åŒ·åãªãã¹ã¯ãŒãããªã·ãŒãå®è£ ããŠãã ããã
Webãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£å®è£ ã®ãã¹ããã©ã¯ãã£ã¹
以äžã®ãã¹ããã©ã¯ãã£ã¹ã«åŸãããšã§ãã°ããŒãã«ãªãªãŒãã£ãšã³ã¹åãã«ã¹ã±ãŒã©ãã«ã§ä¿¡é Œæ§ãé«ããå®å šãªWebãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ãæ§ç¯ã§ããŸãã
- ãã¹ãŠãèªååããïŒ ãããã€ãã¹ã±ãŒãªã³ã°ãã¢ãã¿ãªã³ã°ãã»ãã¥ãªãã£ãªã©ãã€ã³ãã©ç®¡çããã»ã¹ã®å¯èœãªéãå€ããèªååããŸãã
- ç¶ç¶çã«ç£èŠããïŒ ã€ã³ãã©ã¹ãã©ã¯ãã£ãç¶ç¶çã«ç£èŠããåé¡ãè¿ éã«ç¹å®ããŠè§£æ±ºããŸãã
- çœå®³åŸ©æ§èšç»ãå®è£ ããïŒ ã¢ããªã±ãŒã·ã§ã³ã忢ããè¿ éã«åŸ©æ§ã§ããããã«ãçœå®³åŸ©æ§èšç»ãçå®ããŸãã
- Infrastructure as Code (IaC) ã䜿çšããïŒ ã³ãŒãã䜿çšããŠã€ã³ãã©ã¹ãã©ã¯ãã£ã管çããäžè²«æ§ãšåçŸæ§ã確ä¿ããŸããTerraformãAWS CloudFormationã®ãããªããŒã«ã䜿çšãããšãã€ã³ãã©ã¹ãã©ã¯ãã£ãã³ãŒããšããŠå®çŸ©ã§ããŸãã
- DevOpsã®ååãåãå ¥ããïŒ éçºããŒã ãšéçšããŒã ã®éã®ååãä¿é²ããŸãã
- ã¢ãŒããã¯ãã£ã宿çã«ã¬ãã¥ãŒããæŽæ°ããïŒ ãã¯ãããžãŒã¯æ¥éã«é²åãããããæ°ãããã¯ãããžãŒããã¹ããã©ã¯ãã£ã¹ã掻çšããããã«ãã¢ãŒããã¯ãã£ã宿çã«ã¬ãã¥ãŒããæŽæ°ããããšãéèŠã§ãã
- è² è·ãã¹ãã宿œããïŒ ãã©ãã£ãã¯ãã·ãã¥ã¬ãŒãããŠãã·ã¹ãã ãè² è·ã®äžã§ã©ã®ããã«åäœããããçè§£ããå®éã®ãŠãŒã¶ãŒã«åœ±é¿ãåã¶åã«ããã«ããã¯ãç¹å®ããŸãã
- ã¬ãŒãå¶éãå®è£ ããïŒ äžå®æéå ã«åäžã®ãŠãŒã¶ãŒãŸãã¯IPã¢ãã¬ã¹ããã®ãªã¯ãšã¹ãæ°ãå¶éããã¬ãŒãå¶éãå®è£ ããŠãAPIãšãªãœãŒã¹ãä¹±çšããä¿è·ããŸãã
çµè«
ã°ããŒãã«ãªãªãŒãã£ãšã³ã¹åãã«å ç¢ã§ã¹ã±ãŒã©ãã«ãªWebãã©ãããã©ãŒã ã€ã³ãã©ã¹ãã©ã¯ãã£ãæ§ç¯ããããšã¯ãè€éãªä»äºã§ãããããããã®èšäºã§æŠèª¬ããååãšãã¹ããã©ã¯ãã£ã¹ã«åŸãããšã§ã仿¥ã®çžäºæ¥ç¶ãããäžçã®èŠæ±ã«å¿ããã€ã³ãã©ã¹ãã©ã¯ãã£ãäœæã§ããŸããã¹ã±ãŒã©ããªãã£ãä¿¡é Œæ§ãã»ãã¥ãªãã£ãããŒã«ãªãŒãŒã·ã§ã³ãªã©ã®èŠçŽ ãæ éã«èæ ®ããããšã§ãäžçäžã®ãŠãŒã¶ãŒã«åªãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸããWebãã©ãããã©ãŒã ãæ§ç¯ã§ããŸããç¶æ³ã¯çµ¶ããé²åããŠãããããç¶ç¶çãªåŠç¿ãšé©å¿ãå ãè¡ãããã«äžå¯æ¬ ã§ããããšãå¿ããªãã§ãã ããã