Okta 实体分析

编辑

Okta 实体分析

编辑

版本

1.6.0 (查看全部)

兼容的 Kibana 版本

8.15.0 或更高版本

支持的无服务器项目类型
这是什么?

安全
可观测性

订阅级别
这是什么?

基本

支持级别
这是什么?

Elastic

Okta 实体分析 集成允许用户通过 REST API 安全地将用户实体数据流式传输到 Elastic Security。与 Elastic Security 集成后,可以在 Elastic 中利用此有价值的数据进行风险评分场景(例如,上下文丰富)和检测高级分析 (UBA) 用例。

兼容性

编辑

此模块已针对核心 Okta API 版本 v1 进行了测试。

数据流

编辑

Okta 实体分析集成收集一种类型的数据:用户。

用户 用于检索组织中所有可用的用户日志。有关更多详细信息,请参阅此处的 API 文档 here

要求

编辑
  • 必须安装 Elastic Agent。
  • 每个主机只能安装一个 Elastic Agent。
  • 需要 Elastic Agent 来使用实体分析输入流式传输数据,并将数据发送到 Elastic,然后事件将通过集成的摄取管道进行处理。
安装和管理 Elastic Agent
编辑

您有几种安装和管理 Elastic Agent 的选项

安装 Fleet 管理的 Elastic Agent(推荐)
编辑

通过这种方法,您可以安装 Elastic Agent 并使用 Kibana 中的 Fleet 在中心位置定义、配置和管理您的代理。我们建议使用 Fleet 管理,因为它使代理的管理和升级变得更加容易。

以独立模式安装 Elastic Agent(高级用户)
编辑

通过这种方法,您可以安装 Elastic Agent 并在安装它的系统上本地手动配置代理。您负责管理和升级代理。此方法仅保留给高级用户。

在容器化环境中安装 Elastic Agent
编辑

您可以在容器内运行 Elastic Agent,无论是使用 Fleet Server 还是独立运行。所有版本的 Elastic Agent 的 Docker 映像都可以从 Elastic Docker 注册表获得,我们还提供了在 Kubernetes 上运行的部署清单。

运行 Elastic Agent 有一些最低要求,有关更多信息,请参阅此链接 here

所需的最低 kibana.version8.9.0

设置

编辑
要从 Okta 收集数据,请按照以下步骤操作
编辑
  • 必需的 URL 命名空间,应以组织的子域(租户)或配置的自定义域开头。
  • 创建一个 Okta API 令牌进行身份验证。请遵循此 指南
在 Elastic 中启用集成
编辑
  1. 在 Kibana 中,转到“管理” > “集成”。
  2. 在“搜索集成”搜索栏中,键入“Okta 实体分析”。
  3. 从搜索结果中单击“Okta 实体分析”集成。
  4. 单击“添加 Okta 实体分析集成”按钮以添加集成。
  5. 添加集成时,添加我们之前获得的 URL 和 API 令牌。
  6. 通过添加其他必要参数来保存集成。

用法

编辑

Okta 提供程序定期联系 Okta API,检索用户更新,更新其用户元数据的内部缓存,并将更新后的用户元数据发送到 Elasticsearch。

获取和发送更新在两个进程中进行:完全同步增量更新。完全同步将发送状态中的整个用户列表,以及指示同步事件开始和结束的写入标记。增量更新将仅发送该事件期间更改的用户的的数据。用户的更改可以有多种形式,无论是更改用户的元数据,还是添加或删除了用户。默认情况下,完全同步每 24 小时发生一次,增量更新每 15 分钟发生一次。可以自定义这些间隔以满足您的用例。

示例事件

编辑

用户文档

{
  "@timestamp": "2023-07-04T09:57:19.786056-05:00",
  "event": {
    "action": "user-discovered"
  },
  "okta": {
    "id": "userid",
    "status": "RECOVERY",
    "created": "2023-06-02T09:33:00.189752+09:30",
    "activated": "0001-01-01T00:00:00Z",
    "statusChanged": "2023-06-02T09:33:00.189752+09:30",
    "lastLogin": "2023-06-02T09:33:00.189752+09:30",
    "lastUpdated": "2023-06-02T09:33:00.189753+09:30",
    "passwordChanged": "2023-06-02T09:33:00.189753+09:30",
    "type": {
      "id": "typeid"
    },
    "profile": {
      "login": "[email protected]",
      "email": "[email protected]",
      "firstName": "name",
      "lastName": "surname"
    },
    "credentials": {
      "password": {},
      "provider": {
        "type": "OKTA",
        "name": "OKTA"
      }
    },
    "_links": {
      "self": {
        "href": "https://127.0.0.1/api/v1/users/userid"
      }
    }
  },
  "user": {
    "id": "userid"
  },
  "labels": {
    "identity_source": "okta-1"
  }
}

