POST /admin/identities response fields unset
还没有人认领这个 Issue。
评估
调研方向
首先使用密码凭据复现 POST /admin/identities,然后将其响应与 GET /admin/identities/{id} 进行比较。检查 admin identity 创建响应和序列化路径;完成的标准是 identifiers、created_at 和 updated_at 包含其实际值,并且 ory-client Java 模型能够无错误地解析该响应。
由索引模型根据 Issue 内容生成。
描述
Preflight checklist
- I could not find a solution in the existing issues, docs, nor discussions.
- I agree to follow this project's Code of Conduct.
- I have read and am following this repository's Contribution Guidelines.
- I have joined the Ory Community Slack.
- I am signed up to the Ory Security Patch Newsletter.
Describe the bug
Hello,
We are using oryd/kratos:v1.0.0. When we create an identity with credentials, the response contains wrong values for credentials.identifiers, credentials.created_at and credentials.updated_at :
POST to /admin/identities payload
{
"credentials": {
"password": {
"config": {
"password": "HelloWorld"
}
}
},
"traits": {
"email": "[email protected]"
}
}
POST to /admin/identities partial response
"id": "0009e8ff-2665-49be-9c8a-351a42d949b8",
"credentials": {
"password": {
"type": "password",
"identifiers": null,
"version": 0,
"created_at": "0001-01-01T00:00:00Z",
"updated_at": "0001-01-01T00:00:00Z"
}
}
When we retrieve the same identity right after, the payload is correct with all the fields set
GET to /admin/identities/0009e8ff-2665-49be-9c8a-351a42d949b8 partial response
"id": "0009e8ff-2665-49be-9c8a-351a42d949b8",
"credentials": {
"password": {
"type": "password",
"identifiers": [],
"version": 0,
"created_at": "2023-09-11T17:47:59.111957Z",
"updated_at": "2023-09-11T17:47:59.111957Z"
}
}
I would expect to get credentials.created_at, credentials.updated_at and credentials.identifiers filled with their actual values on the POST.
Also because of that we face failure using JAR ory-client:1.1.45 when IdentityCredentials.java tries to validate the JSON payload:
java.lang.IllegalArgumentException: Expected the field `identifiers` to be an array in the JSON string but got `null`
at sh.ory.model.IdentityCredentials.validateJsonObject(IdentityCredentials.java:357)
at sh.ory.model.IdentityCredentials$CustomTypeAdapterFactory$1.read(IdentityCredentials.java:399)
at sh.ory.model.IdentityCredentials$CustomTypeAdapterFactory$1.read(IdentityCredentials.java:372)
Thanks
Reproducing the bug
- Start Kratos
- Create Identity with credentials using POST /admin/identities
Relevant log output
No response
Relevant configuration
No response
Version
oryd/kratos:v1.0.0
On which operating system are you observing this issue?
Linux
In which environment are you deploying?
Kubernetes
Additional Context
As a workaroound, in case that can help others, I have replaced the createIdentity by a call too batchPatchIdentities. As the response does not contain credentials it can be parsed probably by ory-client:1.1.45
- 主要语言
- Shell
- 星标
- 96
- 派生
- 8
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ory/network 的其他 Issue
-
bug
难度 4/5 3-5 天 新手友好度 38/100
-
Updating native registration flow with OIDC ID token for existing identity returns breaking response未关闭bug
难度 4/5 3-5 天 新手友好度 35/100
-
feat
难度 5/5 一周以上 新手友好度 25/100
-
bug
难度 4/5 3-5 天 新手友好度 30/100
-
feat
难度 5/5 一周以上 新手友好度 35/100
相似的 Issue
-
package-update
难度 2/5 1-3 小时 新手友好度 72/100
oSoWoSo/vOid_Community_repOsitory#207 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
alunduil/alunduil-chezmoi#815 ·
维护者通常 1 天内回复
-
good first issue new package
难度 2/5 1-3 小时 新手友好度 68/100
wimpysworld/deb-get#2035 ·
维护者通常 1 天内回复
-
automation documentation
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 92/100
termux/termux-packages#32085 ·
维护者通常 1 天内回复