当前位置: 首页 > 知识库问答 >
问题:

Grails spring security LDAP从LDAP base获取角色

鲁景山
2023-03-14
plugin:
    springsecurity:
    #LDAP configuration
        logout.postOnly: false
        securityConfigType: 'InterceptUrlMap'
        debug:
            useFilter: true
        #useBasicAuth: true
        providerNames: ['ldapAuthProvider', 'anonymousAuthenticationProvider'] 
        ldap:
            context:
                managerDn: '****'
                managerPassword: '**password**'
                server: 'ldap://**my server**'
            authorities:
                ignorePartialResultException: true # typically needed for Active Directory
                groupSearchFilter: 'member={0}' # Active Directory specific - the example settings will
                retrieveGroupRoles: true # to get Roles from LDAP
                groupRoleAttribute: 'cn'
            search:
                base: DC=HQ,DC=ROOT,DC=AD
                filter: 'sAMAccountName={0}' # for Active Directory you need this
                searchSubtree: true
                attributesToReturn: ['mailNickName','name','mail','extensionAttribute13','extensionAttribute14','extensionAttribute15','company'] # extra attributes you want returned
            auth:
                hideUserNotFoundExceptions: false

你能告诉我如何向控制台或视图显示用户角色以进行测试吗?我可以通过从ldap中的用户列中获取用户角色来重新定义(默认情况下从ldap'cn'获取角色)用户角色吗?

谢谢你。

共有1个答案

闽承望
2023-03-14

将以下服务注入控制器:

def springSecurityService 

然后访问如下角色:

def roles = springSecurityService.getPrincipal().getAuthorities()

同样,在使用application.yml时,您应该像这样指定providerNames&而不是列表样式:

providerNames:
    - ldapAuthProvider
    - anonymousAuthenticationProvider
attributesToReturn:
    - mailNickName
....
 类似资料:
  • 我目前正在编写一个位于weblogic服务器上的web应用程序。 我正在使用WebLogic的安全容器来验证对应用程序的访问。在weblogic.xml中,我有一个映射: ROLE_PORTAL_USER。 因此,我的问题是如何从weblogic获得角色并授予用户这些角色。例如,如果用户在weblogic中定义了security role Admin,我将如何在应用程序中读取该角色并给他们一个适当

  • 接口说明 获取角色列表 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 API地址 GET /permissions/api/team/role/v1.0.0/list 是否需要登录 是 请求字段说明 参数 类型 请求类型 是否必须 说明 token string header 是 当前登录用户的TOKEN sidx string query 否 排序字

  • 接口说明 获取角色列表 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 如开启https功能,请求地址的协议应改为https,如:https://www.example.com/wish3dearth/api/access/v1.0.0/getLicenseInfo API地址 GET /permissions/api/team/role/v1.0.0/

  • 问题内容: 是否可以通过Chrome的控制台找到元素的控制器?我可以通过在“ 元素面板”中 选择 元素 并使用来获得对该组件的引用 有一个属性(看起来像一个构造函数),但是我不确定该怎么做。有什么办法可以从这里找到控制器的名称吗? 问题答案: 如果您只是这样做(如果您安装了Batarang Chrome扩展程序),则应该能够访问所选元素的作用域的功能和属性。这还应包括控制器在示波器上公开的所有功能

  • 接口说明 获取角色详细信息 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 API地址 GET /permissions/api/team/role/v1.0.0/info 是否需要登录 是 请求字段说明 参数 类型 请求类型 是否必须 说明 token string header 是 当前登录用户的TOKEN roleId string query 是

  • 接口说明 获取角色详细信息 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 如开启https功能,请求地址的协议应改为https,如:https://www.example.com/wish3dearth/api/access/v1.0.0/getLicenseInfo API地址 GET /permissions/api/team/role/v1.0.