Protect-RMSFile

Protege um arquivo especificado ou os arquivos em uma pasta especificada usando o RMS.

Syntax

Protect-RMSFile
       [-File <String>]
       [-Folder <String>]
       [-InPlace]
       [-Recurse]
       [-TemplateID <String>]
       [-License <SafeInformationProtectionLicenseHandle>]
       [-DoNotPersistEncryptionKey <String>]
       [-OutputFolder <String>]
       [-OwnerEmail <String>]
       [<CommonParameters>]

Description

O cmdlet Protect-RMSFile protege um arquivo ou todos os arquivos em uma pasta especificada usando o Azure RMS ou o AD RMS. Se o arquivo foi protegido anteriormente, ele será protegido novamente, para aplicar quaisquer alterações, como aquelas que podem ser feitas ao modelo que está sendo usado para proteger o arquivo.

Vários tipos de arquivo podem ser protegidos da mesma forma que o cliente do Azure Proteção de Informações pode proteger arquivos quando você usa a opção de clique com o botão direito do mouse "Classificar e proteger" de Explorador de Arquivos.

Diferentes níveis de proteção são aplicados automaticamente (nativo ou genérico), dependendo do tipo de arquivo. Você pode alterar o nível de proteção editando o registro. Além disso, alguns arquivos alteram a extensão de nome de arquivo depois de protegidos pelo Rights Management. Para saber mais, confira Tipos de arquivo com suporte para proteção no guia do administrador do cliente de Proteção de Informações do Azure.

Antes de executar esse cmdlet, você deve executar Get-RMSTemplate para baixar os modelos em seu computador. Se o modelo que você deseja usar tiver sido modificado desde que você executou esse cmdlet, execute-o novamente com o parâmetro -force para baixar o modelo revisado.

Ao executar este cmdlet, você tem as seguintes opções:

  • O arquivo é protegido no local atual, substituindo o arquivo original que estava desprotegido.

  • O arquivo original permanece desprotegido e uma versão protegida do arquivo é criada em outro local.

  • Todos os arquivos na pasta especificada são protegidos no local atual, substituindo os arquivos originais que foram desprotegidos.

  • Todos os arquivos na pasta especificada permanecem desprotegidos e uma versão protegida de cada arquivo é criada em outro local.

Você não pode executar esse comando simultaneamente, mas deve aguardar a conclusão do comando original antes de executá-lo novamente. Se você tentar executá-lo novamente antes que o comando anterior seja concluído, o novo comando falhará.

Esse cmdlet grava nos seguintes arquivos de log: Success.log, Failure.log e Debug.log in %localappdata%\Microsoft\MSIPC\pscmdlet\Logs\\<GUID>.

Dica

Para obter instruções passo a passo para usar esse cmdlet para proteger arquivos em um compartilhamento de arquivos do Windows Server, usando o Resource Manager de Arquivo e a Infraestrutura de Classificação de Arquivos, consulte a Proteção do RMS com a FCI (Infraestrutura de Classificação de Arquivos) do Windows Server.

Exemplos

Exemplo 1: proteger e substituir um único arquivo usando um modelo

PS C:\>Protect-RMSFile -File "C:\Test.docx" -InPlace -TemplateID 82bf3474-6efe-4fa1-8827-d1bd93339119
InputFile             EncryptedFile
---------             -------------
C:\Test.docx          C:\Test.docx

Esse comando protege um único arquivo chamado Test.docx usando um modelo e substitui o arquivo desprotegido original. O proprietário do Rights Management do arquivo e o endereço de email que pode ser exibido aos usuários quando eles acessam o arquivo protegido são automaticamente definidos como o endereço de email da conta que executa o comando.

Exemplo 2: criar uma cópia protegida de um único arquivo usando um modelo

PS C:\>Protect-RMSFile -File "Test.docx" -TemplateID 82bf3474-6efe-4fa1-8827-d1bd93339119
InputFile             EncryptedFile
---------             -------------
C:\Test.docx          C:\Test-Copy.docx

