Hi All,
Currently, the SharePoint endpoints have been deprecated in my application. So to establish the connection with SharePoint, I need to configure certificate-based authentication so that the API can securely connect to SharePoint.
I have received a .PEM certificate file from the admin team. I would like to know how and where this PEM file should be configured for the API integration, or how the certificate should be sent along with the API requests.
I noticed that in Service Center, under the Administration tab, there is an option to configure certificates by providing the certificate name and path. It seems that this allows us to store and manage certificates in OutSystems and associate them with a specific module for secure integrations. But I don't know how to configure and use. In other hand, I would like to know how to configure and use certificate along with API.
I would greatly appreciate your assistance!Thanks,Meer Imtiyaz
You’re dealing with client certificate authentication (mTLS) for outbound REST calls to SharePoint from an OutSystems 11 app. There are two parts to solve:
OutSystems 11 (on Windows/IIS) relies on the Windows certificate store and the Platform’s SSL certificate configuration; it does not natively use raw .pem files.
.pem
Typically you need a PFX (PKCS#12) that contains the private key plus the certificate chain.
If your admin has given you only a .pem, confirm whether it:
-----BEGIN PRIVATE KEY-----
-----BEGIN RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
If both are present, they can be converted to .pfx with OpenSSL (done by infra/admin, not in OutSystems). The result should be something like client-cert.pfx plus a password.
.pfx
client-cert.pfx
OutSystems requires the private key to be present, otherwise client authentication cannot be used at runtime.Installing client side certificates on self-managed environments
On each front‑end server (self‑managed):
mmc.exe
OutSystems app pools run under IIS worker identities. The certificate’s private key must be readable by those identities:
IIS_IUSRS
NETWORK SERVICE
For OutSystems Cloud (PaaS): you don’t manage MMC yourself; you need to send the certificate to OutSystems support so they install it at infra level and configure outbound mTLS for you.SLL Certificates on REST Services (Consume)
Service Center’s Administration → Certificates / SSL Certificates is used to register certificates that the platform can use for secure integrations (including client‑side authentication).
You generally:
.cer
However, OutSystems does not have a UI option in the REST API definition to “attach certificate X to this REST endpoint”. You must handle it at the HTTP request level programmatically.How to Configure Client Certificate for Outbound REST in O11
For consumed REST APIs in O11:
There is an official pattern for SOAP, and similar logic applies to REST: use advanced extensibility to set up client certificate authentication.How to upload file by SOAP API with SSL Cert
For O11 REST HTTPs, you can use the Forge component HTTPS Consumer O11, which implements the client‑certificate handshake and lets you specify the certificate name / thumbprint and host.How to Configure Client Certificate for Outbound REST in O11
Internally, the C# code is similar to:
var handler = new HttpClientHandler(); handler.ClientCertificates.Add(clientCert); var client = new HttpClient(handler);
This is exactly the approach mentioned in the older forum post: install cert in machine store, grant rights (Step B), and then attach it to the handler in code.SLL Certificates on REST Services (Consume)
In some setups (especially OutSystems Cloud), the platform team may configure an outbound mTLS binding at the infra level (e.g., “when calling https://sharepoint.company.com, always use certificate X”).
https://sharepoint.company.com
When this is done, your REST API calls from OutSystems just use HTTPS normally; the TLS stack automatically picks the client certificate. In that case, you don’t need custom extensions; instead you coordinate with OutSystems support / infra team and provide them the .pfx/.pem so they configure the outbound connector.
Putting it all together for your scenario:
Confirm with your admin:
Install the certificate:
Register in Service Center (if applicable):
Implement client‑certificate usage in your REST call:
This is the standard way to use a certificate “along with the API” in OutSystems 11: the certificate is handled by IIS / Windows and OutSystems platform, and you attach it to the HTTP client via advanced extensibility (OnBeforeRequest + extension), not via a simple dropdown in the REST configuration.
If you share whether your environment is OutSystems Cloud or self‑managed, I can outline more concrete steps tailored to that setup (e.g., exactly what to ask support vs what to do in MMC).
Hi All,Greetings!First, I would like to know whether it is possible to pass a client certificate along with a consumed REST API in OutSystems Cloud. If it is possible, then how can it be implemented or configured?Thanks!Regards,Imtiyaz Ali
@Meer Imtiyaz Ali : It should be possible on OutSystems Cloud as well. Since you do not have direct access to infrastructure you have to reach out to OutSystems Support for the installation of the certificate. btw you might require a PFX file instead of PEM.
@Siya, Thanks for your response. I have currently saved the certificates for all environments in the Resources folder and am conditionally picking the appropriate certificate based on the environment. For now, this approach is working fine and my requirement has been fulfilled. However, the issue will arise when the certificates expire, as I will need to update and redeploy the certificates again. Therefore, I will need to look for a more permanent and maintainable solution for certificate management.
Thanks and regards,Meer Imtiyaz
@Meer Imtiyaz Ali : Thanks for the update. Since the current approach using Resources is working, you could explore moving the certificate management into an entity so that certificate rotation does not require a redeployment.