[ci] Sing Selenium Manager binary in macOS runner
diff --git a/.github/workflows/ci-rust.yml b/.github/workflows/ci-rust.yml
index 6b165b6..ad7c792 100644
--- a/.github/workflows/ci-rust.yml
+++ b/.github/workflows/ci-rust.yml
@@ -168,6 +168,9 @@
     if: github.event_name != 'schedule'
     env:
       RUSTFLAGS: '-Ctarget-feature=+crt-static'
+      APPLE_CERTIFICATE_BASE64: ${{ secrets.APPLE_CERTIFICATE_BASE64 }}
+      APPLE_CERTIFICATE_PASSCODE: ${{ secrets.APPLE_CERTIFICATE_PASSCODE }}
+      APPLE_KEYCHAIN_PASSWORD: ${{ secrets.APPLE_KEYCHAIN_PASSWORD }}
     steps:
       - name: "Checkout project"
         uses: actions/checkout@v4
@@ -186,6 +189,16 @@
             target/aarch64-apple-darwin/release/selenium-manager \
             target/x86_64-apple-darwin/release/selenium-manager
         working-directory: rust
+      - name: Code sign binary
+        run: |
+          echo "$APPLE_CERTIFICATE_BASE64" | base64 --decode > certificate.p12
+          security create-keychain -p "$APPLE_KEYCHAIN_PASSWORD" build.keychain
+          security default-keychain -s build.keychain
+          security unlock-keychain -p "$APPLE_KEYCHAIN_PASSWORD" build.keychain
+          security import certificate.p12 -k build.keychain -P "$APPLE_CERTIFICATE_PASSCODE" -T /usr/bin/codesign
+          security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k "$APPLE_KEYCHAIN_PASSWORD" build.keychain
+          codesign --timestamp --options runtime --sign "Puja Jagani" rust/target/selenium-manager-macos
+          codesign --verify --verbose rust/target/selenium-manager-macos
       - name: "Upload release binary"
         uses: actions/upload-artifact@v4
         with: