Veel gebruikers uploaden
Provisioning van uw gebruikers in een omgeving als interne gebruikers, met of zonder wachtwoord:
- U kunt de gebruikers uploaden met hun wachtwoord, als u de wachtwoorden van de gebruikers kent.
- Anders kunt u de gebruikers uploaden zonder wachtwoord en worden de gebruikers gevraagd een wachtwoord in te stellen met een e-mail of SMS bevestigingscode. Vereis dat de gebruikers een e-mail of telefoonnummer hebben.
De gebruikers worden in bulk geüpload naar een omgeving met maximaal 1.000 gebruikers per request wanneer de gebruikers zonder wachtwoorden worden aangemaakt, en maximaal 100 gebruikers per request wanneer wachtwoorden zijn inbegrepen. Dit ondersteunt meerdere uploads, waardoor miljoenen gebruikers kunnen worden geïmporteerd. U kunt de FoxIDs Control API direct gebruiken of de seed tool.
Voorbeeld uploadtijd voor 50.000 gebruikers
| Scenario | Gebruikers | Batch grootte | Benad. totale tijd |
|---|---|---|---|
| Zonder wachtwoorden | 50.000 | 1.000 | ~2 minuten |
| Met wachtwoorden | 50.000 | 100 | ~2 uur |
| Wachtwoord hashes vooraf berekend op client | 50.000 | 1.000 | ~5 minuten |
Tijden zijn benaderingen en zijn afhankelijk van clientmachine, netwerk en infrastructuur.
Het uploaden van gebruikers met wachtwoorden duurt langer omdat een password hash voor elke gebruiker moet worden berekend, en deze bewerking is opzettelijk tijdrovend vanwege beveiliging.
Uploadtijd kan worden verbeterd door de password hashes op de client te berekenen voordat de gebruikers worden geüpload.
Uploaden met seed tool
De seed tool leest gebruikers uit een CSV bestand en uploadt de gebruikers naar de geconfigureerde omgeving. De seed tool ondersteunt ook het bulk verwijderen van gebruikers.
Standaard berekent de seed tool password hashes op de client tijdens het uploaden om de serververwerkingstijd te verminderen.
CSV bestand
De CSV bestandselementen zijn gescheiden met ; en de tekst kan optioneel tussen aanhalingstekens staan.
U kunt voorbeeld CSV bestanden hier vinden.
(Zie bijvoorbeeld UTF-8 tekens in claims in het bestand password-claims-3-test-users.csv die multi language / extended character support demonstreren.)
De eerste regel van het CSV bestand zijn de hoofdlettergevoelige headers. U kunt ervoor kiezen om alle headers of een subset van de headers te gebruiken en de volgorde van de headers te wijzigen.
Headers:
- Phone
- Username
- ConfirmAccount
- EmailVerified
- PhoneVerified
- Password
- PasswordHashAlgorithm
- PasswordHash
- PasswordHashSalt
- ChangePassword
- PasswordLastChanged
- SetPasswordEmail
- SetPasswordSms
- DisableAccount
- Claims
- RequireMultiFactor
Het aantal headers en elementen in elke regel moet overeenkomen.
Deze CSV bestand sample gebruikt de Email en SetPasswordEmail headers om gebruikers zonder wachtwoorden te uploaden. De gebruiker moet bij de eerste login een wachtwoord instellen met e-mail bevestiging.
De e-mail wordt daarna als geverifieerd gemarkeerd.
Email;SetPasswordEmail
u1@somedomain.test;true
u2@somedomain.test;true
u3@somedomain.test;true
Deze CSV bestand sample bevat een gebruikersnaam en stelt e-mail en telefoonnummer in als geverifieerd. De wachtwoorden worden ingesteld met een e-mail of SMS bevestigingscode.
Email;Phone;Username;EmailVerified;PhoneVerified;SetPasswordEmail;SetPasswordSms
u1@somedomain.test;;u1;true;true;true;false
;+4422222222;u2;true;true;false;true
u3@somedomain.test;+4433333333;u3;true;true;true;false
Deze CSV bestand sample gebruikt alle headers en uploadt gebruikers met wachtwoorden en claims. De laatste gebruiker wordt geüpload als een uitgeschakelde gebruiker.
Email;Phone;Username;ConfirmAccount;EmailVerified;PhoneVerified;Password;ChangePassword;SetPasswordEmail;SetPasswordSms;DisableAccount;Claims;RequireMultiFactor
u1@somedomain.test;+4411111111;u1;false;true;true;"My1Password!";false;false;false;false;"[{""Claim"": ""role"", ""Values"": [""admin""]}]";false
u2@somedomain.test;+4422222222;u2;false;true;true;"My2Password!";true;false;false;false;"[{""Claim"": ""role"", ""Values"": [""admin""]}, {""Claim"": ""customer_id"", ""Values"": [""1234""]}]";true
u3@somedomain.test;+4433333333;u3;false;true;true;"My3Password!";false;false;false;true;"[{""Claim"": ""role"", ""Values"": [""admin"", ""user""]}]";false
Als u password hashes op de client vooraf berekent, gebruik dan de kolommen PasswordHashAlgorithm, PasswordHash en PasswordHashSalt en laat Password leeg (of verwijder). U kunt optioneel de oorspronkelijke password change timestamp behouden met PasswordLastChanged (Unix seconden). Wanneer een wachtwoord of hash wordt geleverd zonder PasswordLastChanged, stempelt de upload de huidige tijd.
U moet wachtwoorden en claims toevoegen met de ;""; notatie. Als een wachtwoord het " symbool bevat wordt het ge-escaped, bijvoorbeeld het wachtwoord My"Password dat wordt ;"My""Password";
Claims worden toegevoegd met een JSON structuur zonder regelafbrekingen en de " symbolen worden ge-escaped.
[
{ "Claim": "role", "Values": ["admin", "user"] },
{ "Claim": "customer_id", "Values": ["1234"] }
]
Seed tool downloaden en configureren
Download eerst het FoxIDs.SeedTool-x.x.x-win-x64.zip bestand voor Windows of het FoxIDs.SeedTool-x.x.x-linux-x64.zip bestand voor Linux van de FoxIDs release en pak de seed tool uit.
De seed tool wordt geconfigureerd in het appsettings.json bestand.
Toegang om gebruikers te uploaden wordt verleend in uw master omgeving.
Maak een seed tool OAuth 2.0 client aan in de FoxIDs Control Client:
Dit geeft de seed tool volledige toegang tot uw tenant, voor least privileges zie API access rights.
- Log in op uw tenant (in self-hosted de hoofdtenant)
- Selecteer de master omgeving (in de bovenste midden omgeving selector)
- Selecteer het tabblad Applications
- Klik op New Application
- Klik op Backend Application
- Selecteer Show advanced
- Voeg een Name toe, bijv.
Seed tool - Wijzig de Client ID naar
foxids_seed - Klik op Register
- Onthoud de Authority.
- Onthoud de Client secret.
- Klik op Close
- Klik op de applicatie in de lijst om deze te openen
- In de sectie Resource and scopes
- Verwijder het vinkje bij Default resource 'foxids_seed' for the application itself
- Klik op Add Resource and scope en voeg de resource
foxids_control_apitoe - Klik vervolgens op Add Scope en voeg de scope
foxids:tenanttoe
- Selecteer Show advanced
- In de sectie Issue claims
- Klik op Add Claim en voeg de claim
roletoe - Klik vervolgens op Add Value en voeg de claimwaarde
foxids:tenanttoe
- Klik op Add Claim en voeg de claim
- Klik op Update

Voeg uw FoxIDs Control API endpoint en tenant en environment en de seed tool Authority en Client secret en het CSV bestandspad toe aan de seed tool configuratie.
"SeedSettings": {
"FoxIDsControlEndpoint": "https://control.foxids.com", // self-hosted "https://control.yyyyxxxx.com" or local development https://localhost:44331
"Tenant": "xxxxxx",
"Environment": "xxxxxx",
"Authority": "https://id.foxids.com/zzzzz/master/foxids_seed/", // custom domain, self-hosted or local development "https://https://localhost:44331/zzzzz/master/foxids_seed/"
"ClientId": "foxids_master_seed",
"ClientSecret": "xxxxxx",
"Scope": "foxids_control_api:foxids:tenant",
"UsersSvcPath": "c:\\... xxx ...\\users.csv"
}
Seed tool uitvoeren en gebruikers uploaden
- Start een Command Prompt
- Voer de seed tool uit met
SeedTool.exe - Klik op
Uom het uploaden van gebruikers te starten
Het uploaden kan even duren afhankelijk van het aantal gebruikers.