Instalação do Postgresql, evite criar usuário "postgres"

1

Eu tenho uma restrição, que posso usar apenas um usuário em um SUSE Linux Enterprise Server 11.

Agora, preciso instalar o PostgreSQL. É possível evitar de alguma forma a criação automática do usuário linux "postgres" pelo assistente de instalação do PostgreSQL e usar o usuário atual como um administrador de banco de dados?

Explicação adicional sobre as restrições estranhas:

Precisamos hospedar nosso software no servidor da empresa de TI, subsidiária do grande banco. Eles têm regras bastante rígidas, devido ao armazenamento e processamento dos dados confidenciais do usuário. Então, uma das regras, é que podemos ter apenas um usuário lá e tudo deve ser instalado sob este usuário (com direitos sudo). Inicialmente, o servidor tem apenas o software mais básico (e o PostgreSQL não está incluído).

O Docker não é uma alternativa neste caso.

    
por Bi0max 06.09.2018 / 10:03

2 respostas

3

Eu acho que suas exigências parecem ser interpretadas por alguém bastante incompetente.

Eu diria que um usuário é uma pessoa e cada pessoa que precisa ter acesso de administrador ao servidor de banco de dados que você precisa um usuário pessoal conta , pois contas compartilhadas são más ; você precisa ser capaz de responsabilizar pessoas individuais por suas ações.

Os serviços não pertencem a uma única pessoa, mas são executados na conta de serviço e nas contas de serviço, como a conta postgres, não são as mesmas contas de usuário. Para começar, as contas de pessoas fazem parte do processo de segurança que revoga o acesso para pessoas que abandonaram e inativos ...
Você não deseja excluir o banco de dados de folha de pagamento quando Alice do RH que o instalou deixa a empresa, certo?

Quando você não quiser usar os pacotes RPM de ações do SuSe para postgres (que também criará a conta de serviço postgres), crie seus próprios e forneça esses para o departamento de TI, em vez de fazer uma instalação manual.

Dessa forma, as contas de usuário do administrador do banco de dados não precisarão de permissões excessivas para executar um instalador, você não precisará de uma grande pegada com compiladores e ferramentas de construção instaladas em servidores (de produção), terá uma lista clara de dependências e o pacote pode criar a conta de serviço necessária (ou usar uma existente) e configurar todas as permissões de uma forma muito mais fácil de repetir e auditar do que executar scripts do instalador.

Crie um perfil sudo adequado para as pessoas que gerenciarão o servidor de banco de dados Posgres e permitirão que os administradores executem o subconjunto limitado de comandos que um administrador do Postgres precisaria executar como usuário postgres, ou seja, psql , service postgres [stop|start|restart] , pg*

Mas para responder à sua pergunta real:

How avoid the automatic creation of "postgres" linux user by PostgreSQL's installation wizard?

Não execute o assistente, mas construa a partir da origem , use o método correto opções para selecionar um diretório de instalação acessível ao usuário que está executando a compilação e nenhuma outra conta de usuário ou privilégios elevados são necessários.

./configure --prefix=/path/to/dir [--other-options]
make
make install
    
por 06.09.2018 / 11:23
0

De acordo com a versão resumida do manual de instalação , você precisa criar manualmente um usuário ao instalar a partir de fontes, então su para a conta do usuário e iniciar o PostgreSQL. Apenas ignore estas etapas e você executará o servidor como sua própria conta de usuário local.

Se você instalar o pacote fornecido pelo SUSE, poderá excluir manualmente a conta de usuário que criou e alterar os arquivos de configuração que iniciam o daemon no momento da inicialização para não usar essa conta de usuário, mas a sua. Infelizmente, não tenho o SUSE Linux em execução, por isso não posso fornecer detalhes sobre isso.

    
por 06.09.2018 / 10:25