oauth2_provider 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +306 -0
- data/HACKING.textile +45 -0
- data/NOTICE.textile +6 -0
- data/README.textile +11 -3
- data/WHAT_IS_OAUTH.textile +165 -0
- data/app/controllers/oauth_authorize_controller.rb +69 -0
- data/app/controllers/oauth_clients_controller.rb +79 -0
- data/app/controllers/oauth_token_controller.rb +59 -0
- data/app/controllers/oauth_user_tokens_controller.rb +61 -0
- data/app/models/oauth2/provider/oauth_authorization.rb +4 -0
- data/app/models/oauth2/provider/oauth_client.rb +14 -3
- data/app/views/{oauth2/provider/layouts → layouts}/oauth_clients.html.erb +0 -0
- data/app/views/oauth_authorize/index.html.erb +17 -0
- data/app/views/oauth_clients/_form.html.erb +27 -0
- data/app/views/oauth_clients/edit.html.erb +7 -0
- data/app/views/oauth_clients/index.html.erb +53 -0
- data/app/views/oauth_clients/new.html.erb +7 -0
- data/app/views/{oauth2/provider/oauth_clients → oauth_clients}/show.html.erb +0 -0
- data/app/views/oauth_user_tokens/index.html.erb +28 -0
- data/config/routes.rb +15 -9
- data/generators/oauth2_provider/USAGE +12 -0
- data/generators/oauth2_provider/templates/config/initializers/oauth2_provider.rb +3 -0
- data/lib/ext/validatable_ext.rb +27 -0
- data/lib/oauth2/provider/a_r_datasource.rb +13 -1
- data/lib/oauth2/provider/application_controller_methods.rb +32 -20
- data/lib/oauth2/provider/configuration.rb +39 -0
- data/lib/oauth2/provider/in_memory_datasource.rb +8 -0
- data/lib/oauth2/provider/model_base.rb +59 -10
- data/lib/oauth2/provider/ssl_helper.rb +42 -0
- data/lib/oauth2/provider/transaction_helper.rb +24 -0
- data/lib/oauth2/provider/url_parser.rb +17 -0
- data/lib/oauth2_provider.rb +3 -6
- data/oauth2_provider.gemspec +15 -6
- metadata +81 -26
- data/app/controllers/oauth2/provider/oauth_authorize_controller.rb +0 -68
- data/app/controllers/oauth2/provider/oauth_clients_controller.rb +0 -56
- data/app/controllers/oauth2/provider/oauth_token_controller.rb +0 -58
- data/app/controllers/oauth2/provider/oauth_user_tokens_controller.rb +0 -29
- data/app/views/oauth2/provider/oauth_authorize/index.html.erb +0 -8
- data/app/views/oauth2/provider/oauth_clients/edit.html.erb +0 -20
- data/app/views/oauth2/provider/oauth_clients/index.html.erb +0 -28
- data/app/views/oauth2/provider/oauth_clients/new.html.erb +0 -21
- data/app/views/oauth2/provider/oauth_user_tokens/index.html.erb +0 -14
- data/tasks/gem.rake +0 -88
@@ -1,8 +0,0 @@
|
|
1
|
-
<% form_for(url_for(:action => :authorize), :html => {:id => 'oauth_authorize_form'}) do |f| -%>
|
2
|
-
Do you wish to allow the service named '<%= @client.name %>' to access this application on your behalf? <input type="checkbox" name="authorize" id="authorize" value="1" />
|
3
|
-
<input type="hidden" name="client_id" id="client_id" value="<%= params[:client_id] %>" />
|
4
|
-
<input type="hidden" name="redirect_uri" id="redirect_uri" value="<%= params[:redirect_uri] %>" />
|
5
|
-
<input type="hidden" name="response_type" id="response_type" value="<%= params[:response_type] %>" />
|
6
|
-
<input type="hidden" name="state" id="state" value="<%= params[:state] %>" />
|
7
|
-
<input type="submit" value="Submit" />
|
8
|
-
<% end -%>
|
@@ -1,20 +0,0 @@
|
|
1
|
-
<h1>Editing oauth_client</h1>
|
2
|
-
|
3
|
-
<% form_for(@oauth_client, :html => {:id => 'oauth_client_edit_form', :class => nil}) do |f| %>
|
4
|
-
<%= f.error_messages %>
|
5
|
-
|
6
|
-
<div>
|
7
|
-
<%= f.label :name %>
|
8
|
-
<%= f.text_field :name %>
|
9
|
-
</div>
|
10
|
-
<div>
|
11
|
-
<%= f.label :redirect_uri %>
|
12
|
-
<%= f.text_field :redirect_uri %>
|
13
|
-
</div>
|
14
|
-
<div>
|
15
|
-
<%= f.submit 'Update' %>
|
16
|
-
</div>
|
17
|
-
<% end %>
|
18
|
-
|
19
|
-
<%= link_to 'Show', @oauth_client, :class => 'show_link' %> |
|
20
|
-
<%= link_to 'Back', oauth_clients_path, :class => 'back_link' %>
|
@@ -1,28 +0,0 @@
|
|
1
|
-
<h1>Listing oauth_clients</h1>
|
2
|
-
|
3
|
-
<table id="oauth_clients_table" class="list_table">
|
4
|
-
<tr>
|
5
|
-
<th>Name</th>
|
6
|
-
<th>Client id</th>
|
7
|
-
<th>Client secret</th>
|
8
|
-
<th>Redirect URI</th>
|
9
|
-
<th>Actions</th>
|
10
|
-
</tr>
|
11
|
-
|
12
|
-
<% @oauth_clients.each do |oauth_client| %>
|
13
|
-
<tr>
|
14
|
-
<td><%=h oauth_client.name %></td>
|
15
|
-
<td><%=h oauth_client.client_id %></td>
|
16
|
-
<td><%=h oauth_client.client_secret %></td>
|
17
|
-
<td><%=h oauth_client.redirect_uri %></td>
|
18
|
-
<td>
|
19
|
-
<%= link_to 'Edit', edit_oauth_client_path(oauth_client), :class => 'edit_link' %>
|
20
|
-
<%= link_to 'Destroy', oauth_client, :confirm => 'Are you sure?', :method => :delete, :class => 'delete_link' %>
|
21
|
-
</td>
|
22
|
-
</tr>
|
23
|
-
<% end %>
|
24
|
-
</table>
|
25
|
-
|
26
|
-
<br />
|
27
|
-
|
28
|
-
<%= link_to 'New oauth_client', new_oauth_client_path, :class => 'link_as_button', :id => 'new_oauth_client_button' %>
|
@@ -1,21 +0,0 @@
|
|
1
|
-
<h1>New oauth_client</h1>
|
2
|
-
|
3
|
-
<!-- add in an ID for the form -->
|
4
|
-
|
5
|
-
<% form_for(@oauth_client, :html => {:id => 'oauth_client_create_form', :class => nil}) do |f| %>
|
6
|
-
<%= f.error_messages %>
|
7
|
-
|
8
|
-
<div>
|
9
|
-
<%= f.label :name %>
|
10
|
-
<%= f.text_field :name %>
|
11
|
-
</div>
|
12
|
-
<div>
|
13
|
-
<%= f.label :redirect_uri %>
|
14
|
-
<%= f.text_field :redirect_uri %>
|
15
|
-
</div>
|
16
|
-
<div>
|
17
|
-
<%= f.submit 'Create' %>
|
18
|
-
</div>
|
19
|
-
<% end %>
|
20
|
-
|
21
|
-
<%= link_to 'Back', oauth_clients_path, :class => 'back_link' %>
|
@@ -1,14 +0,0 @@
|
|
1
|
-
<table id="oauth_user_token_table" class="list_table">
|
2
|
-
<tr>
|
3
|
-
<th>Client</th>
|
4
|
-
<th>Token</th>
|
5
|
-
<th> </th>
|
6
|
-
</tr>
|
7
|
-
<% @tokens.each do |token| -%>
|
8
|
-
<tr>
|
9
|
-
<td><%= token.oauth_client.name %></td>
|
10
|
-
<td><%= token.access_token %></td>
|
11
|
-
<td><%= link_to('Destroy', {:action => :revoke, :token_id => token.id, :controller => 'Oauth2::Provider::OauthUserTokens'}, {:confirm => 'Are you sure?', :method => :delete, :class => 'delete_link'})%></td>
|
12
|
-
</tr>
|
13
|
-
<% end -%>
|
14
|
-
</table>
|
data/tasks/gem.rake
DELETED
@@ -1,88 +0,0 @@
|
|
1
|
-
# Copyright (c) 2010 ThoughtWorks Inc. (http://thoughtworks.com)
|
2
|
-
# Licenced under the MIT License (http://www.opensource.org/licenses/mit-license.php)
|
3
|
-
|
4
|
-
require 'rubygems'
|
5
|
-
require 'rake/gempackagetask'
|
6
|
-
|
7
|
-
namespace :release do
|
8
|
-
|
9
|
-
desc 'Update the changelog'
|
10
|
-
task :changelog do
|
11
|
-
File.open(File.join(File.dirname(__FILE__), '..', 'CHANGELOG'), 'w+') do |changelog|
|
12
|
-
`git log -z --abbrev-commit vendor/plugins/oauth2_provider`.split("\0").each do |commit|
|
13
|
-
next if commit =~ /^Merge: \d*/
|
14
|
-
ref, author, time, _, title, _, message = commit.split("\n", 7)
|
15
|
-
ref = ref[/commit ([0-9a-f]+)/, 1]
|
16
|
-
author = author[/Author: (.*)/, 1].strip
|
17
|
-
time = Time.parse(time[/Date: (.*)/, 1]).utc
|
18
|
-
title.strip!
|
19
|
-
|
20
|
-
changelog.puts "[#{ref} | #{time}] #{author}"
|
21
|
-
changelog.puts '', " * #{title}"
|
22
|
-
changelog.puts '', message.rstrip if message
|
23
|
-
changelog.puts
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
desc 'Create the oauth2_provider gem'
|
29
|
-
task :gem => :changelog do
|
30
|
-
Rake::Task[:copyright].invoke
|
31
|
-
cd File.join(File.expand_path(File.dirname(__FILE__)), '..') do
|
32
|
-
|
33
|
-
cp "#{RAILS_ROOT}/../README.textile", '.', :verbose => false
|
34
|
-
cp "#{RAILS_ROOT}/../MIT-LICENSE.txt", '.', :verbose => false
|
35
|
-
|
36
|
-
spec = Gem::Specification.new do |s|
|
37
|
-
s.name = "oauth2_provider"
|
38
|
-
s.version = "0.2.0"
|
39
|
-
s.author = "ThoughtWorks, Inc."
|
40
|
-
s.email = "ketan@thoughtworks.com"
|
41
|
-
s.homepage = "http://github.com/ThoughtWorksStudios/oauth2_provider"
|
42
|
-
s.platform = Gem::Platform::RUBY
|
43
|
-
s.summary = "A Rails plugin to OAuth v2.0 enable your rails application"
|
44
|
-
s.description = "A Rails plugin to OAuth v2.0 enable your rails application. This plugin implements v09 of the OAuth2 draft spec http://tools.ietf.org/html/draft-ietf-oauth-v2-09."
|
45
|
-
s.files = Dir["**/*.*"] + ["#{s.name}.gemspec", "README.textile", "CHANGELOG"]
|
46
|
-
s.has_rdoc = false
|
47
|
-
s.extra_rdoc_files = ["README.textile", "MIT-LICENSE.txt"]
|
48
|
-
end
|
49
|
-
|
50
|
-
File.open("#{spec.name}.gemspec", "w") { |f| f << spec.to_ruby }
|
51
|
-
|
52
|
-
sh "gem build #{spec.name}.gemspec"
|
53
|
-
|
54
|
-
# move it into a proper directory
|
55
|
-
rm_rf "#{RAILS_ROOT}/pkg", :verbose => false
|
56
|
-
mkdir "#{RAILS_ROOT}/pkg", :verbose => false
|
57
|
-
mv "#{spec.name}-#{spec.version}.gem", "#{RAILS_ROOT}/pkg", :verbose => false
|
58
|
-
|
59
|
-
#cleanup
|
60
|
-
rm "README.textile", :verbose => false
|
61
|
-
rm "MIT-LICENSE.txt", :verbose => false
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
desc 'Push the gem out to gemcutter'
|
66
|
-
task :push => [:test, :gem] do
|
67
|
-
|
68
|
-
puts <<-INSTRUCTIONS
|
69
|
-
|
70
|
-
==============================================================
|
71
|
-
Instructions before you push out:
|
72
|
-
* Make sure everything is good
|
73
|
-
* Bump the version number in the `gem.rake' file
|
74
|
-
* Check in
|
75
|
-
* Run this task again to:
|
76
|
-
* verify everything is good
|
77
|
-
* generate a new gem with the new version number
|
78
|
-
* Create a tag in git:
|
79
|
-
$ git tag -a -m 'Tag for version X.Y.Z' 'vX.Y.Z'
|
80
|
-
$ gem push pkg/oauth2_provider-X.Y.Z.gem
|
81
|
-
==============================================================
|
82
|
-
INSTRUCTIONS
|
83
|
-
# sh("gem push pkg/*.gem") do |res, ok|
|
84
|
-
# raise 'Could not push gem' if !ok
|
85
|
-
# end
|
86
|
-
end
|
87
|
-
|
88
|
-
end
|