Import z Excela danych aby zrobić z tego uprawnienia ACL w Linuxe


(DienoX) #1

Witam,
Potrzebuję w jakiś sposób pobrać z arkusza Excel dane:
Imie Nazwisko a potem usunąć polskie znaki i zapisać je do formy Imie.nazwisko
-Potrzebuję również aby zostało pobrana lokalizacja plików z przykładowych kolumn: Prawnik Zestawienia i przetworzyło to jako Prawnik/Zestawienia
-Potrzebuje aby pobrać literke E albo O i przetworzyło to jako if z zmiennymi czyli w C++ wyglądało to by jakoś tak
if(literka==E){

cout << “setfacl -m “” <<imieNazwisko <<”:rwx" " << lokalizacja;

cout << “setfacl -dm “” <<imieNazwisko <<”:rwx" " << lokalizacja;}

if(literka==O){

cout << “setfacl -m “” <<imieNazwisko <<”:r-x" " << lokalizacja;

cout << “setfacl -dm “” <<imieNazwisko <<”:r-x" " << lokalizacja;}

Potrzebuję tego aby zautomatyzować dodawanie ponad 700 osób z rożnymi uprawnieniami do 300 katalogów które dostałem w formie arkusza Excel. Robota ręcznie tego będzie trwała z jakieś kilka dni minimalnie wiec proszę o pomoc.


(krypton) #2

Witam,
prześlij jakieś przykłady z Excela


(roobal) #3

Te 700 osób pracuje w domenie AD? Tylko nie pisz, że chcesz operować uprawnieniami per uzytkownik, zamiast na grupę.

Jeśli pracują w domenie, to problem masz w połowie rozwiązany, bo masz już listę użytkowników na serwerze. Druga połowa to ustawienie uprawnień.


(DienoX) #4

@roobal
Domena kiedyś była na WS2003 ale pracownicy olewali temat logowania do AD lub przynosili własne urządzenia.

Aktualnie jest nowy serwer HP z linuxem który posiada Sambe do plików i Sambe jako AD (kontener).
Więc domena w teorii jest i pracownicy powinni pracować w domenie ale tego nie robią. Nie mam możliwości zmuszenia ich do korzystania z domeny AD więc wybieram mniejsze zło czyli skrót \\10.10.10.1 lub Nextcloud na telefony/dostęp z poza placówki który jest podpięty pod AD i sambe. Akurat NEXTCLOUDA polubili tylko trochę wolno chodzi pod sambą.

Właśnie też bym chciał aby uprawnienia były pod grupy, nawet próbowałem to przeforsować ale góra jest uparta i bardzo nie techniczna więc nie ma innego wyjścia niż uprawnienie pod użytkownika.

Właśnie problem jest taki że osoba projektująca uprawnienia wymyśliła sobie że ta sama grupa ma różne uprawnienia (na kawałku screena tego nie widać).

@krypton


*Tabelka ma pozmieniane dane osobowe i trochę powycinane dane.
Aktualnie forma loginu to KOWALSKI.MICHAL czyli imie.nazwisko bez polskich znaków.
Potrzebuję pobrać z tego arkusza pola:

  • Nazwisko, Imię,
  • Ścieżkę
  • Typ uprawnienia (odczyt, zapis, brak niczego)
    Potem potrzebuję aby zostało to użyte w SSH jako ““setfacl -m “” <<imieNazwisko <<”Uprawnienie” " << lokalizacja;"

(roobal) #5

Źle do tego podchodzisz. Ty decydujesz kto gdzie ma dostęp, a przymusic ludzi jest bardzo łatwo. Nie chcesz logować się do domeny, nie dostaniesz dostępu do plików. Ludzie szybko zmienia zdanie i nawyki.

Zrobisz jak uważasz, ale za jakiś czas problem pewnie i tak wróci, gdy pojawi się np. kolejny serwer z sambą. Tam też będziesz musiał założyć 700 kont.


(DienoX) #6

Ok załóżmy że zmuszę ludzi do korzystania z AD
Ale nadal mam problem z uprawnieniami nawet gdyby były to grupy a nie użytkownicy. Jak zautomatyzować wprowadzenia tych uprawnień według pliku Excel?

Konta w sambie już mam bo je zaimportowałem. Problem jest z uprawnieniami.


(roobal) #7

Dlatego pisałem, że to rozwiązanie połowy problemu. Jak masz zapisane te uprawnienia w excelu? W formacie uniksowym, ntfs czy po prostu opis kto, gdzie i jak?


(DienoX) #8

Powyżej wysłałem link do postu z zdjęciem gdzie jest kawałek tabelki w Excelu. Po prostu opis literkami kto co może czyli O i E


(roobal) #9

Co oznacza O, co oznacza E?

PS to są osoby publiczne, że udostępniasz ich dane osobowe?


(krystian3w) #10

Napisał że zmienił dane osobowe, więc to nie są prawdziwi Ryby, Koci, Psy, Chomiki (nie wiem jak to odmienić w liczbie mnogiej), Kowalscy.

Nazwy firmy / kropo brak więc ciężko ustalić po pozycji osoby kim jest naprawdę.


(roobal) #11

Sprawdzam tylko czujność :slight_smile:


(DienoX) #12

O - Odczyt
E - Edycja


(DienoX) #13

Ma ktoś pomysł jak to zrealizować?


(roobal) #14

Tak myslalem, ale chciałem się upewnić. Czyli E to rwx, a O to rx?


(DienoX) #15

Tak, E to rwx a O to r-x.
Wspomniałem o tym w pierwszym poście.


(roobal) #16

Wiesz jak się przegląda kilka watków dziennie, ciężko spamiętać wszystko :wink: Zastanawiam się czy nie dałoby rady wyeksportować tego jakoś bashem. Mimo wszystko użytkowników też trzeba by było wyeksportować. W każdym razie, użytkowników bierzesz z AD czy dodajesz jako smbusers?


(gunter) #17

Pierwsze co zrób to zapisz ten plik w jakimś zjadliwym formacje np. cvs. Teraz otwórz tego cvs w calcu i zobacz gdzie masz dopisać złożone ścieżki (tu dopisany transport), to uprości cały proces. W edytorze tekstu, powinno wyglądać to tak:

,,,,,,,,raporty,baza_wyk,transport,transport,transport,zaopatrzenie
,,,,,,,,,,,,,
,,,,,,,,,,rezerwacje,raporty,dokumenty,
,,,,,,,,,,,,,
,,,,,,,,,,,,,
,,,,,,,,,,,,,
kowalski,jan,prezes,e,e,e,o,o,o,e,e,o,,e
pies,andrzej,biuro,e,e,e,o,o,e,o,o,o,o,e
chomik,anna,biuro,e,e,o,o,o,e,,e,o,o,e
kot,paweł,sekret,,,,,,o,o,o,o,,e

I teraz możesz wyciągać dane sed-em czy awk, plik jest prosty, piszesz skrypt i masz.