projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' into 1971-show-image-thumbnails
[arvados.git]
/
services
/
api
/
app
/
models
/
user.rb
diff --git
a/services/api/app/models/user.rb
b/services/api/app/models/user.rb
index 5c03eda519533d839abfca77b07b80f6342bfc2c..50dc668448a9eee7a81a0924cd1c0b27b7b8b18b 100644
(file)
--- a/
services/api/app/models/user.rb
+++ b/
services/api/app/models/user.rb
@@
-80,10
+80,11
@@
class User < ArvadosModel
Group.where('owner_uuid in (?)', lookup_uuids).each do |group|
newgroups << [group.owner_uuid, group.uuid, 'can_manage']
end
Group.where('owner_uuid in (?)', lookup_uuids).each do |group|
newgroups << [group.owner_uuid, group.uuid, 'can_manage']
end
- Link.where('tail_uuid in (?) and link_class = ? and
head_kind in (
?)',
+ Link.where('tail_uuid in (?) and link_class = ? and
(head_uuid like ? or head_uuid like
?)',
lookup_uuids,
'permission',
lookup_uuids,
'permission',
- ['arvados#group', 'arvados#user']).each do |link|
+ Group.uuid_like_pattern,
+ User.uuid_like_pattern).each do |link|
newgroups << [link.tail_uuid, link.head_uuid, link.name]
end
newgroups.each do |tail_uuid, head_uuid, perm_name|
newgroups << [link.tail_uuid, link.head_uuid, link.name]
end
newgroups.each do |tail_uuid, head_uuid, perm_name|
@@
-128,7
+129,6
@@
class User < ArvadosModel
def unsetup
# delete oid_login_perms for this user
oid_login_perms = Link.where(tail_uuid: self.email,
def unsetup
# delete oid_login_perms for this user
oid_login_perms = Link.where(tail_uuid: self.email,
- head_kind: 'arvados#user',
link_class: 'permission',
name: 'can_login')
oid_login_perms.each do |perm|
link_class: 'permission',
name: 'can_login')
oid_login_perms.each do |perm|
@@
-137,7
+137,6
@@
class User < ArvadosModel
# delete repo_perms for this user
repo_perms = Link.where(tail_uuid: self.uuid,
# delete repo_perms for this user
repo_perms = Link.where(tail_uuid: self.uuid,
- head_kind: 'arvados#repository',
link_class: 'permission',
name: 'can_write')
repo_perms.each do |perm|
link_class: 'permission',
name: 'can_write')
repo_perms.each do |perm|
@@
-146,7
+145,6
@@
class User < ArvadosModel
# delete vm_login_perms for this user
vm_login_perms = Link.where(tail_uuid: self.uuid,
# delete vm_login_perms for this user
vm_login_perms = Link.where(tail_uuid: self.uuid,
- head_kind: 'arvados#virtualMachine',
link_class: 'permission',
name: 'can_login')
vm_login_perms.each do |perm|
link_class: 'permission',
name: 'can_login')
vm_login_perms.each do |perm|
@@
-159,7
+157,6
@@
class User < ArvadosModel
end.first
group_perms = Link.where(tail_uuid: self.uuid,
head_uuid: group[:uuid],
end.first
group_perms = Link.where(tail_uuid: self.uuid,
head_uuid: group[:uuid],
- head_kind: 'arvados#group',
link_class: 'permission',
name: 'can_read')
group_perms.each do |perm|
link_class: 'permission',
name: 'can_read')
group_perms.each do |perm|
@@
-168,7
+165,6
@@
class User < ArvadosModel
# delete any signatures by this user
signed_uuids = Link.where(link_class: 'signature',
# delete any signatures by this user
signed_uuids = Link.where(link_class: 'signature',
- tail_kind: 'arvados#user',
tail_uuid: self.uuid)
signed_uuids.each do |sign|
Link.delete sign
tail_uuid: self.uuid)
signed_uuids.each do |sign|
Link.delete sign
@@
-253,17
+249,14
@@
class User < ArvadosModel
# Check oid_login_perm
oid_login_perms = Link.where(tail_uuid: self.email,
# Check oid_login_perm
oid_login_perms = Link.where(tail_uuid: self.email,
- head_kind: 'arvados#user',
link_class: 'permission',
link_class: 'permission',
- name: 'can_login')
+ name: 'can_login')
.where("head_uuid like ?", User.uuid_like_pattern)
if !oid_login_perms.any?
# create openid login permission
oid_login_perm = Link.create(link_class: 'permission',
name: 'can_login',
if !oid_login_perms.any?
# create openid login permission
oid_login_perm = Link.create(link_class: 'permission',
name: 'can_login',
- tail_kind: 'email',
tail_uuid: self.email,
tail_uuid: self.email,
- head_kind: 'arvados#user',
head_uuid: self.uuid,
properties: login_perm_props
)
head_uuid: self.uuid,
properties: login_perm_props
)
@@
-290,7
+283,6
@@
class User < ArvadosModel
# Look for existing repository access for this repo
repo_perms = Link.where(tail_uuid: self.uuid,
# Look for existing repository access for this repo
repo_perms = Link.where(tail_uuid: self.uuid,
- head_kind: 'arvados#repository',
head_uuid: repo[:uuid],
link_class: 'permission',
name: 'can_write')
head_uuid: repo[:uuid],
link_class: 'permission',
name: 'can_write')
@@
-305,9
+297,7
@@
class User < ArvadosModel
repo ||= Repository.create(name: repo_name)
logger.info { "repo uuid: " + repo[:uuid] }
repo ||= Repository.create(name: repo_name)
logger.info { "repo uuid: " + repo[:uuid] }
- repo_perm = Link.create(tail_kind: 'arvados#user',
- tail_uuid: self.uuid,
- head_kind: 'arvados#repository',
+ repo_perm = Link.create(tail_uuid: self.uuid,
head_uuid: repo[:uuid],
link_class: 'permission',
name: 'can_write')
head_uuid: repo[:uuid],
link_class: 'permission',
name: 'can_write')
@@
-335,7
+325,6
@@
class User < ArvadosModel
login_perms = Link.where(tail_uuid: self.uuid,
head_uuid: vm[:uuid],
login_perms = Link.where(tail_uuid: self.uuid,
head_uuid: vm[:uuid],
- head_kind: 'arvados#virtualMachine',
link_class: 'permission',
name: 'can_login')
link_class: 'permission',
name: 'can_login')
@@
-348,9
+337,7
@@
class User < ArvadosModel
end
if !perm_exists
end
if !perm_exists
- login_perm = Link.create(tail_kind: 'arvados#user',
- tail_uuid: self.uuid,
- head_kind: 'arvados#virtualMachine',
+ login_perm = Link.create(tail_uuid: self.uuid,
head_uuid: vm[:uuid],
link_class: 'permission',
name: 'can_login',
head_uuid: vm[:uuid],
link_class: 'permission',
name: 'can_login',
@@
-379,14
+366,11
@@
class User < ArvadosModel
group_perms = Link.where(tail_uuid: self.uuid,
head_uuid: group[:uuid],
group_perms = Link.where(tail_uuid: self.uuid,
head_uuid: group[:uuid],
- head_kind: 'arvados#group',
link_class: 'permission',
name: 'can_read')
if !group_perms.any?
link_class: 'permission',
name: 'can_read')
if !group_perms.any?
- group_perm = Link.create(tail_kind: 'arvados#user',
- tail_uuid: self.uuid,
- head_kind: 'arvados#group',
+ group_perm = Link.create(tail_uuid: self.uuid,
head_uuid: group[:uuid],
link_class: 'permission',
name: 'can_read')
head_uuid: group[:uuid],
link_class: 'permission',
name: 'can_read')
@@
-406,9
+390,7
@@
class User < ArvadosModel
act_as_system_user do
Link.create(link_class: 'permission',
name: 'can_manage',
act_as_system_user do
Link.create(link_class: 'permission',
name: 'can_manage',
- tail_kind: 'arvados#group',
tail_uuid: system_group_uuid,
tail_uuid: system_group_uuid,
- head_kind: 'arvados#user',
head_uuid: self.uuid)
end
end
head_uuid: self.uuid)
end
end