Es geht nicht ohne: PowerShell und SharePoint

Es geht doch nichts über Rituale. Ich bin also gerade auf einem SharePoint-Server als Farm-Admin eingeloggt und wollte ein wenig powershellen. Und da kommt die Meldung:

Auf die lokale Farm kann nicht zugegriffen werden. Cmdlets mit `FeatureDependencyId`sind nicht registriet.

Wer kennt die Meldung nicht. Und warum ist die da: Sicherheit. Nur Farm-Admin reicht halt für die PowerShell nicht (Ach so: natürlich habe ich meine PowerShell schon mit erhöhten Rechten gestartet, das ist doch klar).

Was ist nun also das Problem? Der Benutzer ist zwar Farm-Admin, kann aber von der Shell nicht direkt auf die Datenbanken von SharePoint zugreifen. Somit kann ich die meisten PowerShell Befehle (für SharePoint) nicht durchführen. Wenn ich nun also doch mal ein Get-SPWebApplication “foo” mache, dann bekomme ich die Meldung

Auf die lokale Farm kann nicht zugegriffen werden. Vergewissern Sie sich,. dass die lokale Farm ordnungsgemäß konfiguriert sowie aktuell verfügbar ist und Sie über ausreichende Berechtigungen verfügen, um auf die Datenbank zugreifen zu können, bevor Sie es erneut versuchen.

Aha – das steht’s ja schon. Ich kann nicht auf die Datenbank zugreifen. Um das Zu ändern gibt es den Befehl Add-SPShellAdmin. Nur dumm, dass ich den als jemand ausführen muss, der über entsprechende Berechtigungen verfügt (also der schon Shell-Admin ist).

Na gut, dann muss dafür mal eben kurz der spFarm herhalten. Also eben eine CMD als spFarm gestartet mit

runas /user:spFarm cmd

und dann eine PowerShell starten. Hierbei muss diese aber elevated gestartet werden, und dass vom Prompt aus. Das geht eigentlich auch ganz einfach

@powershell Start-Process -Verb "runas" powershell

So, nun habe ich also eine PowerShell als spFarm mit erhöhten Rechten. Der Rest ist einfach

Add-PSSnapin Microsoft.SharePoint.PowerShell
Add-SPShellAdmin busitec\eiben

Wenn ich nun wieder hingehe und eine SharePoint Verwaltungsshell (mit erhöhten Rechten) starte, dann kann ich auch per PowerShell auf die Farm zugreifen.

Voila!

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.