~mdcallag/+junk/5.1-map

« back to all changes in this revision

Viewing changes to mysql-test/r/sp-security.result

  • Committer: msvensson at pilot
  • Date: 2007-04-24 09:11:45 UTC
  • mfrom: (2469.1.106)
  • Revision ID: sp1r-msvensson@pilot.blaudden-20070424091145-10463
Merge pilot.blaudden:/home/msvensson/mysql/my51-m-mysql_upgrade
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.1-maint

Show diffs side-by-side

added added

removed removed

Lines of Context:
8
8
drop procedure db1_secret.dummy;
9
9
use db1_secret;
10
10
create table t1 ( u varchar(64), i int );
 
11
insert into t1 values('test', 0);
11
12
create procedure stamp(i int)
12
13
insert into db1_secret.t1 values (user(), i);
13
14
show procedure status like 'stamp';
14
15
Db      Name    Type    Definer Modified        Created Security_type   Comment
15
16
db1_secret      stamp   PROCEDURE       root@localhost  0000-00-00 00:00:00     0000-00-00 00:00:00     DEFINER 
16
 
create function db() returns varchar(64) return database();
 
17
create function db() returns varchar(64)
 
18
begin
 
19
declare v varchar(64);
 
20
select u into v from t1 limit 1;
 
21
return v;
 
22
end|
17
23
show function status like 'db';
18
24
Db      Name    Type    Definer Modified        Created Security_type   Comment
19
25
db1_secret      db      FUNCTION        root@localhost  0000-00-00 00:00:00     0000-00-00 00:00:00     DEFINER 
20
26
call stamp(1);
21
27
select * from t1;
22
28
u       i
 
29
test    0
23
30
root@localhost  1
24
31
select db();
25
32
db()
26
 
db1_secret
 
33
test
27
34
grant execute on procedure db1_secret.stamp to user1@'%';
28
35
grant execute on function db1_secret.db to user1@'%';
29
36
grant execute on procedure db1_secret.stamp to ''@'%';
31
38
call db1_secret.stamp(2);
32
39
select db1_secret.db();
33
40
db1_secret.db()
34
 
db1_secret
 
41
test
35
42
select * from db1_secret.t1;
36
43
ERROR 42000: SELECT command denied to user 'user1'@'localhost' for table 't1'
37
44
create procedure db1_secret.dummy() begin end;
38
45
ERROR 42000: Access denied for user 'user1'@'localhost' to database 'db1_secret'
39
46
drop procedure db1_secret.dummy;
40
47
ERROR 42000: PROCEDURE db1_secret.dummy does not exist
 
48
drop procedure db1_secret.stamp;
 
49
ERROR 42000: alter routine command denied to user 'user1'@'localhost' for routine 'db1_secret.stamp'
 
50
drop function db1_secret.db;
 
51
ERROR 42000: alter routine command denied to user 'user1'@'localhost' for routine 'db1_secret.db'
41
52
call db1_secret.stamp(3);
42
53
select db1_secret.db();
43
54
db1_secret.db()
44
 
db1_secret
 
55
test
45
56
select * from db1_secret.t1;
46
57
ERROR 42000: SELECT command denied to user ''@'localhost' for table 't1'
47
58
create procedure db1_secret.dummy() begin end;
48
59
ERROR 42000: Access denied for user ''@'%' to database 'db1_secret'
49
60
drop procedure db1_secret.dummy;
50
61
ERROR 42000: PROCEDURE db1_secret.dummy does not exist
 
62
drop procedure db1_secret.stamp;
 
63
ERROR 42000: alter routine command denied to user ''@'%' for routine 'db1_secret.stamp'
 
64
drop function db1_secret.db;
 
65
ERROR 42000: alter routine command denied to user ''@'%' for routine 'db1_secret.db'
51
66
select * from t1;
52
67
u       i
 
68
test    0
53
69
root@localhost  1
54
70
user1@localhost 2
55
71
anon@localhost  3
64
80
call stamp(4);
65
81
select * from t1;
66
82
u       i
 
83
test    0
67
84
root@localhost  1
68
85
user1@localhost 2
69
86
anon@localhost  3
70
87
root@localhost  4
71
88
select db();
72
89
db()
73
 
db1_secret
 
90
test
74
91
call db1_secret.stamp(5);
75
 
ERROR 42000: Access denied for user 'user1'@'localhost' to database 'db1_secret'
 
92
ERROR 42000: INSERT command denied to user 'user1'@'localhost' for table 't1'
76
93
select db1_secret.db();
77
 
ERROR 42000: Access denied for user 'user1'@'localhost' to database 'db1_secret'
 
94
ERROR 42000: SELECT command denied to user 'user1'@'localhost' for table 't1'
78
95
call db1_secret.stamp(6);
79
 
ERROR 42000: Access denied for user ''@'%' to database 'db1_secret'
 
96
ERROR 42000: INSERT command denied to user ''@'localhost' for table 't1'
80
97
select db1_secret.db();
81
 
ERROR 42000: Access denied for user ''@'%' to database 'db1_secret'
 
98
ERROR 42000: SELECT command denied to user ''@'localhost' for table 't1'
82
99
drop database if exists db2;
83
100
create database db2;
84
101
use db2;