Skip to content

Instantly share code, notes, and snippets.

@Satys
Satys / url_permission.js
Last active December 22, 2020 04:41
url_permission.js
{
'class/start': [
'start_class'
],
'class/end': [
'end_class'
],
'assignments/submit': [
'submit_assignment'
],
//pseudo mysql query
policy_id = query(`SELECT policy_id from Role_Policy_Map where role_id=${role_id}`)
// it returns policy_id = 1
//pseudo mysql query
permissions_status = query(`SELECT permissions_status from Policy where id=${policy_id}`)
// it returns permissions_status = "0010"
//pseudo mysql query
all_permissions = query("SELECT id, name FROM Permissions")
// it returns all_permissions = [
[1, "start_class"],
[2, "end_class"],
[3, "submit_assignment"],
[4, "evaluate_assignment"]
]
allowed_permissions = []
// pseudo code to evaluate allowed_permissions
// read url_permission.js file
url_permission = parse(open("url_permission.js"))
permissions_to_be_checked = url_permission["assignments/submit"]
// it returns permissions_to_be_checked = ["submit_assignment"]
for (i=0 -> permissions_to_be_checked.length) {
if (permissions_to_be_checked[i] in allowed_permissions) {
return {
status: true,
message: "Authorized"
}
}
}
return {
status: false,
inotifywait --quiet --monitor --event CLOSE_WRITE /etc/rsyslog.d/rsyslog.conf \
| while read change; do
echo "[DEBUG] - `(date +%F\ %T)` - rsyslog daemon reload start"
done
if [ -f /var/run/rsyslogd.pid ] && kill -TERM $(cat /var/run/rsyslogd.pid); then
/usr/sbin/rsyslogd -f /etc/rsyslog.d/rsyslog.conf
else
/usr/sbin/rsyslogd -f /etc/rsyslog.d/rsyslog.conf
fi
echo "[DEBUG] - `(date +%F\ %T)` - rsyslog daemon reload complete"
@Satys
Satys / Rsyslog live reloader
Created June 15, 2021 05:19
Rsyslog live reloader
inotifywait --quiet --monitor --event CLOSE_WRITE /etc/rsyslog.d/rsyslog.conf \
| while read change; do
echo "[DEBUG] - `(date +%F\ %T)` - rsyslog daemon reload start"
if [ -f /var/run/rsyslogd.pid ] && kill -TERM $(cat /var/run/rsyslogd.pid); then
/usr/sbin/rsyslogd -f /etc/rsyslog.d/rsyslog.conf
else
/usr/sbin/rsyslogd -f /etc/rsyslog.d/rsyslog.conf
fi
echo "[DEBUG] - `(date +%F\ %T)` - rsyslog daemon reload complete"
done
@Satys
Satys / DOCKERFILE
Last active October 11, 2021 07:11
FROM safesecurity/rsyslog:8.2012.0
RUN apk add inotify-tools
# Rsyslog Configuration file
COPY --chown=root:root rsyslog.conf /etc/rsyslog.conf
RUN chmod 0644 /etc/rsyslog.conf
# Copy and configure Entrypoint.sh
COPY entrypoint.sh /entrypoint.sh