OTRS adalah Sistem Permintaan Tiket Open-source yang ditulis dalam Perl.
Ada dua opsi:
Saya akan mencantumkan sedikit
fungsional yang didukung sistem ini:
- Modul ITSM (Manajemen Tingkat Layanan, Manajemen Perubahan, Manajemen Konfigurasi, CMDB)
- antarmuka web responsif
- API
- SLA dan layanan
- multi-tenant
- eskalasi
- Otentikasi: DB, LDAP, HTTPBasicAuth, Radius
- mendukung MySQL, MariaDB, PostgreSQL, Oracle
Dan jika Anda mencari kekurangan di dalamnya, itu merupakan antarmuka dan kompleksitas yang tidak biasa dalam pengaturannya. Di bawah potongan - tentang dasar-dasar otorisasi (grup, RBAC, dukungan untuk beberapa perusahaan klien), otentikasi dan sinkronisasi metadata (nama, telepon, dll.) Menggunakan berbagai direktori LDAP
Klien, Antrean, Agen, dan Grup
Setelah menginstal OTRS, Anda akan langsung memiliki akses ke:
- pelanggan - dapat membuat aplikasi dengan mengirim surat atau menggunakan akses web
- antrian - setiap aplikasi termasuk dalam salah satu antrian aplikasi
- Agen - profesional TI yang mengerjakan eksekusi aplikasi dari antrian yang tersedia bagi mereka
- grup - entitas yang menghubungkan antrian, klien dan agen, serta menetapkan hak-hak agen - misalnya, hanya baca, ubah prioritas aplikasi, dll.

Grup standar
Setelah menginstal sistem, Anda akan melihat tiga grup yang dibuat:
- admin - anggota grup dapat mengelola (mengkonfigurasi) OTRS
- stats - kemampuan untuk menyesuaikan dan menjalankan laporan
- pengguna - grup standar untuk klien, antrian dan agen
Hak Terkait Grup
Hak Dasar
Hak-hak utama yang dapat dikonfigurasi dalam grup yang membatasi tindakan agen:
- baca - saja - baca --hanya hak dalam aplikasi di grup / antrian ini
- move - hak untuk memindahkan permintaan ke grup / antrian ini
- kreasi - hak untuk membuat aplikasi dalam grup / antrian ini
- note - hak untuk menambahkan catatan ke aplikasi dalam grup / antrian ini
- pemilik - hak untuk mengubah pemilik aplikasi dalam grup / antrian ini
- priority - hak untuk mengubah prioritas aplikasi dalam grup / antrian ini
- baca / tulis - izin baca dan tulis penuh untuk permintaan dalam grup / antrian ini
Hak tambahan
Ada juga hak tambahan, tampilan yang dapat diaktifkan di pengaturan (Sistem :: Izin):
- laporan - menyediakan akses ke halaman laporan
- redirect - hak untuk mengalihkan / memantulkan pesan email (redirect / bouncing tautan di ticketZoom)
- buat - hak untuk menyusun respons terhadap aplikasi
- pelanggan - hak untuk mengubah pelanggan untuk aplikasi ini
- maju - hak untuk meneruskan pesan (menggunakan tombol Maju)
- tertunda - hak untuk mentransfer aplikasi yang tertunda
- phone - hak untuk menambahkan konten panggilan klien ke aplikasi dalam bentuk pesan / catatan
- Bertanggung jawab - Hak untuk mengubah orang yang bertanggung jawab atas aplikasi
Pertimbangkan ini secara lebih rinci:
- setiap klien dapat dimasukkan dalam satu atau beberapa grup, awalnya semua klien adalah anggota grup pengguna
- setiap antrian pesanan dikaitkan dengan salah satu grup
- melalui antarmuka web, klien dapat membuat permintaan di antrian mana kelompok di mana ia termasuk memiliki akses
- ketika klien mengirim permintaan melalui email, dimungkinkan, berdasarkan analisis atribut surat (misalnya, alamat pengirim atau judul surat), untuk mengubah karakteristik aplikasi, termasuk antrian di mana aplikasi akan jatuh.
- jika klien menelepon melalui telepon, agen dapat membuat aplikasi secara manual dengan memilih salah satu antrian yang tersedia untuk agen
- diinginkan bahwa aplikasi klien selalu dalam antrian yang tersedia untuk klien, jika tidak, ia tidak akan dapat mengaksesnya melalui antarmuka web
- agen dapat melakukan tindakan dalam aplikasi sesuai dengan hak antrian di mana aplikasi berada

