Tenho vários scripts do Powershell que precisam gravar dados em um banco de dados Oracle. Não quero codificar as credenciais de login.
Ao conectar-me ao SQL Server, confio na autenticação do Windows e no Active Directory, mas isso não é uma opção aqui porque o banco de dados Oracle está em uma rede separada (Unix). Os scripts serão executados em um SQL Server via SQL Server Agent.
Espero encontrar uma estratégia que seja segura e minimize o trabalho envolvido na hora de alterar a senha.
Sua melhor opção seria criar as senhas em um arquivo (ou tabela) usando ConvertTo-SecureString e ConcertFrom-SecureString . Você precisará utilizar os parâmetros "-Key" ou "-SecureKey" para permitir que a conta de serviço com o SQL Server Agent leia a senha em seu script.
A melhor redação que encontrei para esse processo é encontrada aqui e aqui . Quais os trechos de código de interesse dos artigos:
A premissa geral é que você pode usar o primeiro processo para salvar suas senhas em um arquivo ou tabela. Em seguida, no trabalho do SQL Agent, leia a senha de maneira semi-segura. Não é o mais seguro, porque se alguém encontrar a chave, obviamente também poderá ler a senha.
Além disso, no final, você provavelmente o passará como texto simples para o destino, a menos que aceite o uso de um objeto PSCredential.