jhayiwg/msofficeauth

Laravel Office 365 服务器端令牌管理

dev-master 2020-08-12 03:46 UTC

This package is auto-updated.

Last update: 2024-09-12 12:26:55 UTC


README

此包用于服务器端处理。

安装

您可以通过composer安装此包

composer require jhayiwg/msofficeauth

使用方法

添加到您的.env文件中,参考https://docs.microsoft.com/en-us/graph/tutorials/php?tutorial-step=2

OAUTH_APP_ID="XXXX"
OAUTH_APP_PASSWORD="XXXXX"
OAUTH_REDIRECT_URI=https://yoursite.loc/office/auth
OAUTH_SCOPES='openid profile offline_access user.read mail.read'
OAUTH_AUTHORITY=https://login.microsoftonline.com/common
OAUTH_AUTHORIZE_ENDPOINT=/oauth2/v2.0/authorize
OAUTH_TOKEN_ENDPOINT=/oauth2/v2.0/token

身份验证和授权

设置完成后,访问https://yoursite.loc/office/signin,登录您的ms账户然后授权应用程序。

该包将在您的存储文件夹中存储或重新生成令牌。

自动注入

在控制器中使用

// Usage description here
namespace App\Http\Controllers;

use Microsoft\Graph\Model;
use LaraOffice\MsOfficeAuth\MsOfficeAuth;

class HomeController extends Controller
{
    public function index(MsOfficeAuth $msGraph)
    {
        $tokenExpired = $msGraph->getAccessToken() ? 'No' : 'Yes';
        $graph = $msGraph->graph();
        $user = $graph->createRequest('GET', '/me')
            ->setReturnType(Model\User::class)
            ->execute();
        $userEmail = $user->getMail();
        return view('home', compact('tokenExpired', 'userEmail'));
    }
}

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

贡献

有关详细信息,请参阅CONTRIBUTING

安全性

如果您发现任何安全相关的问题,请通过jhayghost@gmail.com发送电子邮件,而不是使用问题跟踪器。

鸣谢