参数配置

认证代理

用于代理OIDC认证

启动参数

名称 默认值 说明
alpha-config - 使用 alpha 版本的配置数据结构
config - 配置文件
convert-config-to-alpha false 如果开启,则会自动转换配置为 alpha 版本格式
acr-values - TODO;
allowed-group - 限制只有该组用户才可以登录,可配置多次
allowed-role - 配合 keycloak 使用,限制只有该角色可登录,可配置多次
api-route - TODO;
approval-prompt force TODO; OAuth approval_prompt
auth-logging true 认证日志
auth-logging-format - 认证日志格式:{{.Client}} - {{.RequestID}} - {{.Username}} [{{.Timestamp}}] [{{.Status}}] {{.Message}}
authenticated-emails-file - TODO; 允许登录的邮件文件列表,每行一个
azure-graph-group-field - TODO; 配合 azure
azure-tenant - TODO; 配合 azure
banner "" TODO; 自定义显示框,使用 “-” 则关闭默认值
basic-auth-password - 传递的认证头
bitbucket-repository - TODO;
bitbucket-team - TODO;
client-id - OAuth Client ID
client-secret - OAuth Client Secret
client-secret-file - OAuth Client Secret
code-challenge-method - 使用指定方法的PKCE代码质询,仅支持 ‘plain’ 或 ‘S256’
cookie-csrf-expire 15m0s CSRF cookie 的有效期
cookie-csrf-per-request - 如果开启则CSRF的cookie名每请求均不一样,关闭则使用同一个
cookie-domain - TODO;
cookie-expire 168h0m0s cookie的有效期
cookie-httponly true cookie httponly
cookie-name _oauth2_proxy cookie name
cookie-path “/” cookie path
cookie-refresh - 刷新cookie的时间,设置'0’则禁用
cookie-samesite - SameSite cookie attribute (ie: “lax”, “strict”, “none”, or “”)
cookie-secret - 用于 secure cookies
cookie-secure true secure cookie flag
custom-sign-in-logo - 自定义登录logo,设置"-“则禁用默认图,支持:https 与本地文件
custom-templates-dir - 自定义html模版路径
display-htpasswd-form true 如果htpasswd file文件提供了,则是否显示登录认证
email-domain - 允许登录认证的邮件后缀,如果设置为’*‘则允许所有
errors-to-info-log - 输出错误日志至 /dev/stdout 而不是 /dev/stderr
exclude-logging-path - 排除记录日志的路径,如:/path1,/path2,/path3
extra-jwt-issuers - TODO;
flush-interval 1s TODO;
footer "” 自定义页脚,设置"-“则关闭
force-code-challenge-method - 废弃,由 ‘code-challenge-method’ 代替
force-https - 强制HTTPS
force-json-errors - TODO;
gcp-healthchecks - 开启 GCP/GKE 健康探测
github-org - github
github-repo - github
github-team - github
github-token - github
github-user - github
gitlab-group - gitlab
gitlab-project - gitlab
google-admin-email - google
google-group - google
google-service-account-json - google
htpasswd-file - htpasswd
htpasswd-user-group - htpasswd
http-address - HTTP监听端口
https-address - HTTPS监听端口
insecure-oidc-allow-unverified-email - 如果在 id_token 中的email未验证则是否失败
insecure-oidc-skip-issuer-verification - 是否验证 OIDC discovery URL
insecure-oidc-skip-nonce true 跳过验证OIDC中的 nonce 属性
jwt-key - TODO;
jwt-key-file - TODO;
keycloak-group - keycloak
logging-compress - 是否启用GZIP压缩日志
logging-filename - 日志文件路径,未设置则输出到终端
logging-local-time true 记录日志是否使用本地时间
logging-max-age 7 最大的天数用于保留旧日志文件
logging-max-backups 最大的保留旧日志数量
login-url - 认证的端点
metrics-address 9100 开启”/metrics"性能指标地址
metrics-secure-address 9100 以HTTPS协议开启"/metrics"性能指标地址
metrics-tls-cert-file - HTTPS证书地址
metrics-tls-key-file - HTTPS证书地址
oidc-audience-claim aud 验证OIDC中 audience 属性
oidc-email-claim email oidc token 中对应 email 的属性名
oidc-extra-audience - 对应token中aud属性,允许通过认证的值,该参数可配置多个
oidc-groups-claim groups 同上
oidc-issuer-url - OpenID Connect issuer URL (ie: https://accounts.google.com)
oidc-jwks-url - OpenID Connect JWKS URL (ie: https://www.googleapis.com/oauth2/v3/certs)
pass-access-token - 通过 X-Forwarded-Access-Token 头传递 access_token
pass-authorization-header - 透传 Authorization 请求头
pass-basic-auth true 透传 HTTP Basic Auth, X-Forwarded-User and X-Forwarded-Email 头
pass-host-header true 透传 Host 头到下游
pass-user-headers true pass X-Forwarded-User and X-Forwarded-Email information to upstream
ping-path “/ping” 监控探测接口
ping-user-agent - 自定义 user-agent
prefer-email-to-user 认证相关
profile-url - TODO;
prompt - OIDC prompt
provider google OIDC认证提供方
provider-ca-file - ca地址
provider-display-name - OIDC提供方显示名称
proxy-prefix “/oauth2” TODO;
proxy-websockets true 开启 WebSocket 代理
pubjwk-url - login.gov 需要
real-client-ip-header X-Real-IP 表示real IP的头,如:X-Forwarded-For, X-Real-IP, or X-ProxyUser-IP
redeem-url - TODO;
redirect-url - 认证成功后回调的地址,如:“https://internalapp.yourcompany.com/oauth2/callback"
redis-ca-path - redis 自定义ca路径
redis-cluster-connection-urls redis 相关
redis-connection-idle-timeout - redis 相关
redis-connection-url - redis 相关
redis-insecure-skip-tls-verify - redis 相关
redis-password - redis 相关
redis-sentinel-connection-urls - redis 相关
redis-sentinel-master-name - redis 相关
redis-sentinel-password - redis 相关
redis-use-cluster - redis 相关
redis-use-sentinel - redis 相关
request-id-header “X-Request-Id” 请求ID头
request-logging true 记录 HTTP 请求日志
request-logging-format - 请求日志格式,默认:”{{.Client}} - {{.RequestID}} - {{.Username}} [{{.Timestamp}}] {{.Host}} {{.RequestMethod}} {{.Upstream}} {{.RequestURI}} {{.Protocol}} {{.UserAgent}} {{.StatusCode}} {{.ResponseSize}} {{.RequestDuration}}"
resource - 仅在 azure ad
reverse-proxy - TODO;
scope - oauth scope
session-cookie-minimal - TODO;
session-store-type cookie session 存储的方式
set-authorization-header - 设置认证响应头,一般用于配合 nginx auth_request 使用
set-basic-auth - 设置认证响应头,一般用于配合 nginx auth_request 使用
set-xauthrequest - 设置认证响应头,一般用于配合 nginx auth_request 使用
show-debug-on-error - 显示详细的错误信息,这个不要在生产环境开启
signature-key - TODO;
silence-ping-logging - 关闭请求日志在ping端点
skip-auth-preflight - 在 OPTIONS 阶段会跳过认证
skip-auth-regex - 已被废弃,使用 skip-auth-route
skip-auth-route - 配置跳过认证阶段
skip-auth-strip-headers true TODO;
skip-jwt-bearer-tokens false TODO; 是否移除jwt的认证头
skip-oidc-discovery - 跳过 OIDC 自发现
skip-provider-button - TODO;跳过?
ssl-insecure-skip-verify - TODO;
ssl-upstream-insecure-skip-verify - TODO;
standard-logging true 记录标准日志信息
standard-logging-format "" 默认值:"[{{.Timestamp}}] [{{.File}}] {{.Message}}"
tls-cert-file - 证书
tls-cipher-suite - 证书
tls-key-file - 证书
tls-min-version - 证书
trusted-ip - 配置可信IP,可以绕过认证
upstream - 认证通过后转发的下游服务,支持:http、file、static 配置
upstream-timeout 30s 转发下游的超时时间
user-id-claim email 已废弃,使用 oidc-email-claim 代替
validate-url - access token 认证端点
whitelist-domain - 允许认证过后转发的域名列表