Otentikasi Basis Data
Cara standar untuk mengotentikasi dan mengotorisasi agen dan klien adalah melalui database.
Misalnya, pengaturan autentikasi agen menggunakan database terlihat seperti ini:
$Self->{'AuthModule'} = 'Kernel::System::Auth::DB';
Pelanggan:
$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::DB'; $Self->{'Customer::AuthModule::DB::Table'} = 'customer_user'; $Self->{'Customer::AuthModule::DB::CustomerKey'} = 'login'; $Self->{'Customer::AuthModule::DB::CustomerPassword'} = 'pw';
Kami juga akan meninggalkan metode otentikasi ini dan menambahkan otentikasi melalui LDAP.
Peran dan Perusahaan
Kami juga akan memperluas kemampuan otorisasi dengan menambahkan peran dan perusahaan:
- peran - memungkinkan kontrol akses yang lebih fleksibel dengan menghubungkan kelompok dan agen
- perusahaan - memungkinkan mengisolasi aplikasi dari berbagai klien (apakah itu departemen atau perusahaan yang berbeda)

Pernyataan masalah
Anda adalah administrator sistem OTRS di my-it-company.com, sebuah perusahaan yang menyediakan layanan kepada perusahaan lain (atau unit dalam holding Anda).
Anda benar-benar tidak ingin membuat agen dan akun pelanggan baru secara manual, serta mengisi informasi tambahan, seperti alamat email, nomor telepon, posisi, alamat, dan nomor kabinet - setelah semua, ini sudah ada di direktori LDAP.
Dan perusahaan Anda juga akan menerima keuntungan yang jelas - satu kata sandi karyawan di semua sistem, memblokir akun di LDAP akan memblokir akses ke semua layanan lainnya.
my-it-company.com berjalan di Linux dan menggunakan Red Hat FreeIPA sebagai server direktori, dan departemen yang Anda layani menggunakan berbagai hutan Direktori Aktif Microsoft yang dengannya Anda tidak memiliki federasi, tetapi Anda dapat terhubung ke pengontrol domain.
Anda perlu memisahkan aliran aplikasi dari klien yang berbeda, serta mengimplementasikan berbagai tingkat akses agen ke antrian - manajer harus dapat mengubah prioritas tugas dalam sistem.
Karyawan perusahaan Anda juga dapat menetapkan tugas dalam sistem untuk kebutuhan internal
my-it-company.com , kadang-kadang sebagai agen dan pelanggan pada saat yang sama (dan kadang-kadang tidak).

