Report of PGcon2010

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

 



At May 19-21, PostgreSQL community held an annual conference called
PGcon2010 at Ottawa, Canada.
  http://www.pgcon.org/2010/

I also attended the conference and developer meeting (invitation only)
to have a talk about development of SE-PostgreSQL. So, I'd like to
report what we discussed here for SELinux community also.

Background
-----------
Last two years, I've joined to the development cycle of PostgreSQL to
integrate features to support SELinux. But it had not been progressed
due to some reasons; patch size is too large to commit at once, no
person (except for me) familiar with both of SELinux and PostgreSQL,
and so on.

At last winter, Stephen Frost suggested me to refactor existing PG's
security checks look like LSM/XACE, prior to SELinux code.
In another day, they invited Joshua Brindle and David P.Quigley to
BWPUG (Baltimore/Washington PostgreSQL Users Group) meeting to talk
with SELinux folks, although I didn't here.
  http://wiki.postgresql.org/wiki/SEPostgreSQL_Review_at_the_BWPUG
It seems to me they consented the design like LSM/XACE works well.
Then, I also agreed to develop it with this approach in the next
development cycle.

Discussion in PGcon2010
-----------------------
All major contributors were here, such as developer summit.

I introduced my idea at the developer meeting.

It tries to refactor the existing PG security check routines into
an separate function (E.g, check_relation_create(...)) which also
performs as an entry point of an external security provider.

In addition, it also tries PostgreSQL to support a feature to assign
a certain text label on database objects. It shall be available for
all the label based MAC, not only SELinux.

As long as PostgreSQL provides security hooks and security labeling,
it is not necessary SE-PostgreSQL feature is statically linked.
So, I also proposed it is an option that SELinux specific logic shall
be installed using a loadable module. It enables to reduce the burden
to review unfamiliar code from PostgreSQL community, and it also
means SELinux community (mainly, I and NEC, of course) takes on the
duty of maintenance of the module.

I was suggested that refactoring of the existing PG security checks
should be separated into more-and-more small unit to make its change
set more obvious, and we should start up with minimum functionalities.
I agreed with the approach. We decided to add a security hook to
acquire control on DML permission checks at first, because DML checks
are the hottest code in PgSQL rather than any other DDLs.

In addition, we agreed it is necessary to support security labeling
features for various kind of label based MAC features. Apart from
the security hooks, it shall be developed.

Development plan
-----------------
Now I'm tackling to add the first security hook at the routine which
applies the existing PG permissions checks on DML statements.
If and when it will be available, the upcoming SE-PgSQL module will
be able to provide a minimum demonstration.

In parallel, I'm also working to develop the SE-PgSQL module being
suitable for the security hooks in the upstream PostgreSQL.

The architecture of SE-PgSQL feature was significantly changed,
but I believe we are on the best way. It will make happy not only
SELinux users, but Smack or others also.

Stephen Frost also noticed me yesterday that BWPUG plans to have
a meeting about "SE-PostgreSQL Status and Review" at the Augast,
so they want to invite some of SELinux folks.

Thanks,
-- 
KaiGai Kohei <kaigai@xxxxxxxxxxxxx>

--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@xxxxxxxxxxxxx with
the words "unsubscribe selinux" without quotes as the message.


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

  Powered by Linux