完全同步将在两侧以“写入标记”文档为界。

{
    "@timestamp": "2022-11-04T09:57:19.786056-05:00",
    "event": {
        "action": "started",
        "start": "2022-11-04T09:57:19.786056-05:00"
    },
    "labels": {
        "identity_source": "okta-1"
    }
}

日志参考

编辑
用户
编辑

这是 User 数据集。

示例

user 的示例事件如下

{
    "@timestamp": "2023-08-11T07:01:21.235Z",
    "agent": {
        "ephemeral_id": "dbb88a7d-16aa-44e4-8bef-c707be5ac5e2",
        "id": "28086f58-96fe-486b-9ef2-4ca0bd13a4e5",
        "name": "docker-fleet-agent",
        "type": "filebeat",
        "version": "8.9.0"
    },
    "asset": {
        "category": "entity",
        "create_date": "2013-06-24T16:39:18.000Z",
        "id": "00ub0oNGTSWTBKOLGLNR",
        "last_seen": "2013-06-24T17:39:19.000Z",
        "last_status_change_date": "2013-06-24T16:39:19.000Z",
        "last_updated": "2013-07-02T21:36:25.344Z",
        "status": "ACTIVE",
        "type": "okta_user",
        "vendor": "OKTA"
    },
    "data_stream": {
        "dataset": "entityanalytics_okta.user",
        "namespace": "ep",
        "type": "logs"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "28086f58-96fe-486b-9ef2-4ca0bd13a4e5",
        "snapshot": false,
        "version": "8.9.0"
    },
    "entityanalytics_okta": {
        "user": {
            "activated": "2013-06-24T16:39:19.000Z",
            "created": "2013-06-24T16:39:18.000Z",
            "credentials": {
                "provider": {
                    "name": "OKTA",
                    "type": "OKTA"
                }
            },
            "id": "00ub0oNGTSWTBKOLGLNR",
            "last_login": "2013-06-24T17:39:19.000Z",
            "last_updated": "2013-07-02T21:36:25.344Z",
            "password_changed": "2013-07-02T21:36:25.344Z",
            "profile": {
                "email": "[email protected]",
                "first_name": "Isaac",
                "last_name": "Brock",
                "login": "[email protected]",
                "mobile_phone": "555-415-1337"
            },
            "status": "ACTIVE",
            "status_changed": "2013-06-24T16:39:19.000Z"
        }
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "iam"
        ],
        "dataset": "entityanalytics_okta.user",
        "ingested": "2023-08-11T07:01:22Z",
        "kind": "asset",
        "type": [
            "user",
            "info"
        ]
    },
    "input": {
        "type": "entity-analytics"
    },
    "labels": {
        "identity_source": "entity-analytics-entityanalytics_okta.user-418d01f7-61b7-4df5-8d71-9e0ce541334e"
    },
    "related": {
        "user": [
            "00ub0oNGTSWTBKOLGLNR",
            "[email protected]",
            "Isaac",
            "Brock"
        ]
    },
    "tags": [
        "preserve_duplicate_custom_fields",
        "forwarded",
        "entityanalytics_okta-user"
    ],
    "user": {
        "account": {
            "activated_date": "2013-06-24T16:39:19.000Z",
            "change_date": "2013-06-24T16:39:19.000Z",
            "create_date": "2013-06-24T16:39:18.000Z",
            "password_change_date": "2013-07-02T21:36:25.344Z",
            "status": {
                "deprovisioned": false,
                "locked_out": false,
                "password_expired": false,
                "recovery": false,
                "suspended": false
            }
        },
        "email": "[email protected]",
        "id": "00ub0oNGTSWTBKOLGLNR",
        "name": "[email protected]",
        "profile": {
            "first_name": "Isaac",
            "last_name": "Brock",
            "mobile_phone": "555-415-1337",
            "status": "ACTIVE"
        }
    }
}
导出的字段
字段 描述 类型

