fix(admin): allow clearing group policy (#2527)

Co-authored-by: houseme <housemecn@gmail.com>
Co-authored-by: GatewayJ <835269233@qq.com>
This commit is contained in:
cxymds
2026-04-15 11:35:19 +08:00
committed by GitHub
parent 642d83f0e4
commit 1eef75b0ca
+11
View File
@@ -377,6 +377,7 @@ impl Operation for RemoveCannedPolicy {
#[derive(Debug, Deserialize, Default)]
pub struct SetPolicyForUserOrGroupQuery {
#[serde(default)]
#[serde(rename = "policyName", alias = "policy")]
pub policy_name: String,
#[serde(rename = "userOrGroup", alias = "user-or-group")]
@@ -983,6 +984,16 @@ mod tests {
assert!(!query.is_group);
}
#[test]
fn set_policy_query_allows_missing_policy_name_for_policy_removal() {
let query: SetPolicyForUserOrGroupQuery =
serde_urlencoded::from_str("userOrGroup=test-group&isGroup=true").expect("query should parse");
assert!(query.policy_name.is_empty());
assert_eq!(query.user_or_group, "test-group");
assert!(query.is_group);
}
#[test]
fn policy_association_req_requires_exactly_one_target() {
let err = validate_policy_association_req(&PolicyAssociationReq {