美文网首页个人学习
kylin-kylin基于SpringSecurity添加/删除

kylin-kylin基于SpringSecurity添加/删除

作者: 李小李的路 | 来源:发表于2020-02-17 16:44 被阅读0次
  • 基于kylin-3.0

kylin添加用户

  • 基于spring security的方式进行;
  • 首先,kylin的web页面登陆是依据的spring security,加密的方式有两种:EncryptMethod: AES or BCrypt,这里采用的是BCrypt的方式;
  • 第一步:设定密码,例如为12345;
  • 第二步:获取加密后的密码,加密方式源码(module:server-base: org.apache.kylin.rest.security.PasswordPlaceholderConfigurer),具体步骤如下:
cd ${KYLIN_HOME}/bin
kylin.sh org.apache.kylin.rest.security.PasswordPlaceholderConfigurer  BCrypt   123456
# 加密后的密码会在界面中打印出来
  • 密码加密
  • 第三步:切换到 $KYLIN_HOME/tomcat/webapps/kylin/WEB-INF/classes/kylinSecurity.xml
    • step-1找到<beans profile="testing">,添加一个bean对象,(id不能重复)如下所示:
<bean class="org.springframework.security.core.userdetails.User" id="modelerUser8">
             <constructor-arg value="TEST"/>
             <constructor-arg
                     value="$2a$10$lYbNllH44G2tlexlYQLD1egl6lNynnWo81KMGrLepqNhgVt98VY6y"/>
             <constructor-arg ref="modelerAuthorities"/>
         </bean>

  • step-2: 找到bean对象kylinUserAuthProvider,将step-1中的id添加到list中;
 <bean id="kylinUserAuthProvider"
              class="org.apache.kylin.rest.security.KylinAuthenticationProvider">
            <constructor-arg>
                <bean class="org.springframework.security.authentication.dao.DaoAuthenticationProvider">
                    <property name="userDetailsService">
                        <bean class="org.springframework.security.provisioning.InMemoryUserDetailsManager">
                            <constructor-arg>
                                <util:list
                                        value-type="org.springframework.security.core.userdetails.User">
                                    <ref bean="adminUser"></ref>
                                    <ref bean="modelerUser"></ref>
                                    <ref bean="analystUser"></ref>
                                    <ref bean="modelerUser8"></ref>
                                </util:list>
                            </constructor-arg>
                        </bean>
                    </property>

                    <property name="passwordEncoder" ref="passwordEncoder"></property>
                </bean>
            </constructor-arg>
        </bean>
  • 第四步:将kylinSecurity.xml 分发到kylin集群各个节点中;
  • 第五步:重启kylin集群;

相关文章

网友评论

    本文标题:kylin-kylin基于SpringSecurity添加/删除

    本文链接:https://www.haomeiwen.com/subject/nvobfhtx.html