doriantm/steam-authentication-bundle-custome
Composer 安装命令:
composer require doriantm/steam-authentication-bundle-custome
包简介
Symfony Bundle to integrate Steam authentication
README 文档
README
A Symfony Bundle that provides authentication via Steam for your application.
Installation & Configuration
Just require the bundle via Composer and use the given flex recipe during the install process.
composer require knojector/steam-authentication-bundle
In your .env file a new entry for your Steam API key was generated. You can obtain your Steam API key here: https://steamcommunity.com/dev/apikey
login_route The route the user is redirected to after Steam Login
login_redirect The route the user is redirected to if the login was successfull
user_class Classname of your User Entity
request_validator_class Classname of RequestValidatorInterface class. If it isn't set then Knojector\SteamAuthenticationBundle\Security\Authentication\Validator\RequestValidator will be used.
Make sure your User Entity extends from the Knojector\SteamAuthenticationBundle\User\AbstractSteamUser class
<?php namespace App\Entity; use Knojector\SteamAuthenticationBundle\User\AbstractSteamUser; use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Security\Core\Role\Role; /** * @author Knojector <dev@knojector.xyz> * * @ORM\Entity() */ class User extends AbstractSteamUser { /** * @ORM\Id * @ORM\GeneratedValue * @ORM\Column(type="integer") */ private $id; /** * @return int */ public function getId(): int { return $this->id; } public function __construct() { $this->roles = []; } /** * @return array */ public function getRoles(): array { $roles = []; foreach ($this->roles as $role) { $roles[] = new Role($role); } return $roles; } }
Finally you just have to configure your firewall. A working example might looks like this
security: providers: steam_user_provider: id: Knojector\SteamAuthenticationBundle\Security\User\SteamUserProvider firewalls: dev: pattern: ^/(_(profiler|wdt)|css|images|js)/ security: false main: anonymous: ~ pattern: ^/ provider: steam_user_provider steam: true logout: path: /logout target: /
To display the "Login via Steam" button just include this snippet in your template
{% include '@KnojectorSteamAuthentication/login.html.twig' with { 'btn': 1 } %}
You can choose between two images (1 or 2) that will be display as button. Or simply enter your own text.
统计信息
- 总下载量: 15
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 5
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-08-06