
Security News
vlt Launches "reproduce": A New Tool Challenging the Limits of Package Provenance
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
@portal-hq/gdrive-storage
Advanced tools
The @portal-hq/gdrive-storage
package contains a storage adapter intended for use with the @portal-hq/core
package.
This storage adapter allows end users to save backup MPC shares to their Google Drive.
Install the package in your React Native project.
yarn add @portal-hq/gdrive-storage
# OR #
npm install --save @portal-hq/gdrive-storage
Import the package into the component where you initialize the Portal class
import Portal from '@portal-hq/core'
import GoogleStorage from '@portal-hq/google-storage'
Register your storage adapter and initialize the Portal class
const storage = new GoogleStorage({
// Required for Android
androidClientId: 'YOUR_ANDROID_CLIENT_ID',
// Required for iOS
iosClientId: 'YOUR_IOS_CLIENT_ID',
// Optional
folder: 'YOUR_CUSTOM_STORAGE_LOCATION',
})
const portal = new Portal({
// ...your other config options
backup: {
gdrive: storage,
},
})
Because this package uses the @react-native-google-signin/google-signin
and @robinbobin/react-native-google-drive-api-wrapper
packages (which contain native modules) there is some additional linking required to make it work with your React Native project.
Explicitly install the @react-native-google-signin/google-signin
and @robinbobin/react-native-google-drive-api-wrapper
packages in your project.
yarn add @react-native-google-signin/google-signin
# OR #
npm install --save @react-native-google-signin/google-signin
Create a new project here
Go here click ENABLE APIS AND SERVICES
.
Find Google Drive
and Enable it.
Click on Create Credentials
and select Google Drive API
and User Data
for the type of data we are accessing.
Set up the OAuth Consent screen and add emails for testing
Click on Credentials
on the left navigation bar and then CREATE CREDENTIALS
-> OAuth Client ID
For Application Type
select iOS and enter the applications names.
Get your Bundle ID from the react-native / iOS project.
Download your .plist and copy your REVERSED_CLIENT_ID
to the URL Scheme section of your info.plist in xcode.
Rename the downloaded plist file to GoogleService-Info.plist
and save to your /ios/
directory.
Save your clientId for usage in the PortalStorageProvider
Add the below to your info.plist:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>REVERSE_CLIENT_ID</string>
</array>
</dict>
</array>
To get Android working, you'll need to create 2 (two) OAuth Client IDs. One will be of type Android
and the other of type Web
Create a new project here
Go here click ENABLE APIS AND SERVICES
.
Find Google Drive
and Enable it.
To get started, go to Credentials
and click Create Credentials
Select OAuth Client ID
Select Android
from the list
Fill in the form as instructed, with Name
, Package name
, and SHA-1
from your keystore. Note that when testing you'll want to use your debug.keystore
at /android/app/debug.keystore
. However later on you'll need to switch this value when pushing it to the store. (See https://stackoverflow.com/questions/41194413/google-sign-in-for-android-release-vs-debug)
After successfully creating your Android
OAuth Client ID, download the JSON:
This will create a google-service.json
file on your local machine.
Move the google-service.json
file into the /android/app
directory.
Go back to the Credentials
screen and repeat step 2.
This time select Web Application
:
Name
. Then after you click Create
, copy the value from Your Client ID
.<PortalStorageProvider />
like so:Once this is done, you can continue to develop your project like normal
FAQs
Portal's Google Sign-in and Google Drive API integration.
The npm package @portal-hq/gdrive-storage receives a total of 198 weekly downloads. As such, @portal-hq/gdrive-storage popularity was classified as not popular.
We found that @portal-hq/gdrive-storage demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
vlt's new "reproduce" tool verifies npm packages against their source code, outperforming traditional provenance adoption in the JavaScript ecosystem.
Research
Security News
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.