Esse comando é o mesmo que o exemplo anterior, exceto que ele não usa o parâmetro InPlace . Como ele também não usa o parâmetro OutputFolder , o arquivo protegido é criado na pasta atual com "-Copy" acrescentado ao nome do arquivo. O arquivo original desprotegido permanece na pasta atual.

Exemplo 3: criar uma versão protegida de um arquivo usando um modelo

PS C:\>Protect-RMSFile -File "C:\Test.docx" -OutputFolder "C:\Temp" -TemplateID e6ee2481-26b9-45e5-b34a-f744eacd53b0 -OwnerEmail "admin@Contoso.com"

InputFile             EncryptedFile
---------             -------------
C:\Test.txt           C:\Temp\Test.ptxt

Esse comando protege um único arquivo chamado Test.docx usando um modelo e coloca essa versão protegida do arquivo em C:\Temp, deixando o arquivo original desprotegido na raiz da unidade C:. O proprietário do Rights Management do arquivo e o endereço de email que pode ser exibido aos usuários quando eles acessam o arquivo protegido são para o administrador.

Exemplo 4: Protegido todos os arquivos em uma pasta usando um modelo

PS C:\>Protect-RMSFile -Folder "\\server1\Docs" -InPlace -DoNotPersistEncryptionKey All -TemplateID e6ee2481-26b9-45e5-b34a-f744eacd53b0 -OwnerEmail "IT@Contoso.com"

InputFile                        EncryptedFile

----------                       -------------
\\server1\Docs\Feb2015.docx      \\server1\Docs\Feb2015.docx

\\server1\Docs\Feb2015.txt       \\server1\Docs\Feb2015.ptxt

\\server1\Docs\Jan2015.docx      \\server1\Docs\Jan2015.docx

\\server1\Docs\Jan2015.txt       \\server1\Docs\Jan2015.ptxt

Esse comando protege todos os arquivos em um compartilhamento de servidor (somente pasta única, não subpastas), substituindo os arquivos desprotegidos. O endereço de email exibido aos usuários quando eles não têm acesso é para o grupo de departamento de TI e esse grupo recebe direitos de uso de Controle Total no modelo para que eles possam alterar os direitos de uso dos arquivos protegidos.

Como esse cenário está protegendo arquivos em nome de outras pessoas, o parâmetro DoNotPersistEncryptionKey é usado para o desempenho máximo e para impedir que arquivos não utilizados sejam salvos em disco.

Exemplo 5: arquivos protegidos com uma extensão de nome de arquivo específica em uma pasta usando um modelo

PS C:\>foreach ($file in (Get-ChildItem -Path \\server1\Docs -Recurse -Force | where {!$_.PSIsContainer} | Where-Object {$_.Extension -eq ".docx"})) {Protect-RMSFile -File $file.PSPath -InPlace -DoNotPersistEncryptionKey All -TemplateID "e6ee2481-26b9-45e5-b34a-f744eacd53b0" -OwnerEmail "IT@Contoso.com"}


InputFile                                   EncryptedFile

---------                                   -------------
\\server1\Docs\Feb2015.docx                 \\server1\Docs\Feb2015.docx

\\server1\Docs\Jan2015.docx                 \\server1\Docs\Jan2015.docx

\\server1\Docs\Reports\Feb2015.docx         \\server1\Docs\Reports\Feb2015.docx

\\server1\Docs\Reports\Jan2015.docx         \\server1\Docs\Reports\Jan2015.docx

Esse comando protege somente arquivos que têm uma extensão de nome de arquivo .docx em uma pasta (e todas as subpastas) em um compartilhamento de servidor, substituindo os arquivos desprotegidos. Como no exemplo anterior, o endereço de email exibido aos usuários quando eles não têm acesso é para o departamento de TI.

Embora o comando Protect-RMSFile não dê suporte nativo a curingas, você pode usar Windows PowerShell para conseguir isso e alterar a extensão de nome de arquivo no exemplo, conforme necessário.

