Wednesday, March 15, 2006

SecurePasswordTextBox - A SecureString TextBox

Glavs Blog - SecurePasswordTextBox update

"Since there has been so much interest in the SecurePasswordTextBox control (see my previous post here and here ), I thought I would take the time to iron out the bugs...
 
...

All is now well. Go grab it from
herehttp://www.theglavs.com/DownloadItem.aspx?FileID=46

For those unaware, its a Windows Forms TextBox control that uses the .Net V2 SecureString class to store its contents. Basically, you now have a UI control that allows directly entry into this secure string class and makes it useable from a windows UI perspective. (See my
previous post for a full explanation.) "

This is pretty cool. I want to play with SecureString in the context of a textbox so the timing on this is great...



(via Dan Sellers’s WebLog - Ops!!! SecurePasswordTextBox Update now Available)



Technorati Tags: , , ,

2 comments:

  1. First, I want to compliment you on doing such a great job coding this control. This is so handy!

    However, I found an accessibility issue. You cannot "tab" out of the control using the keyboard. I think I found the problem. I am not sure if this breaks anything else by adding this code (I haven't tested it extensively), but I wanted to share it in case it helps somebody.

    After this code in the IsInputKey method in SecureTextBox.cs...


    if (allowedToDelete)
    {
    if (this.SelectionLength == _secureEntry.Length)
    {
    _secureEntry.Clear();
    }
    else if (this.SelectionLength > 0)
    {
    for (int i = 0; i < this.SelectionLength; i++)
    _secureEntry.RemoveAt(this.SelectionStart);

    }
    else
    {
    if ((keyData & Keys.Delete) == Keys.Delete && this.SelectionStart < this.Text.Length)
    _secureEntry.RemoveAt(this.SelectionStart);
    }

    }


    ... add the following code ...


    else
    {
    result = base.IsInputKey(keyData);
    }

    ReplyDelete
  2. I wish I could take credit for it, but Glav, http://weblogs.asp.net/user/Profile.aspx?UserID=2471, http://www.theglavs.com/ is the the control's author and deserves all the credit.

    The only thing I can take credit for is digging it and re-blogging it. :)

    Still thank you very much for taking the time to post this code snip. I hope, as you do, that it will help anyone else who finds this control via my post...

    Plus I plan on using your snip when I work with my copy of this control too... so doubly thank you!

    Again, thank you and take care,
    Greg

    ReplyDelete

NOTE: Anonymous Commenting has been turned off for a while... The comment spammers are just killing me...

ALL comments are moderated. I will review every comment before it will appear on the blog.

Your comment WILL NOT APPEAR UNTIL I approve it. This may take some hours...

I reserve, and will use, the right to not approve ANY comment for ANY reason. I will not usually, but if it's off topic, spam (or even close to spam-like), inflammatory, mean, etc, etc, well... then...

Please see my comment policy for more information if you are interested.

Thanks,
Greg

PS. I am proactively moderating comments. Your comment WILL NOT APPEAR UNTIL I approve it. This may take some hours...