This PR updates the preview feature "re-auth" (introduced in PR #890) significantly. The changes allow for catering to a wider range of use cases including simple password rotation.
(⚠️ Breaking) changes:
Removed TokenExpiredRetryable exception.
Even though it wasn't marked preview, it was introduced with and only used for re-auth. It now longer serves any purpose.
The AuthManager and AsyncAuthManager abstract classes were changed.
The method on_auth_expired(self, auth: _TAuth) -> None was removed in favor of def handle_security_exception(self, auth: _TAuth, error: Neo4jError) -> bool. See the API docs for more details.
The factories in AsyncAuthManagersa nd AuthManagers were changed.
This PR updates the preview feature "re-auth" (introduced in PR #890) significantly. The changes allow for catering to a wider range of use cases including simple password rotation.
(⚠️ Breaking) changes:
TokenExpiredRetryable
exception.Even though it wasn't marked preview, it was introduced with and only used for re-auth. It now longer serves any purpose.
AuthManager
andAsyncAuthManager
abstract classes were changed.The method
on_auth_expired(self, auth: _TAuth) -> None
was removed in favor ofdef handle_security_exception(self, auth: _TAuth, error: Neo4jError) -> bool
. See the API docs for more details.AsyncAuthManagers
a ndAuthManagers
were changed.expiration_based
was renamed tobearer
.basic
was added to cater for password rotation.Depends on: