Load test SharePoint Online

I'm putting in a critical solution for a company using SharePoint Online. It's pretty much out of the box, but the customer insists that a load-testing exercise takes place to ensure that when they go live with it, it will cope with their number of users
without falling over or slowing down too much. Test cases are fairly simple: browse to the site, search, open a document, maybe occasionally edit a document or upload a new one. Usage will be fairly intense from their point of view but nothing that I can see
SPO having any trouble with whatsoever. However I have to prove it.
Has anyone found a load-testing application that will work with SharePoint Online? The test platform must run on local machines to simulate requests coming from the company, so cloud-based testing is out. I have been trying with VS2013 Ultimate, and have
managed to get it to authenticate just one time, but mostly it refuses.
An automated test tool would also be useful for future regression testing.

The problem with "load testing" SPO is that you'll be throttled fairly quickly with a high load (similar to being throttled when attempting to migrate GBs of content to SPO). Since you cannot have any impact on the environment anyways, you would
have to contact Microsoft if you encountered a performance issue, but load testing isn't going to be an accurate gauge of that.
Trevor Seward
Follow or contact me at...
This post is my own opinion and does not necessarily reflect the opinion or view of Microsoft, its employees, or other MVPs.

Similar Messages

  • Tools for load testing SharePoint 2007

    Please advice a tools, which i can use for load testing a SharePoint 2007. We had one issue with performance and want now to detect a reason. So i need to simulate a load testing with 500-600 users for one SharePoint page.
    I have found some information, that i can use a Visual Studio Test Edition, but my level of MSDN subscriber has just a Visual Studio. May be there is another free tools for this...

    Hi Evgeny,
    SharePoint test data load tool (WSSDW.exe) can be used for your scenario, this article should help you to start with-
    Tools for performance and capacity planning (Office SharePoint Server)
    http://technet.microsoft.com/en-us/library/cc262198(v=office.12).aspx
    To download the tool - http://sptdatapop.codeplex.com/
    Bill Baer has good blog on this -
    http://blogs.technet.com/b/wbaer/archive/2007/08/02/stress-testing-microsoft-office-sharepoint-server-2007-windows-sharepoint-services-3-0.aspx
    http://blogs.msdn.com/b/sanjaynarang/archive/2009/04/18/sharepoint-performance-stress-load-testing.aspx
    http://blogs.msdn.com/b/edglas/archive/2007/02/17/sharepoint-load-tests.aspx
    another tool to consider - Web Capacity Analysis Tool
    http://technet.microsoft.com/en-us/magazine/2008.04.utilityspotlight.aspx?pr=blog
    http://support.microsoft.com/kb/231282/en-us
    http://blogs.iis.net/thomad/archive/2010/05/11/using-the-wcat-fiddler-extension-for-web-server-performance-tests.aspx
    Hope this helps!
    Ram - SharePoint Architect
    Blog - SharePointDeveloper.in
    Please vote or mark your question answered, if my reply helps you

  • Performance testing for SharePoint online site

    Hi,
    Is there any tool available to perform performance and load testing for SharePoint online site. 
    Thanks
    Senthu

    Hi Senthu, have you seen this link? In it there's a link to a selection of programs you can use. Be sure to read Trevor's caveat:
    https://social.msdn.microsoft.com/Forums/sharepoint/en-US/aeffff92-a3e1-42b0-a4b8-3779858108ee/load-test-sharepoint-online?forum=sharepointadmin
    cameron rautmann

  • Linked Excel files on Sharepoint Online

    Has anyone found a work around to having linked excel files on SharePoint Online?
    Right now in all my tests, SharePoint Online disables the links in my excel file to cells in another excel file and I cannot find anyway to change the links.
    This is a pretty basic function that is used extensively in excel so I'm a little surprised that this is not available in SP Online.

    Hi,
    According to your description, the links to other Excel files in the current Excel file not working if in a SharePoint Online environment.
    In SharePoint, Excel files is handled by Excel Services. In SharePoint 2013, the “unsupported features continue to behave as they do in Office SharePoint Server 2007
    for Excel Services”:
    https://msdn.microsoft.com/en-us/library/office/ff595319(v=office.15).aspx
    Among the “Unsupported Features in Excel Services in SharePoint 2007”, “External references (workbooks that contain links to other workbooks)” is there:
    https://msdn.microsoft.com/en-us/library/ms496823(office.12).aspx
    As a workaround, I would suggest that you can transfer the data from Excel file to SharePoint list/library, it would be easier to deal with this scenario in SharePoint
    with the content management related feature provided.
    You can also submit a feedback to the Office Developer Platform with your expectation about the future version of SharePoint:
    http://officespdev.uservoice.com/
    Thanks                      
    Patrick Liang
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support,
    contact [email protected]
    Patrick Liang
    TechNet Community Support

  • How to do a load testing in Sharepoint 2010 site

    Hi,
    I have never done a performance or load testing on SharePoint 2010 site.
    I have a site which has only one custom code written for consolidating documents. I want to check the performance of the site.
    How do I go about this ? I want to know how many users can login at a time and view the site without any delay and
     check how many people can consolidate documents at a time .
    Thanks in Advance.
    Pallavi

    There's several ways to do it, the most common is to use the SharePoint load testing kit detailed in the second link below. For a more general guide try the first:
    http://technet.microsoft.com/en-us/library/ff758659.aspx#createtests
    http://technet.microsoft.com/en-us/library/ff823736(v=office.14).aspx

  • SharePoint Online : Unable to load type Microsoft.SharePoint.Upgrade.SPUpgradeCompatibilityException required for deserialization.

    From today's morning , We are having Issue on Our Online SharePoint Site.
    Each WebPart is not loading and displaying this Line
    Unable to load type Microsoft.SharePoint.Upgrade.SPUpgradeCompatibilityException required for deserialization.
    Please write in quick response to fix it at
    [email protected]

    Hi,
    According to your post, my understanding is that SharePoint Online Site was unable to load web part and got the “Microsoft.SharePoint.Upgrade.SPUpgradeCompatibilityException” error.
    Per my knowledge, the SPUpgradeCompatibilityException occurs during upgrade when the front-end Web server attempts to connect to an incompatible database.
    Please check whether the database is compatible.
    Regarding SharePoint Online, for quick and accurate answers to your questions, it is recommended that you initial a new thread in Office 365 forum.
    Office 365 forum
    http://community.office365.com/en-us/forums/default.aspx
    Best Regards,
    Linda Li
    Linda Li
    TechNet Community Support

  • Remove test run from Load Test Manager in Visual Studio Online Load Testing

    I have been using the Visual Studio Online Azure load testing for a while now, and I have a number of test runs that I would like to remove.  I am not referring to my local Load Test Results Store (on-premise SQL DB), as I can remove test runs no problem.
     I mean, how to remove them from "the cloud" so we can no longer re-download the test results.  

    Hi David,
    As far as I know, it's not supported for Visual Studio Online to run load tests for solutions hosted on GitHub. You can submit a user voice
    here.
    Best regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Application Insights for load testing in VS 2013, Azure Preview or Visual Studio Online?

    I'm trying to get some clarification on which version of application insights to use to get performance counters from application insights for my azure cloud service for load and performance testing purposes. 
    So far, its not be clear what the differences between the two versions are, after deploying first the Azure Preview version, I attempted to set up performance counters using application insights but was shown an error because my visual studio online account
    did not have an associated application insights instance. 
    Is it possible to get performance counters using AI for load testing using the Azure Preview version? If so, how? If not, is that planned as a new feature or will performance counters for VSO cloud based load testing have to be used when support for the
    VSO version of application insights is eventually dropped? 
    Thanks, 
    Luke

    Hi Alex, thanks for your response. I do have an Azure account, and have tinkered with AI in Azure Preview. My question was more about what the differences between the VSO and azure preview versions of AI are. 
    When I initially deployed AI to the azure portal and tried to run load tests from visual studio (cloud load tests, that is) I could not. Its possible I had made a mistake in configuring the azure version of application insights though. Strangely enough,
    I actually do still see application insights data in the azure preview portal after I removed the newer AI version and installed AI 1.3. 
    To clarify my question, is it or will it be possible to run cloud based load tests (using visual studio online or another integrated service) against a azure web role deployed with application insights for azure and get performance counters of the system
    under test via AI? To do that, will I also have an application insights application in the visual studio online account (similar to how I do now with the VSO version of AI), because that seems to be a requirement to load performance counters from application
    insights within visual studio. 
    Thanks and sorry if I misunderstood your answer. 

  • Error importing result file from Visual Studio Online load test - Incorrect Syntax near ')'

    We are seeing the exact same issue as reported in:
    https://social.msdn.microsoft.com/Forums/vstudio/en-US/4a338992-1a46-47ae-9f13-10a53a6264b5/error-downloading-load-test-report-from-visual-studio-service-load-test-incorrect-syntax-near?forum=TFService#cb43383b-c60d-4dcc-a353-352ac6908b35
    When clicking on the "Download report" after running a load test using Visual Studio Online an error occurs.  The download completes, but the import fails at 15% with the following:
    This is happening for 2 different users on 2 different systems.  
    Any assistance in resolving this would be greatly appreciated!
    Let me know if additional information is needed.
    Thanks!

    Hi,
    We are researching your issue. Please clarify my question with detailed information:
    1. Do you get the error in your first post when you click ‘Download report’ after you run load test from
    Visual Studio 2013 on
    team foundation service?
    2 You said that ‘I am trying to import the test results into a Visual Studio 2012 (Update 3) on-prem instance’, what and where is
    your load test result repository? A SQL Server database or the default database:LoadTest2010 in SQL Express on the same machine with Visual Studio 2013?
    3 Whether you specify the load test result repository under Load Test->Manage Test Controller?
    4. What error do you get? Please provide us more detailed information about the error message or share us with a screenshot.
    5 Whether you can run the load test successfully locally and get the load test result with the same load test result database?
    6 You said that your co-worker can work fine. Please check whether your account has enough permissions for load test result database and download load test result from TFS to load test result database based on the account
    permission of your co-work.
    Thanks,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Issue in adding new items to a O365 SharePoint Online List having lookup columns (Client Object Model)

    I have two Lists i.e. Publisher and Products in my SharePoint Online site. They are having the following structures:
    1. Publisher:
    Publisher (Single line of txt)
         A1
         A2
         A3
         A4
         A5
         A6
    2. Products:
    Publisher (lookup to the above column)       
    ProductName (Single line of txt)
         A1                                                                   Apple
         A2                                                                   Samsung
         A3                                                                   Nokia
    And I have an excel file named Products.xlsx in my local machine which has the following data:
    Publisher        ProductName
         A1                   Apple
         A2                   Samsung
         A3                   Nokia
         A4                   Motorola
         A5                   LG
         A6                   HTC
    Now I have written the below client-side (CSOM) code to fetch the data from the Excel and update the corresponding fields in the Products table:
    using System;
    using System.Collections.Generic;
    using System.Collections.ObjectModel;
    using System.Web;
    using System.IO;
    using System.Data;
    using System.Data.OleDb;
    using System.Data.SqlClient;
    using System.Linq;
    using System.Text;
    using System.Xml.Linq;
    using Microsoft.SharePoint;
    using Microsoft.SharePoint.Client;
    using File =
    Microsoft.SharePoint.Client.File;
    using System.Security;
    namespace ExcelToSP
        public class
    ExcelToSP
            //Main function to get the command line values and invoke the getSPList function to pull SP List data
            public
    static void Main(string[] args)
                //Instantiate Class object
                ExcelToSP p
    = new ExcelToSP();
                try
                    p.LoadExcelData();
    //Exit with Sucess code
    Environment.Exit(0);
                catch
    (Exception ex)
    //Invoke writeErrorLog function to log the exception details
    //p.WriteErrorLog(ex);
            public
    void LoadExcelData()
                try
                string fileName
    = @"E:\Products.xlsx";
                string fileExtension
    = Path.GetExtension(fileName).ToUpper();
                string connectionString
    = "";
                 if
    (fileExtension == ".XLS")
                    connectionString
    = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='"
    + fileName + "'; Extended Properties='Excel 8.0;HDR=YES;'";
                else
    if (fileExtension ==
    ".XLSX")
                    connectionString
    = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='"
    + fileName + "';Extended Properties='Excel 12.0 Xml;HDR=YES;'";
                if
    (!(string.IsNullOrEmpty(connectionString)))
    string[] sheetNames =
    GetExcelSheetNames(connectionString);
    if ((sheetNames !=
    null) &&
    (sheetNames.Length
    > 0))
    DataTable dt = null;
    OleDbConnection con =
    new OleDbConnection(connectionString);
    OleDbDataAdapter da =
    new OleDbDataAdapter("SELECT * FROM ["
    + sheetNames[0]
    + "]", con);
                        dt
    = new DataTable();
                        da.Fill(dt);
    InsertIntoList(dt,"Products");
                catch
    (Exception ex)
    throw ex;
            private
    string[] GetExcelSheetNames(string strConnection)
                var connectionString
    = strConnection;
                String[] excelSheets;
                using
    (var connection =
    new OleDbConnection(connectionString))
                    connection.Open();
    var dt = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
    null);
    if (dt ==
    null)
    return null;
                    excelSheets
    = new String[dt.Rows.Count];
    int i = 0;
    // Add the sheet name to the string array.
    foreach (DataRow row
    in dt.Rows)
                        excelSheets[i]
    = row["TABLE_NAME"].ToString();
                        i++;
                return excelSheets;
            private
    void InsertIntoList(DataTable listTable,
    string ListName)
                try
    string username = "[email protected]";
    string pwd = "contoso@1234";//this.Dts.Variables["password"].Value.ToString();
    ClientContext clientContext =
    new ClientContext("https://contoso.sharepoint.com/teams/myPOC/");
    SecureString password =
    new SecureString();
    char[] decryptpwd = pwd.ToCharArray();
    foreach (char c
    in decryptpwd)
                        password.AppendChar(c);
                    clientContext.Credentials
    = new SharePointOnlineCredentials(username, password);
                    clientContext.ExecuteQuery();
    //Setting SiteURL Client context
    Web web = clientContext.Web;//
                    clientContext.Load(web);
                    clientContext.ExecuteQuery();
    List lstProductFamily = web.Lists.GetByTitle("Products");
    for (int iRow
    = 0; iRow < listTable.Rows.Count; iRow++)
    ListItemCreationInformation itemCreateInfo =
    new ListItemCreationInformation();
    ListItem newItem = lstProductFamily.AddItem(itemCreateInfo);
    //FieldLookupValue flv = newItem["Publisher"] as FieldLookupValue ;
    //string lkup = flv.LookupValue;
    //int valueid = 0;
    //valueid = flv.LookupId;
                        newItem["Publisher"]
    = Convert.ToString(listTable.Rows[iRow][0]);
                        newItem["ProductName"]
    = Convert.ToString(listTable.Rows[iRow][1]);
                        newItem.Update();
                        clientContext.ExecuteQuery();
                catch
    (Exception ex)
    throw ex;
    But I'm getting the following error on running the above code "Invalid data has been used to update the list item. The field you are trying to update may be read only." 
    Can anybody please help me out?

    Hi,
    According to your description, my understanding is that you want to update data to look up field.
    I have a test about updating look up field using Client Object Model in my environment. lookup field will accept an array to set the field value.
    Here is the code snippet:
    Microsoft.SharePoint.Client.ClientContext ctx = new ClientContext("http://sp2013sps/sites/test/");
    if (ctx != null)
    List list = ctx.Web.Lists.GetByTitle("List3");
    ListItem itemToUpdate = list.GetItemById(1);
    ctx.Load(itemToUpdate);
    ctx.ExecuteQuery();
    FieldLookupValue newLookUpField = new FieldLookupValue();
    newLookUpField.LookupId = 3;
    FieldLookupValue newLookUpField1 = new FieldLookupValue();
    newLookUpField1.LookupId = 4;
    FieldLookupValue[] newarr = { newLookUpField, newLookUpField1 };
    itemToUpdate["lookup"] = newarr;
    itemToUpdate.Update();
    ctx.Load(itemToUpdate);
    ctx.ExecuteQuery();
    Best regards
    Patrick Liang
    TechNet Community Support

  • Error while Connecting Office 365/SharePoint online

    Hi,
    I'm trying to connect Office 365 from my local and when the execute query runs, it returns an error "For security reasons DTD is prohibited in this XML document. To enable DTD processing set the DtdProcessing property on XmlReaderSettings to
    Parse and pass the settings into XmlReader.Create method." Can anyone pls help ?
                var securePassword = new SecureString();
                foreach (char c in password)
                    securePassword.AppendChar(c);
                var onlineCredentials = new SharePointOnlineCredentials(login, securePassword);
                using (ClientContext clientContext = new ClientContext(targetSite))
                    clientContext.Credentials = onlineCredentials;
                    Web web = clientContext.Web;
                    clientContext.Load(web,
                    webSite => webSite.Title);
                    clientContext.ExecuteQuery();
                    Console.WriteLine(web.Title);
                    Console.Read();
                    return clientContext;
    Thanks
    Rajdeep
    rajdeep

    Hi,
    According to your post, my understanding is that you had an issue to connect to the SharePoint online.
    I had tested with your code, and it worked well as below.
    Did your project contain other code? Such as parse the XML file?
    You can create a new clean project to check with it works.
    More reference:
    http://stackoverflow.com/questions/215854/prevent-dtd-download-when-parsing-xml
    http://stackoverflow.com/questions/13854068/dtd-prohibited-in-xml-document-exception
    Thanks & Regards,
    Jason
    Jason Guo
    TechNet Community Support

  • SharePoint Online External Users

    So I was taking SharePoint online for a test drive a few days ago. While I was looking at how users are given permissions to list and libraries I realize something that might
    make or break SP Online for me. The out-of-the-box SharePoint Online implementation gives you one private site collection and one public website. Let just focus on the public website in this example. Now, by default the public website is at least viewable
    to everyone. But what if I created a survey on my public website and only wanted members of the site to have access to it. I know that you can "Share Site" with external users. But can you allow visitors to your site the ability to create their own account,
    and in turn fill out the survey? And of course without purchasing a license for every person filling the survey.
    Jeffrey T McFarland

    I'm not sure about making content on your public site private, but you can make content on your private sites public.  You basically turn on external users for the entire Office 365 SharePoint Online account.  Then you can optionally disable it
    for certain site collections.  That way, you can control who has access to what.  This article might be helpful in explaining how external users works in SharePoint Online: 
    http://office.microsoft.com/en-us/sharepoint-online-enterprise-help/share-a-site-with-external-users-HA102476183.aspx

  • SharePoint Online 2013 Workflows for one List stopped working after 07/08/2014

    Our client host application in Office 365 SharePoint Online 2013, and we just found that all workflows for one list stopped working after 7, Aug 2014. It kept displaying pop-up message "Something went wrong. To try again, reload the page and then start
    the workflow." when manually start a workflow for this List.
    Tested workflow for other list, there's no problem.
    Could anyone can help on this issue?

    Our client host application in Office 365 SharePoint Online 2013, and we just found that all workflows for one list stopped working after 7, Aug 2014. It kept displaying pop-up message "Something went wrong. To try again, reload the page and then start
    the workflow." when manually start a workflow for this List.
    Tested workflow for other list, there's no problem.
    Could anyone can help on this issue?

  • Not able to set security group without mail enabled as site collection admin using powershell in sharepoint online site - office 365

    not able to set security group without mail enabled as site collection admin using powershell in sharepoint online site - office 365?
    Any idea?

    after few days test in my lab, I can see that only email enabled group can be added as site collection admin using POWERSHELL.
    hope this helps who stuck like me!! :-)

  • ADFS SSO and SharePoint 2013 on-premise Hybrid outbound search results from SharePoint Online - does it work?

    Hi, 
    I want to setup an outpund hybrid search for SharePoint 2013 on-premise to SharePoint Online.
    But I'm not shure if this works with ADFS SSO.
    Has somebody experience with this setup?
    Here's my guide which I'm going to use for this installation:
    Introduction
    In this post I'll show you how to get search results from your SharePoint Online in your SharePoint 2013 on-premise search center.
    Requirements
    User synchronisation ActiveDirectory to Office 365 with DirSync
    DirSync password sync or ADFS SSO
    SharePoint Online
    SharePoint 2013 on-premise
    Enterprise Search service
    SharePoint Online Management Shell
    Instructions
    All configuration will be done either in the Search Administration of the Central Administration or in the PowerShell console of your on-premise SharePoint 2013 server.
    Set up Sever to Server Trust
    Export certificates
    To create a server to server trust we need two certificates.
    [certificate name].pfx: In order to replace the STS certificate, the certificate is needed in Personal Information Exchange (PFX) format including the private key.
    [certificate name].cer: In order to set up a trust with Office 365 and Windows Azure ACS, the certificate is needed in CER Base64 format.
    First launch the Internet Information Services (IIS) Manager
    Select your SharePoint web server and double-click Server Certificates
    In the Actions pane, click Create Self-Signed Certificate
    Enter a name for the certificate and save it with OK
    To export the new certificate in the Pfx format select it and click Export in the Actions pane
    Fill the fields and click OK Export to: C:\[certificate
    name].pfx Password: [password]
    Also we need to export the certificate in the CER Base64 format. For that purpose make a right-click on the certificate select it and click on View...
    Click the Details tab and then click Copy to File
    On the Welcome to the Certificate Export Wizard page, click Next
    On the Export Private Key page, click Next
    On the Export File Format page, click Base-64 encoded X.509 (.CER), and then click Next.
    As file name enter C:\[certificate
    name].cer and then click Next
    Finish the export
    Import the new STS (SharePoint Token Service) certificate
    Let's update the certificate on the STS. Configure and run the PowerShell script below on your SharePoint server.
    if(-not (Get-PSSnapin "Microsoft.SharePoint.PowerShell" -ErrorAction SilentlyContinue)){Add-PSSnapin "Microsoft.SharePoint.PowerShell"}
    # set the cerficates paths and password
    $PfxCertPath = "c:\[certificate name].pfx"
    $PfxCertPassword = "[password]"
    $X64CertPath = "c:\[certificate name].cer"
    # get the encrypted pfx certificate object
    $PfxCert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 $PfxCertPath, $PfxCertPassword, 20
    # import it
    Set-SPSecurityTokenServiceConfig -ImportSigningCertificate $PfxCert
    Type Yes when prompted with the following message.
    You are about to change the signing certificate for the Security Token Service. Changing the certificate to an invalid, inaccessible or non-existent certificate will cause your SharePoint installation to stop functioning. Refer
    to the following article for instructions on how to change this certificate: http://go.microsoft.com/fwlink/?LinkID=178475. Are you
    sure, you want to continue?
    Restart IIS so STS picks up the new certificate.
    & iisreset
    & net stop SPTimerV4
    & net start SPTimerV4
    Now validate the certificate replacement by running several PowerShell commands and compare their outputs.
    # set the cerficates paths and password
    $PfxCertPath = "c:\[certificate name].pfx"
    $PfxCertPassword = "[password]"
    # get the encrypted pfx certificate object
    New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 $PfxCertPath, $PfxCertPassword, 20
    # compare the output above with this output
    (Get-SPSecurityTokenServiceConfig).LocalLoginProvider.SigningCertificate
    [/code]
    ## Establish the server to server trust
    [code lang="ps"]
    if(-not (Get-PSSnapin "Microsoft.SharePoint.PowerShell" -ErrorAction SilentlyContinue)){Add-PSSnapin "Microsoft.SharePoint.PowerShell"}
    Import-Module MSOnline
    Import-Module MSOnlineExtended
    # set the cerficates paths and password
    $PfxCertPath = "c:\[certificate name].pfx"
    $PfxCertPassword = "[password]"
    $X64CertPath = "c:\[certificate name].cer"
    # set the onpremise domain that you added to Office 365
    $SPCN = "sharepoint.domain.com"
    # your onpremise SharePoint site url
    $SPSite="http://sharepoint"
    # don't change this value
    $SPOAppID="00000003-0000-0ff1-ce00-000000000000"
    # get the encrypted pfx certificate object
    $PfxCert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 $PfxCertPath, $PfxCertPassword, 20
    # get the raw data
    $PfxCertBin = $PfxCert.GetRawCertData()
    # create a new certificate object
    $X64Cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2
    # import the base 64 encoded certificate
    $X64Cert.Import($X64CertPath)
    # get the raw data
    $X64CertBin = $X64Cert.GetRawCertData()
    # save base 64 string in variable
    $CredValue = [System.Convert]::ToBase64String($X64CertBin)
    # connect to office 3656
    Connect-MsolService
    # register the on-premise STS as service principal in Office 365
    # add a new service principal
    New-MsolServicePrincipalCredential -AppPrincipalId $SPOAppID -Type asymmetric -Usage Verify -Value $CredValue
    $MsolServicePrincipal = Get-MsolServicePrincipal -AppPrincipalId $SPOAppID
    $SPServicePrincipalNames = $MsolServicePrincipal.ServicePrincipalNames
    $SPServicePrincipalNames.Add("$SPOAppID/$SPCN")
    Set-MsolServicePrincipal -AppPrincipalId $SPOAppID -ServicePrincipalNames $SPServicePrincipalNames
    # get the online name identifier
    $MsolCompanyInformationID = (Get-MsolCompanyInformation).ObjectID
    $MsolServicePrincipalID = (Get-MsolServicePrincipal -ServicePrincipalName $SPOAppID).ObjectID
    $MsolNameIdentifier = "$MsolServicePrincipalID@$MsolCompanyInformationID"
    # establish the trust from on-premise with ACS (Azure Control Service)
    # add a new authenticatio realm
    $SPSite = Get-SPSite $SPSite
    $SPAppPrincipal = Register-SPAppPrincipal -site $SPSite.rootweb -nameIdentifier $MsolNameIdentifier -displayName "SharePoint Online"
    Set-SPAuthenticationRealm -realm $MsolServicePrincipalID
    # register the ACS application proxy and token issuer
    New-SPAzureAccessControlServiceApplicationProxy -Name "ACS" -MetadataServiceEndpointUri "https://accounts.accesscontrol.windows.net/metadata/json/1/" -DefaultProxyGroup
    New-SPTrustedSecurityTokenIssuer -MetadataEndpoint "https://accounts.accesscontrol.windows.net/metadata/json/1/" -IsTrustBroker -Name "ACS"
    Add a new result source
    To get search results from SharePoint Online we have to add a new result source. Run the following script in a PowerShell ISE session on your SharePoint 2013 on-premise server. Don't forget to update the settings region
    if(-not (Get-PSSnapin "Microsoft.SharePoint.PowerShell" -ErrorAction SilentlyContinue)){Add-PSSnapin "Microsoft.SharePoint.PowerShell"}
    # region settings
    $RemoteSharePointUrl = "http://[example].sharepoint.com"
    $ResultSourceName = "SharePoint Online"
    $QueryTransform = "{searchTerms}"
    $Provier = "SharePoint-Remoteanbieter"
    # region settings end
    $SPEnterpriseSearchServiceApplication = Get-SPEnterpriseSearchServiceApplication
    $FederationManager = New-Object Microsoft.Office.Server.Search.Administration.Query.FederationManager($SPEnterpriseSearchServiceApplication)
    $SPEnterpriseSearchOwner = Get-SPEnterpriseSearchOwner -Level Ssa
    $ResultSource = $FederationManager.GetSourceByName($ResultSourceName, $SPEnterpriseSearchOwner)
    if(!$ResultSource){
    Write-Host "Result source does not exist. Creating..."
    $ResultSource = $FederationManager.CreateSource($SPEnterpriseSearchOwner)
    $ResultSource.Name = $ResultSourceName
    $ResultSource.ProviderId = $FederationManager.ListProviders()[$Provier].Id
    $ResultSource.ConnectionUrlTemplate = $RemoteSharePointUrl
    $ResultSource.CreateQueryTransform($QueryTransform)
    $ResultSource.Commit()
    Add a new query rule
    In the Search Administration click on Query Rules
    Select Local SharePoint as Result Source
    Click New Query Rule
    Enter a Rule name f.g. Search results from SharePoint Online
    Expand the Context section
    Under Query is performed on these sources click on Add Source
    Select your SharePoint Online result source
    In the Query Conditions section click on Remove Condition
    In the Actions section click on Add Result Block
    As title enter Results for "{subjectTerms}" from SharePoint Online
    In the Search this Source dropdown select your SharePoint Online result source
    Select 3 in the Items dropdown
    Expand the Settings section and select "More" link goes to the following URL
    In the box below enter this Url https://[example].sharepoint.com/search/pages/results.aspx?k={subjectTerms}
    Select This block is always shown above core results and click the OK button
    Save the new query rule

    Hi  Janik,
    According to your description, my understanding is that you want to display hybrid search results in SharePoint Server 2013.
    For achieving your demand, please have a look at the article:
    http://technet.microsoft.com/en-us/library/dn197173(v=office.15).aspx
    If you are using single sign-on (SSO) authentication, it is important to test hybrid Search functionality by using federated user accounts. Native Office 365 user accounts and Active Directory Domain Services
    (AD DS) accounts that are not federated are not recognized by both directory services. Therefore, they cannot authenticate using SSO, and cannot be granted permissions to resources in both deployments. For more information, see Accounts
    needed for hybrid configuration and testing.
    Best Regards,
    Eric
    Eric Tao
    TechNet Community Support

Maybe you are looking for

  • Search for records in a table on the basis of a function

    Hi, How is it possible to use a function as search criteria in a sql query ? For example, I have the following query : select a.job_name JOB_NAME, substr(a.job_name,instr(a.job_name,'.',-1)+1) as AUTNAME FROM autosys.job a where a.job_name like %PRD%

  • My macbook pro crashes after a few minutes of playing a game or using photoshop? i just got it fixed motherboard. do i have to do an update?

    my macbook pro crashes after a few minutes of playing a game or using photoshop? i just got it fixed motherboard. do i have to do an update?

  • NIDMM.vb and NISWITCH.vb wrapper warning

    I am writing an application in VB.net (VS2005 & MeasStudio 8.2.1) where I want to control a PXI-4065 DMM and a pair of PXI-2575 196 channel multiplexers to take various voltage and resistance measurements on a demand basis (table driven).  I've creat

  • Implementing Drag and Drop Functionality

    I'm implementing drag and drop a record from a table to another table. I already referred below: http://download.oracle.com/docs/cd/E15523_01/web.1111/b31973/af_dnd.htm#CIHDADFG But I have a question. In example 32-5, there is a source like following

  • Router Woes

    I currently am using a D-Link DI-524 that can no longer emit a Wireless Signal 3 yards or more. After some researching, I purchased a LinkSYS WRT54GL. Upon trying to install the new router (the linksys), all lights light up as it should, but nothing