stormpath/lumen

此包已被弃用,不再维护。未建议替代包。

使用 Stormpath 和 Laravel 构建简单、安全的 Web 应用程序!

安装: 240

依赖关系: 0

建议者: 0

安全: 0

星级: 10

关注者: 16

分支: 2

类型:laravel-package

0.1.8 2016-12-21 19:01 UTC

README

Latest Stable Version Latest Unstable Version License Chat Chat

入门

按照以下步骤将 Stormpath 用户身份验证添加到您的 Lumen 应用程序中。

  1. 下载密钥文件

从 Stormpath 控制台下载密钥文件

  1. 将密钥存储为环境变量

打开您的密钥文件,获取 API Key IDAPI Key Secret,然后将其添加到项目根目录下的 .env 文件中

如果您是首次安装 lumen,您可能需要创建一个 .env 文件。

STORMPATH_CLIENT_APIKEY_ID=<YOUR-ID-HERE>
STORMPATH_CLIENT_APIKEY_SECRET=<YOUR-SECRET-HERE>
  1. 获取您的 Stormpath 应用程序 HREF

登录到 Stormpath 控制台 并获取您的 ApplicationHREF(在 UI 中称为 REST URL)。它应该看起来像这样

https://api.stormpath.com/v1/applications/q42unYAj6PDLxth9xKXdL

  1. 将 Stormpath App HREF 存储在 .env 文件中
STORMPATH_APPLICATION_HREF=<YOUR-STORMPATH-APP-HREF>
  1. 安装包

打开您的 composer.json 文件,并将以下内容添加到您的 require 块中

"stormpath/lumen": "^0.1"
  1. 在您的应用程序中包含它

    打开您的 bootstrap/app.php 文件,并将以下内容添加到您的 providers 部分

$app->register(\Stormpath\Lumen\Support\StormpathServiceProvider::class);
  1. 配置它

要修改包的配置,您需要发布配置文件。在您的终端中运行以下命令

$ php artisan stormpath:config

这将在项目根目录中创建一个 stormpath.yaml 文件,其中包含您可以修改的所有选项。默认情况下,将启用登录、注销、OAuth 和注册路由。其他路由将根据您的目录设置启用。

  1. 登录

在处理 API 时,我们建议您使用 OAuth 令牌。我们为您创建了一个路由 /oauth/tokens,您可以在其中进行 client_credentialspasswordrefresh 授权类型。

  • 客户端凭证

在这个工作流程中,为 stormpath 帐户提供了一个 API 密钥和密钥。这些凭据可以通过向 Web 应用程序的 /oauth/token 发送 POST 请求来交换访问令牌。请求必须如下所示

POST /oauth/token
Authorization: Basic <base64UrlEncoded(apiKeyId:apiKeySecret)>

grant_type=client_credentials
  • 密码授权

在这个工作流程中,一个帐户可以将他们的登录信息(用户名或电子邮件)和密码发布到 `/oauth/token` 端点,以下为正文数据

POST /oauth/token

grant_type=password
&username=<username>
&password=<password>
  • 刷新授权

刷新授权类型对于使用密码授权类型来刷新其 access_token 的客户端是必需的。因此,它自动与密码授权类型一起启用。

一个帐户可以使用以下正文数据发布他们的 refresh_token

POST /oauth/token
grant_type=refresh_token&
refresh_token=<refresh token>

令牌管理的产品指南:http://docs.stormpath.com/guides/token-management

  1. 注册

    要获取注册表单的模型,请向 /register 发送 GET 请求。这将返回表单的 JSON 表示形式以及可用的 Account Stores。

    {
      "form": {
        "fields": [
          {
            "enabled": true,
            "label": "First Name",
            "placeholder": "First Name",
            "required": true,
            "type": "text"
          },
          {
            "enabled": true,
            "label": "Last Name",
            "placeholder": "Last Name",
            "required": true,
            "type": "text"
          },
          ...
        ]
      },
      "accountStores": [
        {
          "href": "https://api.stormpath.com/v1/directories/6t1orcyGhqLvObgvsohdYu",
          "name": "Test Directory",
          "provider": {
            "href": "https://api.stormpath.com/v1/directories/6t1orcyGhqLvObgvsohdYu/provider",
            "providerId": "stormpath"
          }
        }
      ]
    }
    

    当您想注册一个新帐户时,请从表单模型中获取用户数据并将其放入发送到 /register 端点的 POST 请求的正文。

  2. 这就完了!

您已使用 Stormpath 将用户身份验证添加到应用程序中。

支持

如果您在使用此软件包时遇到问题,请随时在GitHub仓库中提交问题。如果您遇到的问题需要更多私人关注,请随时通过 support@stormpath.com 联系我们或访问我们的 支持中心

贡献

我们欢迎任何人为此项目做出贡献。只需在此仓库的 develop 分支上进行分支,进行您的更改,然后在 develop 分支上发起拉取请求。

您发起的任何拉取请求都需要有相关测试。如果没有提供测试,该拉取请求将被自动关闭。另外,对除 develop 分支之外的分支发起的拉取请求将被关闭,您需要重新提交到 develop 分支。

我们定期维护此仓库,并快速审查拉取请求和接受更改!

版权

版权所有 © 2013-2016 Stormpath, Inc. 及贡献者。

本项目通过 Apache 2.0 许可证 开源。