Set-FileLabel
Ustawia etykietę poufności i ochronę pliku za pomocą ręcznego etykietowania lub automatycznego etykietowania zgodnie z konfiguracją etykiety lub uprawnieniami niestandardowymi.
Składnia
Set-FileLabel
[-Path] <String[]>
-LabelId <Guid>
[-JustificationMessage <String>]
[-Owner <String>]
[-PreserveFileDetails]
[<CommonParameters>]
Set-FileLabel
[-Path] <String[]>
-LabelId <Guid>
[-JustificationMessage <String>]
-CustomPermissions <AIPCustomPermissions>
[-Owner <String>]
[-PreserveFileDetails]
[<CommonParameters>]
Set-FileLabel
[-Path] <String[]>
-CustomPermissions <AIPCustomPermissions>
[-Owner <String>]
[-PreserveFileDetails]
[<CommonParameters>]
Set-FileLabel
[-Path] <String[]>
[-JustificationMessage <String>]
[-Owner <String>]
[-Force]
[-PreserveFileDetails]
[-AutoLabel]
[<CommonParameters>]
Set-FileLabel
[-Path] <String[]>
[-PreserveFileDetails]
[-WhatIf]
[-DiscoveryInfoTypes <String[]>]
[<CommonParameters>]
Opis
W przypadku klienta Microsoft Purview Information Protection polecenie cmdlet Set-FileLabel ustawia etykietę poufności dla co najmniej jednego pliku. Ta akcja może automatycznie stosować ochronę, gdy etykiety są skonfigurowane do stosowania szyfrowania.
Ponadto możesz użyć tego polecenia cmdlet, aby zastosować uprawnienia niestandardowe podczas tworzenia ich jako obiektu zasad ochrony ad hoc za pomocą polecenia cmdlet New-CustomPermissions .
Po pomyślnym uruchomieniu polecenia można zastąpić dowolną istniejącą etykietę lub ochronę.
To polecenie cmdlet można uruchomić nieinterakcyjne. Aby uzyskać więcej informacji, zobacz Przewodnik administratora klienta ujednoliconego etykietowania.
Uwaga
Podczas uruchamiania polecenia cmdlet Set-FileLabel w pętli dodaj następujące dwa wiersze po poleceniu cmdlet: [GC]::Collect()
[GC]::WaitForPendingFinalizers()
Przykłady
Przykład 1. Zastosuj etykietę "Ogólne" do wszystkich plików, które nie mają obecnie etykiety
PS C:\> Get-FileStatus -Path \\Finance\Projects\ | where {$_.IsLabeled -eq $False} | Set-FileLabel -LabelId d9f23ae3-4321-4321-4321-f515f824c57b
FileName Status Comment
-------- ------ ------------
\\Finance\Projects\Image.jpg Success
\\Finance\Projects\Pricelist.pdf Success
\\Finance\Projects\Announcement.docx Success
\\Finance\Projects\Analysis.xlsx Success
To polecenie najpierw identyfikuje wszystkie pliki, które nie są oznaczone za pomocą polecenia cmdlet Get-FileStatus . Następnie te pliki są oznaczone etykietą , określając etykietę "Ogólne" według identyfikatora.
Przykład 2. Zastosowanie etykiety "Ogólne" do .docx plików, które nie są oznaczone etykietami
PS C:\> Get-ChildItem C:\Projects\*.docx -File -Recurse | Get-FileStatus | where {$_.IsLabeled -eq $False} | Set-FileLabel -LabelId d9f23ae3-1234-1234-1234-f515f824c57b
FileName Status Comment
-------- ------ ------------
C:\Projects\Analysis.docx Success
C:\Projects\Projects.docx Success
To polecenie najpierw identyfikuje wszystkie pliki.docx w folderze C:\Projects (i jego podfolderach) przy użyciu polecenia Get-Child-Item, a następnie znajduje je z tych plików, które nie są oznaczone za pomocą polecenia cmdlet Get-FileStatus . Pliki wynikowe są następnie oznaczone etykietą, określając etykietę "Ogólne" według jej identyfikatora.
Uwaga
To polecenie korzysta z aliasu ścieżki FullName, aby można było użyć polecenia Get-Child-Item z get-FileStatus.
Przykład 3. Zastosuj etykietę "Ogólne" do wszystkich plików w folderze i wszystkich jego podfolderach
PS C:\> Set-FileLabel -Path C:\Projects\ -LabelId d9f23ae3-1324-1234-1234-f515f824c57b
FileName Status Comment
-------- ------ ------------
C:\Projects\Project1.docx Success
C:\Projects\Datasheet.pdf Success
C:\Projects\Image.jpg Success
C:\Projects\Analysis.xlsx Skipped No label to apply
C:\Projects\Dashboard.xlsx Success
To polecenie ustawia etykietę o nazwie "Ogólne" na wszystkich plikach w folderze Projects i dowolnym z jego podfolderów.
Jeśli etykieta Ogólne jest skonfigurowana do stosowania szyfrowania, pliki, które zostały pomyślnie oznaczone tą etykietą, również zostaną zaszyfrowane. W tym przypadku właścicielem tych plików w usłudze Rights Management (osobą mającą uprawnienia do pełnej kontroli usługi Rights Management) jest użytkownik, który uruchomił polecenie programu PowerShell.
W tym przykładzie jeden plik nie został oznaczony etykietą (pominiętą), ponieważ wymaga uzasadnienia. Może to być zamierzony wynik, aby upewnić się, że plik z wyższą etykietą klasyfikacji lub ochroną nie został przypadkowo zastąpiony niższą etykietą klasyfikacji lub czy ochrona została usunięta.
Aby włączyć tę ochronę, należy skonfigurować zasady etykiet klasyfikacji Office 365, aby wymagać uzasadnienia usunięcia etykiety lub obniżenia klasyfikacji. Po uruchomieniu tego polecenia bez parametru JustificationMessage i etykieta wyzwala uzasadnienie, plik zostanie pominięty z komentarzem "Brak etykiety do zastosowania".
Przykład 4. Zastosowanie etykiety "Ogólne" do pojedynczego pliku, co wymaga uzasadnienia
PS C:\> Set-FileLabel -Path \\Finance\Projects\Analysis.xlsx -LabelId d9f23ae3-1324-1234-1234-f515f824c57b -JustificationMessage 'The previous label no longer applies'
FileName Status Comment
-------- ------ ------------
\\finance\projects\analysis.xlsx Success
To polecenie ustawia etykietę "Ogólne" dla pliku, który jest już oznaczony etykietą o większej poufności. Zasady etykiet poufności są skonfigurowane tak, aby wymagać uzasadnienia usunięcia etykiety lub obniżenia klasyfikacji. Ponieważ polecenie zawiera komunikat uzasadnienia, nowa etykieta zostanie pomyślnie zastosowana.
Przykład 5. Ochrona pliku przy użyciu uprawnień niestandardowych
PS C:\> $permissions = New-CustomPermissions -Users user1@contoso.com, user2@vanarsdel.com -Permissions Reviewer -ExpirationDate (Get-Date -Month 1 -Day 1 -Year 2020)
PS C:\> Set-FileLabel C:\Projects\Analysis.docx -CustomPermissions $permissions
FileName Status Comment
-------- ------ ------------
C:\Projects\Analysis.docx Success
Pierwsze polecenie tworzy obiekt zasad ochrony ad hoc, który przyznaje użytkownikom z różnych organizacji prawa użytkowania z uprawnień recenzenta, a także stosuje datę wygaśnięcia.
Drugie polecenie chroni pojedynczy plik o nazwie Analysis.docx przy użyciu uprawnień niestandardowych w przechowywanym obiekcie zasad ochrony ad hoc.
Przykład 6. Stosowanie etykiety i uprawnień niestandardowych do pliku
PS C:\> $permissions = New-CustomPermissions -Users a@a.com, b@b.com -Permissions Reviewer
PS C:\> Set-FileLabel C:\Projects\Analysis.docx -LabelId d9f23ae3-1324-1234-1234-f515f824c57b -CustomPermissions $permissions
FileName Status Comment
-------- ------ ------------
C:\Projects\Analysis.docx Success
Pierwsze polecenie tworzy obiekt zasad ochrony ad hoc, który przyznaje użytkownikom z różnych organizacji prawa użytkowania z uprawnień recenzenta, a także stosuje datę wygaśnięcia.
Drugie polecenie stosuje etykietę do pojedynczego pliku o nazwie Analysis.docx , a także chroni plik przy użyciu uprawnień niestandardowych w przechowywanym obiekcie zasad ochrony ad hoc. Jeśli etykieta jest skonfigurowana pod kątem ustawień ochrony, zostaną zastąpione uprawnieniami niestandardowymi.
Przykład 7: Skanowanie wszystkich plików w folderze i jego podfolderach oraz stosowanie etykiet zgodnie ze skonfigurowanymi warunkami automatycznego etykietowania
PS C:\> Set-FileLabel -AutoLabel -Path C:\Projects\ -PreserveFileDetails
FileName : C:\Projects\Project1.docx
Status : Success
Comment :
MainLabelName : Confidential
MainLabelId : 074e257c-1234-1234-1234-34a182080e71
SubLabelName : Finance group
SubLabelId : d9f23ae3-1234-1234-1234-f515f824c57b
FileName : C:\Projects\Datasheet.pdf
Status : Skipped
Comment : No label to apply
MainLabelName :
MainLabelId :
SubLabelName :
SubLabelId :
FileName : C:\Projects\Analysis.xlsx
Status : Skipped
Comment : No label to apply
MainLabelName :
MainLabelId :
SubLabelName :
SubLabelId :
FileName : C:\Projects\Pricelist.xlsx
Status : Skipped
Comment : No label to apply
MainLabelName :
MainLabelId :
SubLabelName :
SubLabelId :
FileName : C:\Projects\Dashboard.xlsx
Status : Success
Comment :
MainLabelName : Public
MainLabelId : f018e9e7-0cfc-4c69-b27a-ac3cb7df43cc
SubLabelName :
SubLabelId :
To polecenie skanuje wszystkie pliki w folderze Projects i dowolnym z jego podfolderów i ustawia etykiety zgodnie ze skonfigurowanymi warunkami w zasadach automatycznego etykietowania. W tym przykładzie jest pięć plików i dwa z nich mają automatycznie przydzielaną etykietę. Plik Datasheet.pdf nie jest oznaczony etykietą, ponieważ jego zawartość nie jest zgodna ze skonfigurowanymi warunkami automatycznego etykietowania Analysis.xlsx została już oznaczona ręcznie, a Pricelist.xlsx ma wyższą etykietę. Ponieważ polecenie jest uruchamiane bez parametru -Force , istniejące etykiety dla Analysis.xlsx i Pricelist.xlsx nie są zastępowane.
Jeśli stosowane etykiety zostały również skonfigurowane do stosowania ochrony przy użyciu usługi Rights Management, pliki pomyślnie oznaczane przy użyciu tego polecenia są również obejmowane ochroną. W tym przypadku właścicielem tych plików w usłudze Rights Management (osobą mającą uprawnienia do pełnej kontroli usługi Rights Management) jest użytkownik, który uruchomił polecenie programu PowerShell.
Ponieważ określono parametr PreserveFileDetails, data modyfikacji oznaczonych plików pozostaje niezmieniona.
Przykład 8: Skanuj wszystkie pliki w folderze i dowolnym z jego podfolderów i stosuj etykiety zgodnie ze skonfigurowanymi warunkami automatycznego etykietowania, przesłaniając wszystkie istniejące etykiety
PS C:\> Set-FileLabel -Autolabel -Path C:\Projects\ -Force -PreserveFileDetails
FileName : C:\Projects\Project1.docx
Status : Success
Comment :
MainLabelName : Confidential
MainLabelId : 074e257c-1234-1234-1234-34a182080e71
SubLabelName : Finance group
SubLabelId : d9f23ae3-1234-1234-1234-f515f824c57b
FileName : C:\Projects\Datasheet.pdf
Status : Skipped
Comment : No label to apply
MainLabelName :
MainLabelId :
SubLabelName :
SubLabelId :
FileName : C:\Projects\Analysis.xlsx
Status : Success
Comment :
MainLabelName : Public
MainLabelId : f018e9e7-0cfc-4c69-b27a-ac3cb7df43cc
SubLabelName :
SubLabelId :
FileName : C:\Projects\Pricelist.xlsx
Status : Success
Comment :
MainLabelName : Public
MainLabelId : f018e9e7-0cfc-4c69-b27a-ac3cb7df43cc
SubLabelName :
SubLabelId :
FileName : C:\Projects\Dashboard.xlsx
Status : Success
Comment :
MainLabelName : Public
MainLabelId : f018e9e7-0cfc-4c69-b27a-ac3cb7df43cc
SubLabelName :
SubLabelId :
To polecenie jest podobne do poprzedniego przykładu w tym, że skanuje również wszystkie pliki w folderze Projects i dowolnym z jego podfolderów i ustawia etykiety zgodnie ze skonfigurowanymi warunkami automatycznego etykietowania. Jednak tym razem, ponieważ polecenie zawiera parametr -Force , zastępuje również istniejącą etykietę dla Dashboard.xlsxi Pricelist.xlsx.
Zawartość Datasheet.pdf nie pasuje do żadnych skonfigurowanych warunków, a ten plik pozostaje bez etykiety.
Przykład 9. Skanowanie pliku w trybie WhatIf pod kątem wszystkich znanych typów informacji poufnych
PS C:\> Set-FileLabel -AutoLabel -Path C:\Projects\Project1.docx -WhatIf -DiscoveryInfoTypes All
MainLabelName : General
MainLabelId : 89a453df-5df4-4976-8191-jdn2fsf9560a
SubLabelName :
SubLabelId :
WhatIf : True
MatchedInformationTypes : {Credit Card Number, U.S. Social Security Number (SSN), International Classification of
Diseases (ICD-10-CM), International Classification of Diseases (ICD-9-CM)}
LastModifiedBy :
LastModifiedTime : 8/19/2014 5:11:26 AM
FileName : C:\Projects\Project1.docx
Status : Success
Comment :
To polecenie umożliwia odnajdywanie wszystkich znanych typów informacji w pliku Project1.docx bez stosowania ochrony ani etykiety.
Przykład 10: Skanowanie pliku w trybie WhatIf pod kątem określonych typów informacji poufnych
PS C:\> Set-FileLabel -AutoLabel -Path C:\Projects\Project1.docx -WhatIf -DiscoveryInfoTypes "50842eb7-edc8-4019-85dd-5a5c1f2bb085","a44669fe-0d48-453d-a9b1-2cc83f2cba77"
MainLabelName : General
MainLabelId : 89a453df-5df4-4976-8191-jdn2fsf9560a
SubLabelName :
SubLabelId :
WhatIf : True
MatchedInformationTypes : {Credit Card Number, U.S. Social Security Number (SSN)}
LastModifiedBy :
LastModifiedTime : 8/19/2014 5:11:26 AM
FileName : Project1.docx
Status : Success
Comment :
To polecenie wykrywa określone typy informacji "Numer karty kredytowej" i "Numer ubezpieczenia społecznego (SSN)" w plikuProject1.docx bez stosowania ochrony lub etykiety.
Przykład 11: Skanowanie pliku w trybie WhatIf pod kątem określonych typów informacji poufnych i wyświetlanie znalezionych wartości
PS C:\> $x=Set-FileLabel -AutoLabel -Path "C:\Projects\Project1.docx" -WhatIf -DiscoveryInfoTypes "50842eb7-edc8-4019-85dd-5a5c1f2bb085","a44669fe-0d48-453d-a9b1-2cc83f2cba77"
PS C:\> $x.MatchedInformationTypes
RulePackageSetId : 00000000-0000-0000-0000-000000000000
RulePackageId : 00000000-0000-0000-0000-000000000000
RuleId : 50842eb7-edc8-4019-85dd-5a5c1f2bb085
Name : Credit Card Number
Count : 1
UniqueCount : 1
Confidence : 85
SensitiveContents : {Offset: 2089, Length: 19}
RulePackageSetId : 00000000-0000-0000-0000-000000000000
RulePackageId : 00000000-0000-0000-0000-000000000000
RuleId : a44669fe-0d48-453d-a9b1-2cc83f2cba77
Name : U.S. Social Security Number (SSN)
Count : 1
UniqueCount : 1
Confidence : 85
SensitiveContents : {Offset: 7063, Length: 11}
PS C:\> $x.MatchedInformationTypes[0].SensitiveContents | fl
Offset : 2089
Length : 19
Value : 4539-9572-7949-2212
Context : OLOGICAL SCIENCES Credit Card #
Expiration Date: 4539-9572-7949-2212
8/2009 Department: BIOLOGICAL SCIENCES Anticipa
Podobnie jak w poprzednim przykładzie, pierwsze polecenie odnajduje określone typy informacji "Numer karty kredytowej" i "Numer ubezpieczenia społecznego (SSN)" w plikuProject1.docx bez stosowania ochrony lub etykiety. Jednak w tym przykładzie wyniki są przechowywane w zmiennej w celu dalszego przetwarzania.
Drugie polecenie jest następnie używane do wyświetlania zawartości dopasowanych typów informacji, który zawiera parametr SensitiveContents.
Ostatnie polecenie wyświetla i formatuje, aby ułatwić odczytywanie danych zidentyfikowanych przez pierwszy typ informacji poufnych, który w tym przykładzie to szczegóły karty kredytowej.
Parametry
-AutoLabel
Gdy jest używana opcja -AutoLabel, polecenie cmdlet jest uruchamiane w trybie automatycznego etykietowania. Gdy polecenie cmdlet -AutoLabel nie jest używane, jest uruchamiane w trybie ręcznego etykietowania.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-CustomPermissions
Określa nazwę zmiennej, która przechowuje zasady ochrony ad hoc, które zostały utworzone przy użyciu polecenia cmdlet New-CustomPermissions . Zasady ochrony ad hoc są używane do ochrony plików lub plików z uprawnieniami niestandardowymi.
Typ: | AIPCustomPermissions |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DiscoveryInfoTypes
Określ typy informacji poufnych do odnalezienia podczas korzystania z parametru WhatIf .
Jeśli chcesz wyszukać określone typy informacji poufnych, określ identyfikator jednostki dla tego typu informacji, który można znaleźć na liście typów informacji poufnych w Exchange Server.
Na przykład "50842eb7-edc8-4019-85dd-5a5c1f2bb085" to liczba określająca typ informacji poufnych numeru karty kredytowej.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Force
Zastępuje istniejącą etykietę, jeśli są stosowane skonfigurowane warunki.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-JustificationMessage
Uzasadnienie obniżenia etykiety klasyfikacji, usunięcia etykiety lub usunięcia ochrony, jeśli zasady poufności wymagają od użytkowników podania tych informacji. Jeśli ustawienie etykiety wyzwala uzasadnienie i nie podano tego powodu, etykieta nie jest stosowana. W tym przypadku jest zwracany stan „Pominięto” z komentarzem „Wymagane uzasadnienie”.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-LabelId
Określa tożsamość (ID) etykiety do zastosowania. Gdy etykieta ma etykiety podrzędne, zawsze określ identyfikator tylko etykiety podrzędnej, a nie etykietę nadrzędną.
Aby znaleźć identyfikator etykiety:
Wartość identyfikatora etykiety nie jest wyświetlana w portal zgodności Microsoft Purview. Można jednak użyć następującego polecenia programu PowerShell Office 365 Security & Compliance Center, aby znaleźć tę wartość:Get-Label | Format-Table -Property DisplayName, Name, Guid
W przypadku plików, które mają zastosowane etykiety, można również uruchomić polecenie cmdlet Get-FileStatus , aby zidentyfikować identyfikator etykiety (MainLabelId lub SubLabelId).
Typ: | Guid |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Owner
Określa właściciela do stosowania etykiety lub ochrony do pliku.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Path
Określa ścieżkę lokalną, ścieżkę sieciową lub adres URL programu SharePoint Server do plików, dla których chcesz uzyskać etykietę i informacje o ochronie.
Symbole wieloznaczne nie są obsługiwane, a lokalizacje WebDav nie są obsługiwane.
W przypadku ścieżek programu SharePoint obsługiwane są następujące elementy:
- SharePoint Server 2022
- SharePoint Server 2019
- SharePoint Server 2016
- SharePoint Server 2013
Na przykład:
- C:\Folder\
- C:\Folder\Nazwa pliku
- \\Server\Folder
- http://sharepoint.contoso.com/Shared%20Documents/Folder
Ścieżki mogą zawierać spacje po ujęciu wartości ścieżki za pomocą cudzysłowów.
Typ: | String[] |
Aliasy: | FullName, FileName |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-PreserveFileDetails
Określ ten parametr, aby pozostawić datę modyfikacji (Windows i SharePoint) i zmodyfikować wartości (SharePoint) bez zmian dla dokumentów, które zostały oznaczone etykietą:
W przypadku plików lokalnych lub sieciowych wartość data modyfikacji pozostaje niezmieniona.
W przypadku plików programu SharePoint data modyfikacji i Zmodyfikowana przez wartości pozostają niezmienione.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WhatIf
Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
System.String[]
Dane wyjściowe
Microsoft.InformationProtection.Powershell.AIP.Results.SetAIPFileResult