mirror of
https://github.com/dolthub/dolt.git
synced 2026-05-04 03:11:52 -05:00
mv priv check to var
This commit is contained in:
@@ -70,16 +70,8 @@ func doltBackup(ctx *sql.Context, args ...string) (sql.RowIter, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if sqlserver.RunningInServerMode() {
|
||||
// TODO(elianddb): DoltgreSQL needs an auth handler for stored procedures, i.e. AuthType_CALL, but for now we use
|
||||
// this. dolt_backup already requires admin privilege on GMS due to its potentially destructive nature.
|
||||
privileges, counter := ctx.GetPrivilegeSet()
|
||||
if counter == 0 || !privileges.Has(sql.PrivilegeType_Super) {
|
||||
return nil, sql.ErrPrivilegeCheckFailed.New(ctx.Session.Client().User)
|
||||
}
|
||||
if apr.ContainsAny(cli.AwsParams...) {
|
||||
return nil, fmt.Errorf("AWS parameters are unavailable when running in server mode")
|
||||
}
|
||||
if sqlserver.RunningInServerMode() && apr.ContainsAny(cli.AwsParams...) {
|
||||
return nil, fmt.Errorf("AWS parameters are unavailable when running in server mode")
|
||||
}
|
||||
|
||||
if apr.NArg() == 0 || (apr.NArg() == 1 && apr.Contains(cli.VerboseFlag)) {
|
||||
@@ -397,3 +389,13 @@ func errDoltBackupUsage(funcParam string, requiredParams, optionalParams []strin
|
||||
|
||||
return errors.New(builder.String())
|
||||
}
|
||||
|
||||
var UserHasSuperAccess = func(ctx *sql.Context) (bool, error) {
|
||||
// TODO(elianddb): DoltgreSQL needs an auth handler for stored procedures, i.e. AuthType_CALL, but for now we use
|
||||
// this. dolt_backup already requires admin privilege on GMS due to its potentially destructive nature.
|
||||
privileges, counter := ctx.GetPrivilegeSet()
|
||||
if counter == 0 || !privileges.Has(sql.PrivilegeType_Super) {
|
||||
return false, sql.ErrPrivilegeCheckFailed.New(ctx.Session.Client().User)
|
||||
}
|
||||
return true, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user