5.12 配置电子邮件通知

可以通过 iManager 任务指定电子邮件服务器,并自定义电子邮件通知模板。

有了电子邮件模板,口令同步和口令自助服务就可以自动向用户发送电子邮件。

无需亲自动手创建模板。 使用模板的应用程序会提供模板。 在 Identity Vault 中,电子邮件模板是模板对象,它们位于通常可在树根处找到的安全性树枝中。 虽然这些模板是 Identity Vault 对象,但应该通过 iManager 进行编辑。

这是模块化框架。 添加使用电子邮件模板的新应用程序时,会同时安装应用程序与这些应用程序使用的模板。

可以根据 iManager 中的选择,控制是否发送电子邮件讯息。 在忘记口令的情况下,只有选择以下任意一种忘记口令操作时,才会发送电子邮件通知: 以电子邮件形式将口令发送给用户,或以电子邮件形式将口令提示发送给用户。 请参见《口令管理管理员指南》中的“向用户提供忘记口令自助服务”。

如果选择“通过电子邮件将口令同步失败通知给用户”,就会将口令同步配置为仅在口令同步操作失败时发送电子邮件,并且仅限于所指定的驱动程序。

图 5-16 配置口令同步

另外,还需要确保驱动程序策略中包括 SMTP 鉴定信息。

5.12.1 前提条件

  • 确保 Identity Vault 中用户的因特网电子邮件地址特性已填充。
  • 如果口令同步要使用电子邮件通知,请确保口令同步驱动程序策略中包含 SMTP 服务器的口令。请参见部分 5.12.4, 在驱动程序策略中提供 SMTP 鉴定信息
  • 如果担心某些用户可能没有填充电子邮件地址,或者需要所有通知失败的电子邮件记录,请考虑选择一个口令管理员帐户,除了向用户发送外,所有电子邮件通知都将发送到此帐户。

    此电子邮件地址应在 Identity Manager 底稿策略的“收件人”字段中。有关更多信息,请参见部分 5.12.6, 向管理员发送电子邮件通知

  • 如果 eDirectory 和 Identity Manager 位于 UNIX 服务器中,该服务器上必须保存此电子邮件模板对象的复本。

    这些对象位于安全性树枝的根处。 这意味着该服务器可能需要根分区的复本。

5.12.2 设置 SMTP 服务器以发送电子邮件通知

  1. 在 iManager 中,选择“口令”>“电子邮件服务器选项”。

    配置 SMTP 服务器界面
  2. 键入以下信息:

    • 主机名
    • 电子邮件讯息的“发件人”字段中希望出现的名称(例如,Administrator)
    • 鉴定到服务器的用户名和口令(如有必要)。
  3. 单击“确定”。

  4. 如果要同时使用 Identity Manager 驱动程序和口令同步,并希望使用电子邮件通知功能,还必须进行以下操作:

    1. 如果 SMTP 服务器在发送电子邮件之前需要鉴定,请确保驱动程序策略中包含口令。 有关指导,请参见部分 5.12.4, 在驱动程序策略中提供 SMTP 鉴定信息

      根据步骤 2在“电子邮件服务器选项”页中指定鉴定信息,这些信息足以生成忘记口令通知,但不足以生成口令同步通知。

    2. 重启动 Identity Manager 驱动程序,对所做的更改进行更新。

      驱动程序只在启动时读取模板和 SMTP 服务器信息。

  5. 自定义电子邮件模板,详情请见设置通知的电子邮件模板

电子邮件服务器设置完毕之后,如果使用了可发送讯息的功能,那么使用电子邮件信息的应用程序就可以进行发送。

5.12.3 设置通知的电子邮件模板

可以使用自己的文本自定义这些模板。 模板的名称表示模板的用途。

  1. 在 iManager 中,选择“口令”>“编辑电子邮件模板”。

    iManager 中的电子邮件模板列表
  2. 根据需要编辑模板。

    请记住,如果要添加替换标记,可能需要执行某些附加任务。请按照部分 5.12.5, 将自己的替换标记添加到电子邮件通知模板中中的指导操作。

  3. 重启动 Identity Manager 驱动程序,对所做的更改进行更新。

    驱动程序只在启动时读取模板和 SMTP 服务器信息。

5.12.4 在驱动程序策略中提供 SMTP 鉴定信息

指定 SMTP 服务器用户名和口令的操作,详见部分 5.12.2, 设置 SMTP 服务器以发送电子邮件通知。 这些信息足以生成忘记口令电子邮件通知。

但是,对于口令同步电子邮件通知,还需要在驱动程序策略中提供口令。 Metadirectory 引擎可以访问用户名,但无法访问口令,口令必须由驱动程序策略提供。

如果存在以下情况,则必须完成此过程:

  • SMTP 服务器处于可靠状态,需要在发送电子邮件之前进行鉴定。
  • 同时使用 Identity Manager 口令同步和 Identity Manager 驱动程序
  • 在驱动程序的口令同步设置中,已选择“通过电子邮件将口令同步失败通知给用户”。

