目前,我正在使用带有使用消费者密钥和消费者密钥生成的令牌的Apigee API。在调用API时,此访问令牌用作“授权承载”。我正在调用API如下:
curl -H "Authorization: Bearer mytoken" 'http://{my-org}-test.apigee.net/v1/{api}/getData'
以下是我的情景:
有多个客户希望使用不同的API获取数据。我想为每个客户使用一个消费者密钥和消费者密钥用于多个API。
有没有办法使用'Apigee API'实现我的目标?
任何帮助或提示都将不胜感激。
答案 0 :(得分:1)
开箱即用的Apigee使用名为API Product的概念支持此功能。您将多个API,API资源捆绑到名为API Product的产品中。 API密钥始终与Apps / API产品相关联,而不是API本身。
API产品是API资源(URI)的集合,与服务计划相结合,并作为捆绑包提供给开发人员。
您可以在此处找到有关API产品的更多信息。详细了解如何在此处创建API产品。如果您有任何疑问,请随时发布。
让我试着用一个例子来解释这个,
假设我正在经营电信业务&我有很多服务可供选择。我想使用API开放我的业务,这样我就可以与大型开发人员联系,并在今天的集成世界中快速扩展我的业务,如入职合作伙伴,客户,开发人员等,进入我的业务。
我有以下服务,我想公开,让我们说
我将创建以下apis,
短信:
位置服务:
{{1}}
现在,我想向我的内部团队提供对所有API的访问权限,我将创建一个名为“Unlimited API”的API产品&我将把以上所有API添加到API产品列表中。
让我们说,我想只向我的合作伙伴提供对我的服务的READ访问权限,我可以创建一个名为“PARTNER API”的产品,并且只向API产品添加GET SMS Details API,GET Location API Details API。
我将为我的内部团队创建一个名为“Internal App”的开发者应用程序。在创建APP时选择“Unlimited API”产品。完成创建APP后,您将获得Consumer Key&密钥,使用该密钥可以访问产品中已配置的API。 Apigee Edge Platform开箱即可处理这些限制。
与上述类似,您可以为合作伙伴创建应用程序/限制您的合作伙伴使用某些API产品,同时创建开发人员应用程序,从而限制某些API代理。