slawascichy / hgdb-grafana-datasource

Grafana Data Source Plugin
Other
1 stars 0 forks source link

Budowanie obiektu kontekst z wykorzystaniem danych zalogowanego użytkownika #1

Closed slawascichy closed 2 years ago

slawascichy commented 2 years ago

Każde żądanie wysyłane do MRC wymaga przesłania kontekstu. Są w nim zawarte dane związane z jakością zapytania, jaki i również dane użytkownika realizującego zapytanie (opis kontekstu https://hgdb.org/confluence/display/MDH3/Context+i+CaseHeader#ContextiCaseHeader-Context). Trzeba tak zrobić by w kontekście przesyłać dane dotyczące zalogowanego użytkownika oraz samego prduktu Grafany (ustawić następujące wartości dla pól kontekstu):

slawascichy commented 2 years ago

Warto skonfigurować LDAP w Grafanie (https://grafana.com/docs/grafana/latest/auth/ldap/) - pobrane dla uzytkownika grupy, można by było przypisać do pola "userRoles" w kontekście.

remigium commented 2 years ago

Jak na razie nie znalazłem żadnego miejsca, skąd można pobrać wersję Grafany - przejrzałem trochę datasource-ów - ogólnie albo są z własnymi backendami, albo skupiają się na prezentacji danych - szczególy takie jak wersja Grafany raczej nikogo nie interesują. Jest meta.dependencies - ale tam jest tylko info o minimalnej wersji Grafany, pewnie pobierane z plugin.json

remigium commented 2 years ago

Dodalem statyczne wersje do Constants.ts (aktualnie pisze zupelnie niezaleznie od tego co w github, bo sie boje, ze cos popsuje)

slawascichy commented 2 years ago

@remigium napisał:

Jak na razie nie znalazłem żadnego miejsca, skąd można pobrać wersję Grafany - przejrzałem trochę datasource-ów - ogólnie albo są z własnymi backendami, albo skupiają się na prezentacji danych - szczególy takie jak wersja Grafany raczej nikogo nie interesują. Jest meta.dependencies - ale tam jest tylko info o minimalnej wersji Grafany, pewnie pobierane z plugin.json

Ta wersja nie jest tak istotna. Ogólnie mozna by było również wstawić wersję klienta.

slawascichy commented 2 years ago

@remigium napisał:

Jakie znaczenie mają pola user i password w ConfigEditor? Czy w ogóle są potrzebne przy OAuth? Mam wrażenie, że potrzebne są jedynie client id i client secret - btw. czy client Secret nie powinien także trafić do SecureJsonData? Po co są userRoles tam? Jakieś ograniczenia w dostępie do danych?

Po stronie Mercury zaimplementowałem OAuth typu Password Grant: https://www.oauth.com/oauth2-servers/access-tokens/password-grant/

slawascichy commented 2 years ago

@remigium napisał:

Czemu eager4omdBuilder to String (skoro ma wartości boolean)?

Taka zaszłość z poprzednich implementacji.

slawascichy commented 2 years ago

I jeszcze jedno wyjasnienie: @remigium napisał:

Po co są userRoles tam? Jakieś ograniczenia w dostępie do danych?

Tak, o te dane jest oparty mechanizm uprawnień dostępu do danych, zobacz: https://hgdb.org/confluence/pages/viewpage.action?pageId=1605721