Re: postgresql policy

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ted,

Fantastic, and certainly, makes sense.

Please let me know if there's anything I can do to help.

Thanks!

* Ted Toth (txtoth@xxxxxxxxx) wrote:
> Absolutely I'll share it when I'm happy with it.
> 
> Ted
> 
> On Thu, May 28, 2015 at 2:41 PM, Stephen Frost <sfrost@xxxxxxxxxxx> wrote:
> > Ted,
> >
> > Any chance that module will be released under the PostgreSQL license
> > (BSD-like)?  We'd certainly like to see what those are doing and I do
> > wonder if we could use the hooks instead, if the SELinux community feels
> > that's a worthwhile approach.
> >
> > Thanks!
> >
> > * Ted Toth (txtoth@xxxxxxxxx) wrote:
> >> Sorry these are in a module I've developed.
> >>
> >> Ted
> >>
> >> On Thu, May 28, 2015 at 2:28 PM, Stephen Smalley <sds@xxxxxxxxxxxxx> wrote:
> >> > On 05/28/2015 03:10 PM, Ted Toth wrote:
> >> >> Unfortunately it is the latter. Here's an example of what you can do:
> >> >>
> >> >> CREATE TABLE reports (
> >> >>     id integer NOT NULL,
> >> >>     report json,
> >> >>     message_id integer NOT NULL,
> >> >>     location geometry(Point),
> >> >>         security_label text DEFAULT sepostgres_getpeercon()
> >> >> );
> >> >>
> >> >> CREATE POLICY
> >> >>   check_report_insert_selinux ON reports FOR INSERT
> >> >>   WITH CHECK (sepostgres_check_row_perm(reports.security_label,
> >> >> sepostgres_getpeercon(), 'insert'));
> >> >>
> >> >> CREATE POLICY
> >> >>   check_report_delete_selinux ON reports FOR DELETE
> >> >>   USING (sepostgres_check_row_perm(reports.security_label,
> >> >> sepostgres_getpeercon(), 'delete'));
> >> >>
> >> >> CREATE POLICY
> >> >>   check_report_update_selinux ON reports FOR UPDATE
> >> >>   USING (sepostgres_check_row_perm(reports.security_label,
> >> >> sepostgres_getpeercon(), 'update'))
> >> >>   WITH CHECK (sepostgres_check_row_perm(reports.security_label,
> >> >> sepostgres_getpeercon(), 'update'));
> >> >>
> >> >> CREATE POLICY
> >> >>   check_report_select_selinux ON reports FOR SELECT
> >> >>   USING (sepostgres_check_row_perm(sepostgres_getpeercon(),
> >> >> reports.security_label, 'select'));
> >> >>
> >> >> I'm hoping that between DAC, postgresql DAC, selinux policy and RLS
> >> >> policy we can get something that's secure enough for our purposes.
> >> >
> >> > Pardon my ignorance, but are the sepostgres_*() functions something you
> >> > have implemented or something in the existing sepgsl or postgres code?
> >> _______________________________________________
> >> Selinux mailing list
> >> Selinux@xxxxxxxxxxxxx
> >> To unsubscribe, send email to Selinux-leave@xxxxxxxxxxxxx.
> >> To get help, send an email containing "help" to Selinux-request@xxxxxxxxxxxxx.

Attachment: signature.asc
Description: Digital signature

_______________________________________________
Selinux mailing list
Selinux@xxxxxxxxxxxxx
To unsubscribe, send email to Selinux-leave@xxxxxxxxxxxxx.
To get help, send an email containing "help" to Selinux-request@xxxxxxxxxxxxx.

[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux