pbergman / php-docker-token-auth
轻量级的基于PHP的Docker令牌认证构建
2.0.0
2016-03-09 14:17 UTC
Requires
- php: >=5.4.0
- christian-riesen/base32: 1.*@stable
- firebase/php-jwt: 3.*@stable
- silex/silex: 1.*@stable
- symfony/options-resolver: 2.*@stable
Suggests
- symfony/yaml: Used for YamlAuthListener, where you can define users/rights in a yaml files
This package is auto-updated.
Last update: 2024-08-29 12:45:46 UTC
README
##PHP Docker仓库2令牌认证
这是一个轻量级的PHP Docker令牌认证构建,符合文档规范。
https://docs.docker.net.cn/registry/spec/auth/token
它可以用来验证推送/拉取和注册用户到您的私有仓库。
###配置
配置应该作为参数传递给构造函数
$app = new DockerToken\Application([
'public_key' => dirname(__FILE__) . '/public.key',
'private_key' => dirname(__FILE__) . '/private.key',
'audience' => 'registry.docker.com',
'issuer' => 'auth.docker.com',
])
###验证
在src\DockerToken\Listener中定义了一些监听器,可用于验证(见)example.php或测试。
要处理程序之间进行通信,您可以使用(set|is)Access(Granted|Denied)方法(见LdapAuthListener或YamlAuthListener)。
默认情况下,标志设置为abstain en,当完成时,如果没有授予标志,则将其视为认证失败,并抛出InvalidAccessException。
如果希望在成功时停止,可以使用stopPropagation方法,因为设置方法不会这样做。在失败时,只需调用InvalidAccessException,这将导致401状态。
当使用DockerToken\Listener\YamlAuthListener时,还需要symfony/yaml。
###运行
php -S 127.0.0.1:9999 example.php
###密钥
要生成密钥,请参阅
php bin/CreateKeys.php