本文整理汇总了Golang中common.User类的典型用法代码示例。如果您正苦于以下问题:Golang User类的具体用法?Golang User怎么用?Golang User使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了User类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: AuthorizeDeleteClusterAdmin
func (self *Permissions) AuthorizeDeleteClusterAdmin(user common.User) (ok bool, err common.AuthorizationError) {
if !user.IsClusterAdmin() {
return false, common.NewAuthorizationError("Insufficient permissions to delete cluster admin")
}
return true, ""
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:7,代码来源:permissions.go
示例2: ChangeDbUserPermissions
func (self *CoordinatorImpl) ChangeDbUserPermissions(requester common.User, db, username, readPermissions, writePermissions string) error {
if !requester.IsClusterAdmin() && !requester.IsDbAdmin(db) {
return common.NewAuthorizationError("Insufficient permissions")
}
return self.raftServer.ChangeDbUserPermissions(db, username, readPermissions, writePermissions)
}
开发者ID:qz267,项目名称:influxdb,代码行数:7,代码来源:coordinator.go
示例3: AuthorizeDeleteQuery
func (self *Permissions) AuthorizeDeleteQuery(user common.User, db string) (ok bool, err common.AuthorizationError) {
if !user.IsDbAdmin(db) {
return false, common.NewAuthorizationError("Insufficient permission to write to %s", db)
}
return true, ""
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:7,代码来源:permissions.go
示例4: ListClusterAdmins
func (self *CoordinatorImpl) ListClusterAdmins(requester common.User) ([]string, error) {
if !requester.IsClusterAdmin() {
return nil, common.NewAuthorizationError("Insufficient permissions")
}
return self.clusterConfiguration.GetClusterAdmins(), nil
}
开发者ID:qz267,项目名称:influxdb,代码行数:7,代码来源:coordinator.go
示例5: WriteSeriesData
func (self *CoordinatorImpl) WriteSeriesData(user common.User, db string, series []*protocol.Series) error {
// make sure that the db exist
if !self.clusterConfiguration.DatabasesExists(db) {
return fmt.Errorf("Database %s doesn't exist", db)
}
for _, s := range series {
seriesName := s.GetName()
if user.HasWriteAccess(seriesName) {
continue
}
return common.NewAuthorizationError("User %s doesn't have write permissions for %s", user.GetName(), seriesName)
}
err := self.CommitSeriesData(db, series, false)
if err != nil {
return err
}
for _, s := range series {
self.ProcessContinuousQueries(db, s)
}
return err
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:25,代码来源:coordinator.go
示例6: DropDatabase
func (self *CoordinatorImpl) DropDatabase(user common.User, db string) error {
if !user.IsClusterAdmin() {
return common.NewAuthorizationError("Insufficient permission to drop database")
}
if self.clusterConfiguration.IsSingleServer() {
if err := self.datastore.DropDatabase(db); err != nil {
return err
}
} else {
servers, _ := self.clusterConfiguration.GetServersToMakeQueryTo(&db)
for _, server := range servers {
if err := self.handleDropDatabase(server.server, db); err != nil {
return err
}
}
}
// don't delete the metadata, we need the replication factor to be
// able to replicate the request properly
if err := self.raftServer.DropDatabase(db); err != nil {
return err
}
return nil
}
开发者ID:schmurfy,项目名称:influxdb,代码行数:26,代码来源:coordinator.go
示例7: ForceCompaction
func (self *CoordinatorImpl) ForceCompaction(user common.User) error {
if !user.IsClusterAdmin() {
return fmt.Errorf("Insufficient permissions to force a log compaction")
}
return self.raftServer.ForceLogCompaction()
}
开发者ID:qz267,项目名称:influxdb,代码行数:7,代码来源:coordinator.go
示例8: ExecuteQuery
func (self *LevelDbDatastore) ExecuteQuery(user common.User, database string,
query *parser.SelectQuery, yield func(*protocol.Series) error,
ringFilter func(database, series *string, time *int64) bool) error {
seriesAndColumns := query.GetReferencedColumns()
hasAccess := true
for series, columns := range seriesAndColumns {
if regex, ok := series.GetCompiledRegex(); ok {
seriesNames := self.getSeriesForDbAndRegex(database, regex)
for _, name := range seriesNames {
if !user.HasReadAccess(name) {
hasAccess = false
continue
}
err := self.executeQueryForSeries(database, name, columns, query, yield, ringFilter)
if err != nil {
return err
}
}
} else {
if !user.HasReadAccess(series.Name) {
hasAccess = false
continue
}
err := self.executeQueryForSeries(database, series.Name, columns, query, yield, ringFilter)
if err != nil {
return err
}
}
}
if !hasAccess {
return fmt.Errorf("You don't have permission to access one or more time series")
}
return nil
}
开发者ID:rn2dy,项目名称:influxdb,代码行数:35,代码来源:leveldb_datastore.go
示例9: AuthorizeDropDatabase
func (self *Permissions) AuthorizeDropDatabase(user common.User) (ok bool, err common.AuthorizationError) {
if !user.IsClusterAdmin() {
return false, common.NewAuthorizationError("Insufficient permissions to drop database")
}
return true, ""
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:7,代码来源:permissions.go
示例10: ListDbUsers
func (self *CoordinatorImpl) ListDbUsers(requester common.User, db string) ([]common.User, error) {
if !requester.IsClusterAdmin() && !requester.IsDbAdmin(db) {
return nil, common.NewAuthorizationError("Insufficient permissions")
}
return self.clusterConfiguration.GetDbUsers(db), nil
}
开发者ID:qz267,项目名称:influxdb,代码行数:7,代码来源:coordinator.go
示例11: AuthorizeDropSeries
func (self *Permissions) AuthorizeDropSeries(user common.User, db string, seriesName string) (ok bool, err common.AuthorizationError) {
if !user.IsDbAdmin(db) && !user.HasWriteAccess(seriesName) {
return false, common.NewAuthorizationError("Insufficient permissions to drop series")
}
return true, ""
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:7,代码来源:permissions.go
示例12: AuthorizeListContinuousQueries
func (self *Permissions) AuthorizeListContinuousQueries(user common.User, db string) (ok bool, err common.AuthorizationError) {
if !user.IsDbAdmin(db) {
return false, common.NewAuthorizationError("Insufficient permissions to list continuous queries")
}
return true, ""
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:7,代码来源:permissions.go
示例13: AuthorizeChangeDbUserPermissions
func (self *Permissions) AuthorizeChangeDbUserPermissions(user common.User, db string) (ok bool, err common.AuthorizationError) {
if !user.IsDbAdmin(db) {
return false, common.NewAuthorizationError("Insufficient permissions to change db user permissions on %s", db)
}
return true, ""
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:7,代码来源:permissions.go
示例14: AuthorizeGrantDbUserAdmin
func (self *Permissions) AuthorizeGrantDbUserAdmin(user common.User, db string) (ok bool, err common.AuthorizationError) {
if !user.IsDbAdmin(db) {
return false, common.NewAuthorizationError("Insufficient permissions to grant db user admin privileges on %s", db)
}
return true, ""
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:7,代码来源:permissions.go
示例15: DropDatabase
func (self *CoordinatorImpl) DropDatabase(user common.User, db string) error {
if !user.IsClusterAdmin() {
return fmt.Errorf("Insufficient permission to drop database")
}
return self.raftServer.DropDatabase(db)
}
开发者ID:nvdnkpr,项目名称:influxdb,代码行数:7,代码来源:coordinator.go
示例16: ListContinuousQueries
func (self *CoordinatorImpl) ListContinuousQueries(user common.User, db string) ([]*protocol.Series, error) {
if !user.IsClusterAdmin() && !user.IsDbAdmin(db) {
return nil, common.NewAuthorizationError("Insufficient permissions to list continuous queries")
}
queries := self.clusterConfiguration.GetContinuousQueries(db)
points := []*protocol.Point{}
for _, query := range queries {
queryId := int64(query.Id)
queryString := query.Query
timestamp := time.Now().Unix()
sequenceNumber := uint64(1)
points = append(points, &protocol.Point{
Values: []*protocol.FieldValue{
&protocol.FieldValue{Int64Value: &queryId},
&protocol.FieldValue{StringValue: &queryString},
},
Timestamp: ×tamp,
SequenceNumber: &sequenceNumber,
})
}
seriesName := "continuous queries"
series := []*protocol.Series{&protocol.Series{
Name: &seriesName,
Fields: []string{"id", "query"},
Points: points,
}}
return series, nil
}
开发者ID:qz267,项目名称:influxdb,代码行数:30,代码来源:coordinator.go
示例17: CreateDbUser
func (self *CoordinatorImpl) CreateDbUser(requester common.User, db, username, password string) error {
if !requester.IsClusterAdmin() && !requester.IsDbAdmin(db) {
return common.NewAuthorizationError("Insufficient permissions")
}
if username == "" {
return fmt.Errorf("Username cannot be empty")
}
if !isValidName(username) {
return fmt.Errorf("%s isn't a valid username", username)
}
hash, err := cluster.HashPassword(password)
if err != nil {
return err
}
self.CreateDatabase(requester, db, uint8(1)) // ignore the error since the db may exist
if self.clusterConfiguration.GetDbUser(db, username) != nil {
return fmt.Errorf("User %s already exists", username)
}
matchers := []*cluster.Matcher{&cluster.Matcher{true, ".*"}}
log.Debug("(raft:%s) Creating user %s:%s", self.raftServer.(*RaftServer).raftServer.Name(), db, username)
return self.raftServer.SaveDbUser(&cluster.DbUser{cluster.CommonUser{
Name: username,
Hash: string(hash),
CacheKey: db + "%" + username,
}, db, matchers, matchers, false})
}
开发者ID:kennylixi,项目名称:influxdb,代码行数:30,代码来源:coordinator.go
示例18: AuthorizeChangeClusterAdminPassword
func (self *Permissions) AuthorizeChangeClusterAdminPassword(user common.User) (ok bool, err common.AuthorizationError) {
if !user.IsClusterAdmin() {
return false, common.NewAuthorizationError("Insufficient permissions to change cluster admin password")
}
return true, ""
}
开发者ID:hanshenu,项目名称:influxdb,代码行数:7,代码来源:permissions.go
示例19: ListDatabases
func (self *CoordinatorImpl) ListDatabases(user common.User) ([]string, error) {
if !user.IsClusterAdmin() {
return nil, fmt.Errorf("Insufficient permission to list databases")
}
dbs := self.clusterConfiguration.GetDatabases()
return dbs, nil
}
开发者ID:nvdnkpr,项目名称:influxdb,代码行数:8,代码来源:coordinator.go
示例20: CreateSubscription
func (self *CoordinatorImpl) CreateSubscription(requester common.User, subscription *cluster.Subscription) error {
if !requester.IsClusterAdmin() {
return common.NewAuthorizationError("Insufficient permissions")
}
return self.raftServer.SaveSubscription(subscription)
return nil
}
开发者ID:rabdureh,项目名称:influx-attempt,代码行数:8,代码来源:coordinator.go
注:本文中的common.User类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论