Microsoft Entra ID のカスタム セキュリティ属性とは

Microsoft Entra ID のカスタム セキュリティ属性は、ビジネス固有の属性 (キーと値のペア) であり、Microsoft Entra のオブジェクトに対して定義し割り当てることができます。 これらの属性を使用して、情報の保存、オブジェクトの分類、特定の Azure リソースに対するきめ細かいアクセス制御を行うことができます。 Azure 属性ベースのアクセス制御 (ABAC) にカスタム セキュリティ属性を使用できます。

カスタム セキュリティ属性を使用する理由

カスタム セキュリティ属性を使用できるいくつかのシナリオを次に示します。

  • ユーザー プロファイルを拡張する (時給を全従業員に追加するなど)。
  • 管理者だけが従業員のプロファイルで時給属性を確認できるようにする。
  • 数百または数千のアプリケーションを分類して、監査用にフィルター可能なインベントリを簡単に作成する。
  • プロジェクトに属する Azure Storage BLOB へのアクセス許可をユーザーに付与する。

カスタム セキュリティ属性でできること

カスタム セキュリティ属性には次の機能が含まれます。

  • テナントのビジネス固有の情報 (属性) を定義する。
  • ユーザーとアプリケーションに一連のカスタム セキュリティ属性を追加します。
  • クエリやフィルターを使って、カスタム セキュリティ属性を使用した Microsoft Entra オブジェクトの管理を行う。
  • 属性ガバナンスの提供により、アクセスできるユーザーを属性で判断する。

カスタム セキュリティ属性は、次の分野ではサポートされていません:

カスタム セキュリティ属性の特徴

カスタム セキュリティ属性には次の機能が含まれます。

  • テナント全体で利用可能
  • 説明を含む
  • さまざまなデータ型をサポート: ブール値、整数、文字列
  • 単一の値または複数の値をサポート
  • ユーザー定義による自由形式の値または定義済みの値をサポート
  • オンプレミスの Active Directory からディレクトリ同期済みのユーザーにカスタム セキュリティ属性を割り当てる

次の例では、ユーザーに割り当てられているカスタム セキュリティ属性がいくつか示されています。 カスタム セキュリティ属性はさまざまなデータ型であり、単一の値、複数の値、自由形式の値、事前定義された値が与えられます。

Screenshot of custom security attribute examples assigned to a user.

カスタム セキュリティ属性をサポートするオブジェクト

次の Microsoft Entra オブジェクトに対してカスタム セキュリティ属性を追加できます。

  • Microsoft Entra ユーザー
  • Microsoft Entra エンタープライズ アプリケーション (サービス プリンシパル)

カスタム セキュリティ属性と拡張機能との比較

拡張機能とカスタム セキュリティ属性はどちらも Microsoft Entra ID と Microsoft 365 のオブジェクトを拡張するために使用できますが、これらは基本的に異なるカスタム データ シナリオに適しています。 ここでは、カスタム セキュリティ属性が拡張機能と比較してどのようなものかを説明します。

機能 Extensions カスタム セキュリティ属性
Microsoft Entra ID と Microsoft 365 オブジェクトを拡張する はい はい
サポート対象のオブジェクト 拡張機能の種類によって異なる ユーザーとサービス プリンシパル
制限付きアクセス いいえ。 オブジェクトを読み取るアクセス許可を持つすべてのユーザーは、拡張機能データを読み取ることができます。 はい。 読み取りおよび書き込みアクセスは、別のアクセス許可とロールベースのアクセス制御 (RBAC) のセットによって制限されます。
使用する場合 アプリケーションで使用されるデータを保存する
機密以外のデータを保存する
機密データを保存する
認可シナリオに使用する
ライセンスの要件 Microsoft Entra ID のすべてのエディションで利用可能 Microsoft Entra ID のすべてのエディションで利用可能

拡張機能の使用の詳細については、「拡張機能を使用してカスタム データをリソースに追加する」を参照してください。

