authentin/eusig-bundle
Composer 安装命令:
composer require authentin/eusig-bundle
包简介
Symfony bundle for authentin/eusig — eIDAS signing with DI, config, and autowiring
README 文档
README
Symfony bundle for authentin/eusig — adds DI, configuration, and autowiring for eIDAS-compliant electronic signatures.
Installation
composer require authentin/eusig-bundle
You also need a PSR-18 HTTP client and PSR-17 factories:
composer require symfony/http-client nyholm/psr7
Prerequisites
A running EU DSS instance:
docker run -d -p 8080:8080 ghcr.io/authentin/dss:latest
Configuration
# config/packages/eusig.yaml eusig: dss: base_url: '%env(DSS_BASE_URL)%' # Required. e.g. http://localhost:8080/services/rest token: # Optional. Omit if you only need validation. type: pkcs12 # Currently supported: pkcs12 path: '%env(PKCS12_PATH)%' # Path to the .p12 keystore file password: '%env(PKCS12_PASSWORD)%' # Keystore password (use env vars!) defaults: # Optional. Sensible defaults are provided. signature_level: PAdES_BASELINE_B # Any value from SignatureLevel enum digest_algorithm: SHA256 # Any value from DigestAlgorithm enum
Autowired services
The bundle registers these services, available via autowiring:
| Interface | Service | Always available |
|---|---|---|
SigningClientInterface |
DSS signing client | Yes |
ValidatorInterface |
DSS validator | Yes |
TokenInterface |
PKCS#12 token | Only when token is configured |
SignerInterface |
Signer (signing client + token) | Only when token is configured |
Usage
Signing a PDF
use Authentin\Eusig\Contract\SignerInterface; use Authentin\Eusig\Model\Document; use Authentin\Eusig\Model\SignatureLevel; use Authentin\Eusig\Model\SignatureParameters; use Symfony\Component\HttpFoundation\Response; class SignController { public function __invoke(SignerInterface $signer): Response { $signed = $signer->sign( Document::fromLocalFile('/path/to/document.pdf'), new SignatureParameters(signatureLevel: SignatureLevel::PAdES_BASELINE_B), ); return new Response($signed->content, 200, [ 'Content-Type' => 'application/pdf', 'Content-Disposition' => 'attachment; filename="signed.pdf"', ]); } }
Validating a signature
use Authentin\Eusig\Contract\ValidatorInterface; use Authentin\Eusig\Model\Document; class ValidateController { public function __invoke(ValidatorInterface $validator): Response { $result = $validator->validateSignature( Document::fromLocalFile('/path/to/signed.pdf'), ); return $this->json([ 'valid' => $result->valid, 'signatures' => $result->signaturesCount, ]); } }
Extending a signature
use Authentin\Eusig\Contract\SigningClientInterface; use Authentin\Eusig\Model\Document; use Authentin\Eusig\Model\SignatureLevel; use Authentin\Eusig\Model\SignatureParameters; class ExtendController { public function __invoke(SigningClientInterface $signingClient): Response { $extended = $signingClient->extendDocument( Document::fromLocalFile('/path/to/signed.pdf'), new SignatureParameters(signatureLevel: SignatureLevel::PAdES_BASELINE_T), ); $extended->saveToFile('/path/to/extended.pdf'); // ... } }
Custom token
To use a different signing backend (HSM, remote provider), implement TokenInterface and register it:
# config/services.yaml services: App\Signing\MyHsmToken: tags: ['authentin.eusig.token'] Authentin\Eusig\Contract\TokenInterface: alias: App\Signing\MyHsmToken
Then omit the token section from eusig.yaml — the bundle will use your service.
Standalone usage
For non-Symfony projects, use authentin/eusig directly.
License
MIT
authentin/eusig-bundle 适用场景与选型建议
authentin/eusig-bundle 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 0 次下载、GitHub Stars 达 7, 最近一次更新时间为 2026 年 04 月 06 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「symfony」 「bundle」 「electronic-signature」 「cades」 「xades」 「pades」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 authentin/eusig-bundle 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 authentin/eusig-bundle 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 authentin/eusig-bundle 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
2lenet/EasyAdminPlusBundle
The bundle for easy using json-rpc api on your project
Provide a way to secure accesses to all routes of an symfony application.
DMS Meetup API Bundle, enables Meetup API clients in services
Bundle Symfony DaplosBundle
Provides a Data Grid tables for your Symfony project.
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 7
- 点击次数: 44
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-04-06