firebase_dart_admin_auth_sdk 0.0.8 copy "firebase_dart_admin_auth_sdk: ^0.0.8" to clipboard
firebase_dart_admin_auth_sdk: ^0.0.8 copied to clipboard

A Dart SDK for Firebase Admin Authentication, enabling secure server-side authentication and user management for Dart-based backend applications.

Firebase Dart Admin Auth SDK #

Overview #

The Firebase Dart Admin Auth SDK offers a robust and flexible set of tools to perform authentication procedures within Dart or Flutter projects. This is a Dart implementation of Firebase admin authentication.

Features: #

  • User Management: Manage user accounts seamlessly with a suite of comprehensive user management functionalities.
  • Custom Token Minting: Integrate Firebase authentication with your backend services by generating custom tokens.
  • Generating Email Action Links: Perform authentication by creating and sending email action links to users emails for email verification, password reset, etc.
  • ID Token verification: Verify ID tokens securely to ensure that application users are authenticated and authorised to use app.
  • Managing SAML/OIDC Provider Configuration: Manage and configure SAML and ODIC providers to support authentication and simple sign-on solutions.

Getting Started #

If you want to use the Firebase Dart Admin Auth SDK for implementing a Firebase authentication in your Flutter projects follow the instructions on how to set up the auth SDK.

  • Ensure you have a Flutter or Dart (3.9.0) SDK installed in your system.
  • Set up a Firebase project and service account.
  • Set up a Flutter project.

Installation #

For Flutter use:

flutter pub add firebase_dart_admin_auth_sdk 

You can manually edit your pubspec.yaml file this:

dependencies: firebase_dart_admin_auth_sdk: ^0.0.8 

You can run a flutter pub get for Flutter respectively to complete installation.

NB: SDK version might vary.

Usage #

Example:

import 'dart:io'; import 'package:bot_toast/bot_toast.dart'; import 'package:firebase/screens/splash_screen/splash_screen.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:firebase_dart_admin_auth_sdk/firebase_dart_admin_auth_sdk.dart'; import 'package:flutter/services.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); try { if (kIsWeb) { // Initialize for web debugPrint('Initializing Firebase for Web...'); FirebaseApp.initializeAppWithEnvironmentVariables( apiKey: 'YOUR-API-KEY', projectId: 'YOUR-PROJECT-ID', bucketName: 'Your Bucket Name', ); debugPrint('Firebase initialized for Web.'); } else { if (Platform.isAndroid || Platform.isIOS) { debugPrint('Initializing Firebase for Mobile...'); // Load the service account JSON String serviceAccountContent = await rootBundle.loadString( 'assets/service_account.json', ); debugPrint('Service account loaded.'); // Initialize Firebase with the service account content await FirebaseApp.initializeAppWithServiceAccount( serviceAccountContent: serviceAccountContent, ); debugPrint('Firebase initialized for Mobile.'); } } // Access Firebase Auth instance final auth = FirebaseApp.instance.getAuth(); debugPrint('Firebase Auth instance obtained.'); runApp(const MyApp()); } catch (e, stackTrace) { debugPrint('Error initializing Firebase: $e'); debugPrint('StackTrace: $stackTrace'); } } 
  • Import the package into your Dart or Flutter project:

    import 'package:firebase_dart_admin_auth_sdk/firebase_dart_admin_auth_sdk.dart'; 

    For Flutter web initialize Firebase app as follows:

    FirebaseApp.initializeAppWithEnvironmentVariables( apiKey: 'YOUR-API-KEY', projectId: 'YOUR-PROJECT-ID', bucketName: 'Your Bucket Name', ); 
  • For Flutter mobile:

    • Load the service account JSON
     String serviceAccountContent = await rootBundle.loadString( 'assets/service_account.json', ); 
    • Initialize Flutter mobile with service account content
     await FirebaseApp.initializeAppWithServiceAccount( serviceAccountContent: serviceAccountContent, ); 
  • Access Firebase Auth instance.

     final auth = FirebaseApp.instance.getAuth(); 

Documentation #

For more refer to Gitbook for prelease documentation here.

6
likes
150
points
1.31k
downloads

Publisher

verified publisheraortem.io

Weekly Downloads

A Dart SDK for Firebase Admin Authentication, enabling secure server-side authentication and user management for Dart-based backend applications.

Repository (GitHub)
View/report issues
Contributing

Documentation

API reference

License

unknown (license)

Dependencies

ds_standard_features, googleapis_auth, jwt_generator

More

Packages that depend on firebase_dart_admin_auth_sdk