カスタム セキュリティ属性を使用する手順

  1. アクセス許可を確認してください

    属性定義管理者または属性割り当て管理者のロールが割り当てられていることを確認します。 割り当てられていない場合は、管理者に問い合わせて、テナントのスコープまたは属性セットのスコープに適切なロールを割り当ててもらってください。 既定では、グローバル管理者とその他の管理者ロールには、カスタム セキュリティ属性の読み取り、定義、割り当てを行う権限がありません。 必要に応じて、グローバル管理者は、これらのロールを自身に割り当てることができます。

    Diagram showing checking permissions to add custom security attributes in Microsoft Entra ID.

  2. 属性セットを追加する

    属性セットをグループに追加し、関連するカスタム セキュリティ属性を管理します。 詳細情報

    Diagram showing adding multiple attribute sets.

  3. 属性セットを管理する

    属性セット内のカスタム セキュリティ属性の読み取り、定義、割り当てができるユーザーを指定します。 詳細情報

    Diagram showing assigning attribute definition administrators and attribute assignment administrators to attribute sets.

  4. 属性を定義する

    カスタム セキュリティ属性をディレクトリに追加します。 日付型 (ブール値、整数、または文字列) と、値が事前定義されているか自由形式か、単一か、複数かを指定できます。 詳細情報

    Diagram showing delegated administrators defining custom security attributes.

  5. 属性を割り当てる

    ご使用のビジネス シナリオに合わせて、Microsoft Entra オブジェクトにカスタム セキュリティ属性を割り当てます。 詳細情報

    Diagram showing delegated administrators assigning custom security attributes to Microsoft Entra objects.

  6. 属性を使用する

    カスタム セキュリティ属性を使用するユーザーやアプリケーションをフィルター処理します。 詳細情報

    カスタム セキュリティ属性を使用する条件を Azure でのロールの割り当てに追加することで、詳細なアクセス制御が可能になります。 詳細情報

用語

用語の一覧です。カスタム セキュリティ属性について理解を深めたいときは、適宜ここに戻って参照してください。

項目 定義
属性の定義 カスタム セキュリティ属性またはキーと値のペアのスキーマ。 たとえば、カスタム セキュリティ属性の名前、説明、データ型、定義済みの値などです。
属性セット 関連するカスタム セキュリティ属性のコレクション。 属性セットを他のユーザーに委任して、カスタム セキュリティ属性の定義と割り当てを行うことができます。
属性名 属性セット内のカスタム セキュリティ属性の一意の名前。 属性セットと属性名の組み合わせによって、テナントの一意の属性が形成されます。
属性の割り当て ユーザーやエンタープライズ アプリケーション (サービス プリンシパル) といった Microsoft Entra オブジェクトに対するカスタム セキュリティ属性の割り当て。
定義済みの値 カスタム セキュリティ属性に使用できる値。

カスタム セキュリティ属性のプロパティ

次の表に、属性セットおよびカスタム セキュリティ属性に指定できるプロパティを示します。 一部のプロパティは不変であり、後で変更することはできません。

プロパティ 必須 後で変更可能 Description
属性セット名 属性セットの名前。 テナント内で一意である必要があります。 スペースや特殊文字を含めることはできません。
属性セットの説明 属性セットの説明。
属性の最大数 属性セットで定義できるカスタム セキュリティ属性の最大数。 既定値は null です。 指定されていない場合、管理者は 1 つのテナントにつき最大 500 のアクティブな属性を追加することができます。
属性セット 関連するカスタム セキュリティ属性のコレクション。 すべてのカスタム セキュリティ属性は、属性セットの一部である必要があります。
Attribute name カスタム セキュリティ属性の名前。 属性セット内で一意である必要があります。 スペースや特殊文字を含めることはできません。
属性の説明 カスタム セキュリティ属性の説明。
データ型 カスタム セキュリティ属性値のデータ型。 サポートされている型は、BooleanIntegerString です。
複数の値の割り当てを許可する 複数の値をカスタム セキュリティ属性に割り当てることができるかどうかを示します。 データ型が Boolean に設定されている場合、[はい] に設定することはできません。
定義済みの値のみの割り当てを許可する 定義済みの値のみをカスタム セキュリティ属性に割り当てることができるかどうかを示します。 [いいえ] に設定すると、自由形式の値が許可されます。 後で [はい] から [いいえ] に変更できますが、[いいえ] から [はい] に変更することはできません。 データ型が Boolean に設定されている場合、[はい] に設定することはできません。
定義済みの値 選択されたデータ型のカスタム セキュリティ属性の定義済みの値。 定義済みの値は、後で追加することができます。 値にはスペースを含めることができますが、一部の特殊文字は使用できません。
定義済みの値はアクティブである 定義済みの値をアクティブ化するか非アクティブ化するかを指定します。 false に設定すると、サポートされているその他のディレクトリ オブジェクトに定義済みの値を割り当てることはできません。
[属性はアクティブである] カスタム セキュリティ属性をアクティブ化するか非アクティブ化するかを指定します。

