Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
J
jumpserver
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ops
jumpserver
Commits
06b2c623
Commit
06b2c623
authored
Sep 16, 2016
by
ibuler
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Modify some bug
parent
a0910367
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
24 additions
and
34 deletions
+24
-34
models.py
apps/perms/models.py
+8
-17
asset_permission_asset_list.html
apps/perms/templates/perms/asset_permission_asset_list.html
+2
-2
asset_permission_detail.html
apps/perms/templates/perms/asset_permission_detail.html
+1
-5
asset_permission_user_list.html
apps/perms/templates/perms/asset_permission_user_list.html
+2
-2
utils.py
apps/perms/utils.py
+6
-5
user_detail.html
apps/users/templates/users/user_detail.html
+5
-3
No files found.
apps/perms/models.py
View file @
06b2c623
...
@@ -32,38 +32,29 @@ class AssetPermission(models.Model):
...
@@ -32,38 +32,29 @@ class AssetPermission(models.Model):
return
True
return
True
return
True
return
True
@staticmethod
def
set_inherited
(
obj
,
inherited_from
=
None
):
setattr
(
obj
,
'inherited'
,
True
)
setattr
(
obj
,
'inherited_from'
,
inherited_from
)
return
obj
@staticmethod
def
set_non_inherited
(
obj
):
setattr
(
obj
,
'inherited'
,
False
)
return
obj
def
get_granted_users
(
self
):
def
get_granted_users
(
self
):
users_granted_direct
=
map
(
self
.
set_non_inherited
,
self
.
users
.
all
())
return
list
(
set
(
self
.
users
.
all
())
|
self
.
get_granted_user_groups_member
())
return
list
(
set
(
users_granted_direct
)
|
self
.
get_granted_user_groups_member
())
def
get_granted_user_groups_member
(
self
):
def
get_granted_user_groups_member
(
self
):
users
=
set
()
users
=
set
()
for
user_group
in
self
.
user_groups
.
all
():
for
user_group
in
self
.
user_groups
.
all
():
for
user
in
user_group
.
users
.
all
():
for
user
in
user_group
.
users
.
all
():
user
=
self
.
set_inherited
(
user
,
inherited_from
=
user_group
)
setattr
(
user
,
'is_inherit_from_user_groups'
,
True
)
setattr
(
user
,
'inherit_from_user_groups'
,
getattr
(
user
,
b
'inherit_from_user_groups'
,
set
())
.
add
(
user_group
))
users
.
add
(
user
)
users
.
add
(
user
)
return
users
return
users
def
get_granted_assets
(
self
):
def
get_granted_assets
(
self
):
assets_granted_direct
=
map
(
self
.
set_non_inherited
,
self
.
assets
.
all
())
return
list
(
set
(
self
.
assets
.
all
())
|
self
.
get_granted_asset_groups_member
())
return
list
(
set
(
assets_granted_direct
or
[])
|
self
.
get_granted_asset_groups_member
())
def
get_granted_asset_groups_member
(
self
):
def
get_granted_asset_groups_member
(
self
):
assets
=
set
()
assets
=
set
()
for
asset_group
in
self
.
asset_groups
.
all
():
for
asset_group
in
self
.
asset_groups
.
all
():
for
asset
in
asset_group
.
assets
.
all
():
for
asset
in
asset_group
.
assets
.
all
():
asset
=
self
.
set_inherited
(
asset
,
inherited_from
=
asset_group
)
setattr
(
asset
,
'is_inherit_from_asset_groups'
,
True
)
setattr
(
asset
,
'inherit_from_asset_groups'
,
getattr
(
asset
,
b
'inherit_from_user_groups'
,
set
())
.
add
(
asset_group
))
assets
.
add
(
asset
)
assets
.
add
(
asset
)
return
assets
return
assets
...
...
apps/perms/templates/perms/asset_permission_asset_list.html
View file @
06b2c623
...
@@ -26,7 +26,7 @@
...
@@ -26,7 +26,7 @@
</li>
</li>
<li
class=
"active"
>
<li
class=
"active"
>
<a
href=
"{% url 'perms:asset-permission-asset-list' pk=asset_permission.id %}"
class=
"text-center"
>
<a
href=
"{% url 'perms:asset-permission-asset-list' pk=asset_permission.id %}"
class=
"text-center"
>
<i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'Assets and asset gr
uo
ps' %}
</a>
<i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'Assets and asset gr
ou
ps' %}
</a>
</li>
</li>
<form
id=
"search_form"
method=
"get"
action=
""
class=
"pull-right mail-search"
>
<form
id=
"search_form"
method=
"get"
action=
""
class=
"pull-right mail-search"
>
<div
class=
"input-group"
>
<div
class=
"input-group"
>
...
@@ -85,7 +85,7 @@
...
@@ -85,7 +85,7 @@
</td>
</td>
<td>
<td>
<button
class=
"btn btn-danger btn-xs btn_delete_user_group
"
type=
"button"
style=
"float: right;"
><i
class=
"fa fa-minus"
></i></button>
<button
title=
"{{ asset.inherit_from_asset_groups }}"
class=
"btn btn-danger btn-xs {% if asset.is_inherit_from_asset_groups %} disabled {% endif %}
"
type=
"button"
style=
"float: right;"
><i
class=
"fa fa-minus"
></i></button>
</td>
</td>
</tr>
</tr>
{% endfor %}
{% endfor %}
...
...
apps/perms/templates/perms/asset_permission_detail.html
View file @
06b2c623
...
@@ -26,7 +26,7 @@
...
@@ -26,7 +26,7 @@
</li>
</li>
<li>
<li>
<a
href=
"{% url 'perms:asset-permission-asset-list' pk=asset_permission.id %}"
class=
"text-center"
>
<a
href=
"{% url 'perms:asset-permission-asset-list' pk=asset_permission.id %}"
class=
"text-center"
>
<i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'Assets and asset gr
uo
ps' %}
</a>
<i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'Assets and asset gr
ou
ps' %}
</a>
</li>
</li>
</ul>
</ul>
</div>
</div>
...
@@ -76,10 +76,6 @@
...
@@ -76,10 +76,6 @@
<td>
{% trans 'System user count' %}:
</td>
<td>
{% trans 'System user count' %}:
</td>
<td><b>
{{ asset_permission.system_users.count }}
</b></td>
<td><b>
{{ asset_permission.system_users.count }}
</b></td>
</tr>
</tr>
<tr>
<td>
{% trans 'Action' %}:
</td>
<td><b>
{{ asset_permission.get_action_display }}
</b></td>
</tr>
<tr>
<tr>
<td>
{% trans 'Date expired' %}:
</td>
<td>
{% trans 'Date expired' %}:
</td>
<td><b>
{{ asset_permission.date_expired }}
</b></td>
<td><b>
{{ asset_permission.date_expired }}
</b></td>
...
...
apps/perms/templates/perms/asset_permission_user_list.html
View file @
06b2c623
...
@@ -26,7 +26,7 @@
...
@@ -26,7 +26,7 @@
</li>
</li>
<li>
<li>
<a
href=
"{% url 'perms:asset-permission-asset-list' pk=asset_permission.id %}"
class=
"text-center"
>
<a
href=
"{% url 'perms:asset-permission-asset-list' pk=asset_permission.id %}"
class=
"text-center"
>
<i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'Assets and asset gr
uo
ps' %}
</a>
<i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'Assets and asset gr
ou
ps' %}
</a>
</li>
</li>
<form
id=
"search_form"
method=
"get"
action=
""
class=
"pull-right mail-search"
>
<form
id=
"search_form"
method=
"get"
action=
""
class=
"pull-right mail-search"
>
<div
class=
"input-group"
>
<div
class=
"input-group"
>
...
@@ -85,7 +85,7 @@
...
@@ -85,7 +85,7 @@
</td>
</td>
<td>
<td>
<button
class=
"btn btn-danger btn-xs btn_delete_user_group {% if user.i
nherited
%} disabled {% endif %}"
type=
"button"
style=
"float: right;"
><i
class=
"fa fa-minus"
></i></button>
<button
class=
"btn btn-danger btn-xs btn_delete_user_group {% if user.i
s_inherit_from_user_groups
%} disabled {% endif %}"
type=
"button"
style=
"float: right;"
><i
class=
"fa fa-minus"
></i></button>
</td>
</td>
</tr>
</tr>
{% endfor %}
{% endfor %}
...
...
apps/perms/utils.py
View file @
06b2c623
...
@@ -73,10 +73,6 @@ def get_user_granted_asset_groups_inherit_from_user_groups(user):
...
@@ -73,10 +73,6 @@ def get_user_granted_asset_groups_inherit_from_user_groups(user):
:return: {asset_group: {system_user1, }, asset_group2: {system_user1, system_user2]}
:return: {asset_group: {system_user1, }, asset_group2: {system_user1, system_user2]}
"""
"""
asset_groups
=
{}
asset_groups
=
{}
if
not
isinstance
(
user
,
User
):
return
asset_groups
user_groups
=
user
.
groups
.
all
()
user_groups
=
user
.
groups
.
all
()
asset_permissions
=
set
()
asset_permissions
=
set
()
...
@@ -140,7 +136,7 @@ def get_user_granted_assets_direct(user):
...
@@ -140,7 +136,7 @@ def get_user_granted_assets_direct(user):
def
get_user_granted_assets_inherit_from_user_groups
(
user
):
def
get_user_granted_assets_inherit_from_user_groups
(
user
):
"""Return a
ll assets granted of the user
"""Return a
ssets granted of the user inherit from user groups
:param user: Instance of :class: ``User``
:param user: Instance of :class: ``User``
:return: {asset1: {system_user1, system_user2}, asset2: {...}}
:return: {asset1: {system_user1, system_user2}, asset2: {...}}
...
@@ -160,6 +156,11 @@ def get_user_granted_assets_inherit_from_user_groups(user):
...
@@ -160,6 +156,11 @@ def get_user_granted_assets_inherit_from_user_groups(user):
def
get_user_granted_assets
(
user
):
def
get_user_granted_assets
(
user
):
"""Return assets granted of the user inherit from user groups
:param user: Instance of :class: ``User``
:return: {asset1: {system_user1, system_user2}, asset2: {...}}
"""
assets_direct
=
get_user_granted_assets_direct
(
user
)
assets_direct
=
get_user_granted_assets_direct
(
user
)
assets_inherited
=
get_user_granted_assets_inherit_from_user_groups
(
user
)
assets_inherited
=
get_user_granted_assets_inherit_from_user_groups
(
user
)
assets
=
assets_inherited
assets
=
assets_inherited
...
...
apps/users/templates/users/user_detail.html
View file @
06b2c623
...
@@ -17,10 +17,12 @@
...
@@ -17,10 +17,12 @@
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"panel-options"
>
<div
class=
"panel-options"
>
<ul
class=
"nav nav-tabs"
>
<ul
class=
"nav nav-tabs"
>
<li
class=
"active"
><a
href=
""
class=
"text-center"
><i
class=
"fa fa-laptop"
></i>
{% trans 'User detail' %}
</a>
<li
class=
"active"
>
<a
href=
""
class=
"text-center"
><i
class=
"fa fa-laptop"
></i>
{% trans 'User detail' %}
</a>
</li>
</li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'User assets' %}
</a></li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'Asset permission list' %}
</a></li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-bar-chart-o"
></i>
{% trans 'User log' %}
</a></li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-cubes"
></i>
{% trans 'Asset granted' %}
</a></li>
<li><a
href=
""
class=
"text-center"
><i
class=
"fa fa-calculator-o"
></i>
{% trans 'Login history' %}
</a></li>
</ul>
</ul>
</div>
</div>
<div
class=
"tab-content"
>
<div
class=
"tab-content"
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment