Class: OvirtSDK4::SystemPermissionsService
- Inherits:
-
AssignedPermissionsService
- Object
- Service
- AssignedPermissionsService
- OvirtSDK4::SystemPermissionsService
- Defined in:
- lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb
Instance Method Summary collapse
-
#add(permission, opts = {}) ⇒ Permission
Assign a new permission to a user or group for specific entity.
-
#add_cluster_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the cluster to the group in the system.
-
#add_data_center_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the data center to the group in the system.
-
#add_group_level(permission, opts = {}) ⇒ Permission
Add a new group level permission for a given virtual machine.
-
#add_host_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the host to the group in the system.
-
#add_storage_domain_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the storage domain to the group in the system.
-
#add_template_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the template to the group in the system.
-
#add_user_level(permission, opts = {}) ⇒ Permission
Add a new user level permission for a given virtual machine.
-
#add_vm_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the vm to the group in the system.
-
#add_vm_pool_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the vm pool to the group in the system.
-
#list(opts = {}) ⇒ Array<Permission>
List all the permissions of the specific entity.
-
#permission_service(id) ⇒ PermissionService
Sub-resource locator method, returns individual permission resource on which the remainder of the URI is dispatched.
-
#service(path) ⇒ Service
Locates the service corresponding to the given path.
Methods inherited from Service
Instance Method Details
#add(permission, opts = {}) ⇒ Permission
Assign a new permission to a user or group for specific entity.
For example, to assign the UserVmManager role to the virtual machine with id 123 to the user with id 456
send a request like this:
POST /ovirt-engine/api/vms/123/permissions HTTP/1.1
With a request body like this:
<permission>
<role>
<name>UserVmManager</name>
</role>
<user id="456"/>
</permission>
To assign the SuperUser role to the system to the user with id 456 send a request like this:
POST /ovirt-engine/api/permissions HTTP/1.1
With a request body like this:
<permission>
<role>
<name>SuperUser</name>
</role>
<user id="456"/>
</permission>
If you want to assign permission to the group instead of the user please replace the user element with the
group element with proper id of the group. For example to assign the UserRole role to the cluster with
id 123 to the group with id 789 send a request like this:
POST /ovirt-engine/api/clusters/123/permissions HTTP/1.1
With a request body like this:
<permission>
<role>
<name>UserRole</name>
</role>
<group id="789"/>
</permission>
26088 26089 26090 |
# File 'lib/ovirtsdk4/services.rb', line 26088 def add(, opts = {}) internal_add(, Permission, ADD, opts) end |
#add_cluster_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the cluster to the group in the system.
26115 26116 26117 |
# File 'lib/ovirtsdk4/services.rb', line 26115 def (, opts = {}) internal_add(, Permission, ADD_CLUSTER_PERMISSION, opts) end |
#add_data_center_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the data center to the group in the system.
26142 26143 26144 |
# File 'lib/ovirtsdk4/services.rb', line 26142 def (, opts = {}) internal_add(, Permission, ADD_DATA_CENTER_PERMISSION, opts) end |
#add_group_level(permission, opts = {}) ⇒ Permission
Add a new group level permission for a given virtual machine.
26169 26170 26171 |
# File 'lib/ovirtsdk4/services.rb', line 26169 def add_group_level(, opts = {}) internal_add(, Permission, ADD_GROUP_LEVEL, opts) end |
#add_host_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the host to the group in the system.
26196 26197 26198 |
# File 'lib/ovirtsdk4/services.rb', line 26196 def (, opts = {}) internal_add(, Permission, ADD_HOST_PERMISSION, opts) end |
#add_storage_domain_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the storage domain to the group in the system.
26275 26276 26277 |
# File 'lib/ovirtsdk4/services.rb', line 26275 def (, opts = {}) internal_add(, Permission, ADD_STORAGE_DOMAIN_PERMISSION, opts) end |
#add_template_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the template to the group in the system.
26302 26303 26304 |
# File 'lib/ovirtsdk4/services.rb', line 26302 def (, opts = {}) internal_add(, Permission, ADD_TEMPLATE_PERMISSION, opts) end |
#add_user_level(permission, opts = {}) ⇒ Permission
Add a new user level permission for a given virtual machine.
26329 26330 26331 |
# File 'lib/ovirtsdk4/services.rb', line 26329 def add_user_level(, opts = {}) internal_add(, Permission, ADD_USER_LEVEL, opts) end |
#add_vm_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the vm to the group in the system.
26356 26357 26358 |
# File 'lib/ovirtsdk4/services.rb', line 26356 def (, opts = {}) internal_add(, Permission, ADD_VM_PERMISSION, opts) end |
#add_vm_pool_permission(permission, opts = {}) ⇒ Permission
Add a new permission on the vm pool to the group in the system.
26383 26384 26385 |
# File 'lib/ovirtsdk4/services.rb', line 26383 def (, opts = {}) internal_add(, Permission, ADD_VM_POOL_PERMISSION, opts) end |
#list(opts = {}) ⇒ Array<Permission>
List all the permissions of the specific entity.
For example to list all the permissions of the cluster with id 123 send a request like this:
GET /ovirt-engine/api/clusters/123/permissions HTTP/1.1
<permissions>
<permission id="456">
<cluster id="123"/>
<role id="789"/>
<user id="451"/>
</permission>
<permission id="654">
<cluster id="123"/>
<role id="789"/>
<group id="127"/>
</permission>
</permissions>
The order of the returned permissions isn’t guaranteed.
26248 26249 26250 |
# File 'lib/ovirtsdk4/services.rb', line 26248 def list(opts = {}) internal_get(LIST, opts) end |
#permission_service(id) ⇒ PermissionService
Sub-resource locator method, returns individual permission resource on which the remainder of the URI is dispatched.
26395 26396 26397 |
# File 'lib/ovirtsdk4/services.rb', line 26395 def (id) PermissionService.new(self, id) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
26406 26407 26408 26409 26410 26411 26412 26413 26414 26415 |
# File 'lib/ovirtsdk4/services.rb', line 26406 def service(path) if path.nil? || path == '' return self end index = path.index('/') if index.nil? return (path) end return (path[0..(index - 1)]).service(path[(index + 1)..-1]) end |