Klassifizierung von „modernen“ SharePoint-Websites
Hinweis
Sie können jetzt Vertraulichkeitsbezeichnungen (/microsoft-365/compliance/sensitivity-labels-teams-groups-sites) anstelle der Websiteklassifizierung verwenden, um Ihre SharePoint-Websites zu schützen.
Wenn Sie „moderne“ Websites in SharePoint Online erstellen, können Sie optional eine Websiteklassifizierung auswählen, um die Vertraulichkeit Ihrer Websitedaten zu definieren. Ziel der Websiteklassifizierung ist es, die Verwaltung von Clustern basierend auf ihrer Klassifizierung aus der Sicht der Governance und Compliance sowie die Automatisierung von Governanceprozessen basierend auf der Websiteklassifizierung zu ermöglichen.
Wichtig
Die Option der Websiteklassifizierung ist standardmäßig nicht aktiviert. Sie muss auf der Azure AD-Ebene konfiguriert werden.
Aktivieren der Websiteklassifizierung in Ihrem Mandanten
Um die Vorteile der Websiteklassifizierung zu nutzen, müssen Sie diese Funktion auf der Azure AD-Ebene in Ihrem Zielmandanten aktivieren. Nachdem Sie diese Funktion aktiviert haben, wird das zusätzliche Feld Wie vertraulich sind Ihre Daten? beim Erstellen neuer „moderner“ Websites angezeigt. In der folgenden Abbildung sehen Sie, wie das Feld „Websiteklassifizierung“ aussieht.
In der folgenden Abbildung sehen Sie auch, dass die Klassifizierung in der Kopfzeile einer „modernen“ Website hervorgehoben ist.
Aktivieren der Websiteklassifizierung mit PowerShell
Um die Websiteklassifizierung zu aktivieren, können Sie PowerShell-Code wie im folgenden Beispiel ausführen.
# Install the Azure AD Preview Module for PowerShell
Install-Module AzureADPreview
# Connect to Azure AD
Connect-AzureAD
# Create new directory setting and set initial values
$template = Get-AzureADDirectorySettingTemplate | where { $_.DisplayName -eq "Group.Unified" }
$setting = $template.CreateDirectorySetting()
$setting["UsageGuidelinesUrl"] = "https://aka.ms/sppnp"
$setting["ClassificationList"] = "HBI, MBI, LBI, GDPR"
$setting["DefaultClassification"] = "MBI"
New-AzureADDirectorySetting -DirectorySetting $setting
Hinweis
Bedenken Sie, dass es eine Weile dauert (ca. 1 Stunde oder länger), bis die Einstellungen in der Benutzeroberfläche von Office 365 verfügbar sind.
Bezüglich des vorherigen Codeausschnitts ist zu beachten, dass zum Zeitpunkt der Erstellung dieses Artikels die Vorschauversion der Azure AD-Cmdlets verwendet werden musste, bald können Sie aber die RTM-Version verwenden. Nachdem Sie die Azure AD-Cmdlets installiert haben, müssen Sie lediglich eine Verbindung mit dem Azure AD-Zielmandanten herstellen, der Ihren SharePoint Online-Zielmandanten sichert.
Mithilfe des Cmdlets Get-AzureADDirectorySettingTemplate erhalten Sie einen Verweis auf die Einstellungsvorlage für die Einheitlichen Gruppen, die Vorlage mit dem AnzeigenamenGroup.Unified.
Nachdem Sie die Vorlage erstellt haben, können Sie die Einstellungen dieser Vorlage konfigurieren, indem Sie eine neue Verzeichniseinstellung erstellen und die Einstellungswerte über ein Wörterbuch bereitstellen.
Die wichtigsten Einstellungen aus der Sicht der Websiteklassifizierung sind:
- UsageGuidelinesUrl: Die URL einer Seite, auf der Sie die unterschiedlichen Klassifizierungsoptionen erläutern können. Ein Link zu dieser Seite wird im Formular der Websiteerstellung und in der Kopfzeile jeder klassifizierten Seite eingeblendet.
- ClassificationList: Eine durch Trennzeichen getrennte Liste von Werten für die Liste der Websiteklassifizierungsoptionen.
- DefaultClassification: Der Standardwert für die Websiteklassifizierung.
Aktivieren der Websiteklassifizierung mit der PnP-Kernbibliothek
Eine weitere Option, die Ihnen zum Aktivieren der Funktion der Websiteklassifizierung zur Verfügung steht, besteht darin, die PnP-Kernbibliothek zu verwenden, die ein paar Erweiterungsmethoden zum Verwalten der Klassifizierung in C#-Code bereitstellt.
Um die Websiteklassifizierung zu aktivieren, können Sie beispielsweise den folgenden C#-Code schreiben.
// Connect to the admin central of your tenant
using (var adminContext = new ClientContext("https://[tenant]-admin.sharepoint.com/"))
{
// Provide a valid set of credentials
adminContext.Credentials = OfficeDevPnP.Core.Utilities.CredentialManager.GetSharePointOnlineCredential("[name-of-your-credentials]");
// Create a new instance of the Tenant class of CSOM
var tenant = new Tenant(adminContext);
// Get an Azure AD Access Token using ADAL, MSAL, or whatever else you like
var accessToken = getAzureADAccessToken();
// Define the list of classifications
var newClassificationList = new List<String>();
newClassificationList.Add("HBI");
newClassificationList.Add("MBI");
newClassificationList.Add("LBI");
newClassificationList.Add("GDPR");
// Use the PnP extension method to enable site classification
// Including a default classification value and the URL to an informative page
tenant.EnableSiteClassifications(accessToken, newClassificationList, "MBI", "https://aka.ms/OfficeDevPnP");
}
Aktualisieren oder Entfernen der Websiteklassifizierung in Ihrem Mandanten
Ähnlich wie beim Aktivieren der Websiteklassifizierung, kann das Aktualisieren oder Entfernen der Einstellung entweder mithilfe von PowerShell oder mithilfe der PnP-Kernbibliothek erfolgen.
Aktivieren oder Entfernen der Websiteklassifizierung mit PowerShell
Wenn Sie Einstellungen für die Klassifizierung anschließend aktualisieren müssen, können Sie den folgenden PowerShell-Codeausschnitt verwenden.
# Connect to Azure AD
Connect-AzureAD
# Read current settings
(Get-AzureADDirectorySetting | where { $_.DisplayName -eq "Group.Unified" }).Values
# Update settings
$currentSettings = Get-AzureADDirectorySetting | where { $_.DisplayName -eq "Group.Unified" }
$currentSettings["UsageGuidelinesUrl"] = "https://aka.ms/sppnp"
$currentSettings["ClassificationList"] = "HBI, MBI, LBI, GDPR"
$currentSettings["DefaultClassification"] = "MBI"
Set-AzureADDirectorySetting -Id $currentSettings.Id -DirectorySetting $currentSettings
Hinweis
Es kann eine Stunde oder länger dauern, bis die Einstellungen in der Benutzeroberfläche von Office 365 aktualisiert wurden.
Wie Sie sehen, müssen Sie nur nach der Verzeichniseinstellung mit dem Anzeigenamen mit dem Wert Group.Unified suchen. Dann können Sie die Einstellungswerte aktualisieren und die Änderungen mithilfe des Cmdlets Set-AzureADDirectorySetting anwenden.
Um eine Websiteklassifizierung zu entfernen, können Sie das Cmdlet AzureADDirectorySetting-entfernen wie im folgenden Codeausschnitt verwenden.
# Delete settings
$currentSettings = Get-AzureADDirectorySetting | where { $_.DisplayName -eq "Group.Unified" }
Remove-AzureADDirectorySetting -Id $currentSettings.Id
Aktivieren oder Entfernen der Websiteklassifizierung mit der PnP-Kernbibliothek
Eine weitere Option, die Ihnen zur Verfügung steht, ist die Verwendung der PnP-Kernbibliothek.
Um die Websiteklassifizierung zu aktualisieren, können Sie beispielsweise den folgenden C#-Code schreiben.
// Connect to the admin central of your tenant
using (var adminContext = new ClientContext("https://[tenant]-admin.sharepoint.com/"))
{
// Provide a valid set of credentials
adminContext.Credentials = OfficeDevPnP.Core.Utilities.CredentialManager.GetSharePointOnlineCredential("[name-of-your-credentials]");
// Create a new instance of the Tenant class of CSOM
var tenant = new Tenant(adminContext);
// Get an Azure AD Access Token using ADAL, MSAL, or whatever else you like
var accessToken = getAzureADAccessToken();
// Retrieve the current set of values for site classification
var classificationList = tenant.GetSiteClassificationList(accessToken);
// And update it by adding a new value
var updatedClassificationList = new List<String>(classificationList);
updatedClassificationList.Add("TopSecret");
// Update the site classification settings accordingly
tenant.UpdateSiteClassificationSettings(accessToken, updatedClassificationList, "MBI", "https://aka.ms/SharePointPnP");
}
Um die Einstellungen der Websiteklassifizierung zu deaktivieren und zu entfernen, können Sie einen Codeausschnitt wie den folgenden verwenden.
// Connect to the admin central of your tenant
using (var adminContext = new ClientContext("https://[tenant]-admin.sharepoint.com/"))
{
// Provide a valid set of credentials
adminContext.Credentials = OfficeDevPnP.Core.Utilities.CredentialManager.GetSharePointOnlineCredential("[name-of-your-credentials]");
// Create a new instance of the Tenant class of CSOM
var tenant = new Tenant(adminContext);
// Get an Azure AD Access Token using ADAL, MSAL, or whatever else you like
var accessToken = getAzureADAccessToken();
// Disable the site classification settings
tenant.DisableSiteClassifications(accessToken);
}
Verwalten der Klassifizierung einer Website
Der Wert der Klassifizierung für eine Website kann später mithilfe der Benutzeroberfläche von SharePoint Online gelesen oder aktualisiert werden, wie Sie in der folgenden Abbildung sehen können, indem Sie die Einstellungen Websiteinformationen bearbeiten.
Programmgesteuertes Lesen der Klassifizierung einer Website
Aus der Perspektive eines Entwicklers können Sie CSOM und die REST-API von SharePoint Online verwenden, um den Wert der Klassifizierung für eine bestimmte Website zu lesen und zu schreiben. Jede SharePoint Online-Websitesammlung weist tatsächlich die Classification-Eigenschaft auf, die Sie zum Lesen der Websiteklassifizierung verwenden können.
Nachfolgend sehen Sie einen PowerShell-Codeausschnitt hierfür.
# Delete settings
Connect-PnPOnline "https://[tenant].sharepoint.com/sites/[modernsite]" -Credentials [credentials]
$site = Get-PnPSite
$classificationValue = Get-PnPProperty -ClientObject $site -Property Classification
Write-Host $classificationValue
Wenn Sie den Wert der Websiteklassifizierung mithilfe von REST lesen möchten, z. B. innerhalb eines clientseitigen SharePoint Framework-Webparts, können Sie den folgenden REST-Endpunkt verwenden:
https://[tenant].sharepoint.com/sites/[modernsite]/_api/site/Classification
Basierend auf dem Klassifizierungswert einer Website können Sie die Automation und benutzerdefinierte Richtlinienregeln definieren.
In der PnP-Kernbibliothek gibt es eine Erweiterungsmethode für das Site-Objekt von CSOM, mit der Sie den Klassifizierungswert einer Website einfach lesen können. Im folgenden Codeausschnitt können Sie sehen, wie diese Erweiterungsmethode verwendet wird.
// Connect to the target site collectiion
using (var clientContext = new ClientContext("https://[tenant].sharepoint.com/sites/[modernsite]"))
{
// Provide a valid set of credentials
clientContext.Credentials = OfficeDevPnP.Core.Utilities.CredentialManager.GetSharePointOnlineCredential("[name-of-your-credentials]");
// Read the current classification value
var currentClassification = clientContext.Site.GetSiteClassification();
}
Programmgesteuertes Aktualisieren der Klassifizierung einer Website
Wenn Es sich bei Ihrem Ziel um eine "moderne" Kommunikationswebsite handelt, können Sie auch die Klassifizierungseigenschaft von CSOM verwenden, um den Wert zu aktualisieren.
Wenn Ihr Ziel eine „moderne“ Teamwebsite ist und Sie den Klassifizierungswert aktualisieren möchten, sollten Sie Microsoft Graph verwenden, da die Classification-Eigenschaft von CSOM einfach den Wert der Classification-Eigenschaft der Microsoft 365-Gruppe repliziert.
Hinweis
Weitere Informationen zum Aktualisieren einer Microsoft 365-Gruppe mit Microsoft Graph finden Sie im Dokument Gruppe aktualisieren.
Um Ihnen die Klassifizierung einer Website zu erleichtern, gibt es in der PnP-Kernbibliothek eine Erweiterungsmethode, die in Abhängigkeit von dem Typ der modernen Website das richtige Verhalten für Sie anwendet. Im folgenden Codeauszug sehen Sie, wie diese Methode verwendet wird.
// Connect to the target site collectiion
using (var clientContext = new ClientContext("https://[tenant].sharepoint.com/sites/[modernsite]"))
{
// Provide a valid set of credentials
clientContext.Credentials = OfficeDevPnP.Core.Utilities.CredentialManager.GetSharePointOnlineCredential("[name-of-your-credentials]");
// Get an Azure AD Access Token using ADAL, MSAL, or whatever else you like
// This is needed only if your target is a "modern" team site
var accessToken = getAzureADAccessToken();
// Update the classification value, where the accessToken is an optional argument
clientContext.Site.SetSiteClassification("MBI", accessToken);
// Read back the new classification value (it can take a while to get back the new value)
var currentClassification = clientContext.Site.GetSiteClassification();
}