Is there a client of swift to add users and change password?

Asked by Qi Weining

I install swift in four nodes. And I want to test the systems. Not only test by myself. I want to let others use this system for storage. So others must can apply account and passwords. At least, even if I add users in my seytem, they must can change the passwords. Is there such a client can apply accounts and passwords for users? Or is there another way to do these works?

Thanks.

Question information

Language:
English Edit question
Status:
Solved
For:
OpenStack Object Storage (swift) Edit question
Assignee:
No assignee Edit question
Solved by:
Kun Huang
Solved:
Last query:
Last reply:
Revision history for this message
Mehmet Hacısalihoğlu (esedmehmet) said :
#1

hi,

If you dont use keystone, you should use tempauth in proxy-server.conf.

It says the tempauth how to use this document http://swiftstack.com/blog/2012/01/04/swift-tempauth/

Revision history for this message
Qi Weining (qi-weining) said :
#2

I use swauth for Authentication. how can I add users? Is there a client like cyberduck?

Revision history for this message
Kun Huang (academicgareth) said :
#3

I think keystone is more professional than swauth or tempauth.

swauth/tempauth is designed to sample authorisation for swift. If you need to change account data, you have to change config file first. For example in tempauth:

user_acc_you = yourpass .admin

means, "you" is the user in account "acc", in another word "acc:you" is swift user, and "yourpass" is your password. ".admin" means admin is the role of "you" in "acc". So everything of authorisation data is in your config file. As a result, if you want to let end users to change their password in dashboard, at least you need change your config file for whole swift cluster and restart swift servers. Obviously that is not a good choice in production environment.

In another hand, if you're trying keystone, you maybe find that you don't need change swift config files and restart swift anymore. Just run something like "keystone add-user --user-name user2 --user-password pw2".

So my advice is trying keystone if you run your swift in a strict environment

Revision history for this message
Qi Weining (qi-weining) said :
#4

Thanks, Kun Huang.
Your advices light a bright lamp for me.
I still have some questions.
(1) Can proxy-server and keystone be installed in one DELL server? It is suggested to be installed in two servers. I have only 4 servers now.
(2) Can keystone be installed in swift SAIO for tests?

Thanks a lot.

Revision history for this message
Kun Huang (academicgareth) said :
#5

(1) & (2) are all ok

you could have your 4 nodes like that

[swift all servers + keystone],
[swift all servers + keystone],
[swift all servers + keystone],
[swift all servers + keystone]

proxy + keystone on each node provide possibility to load-balance. If you need test first, you could try:

[swift obj/container/account server],
[swift obj/container/account server],
[swift obj/container/account server],
[swift proxy server + keystone]

If you don't want to change your SAIO environment, just installing keystone and change your proxy config file then.

Revision history for this message
Qi Weining (qi-weining) said :
#6

Thanks, Kun Huang.

I have 4 servers. Just as your said, I installed swift "obj/container/account server" on 3 DELL servers and swift "proxy server + swauth" on one DELL server. I look this website for reference, “http://blog.csdn.net/cywosp/article/details/7428769
[swift obj/container/account server],
[swift obj/container/account server],
[swift obj/container/account server],
[swift proxy server + swauth]

I am a new one to swift. I can not understand your suggestion,"proxy + keystone on each node provide possibility to load-balance." In my environment, only one DELL server has outer net IP address. The other three have only LAN IP addresses. If 4 DELL servers all installed proxy server, How should I fill in the address when I access the objects from cyberduck in other computers?

And I have another computer which installed swift SAIO, using tempauth for test. So as you suggested, I can installi keystone and change your proxy config file for test. Is it right?

Thanks a lot.

Revision history for this message
Best Kun Huang (academicgareth) said :
#7

You could just install keystone instead of swauth on the node installed proxy server, and ignore my another suggestion. keystone could help you adding/change user password

Revision history for this message
Qi Weining (qi-weining) said :
#8

Thanks.
I will try.