ãã®è¨äºã¯å¼¥ç Advent Calendar 2024 ã·ãªã¼ãº1ã®9æ¥ç®ã®è¨äºã§ãã
å¼¥çã®ç³æ©ã§ããéçºæ¬é¨ã§ãã¹ã¯ããã製åå
±éã¢ã¸ã¥ã¼ã«ã®ã¨ã³ã¸ãã¢ãæ
å½ãã¦ãã¾ãã
Windowsã¢ããªã±ã¼ã·ã§ã³éçºè
ã§ããã°é¿ãã¦ã¯éããªããã¸ã¿ã«ç½²åã
å
å¹´ãCA/ãã©ã¦ã¶ãã©ã¼ã©ã ã«ãããã³ã¼ããµã¤ãã³ã°åºæ¬è¦ä»¶ã®å¤æ´ãè¡ãããå¼¥çã§å©ç¨ãã¦ããDigiCertã®è¨¼ææ¸ã®è¦ä»¶ãå¤æ´ã¨ãªãã¾ããã
[重要]コードサイニング証明書における要件変更について(2022年11月)
ãã®å½±é¿ãåãããã¸ã¿ã«ç½²åç°å¢ãå¤æ´ããå¿
è¦ããã£ãã®ã§ãããå¼¥çã§ã¯Azureãå©ç¨ãããã¸ã¿ã«ç½²åç°å¢ãæ¡ç¨ãã¾ããã
ãã®è¨äºã§ã¯ãæ¡ç¨ã¾ã§ã«è³ã£ãçµç·¯ããAzureã®ç°å¢æ§ç¯ããã¢ããªã±ã¼ã·ã§ã³ã®ç½²åæ¹æ³ã¾ã§ç´¹ä»ãã¾ãã
ãã¸ã¿ã«ç½²åç°å¢ã®è¦ä»¶å¤æ´
ããã¾ã§ã¯DigiCertããå
¥æãã証ææ¸ããã¸ã¿ã«ç½²åç¨ãã·ã³ã«ã¤ã³ã¹ãã¼ã«ãã¦ãMicrosoftã®SignToolãå©ç¨ãã¦ç½²åãè¡ã£ã¦ãã¾ããã
ããããªãããä¸è¨ã®è¦ä»¶å¤æ´ã«ä¼´ããã³ã¼ããµã¤ãã³ã°è¨¼ææ¸ã®ç§å¯éµã¯FIPS140 Level2ã Common Criteria EAL 4+ãã¾ãã¯åçã®ã»ãã¥ãªãã£è¦ä»¶ãæºãããã¼ãã¦ã§ã¢
ã«æ ¼ç´ãããªããã°ãªããªããã¨ã¨ãªããä¸è¬çãªãã·ã³ã«ç´æ¥ã«ä¿ç®¡ãããã¨ã¯ã§ããªããªãã¾ããã
ããã«ä¼´ã£ã¦ãDigiCertã¸ã®è¨¼ææ¸ã®ç³è«ã®æé ãå¤æ´ã«ãªããä¸è¨ã®ããããã®æ¹æ³ãé¸æãã¦ç³è«ãããã¨ã¨ãªãã¾ããã
- DigiCertãæä¾ãããã¼ãã¦ã§ã¢ãã¼ã¯ã³ãå©ç¨ãã
- èªåã§ãã¼ãã¦ã§ã¢ãã¼ã¯ã³ãæºåãã
- HSMï¼Hardware Security Moduleï¼ãå©ç¨ãã
å¼¥çã®å¯¾å¿
å¼¥çã§ã¯ä»®æ³ç°å¢ã§ãã¸ã¿ã«ç½²åãä»ä¸ãã¦ããããã¸ã¿ã«ç½²åããã»ã¹ã¯CI/CDã§èªååããã¦ãã¾ãã
ããã«å¯¾ãã1ã¨2ã®ãã¼ãã¦ã§ã¢ãã¼ã¯ã³ãå©ç¨ããæ¹æ³ã¯ä¸è¨çç±ããæ¡ç¨ãé£ãããã®ã§ããã
- ãã¼ãã¦ã§ã¢ãã¼ã¯ã³ãä»®æ³ç°å¢ã§å©ç¨ã§ããªããããç©çãã·ã³ãç¨æããå¿ è¦ããã
- SignToolã§ãã¸ã¿ã«ç½²åãä»ä¸ããéã«é½åº¦ãã¹ã¯ã¼ãã®å ¥åãå¿ è¦ã§ãã
ãã®ããã3ã®HSMãå©ç¨ããæ¹æ³ãæ¤è¨ãã¾ããã
ããããç©ççãªHSMããã¤ã¹ãã¯ã©ã¦ãHSMã¯é常ã«é«ä¾¡ã§ããã¸ã¿ã«ç½²åã®ç§å¯éµã ããä¿ç®¡ããç¨éã¨ãã¦ã¯ã³ã¹ãã«è¦åã£ã¦ãã¾ããã§ããã
ãããªä¸ãAzureã®Key Vaultã¨ãããµã¼ãã¹ããªãã·ã§ã³ã¨ãã¦HSMãå©ç¨ã§ãããããä¸è¿°ã®è¦ä»¶ãæºããã¦è¨¼ææ¸ã¨ç§å¯éµãä¿ç®¡ã§ãããã¨ããããã¾ããã
ã¾ããAzureSignToolã¨ãããã¼ã«ãç¨ãããã¨ã§Key Vaultã«ä¿ç®¡ããã証ææ¸ãç¨ãã¦Windowsã¢ããªã±ã¼ã·ã§ã³ã«ç½²åã§ãããã¨ããããã¾ããã
Key Vaultã¯æé¡5USD+0.03USD/10,000ãã©ã³ã¶ã¯ã·ã§ã³ï¼å¼¥çã§å©ç¨ãã¦ããéµé·ã®å ´åï¼ã¨å®ä¾¡ã«å©ç¨ãããã¨ãã§ããAzureèªä½ã¯å¼¥çã§å©ç¨ãã¦ãã¦å°å
¥ã«ãã¼ãã«ããªãã£ããããKey Vaultï¼AzureSignToolã§ãã¸ã¿ã«ç½²åãè¡ãäºã¨ãã¾ããã
Azureã®ç°å¢æ§ç¯
1. ãã¼ã³ã³ããã¼ã®ä½æ
ã¾ãã¯ãã¼ã³ã³ããã¼ãä½æãã¾ãã
ãã®éãä¾¡æ ¼ã¬ãã«ã¯ãã¬ãã¢ã
ãé¸æãã¾ãã
ãã¬ãã¢ã ã¨ãããã¨ã§ãä¸è¿°ã®ãã¼ãã¦ã§ã¢è¦ä»¶ãæºããç§å¯éµãä½æã§ããããã«ãªãã¾ãã
2. ãã¼ã³ã³ããã¼ã®ã¢ã¯ã»ã¹å¶å¾¡ï¼IAMï¼ã®è¨å®
ãã¼ã³ã³ããã¼ã®ã¢ã¯ã»ã¹å¶å¾¡ï¼IAMï¼
ã®ãã¼ã«ã®å²ãå½ã¦ã®è¿½å
ãããã¼ã³ã³ããã¼ç®¡çè
ãèªèº«ã®ã¢ã«ã¦ã³ãã«è¨å®ãã¾ãã
以éã®æä½ã®ããå¿
è¦ã¨ãªãã¾ãã
3. 証ææ¸ã®ä½æ
証ææ¸
ã§çæ/ã¤ã³ãã¼ã
ãã証ææ¸ãä½æãã¾ãã
ããªã·ã¼ã®è©³ç´°æ§æã§ä¸è¨ãå
¥åã¾ãã¯é¸æãã¾ãã
é ç® | å¤ |
---|---|
証ææ©é¢ (CA) ã®ç¨®é¡ | çµ±åããã¦ããªã CA ã«ãã£ã¦çºè¡ããã証ææ¸ |
æ¡å¼µãã¼ä½¿ç¨æ³ (EKU) | 1.3.6.1.5.5.7.3.3 |
X.509 ãã¼ã®ä½¿ç¨ãã©ã° | ãã¸ã¿ã«ç½²å |
ã¨ã¯ã¹ãã¼ãå¯è½ãªç§å¯ãã¼ã§ããï¼ | ããã |
ãã¼ã®ç¨®é¡ | RSA-HSM |
ä»ã®é
ç®ã¯ããã¸ã§ã¯ãã«å¿ãã¦è¨å®ãã¦ãã ããã
証ææ¸ãä½æåºæ¥ãããä½æããã証ææ¸ãéãã証ææ¸ã®æä½
ãCSRã®ãã¦ã³ãã¼ã
ãã¯ãªãã¯ãããã¨ã§CSRããã¦ã³ãã¼ãã§ãã¾ãã
4. 証ææ¸ã®ãã¼ã¸
å
ã®æé ã§ãã¦ã³ãã¼ãããCSRãDigiCertçã®èªè¨¼å±ã«éä»ããã¨ã証ææ¸ãåå¾ãããã¨ãã§ãã¾ãã
Key Vaultã§ä½æãã証ææ¸ãé¸æããç½²åãããè¦æ±ããã¼ã¸
ãã¯ãªãã¯ãã¦ãèªè¨¼å±ããåå¾ãã証ææ¸ããã¼ã¸ãã¾ãã
5. ã¢ããªã®ç»é²
å¾è¿°ã®AzureSignToolããããã¾ã§ã®æé ã§ç»é²ãã証ææ¸ãå©ç¨ããããã«ãMicrosoft Entra IDããã¢ããªãç»é²ããå¿
è¦ãããã¾ãã
ã¾ããã¢ããªã®ç»é²ã®æ°è¦ç»é²
ãããæ°ããã¢ããªãä½æãã¾ãã
ä½æããã¢ããªã®
証ææ¸ã¨ã·ã¼ã¯ã¬ãã
ãããæ°ããã¯ã©ã¤ã¢ã³ãã·ã¼ã¯ã¬ãããä½æãã¾ãã
ä½æããã·ã¼ã¯ã¬ããã®å¤ã¯ç»é¢ãé·ç§»ããã¨ã³ãã¼ã§ããªããªããããä½æå¾ã®ç»é¢ã§ä¿åãã¦ããã¦ãã ããã
6. ã¢ã¯ã»ã¹æ¨©éã®ä»ä¸
æé 5ã§ä½æããã¢ããªã«Key Vaultã®è¨¼ææ¸ãå©ç¨ããããã®æ¨©éãä¸ãã¾ãã
ä½æãããã¼ã³ã³ããã¼ã®ã¢ã¯ã»ã¹å¶å¾¡ (IAM)
ã®ãã¼ã«ã®å²ãå½ã¦ã®è¿½å
ãããä¸è¨ã®2ã¤ã®è·åãã¼ã«ãä½æããã¢ããªã«å²ãå½ã¦ã¾ãã
- Key Vault Certificate User
- ãã¼ ã³ã³ããã¼æå·åã¦ã¼ã¶ã¼
7. èªè¨¼æ å ±ã®åå¾
æé 5ã§åå¾ããã·ã¼ã¯ã¬ããã®ä»ã«ãAzureSignToolã§ä¸è¨ã®æ
å ±ãå¿
è¦ã¨ãªãã®ã§åå¾ãã¾ãã
- æé 1ã§ä½æãããã¼ã³ã³ããã¼
- ã³ã³ããã¼ã®URI
- æé 3ã§ä½æãã証ææ¸
- 証ææ¸ã®åå
- æé 5ã§ä½æããã¢ããª
- ã¢ããªã±ã¼ã·ã§ã³ (ã¯ã©ã¤ã¢ã³ã) ID
- ãã£ã¬ã¯ã㪠(ããã³ã) ID
ããã§Azureã®ç°å¢æ§ç¯ã¯å®äºã§ãï¼
å¿
è¦ã«å¿ãã¦ãã¼ã³ã³ããã¼ã®ãããã¯ã¼ã¯ã®è¨å®ãããã¡ã¤ã¢ã¦ã©ã¼ã«ã®è¨å®ãè¡ã£ã¦ãã ããã
ãã¸ã¿ã«ç½²å
AzureSignToolã®ã¤ã³ã¹ãã¼ã«
.NETãã¤ã³ã¹ãã¼ã«ããã¦ããç°å¢ã§ããã°ãdotnet
ã³ãã³ãã§ã¤ã³ã¹ãã¼ã«ãããã¨ãã§ãã¾ãã
dotnet tool install --global AzureSignTool
.NETãã¤ã³ã¹ãã¼ã«ããã¦ããªãå ´åã.NETãã¤ã³ã¹ãã¼ã«ãã¦ä¸è¨ã³ãã³ããå®è¡ããããGitHubã®Releaseããã¢ã»ãããåå¾ãã¦ãã ããã
Releaseã«å
¬éããã¦ããã¢ã»ããã¯.NETã®ã¤ã³ã¹ãã¼ã«ãªãå©ç¨ãããã¨ãã§ãã¾ãã
AzureSignToolã«ããç½²å
å
è¿°ã®æé ã§åå¾ããæ
å ±ãå©ç¨ãã¦ãä¸è¨ã³ãã³ããå®è¡ãããã¨ã§ãã¸ã¿ã«ç½²åãä»ä¸ãããã¨ãã§ãã¾ãã
AzureSignTool sign ^ -kvt <ããã³ãID> ^ -kvu <ã³ã³ããã¼ã®URI> ^ -kvi <ã¢ããªã±ã¼ã·ã§ã³ID> ^ -kvs <ã·ã¼ã¯ã¬ãã> ^ -kvc <証ææ¸ã®åå> ^ -t <ã¿ã¤ã ã¹ã¿ã³ããµã¼ãã¼ã®URLï¼ä¾ï¼http://timestamp.digicert.comï¼> ^ -v <ç½²å対象ã®ãã¡ã¤ã«ãã¹>
æå¾ã®ãã¡ã¤ã«ãã¹ã¯è¤æ°æå®ãããã¨ãå¯è½ã§ãã
è¤æ°ã®ãã¡ã¤ã«ãã¾ã¨ãã¦AzureSignToolã«æ¸¡ãã¨ã1åã®è¨¼ææ¸ã¸ã®ã¢ã¯ã»ã¹ã§è¤æ°ã®ãã¡ã¤ã«ã¸ã®ãã¸ã¿ã«ç½²åãã§ããé«éãã¤ä½ã³ã¹ããªã®ã§ãã¹ã¹ã¡ã§ãã
ãã¡ã¤ã«ãã¹ãé·ããªãå ´åã¯ããã¹ããã¡ã¤ã«ã§ãã¡ã¤ã«ãã¹ã®ãªã¹ããä½æãã¦ããã-ifl
ãªãã·ã§ã³ã§æå®ãããã¨ãã§ãã¾ãã
AzureSignTool sign ^ -kvt <ããã³ãID> ^ -kvu <ã³ã³ããã¼ã®URI> ^ -kvi <ã¢ããªã±ã¼ã·ã§ã³ID> ^ -kvs <ã·ã¼ã¯ã¬ãã> ^ -kvc <証ææ¸ã®åå> ^ -t <ã¿ã¤ã ã¹ã¿ã³ããµã¼ãã¼ã®URLï¼ä¾ï¼http://timestamp.digicert.comï¼> ^ -ifl <ç½²å対象ã®ãã¡ã¤ã«ãªã¹ããè¨è¼ãããããã¹ããã¡ã¤ã«ã®ãã¹>
ãããã«
ä»åã®è¨äºã§ã¯ãAzure Key Vaultã¨AzureSignToolãç¨ãããã¸ã¿ã«ç½²åç°å¢ã®æ§ç¯æ¹æ³ã«ã¤ãã¦ç´¹ä»ãã¾ããã
ç§å¯éµã®ä¿ç®¡è¦ä»¶ãå³ãããªã£ããã¨ã§ãç§å¯éµãæ¼æ´©ãã¦ãã¸ã¿ã«ç½²åã®ãªããã¾ããçºçããã¨ãããªã¹ã¯ãä½æ¸ãããã®ã§ãä»åã®è¦ä»¶å¤æ´ã§å¯¾å¿ã§ãã¦ããã£ãã¨æã£ã¦ãã¾ãã
æ¬è¨äºãããã¸ã¿ã«ç½²åç°å¢ã®æ§ç¯ã«å½¹ç«ã¤æ
å ±ã¨ãªãã°å¹¸ãã§ãã
å¼¥ç Advent Calendar 2024ã§ã¯ãä»å¾ãæ§ã
ãªæè¡æ
å ±ãçºä¿¡ãã¦ããã¾ãã®ã§ããã²ãæå¾
ãã ããã
éçºçç£æ§ã追æ±ãã¦ãããã¼ã ã«ãèå³ã®ããæ¹ããã²ã¨ã³ããªã¼ãå¾
ã¡ãã¦ããã¾ãã
herp.careers