Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

デバイスプロファイル

最終更新 Markdown で表示Agent セットアップ

デバイスプロファイルは、組織内の特定のデバイス群に対する Cloudflare One Client の設定 を定義します。複数のプロファイルを作成し、ユーザーの ID、デバイスの場所、その他の条件に基づいて異なる設定を適用できます。

たとえば、ある ID プロバイダーグループ(特定のオフィス拠点を表す)のユーザーは、WARP トンネルから除外すべき経路が異なる場合があります。また、一部のデバイスタイプ(Linux など)では、ローカルの開発用サービスに合わせて DNS 設定を変える必要があります。

新しいプロファイルを作成する

  1. Cloudflare ダッシュボードZero Trust > Team & Resources > Devices > Device profiles > General profiles を開きます。
  2. Create new profile を選びます。Default プロファイルのコピーが作成されます。
  3. プロファイルに任意の名前を入力します。
  4. このプロファイルを使うデバイスを定義するルールを作成します。利用できる セレクター演算子 の詳細を確認してください。
  5. これらのデバイス向けに デバイスクライアント設定 を構成します。
  1. Create profile を選びます。

プロファイルは Profile settings の一覧に表示されます。希望する 優先順位 に合わせて、一覧内のプロファイルを並べ替えられます。

Devices APIPOST リクエストを送ります。

Required API token permissions

At least one of the following token permissions is required:
  • Zero Trust Write
Create a device settings profilebash
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/devices/policy" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"allow_mode_switch": false,
		"allow_updates": false,
		"allowed_to_leave": false,
		"auto_connect": 600,
		"captive_portal": 180,
		"description": "Example device profile recommended in the implementation documentation. For details, refer to https://developers.cloudflare.com/learning-paths/replace-vpn/configure-device-agent/device-profiles/",
		"disable_auto_fallback": true,
		"enabled": true,
		"exclude_office_ips": false,
		"match": "identity.email in {\"[email protected]\"} or any(identity.groups.name[*] in {\"developers\" \"admin\"}) and os.name == \"windows\"",
		"name": "Example device profile",
		"precedence": 101,
		"service_mode_v2": {
				"mode": "warp"
		},
		"support_url": "https://support.example.com",
		"switch_locked": true
	}'
  1. cloudflare_api_token に次の権限を追加します。

    • Zero Trust Write
  2. cloudflare_zero_trust_device_custom_profile リソースで新しいプロファイルを作成します。

    resource "cloudflare_zero_trust_device_custom_profile" "example" {
    	account_id            = var.cloudflare_account_id
    	name                  = "Example device profile"
    	description           = "Example device profile recommended in the implementation documentation. For details, refer to https://developers.cloudflare.com/learning-paths/replace-vpn/configure-device-agent/device-profiles/"
    	allow_mode_switch     = false
    	allow_updates         = false
    	allowed_to_leave      = false
    	auto_connect          = 600
    	captive_portal        = 180
    	disable_auto_fallback = true
    	enabled               = true
    	exclude_office_ips    = false
    	precedence            = 101
    	service_mode_v2       = {mode = "warp"}
    	support_url           = "https://support.example.com"
    	switch_locked         = true
    	tunnel_protocol       = "wireguard"
    
    	match = trimspace(replace(<<-EOT
    		identity.email in {"[email protected]"}
    		or any(identity.groups.name[*] in {"developers" "admin"})
    		and os.name == "windows"
    	EOT
    	, "\n", " "))
    }

プロファイル設定を編集する

  1. Cloudflare ダッシュボードZero Trust > Team & Resources > Devices > Device profiles > General profiles を開きます。

  2. 更新する デバイスプロファイル を探し、Configure を選びます。

  3. セレクター で一致ルールを追加または調整し、必要に応じてこのプロファイルの デバイスクライアント設定 を変更します。

  4. Save profile を選びます。

新しく更新した設定がデバイスへ反映されるまで、最大 10 分かかることがあります。

デバイスプロファイルを確認する

ダッシュボードから

特定のデバイスの、最後に有効だったデバイスプロファイルを確認するには:

  1. Cloudflare ダッシュボードZero Trust > Team & Resources > Devices を開きます。
  2. デバイス一覧から対象のデバイスを探します。
  3. Last active device profile でデバイスプロファイルを確認します。

