Using preserve permissions

Specify preserve permissions to perserve all explicitly granted or revoked permissions on an object.

For example, bill granted select permission of table bill_table to mark. mark then granted select permission on table bill_table to john. If the ownership of the table is then transferred to eric with preserve permissions specified, mark and john retain their permission of bill_table.

In the following example, the system security officer transfers the ownership of view bill.vw_author to eric while keeping all existing explicitly granted permissions.:

alter view bill.vw_author_in_ca modify owner eric
    preserve permissions

Implicit permissions are not preserved when preserve permissions is specified.

For example, bill owns table bill.encr_table which has encrypted columns and the restricted decrypt permission configure option is set to 1. If the system security officer explicitly granted decrypt permission on bill.encr_table to bill, bill has the permissions alter, delete, insert, references, select, and update which he accrued through his ownership. He also has decrypt permission which he accrued through explicit granting by the system security officer. After the system security officer transfers the ownership on bill.encr_table to eric with preserve permissions, bill loses all permissions on the table except the decrypt permission.

When preserve permissions is not specified, after the ownership transfer, the previous owner loses permissions on the object, that are implicitly accrued through ownership. The new implicitly accrues permissions by being given ownership of the object.

NoteFor permissions that cannot be accrued through ownership, such as decrypt permissions, the system security officer or database owner must explicit again grant permission of the objects to the new owner.