Quantcast
Channel: Damir's Corner
Viewing all articles
Browse latest Browse all 484

Ionic 4: Pinned Certificates in Output Folder

$
0
0

If you want to use certificate pinning in Ionic 4 applications, the Cordova Advanced HTTP plugin is your best option. There's even an Ionic Native wrapper available for it to make it easier to use.

To make it work, you need to pass all Angular HTTP requests to its API and then convert the responses back. I might write more about this process in a future blog post. This time I'll focus only on how to put the certificates into the www/certificates folder as required by the certificate pinning functionality.

The problem with that is that the www folder is deleted at the beginning of every build. This can be disabled by passing the --deleteOutputPath=false option to the build command:

ionic build -- --deleteOutputPath=false

However, I wanted to avoid this if possible because it could cause files from previous build to remain in the output folder. Fortunately, I stumbled upon the asset configuration options in the angular.json file. All I needed to do was add the following object to the projects.app.architect.build.assets array:

{
  "glob": "**/*.cer",
  "input": "src/certificates",
  "output": "/certificates"
}

As you can see, I decided to store the certificates in the src/certificates folder and have them copied from there to the correct location during each build. It works great!


Viewing all articles
Browse latest Browse all 484

Trending Articles