# filter-endpoint

モード
  Office365エンドポイントモード
カテゴリー
  トラフィック制御 / URLオフロード

## 構文

コマンド構文

`(config-endpoint-office365)# [no] filter-endpoint {include|exclude} key KEY boolean {true|false}`

`(config-endpoint-office365)# [no] filter-endpoint {include|exclude} key KEY string VALUE`

`(config-endpoint-office365)# [no] filter-endpoint {include|exclude} key KEY integer VALUE`

## コマンド説明

Office365の情報提供サーバー経由で取得したエンドポイント情報のJSONデータのうち、特定のプロパティー値を持つグループ内の全エンドポイント（IPv4/IPv6アドレスおよびドメイン名）を受け入れる、あるいは、除去（フィルター）するよう設定する。
no形式で実行した場合は、指定した受け入れ設定または除去設定を削除する。
情報提供サーバーから取得するJSONデータは、提供サービスなどによって一連のエンドポイント（IPv4/IPv6アドレスおよびドメイン名）がグループ分けされており、各グループには複数のプロパティーが「キー・値」ペアの形式で付随している。
（取得した生JSONデータはshow url-offload endpoint-source office365 raw-dataコマンドで確認可能）
次に例として取得したJSONデータの一部分を示す。
ここでは、中括弧 `{ ... }` で囲まれている部分が1つのエンドポイントグループを表している。
この例では途中が省略されているが、少なくとも id=1、id=2、id=149 の3つのエンドポイントグループを見ることができる。
各グループにはIPv4/IPv6アドレスの一覧を表す `"ips": [ ... ]` 配列やドメイン名（FQDN）の一覧を表す `"urls": [ ... ]` 配列のほかにも、`"id": 1` や `"required": true` のような「キー: 値」形式のプロパティーが複数関連づけられている。
本コマンドでは、任意のプロパティー値を基準にして、特定のグループを受け入れたり、除去したりする設定が可能。

    [
      {
        "id": 1,
        "serviceArea": "Exchange",
        "serviceAreaDisplayName": "Exchange Online",
        "urls": [
          "outlook.office.com",
          "outlook.office365.com"
        ],
        "ips": [
          "13.107.6.152/31",
          "13.107.18.10/31",
          ...
          "2603:1006::/40",
          "2603:1016::/36",
          ...
        ],
        "tcpPorts": "80,443",
        "expressRoute": true,
        "category": "Optimize",
        "required": true
      },
      {
        "id": 2,
        "serviceArea": "Exchange",
        ...
      },
      ...
      {
        "id": 149,
        "serviceArea": "Common",
        "serviceAreaDisplayName": "Microsoft 365 Common and Office Online",
        "urls": [
          "workplaceanalytics.cdn.office.net",
          "workplaceanalytics.office.com"
        ],
        "tcpPorts": "80,443",
        "expressRoute": false,
        "category": "Default",
        "required": true
      }
    ]

## パラメーター

`include`
  指定したプロパティー値を持つグループ内のエンドポイントを受け入れる
`exclude`
  指定したプロパティー値を持つグループ内のエンドポイントを除去する。includeとexcludeではexcludeのほうが効力が強いため、両方にマッチするグループはexcludeされる
`key KEY`
  照合対象のキー（プロパティー名）
`boolean {true|false}`
  対象プロパティー値を真偽値として照合する
`integer VALUE`
  対象プロパティー値を整数値として照合する
`string VALUE`
  対象プロパティー値を文字列として照合する

## 使用例

requiredプロパティーがtrueのエンドポイントグループを受け入れる。

    awplus(config-endpoint-office365)# filter-endpoint include key required boolean true

id=32のグループを除くすべてのエンドポイントグループを受け入れる。

    awplus(config-endpoint-office365)# filter-endpoint include all
    awplus(config-endpoint-office365)# filter-endpoint exclude key id integer 32

categoryプロパティーが「Optimize」という文字列のエンドポイントグループを受け入れる。

    awplus(config-endpoint-office365)# filter-endpoint include key category string Optimize

## コマンドツリー

## 関連コマンド