Coder Social home page Coder Social logo

keycloak-password-encryption's Introduction

keycloak-password-encryption

This project provide an :

  • Encryption plugin for keycloak that : Read encrypted password and decrypt them.
    • There is in this project a keycloak-password-encryption-js/ which provide a custom keycloak them for encrypting user passwords in the login, registration and forgotten passwords pages.
  • A command line tool, for encrypting passwords that may be sent to keycloak using the public key. This cli tool can be used for automations.

keycloak-password-encryption's People

Contributors

francis-pouatcha avatar igrex avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

keycloak-password-encryption's Issues

Keycloak 6 support

Getting errors while running agist keycloak 6 server

Exception in thread "main" java.lang.RuntimeException: java.text.ParseException: Unexpected type of JSON object member with key "x5c"
--
  | at de.adorsys.keycloak.password.encryption.cli.util.KeycloakPasswordEncrypt.encryptPassword(KeycloakPasswordEncrypt.java:23)
  | at de.adorsys.keycloak.password.encryption.cli.Main.printEncryptedPassword(Main.java:56)
  | at de.adorsys.keycloak.password.encryption.cli.Main.main(Main.java:43)
  | Caused by: java.text.ParseException: Unexpected type of JSON object member with key "x5c"
  | at com.nimbusds.jose.util.JSONObjectUtils.getGeneric(JSONObjectUtils.java:132)
  | at com.nimbusds.jose.util.JSONObjectUtils.getJSONArray(JSONObjectUtils.java:285)
  | at com.nimbusds.jose.jwk.JWKMetadata.parseX509CertChain(JWKMetadata.java:196)
  | at com.nimbusds.jose.jwk.RSAKey.parse(RSAKey.java:2055)
  | at com.nimbusds.jose.jwk.JWK.parse(JWK.java:496)
  | at de.adorsys.keycloak.password.encryption.cli.util.KeycloakHelper.fromSignToEnc(KeycloakHelper.java:22)
  | at de.adorsys.keycloak.password.encryption.cli.util.KeycloakPasswordEncrypt.encryptPasswordWithJwe(KeycloakPasswordEncrypt.java:36)
  | at de.adorsys.keycloak.password.encryption.cli.util.KeycloakPasswordEncrypt.encryptPassword(KeycloakPasswordEncrypt.java:21)
  | ... 2 more

JSON to test:

{
  "keys": [
    {
      "kid": "SjlShFEwbwtG2rpNa0G90Tm1u_DibUw7VATy9qtcsb8",
      "kty": "RSA",
      "alg": "RS256",
      "use": "sig",
      "n": "6mmVGQl3ZPO_M1pJ8v5SNu_dC0InddVKMVAmwLpjG6ufY09pXNNtPymsN8LQfdFsakNwcknrS1HH1F5S3RmJsV3NpvsZKJATvHz2wSNTy7KQ3ntaDhWKuM53_eDF1_wDNtykXtK7XDmIfRtLZ_X7V78R4MG53uXE4dCd_o3PDF5ezRe8CYxvloDGHw1RaOJ3Ws8yHW-YrFwcSlgUfV7z7i24x96A4nogFSDkKNk2TLeBmmvqxUSYbcCa5vIRR1J-a8v6k6B_lwFdSoV74iwbf6maCgME1cQ-fqPd8mzzWmtnOEzm22-VcNuQgyEgcJWvthSEaCZSk3He_X1p4N3DnQ",
      "e": "AQAB",
      "x5c": [
        "MIICmzCCAYMCBgFqT1SlgjANBgkqhkiG9w0BAQsFADARMQ8wDQYDVQQDDAZtYXN0ZXIwHhcNMTkwNDI0MTIzMDA4WhcNMjkwNDI0MTIzMTQ4WjARMQ8wDQYDVQQDDAZtYXN0ZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDqaZUZCXdk878zWkny/lI2790LQid11UoxUCbAumMbq59jT2lc020/Kaw3wtB90WxqQ3BySetLUcfUXlLdGYmxXc2m+xkokBO8fPbBI1PLspDee1oOFYq4znf94MXX/AM23KRe0rtcOYh9G0tn9ftXvxHgwbne5cTh0J3+jc8MXl7NF7wJjG+WgMYfDVFo4ndazzIdb5isXBxKWBR9XvPuLbjH3oDieiAVIOQo2TZMt4Gaa+rFRJhtwJrm8hFHUn5ry/qToH+XAV1KhXviLBt/qZoKAwTVxD5+o93ybPNaa2c4TObbb5Vw25CDISBwla+2FIRoJlKTcd79fWng3cOdAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAKIJm0jMCATu3t/RUXlLzc8J7PvmN+1ShN6y9lc2TsBi8BU3+3vAWmN8d/AZrhXe45B6361SMlm2TkOQFF3j7lwsCPlHs84c6mGFLi14+cY25xGfVU2gCmGsqejhVaxYEhyzziv6mH2sNrRg33sZQLfmAul3lQfU6jwBOlzxdLj3GFmfGtAIlQgbB1U9iHMOYrK7bXpl9vXs7Nhy+LD3wNpXV4J47jt2oGHgzUthdLEHK5/MIzrj4Dfg+7DjlWyOdadCqjHnmkB2xQUBlC5pK+UfBeWJ0nhiZSnFluygvBabswtzanaZy+W2B1RrE9Kqh1W3Cf9AfmcObZkVkFLvDSo="
      ],
      "x5t": "lmJfXM03dpvGtQ-EKmMf5pcrntk",
      "x5t#S256": "B3zQXR23C1Mo2kTux-x6WnjPlwBERM-8XJIWUCn8Wpk"
    }
  ]
}

Need documentation for setup decryption on server side

I have set up the encryption mechanism with the help of javascript plugin. But I haven't find the solution to set up the java provider for the decryption mechanism. As a javascript, I don't have knowledge about java setup and working.

Please provide the documentation or steps to integrate with Keycloak.

Thanks in advance.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.