Confluence 5 通过重置密码来获得管理员权限

简介: 本页中的内容:在开始之前第一步:确定管理员第2步:替换管理员密码第3步:将内部目录放置为第一位第4步:清理如果你不能作为管理员登录 Confluence (例如,你弄丢了你的管理员密码),你可以以恢复模式启动 Confluence 来恢复你的管理员用户权限。

本页中的内容:


如果你不能作为管理员登录 Confluence (例如,你弄丢了你的管理员密码),你可以以恢复模式启动 Confluence 来恢复你的管理员用户权限。

如果你使用的是下面的方式,那么这个指南可能并不适用你:

  • Confluence 被配置通过使用 Crowd 来 SSO。
    这个指南只覆盖了如何从 Confluence 内部目录中重置管理员用户密码。如果你启用了  Crowd SSO,你就不能通过这个方法重置你的系统管理员密码。请参考 Integrating Crowd with Atlassian Confluence 页面的内容来获取如何启用和禁用 Crowd SSO。
  • 你正在使用 Confluence 3.4 或更早的版本。
    请参考操作的版本 OSUser 或者 AtlassianUser

如果你还在使用早期的版本的话,我们建议你尽快升级。

在开始之前

下面的步骤我们是在示例数据库上进行操作的,应该也能够在 MySQL 和 PostgreSQL 上正确配置。你可能需要针对你安装数据库的不同进行一些 SQL 的调整。

我们强烈推荐你在正式运行的数据库上进行任何 SQL 操作之前先在测试数据库上先运行和测试。

如果你知道你的管理员用户名,并且这个管理员的邮件地址是有效的,同时你的系统也正确配置了邮件服务器的话。你可以使用界面的重置用户密码链接进行对你管理员账号的密码进行重置。

系统将会向你的管理员账号下发送一个重置密码的链接。

获得数据库的访问权限

如果你使用默认安装嵌入的 H2 数据库,你可以在  <confluence-home-directory>/database 中找到你的额数据库文件。查看 通过重置密码来获得管理员权限 来获得更多的信息。

如果你使用的是外部生产数据库,你可以使用你常用的工具连接这些外部数据库。你需要具有这些数据库的查询和更新权限。

第一步:确定管理员

希望找到那些用户具有管理员权限,你需要连接你的数据库。你可以使用一些数据库工具例如 DBVisualiser

如果你的系统还没有安装这些工具,你需要首先进行下载和安装,然后在数据库管理工具中运行下面的 SQL 来获得你的管理员用户名和 ID。

select u.id, u.user_name, u.active from cwd_user u
join cwd_membership m on u.id=m.child_user_id join cwd_group g on m.parent_id=g.id join cwd_directory d on d.id=g.directory_id
where g.group_name =  'confluence-administrators'   and d.directory_name= 'Confluence Internal Directory' ;

如果返回的结果有多条记录的话,选择一个ID/username 组合,然后继续下面的操作。、

如果返回的结果没有任何记录,请直接进入步骤: If No Local Administrator Exists.


同时请确定 active 字段的值为 "T",如果没有这个标志位的话,重置用户密码的操作是不会成功的。

你可以使用下面的 SQL 来将这个标志位设置为 T,你可以用你的用户名来替换掉 SQL 中的 "<user_name>" 内容。

UPDATE cwd_user
SET active =  'T'
WHERE user_name = '<user_name>' ;

如果没有管理员账号

