Обсуждение: [pgjdbc/pgjdbc] befea1: Add SCRAM-SHA-256 support (#842)

Поиск
Список
Период
Сортировка

[pgjdbc/pgjdbc] befea1: Add SCRAM-SHA-256 support (#842)

От
Álvaro Hernández Tortosa
Дата:
  Branch: refs/heads/master
  Home:   https://github.com/pgjdbc/pgjdbc
  Commit: befea18d153dda7814daef4e036d3f5daf8de1e5
      https://github.com/pgjdbc/pgjdbc/commit/befea18d153dda7814daef4e036d3f5daf8de1e5
  Author: Álvaro Hernández Tortosa <aht@8kdata.com>
  Date:   2017-11-21 (Tue, 21 Nov 2017)

  Changed paths:
    M .travis.yml
    M pgjdbc/pom.xml
    M pgjdbc/src/main/java/org/postgresql/core/v3/ConnectionFactoryImpl.java
    A pgjdbc/src/main/java/org/postgresql/jre8/sasl/ScramAuthenticator.java

  Log Message:
  -----------
  Add SCRAM-SHA-256 support (#842)

* Add SCRAM-SHA-256 support

PostgreSQL 10 comes with SCRAM-SHA-256 support. This commit introduces
support for it.

Work is based on an external dependency, the SCRAM client library:

    https://github.com/ongres/scram/

which is now imported as a dependency.

TODO:
    - SCRAM client library will be improved, on its own.
      Particularly, StringPrep support needs to be added. Final
      version of pgjdbc will depend on v1.0
    - Testing
    - Probably macros to avoid this Java8-only code propagating to
      Java < 8 versions of the driver

* Prepare Java8-only code to be excluded for jre<=8

Actually implemented via macros by JDBC < 4.2.

* On HEAD all testing connections will use SCRAM

* Better error message for drivers w/o SCRAM support

* added configuration for shaded jar
remove any extraneous classes picked up in the shade plugin



Re: [pgjdbc/pgjdbc] befea1: Add SCRAM-SHA-256 support (#842)

От
Michael Paquier
Дата:
On Tue, Nov 21, 2017 at 8:42 PM, Álvaro Hernández Tortosa
<aht@8kdata.com> wrote:
> TODO:
>         - SCRAM client library will be improved, on its own.
>           Particularly, StringPrep support needs to be added. Final
>           version of pgjdbc will depend on v1.0

This could be a problem if passwords use non-ASCII characters. The
backend respects that.

> Actually implemented via macros by JDBC < 4.2.
>
> * On HEAD all testing connections will use SCRAM
>
> * Better error message for drivers w/o SCRAM support
>
> * added configuration for shaded jar
> remove any extraneous classes picked up in the shade plugin

Yeah!
--
Michael


Re: [pgjdbc/pgjdbc] befea1: Add SCRAM-SHA-256 support (#842)

От
Álvaro Hernández Tortosa
Дата:

On 21/11/17 18:00, Michael Paquier wrote:
> On Tue, Nov 21, 2017 at 8:42 PM, Álvaro Hernández Tortosa
> <aht@8kdata.com> wrote:
>> TODO:
>>          - SCRAM client library will be improved, on its own.
>>            Particularly, StringPrep support needs to be added. Final
>>            version of pgjdbc will depend on v1.0
> This could be a problem if passwords use non-ASCII characters. The
> backend respects that.
    PRs are welcome! https://github.com/ongres/scram/     ^_____^
    It is on my TODO list....


    Álvaro

-- 

Álvaro Hernández Tortosa


-----------
<8K>data