【问题标题】:Oauth 2.0 for PHP for beginners [closed]适用于初学者的 Oauth 2.0 [关闭]
【发布时间】:2014-09-15 16:35:13
【问题描述】:

请指教。如果我需要在某个地方发布此内容,但我真的需要你们的帮助。我有这个需要完成的任务项目,它需要 oauth2。不幸的是,我对这个 oauth 事情很陌生。我是所有菜鸟中最菜鸟。 ,我一直在读这个site。问题是这看起来需要关于 oauth 的中级知识,而且我很难理解它,谁能给我一些关于 oauth2 的链接或书籍,可供不熟悉这个 oauth 事物的初学者使用。目前我使用的是 Laravel 框架,我尝试了这个package。但是配置很混乱。拜托,如果你有任何可以帮助像我这样的菜鸟的博客、教程或书籍,我会很高兴的。我不想在没有正确理解所有内容的情况下使用这个 oauth 东西。

'grant_types' => array(

        'authorization_code' => array(
            'class'            => 'League\OAuth2\Server\Grant\AuthCode',
            'access_token_ttl' => 3600,
            'auth_token_ttl'   => 3600,
        ),

        'password' => array(
            'class'            => 'League\OAuth2\Server\Grant\Password',
            'access_token_ttl' => 604800,
            'callback'         => function ($username, $password) {

                $credentials = array(
                    'email' => $username,
                    'password' => $password,
                );

                $valid = Auth::validate($credentials);

                if (!$valid) {
                    return false;
                }

                return Auth::getProvider()->retrieveByCredentials($credentials)->id;
            }
        ),

        'refresh_token' => array(
            'class'                 => 'League\OAuth2\Server\Grant\RefreshToken',
            'access_token_ttl'      => 3600,
            'refresh_token_ttl'     => 604800,
            'rotate_refresh_tokens' => false,
        ),

    ),

【问题讨论】:

标签: php oauth-2.0


【解决方案1】:

首先你必须了解协议流程。

协议流程

 +--------+                               +---------------+
 |        |--(A)- Authorization Request ->|   Resource    |
 |        |                               |     Owner     |
 |        |<-(B)-- Authorization Grant ---|               |
 |        |                               +---------------+
 |        |
 |        |                               +---------------+
 |        |--(C)-- Authorization Grant -->| Authorization |
 | Client |                               |     Server    |
 |        |<-(D)----- Access Token -------|               |
 |        |                               +---------------+
 |        |
 |        |                               +---------------+
 |        |--(E)----- Access Token ------>|    Resource   |
 |        |                               |     Server    |
 |        |<-(F)--- Protected Resource ---|               |
 +--------+                               +---------------+

涉及的步骤如下:

A.客户端向资源所有者请求授权。

B.客户端收到授权授权,这是代表资源所有者的凭据 授权

C.客户端通过身份验证请求访问令牌 授权服务器并提供授权。

D.授权服务器对客户端进行身份验证并验证 授权授予,如果有效则颁发访问令牌。

E.客户端向资源请求受保护的资源 服务器并通过提供访问令牌进行身份验证。

F。资源服务器验证访问令牌,如果有效, 处理请求。

要正常工作可以阅读和使用google-api-php-client

【讨论】:

  • 您好,感谢您的指导。只是想问我是否是提供访问令牌的人,那么我如何生成访问令牌,它只是随机的吗?
  • 阅读 OAuth 规范
猜你喜欢
  • 2014-09-25
  • 1970-01-01
  • 2013-05-16
  • 2011-03-17
  • 2020-07-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-07
相关资源
最近更新 更多