2
참조 링크 아래에 나타낸 바와 같이 나는, 인증 정보를 전달하여 사용자 지정 로깅을 구현하려는

:SharePoint 기반 2010 클라이언트 개체 모델 인증

내가 사용 코드 아래에 있지만 자동 로그인 대신 사용자 이름과 비밀번호를 입력하기위한 로그인 창이 팝업됩니다. 문법적으로 자격 증명을 전달하여 자동으로 로그인하고 싶습니다.

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using Microsoft.SharePoint.Client; 
using System.Net; 
using MSDN.Samples.ClaimsAuth; 

namespace Sp_Ctx 
{ 
    class Program 
    { 
     [STAThread] 
     static void Main(string[] args) 
     { 
      //if (args.Length < 1) { Console.WriteLine("SP_Ctx <url>"); return; } 

      string targetSite = "https://mysite.sharepoint.com";//args[0]; 
      using (ClientContext ctx = ClaimClientContext.GetAuthenticatedContext(targetSite)) 
      { 
       if (ctx != null) 
       { 
        ctx.Credentials = new NetworkCredential("[email protected]", "password", "mysite.sharepoint.com"); 
        ctx.Load(ctx.Web); // Query for Web 
        ctx.ExecuteQuery(); // Execute 
        Console.WriteLine(ctx.Web.Title); 
       } 
      } 
      Console.ReadLine(); 
     } 
    } 
} 

UPDATE는 :

나는 MS (365) 셰어 포인트 2013 사이트 호스팅했지만 나는 버전 2010 인증 메커니즘을 사용하려고합니다.

+0

이 URL을 참조하십시오. 그리고 그것이 도움이되는지 알려주세요. http://vrdmn.blogspot.com.au/2013/01/authenticating-net-client-object-model.html – user1001656

+0

그건 제가 시도한 첫 번째 예입니다 :) – chamara

답변

0

사용중인 MSDN 샘플 프로젝트는 팝업을 통한 클레임 기반 인증 만 허용합니다. 이를 프로그래밍 방식으로 수행하기 위해 다른 헬퍼 라이브러리 인 Wictor Wilen의 claims demo을 사용했습니다. 그런 다음 MsOnlineClaimsHelper 클래스를 사용하여 인증 할 수 있습니다. Wictor의 블로그에서 직접 가져온 샘플 코드는 다음과 같습니다.

MsOnlineClaimsHelper claimsHelper = new MsOnlineClaimsHelper(url, username, password);  

using (ClientContext context = new ClientContext(url)) { 

    context.ExecutingWebRequest += claimsHelper.clientContext_ExecutingWebRequest; 

    context.Load(context.Web); 

    context.ExecuteQuery(); 

    Console.WriteLine("Name of the web is: " + context.Web.Title); 

} 

이것은 6 개월 전에 내가 프로젝트에서했던 것입니다. 그러나 Microsoft에서 제공하는 새로운 최상의 방법이나 무언가가 있다면 듣고 싶습니다.

0

이 시도 : 자격 증명에

ctx.Credentials = new NetworkCredential("guest", "password", "mysite.com.au"); 

도메인은 게스트 계정의 도메인 대신 SharePoint 서버 이름이어야합니다.

관련 문제