RoleBindings Kubernetes-rolebindings
9 operations, identified by Operation in the audit log.
| Operation | Description |
|---|---|
| get-rolebindings | |
| list-rolebindings | |
| watch-rolebindings | |
| create-rolebindings | RoleBinding created (RBAC privilege escalation or persistence). |
| update-rolebindings | |
| replace-rolebindings | |
| patch-rolebindings | |
| delete-rolebindings | |
| any-rolebindings | Synthetic aggregation for rules that filter the rolebindings resource with no specific verb. Not a distinct audit record; hosts rule listings that key on objectRef.resource alone. |
get-rolebindings: get rolebindings
#Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
list-rolebindings: list rolebindings
#Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
watch-rolebindings: watch rolebindings
#Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
create-rolebindings: create rolebindings
#Description
RoleBinding created (RBAC privilege escalation or persistence).
Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
Common Indicators #
Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.
| Field | Kind | Value | Rules | Vendors |
|---|---|---|---|---|
kubernetes.audit.annotations.authorization_k8s_io/decision | eq | allow | 3 rules | elastic |
kubernetes.audit.objectRef.resource | in | clusterrolebindings | 3 rules | elastic |
kubernetes.audit.objectRef.resource | in | rolebindings | 3 rules | elastic |
kubernetes.audit.verb | eq | create | 2 rules | elastic |
kubernetes.audit.level | eq | RequestResponse | 1 rule | elastic |
kubernetes.audit.stage | eq | ResponseComplete | 1 rule | elastic |
Detection Rules #
View all rules referencing this event →Sigma #
Elastic #
update-rolebindings: update rolebindings
#Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
Detection Rules #
View all rules referencing this event →Sigma #
Elastic #
replace-rolebindings: replace rolebindings
#Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
Detection Rules #
View all rules referencing this event →Sigma #
patch-rolebindings: patch rolebindings
#Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
Detection Rules #
View all rules referencing this event →Sigma #
Elastic #
delete-rolebindings: delete rolebindings
#Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
Detection Rules #
View all rules referencing this event →Sigma #
Elastic #
any-rolebindings: any verb on rolebindings (synthetic aggregation)
#Description
Synthetic aggregation for rules that filter the rolebindings resource with no specific verb. Not a distinct audit record; hosts rule listings that key on objectRef.resource alone.
Fields #
| Name | Description |
|---|---|
verb | The request verb (get, list, watch, create, update, replace, patch, delete, deletecollection, ...). |
objectRef.resource | The targeted resource type (plural API name, e.g. pods, secrets). |
objectRef.subresource | The targeted subresource, when present (e.g. exec, log, token). |
objectRef.namespace | Namespace of the targeted object (empty for cluster-scoped resources). |
objectRef.name | Name of the targeted object. |
objectRef.apiGroup | API group of the targeted resource (empty string for core group). |
user.username | Authenticated identity that issued the request (user or service account). |
user.groups | Groups of the requesting identity. |
sourceIPs | Source IP addresses of the request. |
responseStatus.code | HTTP status code of the API response (200, 201, 403, 404, ...). |
stage | Audit stage: RequestReceived, ResponseStarted, ResponseComplete, Panic. |
requestReceivedTimestamp | Time the apiserver received the request. |
Common Indicators #
Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.
| Field | Kind | Value | Rules | Vendors |
|---|---|---|---|---|
EventType | in | get | 1 rule | elastic |
EventType | in | list | 1 rule | elastic |
kubernetes.audit.objectRef.resource | in | namespaces | 1 rule | elastic |
kubernetes.audit.objectRef.resource | in | nodes | 1 rule | elastic |
kubernetes.audit.objectRef.resource | in | pods | 1 rule | elastic |
kubernetes.audit.objectRef.resource | in | serviceaccounts | 1 rule | elastic |
Detection Rules #
View all rules referencing this event →Elastic #
get/list traffic across distinct API resource kinds that answer those questions (namespaces, workloads, roles, cluster-wide roles) is a common setup and orientation pattern for both interactive attackers and automated recon scripts. It is less typical for steady-state controllers, which usually touch a narrow set of resources repeatedly. This rule highlights that cross-resource burst from a single client fingerprint within a one-minute bucket so analysts can separate routine automation from potential discovery and permission reconnaissance ahead of follow-on actions.