Wpis z mikrobloga

Hej! Próbuje od wczoraj ściągnąć userów z azure active directory przez graph api.

Założyłem sobie domenę/dzierżawę "testowafirma" i dodałem tam trzech użytkowników. Zarejestrowałem jedna aplikacje konsolową i tam wykonuje zapytanie graphServiceClient.Users.Request().GetAsync()

Problem mam taki że zwraca mi jedynie jednego usera - mnie samego.

Co może być źle w tym wypadku? Jak pobrać wszystkich userów poprawnie?

#azure #csharp #programowanie
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 0
@Koliat restem? Nie rozumiem do końca co masz na myśli - przecież to ściągam przez graphClienta czy masz na myśli przeklejanie stringa z linkiem i posłanie geta?

Mam swoją aplikacje i potrzebuje ściągnąć (z ad) kilku użytkowników przez nią i zmienić im pewne dane - nr telefonu itd.

W skrócie zmiana nr telefonu w mojej apce ma zmienić też nr telefonu użytkownikowi w ad
  • Odpowiedz
  • 0
@Koliat ale czym się różni ręczne wyklepanie httpmessage od użycia klienta gotowego skoro on to i tak robi w środku, skoro jest ten sam baseUri ;_;? Dlatego nie skumalem o co tobie chodziło :p

Graph explorerem też sobie testuje i wynik cały czas ten sam tj. Tylko jeden użytkownik = ja.

Zapytanie które wykonuje zwraca IGraphServiceUsersCollectionPage i tam w środku znajduje znajduje się kolekcja z tylko jednym użytkownikiem.
  • Odpowiedz
@MarceloFerro: Graph api podgląda tylko z katalogu w którym jesteś zalogowany. Azure AD to kontekst security, i musisz mieć principala z tego tenanta - oprócz kilku specyficznych przypadków generalnie ciężko jest podejrzeć dane z innego tenanta. Twój user który jest zwracany - ma UPN. UPN musi być unikatowy globalnie - nazwa domeny wskazuje na twoją testową subskrypcję czy na standardową? Użytkowników zrobiłeś w Azure AD, tak?
  • Odpowiedz
  • 0
@Koliat mam appID w sekretach i msalClienta który daje daje mi kod który muszę wpisać na stronie login.microsoftonline.con/common/login

Tam się loguje danym użytkownikiem i przypuszczam, że logowalem się do tej pory złym... Dlatego teraz próbuje się zalogować tym pierwszym jaki tam był domyślnie, ale coś mi hasło nie wchodzi
  • Odpowiedz
@MarceloFerro: Ten kod to na /common/login Ci daje? A zamień /common/ na /{TenantID}/ docelowy - common to jest taki ogólny route który Ci dopasuje tenanta do konta, ale jak masz dostęp do kilku kont, to może trafić do niewłaściwego tenanta
  • Odpowiedz
  • 0
@Koliat nie wiem czemu nie mogę zalogować się tym głównym kontem na danej domenie, ale stworzyłem konto dałem admina mu, dałem uprawnienia dla graphapi i.... UDALO SIE

Jako że to tylko moje środowisko testowe to taki workaround starczy, zobaczę potem co jest nie tak z tym głównym kontem dla danej domeny.

W skrócie starczyło faktycznie zalogować się w konkretnej domenie kontem konkretnej domeny.

Dziękuję za pomoc! Od wczoraj sprawdzałem co jest
  • Odpowiedz