An open API service indexing awesome lists of open source software.

https://github.com/fastcomments/fastcomments-php-sso

PHP SSO Library for FastComments
https://github.com/fastcomments/fastcomments-php-sso

Last synced: 4 months ago
JSON representation

PHP SSO Library for FastComments

Awesome Lists containing this project

README

          

# FastComments PHP SSO

This library provides Single Sign-On (SSO) functionality for FastComments in PHP applications.

## Installation

```bash
composer require fastcomments/sso
```

## Usage

### Simple SSO

Simple SSO is straightforward to use, but provides less security than Secure SSO:

```php
use FastComments\SSO\FastCommentsSSO;
use FastComments\SSO\SimpleSSOUserData;

// Create user data
$userData = SimpleSSOUserData::create(
'username123',
'user@example.com',
'https://example.com/avatar.png'
);

// With URL-based login/logout
$sso = FastCommentsSSO::createWithUrls(
null,
$userData,
'https://example.com/login',
'https://example.com/logout'
);

// Or with callbacks
$sso = FastCommentsSSO::createWithCallbacks(
$userData,
function($url) { /* Handle login */ },
function($url) { /* Handle logout */ }
);

// Get the token to pass to FastComments
$token = $sso->prepareToSend();
```

### Secure SSO

Secure SSO provides enhanced security with HMAC verification:

```php
use FastComments\SSO\FastCommentsSSO;
use FastComments\SSO\SecureSSOUserData;

// Create user data
$userData = SecureSSOUserData::create(
'user-123',
'user@example.com',
'username123',
'https://example.com/avatar.png'
);

// Add optional data if needed
$userData->isAdmin = true;
$userData->groupIds = ['group-1', 'group-2'];

// Create the SSO object with your API key
$sso = FastCommentsSSO::createSecure('your-api-key', $userData);

// Get the token to pass to FastComments
$token = $sso->prepareToSend();
```

## Documentation

For full documentation on FastComments SSO, please see the [FastComments documentation](https://docs.fastcomments.com/guide-customizations-and-configuration.html#sso).