57 lines
1.9 KiB
Go
57 lines
1.9 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 (
|
|
AnonimousUsername = "anonymous"
|
|
AnonymousID = "10000000-0000-0000-0000-000000000001"
|
|
ServerUsername = "server"
|
|
ServerID = "10000000-0000-0000-0000-000000000002"
|
|
|
|
InitUsername = "mstore"
|
|
InitID = "10000000-0000-0000-0000-000000000005"
|
|
)
|
|
|
|
type Grant struct {
|
|
ID string `json:"id" db:"id"`
|
|
AccountID string `json:"accountID" db:"account_id"`
|
|
Right string `json:"right" db:"right"`
|
|
Pattern string `json:"pattern" db:"pattern"`
|
|
CreatedAt string `json:"createdAt" db:"created_at"`
|
|
UpdatedAt string `json:"updatedAt" db:"updated_at"`
|
|
CreatedBy string `json:"createdBy" db:"created_by"`
|
|
UpdatedBy string `json:"updatedBy" db:"updated_by"`
|
|
}
|
|
|
|
type GrantShort struct {
|
|
Right string `json:"right" db:"right"`
|
|
Pattern string `json:"pattern" db:"pattern"`
|
|
CreatedAt string `json:"createdAt" db:"created_at"`
|
|
UpdatedAt string `json:"updatedAt" db:"updated_at"`
|
|
CreatedBy string `json:"createdBy" db:"created_by"`
|
|
UpdatedBy string `json:"updatedBy" db:"updated_by"`
|
|
}
|
|
|
|
const (
|
|
// Accounts
|
|
RightReadAccounts = "readAccounts" // GetAccount, ListAccounts
|
|
RightWriteAccounts = "writeAccounts" // CreateAccount, UpdateAccount, DeleteAccount
|
|
// Frants
|
|
RightReadGrants = "readGrants" // Like account operation
|
|
RightWriteGrants = "writeGrants"
|
|
// Files
|
|
RightWriteFiles = "writeFiles" // FileInfo, GetFile, ListFiles
|
|
RightReadFiles = "readFiles" // PutFile, DeleteFile
|
|
// Images: manifests, layers
|
|
RightReadImages = "readImages" // ManifestInfo, GetManifest, BlobInfo, GetBlob
|
|
RightWriteImages = "writeImages" // other opearion
|
|
)
|