我目前有API通过我们的API网关,该网关附加了多个自定义授权程序 - pos + 2
和val & ~4294967040
。
我想根据所访问的阶段更改我的自定义授权程序,就像阶段变量一样。如果我们处于阶段测试中,请使用LiveAuthorizer
,如果在实时使用TestAuthorizer
。
从我的研究和page来看,它似乎不可能,任何想法?
PS - 我知道这可以在进行身份验证的Lambda函数中处理,我只是好奇是否有另一种方式(类似于阶段变量)。
答案 0 :(得分:2)
您可以在单个Authorizer中使用stage变量指向不同的Lambda函数,具体取决于阶段,但您不能指向不同的Authorizer。
在很多情况下,指向不同的Lambda函数都有效。 Authorizer上的其他设置(如标题源或TTL)不支持阶段变量,因此所有阶段都必须共享这些设置。
编辑:我应该解释一下,不允许这样做的一个关键原因是,如果在运行时变量不存在,我们的阶段变量特征as-is不具有回退。由于运行授权器至关重要,我们必须提出一种类似于具有内置安全机制的阶段变量的不同机制。