Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow to specify different auth mechanisms #7988

Closed
locker opened this issue Nov 30, 2022 · 0 comments · Fixed by #8046
Closed

Allow to specify different auth mechanisms #7988

locker opened this issue Nov 30, 2022 · 0 comments · Fixed by #8046
Assignees
Labels
2.11 Target is 2.11 and all newer release/master branches feature A new functionality

Comments

@locker
Copy link
Member

locker commented Nov 30, 2022

We need to provide the configuration API for specifying the authentication method:

  • Add a new dynamic box.cfg configuration option auth_type that will specify how authentication data is generated for new passwords. Default and the only allowed value is 'chap-sha1'.
  • Add a new net.box connection option auth_type that specifies the auth mechanism to use after establishing the connection.

#7986 should be done first.

@locker locker added the feature A new functionality label Nov 30, 2022
@locker locker self-assigned this Nov 30, 2022
@locker locker added the 2.11 Target is 2.11 and all newer release/master branches label Dec 9, 2022
locker added a commit to locker/tarantool that referenced this issue Dec 12, 2022
This commit adds a new box configuration option - box.cfg.auth_type.
The option takes an authentication method name (string) that will be
used by box.schema.user.passwd to generate user authentication data.

The only authentication method supported by Community Edition (CE)
is 'chap-sha1' so we don't document or announce this feature in CE.
More methods and tests will be added to Enterprise Edition (EE).

Part of tarantool#7988

NO_DOC=ee
NO_CHANGELOG=ee
locker added a commit to locker/tarantool that referenced this issue Dec 12, 2022
This commit adds a new option for net.box.connect - auth_type.
The option takes an authentication method name (string) that will
be used to authenticate the client on connect. Like user name and
password, the new option may also be passed via uri parameters, e.g.

  net.connect('host:port', {
      user = 'user',
      password = 'password',
      auth_type = 'chap-sha1',
  })
  net.connect('user:password@host:port?auth_type=chap-sha1')

The only authentication method supported by Community Edition (CE)
is 'chap-sha1' so we don't document or announce this feature in CE.
More methods and tests will be added to Enterprise Edition (EE).

Part of tarantool#7988

NO_DOC=ee
NO_CHANGELOG=ee
locker added a commit to locker/tarantool that referenced this issue Dec 12, 2022
The authentication method can be specified via the 'auth_type' uri
parameter, e.g.

  box.cfg({replication = 'user:password@host:port?auth_type=chap-sha1'})

The only authentication method supported by Community Edition (CE)
is 'chap-sha1' so we don't document or announce this feature in CE.
More methods and tests will be added to Enterprise Edition (EE).

Part of tarantool#7988

NO_DOC=ee
NO_CHANGELOG=ee
locker added a commit that referenced this issue Dec 13, 2022
This commit adds a new box configuration option - box.cfg.auth_type.
The option takes an authentication method name (string) that will be
used by box.schema.user.passwd to generate user authentication data.

The only authentication method supported by Community Edition (CE)
is 'chap-sha1' so we don't document or announce this feature in CE.
More methods and tests will be added to Enterprise Edition (EE).

Part of #7988

NO_DOC=ee
NO_CHANGELOG=ee
locker added a commit that referenced this issue Dec 13, 2022
This commit adds a new option for net.box.connect - auth_type.
The option takes an authentication method name (string) that will
be used to authenticate the client on connect. Like user name and
password, the new option may also be passed via uri parameters, e.g.

  net.connect('host:port', {
      user = 'user',
      password = 'password',
      auth_type = 'chap-sha1',
  })
  net.connect('user:password@host:port?auth_type=chap-sha1')

The only authentication method supported by Community Edition (CE)
is 'chap-sha1' so we don't document or announce this feature in CE.
More methods and tests will be added to Enterprise Edition (EE).

Part of #7988

NO_DOC=ee
NO_CHANGELOG=ee
locker added a commit that referenced this issue Dec 13, 2022
The authentication method can be specified via the 'auth_type' uri
parameter, e.g.

  box.cfg({replication = 'user:password@host:port?auth_type=chap-sha1'})

The only authentication method supported by Community Edition (CE)
is 'chap-sha1' so we don't document or announce this feature in CE.
More methods and tests will be added to Enterprise Edition (EE).

Part of #7988

NO_DOC=ee
NO_CHANGELOG=ee
DifferentialOrange added a commit to tarantool/tarantool-python that referenced this issue Dec 24, 2022
Since Tarantool master 2574ff1a configuring authentication type is
supported [1-2]. Together with this, Tarantool EE had introduced
pap-sha256 authentication method support [3-4]. It can be used only
together with SSL transport. To configure, use `auth_type` option in
Connection, MeshConnection or ConnectionPool.

Newest master (there is no dev build in customer zone yet) supports
providing authentication method via IPROTO_ID response. So in this patch
we also move ID request to be executed before authentication.

1. tarantool/tarantool#7988
2. tarantool/tarantool#7989
3. tarantool/tarantool-ee#295
4. tarantool/tarantool-ee#322

Closes #269
DifferentialOrange added a commit to tarantool/tarantool-python that referenced this issue Dec 24, 2022
Since Tarantool master 2574ff1a configuring authentication type is
supported [1-2]. Together with this, Tarantool EE had introduced
pap-sha256 authentication method support [3-4]. It can be used only
together with SSL transport. To configure, use `auth_type` option in
Connection, MeshConnection or ConnectionPool.

Newest master (there is no dev build in customer zone yet) supports
providing authentication method via IPROTO_ID response. So in this patch
we also move ID request to be executed before authentication.

1. tarantool/tarantool#7988
2. tarantool/tarantool#7989
3. tarantool/tarantool-ee#295
4. tarantool/tarantool-ee#322

Closes #269
DifferentialOrange added a commit to tarantool/tarantool-python that referenced this issue Dec 26, 2022
Since Tarantool master 2574ff1a configuring authentication type is
supported [1-2]. Together with this, Tarantool EE had introduced
pap-sha256 authentication method support [3-4]. It can be used only
together with SSL transport. To configure, use `auth_type` option in
Connection, MeshConnection or ConnectionPool.

Newest master (there is no dev build in customer zone yet) supports
providing authentication method via IPROTO_ID response. So in this patch
we also move ID request to be executed before authentication.

1. tarantool/tarantool#7988
2. tarantool/tarantool#7989
3. tarantool/tarantool-ee#295
4. tarantool/tarantool-ee#322

Closes #269
DifferentialOrange added a commit to tarantool/tarantool-python that referenced this issue Dec 26, 2022
Since Tarantool master 2574ff1a configuring authentication type is
supported [1-2]. Together with this, Tarantool EE had introduced
pap-sha256 authentication method support [3-4]. It can be used only
together with SSL transport. To configure, use `auth_type` option in
Connection, MeshConnection or ConnectionPool.

Newest master (there is no dev build in customer zone yet) supports
providing authentication method via IPROTO_ID response. So in this patch
we also move ID request to be executed before authentication.

1. tarantool/tarantool#7988
2. tarantool/tarantool#7989
3. tarantool/tarantool-ee#295
4. tarantool/tarantool-ee#322

Closes #269
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.11 Target is 2.11 and all newer release/master branches feature A new functionality
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant