本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

自動化檔案集合 ediscovery (英文)

 

上次修改主題的時間:2016-12-16

摘要︰了解如何自動化 ediscovery (英文) 的使用者電腦從檔案集合。

所有的公司正面可能會訴訟或其他類型的法律巨集指令。雖然法務部門可以使用,以減少的曝光度、 訴訟暫止的商務循環之事實。當公司朝法律巨集指令時,為必要項目,透過的法律調查,以提供所有相關的記錄運送巷以及一顧問程序。

eDiscovery是依據公司清查、 搜尋、 識別、 保留、 filter、 和提供存在於相關記錄運送電子表單中的程序。 SharePoint 2013、 Exchange Server 2013、 Lync Server 2013、 SharePoint Online、 及Exchange Online可以保留大量的記錄的內容。根據版本,這些產品可能支援eDiscovery和就地保留 (透過Exchange ServerLync ),讓更容易編製索引,法律小組的識別、 按住並篩選特定案例最相關的內容。

許多文件會儲存在使用者(Custodians)本機電腦上,不在集中位置。 這會使基本上SharePoint 2013搜尋,並無法搜尋,如果它不能包含eDiscovery。 此解決方案會示範如何使用登入指令碼、 System Center Orchestrator 2012 R2及Windows PowerShellExchange Server的自動化的識別資料及記錄資料從使用者電腦的集合。

此解決方案會使用通用安全群組、 群組原則和Windows PowerShell指令碼來找出、 清查,及從使用者本機電腦收集的隱藏的檔案共用內容及Outlook個人存放區 (PST) 檔案。 從該處、 PST 檔案可以匯入Exchange Server 2013或Exchange Online。 所有檔案會再都移到另一個檔案共用System Center Orchestrator 2012 R2 runbook 中Microsoft Azure至長期儲存區及索引如使用由SharePoint 2013。 然後您使用eDiscovery中心在內部部署SharePoint 2013部署或SharePoint Online按照您定期執行eDiscovery。

重要事項 重要事項:
此解決方案使用 robocopy 檔案複製至集中的檔案共用 okay 的電腦。 因為 robocopy 不會複製檔案開啟或鎖定,任何檔案,包括 okay 已開啟的 PST 檔案系統不會收集。 您必須以手動方式加以收集。 此解決方案沒有提供給您明確地識別它不能將複製的檔案清單與每個檔案的完整路徑。

下圖會帶領您完成所有步驟及的解決方案項目。

自動化檔案收集解決方案的概觀

 

圖例  
洋紅色圖說文字 1

建立群組原則物件 (GPO),並將其關聯集合登入指令碼。

洋紅色圖說文字 2

設定 GPO 僅套用至 Custodians 群組的 GPO 安全性篩選。

洋紅色圖說文字 3

Okay 登入並執行 GPO,呼叫集合登入指令碼。

洋紅色圖說文字 4

集合登入指令碼清查搜尋您想將的檔案及記錄其位置 Custodians 電腦上的所有附加在本機磁碟機。

洋紅色圖說文字 5

集合登入指令碼會將清查的檔案複製到臨時伺服器上的隱藏的檔案共用。

洋紅色圖說文字 6

(選項的)手動執行要收集的 PST 檔案匯入Exchange Server 2013PST 匯入指令碼。

洋紅色圖說文字 7

(選項 B)使用Office 365匯入工具及程序,匯Exchange Online收集的 PST 檔案。

洋紅色圖說文字 8

將所有收集的檔案移至長期儲存與MoveToColdStorageSystem Center Orchestrator 2012 R2 runbook Azure檔案共用。

洋紅色圖說文字 9

索引中具有SharePoint 2013寒冷儲存檔案共用的檔案。

洋紅色圖說文字 10

執行eDiscovery及內部Exchange Server 2013寒冷存放區中的內容。

洋紅色圖說文字 11

執行eDiscoveryOffice 365中的內容。

