1
0
Fork 0
mirror of synced 2024-10-01 01:37:56 +13:00

Move oauth secret to identity

This commit is contained in:
Matej Bačo 2023-08-10 01:02:13 +02:00
parent c6302014f5
commit 75e66e675b
2 changed files with 10 additions and 21 deletions

View file

@ -242,17 +242,6 @@ $commonCollections = [
'default' => null,
'array' => false,
'filters' => ['datetime'],
],
[
'$id' => ID::custom('migrationsFirebaseServiceAccount'),
'type' => Database::VAR_STRING,
'format' => '',
'size' => 16384,
'signed' => true,
'required' => false,
'default' => null,
'array' => false,
'filters' => ['encrypt'],
]
],
'indexes' => [

View file

@ -146,14 +146,14 @@ App::post('/v1/migrations/firebase/oauth')
$dbForConsole->updateDocument('identities', $identity->getId(), $identity);
}
if ($user->getAttribute('migrationsFirebaseServiceAccount')) {
$serviceAccount = json_decode($user->getAttribute('migrationsFirebaseServiceAccount'), true);
if ($identity->getAttribute('secret')) {
$serviceAccount = $identity->getAttribute('secret');
} else {
$serviceAccount = $firebase->createServiceAccount($accessToken, $projectId);
$user = $user
->setAttribute('migrationsFirebaseServiceAccount', json_encode($serviceAccount));
$identity = $identity
->setAttribute('secret', $serviceAccount);
$dbForConsole->updateDocument('users', $user->getId(), $user);
$dbForConsole->updateDocument('identities', $identity->getId(), $identity);
}
$migration = $dbForProject->createDocument('migrations', new Document([
@ -542,14 +542,14 @@ App::get('/v1/migrations/firebase/report/oauth')
}
// Get Service Account
if ($user->getAttribute('migrationsFirebaseServiceAccount')) {
$serviceAccount = json_decode($user->getAttribute('migrationsFirebaseServiceAccount'), true);
if ($identity->getAttribute('secret')) {
$serviceAccount = $identity->getAttribute('secret');
} else {
$serviceAccount = $firebase->createServiceAccount($accessToken, $projectId);
$user = $user
->setAttribute('migrationsFirebaseServiceAccount', json_encode($serviceAccount));
$identity = $identity
->setAttribute('secret', $serviceAccount);
$dbForConsole->updateDocument('users', $user->getId(), $user);
$dbForConsole->updateDocument('identities', $identity->getId(), $identity);
}
$firebase = new Firebase(array_merge($serviceAccount, ['project_id' => $projectId]));