You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ORDS API是否支持用户名密码认证?IIS10能否配置基础认证?

基于ORDS和IIS10实现用户名密码基础认证的方案

一、ORDS原生配置基础认证

ORDS本身支持基础认证,无需依赖OAuth2,配置方式如下:

  • 启用基础认证:找到ORDS安装目录下的ords_params.properties配置文件,添加或修改参数:
    security.basic.auth.enabled=true
    security.authentication.type=basic
    
    保存后重启ORDS服务生效。
  • 关联数据库用户权限:ORDS的基础认证会直接验证客户端提交的用户名密码是否为合法的Oracle数据库用户,需确保该用户拥有对应API的访问权限。例如,可通过以下SQL赋予权限:
    GRANT ORDADMIN TO your_api_user;
    -- 或针对特定API授予权限
    GRANT EXECUTE ON your_api_module TO your_api_user;
    
  • 强制启用HTTPS:基础认证的用户名密码仅经过Base64编码,明文传输风险极高,必须为ORDS配置SSL证书,确保所有请求通过HTTPS传输。

二、IIS10层面配置基础认证

若希望在IIS层统一管控认证,可将ORDS作为后端服务,通过IIS反向代理或直接部署,由IIS处理基础认证:

1. 安装必要组件

在服务器管理器中添加「Web服务器(IIS)」角色,勾选以下组件:

  • 安全 -> 基础认证
  • 应用程序开发 -> ASP.NET(若需自定义用户验证)
  • 应用程序请求路由(ARR) -> 用于反向代理转发请求到ORDS

2. 配置站点认证

  • 打开IIS管理器,找到部署ORDS的站点,进入「认证」功能;
  • 禁用「匿名认证」,启用「基础认证」;
  • 配置用户来源:可选择Windows本地用户、域用户,或通过自定义成员资格提供程序关联Oracle数据库用户(需编写对应适配代码)。

3. 反向代理配置(ORDS独立运行时)

  • 打开IIS的「应用程序请求路由」,启用反向代理;
  • 添加路由规则,将IIS站点的请求转发到ORDS的服务端口(如默认的8080);
  • 确保IIS将认证头信息传递给ORDS,若无需ORDS二次验证,可在ORDS中关闭自身认证,仅由IIS完成校验。

方案对比

  • ORDS原生认证:直接绑定Oracle数据库用户,权限管理在数据库内完成,配置简单,适合API权限与数据库用户强关联的场景。
  • IIS层面认证:可集成企业域用户体系,统一管控多Web应用的认证策略,适合已有Windows域环境的企业。

内容的提问来源于stack exchange,提问作者JacquesB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 10:05:35