Thứ Năm, 29 tháng 6, 2017

Phần 7: Quản lý user client trong PrivacyIDEA (sqlrealm/dbrealm/ldap/Activedirectory)

Phần 7: Quản lý user client trong PrivacyIDEA (sqlrealm/dbrealm/ldap/Activedirectory)
Mô tả: Privacy hỗ trợ load user từ:
  • file : /etc/passwd
  • fiile: sqlite3
  • database: mysql, maria, wordpress, otrs, dupal .....
  • LDAP
  • Active Directory
  • Scrim

Trong phần viết này. Tôi sẽ hướng dẫn các bạn sử dụng dbfile, dbmysql, ldap, active directory AD.
Hiện tại, bản 2.19 khi cài từ ppa ubuntu, sẽ có python-flask-sqlalchemy from v1.0.3 hiện đang bị lỗi
Session' object has no attribute 'modelchanges. Các bạn cần cập nhập lên bản python-flask-sqlalchemy 2.0-1xenial1 hoặc cao hơn https://community.privacyidea.org/t/can-not-add-user-in-sql-resolver/410/10
Cách cập nhập:
wget https://launchpad.net/~privacyidea/+archive/ubuntu/privacyidea-dev/+files/python-flask-sqlalchemy_2.0-1xenial1_all.deb
dpkg -i python-flask-sqlalchemy_2.0-1xenial1_all.deb
/etc/init.d/apache2 restart

7.1 Sử dụng db SQLite file để lưu user

Ta tạo scripts như sau:
vim /opt/create_userfile.sh
#!/bin/bash
DATABASE=/etc/privacyidea/users.sqlite
echo "create table users (id INTEGER PRIMARY KEY ,\
    username TEXT UNIQUE,\
    surname TEXT, \
    givenname TEXT, \
    email TEXT, \
    password TEXT, \
    description TEXT, \
    mobile TEXT, \
    phone TEXT);" | sqlite3 $DATABASE

cat <<END > /etc/privacyidea/usersdb.install
{'Server': '/',
 'Driver': 'sqlite',
 'Database': '/etc/privacyidea/users.sqlite',
 'Table': 'users',
 'Limit': '500',
 'Editable': '1',
 'Map': '{"userid": "id", "username": "username", "email":"email", "password": "password", "phone":"phone", "mobile":"mobile", "surname":"name", "givenname":"givenname", "description": "description"}'
}
END
chown privacyidea $DATABASE
chạy scripts để tạo ra db file sử dụng sqlite3
 bash -x /opt/create_userfile.sh
Tạo user và realm bằng câu lệnh. Sẽ có cảnh bảo WARNING, ta có thể bỏ qua.
pi-manage resolver create localusers sqlresolver /etc/privacyidea/usersdb.install
pi-manage realm create localsql localusers
Add user:

Kiểm tra:

7.2 Sử dụng db MySQL để lưu user

Chức năng giống y hệt phần 7.1, nhưng lưu user trong mysql
pi-manage resolver create_internal myfirstresolver
pi-manage realm create myrealm myfirstresolver
Như vậy ta có thể create/edit/delete user dễ dàng. PrivacyIDEA sẽ tự động insert vào DB "pi.users_myfirstresolver " trường thong tin của user
Add user giống y hệt phần 7.1
Kết quả:

7.3 Load user từ LDAP

Ở đây tôi dựng 1 server LDAP và thử cho PrivacyIDEA load account từ LDAP đó.
Bind DN là Account admin của LDAP. Base DN là tree

5 User đã được load.

7.4 Load user từ AD

User : Base DN : CN=Users,DC=tuanda,DC=com
còn Machine: Base DN : CN=Computers,DC=tuanda,DC=com
(Việc set Base DN tùy thuộc vào Tree AD của các bạn)

Phần 8: HA cho privacyIDEA
Mời bạn theo dõi tiếp bài sau của tôi.
FRAMGIA : https://viblo.asia skype: tuanduong122
Do kiến thức của người viết có hạn. Nếu bài viết thấy có lỗi hoặc sai sót. Mong các bạn comment/contact giúp bài viết hoàn thiện hơn. Xin cảm ơn

Không có nhận xét nào:

Đăng nhận xét

Ứng cứu khi chown -R user1:user1 /etc

1. Bài toán Gõ nhầm: chown -R user1:user1 /etc 2. Giải: Cách 1: Tìm bản backup /etc cũ (tỉ lệ phục hồi gần như ~100%) Cách 2: Tìm tạm 1 thư ...