查询k8s api 异常事件详情

最近更新时间:2024-11-08 22:38:12

我的收藏

1. 接口描述

接口请求域名: tcss.tencentcloudapi.com 。

查询k8s api 异常事件详情

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:DescribeK8sApiAbnormalEventInfo。
Version String 公共参数,本接口取值:2020-11-01。
Region String 公共参数,此参数为可选参数。
ID Integer 事件ID
示例值:10

3. 输出参数

参数名称 类型 描述
Info K8sApiAbnormalEventInfo 事件详情
示例值:{ "AlarmCount": 1, "ClusterID": "cls-abhq0j4o-666", "ClusterMasterIP": "10.0.1.92", "ClusterName": "clsfoo*", "ClusterRunningStatus": "CSR_RUN**", "Desc": "检测到您的K8s API Server存在匿名用户访问请求,攻击者可利用匿名用户,通过API Server访问集群资源,如进入容器执行命令等。", "FirstCreateTime": "2024-10-22T11:00:45Z", "HighLightFields": [ "RequestUser" ], "Info": "{"Verb": "list", "AuditID": "4e477a26-b171-4702-a2ac-1ac494ae8c85", "PodNameIP": "", "SourceIPS": "[\"10.0.0.4\"]", "UserAgent": "tcss_agent_cluster/v0.0.0 (linux/amd64) kubernetes/$Format", "RequestURI": "/api/v1/namespaces?limit=1", "RequestUser": "{\"groups\":\"[\\\"system:unauthenticated\\\"]\",\"uid\":\"\",\"username\":\"system:anonymous\"}", "MountHostDir": "", "RequestObject": "{\"metadata\":\"\"}", "ResponseObject": "{\"metadata\":\"\"}", "ResponseStatusCode": "200"}", "K8sVersion": "1.0.1", "LastCreateTime": "2024-10-22T11:00:45Z", "MatchRule": { "Action": "RULE_MODE_ALERT", "IsDelete": false, "RiskLevel": "HIGH", "Scope": "{"RequestUser": "system:anonymous", "RequestUserGroups": "system:anonymous"}", "Status": false }, "MatchRuleID": "SYSTEM", "MatchRuleName": "系统规则", "MatchRuleType": "ANONYMOUS_ACCESS", "RiskLevel": "HIGH", "RunningComponent": [ ], "Status": "EVENT_UNDEAL", "Suggestion": "启用匿名用户存在较高的风险,建议您及时停用匿名用户,避免被攻击者利用;并排查来源IP和操作的资源是否属于正常运维操作。\n1、修改API Server 配置文件(如:/etc/kubernetes/manifests/kube-apiserver.yaml)将anonymous-auth改为false;并修改bind-address,避免监听在0.0.0.0,或使用安全组限制;去掉insecure-port配置。\n2、禁用kubelet的匿名认证功能,如去除kubelet服务配置文件中的anonymous-auth配置。\n建议修改配置前,确认是否为业务所需;在修改配置文件前,做好备份。" }
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 查询k8s api 异常事件详情

输入示例

POST / HTTP/1.1
Host: tcss.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: DescribeK8sApiAbnormalEventInfo
<公共请求参数>

{
    "ID": 10
}

输出示例

{
    "Response": {
        "Info": {
            "AlarmCount": 1,
            "ClusterID": "cls-abhq0j4o-666",
            "ClusterMasterIP": "10.0.1.92",
            "ClusterName": "clsfoo***",
            "ClusterRunningStatus": "CSR_RUN****",
            "Desc": "检测到您的K8s API Server存在匿名用户访问请求,攻击者可利用匿名用户,通过API Server访问集群资源,如进入容器执行命令等。",
            "FirstCreateTime": "2024-10-22T11:00:45Z",
            "HighLightFields": [
                "RequestUser"
            ],
            "Info": "{\"Verb\": \"list\", \"AuditID\": \"4e477a26-b171-4702-a2ac-1ac494ae8c85\", \"PodNameIP\": \"\", \"SourceIPS\": \"[\\\"10.0.0.4\\\"]\", \"UserAgent\": \"tcss_agent_cluster/v0.0.0 (linux/amd64) kubernetes/$Format\", \"RequestURI\": \"/api/v1/namespaces?limit=1\", \"RequestUser\": \"{\\\"groups\\\":\\\"[\\\\\\\"system:unauthenticated\\\\\\\"]\\\",\\\"uid\\\":\\\"\\\",\\\"username\\\":\\\"system:anonymous\\\"}\", \"MountHostDir\": \"\", \"RequestObject\": \"{\\\"metadata\\\":\\\"\\\"}\", \"ResponseObject\": \"{\\\"metadata\\\":\\\"\\\"}\", \"ResponseStatusCode\": \"200\"}",
            "K8sVersion": "1.0.1",
            "LastCreateTime": "2024-10-22T11:00:45Z",
            "MatchRule": {
                "Action": "RULE_MODE_ALERT",
                "IsDelete": false,
                "RiskLevel": "HIGH",
                "Scope": "{\"RequestUser\": \"system:anonymous\", \"RequestUserGroups\": \"system:anonymous\"}",
                "Status": false
            },
            "MatchRuleID": "SYSTEM",
            "MatchRuleName": "系统规则",
            "MatchRuleType": "ANONYMOUS_ACCESS",
            "RiskLevel": "HIGH",
            "RunningComponent": [],
            "Status": "EVENT_UNDEAL",
            "Suggestion": "启用匿名用户存在较高的风险,建议您及时停用匿名用户,避免被攻击者利用;并排查来源IP和操作的资源是否属于正常运维操作。\n1、修改API Server 配置文件(如:/etc/kubernetes/manifests/kube-apiserver.yaml)将anonymous-auth改为false;并修改bind-address,避免监听在0.0.0.0,或使用安全组限制;去掉insecure-port配置。\n2、禁用kubelet的匿名认证功能,如去除kubelet服务配置文件中的anonymous-auth配置。\n建议修改配置前,确认是否为业务所需;在修改配置文件前,做好备份。"
        },
        "RequestId": "8d8d41ab-6dfd-4f66-ad09-4a882485e733"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
InternalError 内部错误。
InvalidParameter 参数错误。
ResourceNotFound 资源不存在。