Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Connect to URL - Client Certificate environmentalize not supported for outbound connection #9

Closed
Mitraa-SP opened this issue Jan 18, 2021 · 11 comments · Fixed by #11
Closed
Labels
enhancement New feature or request

Comments

@Mitraa-SP
Copy link

Hi,

Found that there is no support to environmentalize client certificate for outbound connection (Connect to URL).

@rathnapandi
Copy link
Member

Hi @Mitraa-SP,
Can you use API manager to handle backend mutual auth? If not, please let me know.

@Mitraa-SP
Copy link
Author

Hi @rathnapandi ,

It doesn't work.

@rathnapandi
Copy link
Member

Hi @Mitraa-SP,

Not sure, what you have tried - I would like you to check “Configure Outbound request settings” section in https://docs.axway.com/bundle/APIManager_762_APIMgmtGuide_allOS_en_HTML5/page/Content/APIManagementGuideTopics/api_mgmt_virtualize_web.htm. Select Authentication profile as SSL to configure backend mutual auth and use APIM-cli for promoting API to higher environments https://github.com/Axway-API-Management-Plus/apim-cli.

@Mitraa-SP
Copy link
Author

Hi @rathnapandi ,
Thanks for the response. I have tried your suggestion but it is not working.
To explain a little more - I have a custom policy which invokes multiple backend through 'Connect to URL' filter based on few conditions. Only one backend or 'Connect to URL' needs to pass the p12 client certificate (certificate + private key). How do we environmentalize this.

@rathnapandi
Copy link
Member

Hi @Mitraa-SP,

Custom policy will not work for API Manager backend mutual auth.

Backend SSL authentication profile accepts p12 file with certificate and uses the policy "Default SSL-based Routing" (available under Policies -> Generated Polices -> REST API's->Templates) for mutual authentication. As API manager won't accept p12 file for custom policy, we can't use the p12 file in the polices.

Can you extend the policy "Default SSL-based Routing" for your use case instead of using a custom routing policy?

Thanks
Rathna

@Mitraa-SP
Copy link
Author

Hi @rathnapandi ,

This is an existing feature in 7.5.3 and is working. Also working in 7.7 Axway. I am able to import the p12 certificate.

Steps to import the certificate + key:

Environment Configuration -> Certificates and Keys -> Certificates -> Certificates with Keys tab -> Create/Import button -> Import Certificate + key

The p12 certificate is successfully added to Policy studio.

Steps to use the above certificate in connect to URL
I have a policy with various other filters to check/validate the request.

Connect to URL (filter) -> SSL (tab) -> Client Certificate (tab) -> Select the certificate which was imported above.

I have this certificate imported and working for non-prod. But for prod it is a different certificate. There is no support to environmentalize this with the current apim-environment-module.

Note: Same route policy will be used for both non-prod and prod.

The client certificate for outbound connection ('Connect to URL' filter) needs to be environmentalized. This was supported in 7.5.3.

@rathnapandi
Copy link
Member

Hi @Mitraa-SP,
Thanks for the details.
I was referring to importing P12 file on API Manager not in the policystudio. If you are migrating from 7.5.3 to 7.7 and policystudio environmentalization feature is not working, please raise a support ticket via support.axway.com.

Objective of this GitHub project is to do environmentalization via operating system or Kubernetes or docker environment variables.

Thanks
Rathna

@Mitraa-SP
Copy link
Author

Hi @rathnapandi ,

The feature is all working. There is no issue with that. The main reason for me raising this issue is to mention that the apim-env-module needs an enhancement to support environmentalization of the client certificate for outbound connection (Connect to URL filter) like it does for HTTP listener/API Manager Traffic. We are using docker environment.

@rathnapandi rathnapandi added the enhancement New feature or request label Jan 21, 2021
@rathnapandi
Copy link
Member

@Mitraa-SP, I have marked the issue as enhancement. Will add it to next release.

@Mitraa-SP
Copy link
Author

Thanks @rathnapandi , Could you please let me know approx. date on which this will be available.

rathnapandi pushed a commit that referenced this issue Jan 21, 2021
Support API Gateway November release.
rathnapandi pushed a commit that referenced this issue Jan 22, 2021
Support API Gateway November release #10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants