Καθώς η Microsoft βελτιώνει τη στάση ασφαλείας της σε όλα τα προϊόντα και τις υπηρεσίες, έχουν γίνει αλλαγές στη λειτουργικότητα API που μπορεί να επηρεάσουν τους πελάτες που προηγουμένως βασίζονταν σε δικαιώματα μόνο εφαρμογών για την παροχή Σημειωματάριων τάξης και ομάδων τάξης με χρήση API.

Σημείωση: Στις περισσότερες περιπτώσεις, συνιστάται η χρήση του Συγχρονισμού σχολικών δεδομένων(SDS), μιας δωρεάν υπηρεσίας που σας βοηθά να αυτοματοποιήσετε τη διαδικασία συγχρονισμού δεδομένων χρηστών και ονομάτων από τις Πληροφορίες μαθητών ή τα Συστήματα διαχείρισης με το Microsoft 365. Το SDS σάς βοηθά να διαχειρίζεστε τον εκπαιδευτικό οργανισμό, τους χρήστες, τις τάξεις και τους ρόλους σας, συγχρονίζοντας τα δεδομένα σας με το Microsoft Entra ID και το Microsoft 365, ώστε να μπορείτε να χρησιμοποιείτε το Microsoft Teams, το Intune για εκπαιδευτικά ιδρύματα, Exchange Online, το SharePoint Online, τα σημειωματάρια τάξης του OneNote και να ενεργοποιείτε εφαρμογές τρίτων με καθολική σύνδεση ολοκλήρωση.

Εξακολουθείτε να μπορείτε να παρέχετε τάξεις και σημειωματάρια σε κλίμακα χρησιμοποιώντας το PowerShell και το Microsoft Graph, ακολουθώντας υποστηριζόμενες μεθόδους. Αυτό το άρθρο περιγράφει τα βήματα και παρέχει συνδέσεις προς σχετική τεκμηρίωση.

Σημαντικό: Εάν εργάζεστε με έναν τρίτο συνεργάτη σε παροχή τάξεων σε κλίμακα, μοιραστείτε αυτό το άρθρο μαζί του προτού ακολουθήσετε τα βήματα μόνοι σας.

Προμήθεια νέων τάξεων

Επιλογή 1 (προτείνεται): Χρήση του PowerShell του Teams

Προειδοποίηση: Πριν από τις 21 Αυγούστου 2025, μια προηγούμενη έκδοση αυτής της τεκμηρίωσης συνιστούσε παροχή μέσω του Teams PowerShell πριν από την απαιτούμενη ενημέρωση. Αυτές οι ενημερώσεις έχουν πλέον ολοκληρωθεί και μπορείτε να ακολουθήσετε αυτήν την προσέγγιση αυτήν τη στιγμή. Σας ευχαριστούμε για την υπομονή σας.

Είναι απλό να παρέχετε νέες τάξεις χρησιμοποιώντας το Teams PowerShell, το οποίο θα περιλαμβάνει όλες τις απαραίτητες ρυθμίσεις για τις τάξεις και τα σημειωματάρια. Απλώς προσαρμόστε το εμφανιζόμενο όνομα που θέλετε στην ακόλουθη δέσμη ενεργειών και εκτελέστε το ως διαχειριστής.

Σημαντικό: Η ακόλουθη δέσμη ενεργειών απαιτεί να χρησιμοποιείτε το Microsoft Teams PowerShell έκδοση 7.3.1 ή νεότερη. 

Δείγμα δέσμης ενεργειών

# Using the Teams PowerShell SDK
Install-Module -MicrosoftTeams -Force -AllowClobber
New-Team -DisplayName 'Test Class 20251208.4' -Template 'EDU_Class'

Επιλογή 2: Χρήση του Microsoft Graph PowerShell

Εάν δεν έχετε πρόσβαση στο Teams PowerShell, μπορείτε να εξερευνήσετε την προμήθεια τάξεων σε κλίμακα χρησιμοποιώντας το Microsoft Graph. Επεξεργαστείτε τις παραμέτρους στο επάνω μέρος της ακόλουθης δέσμης ενεργειών ανάλογα με την περίπτωση και, στη συνέχεια, εκτελέστε τη δέσμη ενεργειών ως διαχειριστής για την προμήθεια τάξεων και σημειωματαρίων σε κλίμακα:

Δείγμα δέσμης ενεργειών

# Using the MS Graph API
Install-Module Microsoft.Graph -AllowClobber -Force

# PARAMETERS
$Name = "Test Class 20251208.3"
$Description = "A Test Class"
$Mail =  $Name -replace '[^a-zA-Z0-9\s]|[ ]', '' # Replace this mail alias with a preferred generation method
$OwnerId = "000-000-00000-000000-000" # Replace this with the Owner's GUID
# ------------

# Create a new M365 Group
$CreateGroupBody = @"
{
  "description": "$Name",
  "displayName": "$Description",
  "groupTypes": [
    "Unified"
  ],
  "mailEnabled": false,
  "mailNickname": "$Mail",
  "securityEnabled": false,
  "members@odata.bind": [
    "https://graph.microsoft.com/v1.0/users/$OwnerId"
  ], 
  "owners@odata.bind": [
    "https://graph.microsoft.com/v1.0/users/$OwnerId"
  ],
  "visibility": "HiddenMembership",
  "creationOptions": [
    "ExchangeProvisioningFlags:461",
    "classAssignments"
  ],
  "extension_fe2174665583431c953114ff7268b7b3_Education_ObjectType": "Section",
  "resourceBehaviorOptions": [
    "appRoleForSite:22d27567-b3f0-4dc2-9ec2-46ed368ba538:fullcontrol",
    "appRoleForSite:c9a559d2-7aab-4f13-a6ed-e7e9c52aec87:fullcontrol",
    "appRoleForSite:13291f5a-59ac-4c59-b0fa-d1632e8f3292:fullcontrol",
    "appRoleForSite:2d4d3d8e-2be3-4bef-9f87-7875a61c29de:fullcontrol",
    "appRoleForSite:8f348934-64be-4bb2-bc16-c54c96789f43:fullcontrol"
  ]
}
"@
$NewGroup = Invoke-MgGraphRequest -uri 'https://graph.microsoft.com/v1.0/groups/' -Body $CreateGroupBody -Method POST -ContentType "application/json"

