3

我一直致力于创建一个符合 FDA part11 的电子签名文档存储库的项目。任务是它使用 Perforce 跟踪文档的各种修订,使用 LDAP (AD) 作为身份验证/访问目录,并在用户提交更改列表时重新验证用户。

前两个要求已经到位,但我在最后一个方面遇到了麻烦。我在“更改提交”触发器处有一个脚本,它会注销用户 - 假设这会强制客户端在继续该过程之前重新验证用户 - 但这不起作用,至少对于命令行客户端; 用户已注销,但该过程完成,并且用户的下一个命令尝试是被拒绝的命令。

设置脚本来处理身份验证过程不是一个选项,因为它是在服务器端运行的,并且无法将提示传递给用户。

我当然可以将身份验证作为命令行参数传递给脚本,然后如果凭据为假,则返回非 0 以强制进程中止,但我还没有找到一种方法来修改为给定操作发送的命令p4v GUI,也不再让客户端提示用户进行身份验证;并且,这将导致密码始终显示为明文。

将票证超时设置为极短的持续时间肯定需要用户在提交之前进行身份验证,但也需要在任何其他操作之前进行身份验证。

以前有没有人处理过这样的事情,或者有没有人看到我错过的攻击角度?谢谢!

4

2 回答 2

1

感谢 avp 您尝试提供帮助,但我的问题不是未执行注销,而是触发注销脚本的提交无论如何都结束了。

我基本上最终设置了不同的组,一个拥有除写入之外的所有权限,然后为每个具有写入权限但在 90 秒内过期的授权用户设置一个组。然后我将所有用户放在非写组中,然后在登录时设置一个触发器,它解析给出的密码以确定它是否包含加入具有写权限的组的请求(设置为 p4v 脚本),并且,如果传入的密码的其余部分是正确的,则将它们分配给该组。

我已经将它投入生产几个月了,没有任何问题。

于 2010-02-17T16:55:57.397 回答
0

好吧,我不知道为什么它对您的客户端不起作用,但您可以试试这个:
删除 p4tickets.txt 文件或在您注销后删除此文件中的必要行。

(注销后,我可以看到从 p4tickets.txt 中删除了一行(我注销的客户端的行)。

每次我在登录/注销时遇到任何问题,我都会删除这个文件,它会有所帮助。

于 2010-02-17T08:02:06.410 回答