代码之家  ›  专栏  ›  技术社区  ›  Amir Chatrbahr

Azure API管理-用户元数据

  •  0
  • Amir Chatrbahr  · 技术社区  · 8 年前

    我正在使用Azure API管理为一些API提供API网关。为了为特定Api设置策略,我使用了一个属性(命名值)来恢复用户元数据,然后将其分配到传入请求正文中的一个变量中。添加新用户时,我需要将新用户的元数据添加到json中。属性值现在已增长并超过限制,我无法再向其添加更多信息。我想知道恢复我的大型元数据以便在API管理策略中访问的最佳方法是什么?

    更新1 :

    我已将身份验证过程从Azure切换到Auth0,以便我可以将用户元数据添加到Auth0 app\u元数据,然后在Azure策略中,我从Auth0验证JWT并获取令牌声明(app\u元数据),如中所述 this article . 通过这样做,我可以解决大用户元数据(json)问题,但这并不能解决存储在其他属性(命名值)中的其他非相关用户元数据,而且API网关入站策略正在增长,并成为一大串不易管理和维护的逻辑。

    在此阶段,我正在寻找一种解决方案,以更好的方式和更易于管理的环境(即C#)处理所有API网关入站策略。因此,我的两分钱是在一个新的应用程序中实现API网关入站策略。net Api并在现有Api网关入站策略中调用此新Api,以便它可以在Azure Api网关和现有Api之间发挥桥梁作用,但我仍然不确定这是否可以实现,以及现有Api是否可以通过新Api直接调用,还是应该通过Azure Api网关以某种方式调用!

    2 回复  |  直到 8 年前
        1
  •  0
  •   Vitaliy Kurokhtin    8 年前

    此时,您必须要么将其存储在多个变量中,要么直接在策略中对其进行硬编码。

        2
  •  0
  •   Amir Chatrbahr    8 年前

    经过更多的研究,我最终 this solution 这基本上建议在Azure Cosmos DB中恢复用户元数据,并在API管理策略中调用Cosmos API来访问元数据,并且可以在策略中缓存Cosmos API调用。