Office 365 Cloud App Security
集成版本:19.0
使用场景
- 监控 Office 365 环境中的提醒
- 使用 CloudApp Security 数据调查安全突发事件。
配置 Office 365 Cloud App Security 以与 Google Security Operations 搭配使用
如需发出 API 请求,您必须能够使用 Cloud App Security API 令牌进行身份验证。当 Cloud App Security 发出 API 请求时,此令牌将包含在标头中。
如需获取安全 API 令牌,请登录 Microsoft Cloud App Security 门户。
在设置菜单中,依次选择安全扩展程序和 API 令牌。
点击加号按钮以生成新令牌,并提供一个名称以便日后识别该令牌。点击下一步。
生成新令牌后,系统会提供一个新网址,供您访问 Cloud App Security 门户。
在 Google SecOps 中配置 Office 365 云应用安全集成
有关如何在 Google SecOps 中配置集成的详细说明,请参阅配置集成。
集成参数
使用以下参数配置集成:
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
实例名称 | 字符串 | 不适用 | 否 | 您打算为其配置集成的实例的名称。 |
说明 | 字符串 | 不适用 | 否 | 实例的说明。 |
Cloud App Security 门户网址 | 字符串 | 不适用 | 是 | Cloud App Security 门户的网址。 |
Cloud App Security API 令牌 | 字符串 | 不适用 | 是 | 用于指定 Cloud App Security API 令牌以连接到该 API 的参数。如需了解详情,请参阅 API 令牌:https://go.microsoft.com/fwlink/?linkid=851419 |
远程运行 | 复选框 | 尚未核查 | 否 | 选中此字段,以便远程运行配置的集成。选中后,系统会显示用于选择远程用户(客服人员)的选项。 |
操作
批量解决提醒
说明
此操作用于在调查并降低风险后解决一个或多个提醒。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
提醒 ID | 字符串 | 不适用 | 是 | 提醒唯一标识符。可以接受以英文逗号分隔的多个 ID。 |
评论 | 字符串 | 已解决 | 否 | 用于说明为何解决了相应提醒的注释。 |
使用场景
Office 365 Cloud App Security 针对“不可能的行程”发出提醒。用户调查了此提醒,但无法确定从未知位置登录的用户。用户决定暂停用于登录的用户账号,直至另行通知。因此,用户会继续解决相应提醒。
Google SecOps 中的步骤:
- 连接器将提醒提取到系统中。
- 用户打开提醒后,经过调查,无法确认涉及的用户账号以及这些用户账号的登录位置。
- 用户对用户身份和登录位置不满意,因此暂停了该用户并设置相应提醒为已解决。
运行于
此操作不会在实体上运行。
操作执行结果
实体扩充
不适用
数据分析
不适用
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
N/A
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 如果成功: “以下提醒已成功解决:{Alert IDs}
如果出现错误: “出现了一些错误。请检查日志。 如果失败: “未解决任何提醒” |
常规 |
关闭提醒
说明
此操作用于关闭云应用安全中被认为不重要或不相关的提醒。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
提醒 ID | 字符串 | 不适用 | 是 | 提醒唯一标识符。此参数接受单个提醒 ID。 |
评论 | 字符串 | 不适用 | 否 | 用于说明为何关闭提醒的注释。 |
使用场景
两名不同的用户使用同一账号从两个不同的国家/地区登录 Office 365 Cloud App Security。这会导致系统发出警报,指出发生了不可能的行程。不过,这两个用户是已知用户,并且已确认,因此相应提醒并不相关。因此,系统会关闭相应提醒。
Google SecOps 中的步骤:
- 提醒由连接器提取到系统中。
- 用户打开此提醒并进行调查,以确认相关用户的用户名以及他们登录的地点。
- 用户对自己的身份和位置信息感到满意,因此关闭了相应提醒。
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
N/A
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 如果成功: “以下提醒已成功关闭:{Alert ID} 如果出现错误: “出现了一些错误。请检查日志。 如果失败: “未忽略任何提醒” |
常规 |
获取与 IP 相关的活动
说明
此操作用于查看与 IP 相关联的活动。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
活动显示限制 | 字符串 | 10 | 否 | 要显示的 activity 数量上限。 |
产品名称 | 字符串 | 全部 | 否 | 产品列表,用户可以在其中选择与 CloudApp Security 关联的应用,以便获取特定所选应用的 IP 相关活动。产品名称将转换为/映射到操作过滤器中的产品代码。例如,如果选择 Office 365,则应转换为 11161。 |
时间范围 | 字符串 | 24 | 是 | 指定要提取的活动数量,这些活动发生在指定的小时数之前。 |
使用场景
系统会针对“来自不常访问的国家/地区的活动”发出提醒。提醒中会显示涉及相应活动的 IP 地址,用户希望查看与此 IP 地址相关的更多活动,以便协助调查。
Google SecOps 中的步骤:
- 系统收到提醒。
- 用户从提醒事件中获取了更多来自事件数据的丰富信息,并决定调查所用的 IP 地址。
- 用户查找 IP 地址丰富信息,以检查其之前参与的活动。
运行于
此操作在 IP 地址实体上运行。
操作执行结果
实体扩充
扩充项字段名称 | 逻辑 - 适用情形 |
---|---|
uid | 返回 JSON 结果中是否存在相应值 |
eventRouting | 返回 JSON 结果中是否存在相应值 |
appName | 返回 JSON 结果中是否存在相应值 |
eventType | 返回 JSON 结果中是否存在相应值 |
内部 | 返回 JSON 结果中是否存在相应值 |
aadTenantId | 返回 JSON 结果中是否存在相应值 |
session | 返回 JSON 结果中是否存在相应值 |
createdRaw | 返回 JSON 结果中是否存在相应值 |
userAgent | 返回 JSON 结果中是否存在相应值 |
resolvedActor | 返回 JSON 结果中是否存在相应值 |
说明 | 返回 JSON 结果中是否存在相应值 |
实例化 | 返回 JSON 结果中是否存在相应值 |
和程度上减少 | 返回 JSON 结果中是否存在相应值 |
saasId | 返回 JSON 结果中是否存在相应值 |
位置 | 返回 JSON 结果中是否存在相应值 |
timestampRaw | 返回 JSON 结果中是否存在相应值 |
eventTypeValue | 返回 JSON 结果中是否存在相应值 |
description_id | 返回 JSON 结果中是否存在相应值 |
时间戳 | 返回 JSON 结果中是否存在相应值 |
eventTypeName | 返回 JSON 结果中是否存在相应值 |
用户 | 返回 JSON 结果中是否存在相应值 |
appId | 返回 JSON 结果中是否存在相应值 |
device | 返回 JSON 结果中是否存在相应值 |
description_metadata | 返回 JSON 结果中是否存在相应值 |
分类 | 返回 JSON 结果中是否存在相应值 |
已创建 | 返回 JSON 结果中是否存在相应值 |
entityData | 返回 JSON 结果中是否存在相应值 |
tenantId | 返回 JSON 结果中是否存在相应值 |
instantiationRaw | 返回 JSON 结果中是否存在相应值 |
confidenceLevel | 返回 JSON 结果中是否存在相应值 |
mainInfo | 返回 JSON 结果中是否存在相应值 |
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
[
{
"EntityResult": [
{
"uid": "88814735_1574155880562_520d653579254156823c4f21fe09a522",
"eventRouting":
{
"auditing": true
},
"appName": "Microsoft Cloud App Security",
"eventType": 917504,
"internals":
{
"otherIPs": ["8.8.8.8"]
},
"aadTenantId": "d48f52ca-5b1a-4708-8ed0-ebb98a26a46a",
"session":
{
"sessionId": "ad0bd5e207f2aaa97e7438ec2f6086310e2577842e711cb2a101b724d83ddd83"
},
"createdRaw": 1574156346552,
"userAgent":
{
"major": "78",
"family": "CHROME",
"nativeBrowser": false,
"os": "mac_os",
"typeName": "Browser",
"version": "78.0.3904.97",
"deviceType": "DESKTOP",
"browser": "CHROME",
"type": "Browser",
"operatingSystem":
{
"name": "OS X",
"family": "Mac OS"
},
"minor": "0",
"name": "Chrome"
},
"resolvedActor":
{
"resolved": true,
"name": "User Name - Test User Spec",
"tags": ["5da46fb69eb3f06b037b409a"],
"instanceId": "0",
"saasId": "11161",
"role": "4",
"objType": "23",
"id": "8ef1de18-71c0-4a88-88da-019c1fbf1308"
},
"description": "Log on",
"instantiation": 1574156346470,
"severity": "INFO",
"saasId": 20595,
"location":
{
"category": 0,
"city": "SomeCity",
"countryCode": "AM",
"region": "SomeCity",
"longitude": 11.1111,
"anonymousProxy": false,
"regionCode": "ER",
"isSatelliteProvider": false,
"latitude": 11.1111,
"categoryValue": "NONE",
"organizationSearchable": "GNC-Alfa CJSC"
},
"timestampRaw": 1574155880562,
"eventTypeValue": "EVENT_ADALLOM_LOGIN",
"description_id": "EVENT_DESCRIPTION_LOGIN",
"timestamp": 1574155880562,
"eventTypeName": "EVENT_CATEGORY_LOGIN",
"user":
{
"userName": "SomeCity",
"userTags": ["5da46fb69eb3f06b037b409a"]
},
"appId": 20595,
"device":
{
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.97 Safari/537.36",
"clientIP": "8.8.8.8",
"countryCode\": "AM"
},
"description_metadata":
{
"dash": " ",
"colon": " ",
"event_category": "Log on"
},
"classifications": ["access"],
"created": 1574156346552,
"entityData":
{
"1": null,
"0":
{
"resolved": true,
"displayName": "User Name - Test User Spec",
"id":
{
"saas": 11161, "inst": 0,
"id": "SomeCity"
}},
"2":
{
"resolved": true,
"displayName": "User Name - Test User Spec",
"id":
{
"saas": 11161,
"inst": 0,
"id": "8ef1de18-71c0-4a88-88da-019c1fbf1308"
}}},
"tenantId": 88814735,
"instantiationRaw": 1574156346470,
"confidenceLevel": 30,
"mainInfo":
{
"eventObjects": [
{
"resolved": true,
"name": "User Name - Test User Spec",
"tags": [],
"instanceId": 0,
"saasId": 11161,
"role": 4,
"objType": 21,
"link": -407163459,
"id": "SomeCity"
}, {
"resolved": true,
"name": "User Name - Test User Spec",
"tags": ["5da46fb69eb3f06b037b409a"],
"instanceId": 0,
"saasId": 11161,
"role": 4,
"objType": 23,
"link": -407163459,
"id": "8ef1de18-71c0-4a88-88da-019c1fbf1308"
}],
"rawOperationName": "login",
"activityResult":
{
"isSuccess": true
},
"type": "login",
"prettyOperationName": "login"
},
"_id": "88814735_1574155880562_520d653579254156823c4f21fe09a522",
"genericEventType": "ENUM_ACTIVITY_GENERIC_TYPE_LOGIN"
}],
"Entity": "7.7.7.7"
}
]
案例墙
结果类型 | 值/说明 | 类型 |
---|---|---|
输出消息* | 如果成功: “已提取以下用户的相关活动:{username}”
如果出现错误: “出现了一些错误。请检查日志。 如果失败: “未找到与提醒相关的活动” |
常规 |
表 | 列:活动、用户、位置、IP 地址、设备、日期 | 常规 |
获取与用户相关的活动
说明
该操作用于查看与用户相关的活动。此操作中使用的用户账号。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
活动显示限制 | 字符串 | 10 | 否 | 要显示的 activity 数量上限。 |
时间范围 | 字符串 | 24 | 是 | 指定要提取的活动数量,这些活动发生在指定的小时数之前。 |
产品名称 | 字符串 | 全部 | 否 | 用户可以选择与 Cloud App Security 关联的应用的产品列表,以便获取特定所选应用的用户相关活动。产品名称应转换为/映射到操作过滤器中的产品代码。例如,如果选择 Office 365,则应转换为 11161。 |
使用场景
系统会针对“来自不常访问的国家/地区的活动”发出提醒。系统会记录涉及的用户名,用户希望查看与所涉及用户名相关的更多活动,以协助调查。
Google SecOps 中的步骤:
- 系统收到提醒。
- 通过提醒事件,用户可以获取更多包含用户名的丰富信息,从而有助于调查异常活动。
- 用户会根据自己参与过的活动来寻找用户丰富化。
运行于
此操作在 User 实体上运行。
操作执行结果
实体扩充
扩充项字段名称 | 逻辑 - 适用情形 |
---|---|
uid | 返回 JSON 结果中是否存在相应值 |
eventRouting | 返回 JSON 结果中是否存在相应值 |
appName | 返回 JSON 结果中是否存在相应值 |
eventType | 返回 JSON 结果中是否存在相应值 |
内部 | 返回 JSON 结果中是否存在相应值 |
aadTenantId | 返回 JSON 结果中是否存在相应值 |
session | 返回 JSON 结果中是否存在相应值 |
createdRaw | 返回 JSON 结果中是否存在相应值 |
userAgent | 返回 JSON 结果中是否存在相应值 |
resolvedActor | 返回 JSON 结果中是否存在相应值 |
说明 | 返回 JSON 结果中是否存在相应值 |
实例化 | 返回 JSON 结果中是否存在相应值 |
和程度上减少 | 返回 JSON 结果中是否存在相应值 |
saasId | 返回 JSON 结果中是否存在相应值 |
位置 | 返回 JSON 结果中是否存在相应值 |
timestampRaw | 返回 JSON 结果中是否存在相应值 |
eventTypeValue | 返回 JSON 结果中是否存在相应值 |
description_id | 返回 JSON 结果中是否存在相应值 |
时间戳 | 返回 JSON 结果中是否存在相应值 |
eventTypeName | 返回 JSON 结果中是否存在相应值 |
用户 | 返回 JSON 结果中是否存在相应值 |
appId | 返回 JSON 结果中是否存在相应值 |
device | 返回 JSON 结果中是否存在相应值 |
description_metadata | 返回 JSON 结果中是否存在相应值 |
分类 | 返回 JSON 结果中是否存在相应值 |
已创建 | 返回 JSON 结果中是否存在相应值 |
entityData | 返回 JSON 结果中是否存在相应值 |
tenantId | 返回 JSON 结果中是否存在相应值 |
instantiationRaw | 返回 JSON 结果中是否存在相应值 |
confidenceLevel | 返回 JSON 结果中是否存在相应值 |
mainInfo | 返回 JSON 结果中是否存在相应值 |
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
[
{
"EntityResult": [
{
"uid": "88814735_1574244328290_714fdcea1316483e88072f0f2a068ec7",
"eventRouting":
{
"auditing": true,
"adminEvent": true
},
"appName": "Microsoft Cloud App Security",
"eventType": 917544,
"internals":
{
"otherIPs": ["8.8.8.8"]
},
"aadTenantId": "d48f52ca-5b1a-4708-8ed0-ebb98a26a46a",
"session":
{
"sessionId": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
"createdRaw": 1574244328339,
"userAgent":
{
"nativeBrowser": false,
"family": "UNKNOWN",
"os": "OTHER",
"typeName": "Unknown",
"deviceType": "OTHER",
"browser": "UNKNOWN",
"type": "Unknown",
"operatingSystem":
{
"name": "Unknown",
"family": "Unknown"
},
"name": "Unknown"
},
"resolvedActor":
{
"resolved": true,
"name": "User Name - Test User Spec",
"tags": ["5da46fb69eb3f06b037b409a"],
"instanceId": "0",
"saasId": "11161",
"role": "4",
"objType": "23",
"id": "8ef1de18-71c0-4a88-88da-019c1fbf1308"
},
"description": "Dismiss alert <b>Impossible travel activity</b>",
"instantiation": 1574244328322,
"severity": "INFO",
"saasId": 20595,
"location":
{
"category": 0,
"countryCode": "CY",
"longitude": 33.0,
"anonymousProxy": false,
"isSatelliteProvider": false,
"latitude": 11.0,
"categoryValue": "NONE",
"organizationSearchable": "SomeOrganization Ltd."
},
"adallom":
{
"alertSeverityValue": 1,
"count": 1,
"sendFeedback": false,
"feedback": " ",
"alertDate": "2019-11-13T14:29:06.0520000Z",
"title": "Impossible travel activity",
"alertTypeId": 15859716,
"handledByUser": "some@address2.email",
"alertSeverity": 1,
"alertBulk": false,
"alertMongoId": "5dcc13ab47654055292459d7",
"alertTitle": "Impossible travel activity",
"contact_email": " ",
"allowContact": false,
"licenses": ["AdallomDiscovery",
"AdallomStandalone",
"AdallomForO365",
"AdallomForAATP"],
"isBulkDismissed": false,
"dismissId": "5dd50fe869d303b914d188ca",
"alertTimestamp": 1573655346052,
"alertUid": "VelocityDetection|88814735_11161_0_8ef1de18-71c0-4a88-88da-019c1fbf1308|[2019-11-13]_[(SK,US)]",
"alertScore": "32",
"alertActor": "11161|0|8ef1de18-71c0-4a88-88da-019c1fbf1308"
},
"timestampRaw": 1574244328290,
"eventTypeValue": "EVENT_ADALLOM_ALERT_DISMISSED",
"tags": ["000000110000000000000000"],
"description_id": "EVENT_ADALLOM_ALERT_DISMISSED",
"timestamp": 1574244328290,
"eventTypeName": "EVENT_CATEGORY_DISMISS_ALERT",
"user":
{
"userName": "some@address2.email",
"userTags": ["5da46fb69eb3f06b037b409a"]
},
"appId": 20595,
"device":
{
"userAgent": "unknown",
"clientIP": "8.8.8.8",
"countryCode": "CY"
},
"description_metadata":
{
"adallom_title": "Impossible travel activity"
},
"classifications": [],
"created": 1574244328339,
"entityData":
{
"1": null,
"0":
{
"resolved": true,
"displayName": "User Name - Test User Spec",
"id":
{
"saas": 11161,
"inst": 0,
"id": "some@address2.email"
}},
"2":
{
"resolved": true,
"displayName": "User Name - Test User Spec",
"id":
{
"saas": 11161,
"inst": 0,
"id": "8ef1de18-71c0-4a88-88da-019c1fbf1308"
}}},
"tenantId": 88814735,
"instantiationRaw": 1574244328322,
"mainInfo":
{
"eventObjects": [
{
"resolved": true,
"name": "User Name - Test User Spec",
"tags": [],
"instanceId": 0,
"saasId": 11161,
"role": 4,
"objType": 21,
"link": -407163459,
"id": "some@address2.email"
}, {
"resolved": true,
"name": "User Name - Test User Spec",
"tags": ["5da46fb69eb3f06b037b409a"],
"instanceId": 0,
"saasId": 11161,
"role": 4,
"objType": 23,
"link": -407163459,
"id": "8ef1de18-71c0-4a88-88da-019c1fbf1308"
}],
"type": "unknown"
},
"_id": "88814735_1574244328290_714fdcea1316483e88072f0f2a068ec7",
"genericEventType": "ENUM_ACTIVITY_GENERIC_TYPE_UNKNOWN"
},
"Entity": "some@email.address"
}
]
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 如果成功: 已提取以下 IP 的相关提醒活动:{ip}
如果出现错误: “出现了一些错误。请检查日志。 如果失败: “未找到与提醒相关的活动” |
常规 |
表 | 列:活动、用户、位置、IP 地址、设备、日期 | 常规 |
Ping
说明
此操作用于测试连接。
参数
不适用
使用场景
用户更改了系统配置,并希望测试新配置下的连接是否成功。
Google SecOps 中的步骤:
- 修改系统配置。
- 测试连接性。
运行于
此操作会在所有实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
N/A
关闭提醒
说明
在 Microsoft Cloud App Security 中关闭提醒。
参数
参数显示名称 | 类型 | 默认值 | 是必填字段 | 说明 |
---|---|---|---|---|
提醒 ID | 字符串 | 不适用 | 是 | 指定需要关闭并标记为良性的提醒的 ID。 |
评论 | 字符串 | 不适用 | 否 | 指定有关提醒为何关闭并标记为良性的评论。 |
州 | DDL | 真正例 可能的值: 良性 假正例 真正例 |
是 | 指定提醒应处于什么状态。 |
原因 | DDL | 无原因 可能的值: 无原因 实际严重程度较低 其他 已与最终用户确认 由测试触发 不感兴趣 类似提醒过多 警报不准确 |
否 | 指定应关闭相应提醒的原因。注意:如果状态为“True Positive”,此参数不会产生影响。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
案例墙
结果类型 | 值/说明 | 类型 |
---|---|---|
输出消息* |
操作不应失败,也不应停止 playbook 执行: 如果 closed_benign/close_false_positive/close_true_positive == 0:“执行操作“{}”时出错。原因:在 Microsoft Cloud App Security 中未找到 ID 为 {alert ID} 的提醒” 如果“良性”状态的原因不正确:“执行操作‘{}’时出错。原因:为‘良性’状态的‘原因’参数选择了无效值。”有效值:No Reason、Actual Severity Is Lower、Other、Confirmed With End User、Triggered By Test。" 如果状态“误报”的原因不正确:“执行操作“{}”时出错。原因:为状态“误报”的“原因”参数选择了无效值。有效值:No Reason、Not Of Interest、Too Many Similar Alerts、Alert Is Not Accurate、Other。 |
常规 |
丰富实体
说明
使用 Microsoft Cloud App Security 中的信息丰富实体。支持的实体:用户名。
参数
不适用
运行于
此操作在“用户名”实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
{
"type": 2,
"status": 2,
"displayName": "Aviel",
"id": "2600d017-84a1-444f-94ba-4bebed30b09e",
"_id": "5ea18b77c84b3e8dd20ead9b",
"userGroups": [
{
"_id": "5da46fb69eb3f06b037b409b",
"id": "5da46fb69eb3f06b037b409a",
"name": "Office 365 administrator",
"description": "Company administrators, user account administrators, helpdesk administrators, service support administrators, and billing administrators",
"usersCount": 20,
"appId": 11161
}
],
"identifiers": [],
"sid": null,
"appData": {
"appId": 11161,
"name": "Office 365",
"saas": 11161,
"instance": 0
},
"isAdmin": true,
"isExternal": false,
"email": "john.doe@siemplifycyarx.onmicrosoft.com",
"role": "Global Administrator",
"organization": null,
"domain": "siemplifycyarx.onmicrosoft.com",
"scoreTrends": {
"20220609": {}
},
"subApps": [],
"threatScore": 0,
"idType": 1,
"isFake": false,
"ii": "11161|0|2600d017-84a1-444f-94ba-4bebed30b09e",
"actions": [
{
"task_name": "ConfirmUserCompromisedTask",
"display_title": "TASKS_ADALIBPY_CONFIRM_USER_COMPROMISED_DISPLAY_TITLE",
"type": "user",
"governance_type": null,
"bulk_support": null,
"has_icon": true,
"display_description": {
"template": "TASKS_ADALIBPY_CONFIRM_USER_COMPROMISED_DISPLAY_DESCRIPTION_O365",
"parameters": {
"user": "john.doe@siemplifycyarx.onmicrosoft.com"
}
},
"bulk_display_description": "TASKS_ADALIBPY_CONFIRM_USER_COMPROMISED_BULK_DISPLAY_DESCRIPTION_O365",
"preview_only": false,
"display_alert_text": "TASKS_ADALIBPY_CONFIRM_USER_COMPROMISED_DISPLAY_ALERT_TEXT",
"display_alert_success_text": "TASKS_ADALIBPY_CONFIRM_USER_COMPROMISED_DISPLAY_ALERT_SUCCESS_TEXT",
"is_blocking": null,
"confirm_button_style": "red",
"optional_notify": null,
"uiGovernanceCategory": null,
"alert_display_title": null,
"confirmation_button_text": null,
"confirmation_link": null
}
],
"username": "{\"id\": \"2600d017-84a1-444f-94ba-4bebed30b09e\", \"saas\": 11161, \"inst\": 0}",
"sctime": 1655255102926,
"accounts": [
{
"_id": "fa-5ea18b77c84b3e8dd20ead9b-12260",
"i": "2600d017-84a1-444f-94ba-4bebed30b09e",
"ii": "11161|0|2600d017-84a1-444f-94ba-4bebed30b09e",
"inst": 0,
"saas": 12260,
"t": 1,
"dn": "Aviel",
"ext": false,
"s": 2,
"aliases": [
"2600d017-84a1-444f-94ba-4bebed30b09e",
"aviel",
"john.doe@siemplifycyarx.onmicrosoft.com",
"john.doe"
],
"isFake": true,
"pa": "john.doe@siemplifycyarx.onmicrosoft.com",
"em": "john.doe@siemplifycyarx.onmicrosoft.com",
"sublst": [],
"p": "11161|0|2600d017-84a1-444f-94ba-4bebed30b09e",
"appData": {
"appId": 12260,
"name": "Microsoft Azure"
},
"actions": []
}
],
"threatScoreHistory": [
{
"dateFormatted": "20220719",
"dateUtc": 1658238168000,
"score": 0,
"percentile": 0,
"breakdown": {}
}
]
}
实体扩充 - 前缀 MCAS_
扩充项字段名称 | 逻辑 - 应用场景 | |
---|---|---|
is_admin | isAdmin | 以 JSON 格式提供时 |
is_external | isExternal | 以 JSON 格式提供时 |
角色 | 角色 | 以 JSON 格式提供时 |
电子邮件 | 电子邮件 | 以 JSON 格式提供时 |
域名 | 域名 | 以 JSON 格式提供时 |
threat_score | threatScore | 以 JSON 格式提供时 |
is_fake | isFake | 以 JSON 格式提供时 |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果某个实体的数据可用 (is_success=true):“已使用来自 Microsoft Cloud App Security 的信息成功扩充以下实体:{entity.identifier}”。 如果某个实体没有数据 (is_success=true):“无法使用 Microsoft Cloud App Security 中的信息来丰富以下实体:{entity.identifier}”。 如果并非所有实体都有数据 (is_success=false):“未扩充任何提供的实体。” 操作应失败并停止 playbook 执行: 如果报告了致命错误(例如凭据错误、无法连接到服务器、其他错误):“Error executing action "Enrich Entities". 原因:{0}''.format(error.Stacktrace) |
常规 |
“案例墙”表格 | 表格名称:{entity.identifier} 表格列:
|
实体 |
创建 IP 地址范围
说明
在 Microsoft Cloud App Security 中创建 IP 地址范围。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
名称 | 字符串 | 不适用 | 是 | 指定 IP 地址范围的名称。 |
类别 | DDL | 公司 可能的值:
|
是 | 指定 IP 地址范围的类别。 |
组织 | 字符串 | 不适用 | 否 | 指定 IP 地址范围的组织。 |
子网 | CSV | 不适用 | 是 | 为 IP 地址范围指定以英文逗号分隔的子网列表。 |
标记 | CSV | 不适用 | 否 | 为 IP 地址范围指定以英文逗号分隔的标记列表。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
{
"_id": "62d684ac92adb26e3a84dd52",
"name": "range name",
"subnets": [
{
"mask": 120,
"address": "0000:0000:0000:0000:0000:ffff:c0a8:0100",
"originalString": "192.168.1.0/24"
},
{
"mask": 112,
"address": "0000:0000:0000:0000:0000:ffff:c0a8:0000",
"originalString": "192.168.2.0/16"
}
],
"location": null,
"organization": "Microsoft",
"tags": [
{
"_id": "62d684ac6025f11b4b3a4a3b",
"_tid": 88814735,
"name": "existing tag",
"target": 1,
"type": 0,
"id": "62d684ac92adb26e3a84dd51",
"status": 0
}
],
"category": 5,
"lastModified": 1658225836921.4104,
"_tid": 88814735
}
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果报告了 200 状态代码 (is_success=true):“已在 Microsoft Cloud App Security 中成功创建 IP 地址范围”。 操作应失败并停止 playbook 执行: 如果报告了严重错误:“Error executing action "{}". Reason: " {0}".format(exception.stacktrace) 如果响应中报告了错误:“执行操作 "{}" 时出错。原因:" {0}".format(csv of errors/error) |
常规 |
将 IP 添加到 IP 地址范围
说明
在 Microsoft Cloud App Security 中向 IP 地址范围添加 IP 地址。支持的实体:IP 地址。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
名称 | 字符串 | 不适用 | 是 | 指定需要更新的 IP 地址范围的名称。 |
运行于
此操作在 IP 地址实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
{
"_id": "62d684ac92adb26e3a84dd52",
"name": "range name",
"subnets": [
{
"mask": 120,
"address": "0000:0000:0000:0000:0000:ffff:c0a8:0100",
"originalString": "192.168.1.0/24"
},
{
"mask": 112,
"address": "0000:0000:0000:0000:0000:ffff:c0a8:0000",
"originalString": "192.168.2.0/16"
}
],
"location": null,
"organization": "Microsoft",
"tags": [
{
"_id": "62d684ac6025f11b4b3a4a3b",
"_tid": 88814735,
"name": "existing tag",
"target": 1,
"type": 0,
"id": "62d684ac92adb26e3a84dd51",
"status": 0
}
],
"category": 5,
"lastModified": 1658225836921.4104,
"_tid": 88814735
}
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果一个实体的操作成功 (is_success=true): “已成功将以下 IP 添加到 Microsoft Cloud App Security 中的 {name} IP 地址范围:{entity.identifier}”。 如果某个实体的操作不成功(is_success=true): “无法将以下 IP 添加到 Microsoft Cloud App Security 中的 {name} IP 地址范围:{entity.identifier}”。 如果 IP 地址已存在 (is_success=true): “以下 IP 已是 Microsoft Cloud App Security 中 {name} IP 地址范围的一部分:{entity.identifier}”。 如果未添加任何 IP 地址 (is_success=false): print "None of the IPs were added to the IP Address Range in Microsoft Cloud App Security." 操作应失败并停止 playbook 执行: 如果报告了严重错误:“Error executing action "{}". Reason: " {0}".format(exception.stacktrace) 如果找不到 IP 地址范围:“执行操作 "{}" 时出错。原因:在 Microsoft Cloud App Security 中找不到 IP 地址范围 {name}。请检查拼写。”{0}".format(exception.stacktrace) |
常规 |
从 IP 地址范围中移除 IP
说明
从 Microsoft Cloud App Security 中的 IP 地址范围中移除 IP 地址。 支持的实体:IP 地址。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
名称 | 字符串 | 不适用 | 是 | 指定需要更新的 IP 地址范围的名称。 |
运行于
此操作在 IP 地址实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
{
"_id": "62d684ac92adb26e3a84dd52",
"name": "range name",
"subnets": [
{
"mask": 120,
"address": "0000:0000:0000:0000:0000:ffff:c0a8:0100",
"originalString": "192.168.1.0/24"
},
{
"mask": 112,
"address": "0000:0000:0000:0000:0000:ffff:c0a8:0000",
"originalString": "192.168.2.0/16"
}
],
"location": null,
"organization": "Microsoft",
"tags": [
{
"_id": "62d684ac6025f11b4b3a4a3b",
"_tid": 88814735,
"name": "existing tag",
"target": 1,
"type": 0,
"id": "62d684ac92adb26e3a84dd51",
"status": 0
}
],
"category": 5,
"lastModified": 1658225836921.4104,
"_tid": 88814735
}
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果成功移除一个实体 (is_success=true):“已成功从 Microsoft Cloud App Security 中的 {name} IP 地址范围移除以下 IP:{entity.identifier}”。 如果某个实体的操作不成功(is_success=true): “操作无法在 Microsoft Cloud App Security 中找到并移除 {name} IP 地址范围内的以下 IP 地址:{entity.identifier}”。 如果并非所有实体都成功(is_success=true): “在 Microsoft Cloud App Security 中未找到任何 IP,因此未移除任何 IP。” 操作应失败并停止 playbook 执行: 如果报告了严重错误:“Error executing action "{}". Reason: " {0}".format(exception.stacktrace) 如果找不到地址范围:“执行操作“{}”时出错。原因:在 Microsoft Cloud App Security 中找不到 IP 地址范围 {name}。请检查拼写。”{0}".format(exception.stacktrace) |
常规 |
列出文件
说明
列出 Microsoft Cloud App Security 中的可用文件。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
过滤键 | DDL | 选择一项 可能的值:
|
否 | 指定需要用于过滤文件的键。 “文件类型”的可能值:其他、文档、电子表格、演示、文本、图片、文件夹。 “分享状态”的可能值:公开(互联网)、公开、外部、内部、私密。 |
过滤逻辑 | DDL | 未指定 可能的值:
|
否 | 指定应应用的过滤条件逻辑。 过滤逻辑基于“过滤键”参数中提供的值。 注意:只有“文件名”和“ID”过滤键可与“包含”逻辑搭配使用。 |
过滤条件值 | 字符串 | 不适用 | 否 | 指定应在过滤条件中使用的值。 如果选择“等于”,操作会尝试在结果中查找完全匹配项。 如果选择“包含”,该操作会尝试查找包含相应子字符串的结果。 如果此参数中未提供任何内容,则不会应用过滤条件。 过滤逻辑基于“过滤键”参数中提供的值。 |
要返回的记录数上限 | 整数 | 50 | 否 | 指定要返回的记录数。 如果未提供任何内容,该操作会返回 50 条记录。 注意:对于“包含”逻辑,连接器只会查看 1, 000 个结果以进行匹配。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
JSON 结果
{
"_id": "62cffdf1c0ff22b978334963",
"_tid": 88814735,
"appId": 15600,
"id": "c58ea974-5511-4cf3-b12b-e1e0cabce8a0|187525f2-5280-4076-adc7-c85311daed1a",
"alternateLink": "https://siemplifycyarx-my.sharepoint.com/personal/james_bond_siemplifycyarx_onmicrosoft_com/Documents/Malvertisement-master",
"collaborators": [],
"createdDate": 1657797767000,
"domains": [
"siemplifycyarx.onmicrosoft.com"
],
"driveId": "c58ea974-5511-4cf3-b12b-e1e0cabce8a0|eca285b0-1cc1-49e5-a178-7a77507cbdea",
"effectiveParents": [
"c58ea974-5511-4cf3-b12b-e1e0cabce8a0|862dfe31-b358-4e27-9660-52ed97fb4955",
"c58ea974-5511-4cf3-b12b-e1e0cabce8a0|eca285b0-1cc1-49e5-a178-7a77507cbdea"
],
"emails": [
"james.bond@siemplifycyarx.onmicrosoft.com"
],
"externalShares": [],
"facl": 0,
"fileAccessLevel": [
0,
"PRIVATE"
],
"filePath": "/personal/james_bond_siemplifycyarx_onmicrosoft_com/Documents/Malvertisement-master",
"fileSize": null,
"fileStatus": [
0,
"EXISTS"
],
"fstat": 0,
"graphId": "016XQ77WHSEV2RRACSOZAK3R6IKMI5V3I2",
"groupIds": [],
"groups": [],
"instId": 0,
"isFolder": true,
"isForeign": false,
"listId": "374dcd9b-dcff-46c6-b927-ad5411695361",
"modifiedDate": 1657797768000,
"name": "Malvertisement-master",
"noGovernance": false,
"ownerAddress": "james.bond@siemplifycyarx.onmicrosoft.com",
"ownerExternal": false,
"ownerName": "ג'יימס בונד",
"parentId": "c58ea974-5511-4cf3-b12b-e1e0cabce8a0|862dfe31-b358-4e27-9660-52ed97fb4955",
"parentIds": [
"c58ea974-5511-4cf3-b12b-e1e0cabce8a0|862dfe31-b358-4e27-9660-52ed97fb4955"
],
"saasId": 15600,
"scanVersion": 4,
"sharepointItem": {
"UniqueId": "187525f2-5280-4076-adc7-c85311daed1a",
"hasUniqueRoleAssignments": false,
"Author": {
"name": "ג'יימס בונד",
"idInSiteCollection": "4",
"sipAddress": "james.bond@siemplifycyarx.onmicrosoft.com",
"sourceBitmask": 0,
"trueEmail": "james.bond@siemplifycyarx.onmicrosoft.com",
"externalUser": false,
"oneDriveEmail": "james.bond@siemplifycyarx.onmicrosoft.com",
"LoginName": "i:0#.f|membership|james.bond@siemplifycyarx.onmicrosoft.com",
"Email": "james.bond@siemplifycyarx.onmicrosoft.com",
"Title": "ג'יימס בונד"
}
},
"siteCollection": "/personal/james_bond_siemplifycyarx_onmicrosoft_com",
"siteCollectionId": "c58ea974-5511-4cf3-b12b-e1e0cabce8a0",
"sitePath": "/personal/james_bond_siemplifycyarx_onmicrosoft_com",
"snapshotLastModifiedDate": "2022-07-14T13:12:14.906Z",
"spDomain": "https://siemplifycyarx-my.sharepoint.com",
"unseenScans": 0,
"cabinetMatchedRuleVersions": [
"605362e8dace7f169f3b05b0"
],
"cabinetState": [
"605362e8dace7f169f3b05b1"
],
"lastGlobalMatchDate": "2022-07-14T11:29:11.206Z",
"name_l": "malvertisement-master",
"originalId": "62cffdf1c0ff22b978334963",
"dlpScanResults": [],
"fTags": [],
"enriched": true,
"display_collaborators": [],
"appName": "Microsoft OneDrive for Business",
"actions": [
{
"task_name": "RescanFileTask",
"display_title": "TASKS_ADALIBPY_RESCAN_FILE_DISPLAY_TITLE",
"type": "file",
"governance_type": null,
"bulk_support": true,
"has_icon": true,
"display_description": null,
"bulk_display_description": null,
"preview_only": false,
"display_alert_text": null,
"display_alert_success_text": null,
"is_blocking": null,
"confirm_button_style": "red",
"optional_notify": null,
"uiGovernanceCategory": 0,
"alert_display_title": null,
"confirmation_button_text": null,
"confirmation_link": null
}
]
}
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果数据可用(is_success=true):“Successfully found files for the provided criteria in Microsoft Cloud App Security”(已成功在 Microsoft Cloud App Security 中找到符合所提供条件的文件)。 如果数据不可用 (is_success=false):“未在 Microsoft Cloud App Security 中找到符合所提供条件的文件” 如果“过滤条件值”参数为空 (is_success=true): “未应用过滤条件,因为参数‘过滤条件值’的值为空。” 操作应失败并停止 playbook 执行: 如果“过滤键”设置为“选择一个”,且“过滤逻辑”设置为“等于”或“包含”:执行操作“{action name}”时出错。原因:您需要从“过滤键”参数中选择一个字段。 如果为“要返回的最大记录数”参数提供的值无效:“执行操作‘{action name}’时出错。原因:为“要返回的最大记录数”提供的值无效:。应提供正数”。 如果报告了致命错误(例如凭据错误、未连接到服务器、其他错误): “执行操作‘{action name}’时出错。原因:{0}''.format(error.Stacktrace) 如果“过滤键”设置为“分享状态”或“文件类型”,且“过滤逻辑”设置为“包含”:“执行操作‘{action name}’时出错。原因:对于“包含”过滤条件逻辑,仅支持“ID”和“文件名”。 如果为“分享状态”参数提供的值无效:“执行操作‘{操作名称}’时出错。原因:为“分享状态”过滤条件提供的值无效。可能的值:Public(互联网)、Public、External、Internal、Private。” 如果为“分享状态”参数提供的值无效:“执行操作‘{操作名称}’时出错。原因:为“分享状态”过滤条件提供的值无效。“文件类型”的可能值:其他、文档、电子表格、演示、文本、图片、文件夹。 |
常规 |
“案例墙”表格 | 表格名称:可用文件 表格列:
|
常规 |
连接器
Office 365 Cloud App Security 连接器
说明
Office 365 Cloud App Security 连接器会提取在 Office 365 CloudApp Security 平台上生成的提醒,并将其发送到 Google SecOps 服务器。
在 Google SecOps 中配置 Office 365 云应用安全连接器
有关如何在 Google SecOps 中配置连接器的详细说明,请参阅配置连接器。
连接器参数
使用以下参数配置连接器:
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
环境 | DDL | 不适用 | 是 | 选择所需的环境。例如,“客户一”。 如果提醒的环境字段为空,则此提醒将被注入此环境。 |
运行频率 | 整数 | 0:0:0:10 | 否 | 选择运行连接的时间。 |
商品字段名称 | 字符串 | 不支持 | 是 | 目前不支持。相应产品将填充为提醒的服务类型实体的标签。 |
事件字段名称 | 字符串 | 说明 | 是 | 用于确定事件名称(子类型)的字段名称。 |
脚本超时(秒) | 字符串 | 60 | 是 | 运行当前脚本的 Python 进程的超时限制(以秒为单位)。 |
Cloud App Security 门户网址 | 字符串 | 不适用 | 是 | Office 365 Cloud App Security 门户的网址。 |
API 令牌 | 密码 | 不适用 | 是 | 将用于向 Office 365 Cloud App Security 进行身份验证的 API 令牌。 |
验证 SSL | 复选框 | 尚未核查 | 否 | 验证发送到 Office 365 Cloud App Security 的 HTTPS 请求的 SSL 证书。 |
每个周期的提醒数量上限 | 整数 | 10 | 是 | 一次连接器运行期间应处理多少提醒。默认值:10。 |
偏移时间(以小时为单位) | 整数 | 24 | 是 | 从 X 小时前开始提取提醒。默认值:24 小时。 |
环境字段名称 | 字符串 | 不适用 | 否 | 描述存储环境名称的字段的名称。 |
环境正则表达式模式 | 整数 | 不适用 | 否 | 如果已定义,连接器将对“环境字段”中的数据实现特定的 RegEx 模式,以提取特定字符串。例如 - 从发件人的地址中提取网域:(?<=@)(\S+$) |
代理服务器地址 | 字符串 | 不适用 | 否 | 要使用的代理服务器的地址。 |
代理用户名 | 字符串 | 不适用 | 否 | 用于进行身份验证的代理用户名。 |
代理密码 | 密码 | 不适用 | 否 | 用于进行身份验证的代理密码。 |
连接器规则
代理支持
连接器支持代理。
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。