2025年9月25日: PostgreSQL 18 发布!
支持的版本: 当前 (18)
开发版本: 开发版

50.2. 初始化函数 #

OAuth 验证器模块从 oauth_validator_libraries 中列出的共享库动态加载。模块会在登录过程中按需加载。正常情况下会使用库搜索路径来定位库。为了提供验证器回调函数并表明该库是一个 OAuth 验证器模块,必须提供一个名为 _PG_oauth_validator_module_init 的函数。该函数的返回值必须是指向 OAuthValidatorCallbacks 类型结构的指针,该结构包含一个魔术数字和指向模块令牌验证函数的指针。返回的指针必须具有服务器生命周期,这通常是通过将其定义为全局作用域中的 static const 变量来实现的。

typedef struct OAuthValidatorCallbacks
{
    uint32        magic;            /* must be set to PG_OAUTH_VALIDATOR_MAGIC */

    ValidatorStartupCB startup_cb;
    ValidatorShutdownCB shutdown_cb;
    ValidatorValidateCB validate_cb;
} OAuthValidatorCallbacks;

typedef const OAuthValidatorCallbacks *(*OAuthValidatorModuleInit) (void);

只需要 validate_cb 回调函数,其他是可选的。

提交更正

如果您在文档中发现任何不正确之处、与您对特定功能的实际体验不符之处或需要进一步澄清之处,请使用 此表单 来报告文档问题。