Last updated:
0 purchases
hss okta flutter
HSS Okta Flutter #
The presented plugin functions as an abstraction layer, seamlessly integrating Okta's Native SDKs into the Flutter ecosystem, thereby enabling the utilization of Okta's robust security framework within a cross-platform Flutter environment. This encapsulation endows Flutter-based iOS and Android applications with the capability to leverage Okta's Classic Engine Authentication workflows, ensuring a secure and efficient user authentication experience. The plugin is architecturally designed to interface fluently with native platform capabilities, harnessing the power of Dart's asynchronous features to provide a non-blocking, streamlined authentication process that is both platform-agnostic and performance-optimized.
🤝 Contributors & Maintainers:
This project is proudly developed and maintained by HyperSense Software.
📄 License:
Distributed under the MIT License. See LICENSE for more information.
How to Install #
For mobile:
$ flutter pub add hss_okta_flutter
copied to clipboard
For Web:
$ flutter pub add hss_okta_flutter
copied to clipboard
In your index.html header tag, add Okta's Javascript library.
<script src="https://global.oktacdn.com/okta-auth-js/7.4.1/okta-auth-js.min.js" type="text/javascript"></script>
copied to clipboard
Features #
Mobile #
Feature
Android
IOS
Resource Owner Flow / Direct Authentication
✅ (MFA Not Available)
✅
Browser Redirect Authentication
✅
✅
Device Authorization
✅
✅
Device SSO
✅
✅
Web #
Feature
Authentication by Redirection
✅
Authentication by Popup
✅
Token Manager
✅
Authentication Client Setup
✅
Authentication State Manager
🚧
Fetch User info
✅
Getting Started #
Android
Create okta.property file inside android root folder
okta.properties
issuer= <https://your.issuer.link>
clientId= <Your client id>
signInRedirectUri= <Sign in redirect URL>
signOutRedirectUri= <Sign out redirect URL>
scopes= <List of scopes, separated by space>
copied to clipboard
IOS
Create Okta.plist in your iOS project
Okta.plist
<key>issuer</key>
<string>https://your.issuer.link</string>
<key>clientId</key>
<string>Your client id</string>
<key>redirectUri</key>
<string>Sign in redirect URL</string>
<key>logoutRedirectUri</key>
<string>Sign out redirect URL</string>
<key>scopes</key>
<string>List of scopes, separated by space</string>
copied to clipboard
General Usage:
import 'package:hss_okta_flutter/hss_okta_flutter_plugin.dart';
final _plugin = HssOktaFlutter();
Future<void> getCredential() async{
try{
await _plugin.getCredentials();
}catch(e){
print('$e')
}
}
copied to clipboard
Browser Redirect Authentication
import 'package:hss_okta_flutter/hss_okta_flutter_plugin.dart';
@override
Widget build(BuildContext context){
return HssOktaBrowserSignOutWidget(
onResult: (success){
if(success)
Navigator.of(context).pop(success);
}
builder: (context,child) => Container(child:child)
)
}
copied to clipboard
Web:
import 'package:hss_okta_flutter/hss_okta_flutter.dart';
final oktaWeb = HssOktaFlutterWeb();
void main(){
await oktaWeb.initializeClient(OktaConfig({
issuer: 'com.dev.okta.myApp'
clientId: '123456'
redirectUri: 'https:localhost:8080/callback'
}));
final token = await oktaWeb.token.startPopUpAuthentication();
print(token.accessToken?.accessToken);
}
copied to clipboard
Authentication Flows #
Mobile #
Browser Redirect #
The login is achieved through the Web-based OIDC flows, where the user is redirected to the Okta-Hosted login page. After the user authenticates, they are redirected back to the application.
This launches a popup web view where the user can login and interact with challenges.
Direct Authentication Flow / Resource Owner Flow #
Direct Authentication with MFA is Only available for iOS.
Used for Owner Resource authentication with user and password.
Device Authentication Flow #
Allow the user to login via another device, the plugin will provide a access code and a URI where the user can login via another device or the browser.
Device SSO #
Allows Single sign on using a Device secret paired with the user's ID token
Web #
Auth by Redirect #
Redirects the user to Okta's Issuer Url and prompts the user to login
Auth by Popup #
Launches a New window and prompts the user to login
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.