Namespace: microsoft.graph
Erstellen Sie eine Schutzrichtlinie für einen M365-Dienst SharePoint. Die Richtlinie wird im inactive Zustand erstellt. Der Benutzer kann auch eine Liste der Schutzeinheiten unter der Richtlinie angeben.
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
| Weltweiter Service |
US Government L4 |
US Government L5 (DOD) |
China, betrieben von 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Berechtigungen
Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.
| Berechtigungstyp |
Berechtigungen mit den geringsten Berechtigungen |
Berechtigungen mit höheren Berechtigungen |
| Delegiert (Geschäfts-, Schul- oder Unikonto) |
BackupRestore-Configuration.ReadWrite.All |
Nicht verfügbar. |
| Delegiert (persönliches Microsoft-Konto) |
Nicht unterstützt |
Nicht unterstützt |
| Application |
BackupRestore-Configuration.ReadWrite.All |
Nicht verfügbar. |
HTTP-Anforderung
POST /solutions/backupRestore/sharePointProtectionPolicies/
Anforderungstext
Sie können die folgenden Eigenschaften angeben, wenn Sie ein sharePointProtectionPolicy-Objekt erstellen.
| Eigenschaft |
Typ |
Beschreibung |
| displayName |
Zeichenfolge |
Name der SharePoint-Schutzrichtlinie. Optional. |
| siteProtectionUnits |
Collection(siteProtectionUnit) |
Auflistung der siteProtectionUnits, die dem sharePointProtectionPolicy-Objekt hinzugefügt werden soll. Erforderlich. Das Format von siteId finden Sie unter siteId . |
Antwort
Bei erfolgreicher Ausführung gibt die Methode einen 201 Created Antwortcode und ein sharePointProtectionPolicy-Objekt im Antworttext zurück.
Eine Liste der möglichen Fehlerantworten finden Sie unter Fehlerantworten der Backup Storage-API.
Beispiele
Anforderung
Das folgende Beispiel zeigt eine Anfrage.
POST https://graph.microsoft.com/v1.0/solutions/backupRestore/sharePointProtectionPolicies
{
"displayName": "SharePoint Protection Policy",
"siteProtectionUnits": [
{
"siteId": "contoso.sharepoint.com,febad3c2-a7b2-454c-8910-272c7bcf78fc,ba7b70d0-8ba0-4cae-b19a-7cb8c739512f"
},
{
"siteId": "contoso.sharepoint.com/sites/marketing,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740"
},
{
"siteId": "contoso.sharepoint.com/sites/hr,3bfc861e-9a17-4a27-9562-3d8b26c81bb5,0271110f-634f-4300-a841-3a8a2e851851"
}
]
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new SharePointProtectionPolicy
{
DisplayName = "SharePoint Protection Policy",
SiteProtectionUnits = new List<SiteProtectionUnit>
{
new SiteProtectionUnit
{
SiteId = "contoso.sharepoint.com,febad3c2-a7b2-454c-8910-272c7bcf78fc,ba7b70d0-8ba0-4cae-b19a-7cb8c739512f",
},
new SiteProtectionUnit
{
SiteId = "contoso.sharepoint.com/sites/marketing,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740",
},
new SiteProtectionUnit
{
SiteId = "contoso.sharepoint.com/sites/hr,3bfc861e-9a17-4a27-9562-3d8b26c81bb5,0271110f-634f-4300-a841-3a8a2e851851",
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Solutions.BackupRestore.SharePointProtectionPolicies.PostAsync(requestBody);
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewSharePointProtectionPolicy()
displayName := "SharePoint Protection Policy"
requestBody.SetDisplayName(&displayName)
siteProtectionUnit := graphmodels.NewSiteProtectionUnit()
siteId := "contoso.sharepoint.com,febad3c2-a7b2-454c-8910-272c7bcf78fc,ba7b70d0-8ba0-4cae-b19a-7cb8c739512f"
siteProtectionUnit.SetSiteId(&siteId)
siteProtectionUnit1 := graphmodels.NewSiteProtectionUnit()
siteId := "contoso.sharepoint.com/sites/marketing,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740"
siteProtectionUnit1.SetSiteId(&siteId)
siteProtectionUnit2 := graphmodels.NewSiteProtectionUnit()
siteId := "contoso.sharepoint.com/sites/hr,3bfc861e-9a17-4a27-9562-3d8b26c81bb5,0271110f-634f-4300-a841-3a8a2e851851"
siteProtectionUnit2.SetSiteId(&siteId)
siteProtectionUnits := []graphmodels.SiteProtectionUnitable {
siteProtectionUnit,
siteProtectionUnit1,
siteProtectionUnit2,
}
requestBody.SetSiteProtectionUnits(siteProtectionUnits)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
sharePointProtectionPolicies, err := graphClient.Solutions().BackupRestore().SharePointProtectionPolicies().Post(context.Background(), requestBody, nil)
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
SharePointProtectionPolicy sharePointProtectionPolicy = new SharePointProtectionPolicy();
sharePointProtectionPolicy.setDisplayName("SharePoint Protection Policy");
LinkedList<SiteProtectionUnit> siteProtectionUnits = new LinkedList<SiteProtectionUnit>();
SiteProtectionUnit siteProtectionUnit = new SiteProtectionUnit();
siteProtectionUnit.setSiteId("contoso.sharepoint.com,febad3c2-a7b2-454c-8910-272c7bcf78fc,ba7b70d0-8ba0-4cae-b19a-7cb8c739512f");
siteProtectionUnits.add(siteProtectionUnit);
SiteProtectionUnit siteProtectionUnit1 = new SiteProtectionUnit();
siteProtectionUnit1.setSiteId("contoso.sharepoint.com/sites/marketing,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740");
siteProtectionUnits.add(siteProtectionUnit1);
SiteProtectionUnit siteProtectionUnit2 = new SiteProtectionUnit();
siteProtectionUnit2.setSiteId("contoso.sharepoint.com/sites/hr,3bfc861e-9a17-4a27-9562-3d8b26c81bb5,0271110f-634f-4300-a841-3a8a2e851851");
siteProtectionUnits.add(siteProtectionUnit2);
sharePointProtectionPolicy.setSiteProtectionUnits(siteProtectionUnits);
SharePointProtectionPolicy result = graphClient.solutions().backupRestore().sharePointProtectionPolicies().post(sharePointProtectionPolicy);
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
const options = {
authProvider,
};
const client = Client.init(options);
const sharePointProtectionPolicy = {
displayName: 'SharePoint Protection Policy',
siteProtectionUnits: [
{
siteId: 'contoso.sharepoint.com,febad3c2-a7b2-454c-8910-272c7bcf78fc,ba7b70d0-8ba0-4cae-b19a-7cb8c739512f'
},
{
siteId: 'contoso.sharepoint.com/sites/marketing,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740'
},
{
siteId: 'contoso.sharepoint.com/sites/hr,3bfc861e-9a17-4a27-9562-3d8b26c81bb5,0271110f-634f-4300-a841-3a8a2e851851'
}
]
};
await client.api('/solutions/backupRestore/sharePointProtectionPolicies')
.post(sharePointProtectionPolicy);
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\SharePointProtectionPolicy;
use Microsoft\Graph\Generated\Models\SiteProtectionUnit;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new SharePointProtectionPolicy();
$requestBody->setDisplayName('SharePoint Protection Policy');
$siteProtectionUnitsSiteProtectionUnit1 = new SiteProtectionUnit();
$siteProtectionUnitsSiteProtectionUnit1->setSiteId('contoso.sharepoint.com,febad3c2-a7b2-454c-8910-272c7bcf78fc,ba7b70d0-8ba0-4cae-b19a-7cb8c739512f');
$siteProtectionUnitsArray []= $siteProtectionUnitsSiteProtectionUnit1;
$siteProtectionUnitsSiteProtectionUnit2 = new SiteProtectionUnit();
$siteProtectionUnitsSiteProtectionUnit2->setSiteId('contoso.sharepoint.com/sites/marketing,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740');
$siteProtectionUnitsArray []= $siteProtectionUnitsSiteProtectionUnit2;
$siteProtectionUnitsSiteProtectionUnit3 = new SiteProtectionUnit();
$siteProtectionUnitsSiteProtectionUnit3->setSiteId('contoso.sharepoint.com/sites/hr,3bfc861e-9a17-4a27-9562-3d8b26c81bb5,0271110f-634f-4300-a841-3a8a2e851851');
$siteProtectionUnitsArray []= $siteProtectionUnitsSiteProtectionUnit3;
$requestBody->setSiteProtectionUnits($siteProtectionUnitsArray);
$result = $graphServiceClient->solutions()->backupRestore()->sharePointProtectionPolicies()->post($requestBody)->wait();
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
Import-Module Microsoft.Graph.BackupRestore
$params = @{
displayName = "SharePoint Protection Policy"
siteProtectionUnits = @(
@{
siteId = "contoso.sharepoint.com,febad3c2-a7b2-454c-8910-272c7bcf78fc,ba7b70d0-8ba0-4cae-b19a-7cb8c739512f"
}
@{
siteId = "contoso.sharepoint.com/sites/marketing,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740"
}
@{
siteId = "contoso.sharepoint.com/sites/hr,3bfc861e-9a17-4a27-9562-3d8b26c81bb5,0271110f-634f-4300-a841-3a8a2e851851"
}
)
}
New-MgSolutionBackupRestoreSharePointProtectionPolicy -BodyParameter $params
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.share_point_protection_policy import SharePointProtectionPolicy
from msgraph.generated.models.site_protection_unit import SiteProtectionUnit
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = SharePointProtectionPolicy(
display_name = "SharePoint Protection Policy",
site_protection_units = [
SiteProtectionUnit(
site_id = "contoso.sharepoint.com,febad3c2-a7b2-454c-8910-272c7bcf78fc,ba7b70d0-8ba0-4cae-b19a-7cb8c739512f",
),
SiteProtectionUnit(
site_id = "contoso.sharepoint.com/sites/marketing,da60e844-ba1d-49bc-b4d4-d5e36bae9019,712a596e-90a1-49e3-9b48-bfa80bee8740",
),
SiteProtectionUnit(
site_id = "contoso.sharepoint.com/sites/hr,3bfc861e-9a17-4a27-9562-3d8b26c81bb5,0271110f-634f-4300-a841-3a8a2e851851",
),
],
)
result = await graph_client.solutions.backup_restore.share_point_protection_policies.post(request_body)
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
Antwort
Das folgende Beispiel zeigt die Antwort.
Hinweis: Das hier gezeigte Antwortobjekt kann zur besseren Lesbarkeit gekürzt werden.
HTTP/1.1 201 Created
Content-Location: https://graph.microsoft.com/v1.0/solutions/backupRestore/protectionPolicies/b218eb4a-ea72-42bd-8f0b-d0bbf794bec7
{
"@odata.context": " /solutions/backupRestore/$metadata#sharePointProtectionPolicies/$entity",
"id": "b218eb4a-ea72-42bd-8f0b-d0bbf794bec7",
"displayName": "SharePoint Protection Policy",
"status": "inactive",
"createdBy": {
"application": {
"id": "1fec8e78-bce4-4aaf-ab1b-5451cc387264",
"displayName": "Microsoft Enhanced Restore"
},
"user": {
"email": "User1@contoso.com",
"id": "845457dc-4bb2-4815-bef3-8628ebd1952e",
"displayName": "User1"
}
},
"createdDateTime": "2015-06-19T12:01:03.45Z",
"lastModifiedBy": {
"application": {
"id": "1fec8e78-bce4-4aaf-ab1b-5451cc387264",
"displayName": "Microsoft Enhanced Restore"
},
"user": {
"email": "User2@constoso.com",
"id": "845457dc-4bb2-4815-bef3-8628ebd1952e",
"displayName": "User2"
}
},
"lastModifiedDateTime": "2015-06-19T12:01:03.45Z",
"retentionSettings": [
{
//Keep the per 10 minute copies for 14 days
"interval": "R/PT10M",
"period": "P2W"
},
{
//Keep the per week copies for 1 year
"interval": "R/P1W",
"period": "P1Y"
}
]
}