apache / apache/cloudstack

Allow root admin to configure DNS servers on behalf of a specific user/domain and support project-scoped DNS servers

未关闭
#13,911 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
component:networking type:new-feature
主要语言
Java
星标
3.1k
派生
1.4k
平均合并
6 天 19 小时
30 天内合并 PR
32

描述

### The required feature described as a wish

Currently, a DNS server can only be set up for the calling account/domain, there is no way for a root admin to configure one on behalf of a different account or domain, and no way for a DNS server to belong to a project.

As a root admin, I would like to be able to:

1. Set up a DNS server on behalf of a specific user/account
2. Set up a DNS server on behalf of a specific domain
3. Attach a DNS server to a project

Additional constraint:

4. If a DNS server was set up by root admin on behalf of a user/domain, that user/domain should not be able to modify its URL themselves. Only root admin (or whoever provisioned it) should be able to change it.

Motivation:

Asks 1 and 2 are primarily driven by the recent restriction that only root admin can configure a DNS server on a private/internal (RFC1918) address, domain admins and regular users can no longer do so directly (see [PR #13821](https://github.com/apache/cloudstack/pull/13821/commits/1545adde35dd68a90291687fc3f7cec23b1e13f6)). Without a way for root admin to provision such a server on behalf of another account/domain, that use case is lost entirely for non-root-admin users.

Ask 3 (project support) wasn't part of the initial scope for this feature. It's being tracked here as a follow-up enhancement rather than a gap in the original design.

Ask 4 follows directly from 1 and 2: if the owning user/domain could freely change the URL afterward, they could redirect an admin-provisioned DNS server anywhere they like, defeating the purpose of restricting private-address setup to root admin in the first place.

贡献指南

打开贡献指南

调研方向

首先检查现有的 DNS 服务器配置流程和 PR #13821,然后追踪 account、domain、project 以及 root-admin 的所有权是如何表示的。当 root admin 可以为用户、domain 或 project 配置 DNS 服务器,同时已配置的用户和 domain 无法更改其 URL 时,即视为完成;范围和权限规则应由适当的测试覆盖。

由索引模型根据 Issue 内容生成。

评估

技术栈
java
领域
authorization, backend-api-design, cloud, networking
Issue 类型
功能
难度
5/5
预计耗时
一周以上
活跃度
活跃
描述清晰度
基本清楚
新手友好度
38/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。