issuer.rest.walnut.js/models.js

51 lines
1.4 KiB
JavaScript

'use strict';
var apiname = 'issuer_oauth3_org';
var baseFields = [ 'createdAt', 'updatedAt', 'deletedAt', 'revokedAt', 'insertedAt' ];
module.exports = [
{
tablename: apiname + '_private_keys',
idname: 'id',
indices: baseFields.concat([ 'kty', 'kid' ]),
},
{
tablename: apiname + '_codes',
idname: 'id',
indices: baseFields.concat([ 'code', 'expires' ]),
},
{
tablename: apiname + '_credentials',
idname: 'id',
// credentialId = ppid@iss
indices: baseFields.concat([ 'credentialId', 'sub', 'iss', 'typ' ]), // comment, recoveryCredential
},
{
tablename: apiname + '_credentials_profiles',
idname: 'id',
// credentialId = ppid@iss
indices: baseFields.concat([ 'credentialId', 'profileId' ]),
},
{ // TODO rename to profiles
tablename: apiname + '_accounts',
idname: 'username',
// make sub an ecdsa256 key
indices: baseFields.concat([ 'accountId', 'sub', 'iss', 'typ', 'privateKey' ]), // comment, recoveryNode
},
{
tablename: apiname + '_contact_nodes',
idname: 'id',
indices: baseFields.concat([ 'accountId', 'verifiedAt', 'lastVerifiedAt' ]),
},
{
tablename: apiname + '_jwks',
idname: 'id',
indices: baseFields.concat([ 'kty', 'kid', 'sub' ]),
},
{
tablename: apiname + '_grants',
idname: 'id',
indices: baseFields.concat([ 'sub', 'azp', 'azpSub', 'scope' ]),
}
];