mapik/radius-client

PHP RADIUS客户端实现

1.0.0 2023-01-06 11:52 UTC

This package is auto-updated.

Last update: 2024-09-06 15:30:56 UTC


README

Source Code Latest Version Software License Build Status Coverage Status Total Downloads

mapik/radius-client 是一个PHP 5.5+ RADIUS客户端实现。

安装

推荐的安装方法是使用 PackagistComposer。运行以下命令安装软件包并将其添加到项目的 composer.json 文件中

composer require mapik/radius-client

用法

<?php

use Mapik\RadiusClient\Client;
use Mapik\RadiusClient\Packet;
use Mapik\RadiusClient\PacketType;

$client = new Client('udp://127.0.0.1:1812', /* timeout */ 2);
$response = $client->send(new Packet(PacketType::ACCESS_REQUEST(), /* secret */ 'xyzzy5461', [
    'User-Name' => 'nemo',
    'User-Password' => 'arctangent',
]));

if ($response->getType() !== PacketType::ACCESS_ACCEPT()) {
    throw new \RuntimeException('Unable to authenticate as user "nemo"');
}

字典

以下RADIUS字典默认支持

  • MikroTik
  • RFC 2865
  • RFC 2866
  • RFC 2867
  • RFC 2868
  • RFC 2869
  • RFC 3162
  • RFC 3576
  • RFC 3580
  • RFC 4072
  • RFC 4372
  • RFC 4603
  • RFC 4675
  • RFC 4679
  • RFC 4818
  • RFC 4849
  • RFC 5090
  • RFC 5176

自定义字典

可以通过创建一个实现 Mapik\RadiusClient\DictionaryInterface 接口的自定义字典类来注册额外的属性。

版权和许可证

mapik/radius-client 库版权所有 © Jonas Stendahl,并许可在MIT许可证(MIT)下使用。有关更多信息,请参阅LICENSE