pbergman/php-docker-token-auth

轻量级的基于PHP的Docker令牌认证构建

2.0.0 2016-03-09 14:17 UTC

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