प्रमाणन:आयात और प्रमाणन:निर्यात

  • auth:import कमांड उपयोगकर्ता खातों को फायरबेस प्रोजेक्ट्स में आयात करता है।

  • auth:export कमांड उपयोगकर्ता खातों को JSON और CSV फ़ाइलों में निर्यात करता है।

पासवर्ड हैश पैरामीटर

आपके प्रोजेक्ट के लिए उपयोग किए गए पासवर्ड हैश पैरामीटर निर्धारित करने के लिए फायरबेस कंसोल के प्रमाणीकरण > उपयोगकर्ता अनुभाग पर जाएं और उपयोगकर्ताओं की सूची के ऊपर तीन बिंदु आइकन पर क्लिक करें। आपको पासवर्ड हैश पैरामीटर्स की सूची वाला एक संवाद दिखाई देगा जिसका उपयोग आप auth:import और auth:export कमांड के साथ कर सकते हैं:

hash_config {
  algorithm: SCRYPT,
  base64_signer_key: <...sensitive...>,
  base64_salt_separator: <...sensitive...>,
  rounds: 8,
  mem_cost: 14,
}

ये मूल्य संवेदनशील हैं, इसलिए इन्हें सावधानी से संग्रहित करें। अधिकांश फायरबेस प्रोजेक्ट SCRYPT का उपयोग करते हैं, जो स्क्रिप्ट हैशिंग एल्गोरिदम का एक संशोधित संस्करण है , जो नई परियोजनाओं के लिए डिफ़ॉल्ट है।

प्रमाण:आयात

firebase auth:import ACCOUNT_FILE    \
    --hash-algo=HASH_ALGORITHM         \
    --hash-key=KEY                     \
    --salt-separator=SALT_SEPARATOR    \
    --rounds=ROUNDS                    \
    --mem-cost=MEM_COST                \
    --parallelization=PARALLELIZATION  \
    --block-size=BLOCK_SIZE            \
    --dk-len=DK_LEN                    \
    --hash-input-order=HASH_INPUT_ORDER
पैरामीटर
खाता_फ़ाइल CSV या JSON फ़ाइल जिसमें आयात करने के लिए उपयोगकर्ता खाते शामिल हैं। फ़ाइल स्वरूप देखें.
हैश-एल्गो उपयोगकर्ता खाता फ़ाइल में पासवर्ड हैश करने के लिए एल्गोरिदम का उपयोग किया जाता है।
पासवर्ड फ़ील्ड वाले खाते आयात करना आवश्यक है. निम्न मानों में से एक: BCRYPT , SCRYPT , STANDARD_SCRYPT , HMAC_SHA512 , HMAC_SHA256 , HMAC_SHA1 , HMAC_MD5 , MD5 , SHA512 , SHA256 , SHA1 , PBKDF_SHA1 , PBKDF2_SHA256 .
हैश कुंजी पासवर्ड हैश करने के लिए कुंजी का उपयोग किया जाता है.
SCRYPT , HMAC_SHA512 , HMAC_SHA256 , HMAC_SHA1 और HMAC_MD5 एल्गोरिदम के लिए आवश्यक है। इस तर्क को बेस64-एन्कोडेड स्ट्रिंग के रूप में स्वरूपित किया जाना चाहिए।
नमक विभाजक नमक विभाजक जिसे पासवर्ड सत्यापित करते समय नमक से जोड़ा जाएगा।
सभी एल्गोरिदम के लिए वैकल्पिक. इस तर्क को बेस64-एन्कोडेड स्ट्रिंग के रूप में स्वरूपित किया जाना चाहिए।
राउंड पासवर्ड हैश करने के लिए उपयोग किए जाने वाले राउंड की संख्या.
SCRYPT , MD5 , SHA512 , SHA256 , SHA1 , PBKDF_SHA1 और PBKDF2_SHA256 एल्गोरिदम के लिए आवश्यक।
मेम-लागत यह पैरामीटर या तो SCRYPT एल्गोरिथम के लिए आवश्यक मेमोरी लागत या STANDARD_SCRYPT एल्गोरिथम के लिए आवश्यक CPU/मेमोरी लागत का प्रतिनिधित्व करता है।
साथ में चलाना हैशिंग एल्गोरिदम का समानांतरीकरण।
STANDARD_SCRYPT एल्गोरिथम के लिए आवश्यक.
ब्लॉक का आकार हैशिंग एल्गोरिदम का ब्लॉक आकार (सामान्यतः 8 है)।
STANDARD_SCRYPT एल्गोरिथम के लिए आवश्यक.
डीके-लेन हैशिंग एल्गोरिदम की व्युत्पन्न कुंजी लंबाई।
STANDARD_SCRYPT एल्गोरिथम के लिए आवश्यक.
हैश-इनपुट-ऑर्डर पासवर्ड और नमक का क्रम.
संभावित मान SALT_FIRST और PASSWORD_FIRST हैं। यह ध्वज SHA512 , SHA256 , SHA1 , MD5 , HMAC_SHA512 , HMAC_SHA256 , HMAC_SHA1 और HMAC_MD5 पर लागू होता है।

प्रमाणन:निर्यात

