Powershell:地元の農場は利用できません。 FeatureDependencyIdを持つコマンドレットが登録されていません


0

私は、WindowsバッチファイルからPowerShellスクリプトを実行しようとしています。これは使用するSharePoint関連のスクリプトです。 Import-SPData

これを使用すると問題なく動作します。 USERA のログインしかし、私はから同じバッチファイルを実行しようとすると USERB のログイン、私は以下のエラーが出ます:

c:\PS>ExecMyPowershellScript.bat

c:\PS>C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -psconsolefile "
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\CONFIG\P
OWERSHELL\Registration\psconsole.psc1" -command "c:\ps\MyPSScript.ps1"

The local farm is not accessible. Cmdlets with FeatureDependencyId are not regis
tered.
Import-SPData : Cannot access the local farm. Verify that the local farm is pro
perly configured, currently available, and that you have the appropriate permis
sions to access the database before trying again.
At C:\ps\Run_MyPSScript.ps1:5 char:18

...

私はそれを確認しました USERB への権限を持っています bat そしてその ps1 ファイル

使ってます PowerShell バージョン2と SharePoint Server 2010

回答:


1

Sharepointは対処すべき獣です。ユーザーが適切なSharePointアクセス許可やコンテンツデータベースへのアクセス権を持っていないのではないでしょうか。

違いを探すために、Windows、Sharepoint、DBの各レベルでUserAとUserBの許可を比較します。


0

わかりました、私はこれをうまく働かせました。

マイクロソフトによると:

SharePoint 2010製品にWindows PowerShellを使用するには、   ユーザーはのメンバーである必要があります SharePoint_Shell_Access 上の役割   構成データベースとそのメンバー WSS_ADMIN_WPG 地域団体   SharePoint 2010製品がインストールされているコンピューター上。

http://technet.microsoft.com/en-us/library/ff607596%28v=office.14%29.aspx

これをする:

  • SharePoint管理シェルを開きます(ユーザーアカウント制御を有効にしている場合は管理者として実行します)。
  • 追加する SharePoint_Shell_Access SharePoint構成データベースのUSERBに対する役割。

これを行うには、次のPowerShellコードを使用できます。

$dbs = Get-SPDatabase; foreach($d in $dbs) {If($d.name.contains("SharePoint_Config")){Add-SPShellAdmin "domain\USERB" -database $d}}
  • SharePointサイトコレクションとドキュメントライブラリ/リスト(存在する場合)にも適切な権限があることを確認してください。 USERB
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.