Kje vse ima določen uporabnik dostop v SharePoint Online?

SharePoint Online powershell skripta, ki pomaga pri ugotavljanju dostopov za točno določene osebe. Največ powershell skript se najde za pregled na posamezno SharePoint mesto. Žal imam preveč aktivnih mest, da bi lahko to ročno izvajala za vsako mesto posebej. Sedaj pa je tu skripta, ki omogoča prav to.

Pogosto bi radi iz različnih razlogov vedeli, do katerih aktivnih SharePoint mest ima posamezni uporabnik dostop, pa naj gre to za SharePoint mesta, grupe ali pa Teama.


Razlogi so lahko odhod iz podjetja, zamenjava delovnega mesta, pregled dostopa za zunanjega uporabnika…

Spodaj je powershell skripta, ki preveri dovoljenja v SharePoint Online za določenega uporabnika. Skripta ne pokaže članstva v AD varnostnih skupinah.

blonde woman reading multicoloured code on a computer screen


Za pregled je potrebno imeti dostop do vseh teh mest ( enake pravice kot se jih uporablja npr. za backup), ni dovolj imeti global admin pravice.

Seveda mora biti prej nameščen modul Microsoft.Online.SharePoint.PowerShell

# Nastavi poverilnice za povezavo
$credential = Get-Credential

# Poveži se s SharePointom
Connect-SPOService -Url "https://tenant-admin.sharepoint.com" -Credential $credential

# Določi uporabniško ime za pregled
$uporabniskoIme = "uporabnisko.ime@tenant.onmicrosoft.com"

# Definiraj prazno polje za rezultate
$rezultati = @()

# Pridobi vsa SharePoint mesta
$spletnaMesta = Get-SPOSite -Limit All

foreach ($spletnoMesto in $spletnaMesta) {
    Write-Host "Pregledujem mesto:" $spletnoMesto.Url

    # Pridobi dovoljenja za uporabnika v SharePoint mestu
    $dovoljenja = Get-SPOUser -Site $spletnoMesto.Url | Where-Object { $_.LoginName -eq $uporabniskoIme }

    foreach ($dovoljenje in $dovoljenja) {
        $rezultat = New-Object PSObject
        $rezultat | Add-Member -MemberType NoteProperty -Name "Mesto" -Value $spletnoMesto.Url
        $rezultat | Add-Member -MemberType NoteProperty -Name "Uporabnik" -Value $dovoljenje.LoginName
        $rezultat | Add-Member -MemberType NoteProperty -Name "Dovoljenja" -Value $dovoljenje.Roles

        # Dodaj rezultat v polje rezultatov
        $rezultati += $rezultat
    }
}

# Shranjevanje rezultatov v CSV datoteko
$rezultati | Export-Csv -Path "c:\Temp\datoteke-fras.csv" -NoTypeInformation

Write-Host "Skripta je končana. Rezultati so shranjeni v CSV datoteko."

Uspešno pregledovanje dostop za posameznega uporabnika želim.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.