ユーザーのデバイスについて、最後に有効だったデバイスプロファイルを確認するには:

  1. Cloudflare ダッシュボードZero Trust > Team & Resources > Users を開きます。
  2. User name で調査したいユーザーを探します。
  3. Devices を選び、そのユーザーが使ったすべてのデバイスを表示します。
  4. 調査したいデバイスを探し、Device profile 列で、そのデバイスの最後に有効だったデバイスプロファイルを確認します。

または、DEX リモートキャプチャ でクライアント診断ログを収集できます。デバイスプロファイルの UUID は、検出レポートProfile ID に表示されます。

CLI から

デバイス上で現在使われているデバイスプロファイルとプロファイル設定を確認するには、ターミナルを開いて次を実行します。

warp-cli settings

デバイスプロファイルの UUID は Profile ID フィールドに表示されます。

セレクター

デバイスプロファイルは、次のセレクター(条件)に一致するように設定できます。アイデンティティベースのセレクターは、ユーザーがアイデンティティプロバイダー(IdP)にログインして デバイスを登録 した場合にだけ使えます。

ユーザーメール

ユーザーのメールにもとづいてデバイスプロファイルを適用します。

UI 名 API の例
User email identity.email == "[email protected]"

ユーザーグループのメール

ユーザーが IdP でメンバーとして設定されている IdP グループ のメールアドレスにもとづいて、デバイスプロファイルを適用します。

UI 名 API の例
User group emails identity.groups.email == "[email protected]"

ユーザーグループ ID

ユーザーが IdP でメンバーとして設定されている IdP グループ の ID にもとづいて、デバイスプロファイルを適用します。

UI 名 API の例
User group IDs identity.groups.id == "12jf495bhjd7893ml09o"

ユーザーグループ名

ユーザーが IdP でメンバーとして設定されている IdP グループ の名前にもとづいて、デバイスプロファイルを適用します。

UI 名 API の例
User group names identity.groups.name == "\"finance\""

オペレーティングシステム

デバイスのオペレーティングシステムにもとづいてデバイスプロファイルを適用します。

UI 名 API の例
Operating system os.name in {\"windows\" \"mac\"}

OS バージョン

デバイスの OS バージョン にもとづいてデバイスプロファイルを適用します。

UI 名 API の例
Operating system version os.version == \"1.2.0\"

マネージドネットワーク

デバイスが接続している マネージドネットワーク にもとづいてデバイスプロファイルを適用します。

UI 名 API の例
Managed network network == \"Austin office\"

SAML 属性

SAML IdP の属性名と値にもとづいてデバイスプロファイルを適用します。

UI 名 API の例
SAML Attributes identity.saml_attributes == "\"group=finance\""

サービストークン

デバイスの登録に使った サービストークン にもとづいてデバイスプロファイルを適用します。

UI 名 API の例
Service Token identity.service_token_uuid == \"f174e90a-fafe-4643-bbbc-4a0ed4fc8415\"

比較演算子

比較演算子は、デバイスプロファイルがセレクターにどう一致するかを決めます。

演算子 意味
is 定義した値と等しい
in 定義した値のいずれかと一致する

論理演算子

式内の複数の条件を評価するには、論理演算子を選びます。

演算子 意味
And 式内のすべての条件に一致する
Or 式内のいずれかの条件に一致する

優先順位

Cloudflare One Client は、階層に基づいてデバイスプロファイルを動的に評価します。デバイスが接続すると、クライアントはダッシュボードに表示されている上から下の順でプロファイルを確認します。最初に一致したプロファイルを採用します。デバイスがプロファイルに一致した時点で評価を止め、以降のプロファイルはその決定を上書きできません。

Default プロファイルは、常にリストの最下部にあります。上にあるどのプロファイルの条件も満たさない場合にだけ適用されます。別のカスタムプロファイルをデフォルトにすると、その設定はすべて Default プロファイルへコピーされます。

管理者は、ユーザー ID、場所、オペレーティングシステムなどの条件に応じて異なる設定を適用するため、複数のプロファイルを作成できます。正しいポリシーがデバイスに適用されるよう、この上から下への評価順を理解しておくことが重要です。

役に立ちましたか?