在你的本地内部目录中,有可能管理员账号不存在。如果是这种情况的话,你需要添加一个:

  1. 通过运行下面的 SQL 来添加一个管理员账号:

    insert into cwd_user(id, user_name, lower_user_name, active, created_date, updated_date, first_name, lower_first_name, last_name, lower_last_name, display_name, lower_display_name, email_address, lower_email_address, directory_id, credential) values ( 1212121 ,  'admin' ,  'admin' ,  'T' ,  '2009-11-26 17:42:08' ,  '2009-11-26 17:42:08' ,  'A. D.' ,  'a. d.' ,  'Ministrator' ,  'ministrator' ,  'A. D. Ministrator' ,  'a. d. ministrator' ,  'admin@example.com' ,  'admin@example.com' , (select id from cwd_directory where directory_name= 'Confluence Internal Directory' ),  'x61Ey612Kl2gpFL56FT9weDnpSo4AV8j8+qx2AuTHdRyY036xxzTTrw10Wq3+4qQyB+XURPWx1ONxp3Y3pB37A==' );
     
     
    insert into user_mapping values ( '2c9681954172cf560000000000000001' ,  'admin' ,  'admin' );
  2. 通过下面的 SQL 来将这个账号添加到管理员用户组:

    insert into cwd_group(id, group_name, lower_group_name, active, local, created_date, updated_date, description, group_type, directory_id)
    values (  '888888' , 'confluence-administrators' , 'confluence-administrators' , 'T' , 'F' , '2011-03-21 12:20:29' , '2011-03-21 12:20:29' ,NULL, 'GROUP' ,(select id from cwd_directory where directory_name= 'Confluence Internal Directory' ));
    insert into cwd_group(id, group_name, lower_group_name, active, local, created_date, updated_date, description, group_type, directory_id)
    values (  '999999' , 'confluence-users' , 'confluence-users' , 'T' , 'F' , '2011-03-21 12:20:29' , '2011-03-21 12:20:29' ,NULL, 'GROUP' ,(select id from cwd_directory where directory_name= 'Confluence Internal Directory' ));
  3. 将组成员添加到 cwd_membership:

    insert into cwd_membership (id, parent_id, child_user_id) values ( 888888 , (select id from cwd_group where group_name= 'confluence-users'   and directory_id=(select id from cwd_directory where directory_name= 'Confluence Internal Directory' )),  1212121 );
    insert into cwd_membership (id, parent_id, child_user_id) values ( 999999 , (select id from cwd_group where group_name= 'confluence-administrators'   and directory_id=(select id from cwd_directory where directory_name= 'Confluence Internal Directory' )),  1212121 );

如果你使用的是 Oracle 数据库,使用 sysdate 来替换掉 created_date 字段名。

第2步:替换管理员密码

Confluence 不会在数据库中保存文本格式的密码,所保存的密码都是加密后的哈希字符串。你需要在数据库中插入加密后的哈希字符串而不是原始的文本数据。

下面的数码是密码:admin,加密后的哈希字符串(对字符 admin 进行哈希)。

x61Ey612Kl2gpFL56FT9weDnpSo4AV8j8+qx2AuTHdRyY036xxzTTrw10Wq3+4qQyB+XURPWx1ONxp3Y3pB37A==

希望修改制定用户的密码为  admin :

  1. 关闭 Confluence
  2. 连接你的数据库
  3. 运行下面的 SQL:

    update cwd_user set credential =
    'x61Ey612Kl2gpFL56FT9weDnpSo4AV8j8+qx2AuTHdRyY036xxzTTrw10Wq3+4qQyB+XURPWx1ONxp3Y3pB37A=='
    where id=<id from Stage  1 >;

第3步:将内部目录放置为第一位

启动 Confluence,然后尝试使用你在上面修改的用户名,或者是你新创建的用户名,登录密码是 'admin' 进行登录。

如果登录成功,那么你可以跳过第4步的操作了,如果还不成功说明你的内部目录还不是最高的优先级。

