Skip to content

Releases: portier/portier-broker

v0.12.1

03 Dec 10:30
Compare
Choose a tag to compare
  • It is now possible to retry the email code entry form.
  • Validation of redirect_uri in the OAuth authorization code flow could result in false negatives in some cases, when input does not match a reserialized version of the URL. For example, a URL without a path like https://example.com would always be rejected on the POST /token request, because during the POST /auth request it was parsed and stored as https://example.com/ (trailing slash), and no longer compared equal. This is now fixed.

v0.12.0

27 Sep 09:09
Compare
Choose a tag to compare
  • The minimum supported Rust compiler version has been raised to 1.77. This only affects you when building from source.
  • Windows builds for this release are built using the new Rust 1.81.0 compiler, which incorporates the standard library fix for CVE-2024-43402. This advisory is low severity for Portier, because Portier only executes trusted commands, such as generate_rsa_command and sendmail_command.

v0.11.0

23 Jul 13:58
Compare
Choose a tag to compare
  • Added a French translation. (Thanks @daniel-g-gagnon!)
  • Improved Accept-Language matching: when the user requests an unknown regional variant (e.g. nl-BE), the primary language subtag is now also matched (e.g. nl).
  • Improved email address input validation. This primarily affects testing scenarios, where Portier may now reject configuration and input where an email address doesn't contain a top-level domain (e.g.foobar@localhost).

v0.10.1

01 Jul 09:04
Compare
Choose a tag to compare
  • Outgoing emails now include the X-Auto-Response-Suppress: All header to prevent automatic replies from Microsoft Exchange servers.

v0.10.0

18 May 15:41
Compare
Choose a tag to compare
  • The rsa feature and crate dependency have been removed. The broker now generates RSA keypairs using AWS Libcrypto (which was already a dependency).
  • The broker no longer uses HTTP 2 for outgoing requests, only HTTP 1.x. This reduces dependencies, and HTTP 2 has little benefit for the few small outgoing requests made by the broker.
  • Timeouts for outgoing HTTP requests have been fixed and are now configurable. The defaults should be fine in most cases, but see config.toml.dist if you do need to change these timeouts.
  • Discovery now proceeds in the background if discovery_timeout expires. The HTTP requests are still subject to their individual timeouts, but this allows cache to warm for future authentication requests, while discovery_timeout guarantees a certain response time.
  • Portier now sends a List-Id email header, intended to disable auto-responders on the receiver.
  • Authentication requests should no longer be double counted in /metrics.
  • Portier now sends a systemd 'stopping' notification when it begins shutdown. (This code was already present, but broken.)

v0.9.2

19 Apr 20:02
Compare
Choose a tag to compare

v0.9.1

12 Apr 08:32
Compare
Choose a tag to compare
  • Portier now logs part of the response body when receiving a HTTP error status in response to one of its outgoing requests. This should help debug issues in mailer configuration, or outgoing Webfinger / OIDC requests.
  • Fixed: The new SendGrid integration introduced in v0.9.0 was broken, always resulting in a HTTP 400 status code from the SendGrid API.
  • Fixed: Graceful shutdown was broken in v0.9.0, waiting indefinitely until all clients closed their (HTTP keep-alive) connections by themselves.
  • Fixed: The Nix package included in the source tree failed to build AWS Libcrypto (introduced in v0.9.0 via Rustls) because of the default hardening flags added by Nixpkgs.

v0.9.0

11 Apr 08:14
Compare
Choose a tag to compare
  • The minimum supported Rust compiler version has been raised to 1.72. This only affects you when building from source.
  • Various dependencies have been upgraded. Most notably, all HTTP server and client functionality has been upgraded to use Hyper 1.0.
  • This release incorporates a fix for GHSA-q6cp-qfwq-4gcv affecting the h2 crate, but it is low severity for Portier. The HTTP server component in Portier does not use HTTP2.
  • Windows builds for this release are built using the new Rust 1.77.2 compiler, which incorporates the standard library fix for CVE-2024-24576. This advisory is low severity for Portier, because Portier only executes trusted commands, such as generate_rsa_command and sendmail_command.
  • Portier now has support for sending mail directly using the SendGrid Web API. See the sendgrid_token setting in config.toml.dist.
  • The /metrics endpoint now also reports 0 values.

v0.8.5

19 Jan 09:26
Compare
Choose a tag to compare
  • This release fixes a security issue in the h2 crate: RUSTSEC-2024-0003. Portier Broker is affected by this primarily in outgoing Webfinger requests or OpenID Connect discovery requests, which may use HTTP/2 connecting to untrusted hosts. Upgrading is recommended.
  • Various improvements were made to improve compliance with the OpenID Connect specification. These are expected to be non-breaking.
    • state is now also returned with error responses.
    • The prompt parameter is now supported. For addresses that require email loop authentication, prompt=none will now always return an interaction_required error. For addresses that are forwarded to another OIDC provider (like Google), the prompt parameter is forwarded.
    • The auth_time claim was added to ID tokens.
    • nonce is now optional for the authorization code flow. (Portier clients typically use implicit flow, in which case nonce is still required.)
    • An invalid authorization code now properly returns the invalid_grant error.
    • OIDC "request objects" are now properly rejected. (These are the request and request_uri query parameters, not often used by clients.)
  • Updated dependencies:
    • Updated redis crate to 0.24
    • Updated ring crate to 0.17
    • Updated Hickory DNS to 0.24

v0.8.4

23 Aug 17:52
Compare
Choose a tag to compare
  • This release fixes a security issue in the rustls-webpki crate: RUSTSEC-2023-0053. This issue affects Portier Broker >= 0.8.0, < 0.8.4, except custom builds that use the native-tls feature flag. Upgrading is strongly recommended.
  • Pasting the email confirmation code in the form now trims whitespace, improving compatibility with certain email clients. (by @jimdigriz)
  • It is now possible to pass _login_hint instead of login_hint to force the broker to render the email input form, but with a prefill. (by @jimdigriz)