サービス プリンシパル。 サービス プリンシパルでの認証

プリンシパルとはどんな言葉?ビジネスでの使い方、役職やITでの意味も解説

サービス プリンシパル

これを行う場合は、アクセスを特定の IP アドレスのみに制限する Condition エレメントなど、他の方法でロールへのアクセスを制限することを強くお勧めします。 誰でもロールにアクセスできる状態のままにしないでください。 リソースベースのポリシーでは、 Principal エレメントを使用して、リソースへのアクセスが許可されるアカウントまたはユーザーを指定します。 IAM ユーザーおよびグループにアタッチするポリシーで Principal 要素は使用しないでください。 同様に、IAM ロールのアクセス許可ポリシー内ではプリンシパルを指定しないでください。 このような場合、プリンシパルは、暗黙的に、ポリシーがアタッチされたユーザーとなるか IAM ユーザーの場合 、ロールを引き受けるユーザーとなります ロールアクセスポリシーの場合。 ポリシーが IAM グループにアタッチされている場合、そのグループ内のリクエスト元 IAM ユーザーがプリンシパルです。 プリンシパルの指定 プリンシパルを指定するには、 またはその他のプリンシパル ID を使用します。 IAM グループやインスタンスプロファイルをプリンシパルとして指定することはできません。 次の例は、プリンシパルを指定するさまざまな方法を示しています。 特定の AWS アカウント AWS アカウント ID をポリシーでプリンシパルとして使用する場合、そのアカウントに権限を委任します。 そのアカウント内では、ポリシーステートメントのアクセス許可をすべての ID に付与できます。 そのアカウントには、IAM ユーザーおよびロールが含まれます。 AWS アカウントを指定するときは、アカウント ARN arn:aws:iam:: AWS-account-ID:root 、または AWS: プレフィックスの後に ID を付けた短縮形を使用できます。 たとえば、割り当てられた アカウント ID 123456789012 から、次のいずれかのメソッドを使用して、 Principal 要素でそのアカウントを指定できます。 ロールの信頼ポリシーの Principal 要素に、特定の IAM ユーザーを指し示す ARN が含まれている場合、その ARN はポリシーを保存するときにユーザーの一意のプリンシパル ID に変換されます。 これにより、ユーザーを削除して再作成することにより、誰かがそのユーザーの特権をエスカレートするリスクを緩和できます。 通常、この ID はコンソールには表示されません。 これは、信頼ポリシーが表示されるときに、ユーザーの ARN への逆変換が行われるためです。 ただし、ユーザーを削除すると、関係が壊れます。 ユーザーを再作成しても、ポリシーが適用されることはありません。 これは、新しいユーザーには、信頼ポリシーに保存されている ID と一致しない新しいプリンシパル ID が付与されるためです。 この場合、プリンシパル ID はコンソールに表示されます。 これは、AWS が有効な ARN に ID をマッピングできなくなるためです。 その結果、信頼ポリシーの Principal エレメントで参照されているユーザーを削除して再作成する場合は、ロールを編集して、正しくなくなったプリンシパル ID を正しい ARN に置き換える必要があります。 ポリシーを保存するときに、ARN は再びユーザーの新しいプリンシパル ID に変換されます。 フェデレーティッドウェブ ID ユーザー ロールの Principal 要素に、特定の IAM ロールを指し示す ARN が含まれている場合、その ARN はポリシーを保存するときにロールの一意のプリンシパル ID に変換されます。 これにより、ロールを削除して再作成することにより、誰かがそのユーザーの特権をエスカレートするリスクを緩和できます。 通常、この ID はコンソールには表示されません。 これは、信頼ポリシーが表示されるときに、ロールの ARN への逆変換が行われるためです。 ただし、ロールを削除すると、関係が壊れます。 ロールを再作成した場合でも、ポリシーは適用されません。 これは、新しいロールは信頼ポリシーに保存されている ID と一致しない新しいプリンシパル ID を持っているためです。 この場合、プリンシパル ID はコンソールに表示されます。 これは、AWS が有効な ARN に ID をマッピングできなくなるためです。 その結果、信頼ポリシーの Principal エレメントで参照されているロールを削除して再作成する場合は、ロールを編集して正しくなくなったプリンシパル ID を正しい ARN に置き換える必要があります。 ポリシーを保存するときに、ARN は再びロールの新しいプリンシパル ID に変換されます。 プリンシパルは常に特定のセッションに名前を付ける必要があります。 AWS サービス AWS のサービスが引き受けることのできる IAM ロールは、 と呼ばれます。 サービスロールには信頼ポリシーを含める必要があります。 信頼ポリシー は、どのプリンシパルがそのロールを果たすことができるかを定義するロールにアタッチされるリソースベースのポリシーです。 一部のサービスロールには事前定義済みの信頼ポリシーがあります。 ただし、状況によっては、信頼ポリシーでプリンシパルサービスを指定する必要があります。 サービスプリンシパルは、サービスにアクセス許可を付与するために使用される識別子です。 この識別子には、長いバージョンのサービス名が含まれ、通常は次の形式になります。 amazonaws. com サービスプリンシパルはサービスによって定義されます。 サービスのサービスプリンシパルについては、そのサービスのドキュメントを参照してください。 一部のサービスについては、「」を参照してください。 これらのサービスでは、「 サービスにリンクされたロール」列が「 はい」になっています。 サービスにリンクされたロールに関するドキュメントをサービスで表示するには、[ はい] リンクを選択します。 サービスのプリンシパルを表示するには、そのサービスの [ Service-Linked Role Permissions サービスにリンクされたロールのアクセス許可 ] を表示します。 次の例では、サービスロールにアタッチできるポリシーを示します。 ポリシーは、Amazon EMR および AWS Data Pipeline の 2 つのサービスを有効にして、ロールを引き受けます。 これらのサービスは、ロールに割り当てられた権限ポリシー 表示されていない によって付与されたタスクを実行できます。 複数のサービスプリンシパルを指定する場合に、2 つの Service エレメントは指定できません。 1 つのみ指定できます。 代わりに、1 つの Service エレメントの値として複数のサービスのプリンシパルのアレイを使用します。 amazonaws. com", "datapipeline. amazonaws. 次の要素は同等です。

