AI 快讯 编译自 aws_ml_blog #AWS#MLflow#SageMaker#门户集成#反向代理

用React+Flask搭建自定义门户:嵌入Amazon SageMaker AI MLflow Apps的完整方案

本文介绍如何通过React前端和Flask反向代理构建自定义门户,将Amazon SageMaker AI MLflow Apps嵌入iframe,实现SigV4认证、SSO集成和持久化URL。包含架构解析、CDK部署步骤和中文用户视角的实用建议。

编译发布 2026/05/28 原文发布 2026/05/28

一句话看懂

AWS官方方案:用React+Flask反向代理,把SageMaker AI MLflow Apps嵌入自定义门户,实现单点登录和持久化URL,无需分发预签名URL或管理控制台权限。

详细发生了什么

随着ML团队规模扩大,让数据科学家访问MLflow实验跟踪UI成了管理难题。分发预签名URL在几十人团队中不可扩展,给每个人开AWS管理控制台权限又增加运维负担。

AWS这篇博客提出了一套完整架构:前端用React,后端用Flask反向代理,部署在EC2上,通过Application Load Balancer (ALB)统一入口。Flask代理负责处理AWS SigV4签名认证,将请求转发给SageMaker AI MLflow Apps的无服务器端点,并重写HTML中的绝对URL为相对路径、剥离X-Frame-Options头,让MLflow UI能在iframe中正常渲染。

整个方案通过AWS CDK一键部署,支持SSO集成,用户只需一次认证就能在内部门户中访问MLflow,同时CI/CD流水线也能通过同一代理端点调用MLflow REST API。

中文圈视角

这套方案对国内AWS用户非常实用,尤其是那些已经使用SageMaker AI MLflow Apps但苦于访问管理的团队。

国内用户能用吗? 需要AWS账号,且SageMaker AI MLflow Apps目前在中国区域(如北京、宁夏)可用,但需要确保MLflow App所在区域支持。如果使用国内AWS区域,网络延迟通常可接受。

有平替吗? 国内MLflow托管服务较少,阿里云PAI提供类似实验跟踪功能,但API和生态不同。如果团队已深度绑定AWS,此方案是最直接的。对于自建MLflow的用户,可以参考其反向代理+iframe思路,但SigV4认证部分需替换为自建认证。

对中文用户的具体场景影响:适合金融、制造等企业,内部已有SSO门户(如钉钉、飞书、企业微信),希望将MLflow嵌入其中,减少数据科学家切换上下文的成本。但需注意iframe可能被某些企业安全策略拦截,需要IT配合放行。

监管/合规角度:数据不出AWS区域,但通过反向代理时,需确保代理服务器(EC2)安全配置,避免成为数据泄露点。建议使用HTTPS并限制IP白名单。

几条值得记住的细节

  • 架构组件:ALB(入口)+ React前端 + Flask反向代理(EC2)+ SageMaker AI MLflow Apps(无服务器)。
  • Flask代理做三件事:SigV4签名请求、重写MLflow URL为相对路径、剥离X-Frame-Options头。
  • 部署依赖:AWS CLI v2.34.5+、Python 3.13+、CDK v2.243.0+、Node.js 18.x+。
  • 成本主要来自EC2实例、ALB、SageMaker资源和S3存储,建议使用AWS Pricing Calculator预估。
  • 生产环境必须启用HTTPS,通过ACM添加SSL证书。

一句话总结

如果你的团队用SageMaker AI MLflow Apps且需要SSO集成,这个开源方案能省去预签名URL分发和权限管理麻烦。