用户管理通常使用用户名和密码执行身份验证。 “用户管理”还支持基于证书的身份验证,您可以使用它通过Acrobat对用户进行身份验证或以编程方式对用户进行身份验证。 有关以编程方式对用户进行身份验证的详细信息,请参阅 使用AEM表单编程.
要使用基于证书的身份验证,请将您信任的证书颁发机构(CA)证书导入信任存储区,然后创建证书映射。
导入证书时,请选择“信任证书身份验证”和“信任身份”选项以及您需要的任何其他选项。 有关导入证书的详细信息,请参阅 管理证书.
要为用户启用基于证书的身份验证,请创建证书映射。 A 证书映射 定义证书属性和域中用户属性之间的映射。 您可以将多个证书映射到同一个域。
在测试证书时,用户管理会上传证书检查,以确保它满足以下要求:
您无法编辑现有证书映射。
添加证书映射
在管理控制台中,单击设置>用户管理>配置>证书映射。
单击“新建证书映射”,然后在“用于颁发者”列表中,选择“信任存储区管理”中配置的证书别名。
将证书的某个属性映射到用户的属性。 例如,您可以将证书的一般名称映射到用户的登录ID。
如果证书中属性的内容与用户管理数据库中用户属性的内容不同,则可以使用Java正则表达式(regex)来匹配这两个属性。 例如,如果证书的通用名称是类似以下的名称 Alex Pink(身份验证) 和 Alex Pink(签名) “用户管理”数据库中的公用名是 亚历克斯·品客,则可以使用正则表达式来提取证书属性的所需部分(在本例中, 亚历克斯·品客.) 您指定的正则表达式必须符合Java正则表达式规范。
可通过在“自定义顺序”框中指定组的顺序来转换表达式。 自定义顺序与 java.util.regex.Matcher.replaceAll()
方法。 看到的行为将与该方法的行为相对应,并且必须相应地指定输入字符串(自定义顺序)。
要测试正则表达式,请在“测试参数”框中输入一个值,然后单击“测试”。
您可以在正则表达式中使用以下字符:
正则表达式示例:
从《亚历克斯·平克(身份验证)》中提取《亚历克斯·平克》
正则表达式: (.*) \(身份验证\)
将《亚历克斯·平克》(Alex(Authentication) Pink)摘录下来
正则表达式: (.*)\(身份验证\) (.*)
从“Alex(身份验证) Pink”中提取“Pink Alex”
正则表达式: (.*)\(身份验证\) (.*)
自定义顺序: $2 $1(返回第二个组,连接到第一个组,以空格字符捕获)
从“smtp:apink@sampleorg.com”中提取“apink@sampleorg.com”
正则表达式: smtp:(.*)
有关使用正则表达式的详细信息,请参阅 有关正则表达式的Java教程.
在For Domain列表中,选择用户的域。
要测试此配置,请单击浏览以上传示例用户证书,单击测试证书,如果配置正确,请单击确定。
编辑现有证书映射
删除证书映射