# Create Teams Class Team from group
$CreateTeamBody = @{
    "template@odata.bind" = "https://graph.microsoft.com/v1.0/teamsTemplates('educationClass')"
    "group@odata.bind" = "https://graph.microsoft.com/v1.0/groups('$($NewGroup.Id)')"
}
New-MgTeam -BodyParameter $CreateTeamBody​​​​​​​

Αντιμετώπιση προβλημάτων: εκχώρηση δικαιωμάτων σε υπάρχουσες τοποθεσίες τάξης

Σημείωση: Αυτή η προσέγγιση θα απαιτήσει επίσης από το άτομο που εκτελεί τη δέσμη ενεργειών να είναι διαχειριστής τοποθεσίας, όπως περιγράφεται εδώ. Η παρακάτω δέσμη ενεργειών περιλαμβάνει ένα βήμα για να προσθέσετε τον τρέχοντα συνδεδεμένο χρήστη ως διαχειριστή τοποθεσίας για τις τοποθεσίες που απαιτούν αντιμετώπιση προβλημάτων.

Εάν έχετε ήδη εκχωρήσει τάξεις και παρατηρείτε αποτυχίες ή ζητήματα δικαιωμάτων με το Σημειωματάριο τάξης ή τις αναθέσεις εργασιών του Teams, μπορείτε να ενημερώσετε τα δικαιώματα τοποθεσίας για τις τάξεις σας χρησιμοποιώντας την ακόλουθη δέσμη ενεργειών, αντικαθιστώντας την παράμετρο rawGroups με τα groupIDs των επηρεαζόμενων τάξεων:

Δείγμα δέσμης ενεργειών

#You will need to connect to SharePoint, Exchange Online, and Graph with the following -Scopes Sites.FullControl.All, as well as collect the groupIDs of Class Teams affected
$rawGroups =@("b0a5905d-09ae-4605-8e12-94da93ecbe92","e0eec729-24ef-451e-b079-56d0baf4dfc9")
# Convert to array of objects with .groupid
$groups = $rawGroups | ForEach-Object { Get-UnifiedGroup -Identity $_ }
$step = 0

#get the currently logged in user's account to add as a site admin
$CUA = (get-mgcontext).account


foreach ($group in $groups) {
 $step = $step + 1
 Set-SPOUser -Site $group.SharePointSiteUrl -LoginName $CUA -IsSiteCollectionAdmin $true
 Write-Host "SiteCollectionAdmin added on $step of $($Groups.Count) Class Sites"
}

#Pause for 5 minutes before tiggering the General Folder creation
Write-Host "Pausing for 5 Minutes before adding perms to allow SiteCollectionAdmin to propagate"
Start-Sleep -Seconds 300

Write-Host "Working on $($Groups.Count) Classes"

foreach ($group in $groups) {
 #$step = $step + 1
 $Site = Get-MgGroupSite -GroupId $group.ExternalDirectoryObjectId -SiteId "root"
 $SiteId = $Site.Id
 Write-Host "Processing permissions on $step of $($Groups.Count) Classes"
 # These are the AppIds for common Microsoft EDU Apps
 $AppIds = @{
 "8f348934-64be-4bb2-bc16-c54c96789f43"="EDU Assignments";
 "22d27567-b3f0-4dc2-9ec2-46ed368ba538"="Reading Assignments";
 "2d4d3d8e-2be3-4bef-9f87-7875a61c29de"="OneNote";
 "c9a559d2-7aab-4f13-a6ed-e7e9c52aec87"="Microsoft Forms";
 "13291f5a-59ac-4c59-b0fa-d1632e8f3292"="EDU OneNote";
 }

# Apply the permissions to the group site
$AppIds.Keys | %{
  $AppId = $_
  $Name = $AppIds[$_]

  $Body = @"
  { 
      "roles": ["fullcontrol"], 
      "grantedToIdentities": [{ 
        "application": { 
          "id": "$AppId",
          "displayName": "$Name"
        }
      }] 
  }
"@

  Invoke-MgGraphRequest -Method POST -Uri "https://graph.microsoft.com/v1.0/sites/$SiteId/permissions" -Body $Body -ContentType "application/json"
}
}

Write-Host "Processed $($Groups.Count) Classes, removing sitecollectionadmin"
$step = 0
foreach ($group in $groups) {
 $step = $step + 1
 Set-SPOUser -Site $group.SharePointSiteUrl -LoginName $CUA -IsSiteCollectionAdmin $false
 Write-Host "SiteCollectionAdmin removed on $step of $($Groups.Count) Class Sites"
}

Χρειάζεστε περισσότερη βοήθεια;

Θέλετε περισσότερες επιλογές;

Εξερευνήστε τα πλεονεκτήματα της συνδρομής, περιηγηθείτε σε εκπαιδευτικά σεμινάρια, μάθετε πώς μπορείτε να προστατεύσετε τη συσκευή σας και πολλά άλλα.