A React Native bridge for AppAuth SDKs to implement OAuth2 and OpenID Connect authentication with native best practices.
React Native App Auth is a library that provides a bridge between React Native applications and the native AppAuth SDKs for iOS and Android. It enables secure authentication with OAuth 2.0 and OpenID Connect providers using the Authorization Code Flow with PKCE. The library ensures compliance with security best practices by leveraging platform-specific browsers instead of WebViews.
React Native developers building mobile applications that require secure authentication with OAuth2 or OpenID Connect providers, such as social logins or enterprise identity services.
Developers choose React Native App Auth because it offers a secure, standards-compliant way to implement authentication in React Native apps, using native SDKs that follow OAuth best practices and support PKCE for enhanced security.
React native bridge for AppAuth - an SDK for communicating with OAuth2 providers
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Bridges to official AppAuth SDKs, using platform-specific browsers like ASWebAuthenticationSession on iOS and Custom Tabs on Android, which avoids insecure WebViews as per RFC 8252.
Implements Proof Key for Code Exchange (PKCE) to secure authorization codes in public clients, following OAuth2 best practices for enhanced security.
Tested with numerous OpenID and OAuth2 providers, including Google, Okta, and Azure AD, with example configurations provided in the documentation.
Prioritizes security by adhering to RFC 8252 standards for OAuth in native apps, ensuring compliance with industry best practices.
Only supports the Authorization Code Flow, which may not cover all authentication scenarios, such as those requiring Implicit Flow or custom grant types.
Requires native module integration and careful handling of redirect URIs, with noted issues like deep linking conflicts on Android that need manual resolution.
Relies on underlying AppAuth-iOS and AppAuth-Android SDKs, so updates, bug fixes, or platform-specific issues are tied to those external libraries.