标签: restful-authentication

在seeds.rb 中播种restful_authentication 用户

我很确定我了解 Seeds.rb 的播种工作原理,但我似乎无法使用它来将Restful_authentication User 对象粘贴到数据库中。

User.create(:login => 'admin',
            :role => Role.find_by_name('super_admin'),
            :email => 'admin@example.com',
            :password => '123123')
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

编辑:我还尝试添加密码确认。依然没有。

ruby-on-rails restful-authentication seed

5
推荐指数
1
解决办法
1876
查看次数

Flickr API:API 密钥一直无效?

我有一个 Flickr,我用它从我的手机上传图片,所有图片都是公开的。在我的博客上,我想检索所有要显示的图像,为此我首先尝试创建一个应用程序来获取我的 API 密钥。我正在使用 Flickr API flickr.people.getPublicPhotos。据说这个 API 服务不需要身份验证,把它们放在一起我最终得到了这个调用:

http://api.flickr.com/services/rest/?method=flickr.people.getPublicPhotos&api_key=fc94274cd0335f3c171fe22c8490b7d9&user_id=5545356%40N04&extras=description%2Cdate_upload%2Cdate_taken%2Cowner_name%2Coriginal_format%2Ctags%2C+o_dims%2C+views%2C+media%2C+path_alias%2C+url_sq%2C+url_t%2C+url_s%2C+url_q%2C+url_m%2C+url_n%2C+url_z%2C+url_c%2C+url_l%2C+url_o&per_page=40&format=php_serial&api_sig=0c48e2b6b6d9a03521e5ca86a15cf471
Run Code Online (Sandbox Code Playgroud)

问题是每大约 10 个小时我就会失败并返回错误消息 a:3:{s:4:"stat";s:4:"fail";s:4:"code";i:100;s:7:"message";s:31:"Invalid API Key (Key not found)";}

我尝试在登录到 Flickr 时创建 API 调用,但没有登录,在这两种情况下我都收到错误消息。这就像 API 密钥过期或停止工作。在 Flickr 上是否遗漏了有关 API 密钥的信息或可能导致此问题的原因?一天两次更新 URL 真的很令人沮丧。

谢谢

真诚的
- Mestika

api rest flickr restful-authentication

5
推荐指数
1
解决办法
8317
查看次数

通过 http 标头传递真实性令牌

我有一个使用令牌来验证用户身份的 rails 应用程序。目前我将令牌作为参数传递。我想改变这一点。我相信可以通过 html 标头传递它。我不明白如何使用authenticate_or_request_with_http_token do |token, options|. 我的 rails 应用程序实际上是我的 iphone 客户端的服务器。我不明白的事情是:

  1. 我知道options是随机数,但是我的客户端和服务器之间如何解决?

  2. 我如何在我的服务器代码中实际使用它。

  3. 我可以authenticate_or_request_with_http_token do |token, options|用来检查标头中的令牌,但是一旦成功创建会话,如何将其插入标头中。

这是我的服务器会话控制器:

def create
if @user && @user.authenticate(params[:password])
 # @token = @user.auth_token
 @user.auth_token = SecureRandom.hex 
 @user.save
    respond_to do |format|
        format.json {render :json => {:status => "200", :message => "Logged in successfully", :auth_token => @user.auth_token}}
    end
else
    respond_to do |format|
        format.json {render :json => {:status => "401", :message => "wrong credentials"}}
    end
end
  end

  def destroy
    if(@user) …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails restful-authentication ruby-on-rails-3.2

5
推荐指数
1
解决办法
1万
查看次数

配置doorkeeper的resource_owner_authenticator,无需其他gem

我目前正在将 RESTful API 添加到 Rails 教程中的示例应用程序中,并且我正在尝试使用门卫来保护它,而无需其他宝石(例如设计或许可)。我希望门卫根据现有会话对用户进行身份验证。当前的会话实现在浏览器中保留remember_tokencookie(在登录时分配)并将散列令牌存储在用户模型中。

我在模块(app/helpers/sessions_helper.rb)中有一个current_user方法SessionsHelper,它也包含在ApplicationController中:

def current_user
  remember_token = User.digest(cookies[:remember_token])
  @current_user ||= User.find_by(remember_token: remember_token)
end
Run Code Online (Sandbox Code Playgroud)

这是resource_owner_authenticator(其他失败的实现已被注释掉):

resource_owner_authenticator do
  # fail "Please configure doorkeeper resource_owner_authenticator block located in #{__FILE__}"
  # Put your resource owner authentication logic here.
  # Example implementation:
  #   User.find_by_id(session[:user_id]) || redirect_to(new_user_session_url)
  # puts current_user || "no user"
  # current_user # || redirect_to(signin_path)
  # remember_token = User.digest(request.cookies[:remember_token])
  # User.find_by(remember_token: remember_token)
  # puts "in resource_owner_authenticator"
  current_user
end
Run Code Online (Sandbox Code Playgroud)

以下是来自一个 GET 请求的错误: …

ruby-on-rails restful-authentication doorkeeper

5
推荐指数
0
解决办法
2151
查看次数

双腿OAuth 2.0是否符合HIPAA标准?

我即将开始使用CRUD方法编写新的RESTful服务,并且需要满足HIPAA合规性,所以我想知道2-legged OAuth 2.0是否符合该要求.

有什么来源我可以看一下,所以我可以确认是或否?我做了一个快速的谷歌搜索,但找不到详细的东西.

提前致谢

restful-authentication

5
推荐指数
0
解决办法
895
查看次数

使用RAML处理Mule流中的多种安全方案的最佳方法是什么?

我正在使用RAML创建一个Web服务API。

我用两种安全方案创建了RAML

  • OAuth 2.0
  • 自订

我的第一种方法是根据请求参数处理授权,在该请求参数中,我在请求内发送了一个特殊参数,然后将授权任务委派给任一授权引擎。但这没有用,当向OAuth服务器发出请求时,它就抛出了Null Pointer Exception
然后我才知道针对不同授权方案的授权请求应具有不同的URI,例如,如果发出了针对oAuth的请求,则URI应该类似于/ api / oauth2 / authorize?parameters,而对于其他方案而言,oauth 1.0可以是/ api / oauth1 /授权参数

为了实现这一点,我添加了两个具有不同URI模式的APIkit路由器流。

在此处输入图片说明

所附图像中的第一个APIKit流用于自定义授权,第二个用于OAuth。从图中可以看出,在第二个流程中,我在APIkit路由器之前添加了OAuth验证器。

我想知道将OAuth验证器放在该位置是否正确,以便可以验证每个请求?还是应该将OAuth验证程序作为每个资源流的第一个元素,以便在发出请求后,OAuth可以验证对单个资源的请求。我还在OAuth的某处读到了内容,首先对请求进行身份验证,然后才允许访问受保护的资源,在这种情况下,我猜想我在APIKit路由器正确之前添加OAuth验证程序的方法。但是,我不确定这一点,并希望在整个场景中提供第二条建议。

谢谢。

api restful-authentication mule oauth-2.0 raml

5
推荐指数
0
解决办法
509
查看次数

如何在 Spring Boot 中使用 RESTful 和基本身份验证

你好,我使用 RESTful 进行基本身份验证,此代码是 RestController 的一部分:

@GetMapping("/jpa/users/{username}/goals")
public List<Goal> getAllGoals(@PathVariable String username) {
    userId = getUserIdFromUsername(username);
    return goalJpaRepository.findByUserId(userId); 
}

public Long getUserIdFromUsername(String username) {
    User user = userJpaRepository.findByUsername(username);
    userId = user.getId(); 
    return userId;
}
Run Code Online (Sandbox Code Playgroud)

