ijodkor / one-id
OneId OAuth package for Laravel/PHP
v1.0.3
2025-03-27 13:17 UTC
Requires
- php: ^8.0
- ijodkor/laravel-api-response: ^1.2
- illuminate/contracts: ^9.21|^10.0|^11.0
- illuminate/support: ^9.21|^10.0|^11.0
- spatie/laravel-package-tools: ^1.16|^1.18
Requires (Dev)
- orchestra/testbench: ^7.0|^8.0|^9.0
README
Yagona identifikatsiya tizimi (Single identification system)
Talablar (Requirements)
- PHP ^8.0
- Laravel ^10
1. O‘rnatish (Installation)
Install the package via composer:
composer require ijodkor/one-id
Sozlama faylni asosiyga chiqarish
php artisan vendor:publish --provider="Ijodkor\OneId\OneIdServiceProvider"
2. Sozlash (Setup)
- Muhit o‘zgaruvchilari o‘rnatilinadi (Set environment variables)
ONE_ID_SSO_URL=<one_id_sso_url> ONE_ID_CLIENT_ID=<client_id> ONE_ID_CLIENT_SECRET=<client_secret>
- Sozlama fayli yaratilinadi (Set Config file)
/* |-------------------------------------------------------------------------- | OneId Integration |-------------------------------------------------------------------------- | This is the OneId package | */ 'one_id_sso_url' => env('ONE_ID_SSO_URL'), 'one_id_client_id' => env('ONE_ID_CLIENT_ID'), 'one_id_client_secret' => env('ONE_ID_CLIENT_SECRET'), 'one_id_client_scope' => env('ONE_ID_CLIENT_SCOPE'),
3. Qo‘shimcha sozlamalar (Extra configurations)
ONE_ID_CLIENT_SCOPE=test ONE_ID_CLIENT_STATE=test
3.1 Web - for monolith website and systems
php artisan one-id:web-make
- Define following route in web.php
# OneId Route::get('/one-id/access', [OneIdWebAuthController::class, 'access']);
3.2 Api - for REST api website and systems
php artisan one-id:api-make
- Define following route in api.php
# OneId Route::post('/auth/token', [OneIdAuthController::class, 'token']);
4. Ishlatish (Usage)
Modulni ham API ham odatiy WEB uslubda ishlatish mumkin
- Api
- [POST/GET] /api/one-id/url (name: one-id.url) - OneIdga o‘tish uchun havola beradi
- [POST] /api/auth/token - OneId bergan kod (code) bilan token olish. (Ushbu manzil ixtiyoriy tartibda o‘zgartirilishi mumkin, 3.2 dagi manzil bilan bir xil qo‘yiladi)
- Web
- [GET] /one-id/login (name: one-id.login) - OneId SSO sahifasiga o*#8216;tadi
- [GET] /one-id/access - OneId orqali kod (code) bilan kirib kelganda tizimga kiritish. (Ushbu manzil ixtiyoriy tartibda o‘zgartirilishi mumkin, 3.1 dagi manzil bilan bir xil qo‘yiladi)
Foydalanilgan manbalar (References)
- Testbench - Laravel Testing Helper for Packages Development
- Laravel package tools - Tools for creating Laravel packages