RedmineにGoogleAppsアカウントでログイン出来るようにする
2015/04/06
RedmineのログインをGoogleアカウントで出来るように[redmine_omniauth_google]プラグインを使って設定します。
目次
環境
OS : Amazon Linux
Redmine : 3.0.0
[redmine_omniauth_google]プラグインをインストールする
[bash]
$ cd /var/lib/redmine/plugins
$ sudo git clone https://github.com/hicknhack-software/redmine_time_tracker
$ cd ..
$ export ORIG_PATH=”$PATH”
$ sudo -s -E
export PATH=”$ORIG_PATH”
bundle install –without test
exit
$ bundle install –without test
$ rake redmine:plugins:migrate RAILS_ENV=production
$ sudo service httpd restart
[/bash]
GoogleAppsを設定する
GoogleApps管理者で https://cloud.google.com/console にアクセス
[プロジェクトを作成]で新規プロジェクトを作成し、任意のプロジェクト名を設定します。
(理由は不明ですが不明なエラーで失敗してプロジェクト名を変えて作ったら成功しました。)
[APIと認証]-[認証情報]で[OAuth]-[新しいクライアントIDを作成]を押します。
[ウェブアプリケーション]を選択して[同意画面を設定]を押します。
[メールアドレス]を選択して[サービス名]を任意に設定して[保存]を押します。
[承認済みのJAVASCRIPT生成元]にRedmineサーバーのドメインまでを設定します。
Redmineをサブフォルダにしていてもドメインまででいいです。
[リダイレクトURI]はサブフォルダも含むRedmineのパスに oauth2callback を加えたものを設定します。
例:
– [承認済みのJAVASCRIPT生成元] http://yourdomain.com/
– [リダイレクトURI] http://yourdomain.com/redmine/oauth2callback
クライアントIDが生成されるのでクライアントIDとクライアントシークレットをコピーしておきます。
[redmine_omniauth_google]プラグインを設定する
Redmineにログインして[管理]-[プラグイン]を押します。
[redmine_omniauth_google]プラグインの[設定]を押します。
[Client ID],[Client Secret]を設定します。
[Available domains]にはGoogleAppsのドメインを設定します。
[Oauth authentification]をチェックします。
試したところ、
「NoMethodError in RedmineOauthController#oauth_google_callback」エラー
「find_or_initialize_by_mail」非推奨メソッドで怒られてるので、redmine_omniauth_googleプラグインを推奨メソッドに変更改修する。
次は、「Unknown column ‘users.email’ in ‘where clause’:」で怒られる。
なるほど。
Redmine3.0.0にはプラグインが対応していないという事か。
これがプラグインに頼っているとバージョンアップの時に大変になると言っていた事ですか。
という事なので、redmine_omniauth_googleプラグインをGitHubでフォークして、上の改修も含めて3.0.0対応すると決意しました。
別の記事にさせていただきます。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
ライブ配信のカレンダーをGoogle Apps Scriptとかで作りました
ライブ配信がまとまっているカレンダー欲しいなあと思いまして。 まとめようと思いま …
-
Tracの外観をプラグインで変更する-TracpathThemeプラグイン
プラグインをインストールするだけで外観を変更する こんな感じのUIで5色(Red …
-
RedmineとGitLabを同じサーバにインストールする
Redmineでプロジェクトに設定できるGitはローカルのみ(Redmineと同 …
-
Redmine3.0.0に CSV Importerプラグインをインストールする
バグ管理や開発の現場だけではなく進捗管理などにも重宝出来るRedmine。 その …
-
Redmine 3.0.0に CRMプラグインをインストールする
Redmine CRMプラグインのFreeのLightバージョンを使ってみる事に …
-
CentOS 6.5にgit連携のTracを構築する
秋の夜長に自宅でTracサーバを構築してみる。 ひとまずRedmineはいったん …
-
共有Googleカレンダーを自分のカレンダーに追加してiPhoneに同期する
配信ライブカレンダーという共有カレンダーを作りました。 このようなGoogleの …
-
Amzon Linux のApacheでRedmineとWordPressをバーチャルホストで共存する
EC2とRDSを節約しようと思いまして、Redmineを動かしてるとこに検証用W …
-
RedmineにEasy Gantt プラグインをインストールしようとしたらRubyのバージョンが古いという事にひっかかったのでRubyもアップグレードした
RedmineにEasy Ganttプラグインをインストールしました。 標準のガ …
-
「Cloud Vision Api & Tensorflow勉強会」に行ってきました
「Cloud Vision Api & Tensorflow勉強会」に行 …