airlock/microgateway-running-example

GitHub: airlock/microgateway-running-example

Airlock Microgateway 的运行示例仓库,演示如何在 Kubernetes 中部署和使用这款云原生 WAAP 来保护 Web 应用与 API 安全。

Stars: 5 | Forks: 4

# 🚀 欢迎来到 Airlock Microgateway 示例

Microgateway Logo

**Airlock Microgateway** 是一个 **Kubernetes 原生的 WAAP**(Web 应用与 API 保护,前身为 WAF)解决方案,旨在通过强大且可用于生产环境的安全功能,保护微服务和 Web 应用的安全。 ## 🔒 为什么选择 Airlock Microgateway? 在现代 DevSecOps pipeline 中,安全以及相应的 WAAP 解决方案必须具备敏捷性、可扩展性,并无缝集成到 CI/CD 生命周期中。 Airlock Microgateway 完美契合这些要求,因为它专为 Kubernetes 环境进行了优化。 **优势**: - **全面的 WAAP**:通过不断改进的 deny 规则提供强大的安全保障,防范 [OWASP Top 10](https://owasp.org/www-project-top-ten/) 攻击;针对 OpenAPI 和 GraphQL 执行 API schema 校验,并提供直观的 dashboard。 - **身份感知代理**:强制实施安全、现代的身份验证机制,为 Web 应用和 API 提供细粒度的访问控制。 - **无缝的平台集成**:与 Kubernetes 原生工具及 service mesh(如 kubectl、[ArgoCD](https://argo-cd.readthedocs.io)、[FluxCD](https://fluxcd.io)、[Helm](https://helm.sh)、[Cilium](https://docs.cilium.io) 和 [Istio](https://istio.io))轻松集成。 - **顺畅的 DevSecOps 流程**:通过 Shift-Left 和基于 GitOps 的控制手段,简化技术与业务流程的集成,实现安全且敏捷的开发。 - **赋能混合云战略**:支持跨混合云和多云环境的平台工程,简化治理并符合基于 Kubernetes 的基础设施最佳实践。 - **设计即互操作**:基于 [Kubernetes Gateway API](https://gateway-api.sigs.k8s.io)、[OIDC](https://openid.net)、[JWT](https://jwt.io) 等开放标准,以及 [Elastic Common Schema](https://www.elastic.co/docs/reference/ecs)、[Prometheus](https://prometheus.io)、[Grafana](https://grafana.com)、[Red Hat OpenShift](https://www.redhat.com/en/technologies/cloud-computing/openshift)、[Rancher](https://www.rancher.com) 等经过验证的技术构建,确保灵活性,避免 vendor lock-in,并支持跨平台迁移。 有关所有功能的列表,请查看[社区版与高级版对比](https://docs.airlock.com/microgateway/latest/?topic=MGW-00000056)。 ## 📂 此存储库包含什么? 此存储库包含实战示例,可帮助您在实际场景中部署和使用 Airlock Microgateway: - [`README-k8s `](./README-k8s.md):准备环境,包含所有示例所需的授权和工具。 - [`README-openshift`](./README-openshift.md):基于 Red Hat OpenShift - [`README-webprotect`](./scenarios/README-webprotect.md):保护您的 Web 应用免受威胁。 - [`README-oidc`](./scenarios/README-oidc.md):使用 OIDC 集成前置身份验证和访问控制。 - [`README-trace`](./scenarios/README-trace.md):使用 OpenTelemetry 分布式追踪来跟踪和可视化微服务的请求流。 ## 🏁 快速开始(仅限 K8s) 1. 部署 license: ``` kubectl create ns airlock-microgateway-system --dry-run=client -o yaml | kubectl apply -f - kubectl -n airlock-microgateway-system create secret generic airlock-microgateway-license --from-file=microgateway-license.txt --dry-run=client -o yaml | kubectl apply -f - ``` 2. 应用 GatewayAPI CRD: ``` kubectl apply --server-side -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.4.1/standard-install.yaml ``` 3. 一次性应用其余部分: ``` kubectl kustomize --enable-helm manifests | kubectl apply --server-side -f - ``` ## ⚖️ License 示例的源代码基于 [MIT License](./LICENSE) 提供。商业用途需遵守 Airlock Microgateway 的授权条款。 ## 免责声明 Airlock Microgateway 提供社区版和高级版。请参阅[社区版与高级版详细信息](https://docs.airlock.com/microgateway/latest/#data/1675772882054.html)以选择合适的 license 类型。无论如何,此示例设置均可使用这两个版本的 Airlock Microgateway 进行部署。
标签:API保护, DevSecOps, WAAP, WAF, 上游代理, 子域名突变, 用户代理, 网关, 自定义请求头