プロファイル カード API を使用してプロファイル カードのカスタム属性を追加または削除する

Microsoft 365 の プロファイル カード には、組織内のユーザーに関する情報が表示されます。 プロファイル カードに表示される情報は、 役職Office の場所など、組織によって保存および管理されます。

組織では、 profileCardProperty リソースを使用して、組織内のユーザーのプロファイル カードに Microsoft Entra ID からさらに多くのプロパティを表示できます。

  • より多くの属性を表示する
  • カスタム属性の追加

その他のプロパティは、Microsoft 365 のプロファイル カードの [連絡先] セクションに表示されます。

組織のプロファイル カードからカスタム属性を 削除 することもできます。

注:

プロファイル カードのプロパティは、Microsoft Entra ID の属性に対応します。 組織の profileCardProperties コレクションに profileCardProperty として属性を追加すると、属性値を表示するようにプロファイル カードが構成されます。 コレクションから profileCardProperty を削除しても、Microsoft Entra ID から属性は削除されません。プロファイル カードに属性値が表示されないように、構成が削除されます。

注:

この記事で説明するプロファイル カードのプロパティのカスタマイズは、Outlook や Office デスクトップ クライアントなどの Win32 アプリケーションには適用されません。 組織の Win32 アプリケーションでプロファイル カードのプロパティをカスタマイズする方法については、「 レジストリ キーを使用して Win32 アプリのプロファイル カードをカスタマイズする」を参照してください。

プロファイル カードのプロパティ API は、次の 国内クラウドデプロイで使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国

注:

委任されたアクセス許可を使用する profileCardProperty リソースに対する操作には、サインインしているユーザーにテナント管理者またはグローバル管理者ロールが必要です。

プロファイル カードに他の属性を表示する

Microsoft Entra ID から次の属性をユーザーのプロファイル カードに表示できます。 これらの属性では、大文字と小文字は区別されません。

  • UserPrincipalName
  • Fax
  • StreetAddress
  • PostalCode
  • StateOrProvince
  • Alias

次の表は、Microsoft Entra ID 属性が Microsoft Graph ユーザー エンティティのプロパティに対応する方法を示しています。

Microsoft Entra ID 属性 ユーザーのエンティティプロパティ
UserPrincipalName userPrincipalName
FAX faxNumber
StreetAddress streetAddress
PostalCode postalCode
StateOrProvince state
エイリアス mailNickname

これらの属性のいずれかをプロファイル カードに追加するには、ユーザーの管理者設定を構成し、Microsoft Graph で profileCardPropertydirectoryPropertyName プロパティとして属性を追加します。 これらの属性を表示する場合は、 en-usのプロパティ名を使用する必要があります。 ローカライズされた値を追加する必要はありません。 これらのプロパティは、ユーザーが Microsoft 365 に指定した言語設定で自動的に表示されます。

手記: ユーザー エンティティ プロパティの値には、組織によって格納および管理されるユーザー情報が含まれます。

重要

プロファイル カードに属性を追加する場合、追加が表示されるまでに最大 24 時間かかります。

Microsoft Graph REST API を使用してプロファイル カードのプロパティを構成する

次の例では、プロファイル カードの Alias 属性を表示します。

POST https://graph.microsoft.com/v1.0/admin/people/profileCardProperties
Content-Type: application/json

{
  "directoryPropertyName": "Alias"
}

手記: ベータ エクスペリエンスでは、 /organization/{organizationId}/settings パスは非推奨です。 今後は、/admin/people パスを使用してください。

成功した場合、返信は、201 OK 返信コードとprofileCardPropertyオブジェクトが、返信の本文で示され返されます。 Alias属性の値は、ユーザーのプロファイル カードに表示されます。

HTTP/1.1 201 OK
Content-type: application/json

{
  "directoryPropertyName": "Alias",
  "annotations": []
}

プロファイル カードにカスタム属性を追加する

組織の設定を構成し、対応する値を Microsoft Graph で profileCardProperty として追加することで、15 個の Microsoft Entra ID カスタム拡張属性のいずれかをユーザーのプロファイル カードに追加できます。 一度に1つのprofileCardPropertyリソースを追加することができます。

プロファイルカードに変更が反映されるまでに、最大で24時間かかります。

カスタム プロパティは検索できず、Microsoft アプリやサービス全体のユーザーを検索するために使用することはできません。

次の表は、Microsoft Entra ID カスタム拡張属性名が profileCardProperty リソースの directoryPropertyName プロパティでサポートされている値にどのように対応するかを示しています。 次の Microsoft Entra ID カスタム拡張属性名では、大文字と小文字は区別されません。

Microsoft Entra ID カスタム拡張機能属性 DirectoryPropertyName として指定する値
extensionAttribute1 CustomAttribute1
extensionAttribute2 CustomAttribute2
extensionAttribute3 CustomAttribute3
extensionAttribute4 CustomAttribute4
extensionAttribute5 CustomAttribute5
extensionAttribute6 CustomAttribute6
extensionAttribute7 CustomAttribute7
extensionAttribute8 CustomAttribute8
extensionAttribute9 CustomAttribute9
extensionAttribute10 CustomAttribute10
extensionAttribute12 CustomAttribute12
extensionAttribute11 CustomAttribute11
extensionAttribute13 CustomAttribute13
extensionAttribute14 CustomAttribute14
extensionAttribute15 CustomAttribute15

重要

カスタム プロファイル カード属性は組織内のすべてのユーザーに対して追加され、機密データが誤って公開されるのを防ぐために必要な予防措置が必要です。

次の例では、表示名 Cost center を使用して、最初の Microsoft Entra ID カスタム拡張機能属性をプロファイル カードに追加します。 言語設定をドイツ語に設定したユーザーの場合、表示名は Kostenstelle です

要求

POST https://graph.microsoft.com/v1.0/admin/people/profileCardProperties
Content-Type: application/json

{
  "directoryPropertyName": "CustomAttribute1",
  "annotations": [
    {
      "displayName": "Cost center",
      "localizations": [
        {
          "languageTag": "de",
          "displayName": "Kostenstelle"
        }
      ]
    }
  ]
}

手記: ベータ エクスペリエンスでは、 /organization/{organizationId}/settings パスは非推奨です。 今後は、/admin/people パスを使用してください。

言語がサポートされていない場合は、プロパティ名が既定値で表示されます。

成功した場合、返信は、201 OK 返信コードとprofileCardPropertyオブジェクトが、返信の本文で示され返されます。 この例では、プロファイル カードに言語設定をドイツ語に設定したすべてのユーザーに対して、プロファイル カードに Kostenstelle が表示されていると仮定できます。 他のすべてのユーザーの場合、 Cost center はプロファイル カードに表示されます。

応答

HTTP/1.1 201 OK
Content-type: application/json

{
  "directoryPropertyName": "CustomAttribute1",
  "annotations": [
    {
      "displayName": "Cost center",
      "localizations": [
        {
          "languageTag": "de",
          "displayName": "Kostenstelle"
        }
      ]
    }
  ]
}

プロファイル カードからカスタム属性を削除する

前のセクション「カスタム属性の追加」で説明したように、Microsoft Entra ID カスタム拡張属性とプロファイル カードのカスタム属性 (CustomAttribute1 など) の間の同じマッピングに従って、次の例に示すように、削除操作を使用してカスタム属性を削除できます。

次の例では、組織の設定からカスタム属性 CustomAttribute5 を削除します。 成功した場合、このメソッドは 204 No Content 応答コードを返します。

要求

DELETE https://graph.microsoft.com/v1.0/admin/people/profileCardProperties/CustomAttribute5

手記: ベータ エクスペリエンスでは、 /organization/{organizationId}/settings パスは非推奨です。 今後は、/admin/people パスを使用してください。

応答

HTTP/1.1 204 No Content

PowerShell を使用してプロファイル カードのプロパティを構成する

Microsoft Graph PowerShell SDK を使用して、組織内のプロファイル カードのプロパティを構成できます。

前提条件

現在の設定を確認する

組織のプロファイル カードのプロパティ構成を取得するには、次のコマンドを使用します。

   Get-MgAdminPeopleProfileCardProperty

組織内の特定のプロファイル カード プロパティ構成を取得するには、次のコマンドを使用します。

   Get-MgAdminPeopleProfileCardProperty -ProfileCardPropertyId $profileCardPropertyId

注:

get コマンドには、 PeopleSettings.Read.All アクセス許可が必要です。 必要な範囲が決められた Microsoft Graph セッションを作成するには、次のコマンドを使用し、必要なアクセス許可に同意します。

   Connect-MgGraph -Scopes "PeopleSettings.Read.All"

組織にプロファイル カードのプロパティを追加する

Microsoft Graph PowerShell モジュールを使用して、Microsoft Entra ID 属性と 15 個のカスタマイズ可能な Microsoft Entra ID 拡張属性の両方を組織で使用できるようにします。

注:

新しいコマンドには、 PeopleSettings.ReadWrite.All アクセス許可が必要です。 必要な範囲が決められた Microsoft Graph セッションを作成するには、次のコマンドを使用し、必要なアクセス許可に同意します。

   Connect-MgGraph -Scopes "PeopleSettings.ReadWrite.All","PeopleSettings.Read.All"

次のコマンドを使用します。

$params = @{
	directoryPropertyName = "CustomAttribute1"
	annotations = @(
		@{
			displayName = "Cost Center"
			localizations = @(
				@{
					languageTag = "ru"
					displayName = "центр затрат"
				}
			)
		}
	)
}

New-MgAdminPeopleProfileCardProperty -BodyParameter $params

組織内のプロファイル カードのプロパティを更新する

Microsoft Graph PowerShell モジュールを使用して、組織内で使用できるプロファイル カードのプロパティを更新できます。

注:

update コマンドには、 PeopleSettings.ReadWrite.All アクセス許可が必要です。 必要な範囲が決められた Microsoft Graph セッションを作成するには、次のコマンドを使用し、必要なアクセス許可に同意します。

   Connect-MgGraph -Scopes "PeopleSettings.ReadWrite.All","PeopleSettings.Read.All"

次のコマンドを使用して、 $profileCardPropertyId を更新するプロパティの ID に置き換えます。

$params = @{
	annotations = @(
		@{
      displayName = "Cost Center"
			localizations = @(
				@{
					languageTag = "no"
					displayName = "Kostnads Senter"
				}
			)
		}
	)
}

Update-MgAdminPeopleProfileCardProperty -ProfileCardPropertyId $profileCardPropertyId -BodyParameter $params

組織内のプロファイル カードのプロパティを削除する

Microsoft Graph PowerShell モジュールを使用して、プロファイル カードのプロパティを組織から削除できます。

注:

remove コマンドには、 PeopleSettings.ReadWrite.All アクセス許可が必要です。 必要な範囲が決められた Microsoft Graph セッションを作成するには、次のコマンドを使用し、必要なアクセス許可に同意します。

   Connect-MgGraph -Scopes "PeopleSettings.ReadWrite.All","PeopleSettings.Read.All"

次のコマンドを使用して、 $profileCardPropertyId を削除するプロパティの ID に置き換えます。

 Remove-MgAdminPeopleProfileCardProperty -ProfileCardPropertyId $profileCardPropertyId