Document Security | ユーザーデータの処理 document-security-handling-user-data

AEM Forms Document Security を使用すると、事前定義されたセキュリティ設定を作成および保存して、ドキュメントに適用できます。これにより、許可されたユーザーのみがドキュメントを使用できるようになります。ドキュメントを保護するには、ポリシーを使用します。ポリシーは、セキュリティ設定と許可されたユーザーのリストを含む情報のコレクションです。1 つ以上のドキュメントにポリシーを適用し、AEM Forms JEE User Management に追加されるユーザーを許可することができます。

ユーザーデータとデータストア user-data-and-data-stores

Document Security は、保護されたドキュメントに関連するポリシーおよびデータ(ユーザーデータを含む)を、My Sql、Oracle、MS® SQL Server、IBM® DB2® などのデータベースに格納します。さらに、ポリシー内の承認済みユーザーのデータを、User Management に格納します。User Management に格納されるデータについて詳しくは、Forms User Management | ユーザーデータの処理を参照してください。

次の表は、Document Security がデータベーステーブルでデータをどのように整理しているかを示しています。

データベーステーブル
説明
EdcPrincipalKeyEntity
ユーザーのプリンシパルキーに関する情報を格納します。キーは、オフラインの Document Security ワークフローで使用されます。
EdcAuditEntity
ユーザーイベント、ドキュメントイベント、ポリシーイベントなどの監査イベントに関する情報を格納します。
EdcLicenseEntity
保護されたドキュメントのレコードを格納します。すべての保護されたドキュメントのライセンスの詳細を格納します。
EdcDocumentEntity
システムで作成されたすべてのライセンスのドキュメント名を格納します。
EdcRevokationEntity
保護されたドキュメントの失効および復元に関する情報を格納します。
EdcMyPolicyListEntity
個人用ポリシーを作成できるユーザーに関する情報を格納します。この個人用ポリシーはポリシーページの「マイポリシー」タブに表示されます。
EdcPolicyEntity
ポリシーに関する情報を格納します。各ポリシーは、この表の行に対応します。
EdcPolicyXmlEntity
アクティブなポリシーの XML ファイルを格納します。ポリシー XML には、ポリシーに関連付けられたユーザーのプリンシパル ID への参照が含まれます。ポリシー XML は、Blob オブジェクトとして格納されます。
EdcPolicyArchiveEntity
アーカイブされたポリシーに関する情報を格納します。アーカイブされたポリシーには、Blob オブジェクトとして格納されたポリシー XML が含まれます。

EdcPolicySetPrincipalEntity

EdcPolicySetPrincipalEnt
(Oracle データベースおよび MS® SQL データベース)

ポリシーセットとユーザー間のマッピングを格納します。
EdcInvitedUserEntity
招待ユーザーに関する情報を格納します。

ユーザーデータへのアクセスと削除 access-and-delete-user-data

データベース内のユーザーの Document Security データにアクセスして書き出すことができ、必要に応じて、データを完全に削除できます。

データベースからユーザーデータを書き出しまたは削除するには、データベースクライアントを使用してデータベースに接続し、個人の特定が可能なユーザーの情報に基づいてプリンシパル 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 データベースで実行する際に、コマンドの EdcPolicySetPrincipalEntityEdcPolicySetPrincipalEnt に置き換えます。
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 テーブルからデータを書き出すには、EventManager.exportEvents API を使用します。これは、EventSearchFilter をパラメーターとして受け取り、principalIdpolicyIdlicenseId のいずれかに基づいて監査データを書き出します。

システム内のユーザーに関する完全なデータを取得するには、User Management データベースのデータにアクセスしてデータを書き出す必要があります。詳しくは、Forms User Management | ユーザーデータの処理を参照してください。

ユーザーデータの削除 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 テーブルからデータを削除するには、EventManager.deleteEvents API を使用します。これは、EventSearchFilter をパラメーターとして受け取り、principalIdpolicyIdlicenseId のいずれかに基づいて監査データを削除します。
  3. アクティブなポリシー XML ファイルとアーカイブされたポリシー XML ファイルは、それぞれ EdcPolicyXmlEntity および EdcPolicyArchiveEntity データベーステーブルに格納されます。これらのテーブルからユーザーのデータを削除するには、次を実行します。

    1. EdcPolicyXMLEntity または EdcPolicyArchiveEntity テーブルの各行の XML Blob を開き、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 テーブルから直接データを削除する方法に加えて、次の 2 つの方法でもデータを削除することができます。

    管理コンソールの使用

    1. Forms JEE 管理コンソール(https://[server]:[port]/adminui)に管理者としてログインします。
    2. サービス/Document Security/ポリシーセット ​に移動します。
    3. ポリシーセットを開き、ポリシーからユーザーを削除します。

    Document Security web ページの使用

    個人用ポリシーを作成する権限を持つ Document Security ユーザーは、自分のポリシーからユーザーデータを削除できます。この作業を行うには、以下の手順を実行します。

    1. 個人用ポリシーを持つユーザーが、Document Security web ページ(https://[server]:[port]/edc)にログインします。
    2. サービス/Document Security/マイポリシー ​に移動します。
    3. ポリシーを開き、ポリシーからユーザーを削除します。
    note note
    NOTE
    管理者は、管理コンソールの​ サービス/Document Security/マイポリシー ​で、他のユーザーの個人用ポリシーからユーザーデータを検索、アクセスおよび削除できます。
  4. プリンシパル ID のデータを User Management のデータベースから削除します。詳しい手順については、Forms User Management | ユーザーデータの処理を参照してください。

  5. AEM Forms サーバーを開始します。

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