Persiapan
Akun untuk melihat LDAP
Jika penelusuran anonim dari pohon direktori dilarang, kami akan membuat akun di domain
my-it-company.com ,
pear.com dan
macrohard.com yang haknya cukup bagi kami untuk membuat kueri LDAP (sebut saja, misalnya, ldap-bot)
Grup FreeIPA untuk menyinkronkan dengan peran OTRS
Kami akan membuat tiga grup pengguna di FreeIPA yang akan disinkronkan dengan peran OTRS kami, misalnya:
- otrs-sa - anggota grup ini akan mendapatkan akses ke administrasi OTRS, tetapi kami tidak akan memberikan akses ke antrian, sehingga kami tidak ingin selalu bekerja di bawah administrator),
- otrs-admin - manajer kami dengan hak untuk mengubah prioritas aplikasi) dan
- otrs-helpdesk - akun spesialis kami
Atribut Perusahaan
Pilih atribut yang dengannya kami akan menentukan afiliasinya dengan perusahaan. Biarkan itu menjadi atribut "Organisasi". Misalnya, semuanya berubah secara organisasi dan teknis, dan semua pengguna di semua domain selalu memiliki nilai di bidang "Organisasi":
- my-it-company - untuk karyawan my-it-company.com
- pear-company - untuk karyawan pear.com
- macrohard-company - untuk karyawan macrohard.com
Tentukan atribut pengguna yang digunakan oleh FreeIPA
Kami mempelajari skema FreeIPA, mencari tahu nama-nama atribut yang akan kami butuhkan untuk sinkronisasi (nama, login, telepon, dll.).
kinit laptevs ipa user-show --all --raw laptevs
Kami mendapatkan kesimpulan yang serupa:dn: uid = laptevs, cn = pengguna, cn = akun, dc = perusahaan saya, dc = com
uid: laptevs
diberikan nama: Stanislav
sn: Laptev
cn: Laptev Stanislav
inisial: SL
direktori home: / home / laptevs
gecos: Laptev Stanislav
loginshell: / bin / sh
krbcanonicalname: laptevs@MY-IT-COMPANY.COM
krbprincipalname: laptevs@MY-IT-COMPANY.COM
mail: laptevs@MY-IT-COMPANY.COM
uidnumber: 1344600003
gidnumber: 1344600003
l: Moskow
nomor telepon: +7 (863) 999-99-99
seluler: +7 (999) 999-99-99
ou: perusahaanku
judul: SysAdm
sshpubkeyfp: SHA256: Yi8mKF + j28 / r2cpxLgIbvZ / Oymt57rhliHKhqBuJxqE laptevs-dempul (ssh-rsa)
nsaccountlock: FALSE
kata sandi: BENAR
has_keytab: TRUE
displayName: Laptev Stanislav
ipaSshPubKey: c3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBQkpRQUFBZ0VBNjQ1RTJjSjIvWXVVYm9GNzdZY3hLNzBndm1jWlgrZjBZTVpsaXRQVXNCWFZ0cENtTEtwcjRwK2JEeUdhRzNLTWx1T08ydW9wS0pXRk9mWE83Zzl3OTYzdklQblN3MzVHSmI3VGhhbk1pTXpNUE82T1lQZEY0em14b2k4N 0RGYkdXV2V6aGwzcitsbmFGYTB0dEQ5TkFWRU1Fb3BMdmkzcHZ1UXpyVmNjVlMxamFxY1dNT2ZGUC9TRlVoY1dGeVpZd3Z6eW0wWnZObUZtdjVjVHJGNzJMSXZOdHlsNkZGK2ZaU3ZpS01mcXZ6NStkT2xZZGd5bVVSOG5iaVpkTXZKaTIvbzhjTy84ekpoMFhtSnVRSjJXNEVvYVEvajVTTm8ySjZ6NklXNk I3cFB4Y002a0tJcUp5N08zTkNOcGRrVmVQbEFHbThsOFZDREpVa1RLSjRGOS9mSTZFUkhxVUZwK3p1VENTR1R3ZWlKdXppenFSZWJTTkNiMXh3RldmUitvYzFLdWNZSU5QbTYxRi93YXhOcC9aSG9OK2w1dCtkYWI4cElZSGZzTnNUNWx2RWt4Ukh0bnNyeUxsbWk1ZVdzd3RBbDB3TUpWd1cvUWNJcjhOaVN Ybm96Q3dHWTZCaTQ2L0FGTGVidmFLV0tKRmpKZFgxOFlRVDRpVzZGaE83aW40TGlUamlNaENXbStvbjNQbERYeXZpdkJ1WkFXUldXNEdjbXREVW8rSVhZT2t3MWh3UldqdkJtcExHMVZpMFhPckltbmQybTVZdWk1bHo0b1ZlekFRN1NjYVlrdDBoVEdQU1Z2UHpmVlowYWJCQlpiRmViK1hUV2tpSnBPMHBO T3dodGNadHYrN3RMMnc1OFN3QnhVTUk4NzUzdG5Sc1h1blBXZERqcUsxSDA9IGxhcHRldnMtcHV0dHk =
ipaUniqueID: 68d46dac-1d3c-11e9-82fd-0242ac110002
krbExtraData: AAL4VkVcbGFwdGV2c0BPTUlLUk9OLlBSTwA =
krbLastFailedAuth: 20190123084142Z
krbLastPwdChange: 20190121052200Z
krbLoginFailedCount: 0
krbPasswordExpiration: 20190421052200Z
memberof: cn = otrs-admin, cn = grup, cn = akun, dc = perusahaan-saya-itu, dc = com
memberof: cn = ipauser, cn = grup, cn = akun, dc = perusahaan saya, dc = com
mepManagedEntry: cn = laptevs, cn = grup, cn = akun, dc = my-it-company, dc = com
objectClass: atas
objectClass: orang
objectClass: pengurus organisasi
objectClass: inetorgperson
objectClass: inetuser
objectClass: posixaccount
objectClass: krbprincipalaux
objectClass: krbticketpolicyaux
objectClass: ipaobject
objectClass: ipasshuser
objectClass: ipaSshGroupOfPubKeys
objectClass: mepOriginEntry
dn : uid = laptevs, cn = pengguna, cn = akun, dc = perusahaan saya, dc = com
uid : laptevs
diberikan nama : Stanislav
sn : Laptev
cn : Laptev Stanislav
mail : laptevs@MY-IT-COMPANY.COM
l : Moskow
nomor
telepon : +7 (863) 999-99-99
seluler : +7 (999) 999-99-99
ou : perusahaanku
judul : SysAdm
Konfigurasikan OTRS
File konfigurasi
- / opt / otrs / - sebagai aturan, file sistem OTRS ada di sini
- Kernel / Config.pm - file konfigurasi yang sedang Anda edit
- Kernel / Config / Defaults.pm - file dengan pengaturan standar, Anda tidak dapat mengeditnya, tetapi di dalamnya Anda dapat melihat semua parameter dan komentar yang ada di dalamnya
Pengaturan agen
Otentikasi agen
Agen Sinkronisasi (Grup LDAP dengan Peran OTRS)
Jika Anda memutuskan bahwa perannya tidak sesuai dengan Anda, dan Anda hanya menginginkan grup, saya akan memberikan dua contoh sinkronisasi grup LDAP dengan grup OTRS - disederhanakan dan dengan hak pengaturan untuk setiap grup.
Sinkronisasi agen alternatif (grup LDAP dengan grup OTRS, dengan hak) Sinkronisasi agen alternatif yang disederhanakan (kelompok LDAP dengan peran OTRS dengan hak istimewa rw) Pengaturan pelanggan
Otentikasi pelanggan
Sinkronisasi klien (memperoleh atribut klien dari LDAP, komunikasi dengan perusahaan OTRS)
Kesimpulan
Seperti yang Anda lihat, pengaturan otentikasi dan sinkronisasi akun di OTRS sangat sederhana, tetapi saya harap artikel ini akan membantu mereka yang baru mulai berkenalan dengan sistem ini.
Apa yang tersisa dari artikel ini?
- Sejalan dengan LDAP, Anda juga dapat menjalankan otorisasi SSO, yang akan membuat hidup lebih mudah bagi klien.
- Jika Anda memiliki spesialis Perl, Anda dapat menulis backend Anda sendiri untuk terhubung ke sistem informasi lainnya.
- Konfigurasi telah disederhanakan dengan sengaja, misalnya, tidak ada unit pemfilteran milik grup LDAP, tidak ada akhiran domain, BASE DN, bekerja dengan atribut tambahan, bekerja dengan LDAP di port lain dan banyak lagi
Tip dan klarifikasi disambut dalam komentar, informasi tentang kesalahan ketik - di PM.
Terima kasih atas perhatian anda Terima kasih khusus kepada penulis yang materinya tentang OTRS yang saya gunakan bertahun-tahun yang lalu ketika saya diperkenalkan dengan sistem ini:
Turilion ,
supersuperoleg ,
wmlex