當前位置: 首頁>>代碼示例>>Python>>正文


Python CRYPTOR.encrypt方法代碼示例

本文整理匯總了Python中jumpserver.api.CRYPTOR.encrypt方法的典型用法代碼示例。如果您正苦於以下問題:Python CRYPTOR.encrypt方法的具體用法?Python CRYPTOR.encrypt怎麽用?Python CRYPTOR.encrypt使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在jumpserver.api.CRYPTOR的用法示例。


在下文中一共展示了CRYPTOR.encrypt方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: perm_role_add

# 需要導入模塊: from jumpserver.api import CRYPTOR [as 別名]
# 或者: from jumpserver.api.CRYPTOR import encrypt [as 別名]
def perm_role_add(request):
    """
    add role page
    """
    # 渲染數據
    header_title, path1, path2 = "係統用戶", "係統用戶管理", "添加係統用戶"
    sudos = PermSudo.objects.all()

    if request.method == "POST":
        # 獲取參數: name, comment
        name = request.POST.get("role_name", "").strip()
        comment = request.POST.get("role_comment", "")
        password = request.POST.get("role_password", "")
        key_content = request.POST.get("role_key", "")
        sudo_ids = request.POST.getlist('sudo_name')

        try:
            if get_object(PermRole, name=name):
                raise ServerError(u'已經存在該用戶 %s' % name)
            if name == "root":
                raise ServerError(u'禁止使用root用戶作為係統用戶,這樣非常危險!')
            default = get_object(Setting, name='default')
            if len(password) > 64:
                raise ServerError(u'密碼長度不能超過64位!')

            if password:
                encrypt_pass = CRYPTOR.encrypt(password)
            else:
                encrypt_pass = CRYPTOR.encrypt(CRYPTOR.gen_rand_pass(20))
            # 生成隨機密碼,生成秘鑰對
            sudos_obj = [get_object(PermSudo, id=sudo_id) for sudo_id in sudo_ids]
            if key_content:
                try:
                    key_path = gen_keys(key=key_content)
                except SSHException, e:
                    raise ServerError(e)
            else:
                key_path = gen_keys()
            logger.debug('generate role key: %s' % key_path)
            role = PermRole(name=name, comment=comment, password=encrypt_pass, key_path=key_path)
            role.save()
            role.sudo = sudos_obj
            msg = u"添加係統用戶: %s" % name
            return HttpResponseRedirect(reverse('role_list'))
開發者ID:240325184,項目名稱:jumpserver,代碼行數:46,代碼來源:views.py

示例2: perm_role_edit

# 需要導入模塊: from jumpserver.api import CRYPTOR [as 別名]
# 或者: from jumpserver.api.CRYPTOR import encrypt [as 別名]
def perm_role_edit(request):
    """
    edit role page
    """
    # 渲染數據
    header_title, path1, path2 = "係統用戶", "係統用戶管理", "係統用戶編輯"

    # 渲染數據
    role_id = request.GET.get("id")
    role = PermRole.objects.get(id=role_id)
    role_pass = CRYPTOR.decrypt(role.password)
    sudo_all = PermSudo.objects.all()
    role_sudos = role.sudo.all()
    sudo_all = PermSudo.objects.all()
    if request.method == "GET":
        return my_render('jperm/perm_role_edit.html', locals(), request)

    if request.method == "POST":
        # 獲取 POST 數據
        role_name = request.POST.get("role_name")
        role_password = request.POST.get("role_password")
        role_comment = request.POST.get("role_comment")
        role_sudo_names = request.POST.getlist("sudo_name")
        role_sudos = [PermSudo.objects.get(id=sudo_id) for sudo_id in role_sudo_names]
        key_content = request.POST.get("role_key", "")
        if len(role_password) > 64:
            raise ServerError(u'密碼長度不能超過64位!')

        try:
            if not role:
                raise ServerError('該係統用戶不能存在')

            if role_name == "root":
                raise ServerError(u'禁止使用root用戶作為係統用戶,這樣非常危險!')

            if role_password:
                encrypt_pass = CRYPTOR.encrypt(role_password)
                role.password = encrypt_pass
            # 生成隨機密碼,生成秘鑰對
            if key_content:
                try:
                    key_path = gen_keys(key=key_content, key_path_dir=role.key_path)
                except SSHException:
                    raise ServerError('輸入的密鑰不合法')
                logger.debug('Recreate role key: %s' % role.key_path)
            # 寫入數據庫
            role.name = role_name
            role.comment = role_comment
            role.sudo = role_sudos

            role.save()
            msg = u"更新係統用戶: %s" % role.name
            return HttpResponseRedirect(reverse('role_list'))
        except ServerError, e:
            error = e
開發者ID:240325184,項目名稱:jumpserver,代碼行數:57,代碼來源:views.py


注:本文中的jumpserver.api.CRYPTOR.encrypt方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。