auth:import
komutu, kullanıcı hesaplarını Firebase projelerine aktarır.auth:export
komutu, kullanıcı hesaplarını JSON ve CSV dosyalarına aktarır.
Şifre karması parametreleri
Projenizde kullanılan şifre karması parametrelerini belirlemek için Firebase konsolunun Kimlik Doğrulama > Kullanıcılar bölümüne gidin ve kullanıcı listesinin üzerindeki üç nokta simgesini tıklayın. auth:import
ve auth:export
komutlarıyla kullanabileceğiniz şifre karması parametrelerinin listesini içeren bir iletişim kutusu gösterilir:
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, şifre karma oluşturma algoritmasının değiştirilmiş bir sürümü olan ve yeni projeler için varsayılan olarak SCRYPT
kullanı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ı. Dosya biçimi bölümünü inceleyin. |
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.SCRYPT , HMAC_SHA512 , HMAC_SHA256 , HMAC_SHA1 ve HMAC_MD5 algoritmaları için gereklidir.
Bu bağımsız değişken, base64 kodlu dize olarak biçimlendirilmelidir. |
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 kodlu bir dize olarak biçimlendirilmelidir. |
raunt | Şifreler için karma oluşturma işlemi uygulamak üzere kullanılan yuvarlama sayısı.SCRYPT , MD5 , SHA512 ,
SHA256 , SHA1 , PBKDF_SHA1 ve
PBKDF2_SHA256 algoritmaları için gereklidir. |
mem-maliyet | Bu parametre, SCRYPT algoritması için gerekli bellek maliyetini VEYA STANDARD_SCRYPT algoritması için gereken CPU/bellek maliyetini temsil eder.
|
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 SHA512 , SHA256 , SHA1 , MD5 , HMAC_SHA512 , HMAC_SHA256 , HMAC_SHA1 ve HMAC_MD5 için geçerlidir. |
auth:dışa aktarma
firebase auth:export ACCOUNT_FILE --format=FILE_FORMAT
Parametreler | |
---|---|
hesap_dosyası | Dışa aktarılacak CSV veya JSON dosyası. Dosya biçimi bölümünü inceleyin. |
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ı .csv veya .json ile bitiyorsa bu biçim kullanılır ve bu parametre 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ü | Yorum sayısı |
---|---|---|---|
1 | UID | 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ı |
CANNOT TRANSLATE | 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ı |
CANNOT TRANSLATE | 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 değer için boş bir alan eklediğinizden emin olun. Boş bir alan, herhangi bir sayıda boşluk karakteri olabilir.
Ö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.com
facebook.com
github.com
twitter.com