次の

プリンシパルとはどんな言葉?ビジネスでの使い方、役職やITでの意味も解説

サービス プリンシパル

Service Principal SP は、主にプログラムからの Azure リソース使用 Azure 、Azure など や、Auzre DevOps との連携などで使用する(通常のアカウントも使えるけど)。 用途としては、アクセス制限を行った、プログラム専用のアカウントみたいな感じ。 通常の Azure アカウントで認証した方が手軽だったりするが、セキュリティ的にあまりよろしくなかったり、会社の場合は当該アカウントが削除された場合に、使用しているプログラムも同時に動かなくなる可能性があると言うこともあり、プログラムからのアクセスは SP による認証が推奨されているらしい。 なお、Azure AD で認証用のアカウントを作るということもあり、SP アカウントを作成するには管理者レベルの権限が必要になるはずなので、その点は注意。 作成手順• Azure ポータルで [Azure ] - [アプリの登録] - [+新規登録] の順にクリック。 いきなり分かりづらいが、ここでの「アプリの登録」が「サービス の登録」を意味していると思って OK• 名前にサービス名(アカウント名みたいなもの)を入力し、他は既定の設定で [登録] をクリック• 作成成功したら、概要画面で「アプリケーション クライアント ID」と「リ テナント ID」をメモしておく• [証明書とシークレット] - [+新しいクライアント シークレット] の順にクリック• クライアント シークレットの追加ダイアログが表示されたら、「有効期限」で「なし」を選択し、[追加] をクリック。 なお、ここでは無期限で登録しているが、定期的にパスワード変更をしたい場合は、適宜その期限を選択する• クライアント シークレット(パスワードみたいなもの)の値は、この時点でメモしておく(この後、参照不可になるため)• [] で、名と ID をメモする• この SP を使用してアクセスしたいリソースを選択し(ここではを選択)、[アクセス制御 IAM ] - [+追加] - [ロールの割り当ての追加] の順にクリック• 「選択」テキストボックスに先程作成した SP 名を入れて(ここで手入力しないと結果一覧に出てこないみたい)、そのすぐ下に検索結果が出てくるので先程作成した SP を選択し、[保存] をクリック 以上で SP の作成と設定が完了。 プログラムからはこの SP とメモした情報 を使用して認証を行うことで、役割を設定した特定リソースへのアクセスのみが可能となる。 なお、ドキュメントによって各項目の呼び方が微妙に違っていたりして少し分かりづらいが、基本的には、「アプリケーション クライアント ID」がユーザー名みたいな扱いで、「クライアント シークレット」がパスワードみたいな扱いと考えれば問題ない。 注意点としては、追加した役割のみ使用可能だということ。 SP 作成しただけではこの SP を使っても何も操作できないので、そこは注意。 もし忘れた場合は、クライアント シークレットを作り直す。 作成したサービスを使用して、Az モジュールでログインする場合は、以下も参照。

次の

SPN

サービス プリンシパル

これを行う場合は、アクセスを特定の IP アドレスのみに制限する Condition エレメントなど、他の方法でロールへのアクセスを制限することを強くお勧めします。 誰でもロールにアクセスできる状態のままにしないでください。 リソースベースのポリシーでは、 Principal エレメントを使用して、リソースへのアクセスが許可されるアカウントまたはユーザーを指定します。 IAM ユーザーおよびグループにアタッチするポリシーで Principal 要素は使用しないでください。 同様に、IAM ロールのアクセス許可ポリシー内ではプリンシパルを指定しないでください。 このような場合、プリンシパルは、暗黙的に、ポリシーがアタッチされたユーザーとなるか IAM ユーザーの場合 、ロールを引き受けるユーザーとなります ロールアクセスポリシーの場合。 ポリシーが IAM グループにアタッチされている場合、そのグループ内のリクエスト元 IAM ユーザーがプリンシパルです。 プリンシパルの指定 プリンシパルを指定するには、 またはその他のプリンシパル ID を使用します。 IAM グループやインスタンスプロファイルをプリンシパルとして指定することはできません。 次の例は、プリンシパルを指定するさまざまな方法を示しています。 特定の AWS アカウント AWS アカウント ID をポリシーでプリンシパルとして使用する場合、そのアカウントに権限を委任します。 そのアカウント内では、ポリシーステートメントのアクセス許可をすべての ID に付与できます。 そのアカウントには、IAM ユーザーおよびロールが含まれます。 AWS アカウントを指定するときは、アカウント ARN arn:aws:iam:: AWS-account-ID:root 、または AWS: プレフィックスの後に ID を付けた短縮形を使用できます。 たとえば、割り当てられた アカウント ID 123456789012 から、次のいずれかのメソッドを使用して、 Principal 要素でそのアカウントを指定できます。 ロールの信頼ポリシーの Principal 要素に、特定の IAM ユーザーを指し示す ARN が含まれている場合、その ARN はポリシーを保存するときにユーザーの一意のプリンシパル ID に変換されます。 これにより、ユーザーを削除して再作成することにより、誰かがそのユーザーの特権をエスカレートするリスクを緩和できます。 通常、この ID はコンソールには表示されません。 これは、信頼ポリシーが表示されるときに、ユーザーの ARN への逆変換が行われるためです。 ただし、ユーザーを削除すると、関係が壊れます。 ユーザーを再作成しても、ポリシーが適用されることはありません。 これは、新しいユーザーには、信頼ポリシーに保存されている ID と一致しない新しいプリンシパル ID が付与されるためです。 この場合、プリンシパル ID はコンソールに表示されます。 これは、AWS が有効な ARN に ID をマッピングできなくなるためです。 その結果、信頼ポリシーの Principal エレメントで参照されているユーザーを削除して再作成する場合は、ロールを編集して、正しくなくなったプリンシパル ID を正しい ARN に置き換える必要があります。 ポリシーを保存するときに、ARN は再びユーザーの新しいプリンシパル ID に変換されます。 フェデレーティッドウェブ ID ユーザー ロールの Principal 要素に、特定の IAM ロールを指し示す ARN が含まれている場合、その ARN はポリシーを保存するときにロールの一意のプリンシパル ID に変換されます。 これにより、ロールを削除して再作成することにより、誰かがそのユーザーの特権をエスカレートするリスクを緩和できます。 通常、この ID はコンソールには表示されません。 これは、信頼ポリシーが表示されるときに、ロールの ARN への逆変換が行われるためです。 ただし、ロールを削除すると、関係が壊れます。 ロールを再作成した場合でも、ポリシーは適用されません。 これは、新しいロールは信頼ポリシーに保存されている ID と一致しない新しいプリンシパル ID を持っているためです。 この場合、プリンシパル ID はコンソールに表示されます。 これは、AWS が有効な ARN に ID をマッピングできなくなるためです。 その結果、信頼ポリシーの Principal エレメントで参照されているロールを削除して再作成する場合は、ロールを編集して正しくなくなったプリンシパル ID を正しい ARN に置き換える必要があります。 ポリシーを保存するときに、ARN は再びロールの新しいプリンシパル ID に変換されます。 プリンシパルは常に特定のセッションに名前を付ける必要があります。 AWS サービス AWS のサービスが引き受けることのできる IAM ロールは、 と呼ばれます。 サービスロールには信頼ポリシーを含める必要があります。 信頼ポリシー は、どのプリンシパルがそのロールを果たすことができるかを定義するロールにアタッチされるリソースベースのポリシーです。 一部のサービスロールには事前定義済みの信頼ポリシーがあります。 ただし、状況によっては、信頼ポリシーでプリンシパルサービスを指定する必要があります。 サービスプリンシパルは、サービスにアクセス許可を付与するために使用される識別子です。 この識別子には、長いバージョンのサービス名が含まれ、通常は次の形式になります。 amazonaws. com サービスプリンシパルはサービスによって定義されます。 サービスのサービスプリンシパルについては、そのサービスのドキュメントを参照してください。 一部のサービスについては、「」を参照してください。 これらのサービスでは、「 サービスにリンクされたロール」列が「 はい」になっています。 サービスにリンクされたロールに関するドキュメントをサービスで表示するには、[ はい] リンクを選択します。 サービスのプリンシパルを表示するには、そのサービスの [ Service-Linked Role Permissions サービスにリンクされたロールのアクセス許可 ] を表示します。 次の例では、サービスロールにアタッチできるポリシーを示します。 ポリシーは、Amazon EMR および AWS Data Pipeline の 2 つのサービスを有効にして、ロールを引き受けます。 これらのサービスは、ロールに割り当てられた権限ポリシー 表示されていない によって付与されたタスクを実行できます。 複数のサービスプリンシパルを指定する場合に、2 つの Service エレメントは指定できません。 1 つのみ指定できます。 代わりに、1 つの Service エレメントの値として複数のサービスのプリンシパルのアレイを使用します。 amazonaws. com", "datapipeline. amazonaws. 次の要素は同等です。

次の