Document Security |处理用户数据

上次更新: 2023-11-01
  • 创建对象:
  • Admin

AEM Forms document security允许您创建、存储预定义的安全设置,并将其应用于您的文档。 它确保只有授权用户才能使用文档。 您可以使用策略保护文档。 策略是包含安全设置和授权用户列表的信息的集合。 您可以将策略应用到一个或多个文档,并授权在AEM Forms JEE用户管理中添加的用户。

用户数据和数据存储

Document Security将与受保护文档相关的策略和数据(包括数据库中的用户数据)存储在数据库中,例如My Sql、Oracle®MS®SQL Server和IBM® DB2。 此外,策略中授权用户的数据存储在用户管理中。 有关用户管理中存储的数据的信息,请参阅 Forms用户管理:处理用户数据.

下表映射了Document Security在数据库表中组织数据的方式。

数据库表 描述
EdcPrincipalKeyEntity 存储有关用户的主体键的信息。 这些密钥在离线Document Security工作流中使用。
EdcAuditEntity 存储有关审计事件(如用户事件、文档事件和策略事件)的信息。

EdcLicenseEntity

存储受保护文档的记录。 它存储每个受保护文档的许可证详细信息。

EdcDocumentEntity

存储系统中创建的每个许可证的文档名称。

EdcRevokationEntity

存储有关受保护文档的撤销和还原的信息。
EdcMyPolicyListEntity 存储有关可以创建个人策略的用户的信息,这些策略显示在“策略”页的“我的策略”选项卡下。
EdcPolicyEntity 存储有关策略的信息。 每个策略都对应此表中的一行。
EdcPolicyXmlEntity 存储活动策略的XML文件。 策略XML 包含对与该策略关联的用户的主体ID的引用。 策略XML存储为Blob对象。
EdcPolicyArchiveEntity 存储有关已存档策略的信息。 归档的策略包含其策略XML,并将其存储为Blob对象。

EdcPolicySetPrincipalEntity

EdcPolicySetPrincipalEnt
(Oracle和MS® SQL数据库)

存储策略集和用户之间的映射。
EdcInvitedUserEntity 存储有关受邀用户的信息。

访问和删除用户数据

您可以访问和导出数据库中用户的文档安全数据,如有必要,可以永久删除这些数据。

要从数据库中导出或删除用户数据,必须使用数据库客户端连接到数据库,并根据用户的某些个人身份信息找出主体ID。 例如,要使用登录ID检索用户的主体ID,请运行以下命令 select 命令。

select 命令,替换 <user_login_id> 其主体ID要从中检索的用户的登录ID EdcPrincipalUserEntity 数据库表。

select refprincipalid from EdcPrincipalUserEntity where uidstring = <user_login_id>

一旦知道了承担者ID,就可以导出或删除用户数据。

导出用户数据

运行以下数据库命令,以便从数据库表中导出主体ID的用户数据。 在 select 命令,替换 <principal_id> ,其中包含要导出其数据的用户的主体ID。

注意

以下命令使用My SQL和IBM® DB2®数据库中的数据库表名。 在Oracle和MS® SQL数据库上运行这些命令时,请替换 EdcPolicySetPrincipalEntity 替换为 EdcPolicySetPrincipalEnt 在命令中。

Select * from EdcPrincipalKeyEntity where principalid = '<principal_id>';

Select * from EdcLicenseEntity where publisherId = '<principal_id>';

Select * from EdcDocumentEntity where id in (Select documentid from EdcLicenseEntity where publisherId = '<principal_id>');

Select * from EdcRevokationEntity where licenseid in (Select id from EdcLicenseEntity where publisherId = '<principal_id>');

Select * from EdcMyPolicyListEntity where principalId = '<principal_id>';

Select * from edcpolicyentity where policyownerId = '<principal_id>';

Select * from edcpolicyxmlentity where policyidref in (Select id from edcpolicyentity where policyownerId = '<principal_id>');

Select * from edcpolicyarchiveentity where policyownerId = '<principal_id>';

Select * from edcpolicysetprincipalentity where principalId = '<principal_id>';

Select * from edcinviteduserentity where principalId = '<principal_id>';
注意

从导出数据 EdcAuditEntity 表,使用 EventManager.exportEvents 采用的API EventsearchFilter 作为导出审核数据的参数,基于 principalIdpolicyId,或 licenseId.

