VisualSVN服务器密码更改

发布于 2024-10-05 20:45:31 字数 579 浏览 11 评论 0原文

有没有人想出一种方法来允许远程用户在 VisualSVN 服务器中更改自己的密码?我们让它以“独立”(非 ActiveDirectory)模式运行,我发现这个优秀产品的唯一缺点是用户无法设置或更改其密码。

这是我可以忍受的,但永不更改的密码的安全隐患是众所周知的。我确信添加这些功能一定是可能的,但我对 VisualSVN 使用的任何技术都没有一点天赋 - 所以只是想知道是否有人做到了?

更新2010-12-21

我决定亲自实施这个。第一个障碍是密码加密,我希望得到一些帮助。我发现 VisualSVN 有一个名为 htpasswd 的密码文件,其中包含以下格式的用户列表:

乔公共:$apr1$lpq$kF8nZjjuFxgJBExK8ruf20

JoePublic 是用户名,我认为冒号是分隔符,其余的是某种密码哈希。本例中使用的实际密码是ForgetMeNot

这似乎不是 MD5 或 SHA 哈希值,但我在这方面不是很懂行,所以很可能是。根据上述信息,任何人都可以推断出所使用的算法吗?

Has anyone come up with a way to allow remote users to change their own passwords in VisualSVN server? We have it running in 'stand-alone' (non-ActiveDirectory) mode and the only down side that I've found to this excellent product is that users can't set or change their passwords.

It's something I can live with, but the security implications of passwords that never change are well known. I'm sure it must be possible to add the functionality, but I'm not the least bit talented in any of the technologies used by VisualSVN - so just wondering if anyone has done it?

UPDATE 2010-12-21

I've decided to have a bash at implementing this myself. First obstacle, with which I'd appreciate some help, is the password encryption. I've found that VisualSVN has a password file, called htpasswd which has a list of users in the following format:

JoePublic:$apr1$lpq$kF8nZjjuFxgJBExK8ruf20

JoePublic is the username, I presume the colon is a delimiter and the rest is some sort of password hash. The actual password used in this case was ForgetMeNot.

This doesn't seem to be an MD5 or SHA hash, but I'm not very worldly wise in this area, so it may well be. Given the information above, can anyone deduce the algorithm being used?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

热鲨 2024-10-12 20:45:31

如果您需要该功能,那么您需要与 Active Directory 集成,无论如何,这确实是一个好主意,因此用户不必管理多个单独的密码。

If you need that functionality then you'll need to integrate with Active Directory, which is really a good idea anyways so users don't have to manage multiple separate passwords.

錯遇了你 2024-10-12 20:45:31

您无法通过 Web 界面重置用户密码,但是 WMI(Windows 管理
VisualSVN Server 的 Instrumentation)提供程序允许您重置密码。即,您可以通过 WMI 访问 VisualSVN Server,以便您可以使用各种编程语言编写脚本来管理服务器并自动执行维护任务。

请参阅Windows Management Instrumentation 界面参考

不幸的是,VisualSVN Server WMI 提供程序没有记录在案,但您可以查看描述可用类、方法和属性的 MOF 文件。您还可以查看WMI管理工具,这个工具包是当您想要探索 WMI 基础设施时非常有帮助。

以下 PowerShell 脚本将为位于网络上 computer.contoso.com 上的 VisualSVN Server 实例上的 Subversion 用户 username 设置 qwerty123 密码。

$svnuser = Get-WmiObject -Namespace Root\VisualSVN -ComputerName computer.contoso.com -query "select * from VisualSVN_User where name = 'username'"
$svnuser.SetPassword('qwerty123')

请注意,此脚本是一个示例,您可能需要调整该命令才能在您的环境中工作。例如,您可能需要传递“-credential”参数才能成功进行身份验证。确保您进行身份验证的用户帐户具有管理员权限,或者至少是 VisualSVN Server Admins 本地组的成员。

You can't reset user's password via web interface however WMI (Windows Management
Instrumentation) provider of VisualSVN Server allows you to reset a password. I.e. you can access VisualSVN Server via WMI so you can write a script on various programming languages to manage the server and automate maintenance tasks.

See Windows Management Instrumentation interface reference.

Unfortunately VisualSVN Server WMI provider is not documented however you can look though MOF file which describes available classes, methods and properties. You can also check WMI Administrative Tools, this toolkit is very helpful when you want to explore WMI infrastructure.

The following PowerShell script will set qwerty123 password for a Subversion user username on a VisualSVN Server instance located on computer.contoso.com on your network.

$svnuser = Get-WmiObject -Namespace Root\VisualSVN -ComputerName computer.contoso.com -query "select * from VisualSVN_User where name = 'username'"
$svnuser.SetPassword('qwerty123')

Please note that this script is a sample and you may need to adjust the command to work in your environment. E.g. you may need to pass '-credential' parameter to authenticate successfully. Make sure that user account under which you authenticate has administrator privileges or at least is a member of VisualSVN Server Admins local group.

不美如何 2024-10-12 20:45:31

VisualSVN 使用的密码是 md5 格式,带有 htpasswd。基本上要测试,请使用此:

htpasswd -cm test.htpass JoePublic

并验证结果。

The password used by VisualSVN is md5 format with htpasswd. Basically to test, use this:

htpasswd -cm test.htpass JoePublic

and verify the results.

古镇旧梦 2024-10-12 20:45:31

从版本 4.3.6 开始,用户可以通过浏览器完成此操作。服务器属性面板。

输入图片此处描述

通过浏览器访问时,该选项显示在页面右上角

在此处输入图像描述

As of version 4.3.6, it can be done from the browser by user. The server properties panel.

enter image description here

The option appears on top right corner of the page when accessed through browser

enter image description here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文