title: .NET Graph SDK token caching
body: <p>There is a similar question <a href="https://stackoverflow.com/questions/69329470/why-is-my-graphserviceclient-reauthenticating-at-every-api-call">here</a>, but I'm using a client secret auth flow and the solution doesn't look right to me.</p>
  <p>How does the Graph SDK for .NET cache tokens? Looking a Application Insights, it looks like for every request I do, the graph SDK performs a GET Token request.</p>
  <p>This is the initialization of my GraphClient (also it's registered as Scope-Based on the DI):</p>
  <pre class="lang-cs prettyprint-override"><code>var clientSecretCredential = new ClientSecretCredential(tenantId, clientId, clientSecret);
  graphClient = new GraphServiceClient(clientSecretCredential);
  </code></pre>
  <p><a href="https://i.stack.imgur.com/nl8z4.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/nl8z4.png" alt="Screenshot out of Application Insights" /></a></p>