@timestamp

事件时间戳。

日期

asset.category

关键字

asset.costCenter

关键字

asset.create_date

日期

asset.id

关键字

asset.last_seen

日期

asset.last_status_change_date

日期

asset.last_updated

日期

asset.name

关键字

asset.status

关键字

asset.type

关键字

asset.vendor

关键字

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

entityanalytics_okta.groups.id

组的 ID。

关键字

entityanalytics_okta.groups.profile.*

组配置文件详细信息。

对象

entityanalytics_okta.user._embedded

与用户相关的嵌入式资源。

扁平化

entityanalytics_okta.user._links

用户当前状态的链接关系。

扁平化

entityanalytics_okta.user.activated

转换为“活动”状态完成的时间戳。

日期

entityanalytics_okta.user.created

用户创建时的时间戳。

日期

entityanalytics_okta.user.credentials.provider.name

关键字

entityanalytics_okta.user.credentials.provider.type

关键字

entityanalytics_okta.user.credentials.recovery_question.is_set

布尔值

entityanalytics_okta.user.id

用户的唯一键。

关键字

entityanalytics_okta.user.last_login

上次登录的时间戳。

日期

entityanalytics_okta.user.last_updated

上次更新用户时的时间戳。

日期

entityanalytics_okta.user.password_changed

上次更改密码时的时间戳。

日期

entityanalytics_okta.user.profile.city

用户地址的城市或地区组成部分(地区)。

关键字

entityanalytics_okta.user.profile.cost_center

分配给用户的成本中心名称。

关键字

entityanalytics_okta.user.profile.country_code

用户地址的国家/地区名称组成部分(国家/地区)。

关键字

entityanalytics_okta.user.profile.department

用户部门的名称。

关键字

entityanalytics_okta.user.profile.display_name

用户的名称,适合向最终用户显示。

关键字

entityanalytics_okta.user.profile.division

用户部门的名称。

关键字

entityanalytics_okta.user.profile.email

用户的主要电子邮件地址。

关键字

entityanalytics_okta.user.profile.employee_number

组织或公司为用户分配的唯一标识符。

关键字

entityanalytics_okta.user.profile.first_name

用户的名字(givenName)。

关键字

entityanalytics_okta.user.profile.honorific.prefix

用户的尊称前缀,或大多数西方语言中的头衔。

关键字

entityanalytics_okta.user.profile.honorific.suffix

用户的尊称后缀。

关键字

entityanalytics_okta.user.profile.last_name

用户的姓氏(familyName)。

关键字

entityanalytics_okta.user.profile.locale

用户默认位置,用于本地化诸如货币、日期时间格式、数字表示形式等项目。

关键字

entityanalytics_okta.user.profile.login

用户的唯一标识符(用户名)。

关键字

entityanalytics_okta.user.profile.manager.id

用户的经理的 ID。

关键字

entityanalytics_okta.user.profile.manager.name

用户的经理的显示名称。

关键字

entityanalytics_okta.user.profile.middle_name

用户的中间名。

关键字

entityanalytics_okta.user.profile.mobile_phone

用户的手机号码。

关键字

entityanalytics_okta.user.profile.nick_name

在现实生活中称呼用户的非正式方式。

关键字

entityanalytics_okta.user.profile.organization

用户组织的名称。

关键字

entityanalytics_okta.user.profile.postal_address

用户地址的邮寄地址组成部分。

关键字

entityanalytics_okta.user.profile.preferred_language

用户首选的书面或口头语言。

关键字

entityanalytics_okta.user.profile.primary_phone

用户的主要电话号码,例如家庭号码。

关键字

entityanalytics_okta.user.profile.second_email

用户的辅助电子邮件地址,通常用于帐户恢复。

关键字

entityanalytics_okta.user.profile.state

用户地址的州或地区组成部分(地区)。

关键字

entityanalytics_okta.user.profile.street_address

用户地址的完整街道地址组成部分。

关键字

entityanalytics_okta.user.profile.timezone

用户的时区。

关键字

entityanalytics_okta.user.profile.title

用户的头衔,例如“副总裁”。

关键字