Exemplo 6: proteger um único arquivo usando uma política de direitos ad hoc

PS C:\>$License = New-RMSProtectionLicense -UserEmail 'user1@contoso.com' -Permission EDIT
PS C:\> Protect-RMSFile -License $License -File "C:\Test.txt" -InPlace
InputFile             EncryptedFile
---------             -------------
C:\Test.txt           C:\Test.ptxt

O primeiro comando cria uma política de direitos ad hoc que concede direitos de edição a user1@contoso.com.

O segundo comando protege um único arquivo chamado Test.txt usando essa política de direitos ad hoc que acabou de ser criada e substitui o arquivo desprotegido original.

Observe que, a menos que seu endereço de email seja user1@contoso.com, você não poderá desproteger esse arquivo após a conclusão do comando, pois você não tem direitos a ele e não é o proprietário do Rights Management.

Se você precisar desproteger esse arquivo mais tarde, poderá adicionar seu nome e conceder ao usuário e a si mesmo o direito EXTRACT ou OWNER na política de direitos ad hoc no primeiro comando. Ou se você não quiser que o usuário possa desproteger o arquivo, adicione -OwnerEmail <seu endereço> de email ao final do segundo comando.

Parâmetros

-DoNotPersistEncryptionKey

Impede que uma licença de usuário final auto-concedida para o emissor do Rights Management seja salva quando um arquivo é protegido. Essa licença permite que o emissor do Rights Management abra o arquivo protegido sem autenticar no serviço Rights Management. Isso ajuda a garantir que a pessoa que executou esse cmdlet sempre possa abrir seus próprios arquivos que protegeu, mesmo quando essa pessoa está offline. Isso também resulta em atrasos mínimos para que esse usuário abra esses arquivos protegidos.

O emissor do Rights Management é a conta que protege os arquivos. Para obter mais informações, consulte o emissor do Rights Management e o proprietário do Rights Management.

Por padrão, essa licença de usuário final auto-concedida é salva no próprio arquivo e no computador do qual o cmdlet é executado. O nome do arquivo começa com EUL e é criado em %localappdata%\Microsoft\MSIPC. Use esse parâmetro para impedir que essa licença de usuário final salve no arquivo, no computador ou em ambos. Especificar esse parâmetro é apropriado se você estiver protegendo arquivos em nome de outras pessoas, por exemplo, com a FCI do Windows Server. Nesse cenário, o emissor do Rights Management não abrirá os arquivos protegidos e, portanto, criar e salvar a licença do usuário final diminui o desempenho de proteção e gera desnecessariamente muitos arquivos que podem preencher o espaço em disco disponível.

Os valores aceitáveis para este parâmetro:

  • Disco: Uma licença de usuário final para o emissor do Rights Management não é gerada para cada arquivo em %localappdata%\Microsoft\MSIPC.

  • Licença: Uma licença de usuário final para o emissor do Rights Management não é inserida na licença de publicação do arquivo.

  • Todos: Nenhuma licença de usuário final para o emissor do Rights Management é criada e salva quando um arquivo é protegido.

Type:String
Accepted values:all, disk, license
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-File

Especifica o caminho e o nome do arquivo a serem protegidos. Para o caminho, você pode usar uma letra de unidade ou UNC.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Folder

Especifica o caminho e a pasta a serem protegidos. Para o caminho, você pode usar uma letra de unidade ou UNC.

Todos os arquivos atualmente na pasta especificada serão protegidos. Novos arquivos adicionados à pasta não serão protegidos automaticamente.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InPlace

O arquivo ou os arquivos na pasta especificada são protegidos no local atual, substituindo o arquivo ou arquivos originais desprotegidos. Esse parâmetro será ignorado se o parâmetro OutputFolder for especificado.

Se nem InPlace nem OutputFolder forem especificados, o novo arquivo será criado no diretório atual com "-Copy" acrescentado ao nome do arquivo, usando a mesma convenção de nomenclatura que Explorador de Arquivos usa quando um arquivo é copiado e colado na mesma pasta. Por exemplo, se um arquivo com Document.docx estiver desprotegido, a versão protegida será nomeada Document-Copy.docx. Se um arquivo chamado Document-Copy.docx já existir, .docxde Cópia de Documento(2) será criado e assim por diante.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-License

