microsoftgraph / microsoftgraph/msgraph-beta-sdk-python
authentication_protocol property of sign-ins events is always an empty list
還沒有人認領這個 Issue。
- 主要語言
- Python
- 星號
- 44
- 分支
- 16
- 平均合併
- 20 小時 39 分鐘
- 30 天內合併 PR
- 3
描述
Describe the bug
When accessing a sign-in event, for example via audit_logs.sign_ins.get() the authentication_protocol property is always an empty list ([]).
If you look at the same sign-in event in Entra ID or Graph Explorer, the field authenticationProtocol is properly filled.
Expected behavior
The authentication_protocol property should contain one of the allowed values. See https://learn.microsoft.com/en-us/graph/api/resources/signin?view=graph-rest-beta#properties -> authenticationProtocol
How to reproduce
Run
import asyncio
from azure.identity.aio import ClientSecretCredential
from msgraph_beta import GraphServiceClient
credential = ClientSecretCredential(
'tenant_id',
'client_id',
'client_secret'
)
scopes = ['https://graph.microsoft.com/.default']
graph_client = GraphServiceClient(credential, scopes=scopes)
async def get_signins()-> None:
signins =await graph_client.audit_logs.sign_ins.get()
for signin in signins.value:
print(signin.authentication_protocol)
asyncio.run(get_signins())
and compare it to the authenticationProtocol field in the output of https://graph.microsoft.com/beta/auditLogs/signIns
SDK Version
1.51.0
Latest version known to work for scenario above?
No response
Known Workarounds
No response
Debug output
Configuration
- OS: Ubuntu 22.04
- architecture: x86_64
Other information
I suspect the usage of get_collection_of_enum_values() instead of get_enum_value() to be the reason for this:
https://github.com/microsoftgraph/msgraph-beta-sdk-python/blob/a606d0365c39a5c2e5f658841a1a7c58d270438b/msgraph_beta/generated/models/sign_in.py#L295
貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
研究方向
從 issue 中連結的 generated models/sign_in.py 位置開始,特別檢查第 295 行附近對 authentication_protocol 的處理。執行提供的登入資訊擷取範例,並將 SDK 值與 Graph beta 回應進行比較;當 authentication_protocol 包含回傳的允許值而不是空清單時,即表示完成。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- python
- 領域
- api
- Issue 類型
- 缺陷
- 難度
- 2/5
- 預估耗時
- 1-3 小時
- 活躍度
- 停滯
- 描述清晰度
- 描述清楚
- 新手友好度
- 48/100