entityanalytics_okta.user.profile.url

用户在线配置文件的 URL(例如:网页)。

关键字

entityanalytics_okta.user.profile.user_type

用于描述组织与用户的关系,例如“雇员”或“承包商”。

关键字

entityanalytics_okta.user.profile.zip_code

用户地址的邮政编码或邮政编码组成部分(邮政编码)。

关键字

entityanalytics_okta.user.status

用户的当前状态。

关键字

entityanalytics_okta.user.status_changed

上次更改状态时的时间戳。

日期

entityanalytics_okta.user.transitioning_to_status

正在进行的异步状态转换的目标状态。

关键字

entityanalytics_okta.user.type

确定用户配置文件架构的用户类型。

扁平化

event.dataset

事件数据集。

constant_keyword

event.module

事件模块。

constant_keyword

input.type

Filebeat 输入的类型。

关键字

labels.identity_source

关键字

log.offset

日志偏移量。

长整型

user.account.activated_date

日期

user.account.change_date

日期

user.account.create_date

日期

user.account.password_change_date

日期

user.account.status.deprovisioned

布尔值

user.account.status.locked_out

布尔值

user.account.status.password_expired

布尔值

user.account.status.recovery

布尔值

user.account.status.suspended

布尔值

user.geo.city_name

关键字

user.geo.country_iso_code

关键字

user.geo.name

关键字

user.geo.postal_code

关键字

user.geo.region_name

关键字

user.geo.timezone

关键字

user.organization.name

关键字

user.profile.department

关键字

user.profile.first_name

关键字

user.profile.id

关键字

user.profile.job_title

关键字

user.profile.last_name

关键字

user.profile.manager

关键字

user.profile.mobile_phone

关键字

user.profile.other_identities

关键字

user.profile.primaryPhone

关键字

user.profile.secondEmail

关键字

user.profile.status

关键字

user.profile.type

关键字

变更日志

编辑
变更日志
版本 详细信息 Kibana 版本

1.6.0

增强 (查看拉取请求)
将 “preserve_original_event” 标签添加到 event.kind 设置为“pipeline_error”的文档。

8.15.0 或更高版本

1.5.1

Bug 修复 (查看拉取请求)
不要泄露集合实现细节。

8.15.0 或更高版本

1.5.0

增强 (查看拉取请求)
添加对组成员关系映射的支持。

增强 (查看拉取请求)
添加对组成员关系的系统测试支持。

8.15.0 或更高版本

1.4.0

增强 (查看拉取请求)
添加对请求跟踪日志记录的支持。

8.15.0 或更高版本

1.3.0

增强 (查看拉取请求)
记录用户的凭据是否包含恢复问题。

8.13.0 或更高版本

1.2.0

增强 (查看拉取请求)
移除了 import_mappings。将 kibana 约束更新为 ^8.13.0。修改了字段定义,以删除由 ecs@mappings 组件模板造成的冗余 ECS 字段。

8.13.0 或更高版本

1.1.0

增强 (查看拉取请求)
将敏感值设置为 secret。

8.12.0 或更高版本

1.0.1

增强 (查看拉取请求)
更改了所有者

8.9.0 或更高版本

1.0.0

增强 (查看拉取请求)
将软件包作为 GA 版本发布。

8.9.0 或更高版本

0.8.0

增强 (查看拉取请求)
允许选择数据集。

0.7.0

增强 (查看拉取请求)
ECS 版本更新至 8.11.0。

0.6.1

缺陷修复 (查看拉取请求)
修复了组字段的映射

0.6.0

增强 (查看拉取请求)
ECS 版本更新至 8.10.0。

0.5.0

增强 (查看拉取请求)
软件包清单中的 format_version 从 2.11.0 更改为 3.0.0。从软件包清单中删除了点号 YAML 键。向软件包清单添加了 owner.type: elastic

0.4.0

增强 (查看拉取请求)
添加 tags.yml 文件,以便使用“安全解决方案”标记集成的仪表板和已保存的搜索,并在安全解决方案 UI 中显示。

0.3.0

增强 (查看拉取请求)
添加 user.geo.、user.organization. 和资产分类映射。

0.2.0

增强 (查看拉取请求)
将软件包更新至 ECS 8.9.0。

0.1.0

增强 (查看拉取请求)
首次发布。