[Feature Request] Allow passing a post-authentication callable to OIDCAuth
還沒有人認領這個 Issue。
評估
- 難度
- 3/5
- 預估耗時
- 1-2 天
- 新手友好度
- 45/100
- Issue 類型
- 功能
- 描述清晰度
- 描述清楚
- 活躍度
- 停滯
- 技術堆疊
- python
研究方向
從請求中描述的 OIDCAuth 建構函式和 OIDCAuth.callback 進入點開始,檢查 OIDCAuth 在最終重新導向附近的現有行為。定義選用 callable 的 token 參數、session 存取方式和執行時機,然後新增涵蓋範圍,證明它會在重新導向前執行,並且在未設定時會被略過。
由索引模型根據 Issue 內容生成。
描述
The OIDCAuth class and group-based features added in 2.3.0 are great!
It would be useful for the OIDCAuth class to take a callable that is executed at the end of the OIDCAuth.callback method just before the redirect. This function would take the access token as single positional argument and have access to the session global, e.g.:
from dash import Dash
from dash_auth import OIDCAuth
from flask import session
def add_scopes_to_user(token):
if scope := token.get("scope"):
session["user"]["scopes"] = scope.split()
app = Dash(__name__)
auth = OIDCAuth(
app,
secret_key="aStaticSecretKey!",
post_auth_callback=add_scopes_to_user, # defaults to None
)
This feature would provide a lot of flexibility to app developers for different use cases:
- storage of additional fields from the token in the session (example above),
- add a user to the DB if not already existing,
- custom logging,
- etc.
I can submit a PR if this is a feature the maintainers would consider merging.
- 主要語言
- Python
- 星號
- 133
- 分支
- 67
- PR 合併指標
- 30 天內沒有已合併 PR
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 沒有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
plotly/dash-auth 的其他 Issue
-
難度 4/5 3-5 天 新手友好度 28/100
-
Issue when clientside callback is defined before public callback可能已有人在做 @Godisemo 於 646 天前認領。 未關閉
難度 3/5 1-2 天 新手友好度 35/100
-
難度 3/5 1-2 天 新手友好度 38/100
-
Docs: installation instructions (including oidc)可能已有人在做 @davidhuser 於 698 天前認領。 未關閉
難度 1/5 1 小時以內 新手友好度 55/100
-
難度 4/5 3-5 天 新手友好度 38/100
相似的 Issue
-
難度 2/5 1-3 小時 新手友好度 72/100
databricks/databricks-sql-python#1034 ·
維護者通常 1 天內回覆
-
premises-missing
難度 2/5 1-3 小時 新手友好度 72/100
WingedGuardian/GENesis-AGI#4432 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 83/100
維護者通常 1 天內回覆
-
難度 1/5 1 小時以內 新手友好度 78/100
huggingface/skills#301 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 68/100
intuitem/ciso-assistant-community#5275 ·
維護者通常 1 天內回覆