Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
en:m365_graphapi_calendars_read [2025/06/16 17:39] admin [Configuration of Microsoft 365 for Calendars access] |
en:m365_graphapi_calendars_read [2025/06/16 18:03] (current) admin [Next Steps] |
||
---|---|---|---|
Line 5: | Line 5: | ||
This guide explains how to register a new application in Microsoft 365 for use with calendar integrations in **zebrix signage**. | This guide explains how to register a new application in Microsoft 365 for use with calendar integrations in **zebrix signage**. | ||
You will create an app, add a client secret, and assign it the **Calendars.Read** application permission. Then, you'll share the required details to the zebrix technical team and finally a secret UUID will be returned to you to be used in the widget configuration. | You will create an app, add a client secret, and assign it the **Calendars.Read** application permission. Then, you'll share the required details to the zebrix technical team and finally a secret UUID will be returned to you to be used in the widget configuration. | ||
+ | |||
+ | <WRAP center round info 60%> | ||
+ | Please note that a Microsoft 365 Global Admin account is required to complete this configuration | ||
+ | </WRAP> | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | This tutorial is a straightforward approach that grants application-wide **permissions to all resources and users calendars**. | ||
+ | It is the easiest to implement this, using only the Microsoft Entra Admin Center, making it suitable for quick setups. | ||
+ | However, **restricting permissions to specific resources** by scoping them to groups is an approach that is **more secured and recommended**. | ||
+ | It involves combining the Microsoft Entra Admin Center for initial setup with PowerShell commands to apply scoping that will not be covered in this tutorial. | ||
+ | </WRAP> | ||
+ | |||
Line 16: | Line 28: | ||
===== 2. Registering the App ===== | ===== 2. Registering the App ===== | ||
- | - **Name**: Enter `zebrix signage calendars connector` | + | - **Name**: Enter `zebrix signage calendars connector` (you are free to choose the name you want) |
- **Supported account types**: Choose **"Accounts in this organizational directory only"** (default). | - **Supported account types**: Choose **"Accounts in this organizational directory only"** (default). | ||
- Leave the **Redirect URI** empty. | - Leave the **Redirect URI** empty. | ||
Line 23: | Line 35: | ||
{{:en:m365_calendars_app_registration_02.png?nolink&1000|}} | {{:en:m365_calendars_app_registration_02.png?nolink&1000|}} | ||
- | ===== 3. Creating a Client Secret ===== | + | ===== 3. Save details and create a Client Secret ===== |
- | - In the app overview, select **"Certificates & secrets"**. | + | - Save the details that need to be provided to zebrix's technical team: |
- | - Under **Client secrets**, click **"New client secret"**. | + | - **Application (client) ID** |
- | - Add a description, for example `zebrix connector secret`. | + | - **Directory (tenant) ID** |
- | - Set an expiration (recommended: 6 or 12 months). | + | - Click on **Add a certificate or secret**. |
- | - Click **"Add"** and copy the generated value immediately. **You will not be able to retrieve it again.** | + | |
{{:en:m365_calendars_app_registration_03.png?nolink&1000|}} | {{:en:m365_calendars_app_registration_03.png?nolink&1000|}} | ||
+ | |||
+ | - Add a description, for example `zebrix connector secret`. | ||
+ | - Set an appropriate expiration (24 months is recommended). | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | When the secret will expire, zebrix will not have access to your calendars anymore and display their details on screen. You'll have to create a new secret and provide it to zebrix. We invite you to create an event in your personal calendar at the end of the validity period of the secret. | ||
+ | </WRAP> | ||
{{:en:m365_calendars_app_registration_04.png?nolink&1000|}} | {{:en:m365_calendars_app_registration_04.png?nolink&1000|}} | ||
+ | |||
+ | - Click **"Add"** and copy the generated value and save it immediately. **You will not be able to retrieve it again.** | ||
{{:en:m365_calendars_app_registration_05.png?nolink&1000|}} | {{:en:m365_calendars_app_registration_05.png?nolink&1000|}} | ||
Line 50: | Line 70: | ||
{{:en:m365_calendars_app_registration_07.png?nolink&1000|}} | {{:en:m365_calendars_app_registration_07.png?nolink&1000|}} | ||
- | ===== 5. Summary ===== | + | ===== 5. Provide details to zebrix's technical team and get your UUID ===== |
- | You now have: | + | |
- | - Registered an application named **"zebrix signage calendars connector"**. | + | - Please provide to zebrix's technical team the following details: |
- | - Generated a client secret to authenticate your backend app. | + | * Application (client) ID |
- | - Granted **Calendars.Read** application-level permission to access calendars in your organization. | + | * Directory (tenant) ID |
+ | * Secret value | ||
+ | |||
+ | - We recommend using a secured channel to provide these details to our team. | ||
+ | - A UUID will be returned to you by the zebrix's technical team. These UUID has to remain secret as it will give full access to all your resources and users calendars details. | ||
+ | |||
+ | ===== 6. Configure the widget ===== | ||
+ | |||
+ | - Go to https://widgets.zebrix.net | ||
+ | - Choose the Microsoft 365 calendar widget that suits your needs | ||
+ | - Copy / Paste your UUID in the field | ||
+ | - Set the resource or user UPN (usually, the email address) | ||
+ | - Customize other options of the widgets | ||
+ | - Copy the generated URL and paster it in a web zone in the page editor. | ||
- | ===== Next Steps ===== | ||
- | Use the **Application (client) ID**, **Directory (tenant) ID**, and **Client secret** in your integration code to authenticate using the OAuth 2.0 client credentials flow. | ||