Note to first-time contributors: Please open a discussion post in Discussions and describe your changes before submitting a pull request.
Before submitting, make sure you've checked the following:
Target branch: Please verify that the pull request targets the dev branch.
Description: Provide a concise description of the changes made in this pull request.
Changelog: Ensure a changelog entry following the format of Keep a Changelog is added at the bottom of the PR description.
Documentation: Have you updated relevant documentation Open WebUI Docs, or other documentation sources?
Dependencies: Are there any new dependencies? Have you updated the dependency versions in the documentation?
Testing: Have you written and run sufficient tests for validating the changes?
Code review: Have you performed a self-review of your code, addressing any coding standard issues and ensuring adherence to the project's coding standards?
Prefix: To cleary categorize this pull request, prefix the pull request title, using one of the following:
BREAKING CHANGE: Significant changes that may affect compatibility
build: Changes that affect the build system or external dependencies
ci: Changes to our continuous integration processes or workflows
chore: Refactor, cleanup, or other non-functional code changes
docs: Documentation update or addition
feat: Introduces a new feature or enhancement to the codebase
fix: Bug fix or error correction
i18n: Internationalization or localization changes
perf: Performance improvement
refactor: Code restructuring for better maintainability, readability, or scalability
style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc.)
test: Adding missing tests or correcting existing tests
WIP: Work in progress, a temporary label for incomplete or ongoing work
Changelog Entry
Description
add support for Redis Cache authentication and SSL connections
Added
Redis Cache authentication using username/password or Azure DefaultAzureCredential()
Redis Cache SSL connection with the option to provide a certificates file
Environment variables:
WEBSOCKET_REDIS_CERTS (str) - path to certificates file
WEBSOCKET_REDIS_USERNAME (str) - user name to authenticate with Redis
WEBSOCKET_REDIS_PASSWORD (str) - password to authenticate with Redis
WEBSOCKET_REDIS_AZURE_CREDENTIALS (bool) - enable DefaultAzureCredential() to configure credentials if WEBSOCKET_REDIS_PASSWORD is empty.
Changed
updated websocket code to support Redis authentication and SSL connections
Deprecated
None
Removed
None
Fixed
None
Security
None
Breaking Changes
None
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/open-webui/open-webui/pull/10581
**Author:** [@dsewell](https://github.com/dsewell)
**Created:** 2/22/2025
**Status:** ❌ Closed
**Base:** `dev` ← **Head:** `redis-cache-auth-and-ssl`
---
### 📝 Commits (9)
- [`9d08c6a`](https://github.com/open-webui/open-webui/commit/9d08c6a4cd30a731195dff599015bb44861439d5) add support for redis cache auth and ssl
- [`b533a40`](https://github.com/open-webui/open-webui/commit/b533a403e239f5bb363281ee4a9329aa62009326) de-lint
- [`398768d`](https://github.com/open-webui/open-webui/commit/398768da84c35877a10f07f998236ecabba83619) Merge branch 'dev' of gitlab.com:synechron-code/ai/nexus-chat/nexuschat into redis-cache-auth-and-ssl
- [`17c3959`](https://github.com/open-webui/open-webui/commit/17c39599ef909e06dc6dfce21b1bdac1fed72bef) Fix backwards compatibility and Azure token expire errors
- [`7bb371e`](https://github.com/open-webui/open-webui/commit/7bb371e6e0c7aec4553c77cec792303b829ab4b7) Fix backwards compatibility for redis auth and ssl and handle Azure token expiration
- [`6105cfb`](https://github.com/open-webui/open-webui/commit/6105cfb8c67776872ba23b7cce81a7285300ecd2) Merge branch 'dev' of gitlab.com:synechron-code/ai/nexus-chat/nexuschat into redis-cache-auth-and-ssl
- [`4102285`](https://github.com/open-webui/open-webui/commit/41022852ceab85d26e11a8b2d39bffda9f8ca84b) refresh Azure token on expiry
- [`675f11a`](https://github.com/open-webui/open-webui/commit/675f11a69ebb486b0023edd2b1722f1fb671a91f) fix indentation
- [`4a15b61`](https://github.com/open-webui/open-webui/commit/4a15b61f6df10675d1d3090f848850525d64ed0f) rework Redis Cache azure token expire logic
### 📊 Changes
**3 files changed** (+175 additions, -9 deletions)
<details>
<summary>View changed files</summary>
📝 `backend/open_webui/env.py` (+12 -0)
📝 `backend/open_webui/socket/main.py` (+57 -5)
📝 `backend/open_webui/socket/utils.py` (+106 -4)
</details>
### 📄 Description
# Pull Request Checklist
### Note to first-time contributors: Please open a discussion post in [Discussions](https://github.com/open-webui/open-webui/discussions) and describe your changes before submitting a pull request.
**Before submitting, make sure you've checked the following:**
- [x] **Target branch:** Please verify that the pull request targets the `dev` branch.
- [x] **Description:** Provide a concise description of the changes made in this pull request.
- [x] **Changelog:** Ensure a changelog entry following the format of [Keep a Changelog](https://keepachangelog.com/) is added at the bottom of the PR description.
- [x] **Documentation:** Have you updated relevant documentation [Open WebUI Docs](https://github.com/open-webui/docs), or other documentation sources?
- [x] **Dependencies:** Are there any new dependencies? Have you updated the dependency versions in the documentation?
- [x] **Testing:** Have you written and run sufficient tests for validating the changes?
- [x] **Code review:** Have you performed a self-review of your code, addressing any coding standard issues and ensuring adherence to the project's coding standards?
- [x] **Prefix:** To cleary categorize this pull request, prefix the pull request title, using one of the following:
- **BREAKING CHANGE**: Significant changes that may affect compatibility
- **build**: Changes that affect the build system or external dependencies
- **ci**: Changes to our continuous integration processes or workflows
- **chore**: Refactor, cleanup, or other non-functional code changes
- **docs**: Documentation update or addition
- **feat**: Introduces a new feature or enhancement to the codebase
- **fix**: Bug fix or error correction
- **i18n**: Internationalization or localization changes
- **perf**: Performance improvement
- **refactor**: Code restructuring for better maintainability, readability, or scalability
- **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc.)
- **test**: Adding missing tests or correcting existing tests
- **WIP**: Work in progress, a temporary label for incomplete or ongoing work
# Changelog Entry
### Description
- add support for Redis Cache authentication and SSL connections
### Added
- Redis Cache authentication using username/password or Azure DefaultAzureCredential()
- Redis Cache SSL connection with the option to provide a certificates file
- Environment variables:
WEBSOCKET_REDIS_CERTS (str) - path to certificates file
WEBSOCKET_REDIS_USERNAME (str) - user name to authenticate with Redis
WEBSOCKET_REDIS_PASSWORD (str) - password to authenticate with Redis
WEBSOCKET_REDIS_AZURE_CREDENTIALS (bool) - enable DefaultAzureCredential() to configure credentials if WEBSOCKET_REDIS_PASSWORD is empty.
### Changed
- updated websocket code to support Redis authentication and SSL connections
### Deprecated
None
### Removed
None
### Fixed
None
### Security
None
### Breaking Changes
None
---
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/open-webui/open-webui/pull/10581
Author: @dsewell
Created: 2/22/2025
Status: ❌ Closed
Base:
dev← Head:redis-cache-auth-and-ssl📝 Commits (9)
9d08c6aadd support for redis cache auth and sslb533a40de-lint398768dMerge branch 'dev' of gitlab.com:synechron-code/ai/nexus-chat/nexuschat into redis-cache-auth-and-ssl17c3959Fix backwards compatibility and Azure token expire errors7bb371eFix backwards compatibility for redis auth and ssl and handle Azure token expiration6105cfbMerge branch 'dev' of gitlab.com:synechron-code/ai/nexus-chat/nexuschat into redis-cache-auth-and-ssl4102285refresh Azure token on expiry675f11afix indentation4a15b61rework Redis Cache azure token expire logic📊 Changes
3 files changed (+175 additions, -9 deletions)
View changed files
📝
backend/open_webui/env.py(+12 -0)📝
backend/open_webui/socket/main.py(+57 -5)📝
backend/open_webui/socket/utils.py(+106 -4)📄 Description
Pull Request Checklist
Note to first-time contributors: Please open a discussion post in Discussions and describe your changes before submitting a pull request.
Before submitting, make sure you've checked the following:
devbranch.Changelog Entry
Description
Added
WEBSOCKET_REDIS_CERTS (str) - path to certificates file
WEBSOCKET_REDIS_USERNAME (str) - user name to authenticate with Redis
WEBSOCKET_REDIS_PASSWORD (str) - password to authenticate with Redis
WEBSOCKET_REDIS_AZURE_CREDENTIALS (bool) - enable DefaultAzureCredential() to configure credentials if WEBSOCKET_REDIS_PASSWORD is empty.
Changed
Deprecated
None
Removed
None
Fixed
None
Security
None
Breaking Changes
None
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.