mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2024-11-21 16:27:39 -06:00
Fixed an issue where Non-admin user is unable to view shared server created using service. Fixes #6075
This commit is contained in:
parent
18e4b30634
commit
1a756efe82
@ -33,6 +33,7 @@ Bug fixes
|
||||
| `Issue #6061 <https://redmine.postgresql.org/issues/6061>`_ - Fixed extra parentheses issue around joins for Views.
|
||||
| `Issue #6065 <https://redmine.postgresql.org/issues/6065>`_ - Fixed accessibility issues in schema diff module.
|
||||
| `Issue #6069 <https://redmine.postgresql.org/issues/6069>`_ - Fixed an issue on refreshing files in Query Tool.
|
||||
| `Issue #6075 <https://redmine.postgresql.org/issues/6075>`_ - Fixed an issue where Non-admin user is unable to view shared server created using service.
|
||||
| `Issue #6077 <https://redmine.postgresql.org/issues/6077>`_ - Fixed accessibility issues in various dialogs.
|
||||
| `Issue #6084 <https://redmine.postgresql.org/issues/6084>`_ - Fixed TypeError exception in schema diff when selected any identical object.
|
||||
| `Issue #6096 <https://redmine.postgresql.org/issues/6096>`_ - Updated deployment documentation, refer correctly to uWSGI where Gunicorn had been referenced.
|
||||
|
97
web/migrations/versions/a39bd015b644_.py
Normal file
97
web/migrations/versions/a39bd015b644_.py
Normal file
@ -0,0 +1,97 @@
|
||||
|
||||
"""empty message
|
||||
|
||||
Revision ID: a39bd015b644
|
||||
Revises: 81c7ffeffeee
|
||||
Create Date: 2021-01-12 15:46:49.283021
|
||||
|
||||
"""
|
||||
from pgadmin.model import db
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = 'a39bd015b644'
|
||||
down_revision = '81c7ffeffeee'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# Rename older table to save previous data
|
||||
db.engine.execute("ALTER TABLE sharedserver RENAME TO sharedserver_old")
|
||||
|
||||
# Create new table with removed not null constraints for port column.
|
||||
db.engine.execute("""
|
||||
CREATE TABLE sharedserver (
|
||||
id INTEGER NOT NULL,
|
||||
user_id INTEGER NOT NULL,
|
||||
server_owner VARCHAR(64),
|
||||
servergroup_id INTEGER NOT NULL,
|
||||
name VARCHAR(128) NOT NULL,
|
||||
host VARCHAR(128),
|
||||
port INTEGER,
|
||||
maintenance_db VARCHAR(64),
|
||||
username VARCHAR(64),
|
||||
password VARCHAR(64),
|
||||
role VARCHAR(64),
|
||||
ssl_mode VARCHAR(16) NOT NULL CHECK(ssl_mode IN
|
||||
( 'allow' , 'prefer' , 'require' , 'disable' ,
|
||||
'verify-ca' , 'verify-full' )
|
||||
),
|
||||
comment VARCHAR(1024),
|
||||
discovery_id VARCHAR(128),
|
||||
hostaddr TEXT(1024),
|
||||
db_res TEXT,
|
||||
passfile TEXT,
|
||||
sslcert TEXT,
|
||||
sslkey TEXT,
|
||||
sslrootcert TEXT,
|
||||
sslcrl TEXT,
|
||||
sslcompression INTEGER DEFAULT 0,
|
||||
bgcolor TEXT(10),
|
||||
fgcolor TEXT(10),
|
||||
service TEXT,
|
||||
use_ssh_tunnel INTEGER DEFAULT 0,
|
||||
tunnel_host TEXT,
|
||||
tunnel_port TEXT,
|
||||
tunnel_username TEXT,
|
||||
tunnel_authentication INTEGER DEFAULT 0,
|
||||
tunnel_identity_file TEXT,
|
||||
shared BOOLEAN NOT NULL,
|
||||
save_password BOOLEAN NOT NULL,
|
||||
tunnel_password VARCHAR(64),
|
||||
connect_timeout INTEGER ,
|
||||
PRIMARY KEY(id),
|
||||
FOREIGN KEY(user_id) REFERENCES user(id),
|
||||
FOREIGN KEY(servergroup_id) REFERENCES servergroup(id)
|
||||
);
|
||||
""")
|
||||
|
||||
# Copy old data again into table.
|
||||
db.engine.execute("""
|
||||
INSERT INTO sharedserver (
|
||||
id, user_id, server_owner, servergroup_id, name, host, port,
|
||||
maintenance_db, username, password, role, ssl_mode, comment,
|
||||
discovery_id, hostaddr, db_res, passfile, sslcert, sslkey,
|
||||
sslrootcert, sslcrl, sslcompression, bgcolor, fgcolor, service,
|
||||
use_ssh_tunnel, tunnel_host, tunnel_port, tunnel_username,
|
||||
tunnel_authentication, tunnel_identity_file, shared, save_password,
|
||||
tunnel_password, connect_timeout
|
||||
|
||||
) SELECT
|
||||
id, user_id, server_owner, servergroup_id, name, host, port,
|
||||
maintenance_db, username, password, role, ssl_mode, comment,
|
||||
discovery_id, hostaddr, db_res, passfile, sslcert, sslkey,
|
||||
sslrootcert, sslcrl, sslcompression, bgcolor, fgcolor, service,
|
||||
use_ssh_tunnel, tunnel_host, tunnel_port, tunnel_username,
|
||||
tunnel_authentication, tunnel_identity_file, shared, save_password,
|
||||
tunnel_password, connect_timeout
|
||||
FROM sharedserver_old""")
|
||||
|
||||
# Drop older table.
|
||||
db.engine.execute("DROP TABLE sharedserver_old")
|
||||
|
||||
|
||||
def downgrade():
|
||||
# pgAdmin only upgrades, downgrade not implemented.
|
||||
pass
|
@ -379,8 +379,7 @@ class SharedServer(db.Model):
|
||||
hostaddr = db.Column(db.String(128), nullable=True)
|
||||
port = db.Column(
|
||||
db.Integer(),
|
||||
db.CheckConstraint('port >= 1 AND port <= 65534'),
|
||||
nullable=False)
|
||||
nullable=True)
|
||||
maintenance_db = db.Column(db.String(64), nullable=True)
|
||||
username = db.Column(db.String(64), nullable=False)
|
||||
password = db.Column(db.String(64), nullable=True)
|
||||
|
Loading…
Reference in New Issue
Block a user