[PR #2629] [PM-3089] mTLS - Authenticate with Client Certificate #3692

Closed
opened 2025-11-26 23:36:11 -06:00 by GiteaMirror · 0 comments
Owner

Original Pull Request: https://github.com/bitwarden/android/pull/2629

State: closed
Merged: No


Type of change

  • Bug fix
  • New feature development
  • Tech debt (refactoring, code cleanup, dependency upgrades, etc)
  • Build/deploy pipeline (DevOps)
  • Other

Objective

This PR brings ability to login a bitwarden server by using a client certificate. The functionility has been implemented for Android.
User can import a X509 client certificate in pkcs#12 format to KeyStore or user can use existing certificates from keychain.

See: #582

Code changes

CertificateService.cs: responsible to interact with platform's native key management apis.
AdvancedPage.xaml: page where user setup the certificate.
AndroidHttpsHandler.cs: http handler that send the requests with client certificate

Screenshots

Demo

https://github.com/bitwarden/mobile/assets/4419532/a100dfc5-abfa-481b-b4fb-fe8cff1f67ed

Before you submit

  • Please check for formatting errors (dotnet format --verify-no-changes) (required)
  • Please add unit tests where it makes sense to do so (encouraged but not required)
  • If this change requires a documentation update - notify the documentation team
  • If this change has particular deployment requirements - notify the DevOps team
**Original Pull Request:** https://github.com/bitwarden/android/pull/2629 **State:** closed **Merged:** No --- ## Type of change - [ ] Bug fix - [x] New feature development - [ ] Tech debt (refactoring, code cleanup, dependency upgrades, etc) - [ ] Build/deploy pipeline (DevOps) - [ ] Other ## Objective This PR brings ability to login a bitwarden server by using a client certificate. The functionility has been implemented for Android. User can import a X509 client certificate in pkcs#12 format to KeyStore or user can use existing certificates from keychain. See: #582 ## Code changes **CertificateService.cs**: responsible to interact with platform's native key management apis. **AdvancedPage.xaml**: page where user setup the certificate. **AndroidHttpsHandler.cs**: http handler that send the requests with client certificate ## Screenshots Demo https://github.com/bitwarden/mobile/assets/4419532/a100dfc5-abfa-481b-b4fb-fe8cff1f67ed ## Before you submit - Please check for formatting errors (`dotnet format --verify-no-changes`) (required) - Please add **unit tests** where it makes sense to do so (encouraged but not required) - If this change requires a **documentation update** - notify the documentation team - If this change has particular **deployment requirements** - notify the DevOps team
GiteaMirror added the pull-request label 2025-11-26 23:36:11 -06:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/android#3692