Ucybcryp creates encrypted password not recognized or throws error
search cancel

Ucybcryp creates encrypted password not recognized or throws error

book

Article ID: 84645

calendar_today

Updated On:

Products

CA Automic Workload Automation - Automation Engine CA Automic One Automation

Issue/Introduction

Ucybcryp creates encrypted password not recognized correctly by Automation Engine or Utilities

Error Message :
SQL Server : U00003590 UCUDB - DB error: 'SQLDriverConnect', 'ERROR ', '28000', 'Login failed for user 'uc4'.'
Oracle : U00003592 UCUDB - Status: '' Native error: '1017' Msg: 'ORA-01017: invalid username/password; logon denied'

The program ucybcryp creates an encrypted password that is not decoded correctly by the Automation Engine or by the Utilities.

The component using this password (i.e. Utility, AE server or CallAPI) returns an invalid credentials error, then writes a forced trace and crashes.

Example

  • Change the password of the AE DB user to 'te^st'
  • Encode the password with the following command: UCYBCRYP[.exe] -p -n te^st
    • Notice the following message no command line standard out:
      More?
      More?
  • Copy the encrypted password into the ini file of a component that connects to the AE DB (a utility or the DB server itself), then start this component.

(Note that the result of ucybcryp, with the same password, is still always different.)

Using some characters such as ampersand, &, may also return something like:

'pwdafterampersand' is not recognized as an internal or external command, operable program or batch file.

Results

Expected : the component should run with no issues.

Actual : the connection to the database fails with an 'invalid login' error.

Environment

OS: All Windows

Cause

Cause type: By design


Root Cause: This is not related to the encryption tool. The issue is related to the escape character (^), which is interpreted by the windows shell (cmd.exe).

Resolution

There can be 2 causes:

1 - The two leading hyphens of the encrypted password (stored in Password.ucc) should not be copy / pasted, but rather typed in manually inside the ini file. If they are copied the password will not be correctly recognized.

2 - The password contains a '^' (carrot) which is wrongly interpreted by the windows "shell". This prevents the encryption tool from working properly.

Possible workarounds:
1 - Use OS escape characters such as ^, for example, the password: before&after&beforecaret^  could be escaped with: before^&after^&beforecaret^^  and it will put in the correct string

2 - In order to generate a password that is recognized, use Powershell to start the encryption tool.

Example: the password 'te^st' is encrypted

Other characters that are special characters or reserved characters and known to cause issues are commas and slashes ("," or "/")

 
Fix Status: No Fix

Additional Information

Workaround :
N/A