将内部目录放到系统第一位:

  1. 找到系统内部目录的名字和顺序:

    select d.id, d.directory_name, m.list_index from cwd_directory d join cwd_app_dir_mapping m on d.id=m.directory_id;
  2. 记录 Confluence  内部目录 list_index 0, 和 the list_index 和 ID 的 ID。
  3. 切换内部目录的顺序:

    update cwd_app_dir_mapping set list_index =  0   where directory_id = <Internal Directory id>;
    update cwd_app_dir_mapping set list_index = <Noted Internal Directory list_index> where directory_id = <Directory id that had list_index  0 >;
  4. 检查内部目录是否是激活的('active' 字段应该标记为 'T'):

    select id, directory_name, active from cwd_directory where id = <Internal Directory id>;
  5. 如果必要的话,激活目录:

    update cwd_directory set active =  'T'   where id = <Internal Directory id>;

第4步:清理

To tidy up:

  1. 启动 Confluence
  2. 使用你在上面修改的用户名,或者是你新创建的用户名,登录密码是 'admin' 进行登录
  3. 修改你的密码 password

    Don't leave your password as admin; if you do, your instance won't be secure.

  4. 如果你在第二步创建的是一个新的用户,在 UI 界面中在创建一个新的用户,并且删掉第2步创建的用。
  5. 如果你遵循第3步调整了用户目录,请到  > 基本配置(General Configuration) > 用户目录(User Directories)对用户目录进行重新调整,这样能够保证系统配置正确。

https://www.cwiki.us/pages/viewpage.action?pageId=33000234




目录
相关文章
|
数据安全/隐私保护
Win系统 - 如何添加新用户,怎么添加管理员帐户?(二)
Win系统 - 如何添加新用户,怎么添加管理员帐户?(二)
325 0
Win系统 - 如何添加新用户,怎么添加管理员帐户?(二)
Win系统 - 如何添加新用户,怎么添加管理员帐户?(三)
Win系统 - 如何添加新用户,怎么添加管理员帐户?(三)
83 0
Win系统 - 如何添加新用户,怎么添加管理员帐户?(三)
|
Windows
Win系统 - 如何添加新用户,怎么添加管理员帐户?(一)
Win系统 - 如何添加新用户,怎么添加管理员帐户?(一)
396 0
Win系统 - 如何添加新用户,怎么添加管理员帐户?(一)
Confluence 6 如何删除用户组图文教程
选择基本配置 选择用户组操作界面 在用户组列表中选择用户组 在界面中选择希望删除的用户组名字后面的删除按钮选项。 确定用户组删除 系统会给出提示确定用户组是否确定删除,你需要单击 Confirm 确定你对用户组的删除。
1147 0
|
Shell Linux 数据安全/隐私保护
Linux系统配置(账号和权限)
管理用户账号和组账号、用户账号管理、组账号管理、查询账号信息、管理目录和文件、属性、权限
172 0
|
数据安全/隐私保护
Confluence 6 通过重置密码来获得管理员权限
如果你不能作为管理员登录 Confluence (例如,你弄丢了你的管理员密码),你可以以恢复模式启动 Confluence 来恢复你的管理员用户权限。
2161 0
|
安全 API 存储
Confluence 6 对比系统管理员权限和 Confluence 管理员权限
Confluence 能够识别下面 2 种级别类型的管理员: 系统管理员(System Administrator) – 具有这个权限的用户可以执行所有 Confluence 的管理功能,包括有 Confluence 管理员权限所不能执行的功能(简单来说,这权限是最高权限)。
1841 0
|
索引
Confluence 6 对比 confluence-administrators 用户组和管理员权限
默认的 confluence-administrators 用户组是一个特殊的超级用户组,这个用户组中的用户的权限在 Confluence 管理员和系统全局权限之上。
1508 0
Confluence 6 权限设置
备注:当 '外部用户管理' 权限没有被选择的时候,你仅可以指派 LDAP 用户到本地用户组中。 只读(Read Only) 从你目录服务器上获得 LDAP 用户,用户组只能通过你的目录服务器进行修改。
1251 0
Confluence 6 自动添加用户到用户组
默认组成员(Default Group Memberships) 选项在 Confluence 3.5 及后续版本和 JIRA 4.3.3 及后续版本中可用。
1308 0