Google Code Prettify

2014年9月5日 星期五

Web Developer Runtime Map

Web Developer Runtime Map (由下往上看)


2014年5月2日 星期五

Cross-origin resource sharing

參考網址:
 http://en.wikipedia.org/wiki/Cross-Origin_Resource_Sharing
 https://developer.mozilla.org/en-    US/docs/Web/HTTP/Access_control_CORS

Cross domain issue

目前遇到無法正常運作的情形

  1. Ajax 取回不同domain主機的檔案
  2. Canvas.toDataURL()


解決方式

    Server 端增加回傳 Header

  1. Access-Control-Allow-Origin "*"
  2. Access-Control-Allow-Methods "GET"
    Client 端使用 Image 時
  • img.crossOrigin = "anonymous";

2013年12月24日 星期二

Apache Shiro Password Hashing

SHA 512 Hash

Sha512Hash s = new Sha512Hash("password", "salt string", 1024);
UsernamePasswordToken token = new UsernamePasswordToken("milla", s.toString());
Subject subject = SecurityUtils.getSubject();
subject.login(token);

Apache Shiro Cryptography Features

http://shiro.apache.org/cryptography-features.html

2013年10月8日 星期二

Apache Shiro Use Cache Server

Apache Shiro 已經有內建 Cache 機制,http://shiro.apache.org/caching.html

但也能自行 implement,整合其它的 Cache Server (JCache, Ehcache, JCS, OSCache, JBossCache, TerraCotta, Coherence, GigaSpaces)

implement 方式,可以參考這個網址
http://www.java2s.com/Open-Source/Java/Authentication-Authorization/shrio/org/apache/shiro/cache/ehcache/Catalogehcache.htm


使用時,需在 shiro.ini 增加幾行資料

#Use Infinispan HotRod Cache
cacheManager = com.test.cache.SessionCacheManager
securityManager.cacheManager = $cacheManager
sessionDAO = org.apache.shiro.session.mgt.eis.EnterpriseCacheSessionDAO
securityManager.sessionManager.sessionDAO = $sessionDAO

Apache Shiro JdbcRealm and RememberMe

僅需要在 shiro.ini 增加幾行資料

#Setting JdbcRealm
jdbcRealm = org.apache.shiro.realm.jdbc.JdbcRealm

#取得帳號密碼
jdbcRealm.authenticationQuery = select user_pass from users where user_name = ?

#取得Roles資料
jdbcRealm.userRolesQuery = select role_name from user_roles where user_name = ?

#使用JNDI DataSource
dataSource = org.apache.shiro.jndi.JndiObjectFactory
dataSource.resourceName = java:/comp/env/jdbc/EmployeeDB

jdbcRealm.dataSource = $dataSource
securityManager.realms = $jdbcRealm

#-----------------------------------------------------------------------------------------

#Setting RememberMe
rememberMeManager = org.apache.shiro.web.mgt.CookieRememberMeManager
securityManager.rememberMeManager = $rememberMeManager
securityManager.rememberMeManager.cookie.name = remember_me

#設定cookie.maxAge = blah , cookie會無法正常寫入
#securityManager.rememberMeManager.cookie.maxAge = blah

securityManager.rememberMeManager.cookie.domain = testdomain.com

2013年5月29日 星期三

Cloudera Manager Free 監控

本來想利用別人寫好的  https://github.com/cloudera/cm_api

但安裝時遇到些問題,CentOS 5 的 Python 只有 2.4.3
上面的套件需要 2.5以上 才能使用

只好自己來囉,Cloudera Manager 本身就有提供 API,透過HTTP,即可取得相關資料
文件在 http://unimelb.sportalhosting.com/static/apidocs/tutorial.html

只要先取得 clusters 資料,在依序取得 services 資料就行了

Service的回傳JSON資料,可參考 http://unimelb.sportalhosting.com/static/apidocs/ns0_apiService.html