9a5395f1b2
Docs at [1] have already been converted from WADL (SGML / XML) to RST using fairy-slipper [2]. This commit polish the results from the conversion and migrate the docs to our repository under 'api-ref/source' directory. In addition, it added missing descriptions for access_token_id and consumer_id to 'parameters.yaml'. Polishing the generated RST files include: - Removing unnecessary blank lines; - Removing empty references. Polishing the generated RST files do not include: - Modifying their content; - Modifying file names; - Wrapping lines at the maximum of 79 chars. Updating the documentation will be done after this migration step. This change also adds a tox environment to build the docs using sphinx under 'api-ref/build', which in turn is added to '.gitignore'. Lastly, 'os-api-ref' is added as a test requirement. It provides the sphinx stanzas rest_method and rest_parameter, used to define OpenStack APIs in RST docs. [1] https://github.com/openstack/api-site/tree/master/api-ref/source/identity/v3 [2] https://github.com/russell/fairy-slipper Change-Id: If1b9a3e1b2e4ea7211c337071254c26b881893a3
292 lines
5.3 KiB
ReStructuredText
292 lines
5.3 KiB
ReStructuredText
.. -*- rst -*-
|
|
|
|
======================
|
|
Groups (groups, users)
|
|
======================
|
|
|
|
A group is a collection of users. Each group is owned by a domain.
|
|
|
|
When you grant a role to a group, you explicitly associate that
|
|
group with a project or domain. This action is equivalent to
|
|
granting the role to each group member on that project and domain.
|
|
|
|
When you grant a role to a group, that role is automatically
|
|
granted to any user that you add to the group. When you revoke a
|
|
role from a group, that role is automatically revoked from any user
|
|
that you remove from the group. Any token that authenticates that
|
|
user, project, and domain is revoked.
|
|
|
|
As with users, a group without any role grants is useless from the
|
|
perspective an OpenStack service and has no access to resources.
|
|
However, a group without role grants is permitted as a way of
|
|
acquiring or loading users and groups from external sources before
|
|
mapping them to projects and domains.
|
|
|
|
|
|
Show group details
|
|
==================
|
|
|
|
.. rest_method:: GET /v3/groups/{group_id}
|
|
|
|
Shows details for a group.
|
|
|
|
Normal response codes: 200
|
|
Error response codes:413,405,404,403,401,400,503,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- group_id: group_id
|
|
|
|
Response Parameters
|
|
-------------------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- group: group
|
|
- name: name
|
|
- links: links
|
|
- domain_id: domain_id
|
|
- id: id
|
|
- description: description
|
|
|
|
Response Example
|
|
----------------
|
|
|
|
.. literalinclude:: ./samples/admin/group-show-response.json
|
|
:language: javascript
|
|
|
|
|
|
Update group
|
|
============
|
|
|
|
.. rest_method:: PATCH /v3/groups/{group_id}
|
|
|
|
Updates a group.
|
|
|
|
If the back-end driver does not support this functionality, the
|
|
call returns the ``Not Implemented (501)`` response code.
|
|
|
|
Normal response codes: 200
|
|
Error response codes:413,415,405,404,403,401,400,503,409,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- group: group
|
|
- description: description
|
|
- name: name
|
|
- domain_id: domain_id
|
|
- group_id: group_id
|
|
|
|
Request Example
|
|
---------------
|
|
|
|
.. literalinclude:: ./samples/admin/group-update-request.json
|
|
:language: javascript
|
|
|
|
Response Parameters
|
|
-------------------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- group: group
|
|
- name: name
|
|
- links: links
|
|
- domain_id: domain_id
|
|
- id: id
|
|
- description: description
|
|
|
|
Response Example
|
|
----------------
|
|
|
|
.. literalinclude:: ./samples/admin/group-update-response.json
|
|
:language: javascript
|
|
|
|
|
|
Delete group
|
|
============
|
|
|
|
.. rest_method:: DELETE /v3/groups/{group_id}
|
|
|
|
Deletes a group.
|
|
|
|
Error response codes:204,413,415,405,404,403,401,400,503,409,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- group_id: group_id
|
|
|
|
|
|
Add user to group
|
|
=================
|
|
|
|
.. rest_method:: PUT /v3/groups/{group_id}/users/{user_id}
|
|
|
|
Adds a user to a group.
|
|
|
|
Error response codes:204,413,415,405,404,403,401,400,503,409,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- user_id: user_id
|
|
- group_id: group_id
|
|
|
|
|
|
Remove user from group
|
|
======================
|
|
|
|
.. rest_method:: DELETE /v3/groups/{group_id}/users/{user_id}
|
|
|
|
Removes a user from a group.
|
|
|
|
Error response codes:204,413,415,405,404,403,401,400,503,409,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- user_id: user_id
|
|
- group_id: group_id
|
|
|
|
|
|
Check whether user belongs to group
|
|
===================================
|
|
|
|
.. rest_method:: HEAD /v3/groups/{group_id}/users/{user_id}
|
|
|
|
Validates that a user belongs to a group.
|
|
|
|
Error response codes:204,413,405,404,403,401,400,503,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- user_id: user_id
|
|
- group_id: group_id
|
|
|
|
|
|
List users in group
|
|
===================
|
|
|
|
.. rest_method:: GET /v3/groups/{group_id}/users
|
|
|
|
Lists the users that belong to a group.
|
|
|
|
Normal response codes: 200
|
|
Error response codes:413,405,404,403,401,400,503,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- group_id: group_id
|
|
|
|
Response Parameters
|
|
-------------------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- name: name
|
|
- links: links
|
|
- enabled: enabled
|
|
- domain_id: domain_id
|
|
- email: email
|
|
- id: id
|
|
- users: users
|
|
|
|
Response Example
|
|
----------------
|
|
|
|
.. literalinclude:: ./samples/admin/group-users-list-response.json
|
|
:language: javascript
|
|
|
|
|
|
Create group
|
|
============
|
|
|
|
.. rest_method:: POST /v3/groups
|
|
|
|
Creates a group.
|
|
|
|
Error response codes:201,413,415,405,404,403,401,400,503,409,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- group: group
|
|
- description: description
|
|
- name: name
|
|
- domain_id: domain_id
|
|
|
|
Request Example
|
|
---------------
|
|
|
|
.. literalinclude:: ./samples/admin/group-create-request.json
|
|
:language: javascript
|
|
|
|
Response Parameters
|
|
-------------------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- group: group
|
|
- name: name
|
|
- links: links
|
|
- domain_id: domain_id
|
|
- id: id
|
|
- description: description
|
|
|
|
|
|
List groups
|
|
===========
|
|
|
|
.. rest_method:: GET /v3/groups
|
|
|
|
Lists groups.
|
|
|
|
Normal response codes: 200
|
|
Error response codes:413,405,404,403,401,400,503,
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- name: name
|
|
- domain_id: domain_id
|
|
|
|
Response Parameters
|
|
-------------------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- name: name
|
|
- links: links
|
|
- domain_id: domain_id
|
|
- groups: groups
|
|
- id: id
|
|
- description: description
|
|
|
|
Response Example
|
|
----------------
|
|
|
|
.. literalinclude:: ./samples/admin/groups-list-response.json
|
|
:language: javascript
|