无需域名与有效TLS证书能否测试OAuth2-proxy对接Azure AKS认证流程
完全可以在未购买域名、未申请公网有效TLS证书的前提下完成POC验证,具体操作方案如下:
具体实现步骤
本地域名解析配置
无需注册公网域名,直接修改测试用机的hosts文件,添加自定义测试域名与AKS Ingress控制器IP的映射关系即可,示例配置:<AKS Ingress公网/内网IP> oauth2-proxy-test.local该配置仅在当前测试机生效,可满足本地访问验证需求。
自签名TLS证书生成
使用openssl工具生成自签名TLS证书,不需要向CA机构申请,命令示例:openssl req -x509 -newkey rsa:4096 -keyout tls.key -out tls.crt -days 365 -nodes -subj "/CN=oauth2-proxy-test.local"
生成后将证书保存为K8s Secret,绑定到Ingress规则即可,浏览器访问时出现的安全提示可手动忽略,不影响流程验证。Azure AD应用注册适配
应用注册的重定向URI直接填写自定义测试域名的回调地址即可,示例:https://oauth2-proxy-test.local/oauth2/callback,Azure AD不会校验该域名的公网可访问性与注册状态,只要测试机可正常解析即可完成回调流程。OAuth2-proxy测试参数调整
POC阶段可临时开启--ssl-insecure-skip-verify参数跳过自签名证书校验,同时添加--reverse-proxy=true适配Ingress反向代理场景,以上参数仅可用于测试,生产环境必须删除。
注意:上述所有配置仅适用于本地POC验证,正式上线前必须替换为正规注册的公网域名、CA机构颁发的有效TLS证书,关闭所有安全校验跳过参数,避免产生安全风险。
内容的提问来源于stack exchange,提问作者Francesco

