ロールの概念について説明します
「AWSのロール管理ってどうやって管理するの?」といった方のために、今回はAWSのロールの概念と、AWSのIAMロールについて紹介します。
ただ、この記事を読んでいる方の中には「IAMロールの前に、そもそもロール管理って何?」といった初心者の方もいらっしゃるでしょう。そのような方のために、次の章ではロールの概念について説明しますので参考にしてください。
もう既にご存じの方は、この部分は省略して読み進めていただいて構いません。
ロールとは、一般的にはいくつかの権限をまとめて持っているものを指します。AWSでは、特定のアクセス権限を持っているAWSのIDに対して、IAMロールが付与されており、ロール管理者が基本的にはこのロールを管理します。
IAMユーザーが複数いる場合には、その複数いる人の中からロール管理する人を任意に引き受けられるのです。
AWSのIAMロールとは?
AWSのIAMとは、正しくは「AWS Identity and Access Management」と呼ばれるAWSのWebサービスです。
このIAMは、AWSのサービスにアクセスするときにユーザー管理、セキュリティ認証の管理などをしてくれるサービスです。
IAMを使用することでアクセス許可を一元管理ができるため、セキュリティ上、非常に重要なサービスといえるでしょう。
次の章では、IAMの機能等についてもう少し詳しく紹介しますので、是非参考にしてください。
IAMの機能
IAMの機能はたくさんあるのですが、その中でも主たる機能をいくつかピックアップしてみましょう。
主たる機能を簡単に紹介すると、「権限付与が細かく設定できる」「多要素認証」「IDフェデレーション」「ほかのAWSサービスと統合されている」などが挙げられるでしょう。
以下に、それぞれの機能について詳しく紹介しますので、参考にしてください。
権限付与が細かく設定できる
AWSのリソースには様々なものが用意されていますが、そのリソースに対して特定の人間に特定の権限を付与できます。
たとえば、Amazon EC2、Amazon S3などを使用してネットショップ等を運営している場合、インフラ整備している人に対してだけ、データベース管理したいといった場合もあるでしょう。
そのようなユーザーに対してだけ、権限を付与し、ほかの人にはデータだけを閲覧する、請求情報だけを閲覧できるようにしたりできます。
このように、柔軟に権限を決められるのが、AWSのIAMロールの機能です。
多要素認証
アカウントと個々のユーザーに対して、2要素認証を追加することでセキュリティ強化ができます。
MFAを使用する場合、ユーザーは、アカウントを操作するためのパスワードまたはアクセスキーにとどまらず、他のデバイスからのコードを入力して認証を完了させます。
「そもそもMFAってなに?」という方のために、MFAについて簡単に一言で説明すると、ID(メールアドレス)とパスワードでのログイン認証だけではなく、さらにもう1つの認証要素を組み合わせることを指します。
AWSの場合には、特別に構成されているほかの端末から認証コードを入力することで、ログインを完了できるのです。
これを設定することで、ほかのユーザーから不正にログインされて、攻撃されたり、悪用される可能性が減ります。
IDフェデレーション
これは、すでにほかの場所(企業ネットワークやインターネットIDプロバイダ)からAWSのアカウントに、一時的にアクセスができる機能です。
フェデレーションという言葉は、インターネット上のサービスにアクセスする際に、認証を連携することでサービスごとにいちいちアクセスしなおさなくても、一度の認証で複数サービスを使用できるようにした仕組みを指しています。
この仕組みでは、認証を一度した後は、他のサービスが認可するか、しないのか決定します。
ほかのAWSサービスと統合されている
AWSでは、ほかのAWSサービスと連携されています。AWSには何百ものサービスがあるため、そのサービスとIAMを統合することで、アクセス制限の管理を統一できるため、非常に重要な機能といえるでしょう。
IAMと統合できる主なAWSのサービスとしては、「AWSバッチ」「Amazon EC2」「AmazonEC2自動スケーリング」「AWS Elastic Beanstalk」「Amazon Elastic Inference」「弾性負荷分散」「アマゾンライトセイル」などのさまざまなサービスと統合されています。
各サービスによって、IAMの機能のうち、何ができるのかが変わってきますので、実際にビジネス等で利用する際には、公式サイトでそれぞれの細かい部分についてはしっかり調査してから使用してください。
ロールの作成方法について紹介します

では、IAMロールの作成方法について紹介してきますので、是非参考にしてください。
今回は、IAMユーザーにアクセス権限を委任するロールを作成してみましょう。手順自体は難しいことはしていないので、初めて作成する方も是非一緒に作成してみましょう。
また、ロールを作成するためにはAWSマネジメントコンソール、AWS CLI、Tools for Windows PowerShell、IAM API のうちいずれかを使用して作成する方法がありますが、今回はAWSのマネジメントコンソールを使用します。
準備としてコンソール画面に入ってから、作業を開始してください。
では、次章からさっそく作成を始めます。
コンソールを使用したIAMの作成方法
では、さっそくIAMを作成してみましょう。
ざっくり流れを説明すると、「ロールタイプの設定」「多要素認証の設定」「オプションの設定」といった流れになります。オプションの設定については次章に記述していますので、そちらを参考にしてください。
まずは、コンソール画面のナビゲーションから「ロールの作成」を選択します。次にロールタイプとAccount IDを設定します。このIDは、リソースへのアクセス許可するアカウントのIDとなります。
次に、多要素認証について設定します。ロールを制限するには「MFAが必要」オプションを選択して下さい。
オプションの設定
では、オプションの設定に移ります。
オプションの設定では、アクセス許可の境界や、タグの値などを設定できます。実際に順を追って説明していきますので、さっそく見てみましょう。
まずはポリシーの作成と、アクセス許可の境界を決めます。ポリシーの作成については、「ポリシーの作成」を選択後、新しいブラウザタブから新規にポリシーを作成してください。
「アクセス許可の境界」についてですが、これを設定することでアクセス許可の上限などを決められます。こちらはオプションですので、必要な場合のみ設定してください。
次に、タグを設定します。こちらも任意ですので、必要に応じて設定しましょう。
最後に、ロールの名前と説明文を入力します。「ロールの作成」をクリックしたら、作成完了です。
AWSのロールを作成しよう
いかがでしたでしょうか。今回はAWSのIAMロールについて、その概念から主要な機能、コンソール画面を使用したIAMロールの作成方法までを紹介しました。
IAMロールは他のAWSサービスにも影響する非常に重要な機能なため、しっかり設定することが重要です。特にネットショップや企業として運用を検討している場合には、この設定は怠らないようにしてください。
また、作成手順自体は難しいことは特にしていないため、試しに作成することで使用感を見るのも良いでしょう。
この記事を参考にして、是非あなたのビジネスに活用してください。]]>
この記事の監修者・著者
-
株式会社オープンアップITエンジニア
-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