プロファイル カード API を使用してプロファイル カードにカスタム属性を追加または削除する
Microsoft 365 のプロファイル カードには、organization内のユーザーに関する情報が表示されます。 プロファイル カードに表示される情報は、ジョブ タイトルや Office の場所など、organizationによって保存および管理されます。
組織は、profileCardProperty リソースを使用して、organization内のユーザーのプロファイル カードのMicrosoft Entra IDからさらに多くのプロパティを表示できます。
- より多くの属性を表示する
- カスタム属性の追加
その他のプロパティは、Microsoft 365 のプロファイル カードの [連絡先] セクションに表示されます。
organizationのプロファイル カードからカスタム属性を削除することもできます。
注:
プロファイル カード プロパティは、Microsoft Entra IDの属性に対応します。 organizationの profileCardProperties コレクションに profileCardProperty として属性を追加すると、属性値を表示するようにプロファイル カードが構成されます。 コレクションから profileCardProperty を削除しても、Microsoft Entra IDから属性は削除されません。プロファイル カードが属性値を表示しなくなったように構成を削除します。
注:
この記事で説明するプロファイルカードプロパティのカスタマイズは、Outlook や Office デスクトップ クライアントなどの Win32 アプリケーションには適用されません。 organizationの 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 の profileCardProperty の directoryPropertyName プロパティとして属性を追加します。 これらの属性を表示する場合は、 en-us
のプロパティ名を使用する必要があります。 ローカライズされた値を追加する必要はありません。 これらのプロパティは、ユーザーが Microsoft 365 に指定した言語設定で自動的に表示されます。
手記:ユーザー エンティティ プロパティの値には、organizationによって格納および管理されるユーザー情報が含まれます。
重要
プロファイル カードに属性を追加する場合、追加が表示されるまでに最大 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": []
}
プロファイル カードにカスタム属性を追加する
organization設定を構成し、対応する値を 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 |
重要
カスタム プロファイルカード属性は、organization内のすべてのユーザーに対して追加されるため、機密データが誤って公開されるのを防ぐために必要な予防措置が必要です。
例
次の例では、コスト センターという表示名を使用して、プロファイル カードに最初の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
など) の間の同じマッピングに従って、次の例に示すように、削除操作を使用してカスタム属性を削除できます。
例
次の例では、organization設定からカスタム属性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 を使用して、organizationでプロファイルカードプロパティを構成できます。
前提条件
- PowerShell モジュール - モジュール バージョン 1.24.0 以降をインストールします。
- .NET Framework - .NET Framework 4.7.2 以降のバージョンをインストールします。
現在の設定を確認する
organizationのプロファイルカードプロパティの構成を取得するには、次のコマンドを使用します。
Get-MgAdminPeopleProfileCardProperty
organizationで特定のプロファイルカードプロパティ構成を取得するには、次のコマンドを使用します。
Get-MgAdminPeopleProfileCardProperty -ProfileCardPropertyId $profileCardPropertyId
注:
get コマンドには、 PeopleSettings.Read.All
アクセス許可が必要です。 必要な範囲が決められた Microsoft Graph セッションを作成するには、次のコマンドを使用し、必要なアクセス許可に同意します。
Connect-MgGraph -Scopes "PeopleSettings.Read.All"
プロファイルカードプロパティをorganizationに追加する
Microsoft Graph PowerShell モジュールを使用すると、Microsoft Entra ID属性と 15 個のカスタマイズ可能なMicrosoft Entra ID拡張属性の両方をorganizationで使用できます。
注:
新しいコマンドには、 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
organizationのプロファイル カード プロパティを更新する
Microsoft Graph PowerShell モジュールを使用して、organizationで使用できるプロファイルカードプロパティを更新できます。
注:
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
organizationのプロファイル カード プロパティを削除する
Microsoft Graph PowerShell モジュールを使用して、プロファイルカードプロパティをorganizationから削除できます。
注:
remove コマンドには、 PeopleSettings.ReadWrite.All
アクセス許可が必要です。 必要な範囲が決められた Microsoft Graph セッションを作成するには、次のコマンドを使用し、必要なアクセス許可に同意します。
Connect-MgGraph -Scopes "PeopleSettings.ReadWrite.All","PeopleSettings.Read.All"
次のコマンドを使用して、 $profileCardPropertyId
を削除するプロパティの ID に置き換えます。
Remove-MgAdminPeopleProfileCardProperty -ProfileCardPropertyId $profileCardPropertyId