要将 SMTP 服务器口令添加到驱动程序策略中:

  1. 确保驱动程序具有使用口令同步所必需的策略。

    样本驱动程序配置中已提供了这些策略,也可以添加策略,详情请见部分 5.7, 升级现有驱动程序配置以支持口令同步

  2. 在 iManager 中,选择 Identity Manager >“Identity Manager 概述”。

  3. 搜索驱动程序集,或浏览并选择暂挂驱动程序集的树枝。

  4. 在 Identity Manager 驱动程序概述中,单击驱动程序图标。

  5. 选择“输入转换”图标或“输出转换”图标。

  6. 选择一个策略,然后单击“编辑”。

  7. 单击一条规则。

  8. 在包括从模板发送电子邮件操作的规则中,指定 SMTP 服务器的口令。

    例如,如果要使用样本驱动程序配置,则需要修改以下口令同步策略。

    策略集

    策略名

    规则名

    输入转换

    口令(发布)- 订购电子邮件通知

    • 订购口令失败时,发送电子邮件
    • 使用 Identity Manager 数据储存器口令重设置已连接系统口令失败时,发送电子邮件

    输出转换

    口令(订购)- 发布电子邮件通知

    • 发布口令操作失败时,发送电子邮件

    下图为需要口令的从模板发送电子邮件操作示例。

    从模板发送电子邮件操作,带 SMTP 服务器鉴定的口令字段

    对储存在 Identity Vault 中的口令进行模糊处理。

  9. 选择(标记)规则,然后单击“确定”。

5.12.5 将自己的替换标记添加到电子邮件通知模板中

在默认情况下,电子邮件通知模板中有一些标签是已定义的,有助于进行用户讯息的个性化。也可以添加自己的标签。

是否能够添加标签,取决于使用电子邮件模板的应用程序。

将替换标记添加到口令同步电子邮件通知模板中

可以将替换标记添加到口令同步的电子邮件通知模板中,但如果不同时在参考该电子邮件通知模板的每个口令同步策略规则中定义这些标签,它们将不起作用。 使用“从模板发送电子邮件”操作时,在模板内部声明的所有替换标记都必须定义为此操作的子 arg-string 要素。

例如,Identity Manager 提供了默认替换标记,包括在电子邮件通知模板中。 Identity Manager 还在驱动程序配置中提供了默认口令同步策略。 电子邮件模板中提供的每个默认标签也在使用该电子邮件模板的口令同步策略的每个规则中进行定义。

例如,“用户名”标签是在名为“口令集失败”的电子邮件模板中定义的一个默认标签。 名为“订购口令失败时发送电子邮件”的策略规则参考“从模板发送电子邮件”操作中的电子邮件模板。 此规则用于通知用户口令同步失败的策略中。 相同的“用户名”标签在该规则中已定义为 arg-string 要素。

与此示例相同,所添加的每个新标签都必须同时在电子邮件模板和参考此电子邮件模板的策略规则中进行定义,以便 Metadirectory 引擎了解在向用户发送电子邮件时如何将正确的数据插入替换标记的位置。

可参考 Identity Manager 附带的 Identity Manager 驱动程序配置中的标签,以此为例。

请牢记以下准则:

  • 在电子邮件模板中称为替换标记的项目在策略构建器环境中称为令牌。
  • 按照本节中的步骤说明,可使用策略构建器更便捷地定义替换标记的自变量字符串。
  • 所添加的标签可能被定义为以下内容:
    • 用户的任意源特性或目标特性

      与忘记口令电子邮件模板添加标签的操作不同,简单地添加一个与 Identity Vault 中用户对象的某一特性名称相同的标签,该标签将不起作用。 与对口令同步电子邮件通知模板中的所有标签的要求一样,还必须定义参考电子邮件模板的策略中的标签。

    • 全局配置值
    • XPATH 表达式

    忘记口令电子邮件模板中的标签仅限于 eDirectory 用户特性,与本标签不同。

  • 与忘记口令电子邮件模板添加标签的操作不同(要求使用 eDirectory 用户特性的确切名称),可以将替换标记命名为任意名称,此名称只需与参照此电子邮件模板的策略中所定义的标签使用的名称相匹配。

要定义策略中的标签,请找到参照此电子邮件通知模板的所有策略,并使用策略构建器向策略中添加标签。 在各策略中,编辑参考此模板的各个规则。

