oauth [PHP] Oauth授权和本地加密
1.Oauth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方
关键字:appKey appSecret token(令牌)
2.SSO授权
如果本地手机装有微博客户端,则直接跳转到微博客户端,只需点击授权按钮,就可以登陆了
qq第三方登陆使用Oauth2.0实现,测试代码
点击下面的连接
https://graph.qq.com/oauth2.0/authorize?resp//www.qingguow.cn/sso.php
具体代码sso.php文件:
<span>php </span><span>//</span><span> qq登陆类</span><span>class</span><span> Sso{ </span><span>const</span> APP_ID="101334262"<span>; </span><span>const</span> APP_KEY="xxxxxxxxxxxxxxx"<span>; </span><span>//</span><span>初始化</span><span>public</span><span>static</span><span>function</span><span> init(){ </span><span>header</span>("content-type:text/html;charset=utf-8"<span>); } </span><span>//</span><span>主函数</span><span>public</span><span>static</span><span>function</span><span> main(){ </span><span>//</span><span>请求控制</span><span>$action</span>=<span>$_GET</span>['action'<span>]; </span><span>if</span>(!<span>empty</span>(<span>$action</span><span>)){ Sso</span>::<span>$action</span><span>(); </span><span>return</span><span>; } </span><span>$par</span> = 'grant_type=authorization_code' . '&client_id='.Sso::<span>APP_ID </span>. '&client_secret='.Sso::<span>APP_KEY </span>. '&code='.<span>$_REQUEST</span>['code'<span>] </span>. '&redirect_uri='.<span>urlencode</span>('http://www.qingguow.cn/sso.php'<span>); </span><span>$rec</span>=Sso::postUrlContents("https://graph.qq.com/oauth2.0/token",<span>$par</span><span>); </span><span>if</span>(<span>strpos</span>(<span>$rec</span>, 'access_token') !== <span>false</span><span>) { </span><span>parse_str</span>(<span>$rec</span>, <span>$accessToken</span><span>); </span><span>$openidJson</span>=Sso::getUrlContents("https://graph.qq.com/oauth2.0/me?callback=callback&access_token={<span>$accessToken</span>['access_token']}"<span>); </span><span>$openidJson</span>=<span>str_replace</span>("callback( ", "", <span>$openidJson</span><span>); </span><span>$openidJson</span>=<span>str_replace</span>(");", "", <span>$openidJson</span><span>); </span><span>$openidJson</span>=json_decode(<span>$openidJson</span>,<span>true</span><span>); </span><span>header</span>("location:sso.php?action=getQQinfo&openid={<span>$openidJson</span>['openid']}&access_token={<span>$accessToken</span>['access_token']}"<span>); } } </span><span>//</span><span>获取用户信息</span><span>public</span><span>static</span><span>function</span><span> getQQinfo(){ Sso</span>::<span>init(); </span><span>$openid</span>=<span>$_GET</span>['openid'<span>]; </span><span>$access_token</span>=<span>$_GET</span>['access_token'<span>]; </span><span>$userJson</span>=Sso::getUrlContents("https://graph.qq.com/user/get_user_info?openid={<span>$openid</span>}&access_token={<span>$access_token</span>}&oauth_c>APP_ID); <span>$user</span>=json_decode(<span>$userJson</span>,<span>true</span><span>); </span><span>print_r</span>(<span>$user</span><span>); } </span><span>//</span><span>get方式请求数据</span><span>public</span><span>static</span><span>function</span> getUrlContents(<span>$url</span><span>){ </span><span>$ch</span> =<span> curl_init(); curl_setopt(</span><span>$ch</span>, CURLOPT_SSL_VERIFYPEER, <span>FALSE</span><span>); curl_setopt(</span><span>$ch</span>, CURLOPT_HEADER, <span>false</span><span>); curl_setopt(</span><span>$ch</span>, CURLOPT_FOLLOWLOCATION, <span>true</span><span>); curl_setopt(</span><span>$ch</span>, CURLOPT_URL, <span>$url</span><span>); curl_setopt(</span><span>$ch</span>, CURLOPT_REFERER, <span>$url</span><span>); curl_setopt(</span><span>$ch</span>, CURLOPT_RETURNTRANSFER, <span>TRUE</span><span>); </span><span>$result</span> = curl_exec(<span>$ch</span><span>); curl_close(</span><span>$ch</span><span>); </span><span>return</span><span>$result</span><span>; } </span><span>//</span><span>post请求数据</span><span>public</span><span>static</span><span>function</span> postUrlContents(<span>$url</span>,<span>$data</span> = <span>null</span><span>){ </span><span>$curl</span> =<span> curl_init(); curl_setopt(</span><span>$curl</span>, CURLOPT_URL, <span>$url</span><span>); curl_setopt(</span><span>$curl</span>, CURLOPT_SSL_VERIFYPEER, <span>FALSE</span><span>); curl_setopt(</span><span>$curl</span>, CURLOPT_SSL_VERIFYHOST, <span>FALSE</span><span>); </span><span>if</span> (!<span>empty</span>(<span>$data</span><span>)){ curl_setopt(</span><span>$curl</span>, CURLOPT_POST, 1<span>); curl_setopt(</span><span>$curl</span>, CURLOPT_POSTFIELDS, <span>$data</span><span>); } curl_setopt(</span><span>$curl</span>, CURLOPT_RETURNTRANSFER, 1<span>); </span><span>$output</span> = curl_exec(<span>$curl</span><span>); curl_close(</span><span>$curl</span><span>); </span><span>return</span><span>$output</span><span>; } } Sso</span>::main();
以上就介绍了oauth [PHP] Oauth授权和本地加密,包括了oauth方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

