Find in Codebook

Introduction

Find in Codebook is a Safari app extension for iOS that helps you log into websites securely using the passwords and other secure details you store in Codebook password manager. This article describes how to turn it on and how it works.

Turning it on

You can use the passwords and other login details you store in Codebook to fill out login forms in Safari without ever leaving Safari. No need to switch over to Codebook, login, look up the record, copy a password, and switch back to Safari to paste it in and then repeat for other fields as need. Instead, Codebook for iOS contains an App Extension called Find in Codebook that can be accessed from the Share sheet while viewing any web page in Safari.

Find in Codebook is disabled by default, and you must launch Codebook itself at least once on your iPhone or iPad and go through the app's setup process. Not only that, you'll want to create some records with your login details! Once you've done that, you're ready to start using Find in Codebook to login to websites in Safari.

1. Launch Safari and tap on the Share button at the bottom of the screen on iPhone (it's at the top of the screen on iPad) to display the Share Sheet.

Safari's Share button iOS Share Sheet

2. Swipe left on the bottom row of buttons until you see the More option at the end, and tap on More to display the Activities list.

Share Sheet More button Activities list

3. Turn on the switch next to Find in Codebook, and use the drag handles to move it up in the list for easy access. Then tap Done to dismiss the Activities list. Now you're all set to go!

Find in Codebook enabled Activities list Done button

Logging in to websites

Find in Codebook focuses specifically on login forms, i.e. those requiring some kind of account name and password at a minimum. It presents records from your encrypted database that are matched to the page being viewed and provides a search interface. Simply tap on the record that has the login details you require and Find in Codebook will fill out the form for you in Safari (some setup is required).

1. Launch Safari, visit a webpage with a login form, and tap the Share button.

Safari's Share button

2. Swipe left on the bottom row of buttons until you see Find in Codebook and tap on it.

Find in Codebook button

3. Find in Codebook will prompt you to provide your password (or authenticate with Touch ID or Face ID when enabled in Codebook's Login Settings).

Password prompt Touch ID prompt Face ID prompt

4. Tap on the record that matches your login form and Find in Codebook will fill it in.

Matching records Filled in login form

Finding matching websites

When Find in Codebook presents its interface, it will search your database for records that match the URL of the login form in one of three ways:

  1. Exact URL Matches are entries that have the exact URL of the login form saved in a field, e.g. https://login.example.com/login.aspx. Exact matches are prioritized, and this grouping is always shown to help prevent phishing-related incidents.
  2. Hostname Matches are entries that contain the hostname of the current URL saved in a field, e.g. login.example.com.
  3. Suggestions are the entries that contain the domain name string of the current URL, e.g. example.

Find in Codebook in the Share Sheet Matching records in Codebook

If Find in Codebook has not found any matches it will bring up the Search interface for you, but you can always tap on it at the top if the you don't see any relevant matches among Codebook's results. It works just like Search inside the main application, searching across all your record names and field values.

Search interface

How forms get filled

When Find in Codebook is launched from Safari, it is passed the current URL and the structure the webpage itself. It scans the page data for a login form, then it looks for certain input items on the form, like a username or email field, password and PIN fields, and TOTP fields.

Find in Codebook then searches for entries in your database that match the current URL in various ways, looking for records that have fields attached to them with the URL/Website label (fields are what we call the various credentials you might assign to an entry, for instance Email, Password, etc). Similarly, it also limits the results to records that have login credentials that can be used on the web page back in Safari.

For each URL-matching record found, Find in Codebook picks the first login and password fields listed on the entry (entries can have any number of fields of any type) and matches them to the input field names detected in the web page from Safari. When you tap on an entry in Find in Codebook, it packages up that information with some javascript that is sent back to Safari to fill in the login form (it does not attempt to submit any forms on your behalf).