Topic-icon Azure Integration Patched files for JFBConnect

Active Subscriptions:

None
2 years 11 months ago - 2 years 11 months ago #67220 by [email protected]
 Hello,

We have fixed some issues that are related to Azure integration. It's related to tenant ID which is needed and currently missing in the config at the admin side. I'm sharing the actual files and locations with you below. 

your_site/components/com_jfbconnect/libraries/provider/azure.php
your_site/administrator/components/com_jfbconnect/models/config.php
your_site/administrator/language/en-GB/en-GB.com_jfbconnect.ini
your_site/components/com_jfbconnect/libraries/provider/azure/config/config.xml


Let me know if that works.
Attachments:
Last edit: 2 years 11 months ago by [email protected].
The topic has been locked.
Active Subscriptions:

None
Here's a note on the implementation, and also details on how the App Registration needs to be configured in Azure.

Implementation
Each Directory in Azure has a unique Tenant ID. Users and Apps are linked to the Tenant. So when we want users from a certain Directory to login, we need to be able to specify the Tenant ID in the OAuth authorization and token URLs. We have added a new config for tenant ID, and the OAuth URLs in the provider/azure.php use this tenant ID to construct the URLs.

If a tenant ID is not provided, it will authenticate against the "common" tenant ID.

Azure AD Config
A new "App Registration" needs to be created, and the following settings to be made in this App
- In the API Permissions, the User.Read, profile & email permissions need to be added.
- On this same screen, the button "Grant Admin Consent for Directory" needs to be clicked, since due to a Azure quirk, if users need to consent to these permissions, a token error is seen
The topic has been locked.
Support Specialist
2 years 11 months ago #67223 by mel
Thank you for the code contribution and details. I've added a tracking issue to review these and incorporate the necessary changes in the next release. If we have any questions, we'll let you know.

-Melissa
The topic has been locked.
Active Subscriptions:

None
Hello,

We have added one more config called as Graph API version. Now, this is needed to fetch beta features from Microsoft Graph API such as EmployeeId, Department, etc. The changes will include one additional file change  (i.e. your_site/components/com_jfbconnect/libraries/profile/azure.php) along with the previously sent files.

Here is the list of total files changes:
your_site/components/com_jfbconnect/libraries/profile/azure.php
your_site/components/com_jfbconnect/libraries/provider/azure.php
your_site/administrator/components/com_jfbconnect/models/config.php
your_site/administrator/language/en-GB/en-GB.com_jfbconnect.ini
your_site/components/com_jfbconnect/libraries/provider/azure/config/config.xml

Also, I wish to give you a little background of what we are trying to achieve here:
We wish to store extra field data from Azure like EmpoyeeId, Department, etc. against Joomla's users. Now for that, we have created custom fields for users using Joomla's own com_fields component. Also, we are storing the same extra data in easysocial as well by creating custom fields in the easysocial.

Now to store these extra field data we had to create an additional plugin (plugin name - User - Sso! ) that will allow us to update these extra data against users on every login. I will also share the plugin with you so that you have an idea. 

So my question here is, can we achieve the same result without writing the new User - Sso! plugin?

Do let us know.


 
Attachments:
The topic has been locked.