This module is intended to provide oauth authentication to freescout.

Overview

OAuth FreeScout

This module is intended to provide oauth authentication to freescout.

Module was tested on keycloak oauth provider with confidential openid-connect client.

Module is require php curl extension on server.

Currently module fully replace login form with redirection to oauth provider login form. If you need to perform ordinary login with basic form, add disable_oauth get parameter to login path (/login?disable_oauth=1)

User must be registered before oauth login.

INSTALL

  • place module source to Modules folder of your FreeScout installation
  • enable module in modules admin panel
  • configure module on settings page (client id/secret/etc)
Comments
  • k8s: OAuthServiceProvider not found exception

    k8s: OAuthServiceProvider not found exception

    hi

    Trying to integrate freescout-oauth with my freescout k8s deployment but I'm getting:

    production.ERROR: Class "Modules\OAuth\Providers\OAuthServiceProvider" not found {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Class \"Modules\\OAuth\\Providers\\OAuthServiceProvider\" not found at /www/html/overrides/Illuminate/Foundation/ProviderRepository.php:279) [stacktrace]

    What I did:

    `cd /data/Modules/

    git clone https://github.com/bolsunovskyi/freescout-oauth.git `

    Enable module (via GUI) and when clicking on settings the error began and does not allow me to do anything else (a fresh deploy of freescout was needed)

    opened by elg0ch0 5
  • No scope passed in request

    No scope passed in request

    I'm trying to use LLNG to evaluate your plugin for OIDC.

    When I attempt to test it out my authentication provider complains that no scope is being passed. Do you understand why?

    opened by tiredofit 3
  • Missing scope

    Missing scope

    Hi @bolsunovskyi, thanks for this module and making it available.

    I'm trying to connect Azure AD, but when doing a login Microsoft says a scope is missing.

    opened by fvdm 1
  • Adding Azure Active Directory specific setup

    Adding Azure Active Directory specific setup

    Adding a "Provider specific" section with "Azure Active Directory" to README.

    Ping @bolsunovskyi - thanks for your work on this module! 🚀

    opened by jeliasson 0
  • OneLogin

    OneLogin

    Just wanted to add that this plug-in is confirmed working with OneLogin, using similar settings to the Azure config.

    Setup

    OneLogin

    1. Create new application -> use "OpenId Connect (OIDC) - By OneLogin, Inc." template
    2. Under the 'Configuration' menu, use the following
    • Login Url: https://{{YourFreeScoutUrl}}
    • Redirect URI's: https://{{YourFreeScoutUrl}}/oauth_callback
    1. Under 'SSO' menu
    • Copy 'Client ID' and 'Client Secret'
    • Application Type: Web
    • Authentication Method: POST
    1. Don't forget to assign access to the application

    FreeScout (OAuth Settings)

    • Active: Tick
    • Client ID: (use Client ID from step 3 above)
    • Client Secret (use Client Secret from step 3 above)
    • Authorization Endpoint URL: https://{{onelogindomain}}.onelogin.com/oidc/2/auth?scope=email+profile+openid
    • Token Endpoint URL: https://{{onelogindomain}}.onelogin.com/oidc/2/token
    • User Info Endpoint URL: https://{{onelogindomain}}.onelogin.com/oidc/2/me
    opened by mp-strachan 0
  • Add option to automatically create users

    Add option to automatically create users

    Hi there,

    It would be very useful to have the module to automatically create the users in the database if they don't yet exist. I've seen this on the SAML module for freescout and from it's source code, it looks like this functionality could be implemented here in a similar way.

    What do you think about? If agreed, I can try to implement it myself and open a PR for you to analyze.

    Thanks for the great module! :tada:

    opened by gfcittolin 2
  • Possibility to use it for the customers

    Possibility to use it for the customers

    First thank you for the beautiful work, @jeliasson @bolsunovskyi I works like charm for us on the users (supporters) end. I wonder is there a way to activate it for the customers login portal, We intend to use freescout internal, and we are on AzureAD

    Best

    opened by eliassader 3
  • Keycloak: Argument #1 ($user) must be of type Illuminate\Contracts\Auth\Authenticatable, null given,

    Keycloak: Argument #1 ($user) must be of type Illuminate\Contracts\Auth\Authenticatable, null given,

    Hi,

    having the same issue as others on Azure AD, but this time it is keycloak. I created a "normal" confidential client with full scope allowed, but I receive the same error as others: Argument #1 ($user) must be of type Illuminate\Contracts\Auth\Authenticatable, null given,

    Any idea where do get deeper to find the error?

    opened by Steffeng5 3
  • Argument #1 ($user) must be of type

    Argument #1 ($user) must be of type

    Is it possible to get some screenshots how the App should look in Azure AD ? I can't get it to work here ....

    [2022-01-07 11:33:11] production.ERROR: Type error: Illuminate\Auth\SessionGuard::login(): Argument #1 ($user) must be of type Illuminate\Contracts\Auth\Authenticatable, null given, called in /www/html/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php on line 292 {"exception":"[object] (Symfony\Component\Debug\Exception\FatalThrowableError(code: 0): Type error: Illuminate\Auth\SessionGuard::login(): Argument #1 ($user) must be of type Illuminate\Contracts\Auth\Authenticatable, null given, called in /www/html/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php on line 292 at /www/html/overrides/Illuminate/Auth/SessionGuard.php:429) [stacktrace]

    @jeliasson

    opened by bjwelker 4
Owner
Michael Bolsunovskyi
Michael Bolsunovskyi
Laravel wrapper around OAuth 1 & OAuth 2 libraries.

Introduction Laravel Socialite provides an expressive, fluent interface to OAuth authentication with Facebook, Twitter, Google, LinkedIn, GitHub, GitL

The Laravel Framework 5.2k Dec 27, 2022
PHPoAuthLib provides oAuth support in PHP 7.2+ and is very easy to integrate with any project which requires an oAuth client.

PHPoAuthLib NOTE: I'm looking for someone who could help to maintain this package alongside me, just because I don't have a ton of time to devote to i

David Desberg 1.1k Dec 27, 2022
EAuth extension allows to authenticate users by the OpenID, OAuth 1.0 and OAuth 2.0 providers

EAuth extension allows to authenticate users with accounts on other websites. Supported protocols: OpenID, OAuth 1.0 and OAuth 2.0.

Maxim Zemskov 330 Jun 3, 2022
OAuth 1/2 Provider implementations for chillerlan/php-oauth-core. PHP 7.4+

chillerlan/php-oauth-providers Documentation See the wiki for advanced documentation. Requirements PHP 7.4+ a PSR-18 compatible HTTP client library of

chillerlan 4 Dec 2, 2022
The Salla OAuth Client library is designed to provide client applications with secure delegated access to Salla Merchant stores.

Salla Provider for OAuth 2.0 Client This package provides Salla OAuth 2.0 support for the PHP League's OAuth 2.0 Client. To use this package, it will

Salla 14 Nov 27, 2022
Social OAuth Authentication for Laravel 5. drivers: facebook, github, google, linkedin, weibo, qq, wechat and douban

Social OAuth Authentication for Laravel 5. drivers: facebook, github, google, linkedin, weibo, qq, wechat and douban

安正超 330 Nov 14, 2022
Rinvex Authy is a simple wrapper for @Authy TOTP API, the best rated Two-Factor Authentication service for consumers, simplest 2fa Rest API for developers and a strong authentication platform for the enterprise.

Rinvex Authy Rinvex Authy is a simple wrapper for Authy TOTP API, the best rated Two-Factor Authentication service for consumers, simplest 2fa Rest AP

Rinvex 34 Feb 14, 2022
It's a Laravel 8 authentication markdown that will help you to understand and grasp all the underlying functionality for Session and API Authentication

About Auth Starter It's a Laravel 8 authentication markdown that will help you to understand and grasp all the underlying functionality for Session an

Sami Alateya 10 Aug 3, 2022
phpCAS is an authentication library that allows PHP applications to easily authenticate users via a Central Authentication Service (CAS) server.

phpCAS is an authentication library that allows PHP applications to easily authenticate users via a Central Authentication Service (CAS) server.

Apereo Foundation 780 Dec 24, 2022
LogRegPHP is a simple authentication module coded in object-oriented PHP.

LogRegPHP is a simple authentication module coded in object-oriented PHP. It provides you with some helper classes to help you get on speed with your project.

NIXX 1 Sep 27, 2022
A SimpleSamlPHP module for using ReadID as authentication source

ReadID simpleSAMLphp auth module This module adds ReadID Ready App as auth source to simpleSAMLphp. ReadID Ready is an app that can read the data from

SURF 2 Nov 12, 2021
A spec compliant, secure by default PHP OAuth 2.0 Server

PHP OAuth 2.0 Server league/oauth2-server is a standards compliant implementation of an OAuth 2.0 authorization server written in PHP which makes work

The League of Extraordinary Packages 6.2k Jan 4, 2023
Easy integration with OAuth 2.0 service providers.

OAuth 2.0 Client This package provides a base for integrating with OAuth 2.0 service providers. The OAuth 2.0 login flow, seen commonly around the web

The League of Extraordinary Packages 3.4k Dec 31, 2022
PHP 5.3+ oAuth 1/2 Client Library

PHPoAuthLib NOTE: I'm looking for someone who could help to maintain this package alongside me, just because I don't have a ton of time to devote to i

David Desberg 1.1k Dec 27, 2022
OAuth 1 Client

OAuth 1.0 Client OAuth 1 Client is an OAuth RFC 5849 standards-compliant library for authenticating against OAuth 1 servers. It has built in support f

The League of Extraordinary Packages 907 Dec 16, 2022
The first PHP Library to support OAuth for Twitter's REST API.

THIS IS AN MODIFIED VERSION OF ABRAHAMS TWITTER OAUTH CLASS The directories are structured and the class uses PHP5.3 namespaces. Api.php has a new

Ruud Kamphuis 51 Feb 11, 2021
OAuth client integration for Symfony. Supports both OAuth1.0a and OAuth2.

HWIOAuthBundle The HWIOAuthBundle adds support for authenticating users via OAuth1.0a or OAuth2 in Symfony. Note: this bundle adds easy way to impleme

Hardware Info 2.2k Dec 30, 2022
An OAuth 2.0 bridge for Laravel and Lumen [DEPRECATED FOR LARAVEL 5.3+]

OAuth 2.0 Server for Laravel (deprecated for Laravel 5.3+) Note: This package is no longer maintaned for Laravel 5.3+ since Laravel now features the P

Luca Degasperi 2.4k Jan 6, 2023
Kaiju is an open source verification bot based on Discord's OAuth written in C# and PHP, with the functionality of being able to integrate the user to a new server in case yours is suspended.

What is Kaiju? Kaiju is an open source verification bot for Discord servers, based on OAuth and with permission for the server owner, to be able to mi

in the space 10 Nov 20, 2022