How can we help you today?

Go ahead and ask us anything.

See the KanBo newest version.

KanBo installation on Office 365 and Azure

Last modified:

Azure databases groups KanBo o365 Office365 SharePoint

Purpose

Installing KanBo as Office 365 Groups Extension lets you integrate KanBo deeper with Microsoft Teams (Groups), Outlook (Groups) and Yammer (Groups). KanBo will use the same Documents as the Group and vice versa and KanBo will inherit the User Management from the Office Group the KanBo Board is attached to.

Prerequisites

  1. KanBo installation package and KanBo.ConsoleJobHostRunner package
  2. Microsoft 365 Business Basic environment (or a higher version) and administrator access to it.
  3. Administrator access to the Azure portal.
  4. One SQL Database
  5. Having a custom domain and SSL certificate for your KanBo Web App.

(Important information - KanBo database will be created automatically and charged on Azure during the final steps of the installation process, however, you can change KanBo Content database pricing tier to recommended version for a certain number of KanBo users. See the details about recommended pricing tiers for databases in Configuring KanBo Content Database on Azure part of the installation.


Creating the hosting site

Creating a Web App

To create a Web App, go to https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Web%2Fsites.

Click on the "Create" button.






Please follow these steps:

  • Choose your Subscription
  • Choose Your Resource Group (we recommend creating a new one named "Kanbo").
  • Provide the name URL of your site, in our case, it will be "kanboinstallation". Leave the publish on "Code".
  • Choose the closest region
  • Choose Your Windows Plan and resize it to at least B1.

After that is done, press "Review + create" and create the Web App.

Configuring a Custom Domain and SSL certificate for Web App 

For this integration, you must have a custom domain attached to your KanBo. It's not possible to run it on default *.azurewebsites.net address.

To attach a custom domain:
Map an existing custom DNS name to Azure Web App
Bind an existing custom SSL certificate to Azure Web Apps

Follow the Microsoft Technet manuals above to set a custom domain and a SSL certificate to the Web App.


Configuring the new Web App

After the page has been created, we need to change some settings. Go back to the "App Services" page and search for your application. Click on your page to navigate to its options.





After the page has loaded, scroll the menu down and click on the "Configuration" and then General Settings. You will see the configuration screen. Make sure the Web Sockets option is on and the platform is set to 64-bit. Save your changes.


Creating an SQL database

Enter link https://portal.azure.com/#blade/HubsExtension/BrowseResource/resourceType/Microsoft.Sql%2Fservers%2Fdatabases to create an SQL Database.

Click on Create and follow these steps.

Choose the same Subscription and the Resource Group as Your KanBo App Service.

Choose the name for the database

Choose the Database server (we recommend creating a new one called "KanBo")

For compute and storage, choose basic. You can scale it up later (information about it can be found at the bottom of the page).



Configuring the DB connectivity

Use the Azure portal to obtain the connection string necessary for your Web App to connect with Azure SQL Database:

Click on SQL Databases icon and then, search for your database.



Click on your database and press the copy icon near "Show database connection strings".


Go to the web.config file where we have previously entered the ClientId and ClientSecret. Search for <connectionstrings> section.

Paste the connection string there in the place of an old string. Please modify added connection string - add your user ID and password (use server admin's credentials).


Save the changes.

One more important thing, put "MultipleActiveResultSets=True" at the end of each connection string.


Uploading the KanBo installation package


Navigate to your Azure website KUDU service (add .scm just before azurewebsites.net e.g https://kanbo-online-kanbo.scm.azurewebsites.net, then select Debug console -> PowerShell).

Then enter site folder -> wwwroot.

Pack all your files into a .zip file (but please don't add the folder!)

Now drag and drop your .zip archive into right upper part of KUDU service to unzip the contents of the .zip archive.




Ask the KanBo support for these files - [email protected].

Configure Microsoft Graph connectivity


Go to Azure Active Directory by going to https://aad.portal.azure.com, Azure Active Directory and look for App Registrations.

Click on +New registration.

Create a name and paste the redirect URL.

Add your URL to this address: https://YOUR KANBO ADDRESS/auth/aad/return


Click on register to save the changes.

When app is registered, go to API Permissions.

Select +Add a permission and select Microsoft Graph.

    Give the following permissions under MS Graph.

    Application permissions:

    • Calendars.ReadWrite
    • Directory.Read.All
    • Directory.ReadWrite.All
    • Files.Read.All
    • Files.ReadWrite.All
    • Group.Read.All
    • Group.ReadWrite.All
    • Mail.Send
    • Mail.ReadWrite
    • Sites.Read.All
    • User.Invite.All
    • User.Read.All


    Delegated Permissions:

    • Calendars.Read
    • email
    • Directory.Read.All
    • Files.ReadWrite.All
    • Group.ReadWrite.All
    • User.Read
    • User.Read.All
    • Sites.Read.All



    Now, when all permissions are selected, click on Grant Permissions.

      Create a pair of self-signed certificates using this manual.





      Go to Certificates and Secrets section in App registrations to register a certificate.



      Click on Upload public key and select your .cer certificate. Now click Save.

        Your certificate should be now visible. 


        Go back to Overview. Get Application ID and Directory (Tenant) ID and save it for later as this would be used in the KanBo configuration.




        Upload the certificate to KanBo

        1. Open Azure portal. Make sure your Web App is at least on the Basic plan.


        2. Go to TLS/SSL Bindings and go to Private Key Certificates (.pfx) Select Upload certificate.

        3.  Provide the password and Upload it.

        4.  Copy the certificate's thumbprint.

         

        5. Open Configuration and add a new Application Setting.

        6. The setting's name should be WEBSITE_LOAD_CERTIFICATES. The value should be the Thumbprint of certificate. Save it.

        7. in the Bindings Settings activate "HTTPS only"



        Adjust KanBo configuration

        Enter Kudu services -> Debug Console -> Powershell -> site -> wwwroot and start editing the web.config.

        Make sure that you have the following entries in <plugins> section. Change values in brackets to values from the installation process.

               <load-packages/>
              <package name="kanbo"/>
              <branding.filesystem/>
              <set-language-for-new-users lang="{language: de-AT, de-DE, en-AU, en-CA, en-GB, en-US, es-ES of pl-PL }"/>
              <statistics/>
              <server-url>https://{Your KanBo address}</server-url>
              <package name="auth-aad"
                client-id="{client ID from Azure Active Directory app registration}"
                tenant="{tenant ID from Azure Active Directory app registration}"
                thumbprint="{KanBo Certificate Thumbprint}"
                admin-upn="{email address of the O365 Administrator}"/>
              <package name="graph"/>
              <job.alarm-reminder name="alarm-reminder" repeat="10s"/>
              <template-files path="{Path to the templates folder}"/>
              <package name="webjobs" thumbprint="{KanBo Certificate Thumbprint}"/>
              <doc-actions default="office">
                <type value="office"/>
                <type value="online"/>
                <type value="file"/>
                <type value="download"/>
              </doc-actions>

        Creating the databases

        Go to https:{your kanbo address}/setup and you will be directed to the KanBo Setup page. Choose the Start simple setup option.

        After clicking on the Automatic Setup option, installation of KanBo Setup will proceed. Wait a couple of seconds until it is finished.

        Obtaining the license key

        To obtain a KanBo License ID, click on "Show Advanced Setup", then click on the "Refresh" button near the License ID fieldset. Please send the KanBo ID to [email protected], so a license key can be generated and send to you.




        After obtaining the key you have to paste it into the web.config file. To achieve that, please follow these steps:

        Go to KUDU service (https://YOURNAME.scm.azurewebsites.net). Please navigate to: Debug console -> Powershell -> site ->wwwroot and open the web.config file.





        Enter the web.config and paste the license key in the following place.



        After updating the pasting the KanBoLicenseKey save the web.config.


        Your KanBo has been successfully installed!

        Creating Sync Jobs

        For KanBo to sync Azure Active Directory profiles and o365 groups two webjobs need to be created. Along with the web.zip file, You will be provided with a KanBo.ConsoleJobHostRunner.zip file. It contains its own config named KanBo.ConsoleJobHostRunner.exe.config, which we will need to edit. There are two sections to modify:

        <connectionstrings>
            <add name="KanBoContentConnectionString" connectionstring="{DATABASE-CONNECTION-STRING}" 
            providername="System.Data.SqlClient"/>
          </connectionstrings>

        Here, You will need to paste the same connection string that You use in Your KanBo web.config.

        <load-packages>
        
              <package name="auth-aad" client-id="{CLIENT-ID-FROM-AAD}" tenant="{TENANT-ID-FROM-AAD}" 
            thumbprint="{CERTIFICATE-THUMBPRINT}" />
            <package name="webjob.group-sync" thumbprint="{CERTIFICATE-THUMBPRINT}"
            kanbo-url="https://{YOUR-KANBO-URL}" />
        

        The values here should be the same one that You used in the web.config of Your KanBo.

        After saving the configured file, follow these instructions on creating a scheduled WebJob: https://docs.microsoft.com/en-...

        For the o365 Group Sync jobs, choose the name of "GroupSync" and a CRON expression of "0 */15 * * * *"


        To create a package for the AAD Profile Sync job, simply replace

        <package name="webjob.group-sync"......

        With

        <package name-"webjob.profile-sync".....
        

        And save the config.

        Follow the same instructions You did for creating the o365 Group Sync job, but change the name to "ProfileSync".

        Use it!

        1) Create boards. During board creation, you can choose whether you would like to create new Office 365 Group or use the existing one under the board.

        2) Group memberships will be synchronized.

        3) Also, user's information will be taken from AAD and transferred into KanBo Profile.



        Configure email notifications

        Follow http://community.kanboapp.com/topics/76-setting-up-kanbo-email-notifications-on-azure/ to configure email notifications.



        Configure KanBo Search

        Follow https://community.kanboapp.com... to configure Search for KanBo (Elastic Search).

        Configuring KanBo Content Database on Azure

        As soon as your KanBo is installed, please adjust the sizing of Your database to be suitable

        A change might be necessary for a good performance of the KanBo Content Database which has been created during the Setup installation.

        You can see dependencies on the table below:



        Number of users on your KanBo instanceRecommended Pricing Tier for KanBo Content Database
        20+ usersStandard 10 DTUs 250GB
        50+ usersStandard 20 DTUs 250GB
        100+ usersStandard 50 DTUs 250GB








        Is this article helpful for you?