Go-Ldap-Admin Go-Ldap-Admin
首页
  • 产品概述
  • 安装入门
  • 参与贡献
  • 最佳实践

    • 动态字段关系管理
    • 配置钉钉同步
    • 配置企业微信同步
    • 配置企业飞书同步
  • 常见问题
版本历史
  • openLDAP
捐赠支持
在线体验 (opens new window)
GitHub (opens new window)
首页
  • 产品概述
  • 安装入门
  • 参与贡献
  • 最佳实践

    • 动态字段关系管理
    • 配置钉钉同步
    • 配置企业微信同步
    • 配置企业飞书同步
  • 常见问题
版本历史
  • openLDAP
捐赠支持
在线体验 (opens new window)
GitHub (opens new window)
  • 产品概述

    • 关于go-ldap-admin
    • 平台功能概览
    • 关于修改密码的方法以及说明
  • 安装入门

    • docker-compose在本地快速拉起测试环境
    • 生产环境原生部署流程
    • 本地开发指南
    • 快速开始
    • CentOS7 安装 Go-Ldap-Admin
  • 参与贡献

    • 问题反馈
  • 最佳实践

    • ldap用户以及分组的设计思路
    • 动态字段关系管理
    • 配置钉钉同步
    • 配置企业微信同步
    • 配置飞书同步
    • 三方IM数据同步调试
  • 常见问题

    • 问题汇总摘要
    • 如何将ldap中的basedn更改为自己定义的
    • 如何自定义秘钥对儿
      • 哪里用到了
        • 后端
        • 前端
      • 如何自定义
      • 注意事项
    • 如何备份
  • 项目相关
  • 常见问题
二丫讲梵
2022-12-13
目录

如何自定义秘钥对儿

先说:强烈建议各位都自定义生成一个秘钥对儿,不要使用项目默认的秘钥对儿。

有朋友在部署项目的时候,想要自定义加密认证的秘钥对,本来来讲下如何配置。

此问题首问于:https://github.com/eryajf/go-ldap-admin/issues/135 (opens new window)

# 哪里用到了

要想自定义秘钥对,首先我们需要知道哪里用到了,这样正确地配置自定义的秘钥,从而正常使用。

# 后端

在后端的配置文件config.yml中,我们看到这两个配置项:

  # rsa公钥文件路径(config.yml相对路径, 也可以填绝对路径)
  rsa-public-key: go-ldap-admin-pub.pem
  # rsa私钥文件路径(config.yml相对路径, 也可以填绝对路径)
  rsa-private-key: go-ldap-admin-priv.pem
1
2
3
4

那么新的秘钥对就要替换如上两个文件的内容。

# 前端

有的同学只替换了后端,导致请求的时候,用户密码验证失败,其实前端也用到了,用到了公钥,从而用户在登陆的时候,前端发给后端的请求中,能够将用户密码加密传输,而非明文传输。

前端的 .env.development配置文件中存储:

VUE_APP_PUBLIC_KEY="-----BEGIN PUBLIC KEY-----MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7DSaq24RM3FdYQumg7DQPpif8sS6HOjtNAGhUN8oW9Gh4aIRZICxUi3RMywGZPZJiw6hAgnEKBYr3YbqcMgiaMvybyUCBR8tjtNx+vh8dg8b/5C/jmjk5tQg9bKG78LF+xdpbWIi/5RvMP8k6S2DID/z97s9yW8d3K8j/IUWhgwIDAQAB-----END PUBLIC KEY-----"
1

当然线上的话,文件应该是 .env.production。

**注意:**如上配置存储的是公钥内容,可以将公钥内容合并成单行作为一个字符串,放到配置文件当中。

# 如何自定义

通过如下两条命令可以生成自定义的秘钥对:

$ openssl genrsa -out go-ldap-admin-priv.pem 1024
$ openssl rsa -in go-ldap-admin-priv.pem -pubout -out go-ldap-admin-pub.pem
1
2

然后把生成的两个文件放到后端的二进制同级目录下,把公钥的内容,配置到前端的配置文件中,然后重新部署项目。

# 注意事项

自定义秘钥的过程中,有以下注意事项:

  • 前后端配置文件中的秘钥对一定要对应上,否则会在登陆的时候出现密码校验失败的情况。
  • 配置完自定义的秘钥对之后,需要把数据库清空,让数据基于新的秘钥重新初始化,否则数据库存储的基于老秘钥加密的密码,用新的秘钥验证的时候,仍然会报密码验证失败的情况。
  • 另外需要注意的就是,自定义秘钥之后,就不能再使用项目后续更新的前后端镜像,而需要自己构建镜像来进行更新了。
帮助我们改善此页面 (opens new window)
上次更新: 2023/03/31, 22:25:48
如何将ldap中的basedn更改为自己定义的
如何备份

← 如何将ldap中的basedn更改为自己定义的 如何备份→

Theme by Vdoing | Copyright © 2022-2023 Eryajf | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式