OAuth in PHP: Erstellen eines JWT-Autorisierungsservers Mit dem Aufkommen mobiler Anwendungen und dem Trend zur Trennung von Front-End und Back-End ist OAuth zu einem unverzichtbaren Bestandteil moderner Webanwendungen geworden. OAuth ist ein Autorisierungsprotokoll, das die Ressourcen der Benutzer vor unbefugtem Zugriff schützt, indem es standardisierte Prozesse und Mechanismen bereitstellt. In diesem Artikel erfahren Sie, wie Sie mit PHP einen auf JWT (JSONWebTokens) basierenden OAuth-Autorisierungsserver erstellen. JWT ist eine Art von

Mit der Popularität des mobilen Internets erfordern immer mehr Anwendungen, dass sich Benutzer authentifizieren und autorisieren. OAuth2 ist ein beliebtes Authentifizierungs- und Autorisierungsframework, das Anwendungen einen standardisierten Mechanismus zur Implementierung dieser Funktionen bietet. LaravelPassport ist eine benutzerfreundliche, sichere und sofort einsatzbereite OAuth2-Serverimplementierung, die PHP-Entwicklern leistungsstarke Tools zum Erstellen der OAuth2-Authentifizierung und -Autorisierung bietet. In diesem Artikel wird die Verwendung von LaravelPassport vorgestellt

PHP und OAuth: Implementierung der Microsoft-Login-Integration Mit der Entwicklung des Internets müssen immer mehr Websites und Anwendungen Benutzer dabei unterstützen, sich über Konten von Drittanbietern anzumelden, um eine bequeme Registrierungs- und Login-Erfahrung zu ermöglichen. Das Microsoft-Konto ist eines der weltweit am häufigsten verwendeten Konten, und viele Benutzer möchten sich mit einem Microsoft-Konto bei Websites und Anwendungen anmelden. Um die Microsoft-Anmeldeintegration zu erreichen, können wir das OAuth-Protokoll (Open Authorization) verwenden. OAuth ist ein offenes Standardautorisierungsprotokoll, das es Benutzern ermöglicht, Anwendungen von Drittanbietern zu autorisieren, in ihrem Namen zu handeln

So führen Sie die GoogleDrive-Integration mit PHP und OAuth durch. GoogleDrive ist ein beliebter Cloud-Speicherdienst, der es Benutzern ermöglicht, Dateien in der Cloud zu speichern und sie mit anderen Benutzern zu teilen. Über GoogleDriveAPI können wir PHP verwenden, um Code zur Integration in GoogleDrive zu schreiben, um das Hochladen, Herunterladen, Löschen und andere Vorgänge von Dateien zu implementieren. Um GoogleDriveAPI verwenden zu können, müssen wir uns über OAuth authentifizieren

Da die Verwendung von APIs immer weiter verbreitet wird, wird der Schutz der Sicherheit und Skalierbarkeit von APIs immer wichtiger. OAuth2 hat sich zu einem weit verbreiteten API-Sicherheitsprotokoll entwickelt, das Anwendungen den Zugriff auf geschützte Ressourcen durch Autorisierung ermöglicht. Zur Implementierung der OAuth2-Authentifizierung bietet LaravelPassport eine einfache und flexible Möglichkeit. In diesem Artikel erfahren Sie, wie Sie die APIOAuth2-Authentifizierung mit LaravelPassport implementieren. Lar

OAuth2-Authentifizierungsmethode und Implementierung in PHP Mit der Entwicklung des Internets müssen immer mehr Anwendungen mit Plattformen von Drittanbietern interagieren. Um die Privatsphäre und Sicherheit der Benutzer zu schützen, verwenden viele Plattformen von Drittanbietern das OAuth2-Protokoll zur Implementierung der Benutzerauthentifizierung. In diesem Artikel stellen wir die OAuth2-Authentifizierungsmethode und -Implementierung in PHP vor und fügen entsprechende Codebeispiele bei. OAuth2 ist ein Autorisierungsframework, das es Benutzern ermöglicht, Anwendungen von Drittanbietern ohne Angabe von Gründen den Zugriff auf ihre Ressourcen bei einem anderen Dienstanbieter zu autorisieren

Mit der kontinuierlichen Entwicklung des Internets werden immer mehr Anwendungen mithilfe einer verteilten Architektur entwickelt. In einer verteilten Architektur ist die Authentifizierung eines der kritischsten Sicherheitsprobleme. Um dieses Problem zu lösen, implementieren Entwickler normalerweise die OAuth2-Authentifizierung. SpringSecurityOAuth2 ist ein häufig verwendetes Sicherheitsframework für die OAuth2-Authentifizierung und eignet sich sehr gut für die Java-API-Entwicklung. In diesem Artikel wird die Entwicklung in JavaAPI vorgestellt

Einführung in die Verwendung von PHP und OAuth für die QQ-Anmeldeintegration: Mit der Entwicklung sozialer Medien beginnen immer mehr Websites und Anwendungen, Anmeldefunktionen von Drittanbietern bereitzustellen, um Benutzern eine schnelle Registrierung und Anmeldung zu erleichtern. Als eine der größten Social-Media-Plattformen Chinas ist QQ auch zu einem Anmeldedienst von Drittanbietern geworden, der von vielen Websites und Anwendungen bereitgestellt wird. In diesem Artikel werden die Schritte zur Verwendung von PHP und OAuth für die QQ-Login-Integration anhand von Codebeispielen vorgestellt. Schritt 1: Registrieren Sie sich als QQ-Open-Plattform-Entwickler. Bevor Sie mit der Integration von QQ-Login beginnen, muss ich Folgendes tun:
