ãã€ã¯ããµãŒãã¹ ã²ãŒããŠã§ã€ã¯ãææ°ã®ãã€ã¯ããµãŒãã¹ ããŒã¹ã®ã¢ããªã±ãŒã·ã§ã³ ã¢ãŒããã¯ãã£ã«äžå¯æ¬ ãªã³ã³ããŒãã³ãã§ããããšã³ã㪠ãã€ã³ããšããŠæ©èœããã¯ã©ã€ã¢ã³ããšãã€ã¯ããµãŒãã¹éã®ãã©ãã£ãã¯ãæç€ºããã³ç®¡çããŸãããã€ã¯ããµãŒãã¹ã®ã³ã³ããã¹ãã§ã¯ããã®ã²ãŒããŠã§ã€ã¯ã忣ã·ã¹ãã å ã®ãã€ã¯ããµãŒãã¹éã®å®¹æãªçµ±åãå ç¢ãªã»ãã¥ãªãã£ãæè»ãªã¹ã±ãŒã©ããªãã£ãããã³å¹ççãªéä¿¡ãä¿é²ããäžã§éèŠãªåœ¹å²ãæãããŸãã
ãã€ã¯ããµãŒãã¹ ã²ãŒããŠã§ã€ã¯ããã©ãã£ãã¯ã®ã«ãŒãã£ã³ã°ãã¢ã¯ã»ã¹ã®ä¿è·ã埩å åã®ç¢ºä¿ã«ãããè€éãªãµãŒãã¹ ã¡ãã·ã¥ã管çããéã®èª²é¡ã軜æžããŸããããã«ãã¢ããªã±ãŒã·ã§ã³ã«é¢ä¿ãããã€ã¯ããµãŒãã¹éã®ãªã¯ãšã¹ããšå¯Ÿè©±ã®äžå çãªç£èŠãšåæãå¯èœã«ãªãããµãŒãã¹ã®å¥å šæ§ãšããã©ãŒãã³ã¹ãç£èŠããã·ã¹ãã å šäœã®ãã©ãŒã«ããã¬ã©ã³ãæ§ãšåŸ©å åã確ä¿ã§ããŸãã
ãã€ã¯ããµãŒãã¹ ã²ãŒããŠã§ã€ã®äžæ žãšãªã圹å²ã¯ãã«ãŒãã£ã³ã°ãèªèšŒãè² è·åæ£ã埩å åãšãã 4 ã€ã®äž»èŠãªèŠçŽ ã«ãã©ãããšãã§ããŸãããããã®ååŽé¢ã«ã€ããŠç°¡åã«è§ŠããŠã¿ãŸãããã
ã«ãŒãã£ã³ã°: ãã€ã¯ããµãŒãã¹ã¯è€æ°ã®ç°å¢ããããã¯ãŒã¯ã«ããã£ãŠãããã€ãããå¯èœæ§ããããããã²ãŒããŠã§ã€ã¯ API ã²ãŒããŠã§ã€ãšããŠæ©èœãããããã®ãµãŒãã¹ã®è€æ°ã®ã€ã³ã¹ã¿ã³ã¹ã«ãããéä¿¡ã管çããŸããããã«ãããã¬ã€ãã³ã·ããšã©ãŒçããã®ä»ã®ã«ã¹ã¿ã åºæºãªã©ã®èŠçŽ ã«åºã¥ããŠæé©ãªã«ãŒãã£ã³ã°ãä¿èšŒãããŸãã
èªèšŒ: ãã€ã¯ããµãŒãã¹ã¯å®å šã«éä¿¡ããå¿ èŠãããå Žåãããããããã€ã¯ããµãŒãã¹ ã²ãŒããŠã§ã€ã¯äžå åãããèªèšŒããã³æ¿èªããã»ã¹ãåŠçã§ããŸããæšæºåãããããŒã¯ã³ããŒã¹ã®èªèšŒãæäŸããJWTãOAuth2ããŸã㯠OpenID Connect ããŒã¯ã³ã®åœ¢åŒã§å®å šãªã¢ã¯ã»ã¹ã容æã«ããŸãã
è² è·åæ£: ã²ãŒããŠã§ã€ã¯ãè€æ°ã®ãã€ã¯ããµãŒãã¹ ã€ã³ã¹ã¿ã³ã¹éã§ãããã¯ãŒã¯ ãã©ãã£ãã¯ã忣ããã®ã«åœ¹ç«ã¡ãéèŠã®æ¥å¢æã«ãã·ã¹ãã ã®å¿çæ§ãšèé害æ§ã確ä¿ããŸããããã«ãã©ãŠã³ãããã³ãæå°æ¥ç¶ãããã«ã¯ã«ã¹ã¿ã ã¢ã«ãŽãªãºã ãªã©ã®ææ³ãæ¡çšããŠãè² è·åæ£ãæé©åããŸãã
埩å å: ã¢ããªã±ãŒã·ã§ã³ã®é«å¯çšæ§ãèé害æ§ãåé·æ§ã確ä¿ããããšã¯ããã€ã¯ããµãŒãã¹ ã²ãŒããŠã§ã€ã®éèŠãªã³ã³ããŒãã³ãã§ãããã«ã¹ãã§ãã¯ããµãŒããããã¬ãŒã«ãŒãå詊è¡ãå®è£ ããé害ãããã«ããã¯ãã·ã¹ãã å šäœã«äŒæããªãããã«ããã¢ããªã±ãŒã·ã§ã³å šäœã®å®å®æ§ãšä¿¡é Œæ§ãç¶æããŸãã
ãã€ã¯ããµãŒãã¹ ã²ãŒããŠã§ã€ã®äž»ãªåœ¹å²ãçè§£ãããšããã§ããã®èšèšãã¿ãŒã³ããã€ã¯ããµãŒãã¹ ãšã³ã·ã¹ãã ã«å®è£ ããããšã®éèŠãªå©ç¹ã説æããããšãéèŠã§ãã
1. éçºè ããã€ã¯ããµãŒãã¹éã®ãããã¯ãŒã¯ã®è€éããæåã§åŠçããå¿ èŠããªãããããµãŒãã¹çµ±åãç°¡çŽ åãããŸãã
2. 1 ã€ã®äžå¿ç¹ã§èªèšŒãšèªå¯ã管çãããããã»ãã¥ãªãã£ã匷åãããŸãã
3. éäžãã°ãç£èŠãåæã«ãããã·ã¹ãã å šäœã®ããã©ãŒãã³ã¹ã®ç£èŠãšç¶æã容æã«ãªããŸãã
4. ã·ãŒã ã¬ã¹ãªæ¡åŒµæ§ãæ°ãããã€ã¯ããµãŒãã¹ã®è¿œå ãæ¢åã®ãã€ã¯ããµãŒãã¹ã®æŽæ°ã¯ãã²ãŒããŠã§ã€ãéããŠä»ã®ã¢ããªã±ãŒã·ã§ã³ ã³ã³ããŒãã³ããžã®åœ±é¿ãæå°éã«æããŠå®è¡ã§ããŸãã
5. éçºã¯ãŒã¯ãããŒã®æ¹åãéçºè ã¯ãã€ã¯ããµãŒãã¹ã®ããžãã¹ ããžãã¯ã®å®è£ ã«éäžãããã©ãããã©ãŒã ããŒã«ã«ãã©ãã£ãã¯ç®¡çãã»ãã¥ãªãã£ããã®ä»ã®åé¡ãåŠçãããããšãã§ããŸãã
ããšãã°ã AppMasterno-codeãã©ãããã©ãŒã ã¯ãããã¯ãšã³ãã§ãã€ã¯ããµãŒãã¹ ã²ãŒããŠã§ã€ãå©çšããŠãé¡§å®¢ãæ§ç¯ããããã¯ãšã³ããWebãããã³ã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³éã®å¹ççãªéä¿¡ãšã³ã©ãã¬ãŒã·ã§ã³ã確ä¿ããŸãããã®ãã©ãããã©ãŒã ã¯ã·ãŒã ã¬ã¹ã«çµ±åãããŠããããããŠãŒã¶ãŒã¯ãã€ã¯ããµãŒãã¹ ã¢ãŒããã¯ãã£ã®èª²é¡ãè€éããæ°ã«ããããšãªããã¢ããªã±ãŒã·ã§ã³ãç°¡åã«äœæã管çããããã€ã§ããŸãã
ãã®çµæããã€ã¯ããµãŒãã¹ ã²ãŒããŠã§ã€ã¯ããã€ã¯ããµãŒãã¹ ã¢ãŒããã¯ãã£ã䜿çšããã¢ããªã±ãŒã·ã§ã³ã®éçºãšãããã€ã®å šäœçãªå¹çãåäžãããäžã§éèŠãªåœ¹å²ãæãããŸãããããå®è£ ããããšã§ãéçºè ã¯ãé²åãç¶ãããã¯ãããžãŒç°å¢ã®å¢å€§ããéèŠã«ç°¡åã«å¯Ÿå¿ã§ãããã¹ã±ãŒã©ãã«ã§å ç¢ãªåçãªã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯ã«éäžã§ããŸãã