Download the PHP package arsanchez/laravel-azure-provisioning without Composer
On this page you can find all versions of the php package arsanchez/laravel-azure-provisioning. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download arsanchez/laravel-azure-provisioning
More information about arsanchez/laravel-azure-provisioning
Files in arsanchez/laravel-azure-provisioning
Package laravel-azure-provisioning
Short Description This package adds a SCIM server, specifically designed to work with Microsoft Azure Active Directory, to your Laravel application.
License MIT
Informations about the package laravel-azure-provisioning
Laravel Azure Provisioning
This package robtrehy\laravel-azure-provisioning
adds a SCIM server, specifically designed to work with Microsoft Azure Active Directory, to your Laravel application.
The SCIM server enables you to create Users and Groups from your Azure Active Directory (AAD) automatically in your Laravel Application.
You can configure your AAD Enterprise Application to either provision all of your users and groups, just your users, or selected users or groups.
Prerequisites
- A username field is required
- Modify your model and migration to include a username field
- Add username to the $fillable property of your user model
- We recommend use of an active/status field for user soft delete
- The default configuration will create a
spatie/laravel-permission
Role for each Group. To use the default configuration ensure you have requiredspatie/laravel-permission
Installation
- Run
composer require robtrehy/laravel-azure-provisioning
to include this in your project. - Run
php artisan vendor:publish --provider="RobTrehy\LaravelAzureProvisioning\AzureProvisioningProvider"
. - Modify the published configuration file to your requirements. The file is located at
config/azureprovisioning.php
.
Configuration (Laravel)
-
Open
config/azureprovisioning.php
to adjust the packages configurationIf the file doesn't exist, ensure you have ran
php artisan vendor:publish --provider="RobTrehy\LaravelAzureProvisioning\AzureProvisioningProvider"
. -
Modify the configuration as required. All fields are commented and should provide enough description for how they change the way this package works.
- If you do not wish to provision Groups you can entirely remove (or comment) the
Groups
key.
Configuration (Azure)
- Login to Azure Active Directory
- Select All services > Enterprise applications
- Select New application
- Select Create your own application
-
Provide your application's name and select the option "Integrate any other application you don't find in the gallery (Non-gallery)"
- A) To provision all users/groups
- On the properties page, ensure the option "User assignment required?" is set to No
--OR--
-
B) To provision select users/groups
- On the Properties page, ensure the option "User assignment required?" is set to Yes
- On the Users and groups page, add the users and groups that you wish to provision
- Navigate to the Provisioning page
- Set the Provisioning Mode to Automatic
- In the Admin Credentials section set the Tenant URL to your domain (with https://) followed by
/scim/v2.0/
(Or the value you have set in in theroutePrefix
configuration option). (e.g.https://laravel-azure-provisioning.com/scim/v2.0/
) - TODO: Provide the secret token generated by ... ?
- Test the configuration and then save the settings
- Expand the mapping section and remove any mappings that are not required by your application and add mappings that are missing and required by your application.
- Save the settings again
Note: If you only want users within set groups to be provisioned, follow the steps in 6 B) and add the groups you require. Only the members of the group will then be provisioned.
License
This Laravel package is free software distributed under the terms of the MIT license. See LICENSE
All versions of laravel-azure-provisioning with dependencies
laravel/framework Version ^10.0
nesbot/carbon Version ^2.46
tmilos/scim-filter-parser Version ^1.3
tmilos/scim-schema Version ^0.1.0
nunomaduro/collision Version ^7.0