0

我正在使用 Flask-Oauthlib 实现 Flask REST API,想知道在 URL 参数中传递用户名和密码是否可以?例如:

GET http://127.0.0.1:5000/api/token?client_id=CLIENT_ID&grant_type=password&username=myusername&password=hopeudontseemypass

在我的开发环境中,所有请求都在日志中显示为纯文本,如下所示:

127.0.0.1 - "GET /api/token?client_id=CLIENT_ID&grant_type=password&username=myusername&password=hopeudontseemypass HTTP/1.1" 200 -

有没有办法在请求标头中传递base64编码的用户名/传递?所有密码授予类型示例都在 URL 参数中使用用户名和密码,所以不知道如果服务器将使用 SSL,这是否是一个真正的问题。

4

1 回答 1

2

OAuth 协议规范说参数必须 POST 到令牌端点。通过接受它们作为查询参数,授权服务器违反了规范。最好使用 POST 来避免凭据出现在日志文件中。

于 2016-08-28T11:15:45.157 回答