The Project Class

The Project class inherits from Resource.

class openstack.identity.v3.project.Project(_synchronized=False, connection=None, **attrs)

The base resource

  • _synchronized (bool) – This is not intended to be used directly. See new() and existing().

  • connection (openstack.connection.Connection) – Reference to the Connection being used. Defaults to None to allow Resource objects to be used without an active Connection, such as in unit tests. Use of self._connection in Resource code should protect itself with a check for None.


The description of the project. Type: string


References the domain ID which owns the project; if a domain ID is not specified by the client, the Identity service implementation will default it to the domain ID to which the client’s token is scoped. Type: string


Indicates whether the project also acts as a domain. If set to True, the project acts as both a project and a domain. Default is False. New in version 3.6


Setting this attribute to False prevents users from authorizing against this project. Additionally, all pre-existing tokens authorized for the project are immediately invalidated. Re-enabling a project does not re-enable pre-existing tokens. Type: bool


Unique project name, within the owning domain. Type: string


The ID of the parent of the project. New in version 3.4

assign_role_to_user(session, user, role)

Assign role to user on project

validate_user_has_role(session, user, role)

Validates that a user has a role on a project

unassign_role_from_user(session, user, role)

Unassigns a role from a user on a project

assign_role_to_group(session, group, role)

Assign role to group on project

validate_group_has_role(session, group, role)

Validates that a group has a role on a project

unassign_role_from_group(session, group, role)

Unassigns a role from a group on a project