PostgreSQL 8.2.3 Documentation - createuser - echoed command

Started by Halley Pacheco de Oliveiraabout 19 years ago2 messagesdocs
Jump to latest
#1Halley Pacheco de Oliveira
halleypo@yahoo.com.br

In the createuser command page is written:

To create the user joe as a superuser, and assign a password immediately:

$ createuser -P -s -e joe
Enter password for new role: xyzzy
Enter it again: xyzzy
CREATE ROLE joe PASSWORD 'xyzzy' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;
CREATE ROLE

In the above example, the new password isn't actually echoed when typed, but we show what was typed for clarity. However the password will appear in the echoed command, as illustrated — so you don't want to use -e when assigning a password, if anyone else can see your screen.

But it is not always the truth.

When I use

$ createuser -P -s -N -e joe

I get:

Enter password for new role: xyzzy
Enter it again: xyzzy
CREATE ROLE joe PASSWORD 'xyzzy' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;
CREATE ROLE

(same as in the documentation)

But when I use

$ createuser -P -s -E -e joe

(or don't use -N or -E) I get:

CREATE ROLE joe ENCRYPTED PASSWORD 'md5b5f5ba1a423792b526f799ae4eb3d59e' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;

(the password is shown encrypted)

The last two examples were executed using a "createuser (PostgreSQL) 8.2.0" local.

But when I execute the createuser command from a remote machine using:

# createuser --version
createuser (PostgreSQL) 8.1.4

# createuser -h Kubuntu -U sistemas -P -s -E -e joe

I get:

CREATE ROLE joe ENCRYPTED PASSWORD 'xyzzy' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;

(same as in the documentation, but different from the createuser 8.2.0 local)

I would like to know the reason of the difference. Is it being caused by the different versions of createuser?

The text is the same in the PostgreSQL 8.1.8 Documentation and in the PostgreSQL 8.2.3 Documentation, but it seems to me that the createuser behaviour is different in these versions.

Thanks,
Halley

__________________________________________________
Fale com seus amigos de graça com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/

#2Bruce Momjian
bruce@momjian.us
In reply to: Halley Pacheco de Oliveira (#1)
Re: PostgreSQL 8.2.3 Documentation - createuser - echoed command

The -E/-N options control how the password is stored in the server, and
that is what you are seeing in different ENCRYPTED PASSWORD entries.

Generally, you should never use -N.

---------------------------------------------------------------------------

Halley Pacheco de Oliveira wrote:

In the createuser command page is written:

To create the user joe as a superuser, and assign a password immediately:

$ createuser -P -s -e joe
Enter password for new role: xyzzy
Enter it again: xyzzy
CREATE ROLE joe PASSWORD 'xyzzy' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;
CREATE ROLE

In the above example, the new password isn't actually echoed when typed, but we show what was typed for clarity. However the password will appear in the echoed command, as illustrated ? so you don't want to use -e when assigning a password, if anyone else can see your screen.

But it is not always the truth.

When I use

$ createuser -P -s -N -e joe

I get:

Enter password for new role: xyzzy
Enter it again: xyzzy
CREATE ROLE joe PASSWORD 'xyzzy' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;
CREATE ROLE

(same as in the documentation)

But when I use

$ createuser -P -s -E -e joe

(or don't use -N or -E) I get:

CREATE ROLE joe ENCRYPTED PASSWORD 'md5b5f5ba1a423792b526f799ae4eb3d59e' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;

(the password is shown encrypted)

The last two examples were executed using a "createuser (PostgreSQL) 8.2.0" local.

But when I execute the createuser command from a remote machine using:

# createuser --version
createuser (PostgreSQL) 8.1.4

# createuser -h Kubuntu -U sistemas -P -s -E -e joe

I get:

CREATE ROLE joe ENCRYPTED PASSWORD 'xyzzy' SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN;

(same as in the documentation, but different from the createuser 8.2.0 local)

I would like to know the reason of the difference. Is it being caused by the different versions of createuser?

The text is the same in the PostgreSQL 8.1.8 Documentation and in the PostgreSQL 8.2.3 Documentation, but it seems to me that the createuser behaviour is different in these versions.

Thanks,
Halley

__________________________________________________
Fale com seus amigos de gra?a com o novo Yahoo! Messenger
http://br.messenger.yahoo.com/

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://www.enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +