auth:importkomutu, kullanıcı hesaplarını Firebase'e aktarır bilgi edinmenizi sağlar.auth:exportkomutu, kullanıcı hesaplarını JSON'a ve CSV dosyaları.
Şifre karması parametreleri
Projenizde kullanılan şifre karması parametrelerini belirlemek için şuraya gidin:
Kimlik Doğrulama > Firebase konsolunun Kullanıcılar bölümüne gidip
kullanıcı listesinin üzerindeki üç nokta simgesini tıklayın. Listenin olduğu bir iletişim kutusu göreceksiniz
auth:import ve auth:export ile kullanabileceğiniz şifre karması parametresi
komutları:
hash_config {
algorithm: SCRYPT,
base64_signer_key: <...sensitive...>,
base64_salt_separator: <...sensitive...>,
rounds: 8,
mem_cost: 14,
}
Bu değerler hassas olduğundan dikkatli bir şekilde saklayın. Çoğu Firebase projesi,
SCRYPT, şifre karma oluşturma algoritmasının değiştirilmiş bir sürümüdür,
Yeni projeler için varsayılan ayardır.
auth:içe aktarma
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
| Parametreler | |
|---|---|
| hesap_dosyası | İçe aktarılacak kullanıcı hesaplarını içeren CSV veya JSON dosyası. Görüntüleyin Dosya biçimi. |
| karma-algo | Kullanıcı hesabı dosyasındaki şifrelere karma oluşturma işlemi uygulamak için kullanılan algoritma. . Şifre alanları olan hesapları içe aktarmak için gereklidir. Şu değerlerden biri: BCRYPT,
SCRYPT STANDARD_SCRYPT,
HMAC_SHA512, HMAC_SHA256,
HMAC_SHA1, HMAC_MD5, MD5,
SHA512, SHA256, SHA1,
PBKDF_SHA1, PBKDF2_SHA256. |
| karma-anahtar | Şifrelere karma oluşturma işlemi uygulamak için kullanılan anahtar. . Şunun için gereklidir: SCRYPT, HMAC_SHA512, HMAC_SHA256,
HMAC_SHA1 ve HMAC_MD5 algoritmaları.
Bu bağımsız değişken, base64 kodlu olarak biçimlendirilmelidir.
dize. |
| tuz ayırıcı | Şifre doğrulanırken takviye değere eklenecek tuz ayırıcı. . Tüm algoritmalar için isteğe bağlıdır. Bu bağımsız değişken base64 olarak kodlanmış dizeyi kullanın. |
| raunt | Şifreler için karma oluşturma işlemi uygulamak üzere kullanılan yuvarlama sayısı. . Şunun için gereklidir: SCRYPT, MD5, SHA512,
SHA256, SHA1, PBKDF_SHA1 ve
PBKDF2_SHA256 algoritma. |
| mem-maliyet | Bu parametre,
SCRYPT algoritması VEYA
STANDARD_SCRYPT algoritması.
|
| paralel yapma | Karma oluşturma algoritmasının paralelleştirilmesi. . STANDARD_SCRYPT algoritması için gereklidir. |
| blok boyutu | Karma oluşturma algoritmasının blok boyutu (normalde 8'dir). . STANDARD_SCRYPT algoritması için gereklidir. |
| dk-len | Karma oluşturma algoritmasının türetilen anahtar uzunluğu. . STANDARD_SCRYPT algoritması için gereklidir. |
| karma-giriş-siparişi | Şifre ve takviye değer sırası. . Olası değerler: SALT_FIRST ve PASSWORD_FIRST. Bu işaret geçerli olur
alıcı: SHA512, SHA256, SHA1,
MD5, HMAC_SHA512, HMAC_SHA256,
HMAC_SHA1 ve HMAC_MD5. |
auth:dışa aktarma
firebase auth:export ACCOUNT_FILE --format=FILE_FORMAT
| Parametreler | |
|---|---|
| hesap_dosyası | Dışa aktarılacak CSV veya JSON dosyası. Dosyayı inceleyin biçimindedir. |
| dosya_biçimi | İsteğe bağlıdır. Dışa aktarılacak dosya biçimi: CSV veya JSON. . account_file parametresinde belirtilen dosya adı bitiyorsa
.csv veya .json ile, bu biçim kullanılır ve bu
parametresi yoksayılır.
|
Dosya biçimi
Kullanıcı hesabı dosyası, CSV veya JSON olarak biçimlendirilebilir.
CSV
CSV kullanıcı hesabı dosyası şu biçimdedir:
| Sütun numarası | Alan açıklaması | Alan türü | Yorumlar |
|---|---|---|---|
| 1 | Benzersiz Kimlik | Dize | Zorunlu Bu kimlik, Firebase projelerinizdeki tüm hesaplar arasında benzersiz olmalıdır. Zaten UID'si olan bir hesabı içe aktarırsanız hesabın üzerine yazılır. |
| 2 | E-posta | Dize | İsteğe bağlı |
| 3 | E-posta Onaylandı | Boole | İsteğe bağlı |
| 4 | Şifre Karması | Dize | İsteğe bağlı base64 kodlamalı bir dize. Bu alan, arayanın Düzenleyici veya Sahip rolüne sahip olmasını gerektirir. |
| 5 | Şifre Tuzu | Dize | İsteğe bağlı base64 kodlamalı bir dize. Bu alan, arayanın Düzenleyici veya Sahip rolüne sahip olmasını gerektirir. |
| 6 | Ad | Dize | İsteğe bağlı |
| 7 | Fotoğraf URL'si | Dize | İsteğe bağlı |
| 8 | Google kimliği | Dize | İsteğe bağlı |
| 9 | Google E-posta | Dize | İsteğe bağlı |
| 10 | Google Görünen Adı | Dize | İsteğe bağlı |
| 11 | Google Fotoğraflar URL'si | Dize | İsteğe bağlı |
| 12 | Facebook Kimliği | Dize | İsteğe bağlı |
| 13 | Facebook E-posta Adresi | Dize | İsteğe bağlı |
| 14 | Facebook Görünen Adı | Dize | İsteğe bağlı |
| 15 | Facebook Fotoğrafı URL'si | Dize | İsteğe bağlı |
| 16 | Twitter kimliği | Dize | İsteğe bağlı |
| 17 | Twitter E-posta Adresi | Dize | İsteğe bağlı |
| 18 | Twitter Görünen Adı | Dize | İsteğe bağlı |
| 19 | Twitter Fotoğraf URL'si | Dize | İsteğe bağlı |
| 20 | GitHub kimliği | Dize | İsteğe bağlı |
| 21 | GitHub E-posta Adresi | Dize | İsteğe bağlı |
| 22 | GitHub Görünen Adı | Dize | İsteğe bağlı |
| 23 | GitHub Fotoğrafı URL'si | Dize | İsteğe bağlı |
| 24 | Kullanıcı Oluşturma Zamanı | Uzun | İsteğe bağlı Milisaniye cinsinden Epoch Unix Zaman Damgası. |
| 25 | Son Oturum Açma Zamanı | Uzun | İsteğe bağlı Milisaniye cinsinden Epoch Unix Zaman Damgası. |
| 26 | Telefon Numarası | Dize | İsteğe bağlı |
İsteğe bağlı bir değeri belirtmeden bırakırsanız yine de değer için boş bir alan. Boş alan, herhangi bir sayıda boşluk olabilir karakteri ekleyin.
Örneğin, aşağıdaki satır bir kullanıcı hesabını temsil eder:
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 kullanıcı hesabı dosyası şu biçimdedir:
{
"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 öğesini şu değerlerden biriyle değiştirin:
google.comfacebook.comgithub.comtwitter.com