Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Oauth2 Uco Laravel Package

aulasoftwarelibre/oauth2-uco

Laravel OAuth2 provider for Universidad de Córdoba (UCO). Adds authentication support for UCO’s OAuth2 service, enabling login and user info retrieval in Laravel/Socialite-based apps.

View on GitHub
Deep Wiki
Context7

University of Córdoba client provider to the PHP League OAuth2 client

Frequently asked questions about Oauth2 Uco
How do I integrate this OAuth2 provider into a Laravel application using Socialite?
This package works with the League OAuth2 Client, so if you're using Laravel Socialite, you’ll need to extend the provider or use `socialiteproviders/socialiteproviders` to wrap it. Start by configuring the provider with your UCO credentials and then extend the `SocialiteProvider` class to handle UCO-specific responses. Check the [socialiteproviders documentation](https://socialiteproviders.github.io/) for guidance on custom providers.
What Laravel versions are supported by this package?
This package relies on the League OAuth2 Client, which supports Laravel versions compatible with PHP 7.4+. Ensure your Laravel version aligns with the League Client’s requirements (v2+). Test thoroughly, as niche packages may not explicitly list Laravel version support.
Do I need to request credentials from UCO before using this package?
Yes, you must obtain OAuth2 credentials (client ID and secret) from the [UCO Informática Service](https://www.uco.es/servicios/informatica/). Without these, the provider cannot authenticate users. Contact them directly to register your application.
Is this package actively maintained? What if UCO changes its OAuth2 API?
This package has no visible maintenance activity. If UCO modifies its OAuth2 endpoints, the provider may break. Mitigate risks by forking the repository, implementing fallback retries, or using the raw League OAuth2 Client with custom configurations for UCO’s API.
Can I use this provider for multi-provider OAuth2 authentication in Laravel?
This package is tightly coupled to UCO’s OAuth2 endpoints, making it less ideal for multi-provider setups. For broader compatibility, consider using the generic `league/oauth2-client` with custom configurations for each provider, or explore packages like `socialiteproviders/socialiteproviders` for modular support.
How do I handle user data retrieval after OAuth2 authentication?
After obtaining an access token, use `$provider->getResourceOwner($accessToken)` to fetch user data. The returned object contains methods like `getId()`, `getEmail()`, etc. Map these fields to your Laravel user model (e.g., using `createUserFromOAuth($providerUser)` in a custom Socialite provider).
What security measures should I implement when using this OAuth2 provider?
Enable PKCE for authorization code flows to prevent authorization code interception. Validate the `state` parameter to mitigate CSRF attacks. Always verify token expiration and implement refresh token logic. Audit UCO’s API documentation for additional security requirements like JWT validation.
How do I test this provider locally before deploying to production?
Use the League OAuth2 Client’s built-in testing utilities to mock UCO’s API responses. Set up a local development environment with the provider configured for testing. Verify flows like authorization code exchange, token validation, and user data retrieval. Tools like `vcr` or `mockery` can simulate API calls.
What alternatives exist if this package doesn’t meet my needs?
For generic OAuth2 support, use the `league/oauth2-client` directly with custom configurations for UCO’s endpoints. If using Laravel Socialite, explore `socialiteproviders/socialiteproviders` for community-maintained providers. For institutional integrations, check if UCO offers official SDKs or APIs.
How do I handle token expiration and refresh in production?
Store the refresh token and check `$accessToken->hasExpired()` before making API calls. Implement a refresh logic that exchanges the refresh token for a new access token when expired. Use Laravel’s caching or database to persist tokens securely. Monitor token expiration times to avoid disruptions.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle