2010-12-02 1 views
0

C#を使用して共有サイトサイト(WSS 3.0)のドキュメントライブラリにファイルをアップロードしたいが、問題は、許可されたユーザーはファイルをアップロードします。私はSharepointオブジェクトモデルを使用してユーザーの資格情報を渡す方法を知らない。ユーザー資格情報、つまりユーザー名、パスワードを取得し、これらの資格情報を使用してファイルをアップロードする方法はありますか?私はこれを求めています。なぜなら、私は昇格されたprevelagesを使用すると、ファイルがシステムアカウントとしてアップロードされたため、誰がファイルをアップロードしたのか分かりません。ファイルをアップロード中にWebサービスの代わりにSPオブジェクトモデルを使用して共有ポイントにユーザーの資格情報を渡す方法

答えて

1

通常、ファイルをSharePointライブラリにアップロードするときは、現在ログインしているユーザーコンテキストを使用して行われるため、十分な権限を持たないユーザーはファイルをアップロードできず、コード

+0

にALLUSERSプロパティで

ルックこんにちはアッシュートッシュは、実際に私は、SharePointオブジェクトモデルを使用してプログラム的にファイルをアップロードしています。ファイルは、次のコードを使用して正常にアップロードされましたが、私の問題は、ユーザーからのユーザー名とパスワードを取得して、与えられたユーザーの資格情報を使用してファイルをアップロードすることです。 – Alex

+0

使用(のSPSite oSite =新規のSPSite(sharePointSite)) {使用(SPWeb oWeb = oSite.OpenWeb()){ \t \t \t SPFolder MYLIBRARY = oWeb.Folders [documentLibraryName]。 \t \t \t FileStream fileStream = File.OpenRead(fileToUpload); \t \t \t myLibrary.Files.Add(FileName、fileStream、replaceExistingFiles); \t \t} \t \t \t \t} – Alex

+0

こんにちは、アレックス、あなたがアプリケーションプールアカウントの資格情報を使用していますspelevated prevelagesを使用しない限り、あなたが書いたコードは常にログインしているユーザーのコンテキストで実行されます。だから、基本的には、ログインしたユーザーが適切なprivalagesを持っていないので、余分なユーザーIDを渡す必要はありません。彼はドキュメントライブラリにファイルをアップロードすることができません。 –

0

カスタムコードである必要があり、そのまま使用できません。

1つのアプローチ。ファイルアップロードを行うルーチンにユーザー名を渡すことができます。次に、サイトのユーザーを列挙して、a)ユーザーがサイトに存在し、b)ドキュメントを追加する適切な権限を持っているかどうかを確認できます。 SPWebオブジェクト(http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spweb.allusers.aspx

関連する問題