static void Main(string[] args) { if (args.Count() != 3) { Console.WriteLine("Syntax: Wictor.Office365.ClaimsDemo.exe url username password"); } MsOnlineClaimsHelper claimsHelper = new MsOnlineClaimsHelper(args[0], args[1], args[2]); using (ClientContext context = new ClientContext(args[0])) { context.ExecutingWebRequest += claimsHelper.clientContext_ExecutingWebRequest; /* get title */ //context.Load(context.Web); //context.ExecuteQuery(); //Console.WriteLine("Name of the web is: " + context.Web.Title); /* get lists */ var results = context.LoadQuery(context.Web.Lists.Include(list => list.Title, list => list.Id)); context.ExecuteQuery(); results.ToList().ForEach(x => { Console.WriteLine(x.Title); }); Console.ReadLine(); } }
public static TokenContainer getTokens(string url, string userName, string password) { TokenContainer tc = new TokenContainer(); MsOnlineClaimsHelper claimsHelper = new MsOnlineClaimsHelper(url, userName, password); CookieContainer cc = claimsHelper.GetCookieContainer(); tc.FedAuth = cc.GetCookies(new Uri(url))["FedAuth"].Value; tc.RtFa = cc.GetCookies(new Uri(url))["rtFa"].Value; return(tc); }
public static ClientContext GetContext() { if (ctx == null) { //ctx = ClaimClientContext.GetAuthenticatedContext(SharepointUrl); MsOnlineClaimsHelper claimsHelper = new MsOnlineClaimsHelper(SharepointUrl, "*****@*****.**", "1418Taktus"); ctx = new ClientContext(SharepointUrl); ctx.ExecutingWebRequest += claimsHelper.clientContext_ExecutingWebRequest; } return ctx; }
public static CookieContainer GetCookies(string url, PSCredential credential) { if (credential == null || string.IsNullOrEmpty(credential.UserName) || credential.Password == null || credential.Password.Length == 0) { throw new ArgumentException( "Explicit credentials are needed to connect to Office 365."); } var credentials = credential.GetCredentials(); var helper = new MsOnlineClaimsHelper(credential.UserName, credential.Password.ToInsecureString(), url); return(helper.CookieContainer); }
static void Main(string[] args) { if (args.Count() != 3) { Console.WriteLine("Syntax: Wictor.Office365.ClaimsDemo.exe url username password"); } MsOnlineClaimsHelper claimsHelper = new MsOnlineClaimsHelper(args[0], args[1], args[2]); using (ClientContext context = new ClientContext(args[0])) { context.ExecutingWebRequest += claimsHelper.clientContext_ExecutingWebRequest; context.Load(context.Web); context.ExecuteQuery(); Console.WriteLine("Name of the web is: " + context.Web.Title); } }
public static ClientContext GetContext(string url) { var username = ConfigHelper.SharepointUsername; var password = ConfigHelper.SharepointPassword; if (msOnlineHelper == null) { msOnlineHelper = new MsOnlineClaimsHelper(username, password, url); } ClientContext ctx = new ClientContext(url); ctx.ExecutingWebRequest += new EventHandler <WebRequestEventArgs>(ctx_ExecutingWebRequest); //Upload(ctx, "https://faulkner.sharepoint.com/Shared Documents", "c:\\temp\\test.txt"); return(ctx); }
static void Main(string[] args) { //lets create config file for funnelback and read it first Dictionary <string, string> fnb_config = new Dictionary <string, string>(); try { using (StreamReader sr = new StreamReader("funnelback.cfg")) { String line; while ((line = sr.ReadLine()) != null) { // Console.WriteLine(line); //Dictionary<string, string> fnb_dictionary = new Dictionary<string, string>(); string[] words = line.Split('='); fnb_config.Add(words[0], words[1]); // Console.WriteLine(words[0] + words[1]); } } } catch (Exception e) { // Let the user know what went wrong. Console.WriteLine("The file could not be read:"); Console.WriteLine(e.Message); } // Console.WriteLine(fnb_config); foreach (KeyValuePair <string, string> pair in fnb_config) { Console.WriteLine("{0}, {1}", pair.Key, pair.Value); } string[] wanted_fields = { "" }; // wanted_fields=new string[] {""}; if (fnb_config.ContainsKey("wanted_fields")) { string wanted_fields_string = fnb_config["wanted_fields"]; wanted_fields = wanted_fields_string.Split(','); } string[] cdata_fields = { "" }; if (fnb_config.ContainsKey("cdata_fields")) { string cdata_fields_string = fnb_config["cdata_fields"]; wanted_fields = cdata_fields_string.Split(','); } string[] lookup_fields = { "" }; if (fnb_config.ContainsKey("lookup_fields")) { string lookup_fields_string = fnb_config["lookup_fields"]; wanted_fields = lookup_fields_string.Split(','); } string target_site = fnb_config["target_site"]; string username = fnb_config["username"]; string password = fnb_config["password"]; string output_folder = fnb_config["output_folder"]; string auth_method = fnb_config["auth_method"]; FunnelbackXmlConfig fbx = new FunnelbackXmlConfig(); fbx.outputFolder = output_folder; fbx.targetSite = target_site; fbx.WantedFields = wanted_fields; fbx.CDataFields = cdata_fields; fbx.LookupFields = lookup_fields; //get all we need for claims authentication MsOnlineClaimsHelper claimsHelper = new MsOnlineClaimsHelper(target_site, username, password); //from now on we can use sharepoint being authenticated using (ClientContext ctx = new ClientContext(target_site)) { ctx.ExecutingWebRequest += claimsHelper.clientContext_ExecutingWebRequest; ctx.Load(ctx.Web); ctx.ExecuteQuery(); // //List all users FunnelbackConfig config = new FunnelbackConfig("funnelback.cfg"); FunnelbackUser m = new FunnelbackUser(ctx, config); m.ListUsers(); //End of users if (ctx != null) { using (StreamWriter writer = new StreamWriter(fbx.outputFolder + "\\first.xml")) { Site oSite = ctx.Site; WebCollection oWebs = oSite.RootWeb.Webs; FunnelbackXmlSite fbxs = new FunnelbackXmlSite(); fbxs.ww = oSite.RootWeb; fbxs.myfbx = fbx; fbxs.Process(); ctx.Load(oWebs); ctx.ExecuteQuery(); writer.WriteLine(@"<?xml version='1.0'?>"); writer.WriteLine(@"<sharepoint>"); foreach (Web oWebsite in oWebs) { ListCollection collList = oWebsite.Lists; ctx.Load(collList); // Query for Web ctx.ExecuteQuery(); // Execute writer.WriteLine(@"<site>"); writer.WriteLine("<title>{0}</title>", oWebsite.Title); foreach (List oList in collList) { writer.WriteLine("<list>{0}</list>", oList.Title); List oListy = collList.GetByTitle(oList.Title); CamlQuery camlQuery = new CamlQuery(); camlQuery.ViewXml = "<View><RowLimit>100</RowLimit></View>"; ListItemCollection collListItem = oListy.GetItems(camlQuery); ctx.Load(collListItem, items => items.IncludeWithDefaultProperties( item => item.DisplayName, item => item.HasUniqueRoleAssignments )); ctx.ExecuteQuery(); foreach (ListItem oListItem in collListItem) { FunnelbackXmlRecord oFXR = new FunnelbackXmlRecord(); oFXR.myfbx = fbx; oFXR.li = oListItem; oFXR.FunnelbackWriteXml(); FunnelbackItem oFI = new FunnelbackItem(oListItem); oFI.config = new FunnelbackConfig("funnelback.cfg"); XmlSerializer ser = new XmlSerializer(typeof(FunnelbackItem)); XmlWriter tx = XmlWriter.Create(fbx.outputFolder + "\\" + oFI.GetSafeFilename("xml")); ser.Serialize(tx, oFI); tx.Close(); } } writer.WriteLine(@"</site>"); } writer.WriteLine(@"</sharepoint>"); } } } }
static void Main(string[] args) { //lets create config file for funnelback and read it first Dictionary<string, string> fnb_config = new Dictionary<string, string>(); try { using (StreamReader sr = new StreamReader("funnelback.cfg")) { String line; while ((line = sr.ReadLine()) != null) { // Console.WriteLine(line); //Dictionary<string, string> fnb_dictionary = new Dictionary<string, string>(); string[] words = line.Split('='); fnb_config.Add(words[0],words[1]); // Console.WriteLine(words[0] + words[1]); } } } catch (Exception e) { // Let the user know what went wrong. Console.WriteLine("The file could not be read:"); Console.WriteLine(e.Message); } // Console.WriteLine(fnb_config); foreach (KeyValuePair<string, string> pair in fnb_config) { Console.WriteLine("{0}, {1}", pair.Key, pair.Value); } string[] wanted_fields = { "" }; // wanted_fields=new string[] {""}; if (fnb_config.ContainsKey("wanted_fields")) { string wanted_fields_string = fnb_config["wanted_fields"]; wanted_fields = wanted_fields_string.Split(','); } string[] cdata_fields = { "" }; if (fnb_config.ContainsKey("cdata_fields")) { string cdata_fields_string = fnb_config["cdata_fields"]; wanted_fields = cdata_fields_string.Split(','); } string[] lookup_fields = { "" }; if (fnb_config.ContainsKey("lookup_fields")) { string lookup_fields_string = fnb_config["lookup_fields"]; wanted_fields = lookup_fields_string.Split(','); } string target_site = fnb_config["target_site"]; string username = fnb_config["username"]; string password = fnb_config["password"]; string output_folder = fnb_config["output_folder"]; string auth_method = fnb_config["auth_method"]; FunnelbackXmlConfig fbx = new FunnelbackXmlConfig(); fbx.outputFolder = output_folder; fbx.targetSite = target_site; fbx.WantedFields = wanted_fields; fbx.CDataFields = cdata_fields; fbx.LookupFields = lookup_fields; //get all we need for claims authentication MsOnlineClaimsHelper claimsHelper = new MsOnlineClaimsHelper(target_site,username,password); //from now on we can use sharepoint being authenticated using (ClientContext ctx = new ClientContext(target_site)) { ctx.ExecutingWebRequest += claimsHelper.clientContext_ExecutingWebRequest; ctx.Load(ctx.Web); ctx.ExecuteQuery(); if (ctx != null) { using (StreamWriter writer = new StreamWriter(fbx.outputFolder + "\\first.xml")) { Site oSite = ctx.Site; WebCollection oWebs = oSite.RootWeb.Webs; FunnelbackXmlSite fbxs = new FunnelbackXmlSite(); fbxs.ww = oSite.RootWeb; fbxs.myfbx = fbx; fbxs.Process(); ctx.Load(oWebs); ctx.ExecuteQuery(); writer.WriteLine(@"<?xml version='1.0'?>"); writer.WriteLine(@"<sharepoint>"); foreach (Web oWebsite in oWebs) { ListCollection collList = oWebsite.Lists; ctx.Load(collList); // Query for Web ctx.ExecuteQuery(); // Execute writer.WriteLine(@"<site>"); writer.WriteLine("<title>{0}</title>", oWebsite.Title); foreach (List oList in collList) { writer.WriteLine("<list>{0}</list>", oList.Title); List oListy = collList.GetByTitle(oList.Title); CamlQuery camlQuery = new CamlQuery(); camlQuery.ViewXml = "<View><RowLimit>100</RowLimit></View>"; ListItemCollection collListItem = oListy.GetItems(camlQuery); ctx.Load(collListItem, items => items.IncludeWithDefaultProperties( item => item.DisplayName, item => item.HasUniqueRoleAssignments )); ctx.ExecuteQuery(); foreach (ListItem oListItem in collListItem) { FunnelbackXmlRecord oFXR = new FunnelbackXmlRecord(); oFXR.myfbx = fbx; oFXR.li = oListItem; oFXR.FunnelbackWriteXml(); FunnelbackItem oFI = new FunnelbackItem(oListItem); oFI.config = new FunnelbackConfig("funnelback.cfg"); XmlSerializer ser = new XmlSerializer(typeof(FunnelbackItem)); XmlWriter tx = XmlWriter.Create(@"C:\Users\rpfmorg\output\testoutput.xml"); ser.Serialize(tx, oFI); tx.Close(); } } writer.WriteLine(@"</site>"); } writer.WriteLine(@"</sharepoint>"); } } } }