#c# #microsoft-information-protection #mip-sdk
#c# #microsoft-защита информации #mip-sdk
Вопрос:
В основном наше требование состоит в том, чтобы загрузить существующий PDF-документ (с MIP-шифрованием), затем расшифровать PDF-файл, изменить содержимое в PDF и затем зашифровать обратно. Я использую File SDK. Пока я не смогу выполнить изменение содержимого, теперь я хочу зашифровать файл обратно. При установке метки (при включенном шифровании с protection.office.com ), выдает ошибку как «TemplateNotFoundException: нераспознанный идентификатор шаблона.». Пожалуйста, предложите.
var result = Task.Run(async () => await handler.CommitAsync(options.OutputName)).Resu<
Ответ №1:
Похоже, что шаблон защиты RMS, связанный с меткой, был удален или установлен в архив. Вы можете либо удалить и заново создать эту метку, либо вам придется использовать командлеты службы AIP, чтобы проверить, был ли один из ваших шаблонов настроен на архивирование или удален.
Вы можете использовать Get-AIPServiceTemplate для перечисления шаблонов. Название шаблона должно соответствовать вашей метке.
Если для шаблона установлено значение archived, используйте Set-AIPSerivceTemplate, чтобы вернуть состояние published. Если шаблон не существует, вы можете удалить ярлык и начать все сначала (хотя странно, что шаблон будет удален), или вы можете использовать PowerShell для обновления настроек защиты.
В этом документе описывается, как управлять ярлыками с помощью PowerShell. Вы бы сделали что-то вроде:
get-label | where {$_.displayname -eq "TOP SECRET"} | fl displayname,labelactions
Что привело бы к:
DisplayName : TOP SECRET
LabelActions : {{"Type":"encrypt","SubType":null,"Settings":[{"Key":"disabled","Value":"false"},{"Key":"protectiontype"
,"Value":"template"},{"Key":"templateid","Value":"0e7fea72-7bba-4438-a070-95c292cd6f8c"},{"Key":"templat
earchived","Value":"True"},{"Key":"linkedtemplateid","Value":"0e7fea72-7bba-4438-a070-95c292cd6f8c"},{"K
ey":"contentexpiredondateindaysornever","Value":"Never"},{"Key":"offlineaccessdays","Value":"-1"},{"Key"
:"rightsdefinitions","Value":"[{"Identity":"miltor.onmicrosoft.com","Rights":"VIEW,VIEWRIGHTSDATA
,DOCEDIT,EDIT,PRINT,EXTRACT,REPLY,REPLYALL,FORWARD,OBJMODEL"},{"Identity":"microsoft.com","Rights
":"VIEW,VIEWRIGHTSDATA,OBJMODEL"},{"Identity":"test@milt0r.com","Rights":"PROJECT"}]"}]}, {"Ty
pe":"applycontentmarking","SubType":"header","Settings":[{"Key":"fontsize","Value":"10"},{"Key":"placeme
nt","Value":"Header"},{"Key":"text","Value":"Property of Contoso"},{"Key":"fontcolor","Value":"#000000"}
,{"Key":"margin","Value":"5"},{"Key":"alignment","Value":"Left"},{"Key":"disabled","Value":"false"}]}, {
"Type":"applycontentmarking","SubType":"footer","Settings":[{"Key":"fontsize","Value":"10"},{"Key":"plac
ement","Value":"Footer"},{"Key":"text","Value":"Property of Contoso"},{"Key":"fontcolor","Value":"#00000
0"},{"Key":"margin","Value":"5"},{"Key":"alignment","Value":"Left"},{"Key":"disabled","Value":"false"}]}
, {"Type":"applywatermarking","SubType":null,"Settings":[{"Key":"fontsize","Value":"10"},{"Key":"layout"
,"Value":"Diagonal"},{"Key":"fontcolor","Value":"#000000"},{"Key":"disabled","Value":"false"},{"Key":"te
xt","Value":"Property of Contoso"}]}}
В этом JSON найдите linkedtemplateid: {«Ключ»: «linkedtemplateid», «Значение»: «0e7fea72-7bba-4438-a070-95c292cd6f8c»}
И это идентификатор шаблона, который должен существовать в RMS, чтобы обеспечить действие защиты для метки. Если он не существует, используйте Add-AIPServiceTemplate для создания нового шаблона и обновления метки с помощью Set-Label и предоставления EncryptionProtectionType и EncryptionRightsDefinitions.