console/model/rbac/role.go

23 lines
1.1 KiB
Go

package rbac
import "infini.sh/framework/core/orm"
type Role struct {
orm.ORMObjectBase
Name string `json:"name" elastic_mapping:"name:{type:keyword}"`
Description string `json:"description" elastic_mapping:"description:{type:text}"`
RoleType string `json:"type" elastic_mapping:"type:{type:keyword}"`
Permission interface{} `json:"permission" elastic_mapping:"permission:{type:object}"`
BuiltIn bool `json:"builtin" elastic_mapping:"builtin:{type:boolean}"` //是否内置
}
type ConsolePermission struct {
ID string `json:"id" elastic_mapping:"id:{type:keyword}"`
Name string `json:"name" elastic_mapping:"name:{type:keyword}"`
}
type ElasticsearchPermission struct {
Cluster []string `json:"cluster" elastic_mapping:"cluster:{type:object}"`
Index []string `json:"index" elastic_mapping:"index:{type:object}"`
ClusterPrivilege []string `json:"cluster_privilege" elastic_mapping:"cluster_privilege:{type:object}"`
IndexPrivilege []string `json:"index_privilege" elastic_mapping:"index_privilege:{type:object}"`
}