The Role kind defines fine-grained RBAC permissions for the Controller REST API. Each rule specifies allowed verbs (e.g. get, list, create, update, delete) on resources (e.g. microservices, applications, fogs) and optional resourceNames. Roles are granted to users or groups via RoleBinding.
apiVersion: iofog.org/v3
kind: Role
metadata:
name: developer-role
rules:
- apiGroups: [""]
resources: ["microservices", "applications", "fogs"]
verbs: ["get", "list", "create", "update", "patch", "delete"]
- apiGroups: [""]
resources: ["services", "flows", "registries", "catalog"]
verbs: ["get", "list", "create", "update", "patch", "delete"]| Field | Description |
|---|---|
metadata.name |
Unique name for the Role. |
rules |
Array of RbacRule objects. |
rules[].apiGroups |
API groups (use [""] for core). |
rules[].resources |
Resource types (e.g. microservices, applications, fogs, natsAccountRules, natsUserRules). |
rules[].verbs |
Allowed actions: get, list, create, update, patch, delete. |
rules[].resourceNames |
Optional. Restrict the rule to specific resource names. |
Deploy with iofogctl deploy -f role.yaml. For the full RBAC resource catalog, default system roles, and REST API, see Security – Roles.