Document Security | 处理用户数据 document-security-handling-user-data

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

用户数据和数据存储 user-data-and-data-stores

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
存储有关受邀用户的信息。

访问和删除用户数据 access-and-delete-user-data

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

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

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

select refprincipalid from EdcPrincipalUserEntity where uidstring = <user_login_id>

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

导出用户数据 export-user-data

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

NOTE
以下命令使用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>';
NOTE
要从EdcAuditEntity表中导出数据,请使用采用EventSearchFilter作为参数的EventManager.exportEvents API以导出基于principalIdpolicyIdlicenseId的审核数据。

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

删除用户数据 delete-user-data

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

  1. 关闭AEM Forms服务器。

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

    code language-sql
    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>';
    
    note note
    NOTE
    要从EdcAuditEntity表中删除数据,请使用采用EventSearchFilter作为参数的EventManager.deleteEvents API来删除基于principalIdpolicyIdlicenseId的审核数据。
  3. 活动和归档策略XML文件分别存储在EdcPolicyXmlEntityEdcPolicyArchiveEntity数据库表中。 要从这些表中删除用户的数据,请执行以下操作:

    1. 打开EdcPolicyXMLEntityEdcPolicyArchiveEntity表中每一行的XML Blob并提取XML文件。 XML文件类似于下面显示的XML文件。
    2. 编辑XML文件,以便删除主体ID的blob。
    3. 对另一个文件重复步骤1和2。
    note note
    NOTE
    删除主体ID的Principal标记中的完整blob,否则策略XML可能会损坏或不可用。
    code language-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. 以管理员身份登录到https://[server]:[port]/adminui上的Forms JEE管理控制台。
    2. 导航到​ 服务> Document Security >策略集
    3. 打开策略集并从策略中删除用户。

    使用Document Security网页

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

    1. 具有个人策略的用户登录到位于https://[server]:[port]/edc的Document Security网页。
    2. 导航到​ 服务> Document Security >我的策略
    3. 打开策略并从策略中删除用户。
    note note
    NOTE
    管理员可以使用管理控制台在​ 服务> Document Security >我的策略 ​中搜索、访问和删除其他用户个人策略中的用户数据。
  4. 从用户管理数据库中删除主体ID的数据。 有关详细步骤,请参阅Forms用户管理 | 正在处理用户数据

  5. 启动AEM Forms服务器。

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2