datacore/hub-sdk
Composer 安装命令:
composer require datacore/hub-sdk
包简介
Datacore Hub SDK pra produtos integrados (Symfony bundle). Valida JWT via JWKS + chama API do Hub via OAuth client_credentials.
README 文档
README
SDK oficial pra produtos integrados com o Datacore Hub (Identity Provider central + billing + onboarding).
Instalação
Adicione no composer.json do seu projeto (Symfony 7.4+):
{
"repositories": [
{
"type": "path",
"url": "../datacore-php-sdk"
}
],
"require": {
"datacore/hub-sdk": "@dev"
}
}
Quando publicarmos em Packagist privado/Satis, troca por:
"datacore/hub-sdk": "^1.0"
Configuração
config/packages/datacore_hub.yaml:
datacore_hub:
issuer_url: 'https://hub.datacore.com' # ou http://localhost:8000 em dev
client_id: '%env(DATACORE_HUB_CLIENT_ID)%'
client_secret: '%env(DATACORE_HUB_CLIENT_SECRET)%'
jwks_cache_ttl: 86400 # 24h
bundles.php:
Datacore\HubSdk\DatacoreHubBundle::class => ['all' => true],
Uso — Validar JWT do Hub
use Datacore\HubSdk\JwtValidator;
public function __construct(private JwtValidator $validator) {}
public function someProtectedAction(Request $request): Response
{
$jwt = $request->headers->get('Authorization', '');
$jwt = preg_replace('/^Bearer\s+/i', '', $jwt);
try {
$token = $this->validator->validate($jwt);
$userId = $token->getSubject();
$scopes = $token->getScopes();
// ...
} catch (\RuntimeException $e) {
return new Response('Invalid token', 401);
}
}
Uso — Chamar API do Hub (server-to-server)
use Datacore\HubSdk\HubApiClient;
public function __construct(private HubApiClient $hub) {}
public function listMySubscriptions(): array
{
$response = $this->hub->request('GET', '/api/v1/subscriptions');
return $response->toArray();
}
Componentes
| Classe | Função |
|---|---|
JwksClient | Busca + cacheia chaves públicas do Hub (/.well-known/jwks.json) |
JwtValidator | Valida assinatura JWT + claims (iss/exp/nbf) |
ValidatedToken | Wrapper imutável dos claims pós-validação |
HubApiClient | HTTP client com OAuth client_credentials automático |
Sprint 4 (futuro)
WebhookHandlerabstrato pra receber eventos do Hub (subscription.activated, etc.) com HMAC validation
Licença
Proprietary — Datacore Tecnologia Ltda.
统计信息
- 总下载量: 0
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: proprietary
- 更新时间: 2026-06-18