我可以在Apigee Edge将应用程序所有权从一个开发人员更改为另一个开发人员吗?

时间:2014-01-27 12:06:44

标签: apigee

如果我必须将应用程序所有者从一个开发人员更改为另一个开发人员,是否可以?如果是,我该怎么做?

4 个答案:

答案 0 :(得分:1)

编辑以添加更多详细信息:

第1步:获取应用详情

curl -u <user> -p <password> "https://api.enterprise.apigee.com/v1/o/<org>/developers/<dev1>/apps/<appname>"

使用此输出设置createapp_post_data - 删除app id。存储密钥/秘密,以及安全的API产品。从app createapp_post_data

中删除密钥/秘密

第2步:创建应用

export createapp_post_data='{
"accessType":"read", 
"appFamily":"default",
"attributes":[
  {
     "name":"Language",
     "value":"java"
  }
],
"callbackUrl":"www.apigee.com",
"createdAt":1391521426103,
"createdBy":"<someone>",
"lastModifiedAt":1391521426103,
"lastModifiedBy":"<someone>",
"name":"<appname>",
"scopes":[
]
}'

curl -XPOST -H "Content-Type: application/json" -u <user> -p <password>  "https://api.enterprise.apigee.com/v1/o/<org>/developers/<dev2>/apps" -d "${createapp_post_data}"

第3步:将所需的API密钥推送到应用

export setapikey_post_data='<CredentialRequest><ConsumerKey>keyextractedfromstep1</ConsumerKey><ConsumerSecret>secretextractedfromstep1</ConsumerSecret><Attributes><Attribute><Name>CreatedBy</Name><Value>Shekhar</Value></Attribute></Attributes></CredentialRequest>'

curl -XPOST -H "Content-Type: application/xml" -u <user> -p <password> "https://api.enterprise.apigee.com/v1/o/<org>/developers/<dev2>/apps/<appname>/keys/create" -d "${setapikey_post_data}"

步骤4:将密钥(刚创建)与所需的API产品

相关联
export add_apiproduct_post_data='{"apiProducts":["<apiproductfromstep1>"],"attributes":[{"name":"CreatedBy","value":"<someone>"}]}'

curl -XPOST -H "Content-Type: application/json" -u <user> -p <password> "https://api.enterprise.apigee.com/v1/o/<org>/developers/<dev2>/apps/<appname>/keys/<keysavedfromstep1>" -d "${add_apiproduct_post_data}"

答案 1 :(得分:0)

AFAIK,无法从UI或公共API获得。

作为一种解决方法,您可以先删除该应用,然后使用相同的名称和新开发人员的相同元数据重新创建该应用。

答案 2 :(得分:0)

建议,删除开发人员应用程序,并使用所需开发人员的新开发人员应用程序创建新应用程序。

查看Developer APP API它可以帮助您捕获应用程序的当前属性,删除它并使用新的开发人员电子邮件重播它。

答案 3 :(得分:0)

代码不允许这样做。

如果我们尝试将其他开发人员与应用相关联,则会出现以下错误:

该属性有一个getter \“public java.lang.String com.apigee.organizations.keymanagement.App.getDeveloperId()\”但没有setter。对于解组,请定义setter。 (或者,如果这是一个集合属性,请确保getter返回一个集合实例