确认已找到参考电子邮件通知模板的所有策略的一种方法是导出驱动程序配置,然后搜索发送电子邮件操作的 XML,其中的模板名称需与电子邮件通知模板名称相同。

  1. 在 iManager 中,选择 Identity Manager >“Identity Manager 概述”。

  2. 选择驱动程序集,对其中的驱动程序的策略进行编辑。

  3. 单击驱动程序的图标,其中包含需编辑的策略。

  4. 在发布者或订购者通道上,单击某一策略集,其中包含需编辑的策略。

    例如,Identity Manager 附带的 eDirectory 驱动程序的驱动程序配置中的输入转换策略集包含一个策略,该策略参考两个口令同步电子邮件通知模板。

  5. 单击该策略,然后单击“编辑”。

    下图阐释了如何编辑 eDirectory 驱动程序的“口令(发布)- 订购电子邮件通知”策略:

    在驱动程序配置的图形视图中,单击策略集则弹出此框,可用于编辑策略
  6. 在打开的规则列表中,单击参考电子邮件通知模板的规则。

    例如,在“口令(发布)- 订购电子邮件通知”策略中,可以查看此规则列表。 这两个规则同时参照其中一个口令同步电子邮件模板。 如果要将标签添加到两个模板中,则需要编辑这两个规则。

    口令同步策略中包含两条规则的显示页

    如果单击第一条规则,则出现以下页:

    编辑规则页
  7. 滚动至“操作”部分。

    编辑规则页中的操作列表显示部分
  8. 对于“从模板发送电子邮件”规则,请单击“输入字符串”字段旁的浏览按钮 底稿自变量生成器的浏览按钮

    此操作将打开字符串构建器。 下图显示了示例规则中可看到的字符串列表。 请注意,电子邮件通知模板中使用的默认标签已在口令同步策略中进行定义(该策略是 Identity Manager 驱动程序配置的一部分),与本示例相同。 可以将默认标签作为示例。

    字符串构建器页
  9. 若要定义可以在电子邮件通知模板中使用的标签,请单击“追加新字符串”,然后输入该标签的名称。

    请确保该名称与电子邮件通知模板中使用的名称完全相同。

  10. “字符串值”字段中,单击浏览按钮 底稿自变量生成器的浏览按钮 定义标签。

  11. 在“自变量生成器”页中,指定在电子邮件通知模板中使用此标签时将输入的值。

    可以将标签定义为以下内容:

    • 用户的任意源特性或目标特性

      与忘记口令电子邮件模板添加标签的操作不同,简单地添加一个与 Identity Vault 中用户对象的某一特性名称相同的标签,该标签将不起作用。 与对口令同步电子邮件通知模板中使用的所有标签一样,还必须定义参考电子邮件模板的策略中的标签。

    • 全局配置值
    • XPATH 表达式

    下图阐释如何定义标签:

    字符串构建器页

    完成标签定义并单击“确定”之后,它将以字符串的形式显示在“字符串构建器”页中。

  12. 请确保单击“确定”来完成所有页,以便保存对策略所做的更改。

  13. 重复这些步骤,以编辑参考电子邮件通知模板的所有策略中的规则。

  14. 将策略中定义的标签添加到电子邮件通知模板中,请使用与策略中完全相同的名称。

    这样,就可以在电子邮件通知模板正文中使用标签名称了。

  15. 保存更改,然后重启动驱动程序。

将替换标记添加到忘记口令电子邮件通知模板中

使用以下准则,将标签添加到忘记口令电子邮件通知模板中:

  • 在收到讯息的用户对象中,可以只添加与 LDAP 特性对应的标签。
  • 所添加的标签名称必须与用户对象中 LDAP 特性名称完全相同。

    要查看 LDAP 特性与 eDirectory 特性名称的对应情况,可以参考 LDAP 的 Identity Manager 驱动程序中提供的纲要映射策略。

  • 不需要其它配置。

5.12.6 向管理员发送电子邮件通知

电子邮件通知的默认配置是仅向用户发送。 Identity Manager 附带的策略使用受影响用户的 Identity Vault 对象的电子邮件地址。

但是,可以配置口令同步策略,将电子邮件通知同时发送给管理员。 要实现此目的,必须修改其中一个策略的 Identity Manager 底稿。

定义包含管理员电子邮件地址的令牌,向管理员发送密送件。

要抄送管理员,请修改生成电子邮件的策略(例如 PublishPasswordEmails.xml,策略根据其中的电子邮件地址发送通知)并添加包含管理员电子邮件地址的附加 <arg-string> 要素。

以下示例说明了附加 arg-string 要素:

	<arg-string name="to">
     <token-text>Admin@company.com</token-text>
	</arg-string>

请确保在进行更改后重启动驱动程序。

5.12.7 本地化电子邮件通知模板

请牢记以下几点:

  • 默认模板是英文版,但可以使用其它语言编辑该文本。
  • 替换标记的名称和定义必须保留为英文,使策略中的 arg-string 令牌定义与替换标记的名称相匹配。
  • 若要指定邮件项目使用的编码,则需要在 portalservlet.properties 文件中添加一个设置(仅适用于忘记口令电子邮件通知)。例如:
    ForgottenPassword.MailEncoding=EUC-JP
    

    如果该设置不存在,在转换邮件时将不使用任何编码。

  • 对于口令同步电子邮件讯息,可以对以下要素指定名为“charset”的 XML 特性: <mail>、<message> 和 <‘>。

    有关使用这些要素的信息,请参见《手工任务服务的 DirXML 驱动程序实施指南》,其中提供了有关电子邮件模板的详细信息。