Skip to content

Commit

Permalink
Release 0.9.0
Browse files Browse the repository at this point in the history
Overview

    This release features SSL support.

    To use encrypted connection with Tarantool Enterprise Edition
    instance, pass "ssl" `transport` parameter on connect:

        con = tarantool.Connection(
            host, port,
            user=user,
            password=pass,
            transport="ssl")

    To verify the server, set client trusted certificate
    authorities (CA) file with `ssl_ca_file` parameter:

        con = tarantool.Connection(
            host, port,
            user=user,
            password=password,
            transport="ssl",
            ssl_ca_file=client_ca_file)

    If the server authenticates clients using certificates issued by
    given CA, you must provide private SSL key file with `ssl_key_file`
    parameter and SSL certificate file with `ssl_cert_file` parameter.
    Otherwise, these parameters are optional.

        con = tarantool.Connection(
            host, port,
            user=user,
            password=password,
            transport="ssl",
            ssl_key_file=client_key_file,
            ssl_cert_file=client_cert_file)

    To set SSL ciphers, set them with `ssl_ciphers` parameter as
    a colon-separated (:) string:

        con = tarantool.Connection(
            host, port,
            user=user,
            password=password,
            transport="ssl",
            ssl_ciphers=client_ssl_ciphers)

    ConnectionPool and MeshConnection also support these parameters.

        mesh = tarantool.MeshConnection(
            addrs={
                "host": host,
                "post": port,
                "transport": "ssl",
                "ssl_key_file": client_key_file,
                "ssl_cert_file": client_cert_file,
                "ssl_ca_file": client_ca_file,
                "ssl_ciphers": client_ssl_ciphers,
            },
            user=user,
            password=password)

        pool = tarantool.ConnectionPool(
            addrs={
                "host": host,
                "post": port,
                "transport": "ssl",
                "ssl_key_file": client_key_file,
                "ssl_cert_file": client_cert_file,
                "ssl_ca_file": client_ca_file,
                "ssl_ciphers": client_ssl_ciphers,
            },
            user=user,
            password=password)

    See Tarantool Enterprise Edition manual for details [1].

    1. https://www.tarantool.io/en/enterprise_doc/security/#enterprise-iproto-encryption

Breaking changes

    There are no breaking changes in the release.

New features

    * SSL support (PR #220, #217).

Testing

    * Tarantool Enterprise testing workflow on GitHub actions (PR #220).
  • Loading branch information
DifferentialOrange committed Jun 20, 2022
1 parent fe1b460 commit 60a2f38
Show file tree
Hide file tree
Showing 4 changed files with 112 additions and 4 deletions.
8 changes: 6 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## Unreleased

### Added
- SSL support (PR #220, #217).
- Tarantool Enterprise testing workflow on GitHub actions (PR #220).

### Changed

### Fixed

## 0.9.0 - 2022-06-20

### Added
- SSL support (PR #220, #217).
- Tarantool Enterprise testing workflow on GitHub actions (PR #220).

## 0.8.0 - 2022-04-29

### Added
Expand Down
104 changes: 104 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,107 @@
tarantool-python (0.9.0-0) unstable; urgency=medium
## Overview

This release features SSL support.

To use encrypted connection with Tarantool Enterprise Edition
instance, pass "ssl" `transport` parameter on connect:

```python
con = tarantool.Connection(
host, port,
user=user,
password=pass,
transport="ssl")
```

To verify the server, set client trusted certificate
authorities (CA) file with `ssl_ca_file` parameter:

```python
con = tarantool.Connection(
host, port,
user=user,
password=password,
transport="ssl",
ssl_ca_file=client_ca_file)
```

If the server authenticates clients using certificates issued by
given CA, you must provide private SSL key file with `ssl_key_file`
parameter and SSL certificate file with `ssl_cert_file` parameter.
Otherwise, these parameters are optional.

```python
con = tarantool.Connection(
host, port,
user=user,
password=password,
transport="ssl",
ssl_key_file=client_key_file,
ssl_cert_file=client_cert_file)
```

To set SSL ciphers, set them with `ssl_ciphers` parameter as
a colon-separated (:) string:

```python
con = tarantool.Connection(
host, port,
user=user,
password=password,
transport="ssl",
ssl_ciphers=client_ssl_ciphers)
```

ConnectionPool and MeshConnection also support these parameters.

```python
mesh = tarantool.MeshConnection(
addrs={
"host": host,
"post": port,
"transport": "ssl",
"ssl_key_file": client_key_file,
"ssl_cert_file": client_cert_file,
"ssl_ca_file": client_ca_file,
"ssl_ciphers": client_ssl_ciphers,
},
user=user,
password=password)
```

```python
pool = tarantool.ConnectionPool(
addrs={
"host": host,
"post": port,
"transport": "ssl",
"ssl_key_file": client_key_file,
"ssl_cert_file": client_cert_file,
"ssl_ca_file": client_ca_file,
"ssl_ciphers": client_ssl_ciphers,
},
user=user,
password=password)
```

See [Tarantool Enterprise Edition manual](https://www.tarantool.io/en/enterprise_doc/security/#enterprise-iproto-encryption)
for details.

## Breaking changes

There are no breaking changes in the release.

## New features

* SSL support (PR #220, #217).

## Testing

* Tarantool Enterprise testing workflow on GitHub actions (PR #220).

-- Georgy Moiseev <georgy.moiseev@tarantool.org> Mon, 20 Jun 2022 18:00:00 +0300

tarantool-python (0.8.0-0) unstable; urgency=medium

## Overview
Expand Down
2 changes: 1 addition & 1 deletion rpm/tarantool-python.spec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Summary: Python client library for Tarantool Database
Name: tarantool-python
Version: 0.8.0
Version: 0.9.0
Release: 1%{?dist}
Source0: tarantool-python-%{version}.tar.gz
License: BSD
Expand Down
2 changes: 1 addition & 1 deletion tarantool/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
ENCODING_DEFAULT,
)

__version__ = "0.8.0"
__version__ = "0.9.0"


def connect(host="localhost", port=33013, user=None, password=None,
Expand Down

0 comments on commit 60a2f38

Please sign in to comment.