制限および制約

ここでは、カスタム セキュリティ属性の制限と制約について説明します。

リソース 制限 Notes
テナントごとの属性の定義 500 テナント内のアクティブな属性にのみ適用されます
テナントごとの属性セット 500
属性セット名の長さ 32 Unicode 文字および大文字と小文字を区別しない
属性セットの説明の長さ 128 Unicode 文字
属性名の長さ 32 Unicode 文字および大文字と小文字を区別しない
属性の説明の長さ 128 Unicode 文字
定義済みの値 Unicode 文字および大文字と小文字を区別する
属性定義ごとの定義済みの値 100
属性値の長さ 64 Unicode 文字
オブジェクトごとに割り当てられる属性値 50 値は、単一および複数値の属性に分散させることができます。
例: それぞれ 10 個の値を持つ 5 つの属性、またはそれぞれ 1 個の値を持つ 50 個の属性
次のもので使用できない特殊文字:
属性セット名
属性名
<space> ` ~ ! @ # $ % ^ & * ( ) _ - + = { [ } ] \| \ : ; " ' < , > . ? / 属性セット名と属性名の先頭には数字を使用できません
属性値で使用できる特殊文字 すべての特殊文字
BLOB インデックス タグで使用する場合に属性値に使用できる特殊文字 <space> + - . : = _ / BLOB インデックス タグで属性値を使用する予定の場合、BLOB インデックス タグに使用できる特殊文字はこれらのみです。 詳細については、BLOB インデックス タグの設定を参照してください。

カスタム セキュリティ属性のロール

Microsoft Entra ID には、カスタム セキュリティ属性を処理するための組み込みロールが用意されています。 属性定義管理者のロールは、カスタム セキュリティ属性を管理するために必要な最小限のロールです。 属性割り当て管理者のロールは、ユーザーやアプリケーションなどの Microsoft Entra オブジェクトにカスタム セキュリティ属性値を割り当てるために必要な最小限のロールです。 これらのロールは、テナントのスコープまたは属性セットのスコープで割り当てることができます。

Role アクセス許可
属性定義閲覧者 属性セットを読み取る
カスタム セキュリティ属性の定義を読み取る
属性定義管理者 属性セットのすべての側面を管理する
カスタム セキュリティ属性定義のすべての側面を管理する
属性割り当て閲覧者 属性セットを読み取る
カスタム セキュリティ属性の定義を読み取る
ユーザーとサービス プリンシパルのカスタム セキュリティ属性のキーと値を読み取る
属性割り当て管理者 属性セットを読み取る
カスタム セキュリティ属性の定義を読み取る
ユーザーとサービス プリンシパルのカスタム セキュリティ属性のキーと値を読み取り更新する
属性ログ閲覧者 カスタム セキュリティ属性の監査ログの読み取り
属性ログ管理者 カスタム セキュリティ属性の監査ログの読み取り
カスタム セキュリティ属性の診断設定を構成する

重要

既定では、グローバル管理者とその他の管理者ロールには、カスタム セキュリティ属性の読み取り、定義、割り当てを行う権限がありません。

Microsoft Graph API

Microsoft Graph API を使用して、カスタム セキュリティ属性をプログラムで管理できます。 詳細については、「Microsoft Graph API を使用したカスタム セキュリティ属性の概要」を参照してください。

Graph Explorer または Postman などの API クライアントを使用して、カスタム セキュリティ属性の Microsoft Graph API をより簡単に試すことができます。

Screenshot that shows a Microsoft Graph API call for custom security attributes.

ライセンスの要件

この機能の使用は無料で、Azure サブスクリプションに含まれています。

次のステップ