Files
outline/server/migrations/20240929194201-add-hash-to-api-key.js
T
Tom Moor 5e61fcd336 Add hashed column for API keys (#7699)
* Add hashed column for API keys

* test

* Add obfuscatedValue getter
2024-09-30 17:16:35 -07:00

36 lines
1.1 KiB
JavaScript

'use strict';
/** @type {import('sequelize-cli').Migration} */
module.exports = {
async up (queryInterface, Sequelize) {
await queryInterface.sequelize.transaction(async transaction => {
await queryInterface.addColumn("apiKeys", "hash", {
type: Sequelize.STRING,
allowNull: true,
unique: true,
}, { transaction });
await queryInterface.addColumn("apiKeys", "last4", {
type: Sequelize.STRING(4),
allowNull: true,
}, { transaction });
await queryInterface.changeColumn("apiKeys", "secret", {
type: Sequelize.STRING,
allowNull: true,
}, { transaction });
});
},
async down (queryInterface, Sequelize) {
await queryInterface.sequelize.transaction(async transaction => {
await queryInterface.removeColumn("apiKeys", "hash", { transaction });
await queryInterface.removeColumn("apiKeys", "last4", { transaction });
await queryInterface.changeColumn("apiKeys", "secret", {
type: Sequelize.STRING,
allowNull: false,
}, { transaction });
});
}
};