%PDF- %PDF-
| Direktori : /proc/self/root/proc/self/root/usr/lib/python2.7/site-packages/salt/states/ |
| Current File : //proc/self/root/proc/self/root/usr/lib/python2.7/site-packages/salt/states/postgres_privileges.pyo |
�
���^c
@@ st d Z d d l m Z m Z m Z d � Z d d d d d d d d d d � Z d d d d d d d d d � Z d S( u$
Management of PostgreSQL Privileges
===================================
The postgres_privileges module is used to manage Postgres privileges.
Privileges can be set as either absent or present.
Privileges can be set on the following database object types:
* database
* schema
* tablespace
* table
* sequence
* language
* group
Setting the grant option is supported as well.
.. versionadded:: 2016.3.0
.. code-block:: yaml
baruwa:
postgres_privileges.present:
- object_name: awl
- object_type: table
- privileges:
- SELECT
- INSERT
- DELETE
- grant_option: False
- prepend: public
- maintenance_db: testdb
.. code-block:: yaml
andrew:
postgres_privileges.present:
- object_name: admins
- object_type: group
- grant_option: False
- maintenance_db: testdb
.. code-block:: yaml
baruwa:
postgres_privileges.absent:
- object_name: awl
- object_type: table
- privileges:
- SELECT
- INSERT
- DELETE
- prepend: public
- maintenance_db: testdb
.. code-block:: yaml
andrew:
postgres_privileges.absent:
- object_name: admins
- object_type: group
- maintenance_db: testdb
i ( t absolute_importt unicode_literalst print_functionc C@ s d t k r t d f St S( u5
Only load if the postgres module is present
u postgres.privileges_grantuF Unable to load postgres module. Make sure `postgres.bins_dir` is set.( t __salt__t Falset True( ( ( sC /usr/lib/python2.7/site-packages/salt/states/postgres_privileges.pyt __virtual__F s
u publicc C@ sH i | d 6i d 6t d 6d d 6} | r7 d j | � n d } i | d 6| d 6| d 6| d
6| d 6| d 6| d
6|
d 6| d 6}
t d | | | |
� sD| d k r� | n | } t d r� d | d <d j | | � | d <| St d | | | |
� r!d j | | � | d <d | d | <qDd j | | � | d <t | d <n | S( u�
Grant the requested privilege(s) on the specified object to a role
name
Name of the role to which privileges should be granted
object_name
Name of the object on which the grant is to be performed.
'ALL' may be used for objects of type 'table' or 'sequence'.
object_type
The object type, which can be one of the following:
- table
- sequence
- schema
- tablespace
- language
- database
- group
- function
View permissions should specify `object_type: table`.
privileges
List of privileges to grant, from the list below:
- INSERT
- CREATE
- TRUNCATE
- CONNECT
- TRIGGER
- SELECT
- USAGE
- TEMPORARY
- UPDATE
- EXECUTE
- REFERENCES
- DELETE
- ALL
:note: privileges should not be set when granting group membership
grant_option
If grant_option is set to True, the recipient of the privilege can
in turn grant it to others
prepend
Table and Sequence object types live under a schema so this should be
provided if the object is not under the default `public` schema
maintenance_db
The name of the database in which the language is to be installed
user
System user all operations should be performed on behalf of
db_user
database username if different from config or default
db_password
user password if any password for a specified user
db_host
Database host if different from config or default
db_port
Database port if different from config or default
u nameu changesu resultu* The requested privilege(s) are already setu commentu ,u
privilegesu grant_optionu prependu maintenance_dbu runasu hostu useru portu passwordu postgres.has_privilegesu groupu testu2 The privilege(s): {0} are set to be granted to {1}u postgres.privileges_grantu. The privilege(s): {0} have been granted to {1}u Presentu( Failed to grant privilege(s): {0} to {1}N( R t joint NoneR t __opts__t formatR ( t namet object_namet object_typet
privilegest grant_optiont prependt maintenance_dbt usert db_passwordt db_hostt db_portt db_usert rett kwargst _privs( ( sC /usr/lib/python2.7/site-packages/salt/states/postgres_privileges.pyt presentO sB Q
c C@ sA i | d 6i d 6t d 6d d 6} | r7 d j | � n d } i | d 6| d 6| d 6| d
6| d 6|
d 6| d
6| d 6} t d | | | | � r=| d k r� | n | }
t d r� d | d <d j |
| � | d <| St d | | | | � rd j |
| � | d <d | d | <q=d j |
| � | d <t | d <n | S( u�
Revoke the requested privilege(s) on the specificed object(s)
name
Name of the role whose privileges should be revoked
object_name
Name of the object on which the revoke is to be performed
object_type
The object type, which can be one of the following:
- table
- sequence
- schema
- tablespace
- language
- database
- group
- function
View permissions should specify `object_type: table`.
privileges
Comma separated list of privileges to revoke, from the list below:
- INSERT
- CREATE
- TRUNCATE
- CONNECT
- TRIGGER
- SELECT
- USAGE
- TEMPORARY
- UPDATE
- EXECUTE
- REFERENCES
- DELETE
- ALL
:note: privileges should not be set when revoking group membership
prepend
Table and Sequence object types live under a schema so this should be
provided if the object is not under the default `public` schema
maintenance_db
The name of the database in which the language is to be installed
user
System user all operations should be performed on behalf of
db_user
database username if different from config or default
db_password
user password if any password for a specified user
db_host
Database host if different from config or default
db_port
Database port if different from config or default
u nameu changesu resultu; The requested privilege(s) are not set so cannot be revokedu commentu ,u
privilegesu prependu maintenance_dbu runasu hostu useru portu passwordu postgres.has_privilegesu groupu testu4 The privilege(s): {0} are set to be revoked from {1}u postgres.privileges_revokeu0 The privilege(s): {0} have been revoked from {1}u Absentu+ Failed to revoke privilege(s): {0} from {1}N( R R R R R R
R ( R R R
R R R R R R R R R R R ( ( sC /usr/lib/python2.7/site-packages/salt/states/postgres_privileges.pyt absent� s@ K
N( t __doc__t
__future__R R R R R R R ( ( ( sC /usr/lib/python2.7/site-packages/salt/states/postgres_privileges.pyt <module>B s&