草庐IT

php - Google Apps 和 OAuth 最佳实践

我正在努力将GoogleApps集成到我的PHP应用程序中。我已经有一个登录系统,它为用户分配一个sessionID(在输入用户名和密码后),当用户登录时该sessionID存储在数据库中。sessionID在一段时间不活动后变得无效(可由用户配置,可以是5分钟、15分钟、60分钟...)。该sessionID在url中传递,以检查用户是否仍处于登录状态。注销时,sessionID将从数据库中删除。我让人们通过将他们的GoogleID存储在数据库中来使用Google登录,当他们登录时,我请求一个访问token,查询用户信息,查看googleID是否在数据库中,如果是,则分配一个sess

php - 为什么我不能使用 OAuth 进行身份验证?

我编写了一个非常简单的应用程序来在给定条件下更新我的Twitter状态。我使用Twitter文档来了解创建OAuth签名的要求以及如何构造授权header。然后我在PHP中使用cURL发送请求。使用twitter开发站点上的OAuth工具,我比较了我的签名基本字符串和授权header,两者完全相同:签名基础字符串POST&https%3A%2F%2Fapi.twitter.com%2F1%2Fstatuses%2Fupdate.json&oauth_consumer_key%3DYNxxxxxxxxxxxWnfI6HA%26oauth_nonce%3D31077a3c7b7bee4e4

php - 如何处理 ROLES 和 FOSOAuthServerBundle 范围

我有一个使用FOSOAuthServerBundle对用户进行身份验证的基本API。用户可以具有ROLE_USER和ROLE_ADMIN角色。基于FOSOAuthServerBundle文档,默认行为是使用范围作为角色,所以我认为当我有一个普通用户时,包会在响应中返回scope:user,当它是一个admin用户,将返回scope:admin。但它不是这样工作的。bundle返回supported_scopes条目中配置的任何内容。下面是我的config.yml。fos_oauth_server:service:options:supported_scopes:useradmin我在s

php - LinkedIn OAuth 缺少必需的参数 "client_id"

我正在使用LinkedInAPI并尝试发出请求,但是当我尝试获取我的访问token时,我在json打印中收到以下错误:Array([error]=>missing_parameter[error_description]=>Arequiredparameter"client_id"ismissing)这是我的代码:"authorization_code","code"=>$code,"redirect_uri"=>"REDIRECT_URI","client_id"=>"SECRET","client_secret"=>"SECRET");$url2="https://www.link

php - 服务器的 Google API 身份验证

我一直在尝试获取Google'sCalendarAPI在PHPWeb应用程序中工作,但我很难通过身份验证。我想做的是允许用户与服务器已知的单个帐户的日历进行交互。OAuth2.0docs中涵盖的每种场景谈论涉及登录表单和个人用户登录的“用户同意”,但我希望服务器本身直接进行身份验证并为自己获取访问token。我可以使用OAuth的某些部分或某些替代机制来执行此操作吗? 最佳答案 为此,您必须完成用户同意的步骤,然后将它提供给您的访问token复制到PHP代码中。OAuth的一般流程是这样的:将用户发送到身份验证页面。用户返回$_GE

php - flickr oauth api 随机返回签名无效错误

我有一个web应用程序可以对用户的flickrapi进行身份验证。它使用OAuth1.0,大部分时间都可以进行身份​​验证。但是在随机的时间,在完全随机的时间,flickr无法识别我的签名。它在请求请求token时返回无效签名错误。但是下一次尝试中的相同代码将正确地返回请求token。我怀疑这与我生成随机数或时间戳的方式有关。否则它不应该在连续的尝试中起作用,对吧?这就是我生成随机数和时间戳值的方式:$nonce=md5(microtime(true).rand());$timestamp=mktime();这有什么问题吗?有没有更好的方法来生成nonce值?这种随机故障非常令人困惑。

php - codebird-php 推特应用程序。验证 Twitter API 证书时出现错误 77

我正在尝试制作一个使用Twitter进行身份验证的基本应用程序,并通过库codebird-php(https://github.com/mynetx/codebird-php)代表用户发布消息我已经复制粘贴了自述文件中显示的示例代码,并将YOURKEY和YOURSECRET更改为我的应用程序的key和密码。一切正常,但当我加载页面时,我收到一条消息:验证TwitterAPI证书时出现错误77。我在谷歌上找不到这个错误类型......意思很明显,但我不知道如何解决它。有什么想法吗?代码如下:require_once('codebird.php');\Codebird\Codebird::

php - 将 OAuth1 附加到 GuzzleHttp\Client

我正在尝试升级一个类以使用GuzzleHttp\Client来使用twitterapi搜索推文。我在附加Oauth1时遇到问题。它适用于Guzzle3和OAuthPlugin。这是代码块:$client=newClient(['base_uri'=>'https://api.twitter.com']);$auth=newOauth1(['consumer_key'=>Config::get('twitter.consumer_key'),'consumer_secret'=>Config::get('twitter.consumer_secret'),'token'=>Config:

php - 使用 Twitter 登录并保持登录状态 (PHP)

我正在创建一个网站,用户需要注册才能参与。我在截止日期前,我真的不想编写整个用户注册/登录系统,所以我想我会让TwitterAPI处理它。我已经在Twitter上注册了一个应用程序,并且我有适当的PHP代码来允许用户登录并允许访问我的应用程序。问题是,我不希望用户每次访问该网站时都必须登录,我想实现一个“保持登录”选项,我只是不知道该怎么做。我可以简单地将oauth_token和oauth_token_secret存储在一个cookie中,并在每次有人访问该站点时简单地读取cookie。这些cookie值的存在(或不存在)将决定该人是否被授权使用Twitter。当然,这是一种简单的方法

java - spring security oauth2 (2.0.8) 使用 InMemory tokenstore 获取无效的访问 token

尝试在我的应用程序中实现springsecurityoauth2。我可以使用以下方式获取访问token和刷新token:http://localhost:8080/xApp/oauth/token?username=user1&password=password&grant_type=password&client_id=xApp&client_secret=xApp{"access_token":"798c7e71-983b-4137-a0cb-ceae4e9b4190""token_type":"bearer""refresh_token":"0752b8ff-5086-4457-