Skip to main content

Hello,

I need a configure screen that contains also password and store them to DB.

I set the TextMode to “Password” to hide it.

    <px:PXTextEdit ID="edPassword" runat="server" DataField="Password" TextMode="Password" />

 

But the web browser (Chrome and Firefox) fills-in the login password into this field.

Is there a possibility to prevent that in code?

 

Thanks,

Michael

Hi @mhaps,

That is browser behavior, which is storing the password values in the browser caches and when you open the screen it is populating on the screen.

If you wanted to provide security to those fields you can use the Acumatica default Encryption/Decryption technique, and this is the standard approach.

The below example might help you if you use default Acumatica encryption/decryption.

 

DAC field should be decorated with this attribute for encryption “rPXRSACryptString(IsUnicode = true)]”

DAC Field:

 #region AuthToken

        PXRSACryptString(IsUnicode = true)]
        ]PXDefault()]
        lPXUIField(DisplayName = "Auth Token")]
        public virtual string AuthToken { get; set; }
        public abstract class authToken : IBqlField { }

        #endregion
Below is the code for decrypting the values “RowSelected Event”



 protected virtual void DACNAME_RowSelected(PXCache sender, PXRowSelectedEventArgs e)
        {
            DACNAME row = e.Row as DACNAME;
            if (row != null)
            {
                PXRSACryptStringAttribute.SetDecrypted<DACName.authToken>(sender, row, true);

            }

       }

 

 


hi @mhaps 

If you don’t need encrypt the data you can have it in simple way like below example.

This will not hold any data on the load.

        PXDBString(100, IsUnicode = true, InputMask = "")]
        PXUIField(DisplayName = "Bearer Token", Required = true)]
        public virtual string BearerToken { get; set; }
        public abstract class bearerToken : BqlString.Field<bearerToken> { }


Hope this may helps you.


Reply