2014-06-24 76 views
0

我在AWS上發現,如果我獲得IAM角色證書(密鑰,祕密,令牌)並將它們設置爲Python腳本中適當的環境變量,我可以創建並使用SWF Layer1對象就好了。但是,它看起來像Layer2對象不起作用。舉例來說,如果我有伯特和進口的操作系統,並做到:AWS SWF使用IAM角色的問題

test = boto.swf.layer2.ActivityWorker() 
test.domain = 'someDomain' 
test.task_list = 'someTaskList' 
test.poll() 

我得到一個異常的安全令牌是無效的,而事實上,如果我通過對象挖,安全令牌未設置。這甚至與發生:

test = boto.swf.layer2.ActivityWorker(session_token=os.environ.get('AWS_SECURITY_TOKEN')) 

我可以通過做解決這個問題:

test._swf.provider.security_token = os.environ.get('AWS_SECURITY_TOKEN') 
test.poll() 

但似乎很哈克和惱人的,因爲我有這個,我做一個新的二層對象都必須這樣做。其他人注意到這一點?這種行爲是出於某種原因,還是我在這裏丟失了什麼?

回答