How to send client keystore from Apigee Ex: .pfx files to invoke webservice via https protocol?

Not applicable
 
Solved Solved
0 5 559
1 ACCEPTED SOLUTION

Not applicable

The API Details page gives the urls to use minus any query parameters or headers that you may need. Here is a copy of one of my API proxies. I pointed out the url that would be used for a particular flow; Inline image 1

For example, if I want Joke Detail, I would use http://mikemalloy-prod.apigee.net/training/joke?jokeid=3229 (or some other number). The ?jokeid=3229 is something I provide because the API requires a jokeid query parameter to work. If you need to supply header information, that must be done through the console.

View solution in original post

5 REPLIES 5

Not applicable

If you are using the apigee console for this, it won't work without some additional steps. The apigee console does not support a keystore concept.

However if you can use apigee edge it is possible to use a keystore to connect to the target endpoints. Here is how http://apigee.com/docs/api-services/content/client-ssl-backend-servers

It is possible that the SOAP UI tool may be a better choice than the apigee console for testing if you are using keystore information. If you still need to use apigee console, you can use a apigee proxy in the middle to take care of the 2-way-SSL with the target. Then use apigee-console request to the apigee endpoint to see plain request response.

Not applicable

Hi Scott,

Thank you so much for your help.

As you suggested, I have created API proxy using WSDL (passthrough service).

I have followed below link to Configure a trust store.

http://apigee.com/docs/api-services/content/client-ssl-backend-servers

Below curl cmd is not working for me.

Copied from Link:

First, create an empty trust store in theenvironment.

$ curl -X POST -H "Content-Type: text/xml"-d \

'<KeyStore name="myTruststore"/>' \

https://api.enterprise.apigee.com/v1/o/{org_name}/environments/{env_name}/keystores \

-u myname:mypass

I have modified to :

$ curl -X POST -H "Content-Type: text/xml"-d \

'<KeyStore name="myTruststore"/>' \

https://enterprise.apigee.com/suma1/environments/test/keystores \

-u myname:mypass

It looks like I am giving wrong here:https://enterprise.apigee.com/suma1/environments/test/

I have tried with https://api.enterprise.apigee.com/v1/o/suma1/environments/test/also not working.

Can you please suggest me what would be the correct URL?

Not applicable

The API Details page gives the urls to use minus any query parameters or headers that you may need. Here is a copy of one of my API proxies. I pointed out the url that would be used for a particular flow; Inline image 1

For example, if I want Joke Detail, I would use http://mikemalloy-prod.apigee.net/training/joke?jokeid=3229 (or some other number). The ?jokeid=3229 is something I provide because the API requires a jokeid query parameter to work. If you need to supply header information, that must be done through the console.

Not applicable

In order to find the API Details page, you would click on the link of the particular API from the API list page. There, you should see the list of urls to use for that API that can be used in a curl command.

Hi Mike , how do i install a pfx file in key store. As backend wants it in ssl communication to be sent in all requests to it , i guess it should reside in keystore only and not trust store . Please confirm.