react-native-keychain
Advanced tools
Comparing version 8.1.3 to 8.2.0
{ | ||
"name": "react-native-keychain", | ||
"version": "8.1.3", | ||
"version": "8.2.0", | ||
"description": "Keychain Access for React Native", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -25,5 +25,5 @@ <h1 align="center">react-native-keychain</h1> | ||
- [`resetInternetCredentials(server)`](#resetinternetcredentialsserver) | ||
- [`requestSharedWebCredentials()` (iOS only)](#requestsharedwebcredentials-ios-only) | ||
- [`setSharedWebCredentials(server, username, password)` (iOS only)](#setsharedwebcredentialsserver-username-password-ios-only) | ||
- [`canImplyAuthentication([{ authenticationType }])` (iOS only)](#canimplyauthentication-authenticationtype--ios-only) | ||
- [`requestSharedWebCredentials()` (iOS and visionOS only)](#requestsharedwebcredentials-ios-and-visionos-only) | ||
- [`setSharedWebCredentials(server, username, password)` (iOS and visionOS only)](#setsharedwebcredentialsserver-username-password-ios-and-visionos-only) | ||
- [`canImplyAuthentication([{ authenticationType }])` (iOS and visionOS only)](#canimplyauthentication-authenticationtype--ios-and-visionos-only) | ||
- [`getSupportedBiometryType()`](#getsupportedbiometrytype) | ||
@@ -143,11 +143,11 @@ - [`getSecurityLevel([{ accessControl }])` (Android only)](#getsecuritylevel-accesscontrol--android-only) | ||
### `requestSharedWebCredentials()` (iOS only) | ||
### `requestSharedWebCredentials()` (iOS and visionOS only) | ||
Asks the user for a shared web credential. Requires additional setup both in the app and server side, see [Apple documentation](https://developer.apple.com/documentation/security/shared_web_credentials). Resolves to `{ server, username, password }` if approved and `false` if denied and throws an error if not supported on platform or there's no shared credentials. | ||
### `setSharedWebCredentials(server, username, password)` (iOS only) | ||
### `setSharedWebCredentials(server, username, password)` (iOS and visionOS only) | ||
Sets a shared web credential. Resolves to `true` when successful. | ||
### `canImplyAuthentication([{ authenticationType }])` (iOS only) | ||
### `canImplyAuthentication([{ authenticationType }])` (iOS and visionOS only) | ||
@@ -158,3 +158,3 @@ Inquire if the type of local authentication policy is supported on this device with the device settings the user chose. Should be used in combination with `accessControl` option in the setter functions. Resolves to `true` if supported. | ||
**On iOS:** Get what type of hardware biometry support the device can use for biometric encryption. Resolves to a `Keychain.BIOMETRY_TYPE` value when supported and enrolled, otherwise `null`. | ||
**On iOS and visionOS:** Get what type of hardware biometry support the device can use for biometric encryption. Resolves to a `Keychain.BIOMETRY_TYPE` value when supported and enrolled, otherwise `null`. | ||
@@ -173,12 +173,12 @@ **On Android:** Get what type of Class 3 (strong) biometry support the device has. Resolves to a `Keychain.BIOMETRY_TYPE` value when supported, otherwise `null`. In most devices this will return `FINGERPRINT` (except for Pixel 4 or similar where fingerprint sensor is not present). | ||
| Key | Platform | Description | Default | | ||
| -------------------------- | ------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------- | | ||
| **`accessControl`** | All | This dictates how a keychain item may be used, see possible values in `Keychain.ACCESS_CONTROL`. | _None_ | | ||
| **`accessible`** | iOS only | This dictates when a keychain item is accessible, see possible values in `Keychain.ACCESSIBLE`. | _`Keychain.ACCESSIBLE.WHEN_UNLOCKED`_ | | ||
| **`accessGroup`** | iOS only | In which App Group to share the keychain. Requires additional setup with entitlements. | _None_ | | ||
| **`authenticationPrompt`** | All | What to prompt the user when unlocking the keychain with biometry or device password. | See [`authenticationPrompt` Properties](#authenticationprompt-properties) | | ||
| **`authenticationType`** | iOS only | Policies specifying which forms of authentication are acceptable. | `Keychain.AUTHENTICATION_TYPE.DEVICE_PASSCODE_OR_BIOMETRICS` | | ||
| **`service`** | All | Reverse domain name qualifier for the service associated with password. | _App bundle ID_ | | ||
| **`storage`** | Android only | Force specific cipher storage usage during saving the password | Select best available storage | | ||
| **`rules`** | Android only | Force following to a specific security rules | `Keychain.RULES.AUTOMATIC_UPGRADE` | | ||
| Key | Platform | Description | Default | | ||
| -------------------------- |---------------| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------- | | ||
| **`accessControl`** | All | This dictates how a keychain item may be used, see possible values in `Keychain.ACCESS_CONTROL`. | _None_ | | ||
| **`accessible`** | iOS, visionOS | This dictates when a keychain item is accessible, see possible values in `Keychain.ACCESSIBLE`. | _`Keychain.ACCESSIBLE.WHEN_UNLOCKED`_ | | ||
| **`accessGroup`** | iOS, visionOS | In which App Group to share the keychain. Requires additional setup with entitlements. | _None_ | | ||
| **`authenticationPrompt`** | All | What to prompt the user when unlocking the keychain with biometry or device password. | See [`authenticationPrompt` Properties](#authenticationprompt-properties) | | ||
| **`authenticationType`** | iOS, visionOS | Policies specifying which forms of authentication are acceptable. | `Keychain.AUTHENTICATION_TYPE.DEVICE_PASSCODE_OR_BIOMETRICS` | | ||
| **`service`** | All | Reverse domain name qualifier for the service associated with password. | _App bundle ID_ | | ||
| **`storage`** | Android only | Force specific cipher storage usage during saving the password | Select best available storage | | ||
| **`rules`** | Android only | Force following to a specific security rules | `Keychain.RULES.AUTOMATIC_UPGRADE` | | ||
@@ -243,5 +243,6 @@ ##### `authenticationPrompt` Properties | ||
| Key | Description | | ||
| ----------------- | -------------------------------------------------------------------- | | ||
|-------------------|----------------------------------------------------------------------| | ||
| **`TOUCH_ID`** | Device supports authentication with Touch ID. (iOS only) | | ||
| **`FACE_ID`** | Device supports authentication with Face ID. (iOS only) | | ||
| **`OPTIC_ID`** | Device supports authentication with Optic ID. (visionOS only) | | ||
| **`FINGERPRINT`** | Device supports authentication with Fingerprint. (Android only) | | ||
@@ -511,2 +512,6 @@ | **`FACE`** | Device supports authentication with Face Recognition. (Android only) | | ||
### visionOS | ||
This package supports visionOS. | ||
### Security | ||
@@ -513,0 +518,0 @@ |
@@ -49,2 +49,3 @@ declare module 'react-native-keychain' { | ||
FACE_ID = 'FaceID', | ||
OPTIC_ID = 'OpticID', | ||
FINGERPRINT = 'Fingerprint', | ||
@@ -123,3 +124,3 @@ FACE = 'Face', | ||
/** IOS ONLY */ | ||
/** IOS AND VISIONOS ONLY */ | ||
@@ -126,0 +127,0 @@ function requestSharedWebCredentials(): Promise<false | SharedWebCredentials>; |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
204897
459
573