directoryObject: validateProperties

名前空間: microsoft.graph

Microsoft 365 グループの表示名またはメールのニックネームが名前付けポリシーに準拠していることを検証します。 クライアントは、Microsoft 365 グループを 作成 する前に、この API を使用して、表示名またはメールのニックネームが有効かどうかを判断できます。 既存のグループのプロパティを検証するには、 グループ validateProperties 関数を 使用します。

表示名とメールニックネームのプロパティに対して、次のポリシー検証が実行されます。

  1. プレフィックスとサフィックスの名前付けポリシーを検証する
  2. カスタム禁止単語ポリシーを検証する
  3. メールのニックネームが一意であることを検証する

注:

  • 次の文字は無効な文字と見なされ、ポリシー検証の一部ではありません: @ () \ \[] " ; : <> , SPACE。

  • ユーザー管理者ロールとグローバル管理者ロールを持つ管理者は、カスタム禁止単語とプレフィックスとサフィックスの名前付けポリシーから除外され、ブロックされた単語と独自の名前付け規則を使用してグループを作成できます。

この API は、検出された最初の検証エラーのみを返します。 プロパティが複数の検証に失敗した場合、最初の検証エラーのみが返されます。 ただし、プレフィックスとサフィックスの名前付けポリシーのみを検証している場合は、メールのニックネームと表示名の両方を検証し、検証エラーのコレクションを受け取ることができます。 名前付けポリシーの構成の詳細については、「名前 付けポリシーの構成」を参照してください。

この API は、次の国内クラウド展開で使用できます。

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

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。

アクセス許可の種類 最小特権アクセス許可 より高い特権のアクセス許可
委任 (職場または学校のアカウント) Group.Read.All Directory.Read.All、Directory.ReadWrite.All
委任 (個人用 Microsoft アカウント) サポートされていません。 サポートされていません。
アプリケーション Group.Read.All Directory.Read.All、Directory.ReadWrite.All、Group.ReadWrite.All

HTTP 要求

POST /directoryObjects/validateProperties

要求ヘッダー

名前 説明
Authorization ベアラー {token}。 必須です。 認証と認可についての詳細をご覧ください。
Content-Type application/json

要求本文

要求本文で、次のパラメーターを含む JSON オブジェクトを指定します。

パラメーター 型 説明
entityType 文字列 Group は、サポートされている唯一のエンティティ型です。
displayName 文字列 検証するグループの表示名。 displayName または mailNickname を指定する必要があります。
mailNickname 文字列 検証するグループのメール ニックネーム。 displayName または mailNickname を指定する必要があります。
onBehalfOfUserId Guid API を呼び出すときに偽装するユーザーの ID。 検証結果は、 onBehalfOfUserId の 属性とロールを対象とします。

応答

成功し、検証エラーがない場合、メソッドは応答コード 204 No Content 返します。 応答本文では何も返されません。

グローバル管理者またはユーザー管理者が、カスタム禁止語またはプレフィックスおよびサフィックスの名前付けポリシーに違反する要求を開始すると、API は、名前付けポリシーから除外されるため、 204 No Content 応答コードを返します。 他のユーザーまたは管理者の場合、これらのポリシーに違反する要求は無効です。

要求が無効な場合、メソッドは応答コード 400 Bad Request 返します。 無効な要求に関する詳細を含むエラー メッセージが応答本文に返されます。

検証エラーが発生した場合、メソッドは応答コード 422 Unprocessable Entity 返します。 エラー メッセージとエラーの詳細のコレクションが応答本文に返されます。

例

例 1: 検証要求が成功した

要求

POST https://graph.microsoft.com/v1.0/directoryObjects/validateProperties
Content-type: application/json

{
  "entityType": "Group",
  "displayName": "Myprefix_test_mysuffix",
  "mailNickname": "Myprefix_test_mysuffix",
  "onBehalfOfUserId": "onBehalfOfUserId-value"
}

応答

HTTP/1.1 204 No Content

例 2: 失敗した検証要求

要求

POST https://graph.microsoft.com/v1.0/directoryObjects/validateProperties
Content-type: application/json

{
  "entityType": "Group",
  "displayName": "test",
  "mailNickname": "test",
  "onBehalfOfUserId": "onBehalfOfUserId-value"
}

応答

HTTP/1.1 422 Unprocessable Entity
Content-Type: application/json

{
  "error": {
    "code": "Request_UnprocessableEntity",
    "message": "The values provided contain one or more validation errors.",
    "innerError": {
      "request-id": "request-id-value",
      "date": "date-value"
    },
    "details": [
      {
        "target": "displayName",
        "code": "MissingPrefixSuffix",
        "message": "Property mailNickname is missing a required prefix/suffix per your organization's Group naming requirements.",
        "prefix": "Myprefix_",
        "suffix": "_mysuffix"
      },
      {
        "target": "mailNickname",
        "code": "MissingPrefixSuffix",
        "message": "Property mailNickname is missing a required prefix/suffix per your organization's Group naming requirements.",
        "prefix": "Myprefix_",
        "suffix": "_mysuffix"
      }
    ]
  }
}