Especifica o nome da variável que armazena uma política de direitos ad hoc que foi criada usando o cmdlet New-RMSProtectionLicense . Essa política de direitos ad hoc é usada em vez de um modelo para proteger o arquivo ou os arquivos.

Type:SafeInformationProtectionLicenseHandle
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OutputFolder

Especifica o caminho e a pasta para colocar versões protegidas dos arquivos originais que permanecem desprotegidos. A estrutura de pasta original é mantida, o que significa que as subpastas podem ser criadas para o valor especificado.

Para o caminho, você pode usar uma letra de unidade ou UNC.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OwnerEmail

Especifica o proprietário do Rights Management do arquivo ou arquivos protegidos por endereço de email.

Por padrão, a conta que executa esse cmdlet é o emissor do Rights Management e o proprietário do Rights Management do arquivo protegido. Esse parâmetro permite atribuir um proprietário diferente do Rights Management ao arquivo protegido para que a conta especificada tenha todos os direitos de uso (Controle Total) para o arquivo e sempre possa acessá-lo. O proprietário do Rights Management é independente do proprietário do sistema de arquivos do Windows. Para obter mais informações, consulte o emissor do Rights Management e o proprietário do Rights Management.

Se você não especificar um valor para esse parâmetro, o cmdlet usará o endereço de email da sessão autenticada para identificar o proprietário do Rights Management do arquivo ou arquivos protegidos. Se você usar o AD RMS ou o Azure RMS com uma conta de usuário para proteger arquivos, esse será o seu endereço de email. Se você usar o Azure RMS com uma conta de entidade de serviço, esse endereço de email será uma longa cadeia de caracteres de números e letras. Esse endereço de email é exibido para usuários que não têm permsões para exibir o documento protegido, para que possam solicitar permissões.

Se você executar este cmdlet para o Azure RMS com uma conta de entidade de serviço e tiver o arquivo ou arquivos que está protegendo, especifique seu próprio endereço de email para esse parâmetro. Se você executar esse cmdlet para o Azure RMS com uma conta de entidade de serviço e um único usuário possuir o arquivo ou todos os arquivos que você está protegendo, especifique seu endereço de email para que você não restrinja o proprietário do arquivo original de fazer alterações no arquivo e usá-lo como pretendido.

Se você executar esse cmdlet com vários arquivos que pertencem a usuários diferentes, verifique se esses usuários receberam direitos de uso do Controle Total e considere qual endereço de email atribuir para esse parâmetro. Embora você possa especificar um endereço de email de grupo e esse endereço seja exibido para solicitar permissões de acesso, os membros do grupo não são proprietários do Rights Management e, por padrão, não têm direitos de uso para o arquivo de proteção. Nesse cenário, escolha se deseja atribuir um único usuário (como um administrador) ou especificar um endereço de email de grupo que você também atribua direitos de uso do Controle Total. Para a configuração de email de grupo, esse pode ser o suporte técnico, por exemplo.

Importante: embora esse parâmetro seja opcional, se você não especificá-lo ao proteger arquivos usando o Azure RMS e uma entidade de serviço, o endereço de email que os usuários veem do cliente Proteção de Informações do Azure não será útil. Por isso, recomendamos que você sempre especifique esse parâmetro ao proteger arquivos usando o Azure RMS e uma entidade de serviço em vez de sua conta de usuário.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Recurse

Quando usado com o parâmetro Folder , indica que todos os arquivos atuais nas subpastas serão protegidos.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TemplateID

Especifica a ID do modelo a ser usada para proteger o arquivo ou os arquivos especificados se você não usar o parâmetro Licença para uma política ad hoc. Se você não souber a ID do modelo que deseja usar, use o cmdlet Get-RMSTemplate .

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False