Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8704a02a09 |
@@ -10,7 +10,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
services:
|
||||
mongo:
|
||||
image: mongo:7
|
||||
image: mongo:8
|
||||
options: >-
|
||||
--health-cmd "mongosh --quiet --eval \"db.adminCommand('ping')\""
|
||||
--health-interval 5s
|
||||
|
||||
@@ -5,7 +5,7 @@ declare(strict_types=1);
|
||||
namespace KTXM\AuthenticationProviderTotp\Controllers;
|
||||
|
||||
use KTXC\Http\Response\JsonResponse;
|
||||
use KTXC\Context\IdentityContextInterface;
|
||||
use KTXC\SessionIdentity;
|
||||
use KTXF\Controller\ControllerAbstract;
|
||||
use KTXF\Routing\Attributes\AuthenticatedRoute;
|
||||
use KTXM\AuthenticationProviderTotp\Services\EnrollmentService;
|
||||
@@ -23,7 +23,7 @@ use KTXM\AuthenticationProviderTotp\Services\EnrollmentService;
|
||||
class EnrollmentController extends ControllerAbstract
|
||||
{
|
||||
public function __construct(
|
||||
private readonly IdentityContextInterface $identityContext,
|
||||
private readonly SessionIdentity $userIdentity,
|
||||
private readonly EnrollmentService $enrollmentService,
|
||||
) {}
|
||||
|
||||
@@ -33,7 +33,7 @@ class EnrollmentController extends ControllerAbstract
|
||||
#[AuthenticatedRoute('/totp/status', name: 'totp.status', methods: ['GET'])]
|
||||
public function status(): JsonResponse
|
||||
{
|
||||
$userId = $this->identityContext->identifier();
|
||||
$userId = $this->userIdentity->identifier();
|
||||
if (!$userId) {
|
||||
return new JsonResponse(
|
||||
['error' => 'User not authenticated', 'error_code' => 'unauthorized'],
|
||||
@@ -56,7 +56,7 @@ class EnrollmentController extends ControllerAbstract
|
||||
#[AuthenticatedRoute('/totp/enroll', name: 'totp.enroll.begin', methods: ['POST'])]
|
||||
public function beginEnrollment(string $accountName = ''): JsonResponse
|
||||
{
|
||||
$userId = $this->identityContext->identifier();
|
||||
$userId = $this->userIdentity->identifier();
|
||||
if (!$userId) {
|
||||
return new JsonResponse(
|
||||
['error' => 'User not authenticated', 'error_code' => 'unauthorized'],
|
||||
@@ -95,7 +95,7 @@ class EnrollmentController extends ControllerAbstract
|
||||
#[AuthenticatedRoute('/totp/enroll/verify', name: 'totp.enroll.verify', methods: ['POST'])]
|
||||
public function completeEnrollment(string $code): JsonResponse
|
||||
{
|
||||
$userId = $this->identityContext->identifier();
|
||||
$userId = $this->userIdentity->identifier();
|
||||
if (!$userId) {
|
||||
return new JsonResponse(
|
||||
['error' => 'User not authenticated', 'error_code' => 'unauthorized'],
|
||||
@@ -131,7 +131,7 @@ class EnrollmentController extends ControllerAbstract
|
||||
#[AuthenticatedRoute('/totp/enroll/remove', name: 'totp.enroll.remove', methods: ['POST'])]
|
||||
public function removeEnrollment(string $code): JsonResponse
|
||||
{
|
||||
$userId = $this->identityContext->identifier();
|
||||
$userId = $this->userIdentity->identifier();
|
||||
if (!$userId) {
|
||||
return new JsonResponse(
|
||||
['error' => 'User not authenticated', 'error_code' => 'unauthorized'],
|
||||
|
||||
@@ -4,7 +4,7 @@ declare(strict_types=1);
|
||||
|
||||
namespace KTXM\AuthenticationProviderTotp\Services;
|
||||
|
||||
use KTXC\Context\TenantContextInterface;
|
||||
use KTXC\SessionTenant;
|
||||
use KTXM\AuthenticationProviderTotp\Stores\EnrollmentStore;
|
||||
|
||||
/**
|
||||
@@ -26,7 +26,7 @@ class EnrollmentService
|
||||
private const SECRET_LENGTH = 20; // 160 bits as recommended by RFC 4226
|
||||
|
||||
public function __construct(
|
||||
private readonly TenantContextInterface $tenantContext,
|
||||
private readonly SessionTenant $tenant,
|
||||
private readonly EnrollmentStore $enrollmentStore,
|
||||
) {}
|
||||
|
||||
@@ -35,7 +35,7 @@ class EnrollmentService
|
||||
*/
|
||||
public function isEnrolled(string $userId): bool
|
||||
{
|
||||
$tenantId = $this->tenantContext->identifier();
|
||||
$tenantId = $this->tenant->identifier();
|
||||
if (!$tenantId) {
|
||||
return false;
|
||||
}
|
||||
@@ -53,7 +53,7 @@ class EnrollmentService
|
||||
*/
|
||||
public function beginEnrollment(string $userId, array $config = []): array
|
||||
{
|
||||
$tenantId = $this->tenantContext->identifier();
|
||||
$tenantId = $this->tenant->identifier();
|
||||
if (!$tenantId) {
|
||||
return [
|
||||
'success' => false,
|
||||
@@ -108,7 +108,7 @@ class EnrollmentService
|
||||
*/
|
||||
public function completeEnrollment(string $userId, string $code): array
|
||||
{
|
||||
$tenantId = $this->tenantContext->identifier();
|
||||
$tenantId = $this->tenant->identifier();
|
||||
if (!$tenantId) {
|
||||
return [
|
||||
'success' => false,
|
||||
@@ -150,7 +150,7 @@ class EnrollmentService
|
||||
*/
|
||||
public function removeEnrollment(string $userId): array
|
||||
{
|
||||
$tenantId = $this->tenantContext->identifier();
|
||||
$tenantId = $this->tenant->identifier();
|
||||
if (!$tenantId) {
|
||||
return [
|
||||
'success' => false,
|
||||
@@ -181,7 +181,7 @@ class EnrollmentService
|
||||
*/
|
||||
public function verifyCode(string $userId, string $code): array
|
||||
{
|
||||
$tenantId = $this->tenantContext->identifier();
|
||||
$tenantId = $this->tenant->identifier();
|
||||
if (!$tenantId) {
|
||||
return [
|
||||
'success' => false,
|
||||
@@ -225,7 +225,7 @@ class EnrollmentService
|
||||
*/
|
||||
public function getEnrollmentSecret(string $userId): ?string
|
||||
{
|
||||
$tenantId = $this->tenantContext->identifier();
|
||||
$tenantId = $this->tenant->identifier();
|
||||
if (!$tenantId) {
|
||||
return null;
|
||||
}
|
||||
|
||||
Generated
+4
-4
@@ -3053,9 +3053,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/vuetify": {
|
||||
"version": "4.1.8",
|
||||
"resolved": "https://registry.npmjs.org/vuetify/-/vuetify-4.1.8.tgz",
|
||||
"integrity": "sha512-003D/8b5462uZCD5CMRTZF3smADmOn47mzthNY0aP/xkslovR5yIc1qXjPdFN0LHcu+p3GEAVmMQabldaIQ5pg==",
|
||||
"version": "4.1.6",
|
||||
"resolved": "https://registry.npmjs.org/vuetify/-/vuetify-4.1.6.tgz",
|
||||
"integrity": "sha512-VOsRTsNfs+FE4JXMONZkqX2yznSqC/FXG9/pgVVjsoqIjUvJg+CfFTuOlgyWVFrZYY+crk7LV9uaiN8bZREV/g==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
@@ -3064,7 +3064,7 @@
|
||||
"peerDependencies": {
|
||||
"typescript": ">=4.7",
|
||||
"vite-plugin-vuetify": ">=2.1.0",
|
||||
"vue": "^3.5.0 || ^3.6.0-0",
|
||||
"vue": "^3.5.0",
|
||||
"webpack-plugin-vuetify": ">=3.1.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
|
||||
Reference in New Issue
Block a user