2016-11-09 22 views
0

私はSharepointへのカスタムアップロードページを作成していますが、可能であれば認証を合理化したいと考えています。現時点では、ClientContextを使用してSharepointに正常に接続し、次のようにして資格を設定することができます context.Credentials = new SharePointOnlineCredentials(username、securePassword);Sharepoint認証.Net

しかし、これは、送信するユーザー名とパスワードを取得するためにログインページが必要であることを意味します。また、アップロード後にドキュメントページにリダイレクトされるときに、Sharepointサイトに再びログインする必要があります。

ユーザー名とパスワードはADログインの詳細と同じですので、理想的には私はこれを使用するか、Sharepointサイトに直接ログインさせて、自分のページで使用するための資格情報を保存します。これにより、2回入力する必要がなくなります。

誰でもこれを達成する方法に関するアイデアはありますか? CredentialCache.DefaultCredentialsとCredentialCache.DefaultNetworkCredentialsを試しましたが、禁止されたエラー/アクセスが拒否されました。 この場所でファイルを開く前に、まずWebサイトを参照して、自動的にログインするオプションを選択する必要があります。

+0

これはInterまたはIntraネットアプリケーションですか? –

+0

あなたのアプリはクレデンシャルを保存/保持する予定ですか? –

+0

アプリケーションは、SalesforceとSharepointの間で行き来します。つまり、ユーザーは既にSalesforceとSharepointにログインしている必要があります。少なくとも彼らは一日に一度これをしなければならない。しかし、私がやりたい最後のことは、自分のアプリケーションに来るときに3番目のログインページを導入することです。理想的には、WebアプリケーションはユーザーがSharepointにログインしていることを確認し、これらの資格情報を使用しているかどうかをチェックします。私は、トークンをクッキーに保存する予定です。 – Graham

答えて

0

あなたの質問への回答は投稿にまとめるのが難しいと思います。私があなたが探していると思っていることを説明するために最善を尽くすことができます。

「Webアプリケーション」レベルでは、異なる認証モデルを使用できます。つまり、Webアプリケーション内のすべてのサイトコレクションは、同じ認証モデルで動作します。 既にActive Directoryで動作しているWebアプリケーションがあり、(おそらくForms認証を使用して)インターネットアクセスを提供する場合は、別のWebアプリケーションを作成する必要があります。

http://www.youtube.com/watch?v=0Z8vb42j1wQ

そして、これは、フォーム認証にWebアプリケーションを実装する方法のビデオです:ここで

は、新しいWebアプリケーションを作成する方法についてのサンプル動画です

http://www.youtube.com/watch?v=yBqL3E-ne60

0

少し進歩しましたが、次のコードが正しいパスhttps://code.msdn.microsoft.com/remote-authentication-in-b7b6f43cにあると考えていますが、これは現在のウィンドウではなく新しいブラウザウィンドウを開きますWebBrowser()(単一のスレッドアパートメントではない)を開くときにエラーを使用します。