Infrastructure
  1. Infrastructure
  2. INFRA-4763

"Encryption failed" reported when trying to request password reset

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Fix Version/s: Initial Clearing
    • Component/s: Selfserve
    • Labels:
      None

      Description

      Not sure quite what has happened, but my SVN password seems to have stopped working.
      I can still login to people/minotaur with my current password (and with my key-pair)

      So I thought I would try resetting my password, however id.apache.org responds with:

      "Encryption failed"

      According to ldapsearch on people, I have got 2 public keys set up, so I would expect the reset to work.

        Activity

        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> You have two pgp fingerprints in LDAP. Encrypting to one of them failed because it has expired.
        Show
        #asfinfra IRC Bot added a comment - <danielsh> You have two pgp fingerprints in LDAP. Encrypting to one of them failed because it has expired.
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> The above is about the software bug. As to your account and whether or not your password works, please follow up directly by mail to root@.
        Show
        #asfinfra IRC Bot added a comment - <danielsh> The above is about the software bug. As to your account and whether or not your password works, please follow up directly by mail to root@.
        Hide
        Sebb added a comment -
        I left in the expired key, because there are products that will have been signed using it.

        Should I remove it (when I get access) ?

        [I will e-mail root about the password. I expect I have managed to lock the account.]
        Show
        Sebb added a comment - I left in the expired key, because there are products that will have been signed using it. Should I remove it (when I get access) ? [I will e-mail root about the password. I expect I have managed to lock the account.]
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> I'd be happy to accept a patch that attempts encryption to any of the PGP keys in the LDAP profile.
        Show
        #asfinfra IRC Bot added a comment - <danielsh> I'd be happy to accept a patch that attempts encryption to any of the PGP keys in the LDAP profile.
        Hide
        Sebb added a comment -
        Where is the current code to be found?
        Show
        Sebb added a comment - Where is the current code to be found?
        Hide
        Sebb added a comment -
        Show
        Sebb added a comment - The code seems to be at: https://svn.apache.org/repos/infra/infrastructure/selfserve/trunk
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> correct
        Show
        #asfinfra IRC Bot added a comment - <danielsh> correct
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> fixed on https://id.apache.org/staging/ , pleaqse confirm
        Show
        #asfinfra IRC Bot added a comment - <danielsh> fixed on https://id.apache.org/staging/ , pleaqse confirm
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> when you change your pgp fingerprints in LDAP you need to wait a few hours for p.a.o/keys/committer to be updated before you can use them.
        Show
        #asfinfra IRC Bot added a comment - <danielsh> when you change your pgp fingerprints in LDAP you need to wait a few hours for p.a.o/keys/committer to be updated before you can use them.
        Hide
        Sebb added a comment -
        Set account to have single expired key.

        Tried staging URL password reset, and I get:

        Invalid input: contact root@apache.org

        Same happens if I use a valid key and an invalid key or just a single valid key.

        However, it works if I delete all the keys.

        Note: given that the password reset sends the password reset link in clear if the user has not provided a gpg key, I would have thought that it should offer the option to send the link if the encryption fails.

        ==

        BTW, the page footer says: Copyright © 2011
        Show
        Sebb added a comment - Set account to have single expired key. Tried staging URL password reset, and I get: Invalid input: contact root@apache.org Same happens if I use a valid key and an invalid key or just a single valid key. However, it works if I delete all the keys. Note: given that the password reset sends the password reset link in clear if the user has not provided a gpg key, I would have thought that it should offer the option to send the link if the encryption fails. == BTW, the page footer says: Copyright © 2011
        Hide
        Sebb added a comment -
        Where is the time-lapse documented?
        It would be helpful to note this on the selfserve website, either as fixed text, or when updating the keys.

        I find it hard to understand why there is such a time-lapse; surely self-serve has direct access to LDAP?
        Why does it need to read from a file?
        Show
        Sebb added a comment - Where is the time-lapse documented? It would be helpful to note this on the selfserve website, either as fixed text, or when updating the keys. I find it hard to understand why there is such a time-lapse; surely self-serve has direct access to LDAP? Why does it need to read from a file?
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> the fingerprint in ldap is an index into the keys storage on minotaur. that means (a) no need to trust key servers, (b) no need to reimplement the key fetching by fingerprint logic. docs or code improvements welcome
        Show
        #asfinfra IRC Bot added a comment - <danielsh> the fingerprint in ldap is an index into the keys storage on minotaur. that means (a) no need to trust key servers, (b) no need to reimplement the key fetching by fingerprint logic. docs or code improvements welcome
        Hide
        Sebb added a comment -
        OK, I see.

        In which case, perhaps the self-serve application should send a message to the minotaur download process every time a PGP key is updated (which is unlikely to be very often). This would allow the key to be used sooner.
        Show
        Sebb added a comment - OK, I see. In which case, perhaps the self-serve application should send a message to the minotaur download process every time a PGP key is updated (which is unlikely to be very often). This would allow the key to be used sooner.
        Hide
        Sebb added a comment -
        Why does the staging site respond with "Invalid input" ?
        That seems like the user has input the id incorrectly, rather than a problem with the LDAP data (if that's what it is).
        I think that's more confusing than before.
        Show
        Sebb added a comment - Why does the staging site respond with "Invalid input" ? That seems like the user has input the id incorrectly, rather than a problem with the LDAP data (if that's what it is). I think that's more confusing than before.
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> please converge. are you +1 to merge staging->production, assuming s/Invalid Input/Internal Error/ ?
        Show
        #asfinfra IRC Bot added a comment - <danielsh> please converge. are you +1 to merge staging->production, assuming s/Invalid Input/Internal Error/ ?
        Hide
        Sebb added a comment -
        s/converge/confirm/?

        I've not been able to test the code yet with different mixes of valid and invalid PGP keys.

        However I don't think "Internal Error" is helpful either; that implies an coding bug, so -1 for that.

        ==

        If the user has no PGP key(s) defined, Selfserve currently sends a plaintext message with a reset link.

        If the user has defined at least one valid non-expired PGP key, then one should be used to encrypt the mail.

        Otherwise, Selfserve should behave as if no keys had been defined.
        Show
        Sebb added a comment - s/converge/confirm/? I've not been able to test the code yet with different mixes of valid and invalid PGP keys. However I don't think "Internal Error" is helpful either; that implies an coding bug, so -1 for that. == If the user has no PGP key(s) defined, Selfserve currently sends a plaintext message with a reset link. If the user has defined at least one valid non-expired PGP key, then one should be used to encrypt the mail. Otherwise, Selfserve should behave as if no keys had been defined.
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> "converge" is correct. what makes you think you can -1 code that you never touched a single line in?
        Show
        #asfinfra IRC Bot added a comment - <danielsh> "converge" is correct. what makes you think you can -1 code that you never touched a single line in?
        Hide
        Sebb added a comment -
        If "please converge." is correct, I don't understand what you are asking me to do.

        As to -1; you asked whether I was +1.
        I am not +1.
        I think the current change makes things worse, not better, so I responded with -1.
        Show
        Sebb added a comment - If "please converge." is correct, I don't understand what you are asking me to do. As to -1; you asked whether I was +1. I am not +1. I think the current change makes things worse, not better, so I responded with -1.
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> Does the code on staging handle correctly the 4 cases of (has/hasn't non-expired keys) times (has/hasn't expired keys)? Where "correctly" is "if there are keys encrypt to all non-expired keys; else plaintext"
        Show
        #asfinfra IRC Bot added a comment - <danielsh> Does the code on staging handle correctly the 4 cases of (has/hasn't non-expired keys) times (has/hasn't expired keys)? Where "correctly" is "if there are keys encrypt to all non-expired keys; else plaintext"
        Hide
        Sebb added a comment -
        Last time I tried, staging reported "Internal Error".
        As far as I can tell, the code in the SVN staging area has not been updated since then.
        Show
        Sebb added a comment - Last time I tried, staging reported "Internal Error". As far as I can tell, the code in the SVN staging area has not been updated since then.
        Hide
        #asfinfra IRC Bot added a comment -
        <danielsh> Closing. If you disagree start a thread.
        Show
        #asfinfra IRC Bot added a comment - <danielsh> Closing. If you disagree start a thread.

          People

          • Assignee:
            Unassigned
            Reporter:
            Sebb
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development