Vad är Hasura?
Hasura är en plattform med öppen källkod som ger realtidsdataåtkomst till applikationer via ett RESTful och GraphQL API. Det gör det möjligt för utvecklare att bygga backend-tjänster snabbt genom att automatiskt generera API:er från databasscheman.
Historien om Hasura
Hasura skapades 2016 som ett projekt med öppen källkod med fokus på att förenkla utvecklingen av backend-tjänster. Projektet har vuxit betydligt sedan starten, med ett starkt fokus på utvecklarupplevelse och snabb API-genereringskapacitet.
Viktiga funktioner i Hasura
- Automatisk API-generering: Genererar automatiskt RESTful- och GraphQL-API:er från databasscheman utan att du behöver skriva kod manuellt
- Dataåtkomst i realtid: Ger dataåtkomst i realtid till program via de genererade API:erna
- Policy Engine: Innehåller en inbyggd policymotor för hantering av åtkomstkontroll på radnivå
- Schemahantering: Stöder schemahantering med automatiska uppdateringar när databasstrukturer ändras
- Stöd för flera klienter: Utformat för att stödja scenarier med flera klienter
- Öppen källkod: Finns som programvara med öppen källkod med community-driven utveckling
Användningsfall
- Bygga backend-tjänster för webb- och mobilapplikationer
- Skapa API:er från befintliga databasscheman
- Implementera säkerhetsprinciper på radnivå
- Utveckla mikrotjänstarkitekturer
- Snabb prototypning av applikationsbackends
- Ansluta frontend-applikationer till datakällor utan anpassad API-utveckling
Fördelar med Hasura
- Minskar tiden till marknaden genom att automatisera API-generering
- Tillhandahåller konsekvent API-struktur över olika datakällor
- Erbjuder inbyggda säkerhetsfunktioner för kontroll av dataåtkomst
- Stöder flera API-format (REST och GraphQL)
- Underhåller databasschema som källa till sanning
- Möjliggör snabba utvecklingscykler genom automatisering
Hur man installerar Hasura
Hasura kan distribueras genom olika metoder, inklusive Docker, Kubernetes eller direktinstallation. Distributionsprocessen omfattar vanligtvis:
- Hämta lämplig version för din miljö
- Konfigurera inställningar för databasanslutning
- Ställa in autentiserings- och auktoriseringsparametrar
- Distribuera till din infrastruktur
Säkerhet / administration / konfiguration
Hasura innehåller inbyggda säkerhetsfunktioner som hjälper till att skydda data och API-åtkomst:
- Säkerhet på radnivå: Policymotorn låter dig definiera vilka rader i tabeller som är tillgängliga för olika användare eller roller
- API Access Control: Konfigurerbara behörigheter för olika API-slutpunkter
- Administratörsgränssnittsskydd: Parametern admin secret hjälper till att säkra administrativ åtkomst
Bästa praxis för Hasura
- Använd starka, unika värden för administratörshemligheten
- Regelbundet granska och uppdatera säkerhetspolicyer baserat på dataändringar
- Övervaka API-användning för att upptäcka ovanliga mönster
- Håll din Hasura-instans uppdaterad med de senaste säkerhetsuppdateringarna
- Implementera korrekt loggning och övervakning för produktionsmiljöer
Konfigurationsparametrar
Efter att ha köpt det här programmet på Esadax, kommer du att uppmanas att tillhandahålla konfigurationsparametrarna nedan. Esadax lägger till de tillhandahållna variablerna i driftsättningen så att applikationen kan startas med den konfiguration den kräver.
| Parametrar |
Beskrivning |
HASURA_ADMIN_SECRET |
Värde som tillhandahålls till distributionen för HASURA_ADMIN_SECRET. |
När värdena är konfigurerade klickar du på Distribuera för att starta programmet. Det köpta programmet använder de medföljande konfigurationsvärdena, inklusive autentiseringsuppgifter som användarnamn och lösenord när dessa parametrar tillhandahålls.
Slutsats
Hasura ger en kraftfull plattform för utvecklare som behöver bygga backend-tjänster snabbt. Genom att automatisera API-generering från databasscheman minskar den avsevärt utvecklingstiden samtidigt som den upprätthåller starka säkerhetskontroller genom sin policymotor. Projektets öppna källkod möjliggör flexibilitet vid distribution samtidigt som det ger viktiga funktioner för moderna applikationsarkitekturer.