Cloudflare 浏览器隔离 (Browser Isolation) 与你的 Web 交付 Access 应用程序集成,以防止敏感应用程序的数据丢失。你可以构建 Access 策略,要求特定用户专门通过 Browser Isolation 访问你的应用程序,而匹配不同策略的其他用户则继续直接访问应用程序。例如,你可能希望为第三方承包商或没有企业设备的其他用户叠加额外的安全措施。
Cloudflare 将所有隔离流量通过我们的 Secure Web Gateway 检查引擎发送,该引擎允许你应用 Gateway HTTP 策略,例如:
- 限制特定操作和 HTTP 请求方法。
- 检查请求正文,以极其具体和受控的方式与数据丢失防护 (DLP) 配置文件相匹配,就像用户部署了终端 Agent 一样。
- 控制用户在隔离会话中的剪切与粘贴、上传和下载文件或打印能力。
您的浏览器必须在应用程序域上允许第三方 Cookie。
- 在 Cloudflare One ↗中,前往 Browser isolation > Browser isolation settings。
- 开启 Allow users to open a remote browser without the device client。
- 前往 Access controls(访问控制) > Applications(应用程序)。
- 选择一个自托管应用程序,然后选择 Configure(配置)。
- 前往 Policies(策略)。
- 选择一个 Allow 策略,然后选择 Configure(配置)。
- 在 Additional settings(其他设置) 下,开启 Isolate application。
- 保存策略。
浏览器隔离现已为匹配此策略的用户启用。用户登录 Access 后,应用程序将在远程浏览器中启动。要确认应用程序已被隔离,请参阅检查网页是否已隔离。
您可以选择为使用受管设备且不需要隔离的用户添加另一个 Allow 策略。
在以下示例中,策略 1 允许企业设备上的员工直接访问应用程序。不匹配策略 1 的用户(例如非托管设备上的员工和承包商)将在隔离浏览器中加载应用程序。
flowchart LR accTitle: 私有 Web 应用程序的 Access 策略 A[全职员工]-->policy1-->D B[承包商]-->policy2-->E subgraph C[Access 应用程序] policy1["策略 1: 允许通过设备姿态检查的员工"] policy2["策略 2: 允许并隔离承包商"] end D[正常浏览] E["应用 HTTP 策略的 隔离浏览"]
策略 1:允许通过设备姿态检查的员工
| Action(操作) | Rule type(规则类型) | Selector(选择器) | Value(值) |
|---|---|---|---|
| Allow(允许) | Include(包含) | Emails ending in(电子邮件结尾为) | @team.com |
| Require(要求) | Device Posture - Serial Number List(设备状况 - 序列号列表) | Corporate serial numbers |
| Additional settings(其他设置) | Status(状态) |
|---|---|
| Isolate application(隔离应用程序) | Disabled(已禁用) |
curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/access/apps/$APP_UUID/policies \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"decision": "allow",
"name": "Allow employees who pass device posture checks",
"include": [
{
"email_domain": {
"domain": "team.com"
}
}
],
"exclude": [],
"require": [
{
"device_posture": {
"integration_uid": "<SERIAL_NUMBER_LIST_UUID>"
}
}
],
"precedence": 1
}'要创建序列号列表,请参阅创建 Zero Trust 列表。
策略 2:允许并隔离承包商
| Action(操作) | Rule type(规则类型) | Selector(选择器) | Value(值) |
|---|---|---|---|
| Allow(允许) | Include(包含) | Emails ending in(电子邮件结尾为) | @team.com, @contractors.com |
| Additional settings(其他设置) | Status(状态) |
|---|---|
| Isolate application(隔离应用程序) | Enabled(已启用) |
curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/access/apps/$APP_UUID/policies \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"decision": "allow",
"name": "Allow and isolate contractors",
"include": [
{
"email_domain": {
"domain": "team.com"
}
},
{
"email_domain": {
"domain": "contractors.com"
}
}
],
"exclude": [],
"require": [],
"precedence": 2,
"isolation_required": true
}'防止非托管设备上的用户从你的私有应用程序下载任何文件。
| Selector(选择器) | Operator(运算符) | Value(值) | Logic(逻辑) | Action(操作) |
|---|---|---|---|---|
| Host(主机) | in | internal.site.com |
And(且) | Isolate(隔离) |
| Passed Device Posture Checks(已通过的设备状况检查) | not in | Corporate serial numbers |
| Policy settings | Status |
|---|---|
| Disable file downloads | Enabled |
curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"name": "Disable file downloads in isolated browser",
"conditions": [
{
"type": "traffic",
"expression": {
"in": {
"lhs": "http.request.host",
"rhs": [
"internal.site.com"
]
}
}
},
{
"type": "device_posture",
"expression": {
"any": {
"in": {
"lhs": {
"splat": "device_posture.checks.passed"
},
"rhs": [
"<SERIAL_NUMBER_LIST_UUID>"
]
}
}
}
}
],
"action": "isolate",
"precedence": 14002,
"enabled": true,
"description": "",
"rule_settings": {
"block_page_enabled": false,
"block_reason": "",
"biso_admin_controls": {
"dcp": false,
"dcr": false,
"dd": true,
"dk": false,
"dp": false,
"du": false
}
},
"filters": [
"http"
]
}'要创建序列号列表,请参阅创建 Zero Trust 列表。
阻断非托管设备上的用户下载包含信用卡号的文件。此逻辑需要两条策略:
-
策略 1:在隔离浏览器中禁用文件下载
-
策略 2:阻断信用卡号
| Selector(选择器) | Operator(运算符) | Value(值) | Logic(逻辑) | Action(操作) |
|---|---|---|---|---|
| Host(主机) | in | internal.site.com |
And(且) | Block(阻止) |
| DLP Profile | in | Financial Information | And(且) | |
| Passed Device Posture Checks | not in | Corporate serial numbers |
curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"name": "Block credit card numbers",
"conditions": [
{
"type": "traffic",
"expression": {
"and": [
{
"in": {
"lhs": "http.request.host",
"rhs": [
"internal.site.com"
]
}
},
{
"any": {
"in": {
"lhs": {
"splat": "dlp.profiles"
},
"rhs": [
"<DLP_PROFILE_UUID>"
]
}
}
}
]
}
},
{
"type": "device_posture",
"expression": {
"any": {
"in": {
"lhs": {
"splat": "device_posture.checks.passed"
},
"rhs": [
"<SERIAL_NUMBER_LIST_UUID>"
]
}
}
}
}
],
"action": "block",
"precedence": 14003,
"enabled": true,
"description": "",
"rule_settings": {
"block_page_enabled": false,
"block_reason": "",
"biso_admin_controls": null
},
"filters": [
"http"
]
}'