IAM Service RBAC Events 0.1.0 documentation
- Protobuf File Spec: iam.proto
Published Messages (role)
The service publishes one of these messages below.
roleCreated
Message is sent when role is created. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
roleDeleted
Message is sent when role is deleted. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
roleUpdated
Message is sent when role is updated. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
}
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
Published Messages (rolePermissions)
The service publishes one of these messages below.
rolePermissionCreated
Message is sent when adding role permissions. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
},
"permissions": [
{
"resoure": "string",
"action": "string",
"SchedAction": 0,
"SchedCron": "string",
"SchedRange": [
"string"
]
}
]
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
| permissions | array of permissions | - |
rolePermissionDeleted
Message is sent when role permission is deleted. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
},
"permissions": [
{
"resoure": "string",
"action": "string",
"SchedAction": 0,
"SchedCron": "string",
"SchedRange": [
"string"
]
}
]
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
| permissions | array of permissions | - |
rolePermissionUpdated
Message is sent when role permission is updated. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
},
"permissions": [
{
"resoure": "string",
"action": "string",
"SchedAction": 0,
"SchedCron": "string",
"SchedRange": [
"string"
]
}
]
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
| permissions | array of permissions | - |
Published Messages (roleManager)
The service publishes one of these messages below.
roleManagerCreated
Deprecated. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
},
"roleManager": [
{
"userId": "string",
"namespace": "string",
"displayName": "string"
}
]
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
| roleManager | array of roleManager | - |
roleManagerDeleted
Deprecated. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
},
"roleManager": [
{
"userId": "string",
"namespace": "string",
"displayName": "string"
}
]
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
| roleManager | array of roleManager | - |
Published Messages (roleMember)
The service publishes one of these messages below.
roleMemberCreated
Message is sent when role is assigned to user. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
},
"roleMember": [
{
"userId": "string",
"namespace": "string",
"displayName": "string"
}
]
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
| roleMember | array of roleMember | - |
roleMemberDeleted
Message is sent when user's role is removed. Contains fields from event and the following payload.
Example value
{
"payload": {
"role": {
"roleId": "string",
"name": "string",
"admin": true,
"roleIsWildcard": true
},
"roleMember": [
{
"userId": "string",
"namespace": "string",
"displayName": "string"
}
]
},
"id": "string",
"version": 0,
"name": "string",
"namespace": "string",
"parentNamespace": "string",
"timestamp": "2019-08-24T14:15:22Z",
"clientId": "string",
"userId": "string",
"traceId": "string",
"sessionId": "string"
}
payload
| Name | Type | Description |
|---|---|---|
| role | role | - |
| roleMember | array of roleMember | - |
Schemas
role
| Name | Type | Description |
|---|---|---|
| roleId | string | role id |
| name | string | role name |
| admin | boolean | a flag indicates whether this role is an admin role |
| roleIsWildcard | boolean | a flag indicates whether this role is an global role |
permissions
| Name | Type | Description |
|---|---|---|
| resoure | string | resource |
| action | string | action |
| SchedAction | integer | action, between 1 to 15 |
| SchedCron | string | cron string or date range (both are UTC, also in cron syntax) to indicate when a permission and action are in effect |
| SchedRange | array | start and end date when a permission and action are in effect |
roleManager
| Name | Type | Description |
|---|---|---|
| userId | string | - |
| namespace | string | - |
| displayName | string | - |
roleMember
| Name | Type | Description |
|---|---|---|
| userId | string | user id |
| namespace | string | namespace |
| displayName | string | display name |
event
| Name | Type | Description |
|---|---|---|
| id | string | - |
| version | integer | - |
| name | string | - |
| namespace | string | - |
| parentNamespace | string | - |
| timestamp | string (date-time) | - |
| clientId | string | - |
| userId | string | - |
| traceId | string | - |
| sessionId | string | - |