web-dev-qa-db-ja.com

すべてのユーザーのMicrosoftAzureファイルへの接続を永続化するにはどうすればよいですか?

Azureファイル共有を作成し、それを「 VM_01

CmdKeyコマンドを使用して資格情報を保持しました。

  C:\>cmdkey /add:<yourstorageaccountname>.file.core.windows.net 
             /user:<yourstorageaccountname> 
             /pass:<YourStorageAccountKeyWhichEndsIn==>

仮想マシンにログインすると共有ドライブを表示できますが、同じマシンにログを記録している他の管理者は共有ドライブを表示してアクセスできません。

インターネットで時間を過ごした後、CmdKeyによって保持されている資格情報は、「CmdKey」を実行したユーザーが利用できることがわかりました。https:/ /blogs.msdn.Microsoft.com/windowsazurestorage/2014/05/26/persisting-connections-to-Microsoft-Azure-files/

したがって、提案された解決策は、runasコマンドを使用してから、CmdKeyコマンドを次のように使用することでした。フォローする

   runas /user:<username> cmd.exe // This will open the command window

しかし、100人のユーザーがいます!!!異なるユーザー名でboveコマンドを100回実行する必要がありますか:(代替ソリューションはありますか?

MSDNから抽出しましたが、どういう意味かわかりません。

VM上に新しいローカルユーザーを作成し、そのユーザーを管理者グループに追加すると、昇格されたコンテキストと昇格されていないコンテキストの両方でそのユーザーのコマンドを実行できます。昇格されたコンテキストと昇格されていないコンテキストの間で接続は共有されないため、「NetUse」を実行して各コンテキストで個別に接続することをお勧めします。ただし、永続化された資格情報は共有されるため、いずれかのコンテキストで「CmdKey」を実行するだけで済みます。

2
kudlatiger

明らかな方法は、ログインスクリプト(GPOまたはローカルポリシー)のいずれか)を実行してドライブをマップすることです。明らかにこれの欠点は、ストレージ資格情報がログインスクリプトにプレーンテキストで保存されることです。 、PowerShellなどを使用して暗号化を行うことはできますが、それでも誰かがログインスクリプトを持って立ち去り、他の場所で使用するのを防ぐことはできません。これが、cmdkeyを使用している理由かもしれません。私が知る限り、これを行う方法はありません。スクリプトで使用するために資格情報をファイルのどこかに保存せずに、cmdkeyを介して資格情報を追加します。

これが、Azureファイルが最初に表示されたものよりも役に立たないことがわかった理由の1つです。

1
Sam Cogan

解決しました!

バッチファイルを作成し、それをWindows 起動フォルダーに追加しました。

C:\ ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

バッチファイルの内容

   @echo off
   Net Use * /delete /yes

   cmdkey /add:<yourstorageaccountname>.file.core.windows.net 
         /user:<yourstorageaccountname> 
         /pass:<YourStorageAccountKey>

   Net Use X: \\saspr.file.core.windows.net\myfilesharename

これで、ログインした人は誰でも私のマップされたドライブを見ることができます!

しかし、サムが説明したように、欠点について考えてください!!

1
kudlatiger