此解決方案的設定需要許多 項目、 最其中您可能已經備妥與如果您的想法eDiscovery相關設定。 元素可能沒有或類需要特定設定,我們將會提供您下列連結,您需要建立取出您基底的設定。 您必須基本組態備妥之前設定本身的解決方案。

 

元素 連結

Active Directory 網域服務 (AD DS)網域

 

從內部網路的網際網路連線能力

 

若要支援SharePoint 2013和System Center Orchestrator 2012 R2SQL Server 2012

部署 System Center Orchestrator-2012

內部部署或Azure基礎SharePoint 2013的eDiscovery (所需的選項的)

 

內部檔案共用伺服器的臨時

 

在內部Exchange Server 2013選項 PST 匯入

CU5 (15.913.22) 位於CU5

System Center Orchestrator 2012 R2

部署 System Center Orchestrator-2012

Office 365 (E3 規劃) Exchange Online與SharePoint Online (所需的選項 B)

若要註冊Office 365 E3 訂閱,請參閱Office 365 E3 訂閱

使用虛擬機器的Azure訂閱

若要註冊Azure,請參閱訂閱至 Windows Azure

在內部網路和Azure訂閱間 VPN 連線

若要設定 VPN 通道Azure訂閱與您的內部網路之間,請參閱 <連接到 Microsoft Azure 虛擬網路的內部網路

SharePoint 2013設定成搜尋SharePoint和Exchange Server 2013並選擇性地Lync Server 2013eDiscovery

若要設定eDiscovery以這種方式,請參閱 < Configure eDiscovery in SharePoint Server 2013Test Lab Guide: Exchange、 Lync、 SharePoint 及 Windows 檔案共用測試實驗室中設定 eDiscovery

在Office 365SharePoint Online和Exchange OnlineeDiscovery

若要設定eDiscoveryOffice 365中,請參閱設定 SharePoint Online 中的 eDiscovery 中心

既然您已經備妥的基底的設定,您可以移動預先設定本身的解決方案。

