【问题标题】:How to not reveal a third party secret api key in MediaWiki如何在 MediaWiki 中不泄露第三方秘密 api 密钥
【发布时间】:2015-05-04 11:46:34
【问题描述】:

我从 themoviedb.org 获得了一个 API 密钥,我想将它与 MediaWiki 扩展外部数据一起使用。但是,如果我把它作为普通的 wikitext 来写,它就会一目了然。

有没有一种简单的方法可以将其添加为 LocalSettings.php 中的自定义变量,然后将此变量称为魔术词或 wikitext 中的其他内容?如果是这样,那么密钥是否安全?

【问题讨论】:

  • I want to use it in a MediaWiki site 是什么意思?您是否正在对 themoviedb.org 进行 javascript 调用?或者是否有一个扩展强制您将密钥存储为 wiki 文本(在这种情况下:停止使用它!)。还是?
  • 在我的 wiki 中,我对 themoviedb.org 进行 api 调用以获取电影数据,然后在 wiki 页面中呈现这些数据(通过扩展 ExternalData)。所有 api 调用都包含我的 api 密钥。例如,人员搜索将是:http://api.themoviedb.org/3/search/person?api_key=XXXXXXX&query=Brad%20Pitt 其中 XXXXXXX=我的 api 密钥。因此,如果有人在页面上按编辑,就会看到上面的内容。因此,我认为可以使用 LocalSettings.php 中定义的一些变量。这就是处理某些 api 的扩展(例如 Flickr 扩展)所做的。但是这里没有这样的东西,只是一个普通的 wikitext 中的 url。
  • 好的,重新标记您的问题,因为这是关于 MediaWiki 的特定扩展
  • 要获得答案,请阅读 ExternalData 的文档:mediawiki.org/wiki/Extension:External_Data#Retrieving_data(se URL 中的字符串替换
  • 是的!!!就是这样!!非常感谢狮子座!您可以通过此链接mediawiki.org/wiki/… 发布作为答案

标签: mediawiki api-key mediawiki-extensions


【解决方案1】:

MediaWiki 中没有内置函数用于 wikitext 中的“占位符”,就像您所描述的那样。有这种需求的扩展往往会使用自己的自定义解决方案。

对于Extension:External Data,您可以将一个名为$edgStringReplacements 的变量添加到LocalSettings.php,请参阅文档。

【讨论】:

  • 谢谢狮子座!你已经回答了我的两个问题。因为,除了外部数据扩展,我真的很想知道是否有办法在页面源中“隐藏”字符串。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-22
  • 2022-01-21
  • 2022-01-12
  • 2014-01-05
  • 2019-11-25
  • 1970-01-01
相关资源
最近更新 更多