SPOPS provides a nice interface to wrapping your database up in objects. However, learning how to use SPOPS from its lacking documentation can require re-reading the documentation many times, then resorting to reading the source code, and perhaps experimenting a bit. Once you figure it out, its pretty great.
SPOP(S) security portion is mediocre. It works -ok- for small sites and databases with simple sets of relationships. As soon as you have a sizeable database, however, it generates soo much database traffic that your application can become incredibly unresponsive and slow while waiting for the hundreds of database queries per single access finish.
If you need a database abstraction tool, and you need a security tool, use SPOPS for the former, and find some other way of dealing with the latter.