我有一个openstack swift帐户,我可以使用我的用户名和密码访问swift中的对象。我的openstack swift采用密钥库来处理auth。
现在我想生成一个令牌,另一个只能使用令牌访问swift中的对象。并且令牌将在一段时间后过期。我可以这样做吗?我该怎么办?
答案 0 :(得分:0)
首先使用以下方法生成令牌:
var version = typeof(MyApplicationName.MvcApplication).Assembly.GetName().Version;
var buildDateTime = new DateTime(2000, 1, 1).Add(new TimeSpan( TimeSpan.TicksPerDay * version.Build + TimeSpan.TicksPerSecond *2 * version.Revision));
然后使用:
获取toke$ curl -v -s -X POST $OS_AUTH_URL/auth/tokens?nocatalog
-H "Content-Type: application/json" -d '{ "auth": { "identity": { "methods": ["password"],
"password": {"user": {"domain": {"name": "'"$OS_USER_DOMAIN_NAME"'"},
"name": "'"$OS_USERNAME"'", "password": "'"$OS_PASSWORD"'"} } },
"scope": { "project": { "domain": { "name": "'"$OS_PROJECT_DOMAIN_NAME"'" },
"name": "'"$OS_PROJECT_NAME"'" } } }}' \
| python -m json.tool