title: How to properly logout from Teams BotFramework OauthPrompt?
body: <p>I have a c# Teams bot that uses multiple Generic Oauth2 providers.
  As an example I have used this sample <a href="https://github.com/microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/46.teams-auth" rel="nofollow noreferrer">https://github.com/microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/46.teams-auth</a></p>
  <p>Also I have added Generic OAuth2 to Bot Registration in Azure. Everything works fine with single Oauth provider.</p>
  <p>User after logout process must be able to authenticate to another oauth2 provider.
  But I'm faced with problem that OauthPrompt caches previous credentials, and I don't know how to clear this cache and properly sign out user</p>
  <p>I've already tried different approaches to sign out user:</p>
  <ul>
  <li>Using UserTokenClient</li>
  </ul>
  <pre><code>var userTokenClient = innerDc.Context.TurnState.Get&lt;UserTokenClient&gt;();
  await userTokenClient.SignOutUserAsync(innerDc.Context.Activity.From.Id, connectionName,
                              innerDc.Context.Activity.ChannelId, cancellationToken).ConfigureAwait(false)
  
  </code></pre>
  <ul>
  <li>Using OauthPrompt dialog</li>
  </ul>
  <pre><code>var oauth = (OAuthPrompt)Dialogs.Find(nameof(OAuthPrompt));
  if (oauth != null)
  {
      await oauth.SignOutUserAsync(innerDc.Context, cancellationToken: cancellationToken);
  }
  </code></pre>
  <p>--Using BotFrameworkAdapter</p>
  <pre><code>await botAdapter.SignOutUserAsync(innerDc.Context, connectionName, cancellationToken: cancellationToken);
  
  </code></pre>
  <p>Please help</p>