jinna/keycloakapiservices

此包用于keycloak REST API服务

dev-main 2023-04-18 14:45 UTC

This package is auto-updated.

Last update: 2024-09-18 18:08:20 UTC


README

iSportz iSportz

平台化Keycloak REST API服务

平台化Keycloak是一个Laravel包,它为您提供了访问keycloak的admin REST API的权限。

有关API参考,请访问Keycloak Admin REST API,了解Keycloak管理,请参阅服务器管理指南

入门指南

安装

Keycloak admin API需要

PHP >= 8.0

Laravel >= 9.0

Guzzlehttp >= 7.2

Keycloakapiservices包需要以下依赖包。

    "require": {
        "php": "^8.0",
        "laravel/framework": "^9.0",
        "guzzlehttp/guzzle": "^7.2"
    },

运行以下命令安装包。

composer require jinna/keycloakapiservices

使用以下命令发布keycloakapi配置文件:php artisan vendor:publish --provider="KeycloakApiServices\KeycloakApiServiceProvider" --tag="config",将在config文件夹中创建一个名为keycloakapiservices.php的配置文件。

config/app.php文件中添加KeycloakApiServices\KeycloakApiServiceProvider::class'providers' => []数组末尾,如下所示。

'providers' => [
        App\Providers\EventServiceProvider::class,
        App\Providers\RouteServiceProvider::class,
        KeycloakApiServices\KeycloakApiServiceProvider::class
    ],

app/Providers/RouteServiceProvider.php文件中的boot()方法内的$this->routes(function () {})组中添加以下代码。

    public function boot()
    {
        $this->configureRateLimiting();            
        $this->routes(function () {
            Route::prefix('api')
                ->middleware('api')
                ->namespace($this->namespace)
                ->group(base_path('vendor/jinna/keycloakapiservices/src/routes/api.php'));
        });
    }

在您的.env文件中添加以下变量,并使用适当的值进行配置。

//Keycloak Server Url
KEYCLOAK_BASE_URL="https://keycloakauth.yourdomain.com"
KEYCLOAK_REALM_ENDPOINT=/admin/realms
KEYCLOAK_CLIENTS_ENDPOINT=/clients
KEYCLOAK_ROLES_ENDPOINT=/roles
KEYCLOAK_ADMIN_CLIENT_ID=admin-cli
KEYCLOAK_ADMIN_USERNAME=keycloakadminusername
KEYCLOAK_ADMIN_PASSWORD="keycloakadminpassword"

文档

基本用法

请参考Postman集合Platform KeyCloak API.postman_collection,您可以在包文件夹中找到它。

许可证

平台化Keycloak REST API服务由iSportz拥有。有关更多详细信息,请参阅LICENSE