Skip to content
Snippets Groups Projects
Commit 2ec8a065 authored by Alexander Olofsson's avatar Alexander Olofsson
Browse files

skadereg: Add a read-only user

parent 1dc52e29
No related branches found
No related tags found
No related merge requests found
...@@ -10,6 +10,12 @@ ...@@ -10,6 +10,12 @@
# [*mysql_backup_password*] # [*mysql_backup_password*]
# The password for the user used for MySQL backups # The password for the user used for MySQL backups
# #
# [*skadereg_ro_password*]
# The password used for the read-only user
#
# [*skadereg_ro_user*]
# The username used for the read-only user
#
# Authors # Authors
# ------- # -------
# #
...@@ -24,6 +30,8 @@ ...@@ -24,6 +30,8 @@
class skadereg( class skadereg(
String $mysql_password, String $mysql_password,
String $mysql_backup_password, String $mysql_backup_password,
String $skadereg_ro_password,
String $skadereg_ro_user = 'skadereg_ro',
){ ){
::users::liu_user { ::users::liu_user {
'andal699': 'andal699':
...@@ -147,14 +155,22 @@ class skadereg( ...@@ -147,14 +155,22 @@ class skadereg(
subscribe => Vcsrepo['/var/www/skadereg'], subscribe => Vcsrepo['/var/www/skadereg'],
} }
$db_name = 'homestead'
class { '::mysql::server': class { '::mysql::server':
root_password => $mysql_password, root_password => $mysql_password,
databases => { databases => {
'homestead' => { $db_name => {
ensure => present, ensure => present,
charset => 'utf8', charset => 'utf8',
}, },
}, },
users => {
"${skadereg_ro_user}@%" => {
ensure => present,
password_hash => mysql_password($skadereg_ro_password),
},
},
grants => { grants => {
'root@%/*.*' => { 'root@%/*.*' => {
ensure => present, ensure => present,
...@@ -172,6 +188,15 @@ class skadereg( ...@@ -172,6 +188,15 @@ class skadereg(
}, },
} }
['entries', 'guardian_confirmations', 'users'].each |String $table| {
mysql_grant { "${skadereg_ro_user}@%/${db_name}.${table}":
ensure => present,
privileges => ['SELECT'],
table => "${db_name}.${table}",
user => "${skadereg_ro_user}@%",
}
}
class { '::mysql::server::backup': class { '::mysql::server::backup':
backupuser => 'backupuser', backupuser => 'backupuser',
backuppassword => $mysql_backup_password, backuppassword => $mysql_backup_password,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment