openam - 使用ssoadm创建用户

时间:2014-07-30 21:49:27

标签: openam

我有新的目标。能够使用ssoadm创建openam用户。

我已阅读Openam的文档

https://wikis.forgerock.org/confluence/display/openam/ssoadm-identity#ssoadm-identity-create-identity

但是,我不知道如何创建用户然后为其分配密码。现在我只能通过openam web创建用户,但是不可取,我想自动化。

有人知道如何使用ssoadm创建普通用户?

./ ssoadm create-identity?  ./ssoadm create-agent?

更新: 我继续调查:)我觉得我比以前更近了

$  ./ssoadm create-identity -u amadmin -f /tmp/pwd.txt  -e / -i Test -t User

Minimum password length is 8.

但是密码的参数在哪里?

谢谢!

1 个答案:

答案 0 :(得分:4)

要在已配置的数据存储中创建新用户,您可以执行以下ssoadm命令:

$ openam/bin/ssoadm create-identity -e / -i helloworld -t User -u amadmin -f .pass -a givenName=Hello sn=World userPassword=changeit

在这里,您可以看到我已将密码定义为userPassword属性,该属性实际上与数据存储相关。对于我的本地OpenDJ,这是完全合法的,但如果您使用数据库或其他东西,那么您将不得不相应地调整命令。

如果您不想在命令行上提供属性,则可以将所有值放入属性文件中,例如:

$ echo "givenName=Hello
sn=World
userPassword=changeit" > hello.txt
$ openam/bin/ssoadm create-identity -e / -i helloworld -t User -u amadmin -f .pass -D hello.txt

但我必须说不建议使用OpenAM进行身份管理,您应该使用数据存储自己的工具来管理身份(即在您的应用程序中使用LDAP客户端,或者只是使用ldap * CLI工具)。您可能会发现OpenAM不像人们通常所期望的那样处理所有与身份管理相关的不同任务,因此为了防止意外使用其他内容进行身份管理。