Class: OvirtSDK4::AssignedPermissionsService
- Defined in:
- lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb
Direct Known Subclasses
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>
2932 2933 2934 |
# File 'lib/ovirtsdk4/services.rb', line 2932 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.
2959 2960 2961 |
# File 'lib/ovirtsdk4/services.rb', line 2959 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.
2986 2987 2988 |
# File 'lib/ovirtsdk4/services.rb', line 2986 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.
3013 3014 3015 |
# File 'lib/ovirtsdk4/services.rb', line 3013 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.
3040 3041 3042 |
# File 'lib/ovirtsdk4/services.rb', line 3040 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.
3119 3120 3121 |
# File 'lib/ovirtsdk4/services.rb', line 3119 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.
3146 3147 3148 |
# File 'lib/ovirtsdk4/services.rb', line 3146 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.
3173 3174 3175 |
# File 'lib/ovirtsdk4/services.rb', line 3173 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.
3200 3201 3202 |
# File 'lib/ovirtsdk4/services.rb', line 3200 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.
3227 3228 3229 |
# File 'lib/ovirtsdk4/services.rb', line 3227 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.
3092 3093 3094 |
# File 'lib/ovirtsdk4/services.rb', line 3092 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.
3239 3240 3241 |
# File 'lib/ovirtsdk4/services.rb', line 3239 def (id) PermissionService.new(self, id) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 |
# File 'lib/ovirtsdk4/services.rb', line 3250 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 |