LaravelPackages.net
Acme Inc.
Toggle sidebar
wishtreehkumar/azureadsso

Azure Active Directory SSO Login flow

3
0
About wishtreehkumar/azureadsso

wishtreehkumar/azureadsso is a Laravel package for azure active directory sso login flow. It currently has 0 GitHub stars and 3 downloads on Packagist. Install it with composer require wishtreehkumar/azureadsso. Discover more Laravel packages by wishtreehkumar or browse all Laravel packages to compare alternatives.

Last updated

Project Description

This package will help you easily implement the Azure Active Directory SSO Login and Graph API Access.

Installation Steps


composer require wishtreehkumar/azureadsso

To edit config file

php artisan vendor:publish --provider="Wishtreehkumar\Azureadsso\ServiceProvider" --tag="config"

How to use


Set .env

AZURE_AD_CLIENT_SECRET=--
AZURE_AD_CLIENT_ID=--
AZURE_AD_TENANT_ID=--

AZURE_AD_TENANT_NAME=--
AZURE_AD_POLICY_NAME=--

AZURE_AD_CALLBACK_URI=--

Generate Password

use Wishtreehkumar\Azureadsso\Facades\AzureAD;

$password = AzureAD::generatePassword();

Generate Login URL

There are two type of Azure AD:
    - b2c
    - normal

$url = AzureAD::generateLoginUrl('b2c');

return redirect()->away($url);

Validate id_token in callback url

$azureAd = AzureAD::construct($request->id_token, 'b2c');

if ($azureAd->isAuthenticated()) {
    $azurePayload = $azureAd->getPayload();
}

Call Graph API

$grapApi = AzureAD::graphApi($method, $endPoint, $body);

EG: For create B2C User:

$dataBody = [
    'accountEnabled' => true,
    'displayName' => "Your Company",
    'identities' => [
        [
            'signInType' => 'emailAddress',
            'issuer' => 'your_tenet.onmicrosoft.com',
            'issuerAssignedId' => '[email protected]',
        ],
    ],
    'passwordProfile' => [
        'password' => $password,
        'forceChangePasswordNextSignIn' => false,
    ],
    'passwordPolicies' => 'DisablePasswordExpiration',
];

$grapApi = AzureAD::graphApi('post', 'users', $dataBody);

dd($grapApi->object());
Comments