要获取系统中某个用户的完整数据,必须访问用户管理数据库并从中导出数据。 有关更多信息,请参阅 Forms用户管理:处理用户数据.

删除用户数据

执行以下操作以从数据库表中删除主体ID的Document Security数据。

  1. 关闭AEM Forms服务器。

  2. 运行以下数据库命令,以便从数据库表中删除主体ID的数据,以实现Document Security。 在 Delete 命令,替换 <principal_id> 要删除其数据的用户的主体ID。

    Delete from EdcPrincipalKeyEntity where principalid = '<principal_id>';
    
    Delete from EdcMyPolicyListEntity where principalId = '<principal_id>';
    
    Delete from edcpolicyarchiveentity where policyownerId = '<principal_id>';
    
    Delete from edcpolicysetprincipalentity where principalId = '<principal_id>';
    
    Delete from edcinviteduserentity where principalId = '<principal_id>';
    
    注意

    要从以下位置删除数据: EdcAuditEntity 表,使用 EventManager.deleteEvents 采用的API EventsearchFilter 作为参数,用于根据以下条件删除审核数据 principalIdpolicyId,或 licenseId.

  3. 活动和归档策略XML文件存储在 EdcPolicyXmlEntityEdcPolicyArchiveEntity 数据库表。 要从这些表中删除用户的数据,请执行以下操作:

    1. 打开中每一行的XML blob EdcPolicyXMLEntityEdcPolicyArchiveEntity 表并提取XML文件。 XML文件类似于下面显示的XML文件。
    2. 编辑XML文件,以便删除主体ID的blob。
    3. 对另一个文件重复步骤1和2。
    注意

    删除中的完整blob Principal 主体ID或策略XML的标记可能已损坏或不可用。

    <ns2:Principal PrincipalNameType="USER">
        <ns2:PrincipalDomain>OID</ns2:PrincipalDomain>
        <ns2:PrincipalName>56F33FEB-098A-1036-A651-00000A2A2656</ns2:PrincipalName>
    </ns2:Principal>
    </ns2:PolicyEntry>
        <ns2:Property PropertyName="isCertified">
            <ns2:PropertyValue xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xs="https://www.w3.org/2001/XMLSchema" xsi:type="xs:string">false</ns2:PropertyValue>
        </ns2:Property>
        <ns2:Property PropertyName="encryptionAlgorithm">
            <ns2:PropertyValue xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xs="https://www.w3.org/2001/XMLSchema" xsi:type="xs:string">AES128</ns2:PropertyValue>
        </ns2:Property>
        <ns2:Property PropertyName="AccessDeniedErrorMessage">
            <ns2:PropertyValue xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xs="https://www.w3.org/2001/XMLSchema" xsi:type="xs:string"></ns2:PropertyValue>
        </ns2:Property>
    <ns2:PolicyEntry>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.onlineOpen" Access="ALLOW"/>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.pdf.copy" Access="ALLOW"/>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.offlineOpen" Access="ALLOW"/>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.pdf.accessible" Access="ALLOW"/>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.pdf.editNotes" Access="ALLOW"/>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.pdf.edit" Access="ALLOW"/>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.pdf.fillAndSign" Access="ALLOW"/>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.pdf.printHigh" Access="ALLOW"/>
    <ns2:Permission PermissionName="ns3:com.adobe.aps.pdf.printLow" Access="ALLOW"/>
    

    除了直接从删除数据之外 EdcPolicyXmlEntity 表,还有两种方法可以做到这一点:

    使用管理控制台

    1. 以管理员身份登录到Forms JEE管理控制台,网址为https://[服务器]:[端口]/adminui.
    2. 导航到 服务>文档安全>策略集.
    3. 打开策略集并从策略中删除用户。

    使用Document Security网页

    有权创建个人策略的Document Security用户可以从其策略中删除用户数据。 为此,请执行以下操作:

    1. 具有个人策略的用户登录到其Document Security网页:https://[服务器]:[端口]/edc.
    2. 导航到 服务>文档安全>我的策略.
    3. 打开策略并从策略中删除用户。
    注意

    管理员可以在中搜索、访问和删除其他用户的个人策略中的用户数据。 服务>文档安全>我的策略 使用管理控制台。

  4. 从用户管理数据库中删除主体ID的数据。 有关详细步骤,请参阅 Forms用户管理 |处理用户数据.

  5. 启动AEM Forms服务器。

在此页面上