Files
JiriUhlirandClaude Fable 5.1 d80193da8b Hlavicky X-MS365-* jako obycejne hodnoty, GET /users/{user_id}/calendar
- credentials: sifrovani AES-GCM/HKDF odstraneno, tri hlavicky se berou
  tak, jak jsou; bez hlavicek se pouziji hodnoty z prostredi
- zrusena promenna MS365_CREDENTIAL_ENCODING_SECRET a zavislost cryptography
- novy endpoint GET /users/{user_id}/calendar (objekt kalendare schranky,
  id a name) pro read-only overeni pristupu pres e-mail schranky
- C# ukazka posila hodnoty primo, CredentialEncoder smazan
- README: sekce o hlavickach vcetne PowerShell ukazky, zaznam zmen
- .gitignore: bin/ a obj/, zaverzovane obj/ soubory ukazky odstraneny z gitu

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-22 12:49:25 +02:00

1.2 KiB

Ukazky volani sluzby v C#

ListUsersTop10

Konzolova aplikace (.NET 8), ktera zavola GET /users?top=10 a vypise displayName, userPrincipalName, mail a id kazdeho uzivatele. Credentials posila v hlavickach X-MS365-Tenant-Id, X-MS365-Client-Id a X-MS365-Client-Secret jako obycejne hodnoty. Nema zadne externi zavislosti.

Spusteni

cd examples/csharp/ListUsersTop10
$env:MS365_SERVICE_BASE_URL = "https://services.csbot.cz/apps/microsoft-365-service"
$env:MS365_TENANT_ID = "<tenant id klienta>"
$env:MS365_CLIENT_ID = "<client id aplikace CSBOT>"
$env:MS365_CLIENT_SECRET = "<client secret VALUE, ne secret id>"
dotnet run

Co ocekavat

  • 200 a JSON ve tvaru Microsoft Graph: { "value": [ ... ], "@odata.nextLink": "..." }.
  • 400 kdyz hlavicky chybi nebo jsou neuplne.
  • 502 kdyz Microsoft Graph nebo prihlaseni k Entra ID selze, detail je v tele odpovedi.
  • 403 text/plain kdyz GET neprojde pres reverzni proxy (IP allowlist), tj. problem neni ve sluzbe, ale v sitovem pristupu klienta.

Hlavicky lze vynechat jen tehdy, kdyz ma sluzba credentials nastavene v environment promennych na serveru. Instance na services.csbot.cz je nema (GET /status vraci configured: false), takze tam jsou hlavicky povinne.