{"id":2406,"date":"2025-03-24T08:47:29","date_gmt":"2025-03-23T23:47:29","guid":{"rendered":"https:\/\/dexall.co.jp\/articles\/?p=2406"},"modified":"2025-03-24T08:47:53","modified_gmt":"2025-03-23T23:47:53","slug":"%e3%80%90%e4%bf%9d%e5%ad%98%e7%89%88%e3%80%91aws-cli%e3%81%a7mfa%e8%aa%8d%e8%a8%bc%e3%82%92%e5%b0%8e%e5%85%a5%e3%81%99%e3%82%8b%e6%96%b9%e6%b3%95%ef%bc%815%e3%81%a4%e3%81%ae%e5%ae%9f%e8%b7%b5%e7%9a%84","status":"publish","type":"post","link":"https:\/\/dexall.co.jp\/articles\/?p=2406","title":{"rendered":"\u3010\u4fdd\u5b58\u7248\u3011AWS CLI\u3067MFA\u8a8d\u8a3c\u3092\u5c0e\u5165\u3059\u308b\u65b9\u6cd5\uff015\u3064\u306e\u5b9f\u8df5\u7684\u306a\u30b9\u30c6\u30c3\u30d7\u3068\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0"},"content":{"rendered":"\n<div class=\"toc\"><br \/>\n<b>Warning<\/b>:  Undefined array key \"is_admin\" in <b>\/home\/xs392991\/dexall.co.jp\/public_html\/articles\/wp-content\/themes\/sango-theme\/library\/gutenberg\/dist\/classes\/Toc.php<\/b> on line <b>116<\/b><br \/>\n<br \/>\n<b>Warning<\/b>:  Undefined array key \"is_category_top\" in <b>\/home\/xs392991\/dexall.co.jp\/public_html\/articles\/wp-content\/themes\/sango-theme\/library\/gutenberg\/dist\/classes\/Toc.php<\/b> on line <b>121<\/b><br \/>\n<br \/>\n<b>Warning<\/b>:  Undefined array key \"is_top\" in <b>\/home\/xs392991\/dexall.co.jp\/public_html\/articles\/wp-content\/themes\/sango-theme\/library\/gutenberg\/dist\/classes\/Toc.php<\/b> on line <b>128<\/b><br \/>\n    <div id=\"toc_container\" class=\"sgb-toc--bullets js-smooth-scroll\" data-dialog-title=\"\u76ee\u6b21\">\n      <p class=\"toc_title\">\u76ee\u6b21 <\/p>\n      <ul class=\"toc_list\">  <li class=\"first\">    <a href=\"#i-0\">AWS CLI \u3067\u306e MFA \u8a8d\u8a3c\u306e\u91cd\u8981\u6027<\/a>    <ul class=\"menu_level_1\">      <li class=\"first\">        <a href=\"#i-1\">MFA \u5c0e\u5165\u306b\u3088\u3063\u3066\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30ea\u30b9\u30af\u3092\u9632\u3050<\/a>      <\/li>      <li class=\"last\">        <a href=\"#i-2\">AWS CLI \u3067 MFA \u304c\u5fc5\u8981\u306a\u30b1\u30fc\u30b9<\/a>      <\/li>    <\/ul>  <\/li>  <li>    <a href=\"#i-3\">AWS CLI MFA \u3092\u8a2d\u5b9a\u3059\u308b\u524d\u306e\u6e96\u5099<\/a>    <ul class=\"menu_level_1\">      <li class=\"first\">        <a href=\"#i-4\">\u5fc5\u8981\u306a\u8a31\u53ef\u3068\u4e8b\u524d\u8a2d\u5b9a\u306e\u78ba\u8a8d\u30dd\u30a4\u30f3\u30c8<\/a>      <\/li>      <li class=\"last\">        <a href=\"#i-5\">MFA\u30c7\u30d0\u30a4\u30b9\u306e\u9078\u629e\u3068\u521d\u671f\u8a2d\u5b9a<\/a>      <\/li>    <\/ul>  <\/li>  <li>    <a href=\"#i-6\">AWS CLI\u3067MFA\u3092\u8a2d\u5b9a\u3059\u308b5\u3064\u306e\u30b9\u30c6\u30c3\u30d7<\/a>    <ul class=\"menu_level_1\">      <li class=\"first\">        <a href=\"#i-7\">IAM\u30e6\u30fc\u30b6\u30fc\u3078\u306eMFA\u30c7\u30d0\u30a4\u30b9\u306e\u767b\u9332<\/a>      <\/li>      <li>        <a href=\"#i-8\">\u8a8d\u8a3c\u60c5\u5831\u306e\u53d6\u5f97\u3068\u30bb\u30c3\u30b7\u30e7\u30f3\u78ba\u7acb\u306e\u8a2d\u5b9a<\/a>      <\/li>      <li>        <a href=\"#i-9\">AWS CLI\u306e\u8a2d\u5b9a\u3068\u69cb\u6210<\/a>      <\/li>      <li>        <a href=\"#i-10\">\u74b0\u5883\u5909\u6570\u306e\u8a2d\u5b9a\u65b9\u6cd5<\/a>      <\/li>      <li class=\"last\">        <a href=\"#i-11\">\u8a2d\u5b9a\u306e\u691c\u8a3c\u3068\u30c6\u30b9\u30c8<\/a>      <\/li>    <\/ul>  <\/li>  <li>    <a href=\"#i-12\">AWS CLI \u3067 MFA \u3092\u4f7f\u7528\u3059\u308b\u969b\u306e\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0<\/a>    <ul class=\"menu_level_1\">      <li class=\"first\">        <a href=\"#i-13\">\u3088\u304f\u3042\u308b\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u3068\u5bfe\u51e6\u65b9\u6cd5<\/a>      <\/li>      <li class=\"last\">        <a href=\"#i-14\">\u8a8d\u8a3c\u5931\u6557\u6642\u306e\u30c7\u30d0\u30c3\u30b0\u624b\u9806<\/a>      <\/li>    <\/ul>  <\/li>  <li class=\"last\">    <a href=\"#i-15\">AWS CLI \u3067\u306e MFA \u904b\u7528\u306e\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9<\/a>    <ul class=\"menu_level_1\">      <li class=\"first\">        <a href=\"#i-16\">\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30dd\u30ea\u30b7\u30fc\u306e\u8a2d\u5b9a\u4f8b<\/a>      <\/li>      <li class=\"last\">        <a href=\"#i-17\">\u81ea\u52d5\u5316\u30b9\u30af\u30ea\u30d7\u30c8\u3067\u306e\u5bfe\u5fdc\u65b9\u6cd5<\/a>      <\/li>    <\/ul>  <\/li><\/ul>\n      <a href=\"#\" class=\"sgb-toc-button js-toc-button\" rel=\"nofollow\" data-open-dialog=\"true\"><i class=\"fa fa-list\"><\/i><span class=\"sgb-toc-button__text\">\u76ee\u6b21\u3078<\/span><\/a>\n    <\/div><\/div><h2 class=\"wp-block-heading\" id=\"i-0\">AWS CLI \u3067\u306e MFA \u8a8d\u8a3c\u306e\u91cd\u8981\u6027<\/h2>\n\n\n\n<p>AWS\u306e\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30fc\u30b9\uff08CLI\uff09\u3092\u4f7f\u7528\u3059\u308b\u969b\u3001Multi-Factor Authentication\uff08MFA\uff09\u306e\u5c0e\u5165\u306f\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u5bfe\u7b56\u3068\u3057\u3066\u975e\u5e38\u306b\u91cd\u8981\u3067\u3059\u3002\u672c\u30bb\u30af\u30b7\u30e7\u30f3\u3067\u306f\u3001MFA\u5c0e\u5165\u306e\u610f\u7fa9\u3068\u5fc5\u8981\u6027\u306b\u3064\u3044\u3066\u8a73\u3057\u304f\u89e3\u8aac\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-1\">MFA \u5c0e\u5165\u306b\u3088\u3063\u3066\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30ea\u30b9\u30af\u3092\u9632\u3050<\/h3>\n\n\n\n<p>AWS CLI\u3067MFA\u3092\u5c0e\u5165\u3059\u308b\u3053\u3068\u3067\u3001\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30ea\u30b9\u30af\u304b\u3089\u74b0\u5883\u3092\u4fdd\u8b77\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u8a8d\u8a3c\u60c5\u5831\u306e\u6f0f\u6d29\u30ea\u30b9\u30af\u306e\u8efd\u6e1b<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30a2\u30af\u30bb\u30b9\u30ad\u30fc\u3068\u30b7\u30fc\u30af\u30ec\u30c3\u30c8\u30ad\u30fc\u3060\u3051\u3067\u306a\u304f\u3001\u7269\u7406\u7684\u306a\u30c7\u30d0\u30a4\u30b9\u3084\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u3088\u308b\u8ffd\u52a0\u306e\u8a8d\u8a3c\u304c\u5fc5\u8981<\/li>\n\n\n\n<li>\u8a8d\u8a3c\u60c5\u5831\u304c\u6d41\u51fa\u3057\u3066\u3082\u3001\u7b2c\u4e09\u8005\u306b\u3088\u308b\u4e0d\u6b63\u30a2\u30af\u30bb\u30b9\u3092\u9632\u6b62\u53ef\u80fd<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u7279\u6a29\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u4fdd\u8b77\u5f37\u5316<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u7ba1\u7406\u8005\u6a29\u9650\u3092\u6301\u3064IAM\u30e6\u30fc\u30b6\u30fc\u306b\u5bfe\u3059\u308b\u8ffd\u52a0\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30ec\u30a4\u30e4\u30fc<\/li>\n\n\n\n<li>\u91cd\u8981\u306a\u64cd\u4f5c\u5b9f\u884c\u6642\u306e\u672c\u4eba\u78ba\u8a8d\u3092\u78ba\u5b9f\u306b\u5b9f\u65bd<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u30b3\u30f3\u30d7\u30e9\u30a4\u30a2\u30f3\u30b9\u8981\u4ef6\u3078\u306e\u5bfe\u5fdc<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u591a\u304f\u306e\u696d\u754c\u6a19\u6e96\u3084\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u8981\u6c42\u3055\u308c\u308b\u591a\u8981\u7d20\u8a8d\u8a3c\u306e\u5b9f\u88c5<\/li>\n\n\n\n<li>\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u306b\u304a\u3051\u308b\u91cd\u8981\u306a\u8981\u4ef6\u306e\u5145\u8db3<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-2\">AWS CLI \u3067 MFA \u304c\u5fc5\u8981\u306a\u30b1\u30fc\u30b9<\/h3>\n\n\n\n<p>\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u72b6\u6cc1\u3067\u306f\u3001\u7279\u306bAWS CLI\u3067\u306eMFA\u5c0e\u5165\u304c\u63a8\u5968\u3055\u308c\u307e\u3059\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u9ad8\u6a29\u9650\u64cd\u4f5c\u306e\u5b9f\u884c\u6642<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30ea\u30bd\u30fc\u30b9\u306e\u4f5c\u6210\u30fb\u524a\u9664<\/li>\n\n\n\n<li>\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u8a2d\u5b9a\u306e\u5909\u66f4<\/li>\n\n\n\n<li>\u672c\u756a\u74b0\u5883\u3078\u306e\u5909\u66f4\u9069\u7528<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u8981\u4ef6\u306e\u53b3\u3057\u3044\u74b0\u5883<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u91d1\u878d\u7cfb\u30b7\u30b9\u30c6\u30e0<\/li>\n\n\n\n<li>\u533b\u7642\u60c5\u5831\u30b7\u30b9\u30c6\u30e0<\/li>\n\n\n\n<li>\u500b\u4eba\u60c5\u5831\u3092\u6271\u3046\u30b7\u30b9\u30c6\u30e0<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u81ea\u52d5\u5316\u30c4\u30fc\u30eb\u3068\u306e\u9023\u643a<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>CI\/CD\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u3067\u306e\u4f7f\u7528<\/li>\n\n\n\n<li>\u81ea\u52d5\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30b9\u30af\u30ea\u30d7\u30c8\u306e\u5b9f\u884c<\/li>\n\n\n\n<li>\u30a4\u30f3\u30d5\u30e9\u69cb\u7bc9\u306e\u81ea\u52d5\u5316<\/li>\n<\/ul>\n\n\n<div id=\"id-a23e11f4-e3a2-42ba-8315-437104794196\">\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u30b7\u30ca\u30ea\u30aa<\/th><th>MFA\u306a\u3057<\/th><th>MFA\u3042\u308a<\/th><\/tr><\/thead><tbody><tr><td>\u8a8d\u8a3c\u60c5\u5831\u6d41\u51fa<\/td><td>\u5373\u5ea7\u306b\u4e0d\u6b63\u30a2\u30af\u30bb\u30b9\u53ef\u80fd<\/td><td>\u8ffd\u52a0\u8a8d\u8a3c\u304c\u5fc5\u8981\u3067\u88ab\u5bb3\u3092\u9632\u6b62\u53ef\u80fd<\/td><\/tr><tr><td>\u6a29\u9650\u6607\u683c\u653b\u6483<\/td><td>\u6210\u529f\u306e\u53ef\u80fd\u6027\u304c\u9ad8\u3044<\/td><td>\u8ffd\u52a0\u306e\u8a8d\u8a3c\u3067\u9632\u5fa1\u53ef\u80fd<\/td><\/tr><tr><td>\u76e3\u67fb\u5bfe\u5fdc<\/td><td>\u57fa\u672c\u7684\u306a\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u5bfe\u7b56\u306e\u307f<\/td><td>\u5f37\u56fa\u306a\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u4f53\u5236\u3092\u8a3c\u660e\u53ef\u80fd<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n\n\n<p>MFA\u306e\u5c0e\u5165\u306f\u3001\u4e00\u6642\u7684\u306b\u904b\u7528\u306e\u624b\u9593\u304c\u5897\u3048\u308b\u3088\u3046\u306b\u611f\u3058\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u304c\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30a4\u30f3\u30b7\u30c7\u30f3\u30c8\u306b\u3088\u308b\u88ab\u5bb3\u3084\u4fe1\u983c\u640d\u5931\u306e\u30ea\u30b9\u30af\u3092\u8003\u3048\u308b\u3068\u3001\u5fc5\u9808\u306e\u5bfe\u7b56\u3068\u8a00\u3048\u307e\u3059\u3002\u7279\u306b\u3001AWS CLI\u3092\u4f7f\u7528\u3057\u305f\u81ea\u52d5\u5316\u3084\u30b9\u30af\u30ea\u30d7\u30c8\u5b9f\u884c\u304c\u5897\u3048\u308b\u4e2d\u3001\u9069\u5207\u306aMFA\u904b\u7528\u306f\u7d44\u7e54\u306e\u5b89\u5168\u6027\u3092\u5927\u304d\u304f\u9ad8\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"i-3\">AWS CLI MFA \u3092\u8a2d\u5b9a\u3059\u308b\u524d\u306e\u6e96\u5099<\/h2>\n\n\n\n<p>AWS CLI\u3067MFA\u3092\u52b9\u679c\u7684\u306b\u5c0e\u5165\u3059\u308b\u305f\u3081\u306b\u306f\u3001\u9069\u5207\u306a\u4e8b\u524d\u6e96\u5099\u304c\u4e0d\u53ef\u6b20\u3067\u3059\u3002\u3053\u306e\u30bb\u30af\u30b7\u30e7\u30f3\u3067\u306f\u3001\u30b9\u30e0\u30fc\u30ba\u306a\u5c0e\u5165\u306e\u305f\u3081\u306b\u5fc5\u8981\u306a\u6e96\u5099\u4e8b\u9805\u3092\u8a73\u3057\u304f\u89e3\u8aac\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-4\">\u5fc5\u8981\u306a\u8a31\u53ef\u3068\u4e8b\u524d\u8a2d\u5b9a\u306e\u78ba\u8a8d\u30dd\u30a4\u30f3\u30c8<\/h3>\n\n\n\n<p>MFA\u8a2d\u5b9a\u3092\u884c\u3046\u305f\u3081\u306b\u5fc5\u8981\u306a\u6a29\u9650\u3068\u3001\u78ba\u8a8d\u3059\u3079\u304d\u8a2d\u5b9a\u9805\u76ee\u306f\u4ee5\u4e0b\u306e\u901a\u308a\u3067\u3059\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u5fc5\u8981\u306aIAM\u6a29\u9650\u306e\u78ba\u8a8d<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">   {\n       \"Version\": \"2012-10-17\",\n       \"Statement\": [\n           {\n               \"Effect\": \"Allow\",\n               \"Action\": [\n                   \"iam:ListMFADevices\",\n                   \"iam:EnableMFADevice\",\n                   \"iam:CreateVirtualMFADevice\",\n                   \"iam:DeleteVirtualMFADevice\"\n               ],\n               \"Resource\": [\n                   \"arn:aws:iam::*:user\/${aws:username}\",\n                   \"arn:aws:iam::*:mfa\/${aws:username}\"\n               ]\n           }\n       ]\n   }<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>AWS CLI\u74b0\u5883\u306e\u78ba\u8a8d\u4e8b\u9805<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>AWS CLI\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\uff08Version 2.0\u4ee5\u4e0a\u63a8\u5968\uff09<\/li>\n\n\n\n<li>\u30c7\u30d5\u30a9\u30eb\u30c8\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u8a2d\u5b9a\u72b6\u614b<\/li>\n\n\n\n<li>\u8a8d\u8a3c\u60c5\u5831\u30d5\u30a1\u30a4\u30eb\u306e\u5834\u6240\u3068\u6a29\u9650<\/li>\n\n\n\n<li>AWS\u8a8d\u8a3c\u60c5\u5831\u306e\u6709\u52b9\u671f\u9650<\/li>\n<\/ul>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u8981\u4ef6<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>AWS API\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u3078\u306e\u30a2\u30af\u30bb\u30b9\u53ef\u5426<\/li>\n\n\n\n<li>\u30d7\u30ed\u30ad\u30b7\u8a2d\u5b9a\uff08\u5fc5\u8981\u306a\u5834\u5408\uff09<\/li>\n\n\n\n<li>\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u30eb\u30fc\u30eb\u306e\u78ba\u8a8d<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-5\">MFA\u30c7\u30d0\u30a4\u30b9\u306e\u9078\u629e\u3068\u521d\u671f\u8a2d\u5b9a<\/h3>\n\n\n\n<p>AWS CLI\u3067\u4f7f\u7528\u53ef\u80fd\u306aMFA\u30c7\u30d0\u30a4\u30b9\u306e\u7a2e\u985e\u3068\u3001\u305d\u306e\u7279\u5fb4\u3092\u7406\u89e3\u3057\u307e\u3057\u3087\u3046\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u4eee\u60f3MFA\u30c7\u30d0\u30a4\u30b9\uff08\u63a8\u5968\uff09<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Google Authenticator<\/li>\n\n\n\n<li>Authy<\/li>\n\n\n\n<li>Microsoft Authenticator \u30a2\u30d7\u30ea\u540d \u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0 \u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u5bfe\u5fdc \u4f7f\u3044\u3084\u3059\u3055 Google\u8a8d\u8a3c\u30b7\u30b9\u30c6\u30e0 iOS\/Android \u00d7 \u2605\u2605\u2605\u2605\u2605 Authy iOS\/Android\/Desktop \u25cb \u2605\u2605\u2605\u2605 MS Authenticator iOS\/Android \u25cb \u2605\u2605\u2605\u2605<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u7269\u7406\u7684\u306aMFA\u30c7\u30d0\u30a4\u30b9<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u30c8\u30fc\u30af\u30f3<\/li>\n\n\n\n<li>U2F\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30ad\u30fc<\/li>\n\n\n\n<li>YubiKey<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u521d\u671f\u8a2d\u5b9a\u6642\u306e\u6ce8\u610f\u70b9<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30b3\u30fc\u30c9\u306e\u4fdd\u7ba1\u5834\u6240<\/li>\n\n\n\n<li>\u30c7\u30d0\u30a4\u30b9\u7d1b\u5931\u6642\u306e\u5bfe\u5fdc\u624b\u9806<\/li>\n\n\n\n<li>\u8907\u6570\u30c7\u30d0\u30a4\u30b9\u306e\u767b\u9332\u691c\u8a0e<\/li>\n<\/ul>\n\n\n\n<p>\u4e8b\u524d\u6e96\u5099\u306e\u30c1\u30a7\u30c3\u30af\u30ea\u30b9\u30c8\uff1a<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\u25a1 IAM\u6a29\u9650\u306e\u78ba\u8a8d\u3068\u4ed8\u4e0e\n\u25a1 AWS CLI\u6700\u65b0\u7248\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\n\u25a1 MFA\u30c7\u30d0\u30a4\u30b9\u306e\u9078\u629e\u3068\u5165\u624b\n\u25a1 \u8a8d\u8a3c\u60c5\u5831\u306e\u7ba1\u7406\u65b9\u91dd\u306e\u6c7a\u5b9a\n\u25a1 \u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u30fb\u30ea\u30ab\u30d0\u30ea\u624b\u9806\u306e\u78ba\u8a8d\n\u25a1 \u30c6\u30b9\u30c8\u7528IAM\u30e6\u30fc\u30b6\u30fc\u306e\u6e96\u5099<\/pre>\n\n\n\n<p>\u7279\u306b\u91cd\u8981\u306a\u6e96\u5099\u4e8b\u9805\uff1a<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u65e2\u5b58\u306e\u8a8d\u8a3c\u60c5\u5831\u306e\u30d0\u30c3\u30af\u30a2\u30c3\u30d7<\/li>\n\n\n\n<li>MFA\u30c7\u30d0\u30a4\u30b9\u306e\u6642\u523b\u540c\u671f\u78ba\u8a8d<\/li>\n\n\n\n<li>\u30c6\u30b9\u30c8\u74b0\u5883\u3067\u306e\u4e8b\u524d\u691c\u8a3c<\/li>\n\n\n\n<li>\u30ed\u30fc\u30eb\u30d0\u30c3\u30af\u624b\u9806\u306e\u78ba\u8a8d<\/li>\n\n\n\n<li>\u30c1\u30fc\u30e0\u5185\u3067\u306e\u904b\u7528\u30eb\u30fc\u30eb\u7b56\u5b9a<\/li>\n<\/ol>\n\n\n\n<p>\u3053\u308c\u3089\u306e\u6e96\u5099\u3092\u9069\u5207\u306b\u884c\u3046\u3053\u3068\u3067\u3001\u672c\u756a\u74b0\u5883\u3067\u306eMFA\u5c0e\u5165\u3092\u30b9\u30e0\u30fc\u30ba\u306b\u9032\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u307e\u305f\u3001\u60f3\u5b9a\u5916\u306e\u554f\u984c\u304c\u767a\u751f\u3057\u305f\u5834\u5408\u3067\u3082\u3001\u8fc5\u901f\u306b\u5bfe\u5fdc\u3059\u308b\u3053\u3068\u304c\u53ef\u80fd\u3068\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"i-6\">AWS CLI\u3067MFA\u3092\u8a2d\u5b9a\u3059\u308b5\u3064\u306e\u30b9\u30c6\u30c3\u30d7<\/h2>\n\n\n\n<p>AWS CLI\u3067\u306eMFA\u8a2d\u5b9a\u3092\u78ba\u5b9f\u306b\u884c\u3046\u305f\u3081\u3001\u4ee5\u4e0b\u306e5\u3064\u306e\u30b9\u30c6\u30c3\u30d7\u306b\u5f93\u3063\u3066\u5b9f\u88c5\u3092\u9032\u3081\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-7\">IAM\u30e6\u30fc\u30b6\u30fc\u3078\u306eMFA\u30c7\u30d0\u30a4\u30b9\u306e\u767b\u9332<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u4eee\u60f3MFA\u30c7\u30d0\u30a4\u30b9\u306e\u4f5c\u6210<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># MFA\u30c7\u30d0\u30a4\u30b9\u306e\u4f5c\u6210\naws iam create-virtual-mfa-device \\\n    --virtual-mfa-device-name MyMFADevice \\\n    --outfile QRCode.png \\\n    --bootstrap-method QRCodePNG<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>MFA\u30c7\u30d0\u30a4\u30b9\u306e\u6709\u52b9\u5316<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># \u8a8d\u8a3c\u30a2\u30d7\u30ea\u304b\u3089\u53d6\u5f97\u3057\u305f2\u3064\u306e\u9023\u7d9a\u3059\u308b\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\naws iam enable-mfa-device \\\n    --user-name myuser \\\n    --serial-number arn:aws:iam::123456789012:mfa\/MyMFADevice \\\n    --authentication-code1 123456 \\\n    --authentication-code2 789012<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-8\">\u8a8d\u8a3c\u60c5\u5831\u306e\u53d6\u5f97\u3068\u30bb\u30c3\u30b7\u30e7\u30f3\u78ba\u7acb\u306e\u8a2d\u5b9a<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u4e00\u6642\u7684\u306a\u8a8d\u8a3c\u60c5\u5831\u306e\u53d6\u5f97<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># MFA\u30c8\u30fc\u30af\u30f3\u3092\u4f7f\u7528\u3057\u3066\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\u3092\u53d6\u5f97\naws sts get-session-token \\\n    --serial-number arn:aws:iam::123456789012:mfa\/MyMFADevice \\\n    --token-code 123456<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>\u30ec\u30b9\u30dd\u30f3\u30b9\u4f8b<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">{\n    \"Credentials\": {\n        \"AccessKeyId\": \"ASIA...\",\n        \"SecretAccessKey\": \"wJalr...\",\n        \"SessionToken\": \"AQoD...\",\n        \"Expiration\": \"2024-01-28T20:00:00Z\"\n    }\n}<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-9\">AWS CLI\u306e\u8a2d\u5b9a\u3068\u69cb\u6210<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>AWS CLI\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u4f5c\u6210<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># MFA\u7528\u306e\u65b0\u3057\u3044\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\naws configure set profile.mfa-profile.aws_access_key_id ASIA...\naws configure set profile.mfa-profile.aws_secret_access_key wJalr...\naws configure set profile.mfa-profile.aws_session_token AQoD...\naws configure set profile.mfa-profile.region ap-northeast-1<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306e\u69cb\u9020\u4f8b<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">[profile mfa-profile]\naws_access_key_id = ASIA...\naws_secret_access_key = wJalr...\naws_session_token = AQoD...\nregion = ap-northeast-1<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-10\">\u74b0\u5883\u5909\u6570\u306e\u8a2d\u5b9a\u65b9\u6cd5<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Linux\u306e\u5834\u5408<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">export AWS_ACCESS_KEY_ID=ASIA...\nexport AWS_SECRET_ACCESS_KEY=wJalr...\nexport AWS_SESSION_TOKEN=AQoD...<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>Windows\u306e\u5834\u5408<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">$env:AWS_ACCESS_KEY_ID=\"ASIA...\"\n$env:AWS_SECRET_ACCESS_KEY=\"wJalr...\"\n$env:AWS_SESSION_TOKEN=\"AQoD...\"<\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>\u81ea\u52d5\u5316\u30b9\u30af\u30ea\u30d7\u30c8\u306e\u4f8b<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\n# MFA\u8a8d\u8a3c\u60c5\u5831\u3092\u53d6\u5f97\u3057\u3066\u74b0\u5883\u5909\u6570\u306b\u8a2d\u5b9a\u3059\u308b\u30b9\u30af\u30ea\u30d7\u30c8\nfunction aws-mfa() {\n    local TOKEN_CODE=$1\n    local MFA_SERIAL=\"arn:aws:iam::123456789012:mfa\/MyMFADevice\"\n\n    # \u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\u306e\u53d6\u5f97\n    local CREDENTIALS=$(aws sts get-session-token \\\n        --serial-number $MFA_SERIAL \\\n        --token-code $TOKEN_CODE \\\n        --query 'Credentials.[AccessKeyId,SecretAccessKey,SessionToken]' \\\n        --output text)\n\n    # \u74b0\u5883\u5909\u6570\u306e\u8a2d\u5b9a\n    export AWS_ACCESS_KEY_ID=$(echo $CREDENTIALS | cut -d' ' -f1)\n    export AWS_SECRET_ACCESS_KEY=$(echo $CREDENTIALS | cut -d' ' -f2)\n    export AWS_SESSION_TOKEN=$(echo $CREDENTIALS | cut -d' ' -f3)\n\n    echo \"MFA\u8a8d\u8a3c\u60c5\u5831\u3092\u74b0\u5883\u5909\u6570\u306b\u8a2d\u5b9a\u3057\u307e\u3057\u305f\"\n}<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-11\">\u8a2d\u5b9a\u306e\u691c\u8a3c\u3068\u30c6\u30b9\u30c8<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u8a8d\u8a3c\u60c5\u5831\u306e\u691c\u8a3c<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># IAM\u8a8d\u8a3c\u60c5\u5831\u306e\u78ba\u8a8d\naws sts get-caller-identity\n\n# MFA\u304c\u5fc5\u8981\u306a\u30ea\u30bd\u30fc\u30b9\u3078\u306e\u30a2\u30af\u30bb\u30b9\u30c6\u30b9\u30c8\naws s3 ls --profile mfa-profile<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u7528\u306e\u30c7\u30d0\u30c3\u30b0\u51fa\u529b<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># \u30c7\u30d0\u30c3\u30b0\u30e2\u30fc\u30c9\u3067\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\naws s3 ls --profile mfa-profile --debug<\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>\u8a2d\u5b9a\u306e\u78ba\u8a8d\u30b3\u30de\u30f3\u30c9<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u8a2d\u5b9a\u306e\u78ba\u8a8d\naws configure list --profile mfa-profile\n\n# \u8a8d\u8a3c\u60c5\u5831\u306e\u6709\u52b9\u671f\u9650\u78ba\u8a8d\naws sts get-session-token --profile mfa-profile<\/pre>\n\n\n\n<p>\u5b9f\u88c5\u6642\u306e\u91cd\u8981\u306a\u30dd\u30a4\u30f3\u30c8\uff1a<\/p>\n\n\n<div id=\"id-8b4f0c2a-bfa3-4225-a5eb-fe3273e3e5de\">\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u30d5\u30a7\u30fc\u30ba<\/th><th>\u78ba\u8a8d\u9805\u76ee<\/th><th>\u6ce8\u610f\u70b9<\/th><\/tr><\/thead><tbody><tr><td>MFA\u30c7\u30d0\u30a4\u30b9\u767b\u9332<\/td><td>\u30c7\u30d0\u30a4\u30b9\u540d\u306e\u4e00\u610f\u6027<\/td><td>\u7d44\u7e54\u7684\u306a\u547d\u540d\u898f\u5247\u306e\u9075\u5b88<\/td><\/tr><tr><td>\u8a8d\u8a3c\u60c5\u5831\u53d6\u5f97<\/td><td>\u30c8\u30fc\u30af\u30f3\u306e\u6709\u52b9\u671f\u9650<\/td><td>\u9069\u5207\u306a\u66f4\u65b0\u30bf\u30a4\u30df\u30f3\u30b0<\/td><\/tr><tr><td>CLI\u8a2d\u5b9a<\/td><td>\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u540d\u306e\u8a2d\u5b9a<\/td><td>\u74b0\u5883\u306b\u3088\u308b\u4f7f\u3044\u5206\u3051<\/td><\/tr><tr><td>\u74b0\u5883\u5909\u6570\u8a2d\u5b9a<\/td><td>\u5909\u6570\u306e\u30b9\u30b3\u30fc\u30d7<\/td><td>\u30b7\u30a7\u30eb\u30bb\u30c3\u30b7\u30e7\u30f3\u7d42\u4e86\u6642\u306e\u6d88\u5931<\/td><\/tr><tr><td>\u691c\u8a3c<\/td><td>\u30a2\u30af\u30bb\u30b9\u6a29\u9650<\/td><td>\u6700\u5c0f\u6a29\u9650\u306e\u539f\u5247\u306e\u78ba\u8a8d<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n\n\n<p>\u3053\u308c\u3089\u306e\u30b9\u30c6\u30c3\u30d7\u3092\u614e\u91cd\u306b\u5b9f\u884c\u3059\u308b\u3053\u3068\u3067\u3001\u5b89\u5168\u304b\u3064\u52b9\u7387\u7684\u306aMFA\u74b0\u5883\u3092\u69cb\u7bc9\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u5b9f\u88c5\u5f8c\u306f\u3001\u5b9a\u671f\u7684\u306a\u52d5\u4f5c\u78ba\u8a8d\u3068\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u3092\u5fd8\u308c\u305a\u306b\u884c\u3044\u307e\u3057\u3087\u3046\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"i-12\">AWS CLI \u3067 MFA \u3092\u4f7f\u7528\u3059\u308b\u969b\u306e\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0<\/h2>\n\n\n\n<p>MFA\u8a8d\u8a3c\u306e\u5c0e\u5165\u6642\u3084\u904b\u7528\u6642\u306b\u767a\u751f\u3059\u308b\u53ef\u80fd\u6027\u306e\u3042\u308b\u554f\u984c\u3068\u305d\u306e\u89e3\u6c7a\u65b9\u6cd5\u306b\u3064\u3044\u3066\u3001\u5b9f\u8df5\u7684\u306a\u30ac\u30a4\u30c9\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-13\">\u3088\u304f\u3042\u308b\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u3068\u5bfe\u51e6\u65b9\u6cd5<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u8a8d\u8a3c\u60c5\u5831\u95a2\u9023\u306e\u30a8\u30e9\u30fc<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">An error occurred (InvalidClientTokenId) Exception: The security token included in the request is invalid<\/pre>\n\n\n\n<p>\u5bfe\u51e6\u65b9\u6cd5:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u74b0\u5883\u5909\u6570\u3084\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u8a8d\u8a3c\u60c5\u5831\u304c\u6b63\u3057\u304f\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u308b\u304b\u78ba\u8a8d<\/li>\n\n\n\n<li>\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\u306e\u6709\u52b9\u671f\u9650\u5207\u308c\u3092\u30c1\u30a7\u30c3\u30af<\/li>\n\n\n\n<li>\u4ee5\u4e0b\u306e\u30b3\u30de\u30f3\u30c9\u3067\u8a8d\u8a3c\u60c5\u5831\u3092\u30af\u30ea\u30a2<\/li>\n<\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">unset AWS_ACCESS_KEY_ID\nunset AWS_SECRET_ACCESS_KEY\nunset AWS_SESSION_TOKEN<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>MFA\u30c7\u30d0\u30a4\u30b9\u306e\u30a8\u30e9\u30fc<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">An error occurred (InvalidAuthenticationCode) when calling the EnableMFADevice operation<\/pre>\n\n\n\n<p>\u5bfe\u51e6\u65b9\u6cd5:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>MFA\u30c7\u30d0\u30a4\u30b9\u306e\u6642\u523b\u540c\u671f\u3092\u78ba\u8a8d<\/li>\n\n\n\n<li>\u6b63\u3057\u3044\u30c8\u30fc\u30af\u30f3\u30b3\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3044\u308b\u304b\u78ba\u8a8d<\/li>\n\n\n\n<li>\u30c7\u30d0\u30a4\u30b9\u306e\u518d\u767b\u9332\u3092\u691c\u8a0e<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u6a29\u9650\u95a2\u9023\u306e\u30a8\u30e9\u30fc<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">An error occurred (AccessDenied) when calling the AssumeRole operation<\/pre>\n\n\n\n<p>\u5fc5\u8981\u306a\u5bfe\u51e6:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">{\n    \"Version\": \"2012-10-17\",\n    \"Statement\": [\n        {\n            \"Effect\": \"Allow\",\n            \"Action\": \"sts:GetSessionToken\",\n            \"Resource\": \"*\",\n            \"Condition\": {\n                \"Bool\": {\n                    \"aws:MultiFactorAuthPresent\": \"true\"\n                }\n            }\n        }\n    ]\n}<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-14\">\u8a8d\u8a3c\u5931\u6557\u6642\u306e\u30c7\u30d0\u30c3\u30b0\u624b\u9806<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>\u30b7\u30b9\u30c6\u30de\u30c6\u30a3\u30c3\u30af\u306a\u554f\u984c\u5206\u6790\u30a2\u30d7\u30ed\u30fc\u30c1<\/strong><\/li>\n<\/ol>\n\n\n<div id=\"id-a5148838-bf27-4f8f-af46-6e2b66f56b04\">\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u30d5\u30a7\u30fc\u30ba<\/th><th>\u78ba\u8a8d\u9805\u76ee<\/th><th>\u30c7\u30d0\u30c3\u30b0\u30b3\u30de\u30f3\u30c9<\/th><\/tr><\/thead><tbody><tr><td>\u8a8d\u8a3c\u60c5\u5831<\/td><td>\u6709\u52b9\u671f\u9650<\/td><td><code>aws sts get-caller-identity<\/code><\/td><\/tr><tr><td>MFA\u30c7\u30d0\u30a4\u30b9<\/td><td>\u30c7\u30d0\u30a4\u30b9\u72b6\u614b<\/td><td><code>aws iam list-mfa-devices<\/code><\/td><\/tr><tr><td>IAM\u6a29\u9650<\/td><td>\u30dd\u30ea\u30b7\u30fc\u8a2d\u5b9a<\/td><td><code>aws iam get-user-policy<\/code><\/td><\/tr><tr><td>\u30cd\u30c3\u30c8\u30ef\u30fc\u30af<\/td><td>\u63a5\u7d9a\u72b6\u614b<\/td><td><code>aws s3 ls --debug<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>\u30c7\u30d0\u30c3\u30b0\u30e2\u30fc\u30c9\u3067\u306e\u8a73\u7d30\u78ba\u8a8d<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># \u30c7\u30d0\u30c3\u30b0\u51fa\u529b\u306e\u6709\u52b9\u5316\nexport AWS_DEBUG=true\n\n# \u30ea\u30af\u30a8\u30b9\u30c8\u306e\u8a73\u7d30\u30ed\u30b0\u3092\u53d6\u5f97\naws s3 ls --debug 2&gt; debug.log\n\n# \u74b0\u5883\u5909\u6570\u306e\u78ba\u8a8d\nenv | grep AWS_<\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>\u4e00\u822c\u7684\u306a\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u306e\u30d5\u30ed\u30fc<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">graph TD\n    A[\u30a8\u30e9\u30fc\u767a\u751f] --&gt; B{\u8a8d\u8a3c\u60c5\u5831\u30c1\u30a7\u30c3\u30af}\n    B --&gt;|OK| C{MFA\u30c7\u30d0\u30a4\u30b9\u78ba\u8a8d}\n    B --&gt;|NG| D[\u8a8d\u8a3c\u60c5\u5831\u66f4\u65b0]\n    C --&gt;|OK| E{IAM\u6a29\u9650\u78ba\u8a8d}\n    C --&gt;|NG| F[\u30c7\u30d0\u30a4\u30b9\u518d\u540c\u671f]\n    E --&gt;|OK| G{\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u78ba\u8a8d}\n    E --&gt;|NG| H[\u30dd\u30ea\u30b7\u30fc\u4fee\u6b63]\n    G --&gt;|OK| I[\u4ed6\u306e\u8981\u56e0\u3092\u78ba\u8a8d]\n    G --&gt;|NG| J[\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u8a2d\u5b9a\u4fee\u6b63]<\/pre>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li><strong>\u5171\u901a\u306e\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u30b7\u30ca\u30ea\u30aa<\/strong><\/li>\n<\/ol>\n\n\n<div id=\"id-1db6528c-c2a4-4fd8-a996-c61346d3c42f\">\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u554f\u984c\u75c7\u72b6<\/th><th>\u8003\u3048\u3089\u308c\u308b\u539f\u56e0<\/th><th>\u78ba\u8a8d\u30dd\u30a4\u30f3\u30c8<\/th><th>\u89e3\u6c7a\u65b9\u6cd5<\/th><\/tr><\/thead><tbody><tr><td>\u30c8\u30fc\u30af\u30f3\u62d2\u5426<\/td><td>\u6642\u523b\u540c\u671f\u305a\u308c<\/td><td>\u30c7\u30d0\u30a4\u30b9\u6642\u523b<\/td><td>NTP\u540c\u671f\u5b9f\u884c<\/td><\/tr><tr><td>\u30a2\u30af\u30bb\u30b9\u62d2\u5426<\/td><td>IAM\u6a29\u9650\u4e0d\u8db3<\/td><td>\u30dd\u30ea\u30b7\u30fc\u8a2d\u5b9a<\/td><td>\u5fc5\u8981\u306a\u6a29\u9650\u8ffd\u52a0<\/td><\/tr><tr><td>\u30bb\u30c3\u30b7\u30e7\u30f3\u5207\u308c<\/td><td>\u6709\u52b9\u671f\u9650\u8d85\u904e<\/td><td>\u30c8\u30fc\u30af\u30f3\u671f\u9650<\/td><td>\u30bb\u30c3\u30b7\u30e7\u30f3\u66f4\u65b0<\/td><\/tr><tr><td>\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u30a8\u30e9\u30fc<\/td><td>\u8a2d\u5b9a\u30df\u30b9<\/td><td>AWS\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb<\/td><td>\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u518d\u8a2d\u5b9a<\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n\n\n<ol start=\"5\" class=\"wp-block-list\">\n<li><strong>\u4e88\u9632\u7684\u5bfe\u7b56<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u5b9a\u671f\u7684\u306a\u8a8d\u8a3c\u60c5\u5831\u306e\u30ed\u30fc\u30c6\u30fc\u30b7\u30e7\u30f3<\/li>\n\n\n\n<li>\u30d0\u30c3\u30af\u30a2\u30c3\u30d7MFA\u30c7\u30d0\u30a4\u30b9\u306e\u6e96\u5099<\/li>\n\n\n\n<li>\u81ea\u52d5\u66f4\u65b0\u30b9\u30af\u30ea\u30d7\u30c8\u306e\u4f5c\u6210<\/li>\n<\/ul>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\n# MFA\u8a8d\u8a3c\u60c5\u5831\u306e\u81ea\u52d5\u66f4\u65b0\u30b9\u30af\u30ea\u30d7\u30c8\ncheck_mfa_session() {\n    # \u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u6709\u52b9\u671f\u9650\u3092\u30c1\u30a7\u30c3\u30af\n    expiration=$(aws configure get mfa-profile.expiration)\n    current_time=$(date -u +\"%Y-%m-%dT%H:%M:%SZ\")\n\n    if [[ \"$expiration\" &lt; \"$current_time\" ]]; then\n        echo \"MFA\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u66f4\u65b0\u304c\u5fc5\u8981\u3067\u3059\"\n        return 1\n    fi\n    return 0\n}\n\n# \u4f7f\u7528\u4f8b\nif ! check_mfa_session; then\n    # MFA\u66f4\u65b0\u51e6\u7406\u3092\u5b9f\u884c\n    aws-mfa $TOKEN_CODE\nfi<\/pre>\n\n\n\n<p>\u3053\u306e\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u30ac\u30a4\u30c9\u3092\u53c2\u8003\u306b\u3001MFA\u95a2\u9023\u306e\u554f\u984c\u306b\u5bfe\u3057\u3066\u4f53\u7cfb\u7684\u306b\u30a2\u30d7\u30ed\u30fc\u30c1\u3059\u308b\u3053\u3068\u3067\u3001\u52b9\u7387\u7684\u306a\u554f\u984c\u89e3\u6c7a\u304c\u53ef\u80fd\u3068\u306a\u308a\u307e\u3059\u3002\u307e\u305f\u3001\u4e88\u9632\u7684\u306a\u5bfe\u7b56\u3092\u5b9f\u65bd\u3059\u308b\u3053\u3068\u3067\u3001\u554f\u984c\u306e\u767a\u751f\u81ea\u4f53\u3092\u6700\u5c0f\u9650\u306b\u6291\u3048\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"i-15\">AWS CLI \u3067\u306e MFA \u904b\u7528\u306e\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9<\/h2>\n\n\n\n<p>AWS CLI\u3067MFA\u3092\u52b9\u679c\u7684\u306b\u904b\u7528\u3059\u308b\u305f\u3081\u306e\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9\u3068\u5b9f\u88c5\u4f8b\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"i-16\">\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30dd\u30ea\u30b7\u30fc\u306e\u8a2d\u5b9a\u4f8b<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>MFA\u5f37\u5236\u30dd\u30ea\u30b7\u30fc\u306e\u5b9f\u88c5<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">{\n    \"Version\": \"2012-10-17\",\n    \"Statement\": [\n        {\n            \"Sid\": \"AllowViewAccountInfo\",\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"iam:GetAccountPasswordPolicy\",\n                \"iam:GetAccountSummary\",\n                \"iam:ListVirtualMFADevices\"\n            ],\n            \"Resource\": \"*\"\n        },\n        {\n            \"Sid\": \"AllowManageOwnPasswords\",\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"iam:ChangePassword\",\n                \"iam:GetUser\"\n            ],\n            \"Resource\": \"arn:aws:iam::*:user\/${aws:username}\"\n        },\n        {\n            \"Sid\": \"AllowManageOwnAccessKeys\",\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"iam:CreateAccessKey\",\n                \"iam:DeleteAccessKey\",\n                \"iam:ListAccessKeys\",\n                \"iam:UpdateAccessKey\"\n            ],\n            \"Resource\": \"arn:aws:iam::*:user\/${aws:username}\"\n        },\n        {\n            \"Sid\": \"AllowManageOwnMFA\",\n            \"Effect\": \"Allow\",\n            \"Action\": [\n                \"iam:CreateVirtualMFADevice\",\n                \"iam:EnableMFADevice\",\n                \"iam:ListMFADevices\",\n                \"iam:ResyncMFADevice\"\n            ],\n            \"Resource\": [\n                \"arn:aws:iam::*:mfa\/${aws:username}\",\n                \"arn:aws:iam::*:user\/${aws:username}\"\n            ]\n        },\n        {\n            \"Sid\": \"DenyAllExceptListedIfNoMFA\",\n            \"Effect\": \"Deny\",\n            \"NotAction\": [\n                \"iam:CreateVirtualMFADevice\",\n                \"iam:EnableMFADevice\",\n                \"iam:ListMFADevices\",\n                \"iam:ListUsers\",\n                \"iam:ListVirtualMFADevices\",\n                \"iam:ResyncMFADevice\"\n            ],\n            \"Resource\": \"*\",\n            \"Condition\": {\n                \"BoolIfExists\": {\n                    \"aws:MultiFactorAuthPresent\": \"false\"\n                }\n            }\n        }\n    ]\n}<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>\u30bb\u30c3\u30b7\u30e7\u30f3\u671f\u9593\u306e\u6700\u9069\u5316<\/strong><\/li>\n<\/ol>\n\n\n<div id=\"id-7a415ded-fcb3-42ba-bfef-46274a170f2f\">\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u30e6\u30fc\u30b9\u30b1\u30fc\u30b9<\/th><th>\u63a8\u5968\u30bb\u30c3\u30b7\u30e7\u30f3\u671f\u9593<\/th><th>\u8a2d\u5b9a\u65b9\u6cd5<\/th><\/tr><\/thead><tbody><tr><td>\u958b\u767a\u74b0\u5883<\/td><td>12\u6642\u9593<\/td><td><code>--duration-seconds 43200<\/code><\/td><\/tr><tr><td>\u672c\u756a\u74b0\u5883<\/td><td>1\u6642\u9593<\/td><td><code>--duration-seconds 3600<\/code><\/td><\/tr><tr><td>CI\/CD<\/td><td>6\u6642\u9593<\/td><td><code>--duration-seconds 21600<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\" id=\"i-17\">\u81ea\u52d5\u5316\u30b9\u30af\u30ea\u30d7\u30c8\u3067\u306e\u5bfe\u5fdc\u65b9\u6cd5<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>MFA\u30bb\u30c3\u30b7\u30e7\u30f3\u7ba1\u7406\u30b9\u30af\u30ea\u30d7\u30c8<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/usr\/bin\/env python3\nimport boto3\nimport json\nimport os\nimport time\nfrom datetime import datetime, timezone\n\nclass MFASessionManager:\n    def __init__(self, profile_name='default', mfa_serial=None):\n        self.profile_name = profile_name\n        self.mfa_serial = mfa_serial\n        self.session = boto3.Session(profile_name=profile_name)\n        self.sts_client = self.session.client('sts')\n\n    def get_session_token(self, token_code, duration_seconds=43200):\n        try:\n            response = self.sts_client.get_session_token(\n                DurationSeconds=duration_seconds,\n                SerialNumber=self.mfa_serial,\n                TokenCode=token_code\n            )\n            return response['Credentials']\n        except Exception as e:\n            print(f\"Error getting session token: {str(e)}\")\n            return None\n\n    def update_aws_credentials(self, credentials):\n        config = {\n            'aws_access_key_id': credentials['AccessKeyId'],\n            'aws_secret_access_key': credentials['SecretAccessKey'],\n            'aws_session_token': credentials['SessionToken'],\n            'expiration': credentials['Expiration'].isoformat()\n        }\n\n        # AWS\u8a8d\u8a3c\u60c5\u5831\u30d5\u30a1\u30a4\u30eb\u306e\u66f4\u65b0\n        with open(os.path.expanduser('~\/.aws\/credentials'), 'r+') as f:\n            existing_config = f.read()\n            f.seek(0)\n            f.write(f\"[{self.profile_name}-mfa]\\n\")\n            for key, value in config.items():\n                f.write(f\"{key} = {value}\\n\")\n            f.write(\"\\n\" + existing_config)\n\n# \u4f7f\u7528\u4f8b\nif __name__ == \"__main__\":\n    mfa_manager = MFASessionManager(\n        profile_name='default',\n        mfa_serial='arn:aws:iam::123456789012:mfa\/user'\n    )\n    token_code = input(\"Enter MFA token: \")\n    credentials = mfa_manager.get_session_token(token_code)\n    if credentials:\n        mfa_manager.update_aws_credentials(credentials)\n        print(\"MFA session updated successfully\")<\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>CI\/CD\u74b0\u5883\u3067\u306e\u5b9f\u88c5\u4f8b<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"># GitHub Actions workflow\u4f8b\nname: AWS CLI with MFA\n\non:\n  push:\n    branches: [ main ]\n\njobs:\n  deploy:\n    runs-on: ubuntu-latest\n    steps:\n    - uses: actions\/checkout@v2\n\n    - name: Configure AWS credentials\n      uses: aws-actions\/configure-aws-credentials@v1\n      with:\n        aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}\n        aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}\n        aws-region: ap-northeast-1\n\n    - name: Get session token\n      run: |\n        # \u30c8\u30fc\u30af\u30f3\u306e\u53d6\u5f97\u3068\u74b0\u5883\u5909\u6570\u306e\u8a2d\u5b9a\n        export $(aws sts get-session-token \\\n          --serial-number ${{ secrets.MFA_SERIAL }} \\\n          --token-code ${{ secrets.MFA_TOKEN }} \\\n          --query 'Credentials.[AccessKeyId,SecretAccessKey,SessionToken]' \\\n          --output text | sed 's\/\\t\/=\/g')<\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>\u904b\u7528\u52b9\u7387\u5316\u306e\u305f\u3081\u306e\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\u306e\u30ad\u30e3\u30c3\u30b7\u30e5\u7ba1\u7406<\/li>\n\n\n\n<li>\u81ea\u52d5\u66f4\u65b0\u306e\u4ed5\u7d44\u307f\u69cb\u7bc9<\/li>\n\n\n\n<li>\u30a8\u30e9\u30fc\u30cf\u30f3\u30c9\u30ea\u30f3\u30b0\u306e\u5b9f\u88c5<\/li>\n\n\n\n<li>\u30ed\u30b0\u7ba1\u7406\u306e\u6574\u5099<\/li>\n<\/ul>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u5f37\u5316\u306e\u305f\u3081\u306e\u30c1\u30a7\u30c3\u30af\u30ea\u30b9\u30c8<\/strong><\/li>\n<\/ol>\n\n\n\n<p>\u25a1 MFA\u30c7\u30d0\u30a4\u30b9\u306e\u5b9a\u671f\u7684\u306a\u76e3\u67fb<br>\u25a1 \u30a2\u30af\u30bb\u30b9\u30ad\u30fc\u306e\u30ed\u30fc\u30c6\u30fc\u30b7\u30e7\u30f3<br>\u25a1 \u30bb\u30c3\u30b7\u30e7\u30f3\u671f\u9593\u306e\u9069\u5207\u306a\u8a2d\u5b9a<br>\u25a1 \u30a8\u30e9\u30fc\u30ed\u30b0\u306e\u5b9a\u671f\u78ba\u8a8d<br>\u25a1 \u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u8a8d\u8a3c\u624b\u6bb5\u306e\u78ba\u4fdd<\/p>\n\n\n\n<p>\u3053\u306e\u3088\u3046\u306a\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9\u3092\u5c0e\u5165\u3059\u308b\u3053\u3068\u3067\u3001\u30bb\u30ad\u30e5\u30a2\u304b\u3064\u52b9\u7387\u7684\u306aAWS CLI\u904b\u7528\u304c\u53ef\u80fd\u3068\u306a\u308a\u307e\u3059\u3002\u7279\u306b\u81ea\u52d5\u5316\u30b9\u30af\u30ea\u30d7\u30c8\u306e\u6d3b\u7528\u306f\u3001\u904b\u7528\u8ca0\u8377\u306e\u8efd\u6e1b\u306b\u5927\u304d\u304f\u8ca2\u732e\u3057\u307e\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Warning: Undefined array key &#8220;is_admin&#8221; in \/home\/xs392991\/dexall.co.jp\/public_html\/articles\/wp-content\/themes\/ &#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[],"class_list":{"0":"post-2406","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-aws","7":"nothumb"},"_links":{"self":[{"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=\/wp\/v2\/posts\/2406","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2406"}],"version-history":[{"count":1,"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=\/wp\/v2\/posts\/2406\/revisions"}],"predecessor-version":[{"id":2407,"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=\/wp\/v2\/posts\/2406\/revisions\/2407"}],"wp:attachment":[{"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2406"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2406"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dexall.co.jp\/articles\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2406"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}