Raven.Server.exe.config ファイルに次の行を追加して、RavenDB サーバー ビルド 2174 を実行しています。
<add key="Raven/Authorization/Windows/RequiredGroups" value="localhost\Administrators"/>
<add key="Raven/AnonymousAccess" value="None"/>
また、アプリケーションが RavenDB サーバーおよびデータベースと対話するために使用する ApiKey もセットアップしました。ApiKey には、使用しているデータベースの管理者権限が付与されています (管理者チェックボックスをオンにしました)。
上記の構成で、DatabaseCommands.GetAttachment() メソッドを使用して RavenDB データベースから添付ファイルをロードしようとしています。これを行うたびに、401 (Unauthorized) 応答が返されます。DatabaseCommands オブジェクトで With() メソッドを使用して、Administrators グループからのログインとパスワードの組み合わせを使用して認証を渡すことで、機能させることができました。これを行うコード行は次のとおりです
SiteDocumentStore.DatabaseCommands
.With(new NetworkCredential("login", "password", "domain"))
.GetAttachment(attachment_key);
私の質問は、With() を使用せずに GetAttachment() メソッドを使用してログイン資格情報を渡すにはどうすればよいですか? DocumentStore には既に ApiKey があり、特別なことをする必要なく、他のすべてのコマンドにそれを使用します。実際、PutAttachment() メソッドは With() メソッドを使用しなくても機能するのに、なぜ GetAttachment() メソッドを使用できないのでしょうか? これは見落としですか、それともバグですか?それとも、私が得られないものがありますか?