user_roles
Creates, updates, deletes, gets or lists a user_roles resource.
Overview​
| Name | user_roles |
| Type | Resource |
| Id | ovh.cloud.user_roles |
Fields​
The following fields are returned by SELECT queries:
- get
- list
successful operation
| Name | Datatype | Description |
|---|---|---|
id | string | Role id |
name | string | Role Name |
description | string | Role Description |
permissions | array | Permissions granted by this role |
Role
| Name | Datatype | Description |
|---|---|---|
id | string | Role id |
name | string | Role Name |
description | string | Role Description |
permissions | array | Permissions granted by this role |
Methods​
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | role_id, user_id, service_name | Get role detail | |
list | select | user_id, service_name | Get user roles | |
create | insert | user_id, service_name, role_id | Add a role to a user | |
update | update | user_id, service_name, roles_ids | Update roles of a user | |
delete | delete | role_id, user_id, service_name | Remove role for a user |
Parameters​
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
api_host | string | The OVHcloud API host. Selected by OVH_ENDPOINT (ovh-eu, ovh-ca or ovh-us; default ovh-eu). (default: api.eu.ovhcloud.com, x-stackQL-envVarSelector: {"envVar":"OVH_ENDPOINT","default":"ovh-eu","values":{"ovh-eu":"api.eu.ovhcloud.com","ovh-ca":"api.ca.ovhcloud.com","ovh-us":"api.us.ovhcloud.com"}}) |
role_id | string | Role ID (wire: roleId) |
service_name | string | The Public Cloud project ID. Resolved from OVH_CLOUD_PROJECT_SERVICE when set. |
user_id | integer | User ID (wire: userId) |
SELECT examples​
- get
- list
Get role detail
SELECT
id,
name,
description,
permissions
FROM ovh.cloud.user_roles
WHERE role_id = '{{ role_id }}' -- required
AND user_id = '{{ user_id }}' -- required
AND service_name = '{{ service_name }}' -- required unless OVH_CLOUD_PROJECT_SERVICE is set
;
Get user roles
SELECT
id,
name,
description,
permissions
FROM ovh.cloud.user_roles
WHERE user_id = '{{ user_id }}' -- required
AND service_name = '{{ service_name }}' -- required unless OVH_CLOUD_PROJECT_SERVICE is set
;
INSERT examples​
- create
- Manifest
Add a role to a user
INSERT INTO ovh.cloud.user_roles (
role_id,
user_id,
service_name
)
SELECT
'{{ role_id }}' /* required */,
'{{ user_id }}',
'{{ service_name }}'
RETURNING
id,
openstack_id,
creation_date,
description,
password,
roles,
status,
username
;
# Description fields are for documentation purposes
- name: user_roles
props:
- name: user_id
value: {{ user_id }}
description: Required parameter for the user_roles resource.
- name: service_name
value: "{{ service_name }}"
description: Required parameter for the user_roles resource.
- name: role_id
value: "{{ role_id }}"
description: |
Role id
UPDATE examples​
- update
Update roles of a user
UPDATE ovh.cloud.user_roles
SET
roles_ids = '{{ roles_ids }}'
WHERE
user_id = '{{ user_id }}' --required
AND service_name = '{{ service_name }}' --required unless OVH_CLOUD_PROJECT_SERVICE is set
AND roles_ids = '{{ roles_ids }}' --required
RETURNING
id,
openstack_id,
creation_date,
description,
password,
roles,
status,
username;
DELETE examples​
- delete
Remove role for a user
DELETE FROM ovh.cloud.user_roles
WHERE role_id = '{{ role_id }}' --required
AND user_id = '{{ user_id }}' --required
AND service_name = '{{ service_name }}' --required unless OVH_CLOUD_PROJECT_SERVICE is set
;