PHPackages                             beta/bx.openid - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. beta/bx.openid

ActiveBitrix-module[Authentication &amp; Authorization](/categories/authentication)

beta/bx.openid
==============

Bitrix openid client

1.3.1(1y ago)11.7k↑22.2%3[1 PRs](https://github.com/beta-eto-code/bx.openid/pulls)MITPHPPHP &gt;=7.4

Since Jun 18Pushed 1y ago2 watchersCompare

[ Source](https://github.com/beta-eto-code/bx.openid)[ Packagist](https://packagist.org/packages/beta/bx.openid)[ RSS](/packages/beta-bxopenid/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (1)Versions (6)Used By (0)

Клиент для авторизации openid-connect
=====================================

[](#клиент-для-авторизации-openid-connect)

Установка
---------

[](#установка)

```
composer require beta/bx.openid
```

Для регистрации нового клиента авторизации необходимо в local/php\_interface/init.php прописать след. код:

```
use Bitrix\Main\EventManager;
use Bx\OpenId\SocServOpenId;

$eventManager = EventManager::getInstance();
$adfsSocService = SocServOpenId::createNewService(  // динамическое создание клиента
    'adfs',                 // идентификатор клиента авторизации
    'ADFS (My company)',    // название клиента выводимое в списке
    'adfs-icon'             // код класса для вывода иконки клиента в админке
);
$adfsSocService::selfRegister($eventManager); // регистрация клиента авторизации
```

После чего в админке (/bitrix/admin/settings.php?lang=ru&amp;mid=socialservices&amp;mid\_menu=1) можно настроить клиент авторизации:

[![image info](./images/socservlist.png)](./images/socservlist.png)[![image info](./images/socservconfig.png)](./images/socservconfig.png)

Помимо динамического создания клиента есть возможность описать свой класс:

```
use Bx\OpenId\SocServOpenId;
use Bx\OpenId\interfaces\SocServOpenIdHandlerInterface;

class SocServAdfs extends SocServOpenId
{
    private static ?SocServOpenIdHandlerInterface $handler = null;

    static public function getId(): string
    {
        return 'adfs';
    }

    static public function getName(): string
    {
        return 'ADFS (My company)';
    }

    static public function getIconCode(): string
    {
        return 'adfs-icon';
    }

    static public function getHandler(): ?SocServOpenIdHandlerInterface
    {
        return static::$handler;
    }

    static public function setHandler(SocServOpenIdHandlerInterface $handler): void
    {
        static::$handler = $handler;
    }
}

// регистрация клента авторизации
$eventManager = EventManager::getInstance();
SocServAdfs::selfRegister($eventManager);
```

При необходимости можно изменить поведение клиента авторизации через внедрение обработчика.

Пример описания обработчика:

```
use Bx\OpenId\BaseSocServiceHandler;

class CustomSocServiceHandler extends BaseSocServiceHandler
{
    public function getAuthorizeCode(SocServOpenId $socServOpenId, ?HttpRequest $request = null): ?string
    {
        $request = $request ?? Context::getCurrent()->getRequest();
        $code = $request->get('custom_code_field') ?: null;
        return $code === null ? null : (string) $code;
    }

    public function getIdToken(SocServOpenId $socServOpenId, ?HttpRequest $request = null): ?string
    {
        $request = $request ?? Context::getCurrent()->getRequest();
        $code = $request->get('custom_id_token_field') ?: null;
        return $code === null ? null : (string) $code;
    }
}
```

Регистрация клиента авторизации с обработчиком:

```
$handler = new CustomSocServiceHandler();
SocServAdfs::setHandler($handler);

$eventManager = EventManager::getInstance();
SocServAdfs::selfRegister($eventManager);
```

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance46

Moderate activity, may be stable

Popularity24

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~83 days

Total

5

Last Release

414d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/c75fd54c926c6b835a6b6cd92514d60d55a285d35847b9f22aefcc7ad5ef9ae7?d=identicon)[nnagornyy](/maintainers/nnagornyy)

---

Top Contributors

[![alex19pov31](https://avatars.githubusercontent.com/u/786683?v=4)](https://github.com/alex19pov31 "alex19pov31 (5 commits)")

### Embed Badge

![Health badge](/badges/beta-bxopenid/health.svg)

```
[![Health](https://phpackages.com/badges/beta-bxopenid/health.svg)](https://phpackages.com/packages/beta-bxopenid)
```

###  Alternatives

[aws/aws-sdk-php

AWS SDK for PHP - Use Amazon Web Services in your PHP project

6.3k543.5M2.6k](/packages/aws-aws-sdk-php)[guzzlehttp/guzzle

Guzzle is a PHP HTTP client library

23.5k1.0B35.4k](/packages/guzzlehttp-guzzle)[google/auth

Google Auth Library for PHP

1.4k294.2M218](/packages/google-auth)[ccxt/ccxt

A cryptocurrency trading API with more than 100 exchanges in JavaScript / TypeScript / Python / C# / PHP / Go

43.2k341.0k1](/packages/ccxt-ccxt)[algolia/algoliasearch-client-php

API powering the features of Algolia.

69735.1M159](/packages/algolia-algoliasearch-client-php)[drupal/core

Drupal is an open source content management platform powering millions of websites and applications.

21866.0M1.7k](/packages/drupal-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
