mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-08 02:39:22 +00:00
[Update] 修改用户和用户组关系发生变化时,刷新权限
This commit is contained in:
@@ -2,11 +2,11 @@
|
||||
#
|
||||
|
||||
from django.dispatch import receiver
|
||||
# from django.db.models.signals import post_save
|
||||
from django.db.models.signals import post_save, m2m_changed
|
||||
|
||||
from common.utils import get_logger
|
||||
from .signals import post_user_create
|
||||
# from .models import User
|
||||
from .models import User
|
||||
|
||||
logger = get_logger(__file__)
|
||||
|
||||
@@ -28,3 +28,14 @@ def on_user_create(sender, user=None, **kwargs):
|
||||
logger.info(" - Sending welcome mail ...".format(user.name))
|
||||
if user.email:
|
||||
send_user_created_mail(user)
|
||||
|
||||
|
||||
@receiver(m2m_changed, sender=User.groups.through)
|
||||
def on_user_groups_change(sender, instance=None, action='', **kwargs):
|
||||
"""
|
||||
资产节点发生变化时,刷新节点
|
||||
"""
|
||||
if action.startswith('post'):
|
||||
logger.debug("User group member change signal recv: {}".format(instance))
|
||||
from perms.utils import AssetPermissionUtilV2
|
||||
AssetPermissionUtilV2.expire_all_user_tree_cache()
|
||||
|
Reference in New Issue
Block a user