臨時檔案共用
  1. 在內部部署網域中建立通用安全性群組名為Custodians。

  2. 建立從 Custodians 電腦收集的檔案隱藏的檔案共用。 這應該是在內部部署伺服器上。 例如,在伺服器上呼叫Staging,建立呼叫Cases$的檔案共用。 $ ,才能將此設為隱藏的共用。

  3. 設定下列共用權限:

    • Custodians︰ 變更,請閱讀

    • 系統管理員:完全控制

    • Exchange 信任的子系統︰ 變更,請閱讀

  4. 開啟 [安全性] 索引標籤、 新增 Custodians] 群組中,並按一下 [進階]。設定 [Custodians 群組中的下列權限:

    • 類型︰ 拒絕

    • 適用於: 這個資料夾、 子資料夾和檔案

  5. 按一下 [進階權限並選取下列項目:

    • 讀取屬性

    • 讀取擴充屬性

    • 讀取權限

  6. 測試共用的存取權的情況下 $ 檔案執行下列動作:

    1. 將使用者新增至 Custodians 群組。

    2. 將檔案的情況下 $ 資料夾中。

    3. 為使用者、 瀏覽至臨時伺服器,例如瀏覽至\\Staging共用若要查看有哪些共用。您不應該會看到所列的情況下 $共用。

    4. 手動輸入瀏覽器的情況下 $ 共用的完整路徑。這應該會開啟的情況下 $ 共用。

    5. 嘗試開啟之前放在共用的檔案。這應該會失敗。

登入指令碼
  1. 複製並貼入 [記事本] 這Windows PowerShell指令碼:

    # Automated file collection script
    # Substantial error processing should be added for robust execution and troubleshooting opportunities
    # All commented out write-hosts are for debugging only and are commented out for regular execution
    
    # Functions 
    
    Function CreateCaseFolder() {
    
    #Check to see if case folder already exists
    $CaseFolderCheck = Test-Path $CaseLocation
    
    try {
    
        if (!$CaseFolderCheck) {
        # Case folder doesn't exist.  Create the case folder and the log file location
        # Write-Host -ForegroundColor Cyan "Creating Case Folder $CaseLocation"
        New-Item "$CaseLocation" -ItemType Directory -Force -ErrorAction SilentlyContinue
        # Write-Host -ForegroundColor Cyan "Creating Case Log Folder $CaseLogLocation"
        New-Item "$CaseLogLocation" -ItemType Directory -Force -ErrorAction SilentlyContinue
        # Write-Host -ForegroundColor Cyan "Creating Case PST folder $CasePSTLocation"
        New-Item "$CasePSTLocation" -ItemType Directory -Force -ErrorAction SilentlyContinue
    
        }
        else {
    
        # do nothing since the target case folder already exists
    
        }
    }
    catch [System.Exception] {
    
        # To do..
        # to log to an exception or log file
        
        }
    }
    
    Function CopyFileToCaseFolder($SourcePath, $TargetPath, $FileName) {
        
        # Check to see if the file already exists
        $TargetFileCheck = Test-Path $TargetPath\$FileName
    
    try {
    
        if (!$TargetFileCheck) {
        # Copy the file to the case folder
        Write-Host $SourcePath $TargetPath $FileName
        robocopy "$SourcePath" "$TargetPath" "$FileName" /COPY:DATSO /TEE /LOG+:$LoggingFile /R:10 /W:10 | Out-Null
    
        }
        else {
    
        # do nothing since file is already in the target case folder
    
        }
    }
    catch [System.Exception] {
    
        # To do..
        # to log to an exception or log file
        
        }
    }
    
    # Global variable initializations
    
    # Error log
    $Loggederrors=@()
    
    # The array to contain the file types we collect
    $FileTypes = @("*.doc","*.docx","*.pst","*.txt")
    
    # We'll set the case number to be a combination of the date and user name
    # For example, a case for John Doe on Dec 14, 2014 at 2:38pm would be:
    # 201412141438_jdoe
    $CaseNo = get-date -Format yyyyMMddHHmm
    $CaseNo = $CaseNo + "_" + [Environment]::UserName
    
    # Target location to copy case files
    $CaseRootLocation = "\\staging\Cases$" 
    
    # File copy location, log file location, PST file location and temporary log file location
    $CaseLocation = $CaseRootLocation + "\" + $CaseNo
    $CaseLogLocation = $CaseRootLocation + "\" + $CaseNo + "\_Log"
    $CasePSTLocation = $CaseRootLocation + "\" + $CaseNo + "\_PSTs"
    $TemporaryLogLocation = [Environment]::getfolderpath('ApplicationData') + "\" + $CaseNo
    
    # Inventory of local drives
    $LocalDrives = Get-PSDrive -PSProvider FileSystem -Scope Global
    
    $LoggingFile = "$CaseLogLocation\FileCopyErrors.log"
    
    # Main script
    
    # Create the case folder if it doesn't already exist
    CreateCaseFolder
    
    # Create the list of files to be copied
    # First create the temporary directory in the AppData\Roaming folder
    New-Item "$TemporaryLogLocation" -ItemType Directory -Force -ErrorAction SilentlyContinue
    $LocalDrives | foreach {
    
        # Write-Host -ForeGroundColor Cyan "Collecting Files for Drive: " $_
        Get-ChildItem -Path $_.Root -Recurse -Include $FileTypes -ErrorAction SilentlyContinue -ErrorVariable +Loggederrors | Export-Clixml $TemporaryLogLocation\\$_.xml -Force
        # Needs try catch and logged collection error file
    }
    
    # Now let's read each file and copy any files we need to the case folder
    # We will also copy these XMLs to the case log files folder as we go along
    # We only want to process XML files, just in case something else got in there as the script ran
    $CaseDriveFiles = Get-ChildItem $TemporaryLogLocation -Filter '*.xml'
    $CaseDriveFiles | foreach {
        # Copy the XML file to the case log location
        CopyFileToCaseFolder $_.Directory.FullName $CaseLogLocation $_.Name
        $DriveFile = $_.FullName
        # Write-Host -ForegroundColor Cyan "Copying Files specified in the XML file: $DriveFile"
        $CurrentDriveFile = Import-Clixml $DriveFile
        $CurrentDriveFile | foreach {
            # write-host $_.FullName
            # if it's a PST, add to the PSTs folder. otherwise add it to case folder
            if ($_.Extension -match '.PST')
            {
                CopyFileToCaseFolder $_.Directory.FullName $CasePSTLocation $_.Name
                write-host "this is a PST"
            }
            else
            {
                CopyFileToCaseFolder $_.Directory.FullName $CaseLocation $_.Name
            }
        }
    }
    
    # Now delete the temporary log file
    Remove-Item $TemporaryLogLocation -Recurse 
    
    Write-Host -ForegroundColor Cyan "Finished."
    
    
    
  2. 為CollectionScript.ps1是更容易找到,例如C:\AFCScripts位置中儲存上面的指令碼。

  3. 在 [記事本] 中使用移至] 功能。視需要進行變更如下:

     

    線條 # 您需要變更 所需/選用

    71

    $FileTypes變數。 包含您想要清查並收集陣列變數中的指令碼的所有檔案類型副檔名。

    選用

    76 和 77

    變更的方式$CaseNo變數內建以符合您的需求。 指令碼擷取目前的日期及時間並將它附加的使用者名稱。

    選用

    80

    $CaseRootLocation變數必須設為您臨時伺服器集合檔案共用,例如\\Staging\Cases$

    必要

  4. CollectionScript.ps1 檔案放在網域控制站的 Netlogon 檔案共用。

設定 GPO 登入指令碼和 Custodians 群組
  1. 遵循下列主題,使用啟動、 關閉、 登入和登出群組原則中的指令碼"如何指派使用者登入指令碼 」 一節中設定 Custodians 群組的登入指令碼。

  2. 移除已驗證的使用者安全性篩選,並新增 Custodians 群組。

PST 匯入選項 A、 Exchange Server 2013的指令碼
  1. 複製並貼入 [記事本] 中的下列Windows PowerShell指令碼:

    # Script to import all PSTs in a given folder to a target mailbox
    #
    # This is for on-prem Exchange only
    # Input parameters
    # When you run the script, you call it with two parameters, PST source path and target mailbox alias
    # For example:  .\PSTImport.ps1 \\FileShare\PSTFiles jdoe
    
    param ([String]$SourcePath,[String]$MailboxAlias)
    
    # Folder identifier is the string we want to show in the mailbox that we import the PSTs to
    
    $FolderIdentifier = "zzImportedPSTs_"
    
    # Connect to Exchange remote powershell using the connection Uri below
    # This would be the format http://<exchange server FQDN>/Powershell
    
    $ConnectionUri = 'http://h10-exch/PowerShell'
    $RemoteEx2013Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri $ConnectionUri -Authentication Kerberos
    Import-PSSession $RemoteEx2013Session
    
    # Get all the files in the source path
    
    $AllFiles = Get-ChildItem $SourcePath -Recurse
    
    # Go through each file and if it's a PST launch a mailbox import request for it
    
    $AllFiles | ForEach-Object {
        If ($_.Extension -eq ".pst") {
            $ImportName = $MailboxAlias + "_" + $_.Name
            $FolderName = $FolderIdentifier + $_.Name
            New-MailboxImportRequest -Name $ImportName -Mailbox $MailboxAlias -FilePath $_.FullName -TargetRootFolder $FolderName
        }
    }
    
  2. 將指令碼儲存為PSTImportScript.ps1中更容易尋找的位置。 範例和方便使用,在呼叫\\Staging\AFCScripts、 臨時伺服器上建立資料夾並將其儲存那里。

  3. 使用 [記事本] 中移至功能並視需要進行下列變更:

     

    線條 # 您需要變更 所需/選用

    12

    $FolderIdentifier tags Pst 所匯入的信箱資料夾。這在必要時變更。

    選用

    17

    $ConnectionUri必須設為您自己的伺服器。

    重要事項 重要事項:
    請確定您$ConnectionUri點至 http 的位置,而不是 https。 將不會使用 https:。

    必要

  4. 確認 Exchange 受信任子系統帳戶具有\\Staging\Cases$共用的讀取、 寫入、 和執行權限。

  5. PST 匯入指令碼需要下列兩個輸入的參數:

    • $SourcePathPST 檔案要匯入,例如 \\Staging\Cases$ 的位置。

    • $MailboxAlias將會收到匯入的電子郵件項目的目標信箱的別名。

  6. 例如,如果您想要從路徑\\Staging\Cases$所有 PST 檔案匯都入到與別名eDiscoveryMailbox信箱,會執行此\\staging\AFCscripts\PSTImportScript.ps1 \\Staging\cases$ eDiscoveryMailbox類似的指令碼。

Exchange Online PST 匯入選項 B
  1. 建立信箱結構放入的匯入的 PST 檔案。 如需如何在Exchange Online中建立使用者信箱的詳細資訊,請參閱Exchange Online 中建立使用者信箱

冷存放區
  1. Azure 虛擬機器,所有收集的檔案放置,例如\\AZFile1\ContentColdStorage上建立的檔案共用。

  2. 至少授與預設內容存取帳戶的讀取權限的共用和所有子資料夾和檔案。 如需設定SharePoint 2013搜尋的詳細資訊,請參閱建立及設定 SharePoint Server 2013 中的 Search service 應用程式

  3. 如果您預期從\\AZFile1\ContentColdStorage匯入 PST 檔案,授與共用的 Exchange 受信任的子系統讀取、 寫入、 和執行權限。

Orchestrator
  1. 從 Microsoft 下載中心下載MoveToColdStorage runbook

  2. 開啟Runbook 設計工具] 的 [連線] 窗格中,按一下您要匯入到 runbook 的資料夾。 按一下 [動作] 功能表,然後按一下 [匯入]。 匯入] 對話方塊隨即出現。

  3. 在 [檔案位置] 方塊中輸入您想要匯入 runbook 的路徑和檔案名稱或按一下 [瀏覽至您要匯入檔案的省略符號 (...)。

  4. 選取 [匯入 runbooks匯入 Orchestrator 加密資料。清除計數器排程變數Computer Groups匯入通用設定,以及要覆寫現有的全域設定

  5. 按一下 [完成]

  6. 編輯MoveFilesToColdStorage runbook,如下所示:

    1. 移動檔案活動-設集合檔案共用,例如\\Staging\cases$的來源檔案路徑。 設定目的資料夾中Azure,例如\\AZFile1\ContentColdStorage寒冷儲存檔案共用。 選取 [建立的檔案使用唯一的名稱

    2. 刪除資料夾活動-設定路徑:集合檔案共用,例如\\Staging\cases$\*,並選取 [刪除所有檔案及子資料夾

  7. 部署使用本節的程序中部署 RunbooksMoveToColdStorage runbook。

SharePoint 內部部署搜尋寒冷存放區
  1. 在Azure,例如\\AZFile1\ContentColdStorage寒冷儲存共用的SharePoint 2013伺服器陣列中建立新的內容來源。 如需管理內容來源的詳細資訊,請參閱新增、 編輯或刪除 SharePoint Server 2013 中的內容來源

  2. 開始完整編目。 如需詳細資訊,請參閱開始、 暫停、 繼續、 或停止在 SharePoint Server 2013 中編目

使用此解決方案假設您不想將 PST 檔案匯入Exchange Server 2013和Exchange Online有五個主要步驟。 本節提供本節的程序的所有這些。 您解決方案的主要互動將處於執行下列動作:

  1. 管理使用者 Custodians 群組成員資格。

  2. 檢閱登入指令碼所產生的記錄檔。 FileCopyErrors.log 列出所有不成功複製的檔案。 您必須決定您要執行操作

  3. 管理 PST 匯入程序。

  4. 將集合檔案移至寒冷存放區。

所有其他步驟不專屬於此解決方案。可讓您執行SharePoint 2013、 Office 365及Azure中的標準系統管理工作。 有此解決方案未提供任何您將需要合作根據公司的需求,例如的指導的項目:

  1. 追蹤eDiscovery的情況下,以及哪些 Custodians 相關聯這種情況。

  2. 追蹤的一組檔案集合使用哪些eDiscovery案例的關聯。

  3. 協調匯入及移至寒冷儲存步驟的時機。

  4. 管理Azure中所使用的檔案空間。

  5. 管理 Pst 所匯入至信箱。

  6. 備份及還原的內部部署的所有資料。

Okay 管理
  1. 若要啟動個別使用者的自動化的檔案集合程序,將其新增至 Custodians 群組。 使用者登入時,下一次登入指令碼指定給 Custodians 群組透過群組原則將執行。

監視收集的檔案及檢閱記錄檔
  1. 觀賞共用,例如\\Staging\cases$\*、 集合資料夾從使用者的集合檔案。 資料夾的名稱將格式設定如下: yyyyMMddHHmm_UserName

  2. 集合完成時,開啟集合資料夾,並瀏覽至 [_Log] 資料夾。 在 [_Log] 資料夾中,您會看到下列項目:

    • 每個使用者的電腦上,例如A.xmlC.xml的本機磁碟機的一個 XML 檔案。 這些檔案包含的庫存磁碟機之後,名為並使用 robocopy 作業。

      注意事項 附註:
      集合指令碼僅會在本身的指令碼中所定義的檔案類型的庫存檔案中建立項目。 它將不會建立使用者的電腦上每個檔案的詳細目錄項目。
    • 一個記錄檔名為 FileCopyErrors.log 執行每個集合。 這個檔案包含的檔案清單該 robocopy 可能無法複製到檔案集合共用,例如\\Staging\cases$\*。 您必須檢閱這並決定這些未接的檔案需要採取的動作。 通常,您其中一個需要收集這些手動如果您想讓他們,或您可能會決定他們不需要與因此可以省略集合中。

Exchange Server 2013的 PST 匯入選項 A
  1. 登入伺服器主控集合檔案共用,例如臨時,並開啟Windows PowerShell。 如需開始Windows PowerShell的詳細資訊,請參閱Windows 伺服器上啟動 Windows PowerShell

  2. 將執行原則設定為 [沒有限制。 輸入Set-ExecutionPolicy Unrestricted -Scope Process到Windows PowerShell,然後按 Enter。

  3. 執行 PSTImportScript.ps1 檔,並提供$SourcePath$MailboxAlias參數。 如需執行Windows PowerShell指令碼的詳細資訊,請參閱執行指令碼

  4. 檢閱錯誤的輸出。

  5. 您嘗試同名具名的 PST 檔案匯入的同一個信箱之前,您必須移除信箱匯入要求。 執行下列命令以這樣: Get-MailboxImportRequest | Remove-MailboxImportRequest。 系統會提示您從佇列移除每個個別的要求。 視回應。

Exchange Online的 PST 匯入選項 B
  1. 要收集的 PST 檔案放Exchange Online,遵循匯入檔案中的程序將透過網路上傳] 區段中的Office 365 匯入服務Office 365 。

移至寒冷存放區
  1. 執行使用本節的程序中執行 RunbooksMoveToColdStorage runbook。

  2. 觀賞您要用於長期儲存區,例如\\AZFile1\ContentColdStorageAzure檔案共用及內部集合檔案共用,例如\\Staging\cases$。 您應該會看到的檔案及資料夾會出現在寒冷儲存的檔案共用及消失從集合檔案共用。

eDiscovery
  1. 可允許寒冷儲存的檔案共用作為排程執行完整編目或啟動編目。 如需有關啟動完整或累加編目的詳細資訊,請參閱 <啟動、 暫停、 繼續或停止在 SharePoint Server 2013 中的編目

  2. 建立eDiscovery案例中SharePoint 2013選項 A 用於 PST 檔案匯入或建立eDiscovery案例中SharePoint Online用選項 b。

https://technet.microsoft.com/zh-tw/library/dn635312.aspx
顯示: