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
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
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
With a request body like this:
<permission>
<role>
<name>UserRole</name>
</role>
<group id="789"/>
</permission>
2943 2944 2945 |
# File 'lib/ovirtsdk4/services.rb', line 2943 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.
2970 2971 2972 |
# File 'lib/ovirtsdk4/services.rb', line 2970 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.
2997 2998 2999 |
# File 'lib/ovirtsdk4/services.rb', line 2997 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.
3024 3025 3026 |
# File 'lib/ovirtsdk4/services.rb', line 3024 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.
3051 3052 3053 |
# File 'lib/ovirtsdk4/services.rb', line 3051 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.
3131 3132 3133 |
# File 'lib/ovirtsdk4/services.rb', line 3131 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.
3158 3159 3160 |
# File 'lib/ovirtsdk4/services.rb', line 3158 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.
3185 3186 3187 |
# File 'lib/ovirtsdk4/services.rb', line 3185 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.
3212 3213 3214 |
# File 'lib/ovirtsdk4/services.rb', line 3212 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.
3239 3240 3241 |
# File 'lib/ovirtsdk4/services.rb', line 3239 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
<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.
3104 3105 3106 |
# File 'lib/ovirtsdk4/services.rb', line 3104 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.
3251 3252 3253 |
# File 'lib/ovirtsdk4/services.rb', line 3251 def (id) PermissionService.new(self, id) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 |
# File 'lib/ovirtsdk4/services.rb', line 3262 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 |