Files
mstore/app/descr/account.go
T
2026-02-07 14:10:54 +02:00

48 lines
1.5 KiB
Go

/*
* Copyright 2026 Oleg Borodin <onborodin@gmail.com>
*
* This work is published and licensed under a Creative Commons
* Attribution-NonCommercial-NoDerivatives 4.0 International License.
*
* Distribution of this work is permitted, but commercial use and
* modifications are strictly prohibited.
*/
package descr
const (
GrantModifyUsers = "modifyUsers"
GrantModifyDatabase = "modifyDatabase"
GrantModifyArtefact = "modifyArtefact"
GrantModifyDummy = "modifyDummy"
)
type Account struct {
ID string `json:"id" db:"id"`
Username string `json:"username" db:"username"`
Passhash string `json:"passhash" db:"passhash"`
Disabled bool `json:"disabled" db:"disabled"`
CreatedAt string `json:"createdAt" db:"created_at"`
UpdatedAt string `json:"updatedAt,omitempty" db:"updated_at"`
}
type Grant struct {
ID string `json:"id" db:"id"`
AccountID string `json:"accountID" db:"account_id"`
Operation string `json:"operation" db:"operation"`
CreatedAt string `json:"createdAt" db:"created_at"`
}
type GrantShortDescr struct {
Operation string `json:"operation"`
CreatedAt string `json:"createdAt"`
}
type AccountShortDescr struct {
Username string `json:"username"`
Disabled bool `json:"disabled"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt,omitempty"`
Grants []GrantShortDescr `json:"grants"`
}