2012年3月19日月曜日

Web-based Groovy Console for Grailsを使用してブラウザからgroovyを実行する

Web-based Groovy Console for Grailsを使用してブラウザからgroovyを実行するには、以下の手順を実行します。

1. Web-based Groovy Console for Grailsプラグインのインストール

アプリケーションディレクトリに移動後、以下のコマンドを実行します。
grails install-plugin console
2. セキュリティ確保のためにSpring Securityプラグインをインストール
rem ユーザとロールのドメインクラスを作成
rem grails s2-quickstart <package> <user domain class> <role domain class>
grails s2-quickstart console1 User Role
3. アクセス制限URLの指定
Config.groovyに以下のコードを追加
import grails.plugins.springsecurity.SecurityConfigType
grails.plugins.springsecurity.securityConfigType = SecurityConfigType.InterceptUrlMap
grails.plugins.springsecurity.interceptUrlMap = [
    '/console/*':['ROLE_ADMIN'],
    '/**':['IS_AUTHENTICATED_ANONYMOUSLY']
]
4. 管理者ユーザの作成
BootStrap.groovyを編集して必要に応じてconsoleを利用できるユーザを作成します。
import console1.*
class BootStrap {

  def init = { servletContext ->
    def roleAdmin = Role.findByAuthority("ROLE_ADMIN")?:
      new Role(authority:"ROLE_ADMIN").save(failOnError:true)

    def userAdmin = User.findByUsername("admin")?:
      new User(username: "admin", password: "admin",
        enabled:true).save(failOnError:true)

    if (!userAdmin.authorities.contains(roleAdmin)) {
      UserRole.create userAdmin, roleAdmin, true
    }
  }
  def destroy = {
  }
}
出力画面

動作環境
grails 2.0.1

関連情報
Web-based Groovy Console for Grailsのホームページ
http://grails.org/plugin/console

0 件のコメント:

コメントを投稿