• LDAP与Sentry API使用


    1、Apache Ldap API

    持续发展的增强型LDAP API,用于代替JNDI、jLdap、Mozila LDAP等现存的LDAP API,是schema aware的,支持所有的LDAP server

    获取用户与用户组间的映射关系

    核心代码:

    EntryCursor cursor = connection.search( "ou=system", "(objectclass=*)", SearchScope.ONELEVEL, "*" );
     
    while ( cursor.next() )
    {
        Entry entry = cursor.get();
     
        // Process the entry
        ...
    }

    2、Sentry API

    (1)做组、角色、权限间的操作

    含义

    TSentryGroup

    TSentryRole

    角色

    TSentryPrivilege

    权限

    (2)SentryPolicyServiceClient核心方法

    获取权限情况

    Set<TSentryPrivilege> listAllPrivilegesByRoleName(requestor, roleName)

    根据角色名获取拥有的权限

    Set<TSentryRole> listRolesByGroupName(requestor, groupName)

    根据组名获取拥有的权限

    角色管理

    client.listAllRoles(requestor)

    列出所有角色

    createRole(requestor, roleName)

    创建角色

    dropRoleIfExists(requestor, roleName)

    删除角色

    赋权

    grantDatabasePrivilege(requestor, roleName, server, db, action.getAction())

    给某角色赋某库的权限

    grantTablePrivilege(requestor, roleName, server, db, table, action.getAction())

    给某角色赋某表的权限

    grantColumnPrivilege(requestor, roleName, server, db, table, column, action.getAction())

    给某角色赋某列的权限

    收权

    revokeDatabasePrivilege(requestor, roleName, server, db, action.getAction())

    回收某用户对于某库的权限

    revokeTablePrivilege(requestor, roleName, server, db, table, action.getAction())

    回收某用户对于某表的权限

    revokeColumnPrivilege(requestor, roleName, server, db, table, column, action.getAction())

    回收某用户对于某列的权限

  • 相关阅读:
    zabbix迁移思路
    top命令
    random随机数
    判断传入元素是否可见
    title_contains
    1.Selenium的工作原理以及网页上查找元素
    APP升级测试
    英语词汇
    作文 |素材笔记
    408计组 |二、数据的表示和运算
  • 原文地址:https://www.cnblogs.com/codetouse/p/12745929.html
Copyright © 2020-2023  润新知