4

Rails アプリケーションで ruby​​-saml を使用する際に問題に直面しています。Rubyの世界は初めてです。

ここから、SAML SP にruby​​-samlツール キットを使用できることがわかりました。

ここで、コントローラーで OneLogin を参照しようとすると (以下のように)、「初期化されていない定数 Onelogin::Saml」というエラーが発生します。

OneLogin::RubySaml::Authrequest.new

コントローラーに以下の行を含めようとすると、さまざまなエラーが発生します。

require 'onelogin/saml'
or
require 'onelogin/ruby-saml'

次のようなエラーを取得します。

cannot load such file -- onelogin/saml
or
cannot load such file -- onelogin/ruby-saml

gem ruby​​-saml をインストールし、同じものを Rails アプリケーションの GemFile にも含めて、bundle install も実行しました。

[root@localhost SP]# bundle show ruby-saml  
/usr/local/rvm/gems/ruby-2.1.1/gems/ruby-saml-0.8.1  
[root@localhost SP]# 

私のコントローラー:

#require 'onelogin/saml'

require 'onelogin/ruby-saml'

class SamlController < ApplicationController
  skip_before_filter :verify_authenticity_token, :only => [:consume]  

  def index
    #settings = Account.get_saml_settings
    settings = :get_saml_settings
    request = Onelogin::Saml::Authrequest.new
    redirect_to(request.create(settings))
  end

  def consume
    response = Onelogin::Saml::Response.new(params[:SAMLResponse])
    response.settings = Account.get_saml_settings

    logger.info "NAMEID: #{response.name_id}"

    if response.is_valid?
      session[:userid] = response.name_id
      redirect_to :action => :complete
    else
      redirect_to :action => :fail
    end
  end

  def complete
  end

  def fail
  end

def get_saml_settings
end

end

何が欠けているのかわかりません。考え?

4

1 に答える 1