スケジュールされたDNSポリシー
Cloudflare Gatewayでは、定期的な時間間隔で有効化または無効化するために、任意のDNSポリシーを構成できます。
デフォルトでは、Gatewayポリシーはスケジュールされておらず、常に適用されます。Gateway Rules APIを使用して、新しいDNSポリシーをスケジュール付きで作成するか、既存のポリシーにスケジュールを追加できます。ポリシーをスケジュールするには、scheduleパラメータを希望する曜日、時間、およびオプションのタイムゾーンに設定して、POSTまたはPUTリクエストを送信します。スケジュールは、ポリシーの行を展開すると、Zero TrustのGateway > Firewall Policies > DNSに表示されます。
スケジュールにタイムゾーンを割り当てると、Gatewayはユーザーの位置に関係なく、そのタイムゾーンの現在の時間を常に使用します。これにより、特定の固定時間帯にポリシーを有効にできます。
タイムゾーンを指定しない場合、Gatewayはユーザーのローカルタイムゾーンに基づいてDNSポリシーを有効にします。ユーザーのタイムゾーンは、ソースIPアドレスのIPジオロケーションから推測されます。GatewayがソースIPからタイムゾーンを特定できない場合、クエリが受信されたデータセンターのタイムゾーンにフォールバックします。
以下のコマンドは、シカゴ(アメリカ)のタイムゾーンで、平日の午前8時から12時30分、午後1時30分から5時までfacebook.comをブロックするDNSポリシーを作成します。
curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/gateway/rules" \--header "X-Auth-Email: <EMAIL>" \--header "X-Auth-Key: <API_KEY>" \--header "Content-Type: application/json" \--data '{ "name": "office-no-facebook-policy", "action": "block", "traffic": "dns.fqdn == \"facebook.com\"", "enabled": true, "schedule": { "time_zone": "America/Chicago", "mon": "08:00-12:30,13:30-17:00", "tue": "08:00-12:30,13:30-17:00", "wed": "08:00-12:30,13:30-17:00", "thu": "08:00-12:30,13:30-17:00", "fri": "08:00-12:30,13:30-17:00" }}'すべてのタイムゾーンのリストについては、この表 ↗を参照してください。
以下のコマンドは、ユーザーが現在いるタイムゾーンで、週末のみclockin.comをブロックするDNSポリシーを作成します。
curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/gateway/rules" \--header "X-Auth-Email: <EMAIL>" \--header "X-Auth-Key: <API_KEY>" \--header "Content-Type: application/json" \--data '{ "name": "clock-in-policy", "action": "block", "traffic": "dns.fqdn == \"clockin.com\"", "enabled": true, "schedule": { "sat": "00:00-24:00", "sun": "00:00-24:00" }}'