我有一个问题,例如我正在使用 Postman 来检索特定用户的目标,如下所示:

http://localhost:8080/jpa/users/john/goals 带有 GET 请求

然后我对用户名 john 和该用户名的密码使用基本身份验证,然后我收到了 john 的目标。

之后,如果我对此链接http://localhost:8080/jpa/users/tom/goals执行 GET 请求,我会收到 Tom 的目标,但此时我已使用 john 登录,因此 john 可以看到他的目标,他也可以看到汤姆的目标。

问题是我如何访问 RestController 中的登录用户名,因为我想做这样的事情:

if (loginUsername == username) {
    return goalJpaRepository.findByUserId(userId);
} 

return "Access denied!";
Run Code Online (Sandbox Code Playgroud)

所以我想知道是否可以从HTTP Header访问登录用户名?

谢谢你!


更新- 是的,框架是 Spring Boot,我也使用 Spring Security …

java rest restful-authentication basic-authentication spring-rest

5
推荐指数
1
解决办法
7437
查看次数

如何使用 Docker Registry HTTP API V2 获取 Docker 注册表中所有存储库的列表?

与我合作的外部组织允许我访问私有(受身份验证令牌保护的)docker 注册表,最终我希望能够使用 docker 的 HTTP API V2 查询此注册表,以便获取所有注册表中可用的存储库和/或图像。

但在我这样做之前,我首先想获得一些在公共注册表(如Docker Hub )上构建这些类型的 API 查询的基本实践。因此,我继续在 Docker Hub 上使用用户名和密码注册了自己,并查阅了 API V2 文档,其中指出可以请求进行API 版本检查,如下所示:

GET /v2/
Run Code Online (Sandbox Code Playgroud)

或请求存储库列表为:

GET /v2/_catalog
Run Code Online (Sandbox Code Playgroud)

使用 curl 以及我用于注册 Docker Hub 帐户的用户名和密码,我尝试在命令行构造一个 GET 请求:

stachyra> curl -u stachyra:<my_password> -X GET https://index.docker.io/v2/
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":null}]}
stachyra> curl -u stachyra:<my_password> -X GET https://index.docker.io/v2/_catalog
{"errors":[{"code":"UNAUTHORIZED","message":"authentication required","detail":[{"Type":"registry","Class":"","Name":"catalog","Action":"*"}]}]}
Run Code Online (Sandbox Code Playgroud)

当然,<my_password>我用我的实际帐户密码代替了 。

我一直期望从这个查询中得到的响应是一条巨大的 json 消息,列出了数千个存储库名称,但 API 似乎拒绝了我的 Docker Hub 凭据。

问题 1:我什至有index.docker.iodocker hub 注册表的正确 URL ( …

rest restful-authentication docker dockerhub docker-api

5
推荐指数
3
解决办法
6675
查看次数

在不使用Http-Authentication的情况下在Apache Jersey中进行身份验证?

我正在使用Apache Jersey构建RESTful Web服务.现在我希望你需要对它的一些请求进行身份验证.使用典型的REST方法,身份验证应通过HTTP身份验证完成.但是这里的帖子 提到,如何做到这一点的更好方法是使用cookies.我认为讨论中有一些有效的观点.(如何)我可以使用Cookie验证泽西岛身份验证吗?我需要另一个框架吗?

java authentication rest restful-authentication jersey

4
推荐指数
1
解决办法
2253
查看次数

如何在Spring Boot中保护RESTful API而不保留jsessionid

我需要创建一个SpringBoot RESTful API,供Web项目或移动应用程序使用.

我的问题是如何在没有通常的基本授权的情况下保护它,它将"jsessionid"返回给Web浏览器并保持与它的会话.对于Web项目来说这不是问题,因为它可以存储jsessionid.但是如何保护移动应用程序请求到API?

对不起我的英语不好.谢谢.

api rest spring restful-authentication spring-boot

4
推荐指数
2
解决办法
3691
查看次数