zak-li/core-access-suite
GitHub: zak-li/core-access-suite
基于 Azure 的零信任企业级身份与特权访问管理平台,通过短期动态凭证和全面审计消除静态密钥风险。
Stars: 0 | Forks: 0
# Core Access Suite
该 `身份与特权访问管理 (IAM/PAM)` 解决方案是一个企业级、云原生的平台,在严格的 `零信任` 模型下保护所有访问的安全。它作为一个统一的中心,将公共身份联合 (IAM) 与高度受限的基础设施访问 (PAM) 连接起来。它使用动态、短生命周期的密钥取代静态凭证,确保每个访问请求都绑定到经过验证的身份、限定在最小权限范围内,并经过全面审计。
## 核心能力
`Vault` 按需颁发短期凭证以管理动态密钥。`Auth0` 通过在每次登录时强制执行 `MFA` 来管理身份联合。`Splunk` 通过捕获特权 API 调用来进行持续审计,从而实现实时可观测性。
- `Istio` 提供完整的加密,通过 `双向 TLS` 保护内部通信。
- `Terraform` 将自动化、可复制的基础设施作为代码进行管理。
## 架构
`Auth0` 作为 `SSO` 和 `MFA` 的身份提供商。公共层面使用配备了 `Kong` API 网关和 `Istio` 网格的 `AKS` 集群。特权核心运行在托管 `Vault` 和 `Splunk` 的强化虚拟机上。`Azure Key Vault` 为根 token 和解密密钥提供安全的托管服务。
有关详细的图表和请求流程,请参阅[架构文档](docs/ARCHITECTURE.md)并查看[架构图](.github/assets/architecture.png)。您可以在 [Web App 文件夹](apps/web/)中探索应用程序,并在 [Terraform 目录](terraform/)中探索基础设施。
## 快速开始
您将需要一个已通过身份验证的 `Azure CLI`、`Terraform` v1.5 或更高版本,以及一个配置好的 `Auth0` 租户。首先,将示例变量文件复制到 [Terraform 目录](terraform/)中的 `terraform.tfvars` 文件中。
配置您的变量:
```
cp terraform/terraform.tfvars.example terraform/terraform.tfvars
export AUTH0_DOMAIN="dev-xxxx.eu.auth0.com"
export AUTH0_CLIENT_ID=""
export AUTH0_CLIENT_SECRET=""
```
执行基础设施部署命令以配置基础基础设施。随后执行应用程序部署命令,以便在 `AKS` 上安装 `Istio`、`Kong` 和应用程序。
```
make deploy-infra
make deploy-app
```
## 项目命令
[Makefile](Makefile) 公开了几个命令来管理此项目的生命周期。
### 部署
配置所有内容:
```
make deploy
```
配置基础基础设施,然后部署应用:
```
make deploy-infra
make deploy-app
```
### 生命周期管理
挂起并恢复计算资源:
```
make stop
make start
```
解密 `Vault` 并销毁基础设施(不可逆):
```
make unseal
make destroy
```
### 开发者工具
格式化并验证 `Terraform` 代码:
```
make fmt
make validate
```
检查 shell 脚本并查看帮助:
```
make lint
make help
```
## 许可证
本项目基于 [MIT 许可证](LICENSE) 发布。
标签:Azure, ECS, Istio, Terraform, Vault, 特权访问管理, 身份与访问管理, 零信任架构