firebase auth:export ACCOUNT_FILE --format=FILE_FORMAT
पैरामीटर
खाता_फ़ाइल निर्यात करने के लिए CSV या JSON फ़ाइल. फ़ाइल स्वरूप देखें.
फ़ाइल फ़ारमैट वैकल्पिक। निर्यात करने के लिए फ़ाइल स्वरूप: या तो CSV या JSON.
यदि account_file पैरामीटर में निर्दिष्ट फ़ाइल नाम .csv या .json के साथ समाप्त होता है, तो उस प्रारूप का उपयोग किया जाता है और इस पैरामीटर को अनदेखा कर दिया जाता है।

फ़ाइल फ़ारमैट

उपयोगकर्ता खाता फ़ाइल को CSV या JSON के रूप में स्वरूपित किया जा सकता है।

सीएसवी

CSV उपयोगकर्ता खाता फ़ाइल का प्रारूप निम्न है:

स्तम्भ संख्या फ़ील्ड विवरण क्षेत्र प्रकार टिप्पणियाँ
1 यूआईडी डोरी आवश्यक
यह आईडी आपके फायरबेस प्रोजेक्ट के सभी खातों में अद्वितीय होनी चाहिए। यदि आप पहले से मौजूद यूआईडी वाला खाता आयात करते हैं, तो खाता अधिलेखित कर दिया जाएगा।
2 ईमेल डोरी वैकल्पिक
3 ईमेल सत्यापित हुआ बूलियन वैकल्पिक
4 पासवर्ड हैश डोरी वैकल्पिक
एक बेस64 एन्कोडेड स्ट्रिंग। इस फ़ील्ड के लिए कॉल करने वाले को संपादक या स्वामी की भूमिका की आवश्यकता होती है।
5 पासवर्ड नमक डोरी वैकल्पिक
एक बेस64 एन्कोडेड स्ट्रिंग। इस फ़ील्ड के लिए कॉल करने वाले को संपादक या स्वामी की भूमिका की आवश्यकता होती है।
6 नाम डोरी वैकल्पिक
7 फोटो यूआरएल डोरी वैकल्पिक
8 गूगल आईडी डोरी वैकल्पिक
9 गूगल ईमेल डोरी वैकल्पिक
10 गूगल प्रदर्शन नाम डोरी वैकल्पिक
11 गूगल फोटो यूआरएल डोरी वैकल्पिक
12 फेसबुक आईडी डोरी वैकल्पिक
13 फेसबुक ईमेल डोरी वैकल्पिक
14 फेसबुक प्रदर्शन नाम डोरी वैकल्पिक
15 फेसबुक फोटो यूआरएल डोरी वैकल्पिक
16 ट्विटर आईडी डोरी वैकल्पिक
17 ट्विटर ईमेल डोरी वैकल्पिक
18 ट्विटर प्रदर्शन नाम डोरी वैकल्पिक
19 ट्विटर फोटो यूआरएल डोरी वैकल्पिक
20 गिटहब आईडी डोरी वैकल्पिक
21 गिटहब ईमेल डोरी वैकल्पिक
22 GitHub प्रदर्शन नाम डोरी वैकल्पिक
23 GitHub फोटो यूआरएल डोरी वैकल्पिक
24 उपयोगकर्ता निर्माण समय लंबा वैकल्पिक
एपोक यूनिक्स टाइमस्टैम्प मिलीसेकेंड में।
25 अंतिम साइन-इन समय लंबा वैकल्पिक
एपोक यूनिक्स टाइमस्टैम्प मिलीसेकेंड में।
26 फ़ोन नंबर डोरी वैकल्पिक

यदि आप किसी वैकल्पिक मान को अनिर्दिष्ट छोड़ देते हैं, तो सुनिश्चित करें कि आप अभी भी मान के लिए एक खाली फ़ील्ड शामिल करते हैं। एक खाली फ़ील्ड में कितनी भी संख्या में स्पेस वर्ण हो सकते हैं।

उदाहरण के लिए, निम्न पंक्ति एक उपयोगकर्ता खाते का प्रतिनिधित्व करती है:

111, test@test.org, false, Jlf7onfLbzqPNFP/1pqhx6fQF/w=, c2FsdC0x, Test User, http://photo.com/123, , , , , 123, test@test.org, Test FB User, http://photo.com/456, , , , , , , , , 1486324027000, 1486324027000

JSON

JSON उपयोगकर्ता खाता फ़ाइल का प्रारूप निम्न है:

{
  "users": [
    {
      "localId": UID,
      "email": EMAIL_ADDRESS
      "emailVerified": EMAIL_VERIFIED,
      "passwordHash": BASE64_ENCODED_PASSWORD_HASH,
      "salt": BASE64_ENCODED_PASSWORD_SALT,
      "displayName": NAME,
      "photoUrl": PHOTO_URL,
      "createdAt": CREATED_AT_IN_MILLIS,
      "lastSignedInAt": LAST_SIGNEDIN_AT_IN_MILLIS,
      "phoneNumber": PHONE_NUMBER
      "providerUserInfo": [
        {
          "providerId": PROVIDER_ID,
          "rawId": PROVIDER_UID,
          "email":  PROVIDER_EMAIL,
          "displayName": PROVIDER_NAME,
          "photoUrl": PROVIDER_PHOTO_URL
        },
        ...
      ]
    },
    ...
  ]
}

PROVIDER_ID निम्न में से किसी एक मान से बदलें:

  • google.com
  • facebook.com
  • github.com
  • twitter.com