151 Commits

Author SHA1 Message Date
Igor Mandrigin
33eb25baf3 bring back setUsername that was removed by mistake v3.0.0-status-1 v.3.0.0-1-status 2019-01-15 13:38:35 +01:00
Igor Mandrigin
43e5512cab
Minimal security guarantees for react-native-keychain (#6)
* Implement security level guarantees for Android.

Supported security levels:
- ANY
- SECURE_SOFTWARE
- SECURE_HARDWARE (TEE or SE guarantees).

(1) Add `getSecurityLevel()` API that returns which security level is
supported on this Android version and the specific device.

(2) For APIs that store credentials, an additional optional parameter was added
that fails storing the credentials if the security level is not what is
expected.

```
// Store the credentials.
// Will fail if Keychain can't guarantee at least SECURE_HARDWARE level of encryption key.
await Keychain.setGenericPassword(username, password, Keychain.SECURITY_LEVEL.SECURE_HARDWARE);
```

(3) StongBox support on Android 9+ (and supported devices [Pixel 3]).

Co-Authored-By: mandrigin <mandrigin@users.noreply.github.com>
v.3.0.0-status
2018-12-19 09:11:10 +01:00
Pedro Pombeiro
ea1bfe6b80
Pass more context to external project for cross-compiling (#5) 2018-10-25 20:35:53 +02:00
Max Risuhin
61fb404b9b
Use status fork of qtkeychain 2018-07-03 20:10:32 +03:00
Max Risuhin
878d5491d2
Capability to store username for further usage 2018-06-30 12:21:52 +03:00
Max Risuhin
6b6dc512d2
Resolve utf8 data transfer issue from cpp to cljs 2018-06-29 01:44:50 +03:00
Max Risuhin
db022e73c7
Disable translations building 2018-06-26 01:22:31 -07:00
Max Risuhin
8e7228718f
Support linux compilation 2018-06-25 00:59:21 -07:00
Volodymyr Kozieiev
6536405d1c
Added basic support of desktop platform 2018-06-22 18:28:24 +03:00
Jean-Philippe Monette
5a6e5b6ba8 Update typings for new constants (#122)
Add:
- SecAccessControl
- SecAccessible
- LAPolicy
- `accessible` for Options
2018-05-31 22:03:46 +02:00
Joel Arvidsson
937840ae68 Update package in Example project. Fixes #130 2018-05-31 22:00:14 +02:00
Timothy Mwirabua
f657bf8bc9 Clear form to demonstrate loading easily (#118) 2018-03-29 13:26:00 +02:00
Vojtech Novak
ee959ba42e
improve consistency and docs (#114)
* Update KeychainModule.java

* Update README.md
2018-03-13 16:24:58 +01:00
Johannes Filter
43b1f870f0 add missing await in readme (#113) 2018-03-08 00:21:39 +01:00
Joel Arvidsson
3c54d65441
3.0.0 Release Candidate 3 v3.0.0-rc.3 2018-02-28 14:15:10 +01:00
shofman
61b6626f34 Update DeviceAvailability to work with Android < 6 (#109)
Validate that the build version supports FingerprintManager before using it. Return false when not supported
2018-02-28 14:14:36 +01:00
Joel Arvidsson
009f7566a8 3.0.0 Release Candidate 2 v3.0.0-rc.2 2018-02-27 16:25:31 +01:00
Joel Arvidsson
c3990b0c09 Add Android support for getSupportedBiometryType 2018-02-27 16:20:37 +01:00
Joel Arvidsson
3247375911 3.0.0 Release Candidate 1 v3.0.0-rc.1 3.0.0-rc.1 2018-02-27 14:00:10 +01:00
Joel Arvidsson
ad8061e83d Update documentation in README 2018-02-27 13:58:37 +01:00
Joel Arvidsson
c2cc3285b7 Resolve with false instead of throwing for platforms that can't imply authentication 2018-02-27 11:51:13 +01:00
Joel Arvidsson
add90c5769 Remove *PasswordWithAuthentication and replace with accessControl option 2018-02-26 12:31:06 +01:00
Joel Arvidsson
37ea15ae5e Add APPLICATION_PASSWORD to accessControl options 2018-02-26 11:15:14 +01:00
Joel Arvidsson
f113f32e05 Document options in README 2018-02-26 00:38:31 +01:00
Joel Arvidsson
618acc7789 Rename TOUCH_ID_* enums to BIOMETRY_* 2018-02-26 00:14:48 +01:00
Joel Arvidsson
abed674800 Refactor iOS code and add accessGroup to *PasswordWithAuthentication 2018-02-25 23:53:42 +01:00
Joel Arvidsson
bb2adaedad Add human friendly error for errSecMissingEntitlement 2018-02-25 23:42:53 +01:00
Joel Arvidsson
9c734ac9f9 Rename customPrompt to authenticationPrompt 2018-02-25 23:42:15 +01:00
Vojtech Novak
7efae775e1
Update README.md 2018-02-25 22:18:26 +01:00
Joel Arvidsson
f596fa68bd Upgrade example to RN 0.53 and add tvOS target 2018-02-25 20:21:47 +01:00
Joel Arvidsson
9455bac5e9 Fix tvOS support 2018-02-25 20:21:01 +01:00
Joel Arvidsson
8a30ba0341 Update example app with biometric features 2018-02-25 19:24:35 +01:00
Joel Arvidsson
0b1b1d3395 Return null instead of throwing for getSupportedBiometryType on android 2018-02-25 19:23:36 +01:00
Joel Arvidsson
d6544520f2 Rename *SecurePassword to *PasswordWithAuthentication and unify arguments 2018-02-25 19:20:49 +01:00
Joel Arvidsson
ecaa3f0041 Fix resetGenericPassword to also clear those with authentication 2018-02-25 19:16:07 +01:00
Joel Arvidsson
d6a00596c4 Export enum options 2018-02-25 17:48:43 +01:00
Joel Arvidsson
b9fad8768e Fix formatting of iOS code 2018-02-25 17:21:12 +01:00
Joel Arvidsson
b227c59406 Don't throw in canImplyAuthentication 2018-02-25 17:07:18 +01:00
Joel Arvidsson
aac2d3d8c4 Add getSupportedBiometryType 2018-02-25 17:05:33 +01:00
Joel Arvidsson
1497383434 Throw on methods not yet supported on android 2018-02-25 16:29:33 +01:00
Joel Arvidsson
126c69266e Fix android related bugs in example app 2018-02-25 16:16:22 +01:00
Joel Arvidsson
a751670b92 Format with prettier and add .prettierrc 2018-02-25 16:14:17 +01:00
Steff
172368f2fd Protect the data stored in keychain by TouchId or Passcode (#65)
* First draft of implementing secured storage support (TouchId or Passcode)

* minor improvements

* improving the implementation; Support for AppDelegate-notification

* minor changes and improvements

* provding requested constant as usability feature; added documentation to canImplyAuthentication

* updating .d.ts-file

* when fetching stored items using the traditional modality (not TouchId or Passcode protected) ignore any items that need authentication.
2018-02-25 15:55:17 +01:00
Joel Arvidsson
55681fa8e8
Add logo to README 2018-02-25 15:12:36 +01:00
Joel Arvidsson
06e0ea8678 Release 2.0.0 v2.0.0 2018-01-08 22:23:24 +01:00
Joel Arvidsson
0619004744
Add travis config and release to npm automatically (#97) 2018-01-08 20:25:20 +01:00
Joel Arvidsson
c84f9517ca Bump RN version in KeychainExample 2018-01-08 20:15:36 +01:00
Kevin Barrett
0c9d6d6ab8 Update README to include proguard note (#88)
Add note on proguard exception rule to fix conceal error.
2017-11-19 13:54:38 +01:00
Vojtech Novak
610ad80134 do not specify RN version in gradle
previously this would cause gradle to fetch old rn version even though it wasn't needed
2017-09-06 15:34:50 +02:00
Julien K
712679ff89 Add react-native-keychain on tvOS (#78)
* [tvOS] Update podspec

* [tvOS] Add target

* [SecRequestSharedWebCredential] is only available on iOS and not tvOS

* [Security] Move into the same folder Framework

* [RNKeychainManager.m] Change indentation
2017-08-24 23:21:36 +02:00