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.JobHost 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


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.

Image 13173






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.

Image 13958

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.



Image 13175



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.


Image 13959

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 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 optimal sizing can be found at the end of the article).

Image 13177



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.

Image 13168



Click on your database, the click on "Show database connection strings".

Image 13169

Copy the ADO.NET connection string

Image 13962


Go to the appsettings.json file. There should be a "ConnectionStrings" array. 

Image 13960

Paste the connection string in the place of "FILL-ME", without dropping the quotation marks.

Modify the line by filling in the password and adding "MultipleActiveResultSets=True;" to the end of the connection string.
Save the changes.

Image 13963



Configure Microsoft Graph connectivity


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

Image 10095

Click on New registration.

Image 10096

Choose a name for Your App Registration. Select the Redirect URI as "Web" and write down a link that looks like this: https://YOUR KANBO ADDRESS/auth/aad/return

Image 13965


Click on register to save the changes.

After the App Registration is finished go to API Permissions.

Image 10098

Click on "Add a permision" and select Microsoft Graph.

Image 10099

    Image 10100

    There are two options for permissions, delegated and application. Here's a list of permissions that must be added from both of the options.

    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

    Image 13966



    Now, when all permissions are selected and added, click on "Grand admin consent for KanBo".

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

      Image 13967





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

      Image 10105



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

      Image 10103

        Your certificate should be now visible. 

        Image 10104


        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.

        Image 10106




        Upload the certificate to KanBo

        1. Go back to Your KanBo Azure Webapp ang go to TLS/SSL settings, then go to Private Key Certificates (.pfx) click on "Upload certificate".

        Image 10108

        2.  Provide the password and Upload it.

        Image 10109

        3.  Copy the certificate's thumbprint.

        Image 10110

         

        4. Open Configuration and add a new Application Setting.

        Image 10112

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

        Image 10111

        6. in the Bindings Settings activate "HTTPS only"



        Adjust KanBo configuration


        There are some areas that need filling out in the appsettings.json file.

           {
            "type": "set-language-for-new-users",
            "lang": "de-DE"
           },

        Here You are able to set the Default language for the new KanBo Users by changing the "lang" variable. Possible languages are:

        • de-DE - German
        • de-AT - Austrian German
        • en-US - United States English
        • en-GB - United Kingdom English
        • en-AU - Australian English
        • en-CA - Canadian English
        • es-ES - Spanish
        • pl-PL - Polish
           {
            "type": "server-url",
            "value": "FILL-ME"
           },

        The "value" variable should contain the full URL of Your KanBo (e.g.

        The" class="redactor-autoparser-object">https://mykanbo.azurewebsites.com/)

          {
            "type": "package",
            "name": "auth-aad",
            "client-id": "FILL-ME",
            "tenant": "FILL-ME",
            "thumbprint": "FILL-ME",
            "admin-upn": "FILL-ME"
           },

        The "client-id" and "tenant" should contain the Client ID and the Directory (Tenant) ID copied from Your Azure Active Directory App Registration, "thumbprint" should contain the Thumbprint of the certificate You have created, and "admin-upn" should be Your email address in Azure (e.g. admin@company.com).

         {
            "type": "template-files",
            "path": "FILL-ME"
           },

        Here You have to specify where the KanBo Board Templates will be temporarily stored when being installed or created. We will get back to this after uploading the KanBo installation package.

         {
            "type": "package",
            "name": "webjobs",
            "thumbprint": "FILL-ME"
           },

        This is needed to allow KanBo Webjobs to work. Insert the same thumbprint here that You used for the "auth-aad" package.

        Uploading the KanBo installation package


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

        Enter the folder "site", then 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.

        Image 13979



        Now You need to create a folder for KanBo Board Templates. It is best not to create the Templates folder where the KanBo files are stored. As an example, let's create this folder inside the "site" directory. To do that, click on the plus icon and select "Create Folder"

        Image 13980

        After that, name the folder "Templates" and confirm with enter.

        Go into the folder.

        Image 13981


        The path to the folder is present in the Powershell window. Copy it.

        Before we can paste it in the appsettings.json file, we need to change the backslashes to double backslashes.

        So this:

        C:\home\site\Templates

        Will become this:

        C:\\home\\site\\Templates

        Head back to the appsettings.json file and fill in the "path" for "template-files". You can edit the file by clicking the edit button alongside it.

        Image 13983

        Image 13984

        After pasting the line, click on "save".


        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.

        Image 13129

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

        Image 13130

        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 support@kanboapp.com, so a license key can be generated and sent to you.


        Image 13131

        Image 13132



        Go back to the appsettings.json and paste the license key in the "LicenseKey" variable.

        Image 13985



        After updating the pasting the LicenseKey, save the appsettings.json file.


        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.JobHost.zip file. It contains its own appsettings.json, which we will need to edit. There are two sections to modify:

        "ConnectionStrings": {
            "KanBo": "FILL-ME"
          },

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

        {
            "type": "package",
            "name": "auth-aad",
            "client-id": "FILL-ME",
            "tenant": "FILL-ME",
            "thumbprint": "FILL-ME"
           },
           {
            "type": "package",
            "name": "webjob.group-sync",
            "thumbprint": "FILL-ME",
            "kanbo-url": "FILL-ME"
           }
        

        The values here should be the same ones that You used in the appsettings.json of Your KanBo.

        After saving the configured file, put all the files into a .zip folder and 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

        "name": "webjob.group-sync",

        With

        "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.

        Image 13170

        2) Group memberships will be synchronized.

        Image 13171

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

        Image 13172



        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?