<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: WPF OAuth Stay Logged In in ArcGIS Runtime SDK for WPF (Retired) Questions</title>
    <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/wpf-oauth-stay-logged-in/m-p/136386#M596</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Since you're working with 100.8, we actually have a convenient way for you to store credentials by implementing the abstract class &lt;A href="https://developers.arcgis.com/net/latest/wpf/api-reference/html/T_Esri_ArcGISRuntime_Security_CredentialPersistence.htm"&gt;CredentialPersistence&lt;/A&gt;. By assigning an instance of this class to &lt;A href="https://developers.arcgis.com/net/latest/wpf/api-reference/html/P_Esri_ArcGISRuntime_Security_AuthenticationManager_Persistence.htm"&gt;AuthenticationManager.Current.Persistence&lt;/A&gt;, you can receive callbacks from the AuthenticationManager regarding when credentials should be added, removed, and updated so that you can store them securely.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you assign a new CredentialPersistence instance when your program starts, the AuthenticationManager will request any credentials you stored with it previously. In this way, you can keep the user signed on between sessions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As for how you can implement secure credential storage yourself, I recommend starting by looking into the &lt;A href="https://docs.microsoft.com/en-us/dotnet/standard/security/how-to-use-data-protection"&gt;Data Protection API&lt;/A&gt;. Using this API you will be able to store encrypted copies of serialized credentials on the user's computer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the future we plan to offer default implementations for CredentialPersistence and WPF is under consideration for this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 10 Jul 2020 18:53:48 GMT</pubDate>
    <dc:creator>Anonymous User</dc:creator>
    <dc:date>2020-07-10T18:53:48Z</dc:date>
    <item>
      <title>WPF OAuth Stay Logged In</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/wpf-oauth-stay-logged-in/m-p/136385#M595</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I want to have the user stay logged in on application close. I'm using OAuth to log the user in and working with v100.8.0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The AllowSaveCredentials option shown in the &lt;A href="https://developers.arcgis.com/net/10-2/desktop/guide/use-oauth-2-0-authentication.htm"&gt;OAuth .NET Guide &lt;/A&gt;seems to be the key, but I think it may not be available on WPF. I can't see Esri.ArcGISRuntime.Toolkit.Security, even with the Toolkit package installed. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Jul 2020 06:27:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/wpf-oauth-stay-logged-in/m-p/136385#M595</guid>
      <dc:creator>CharlesRakaczky</dc:creator>
      <dc:date>2020-07-09T06:27:23Z</dc:date>
    </item>
    <item>
      <title>Re: WPF OAuth Stay Logged In</title>
      <link>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/wpf-oauth-stay-logged-in/m-p/136386#M596</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Since you're working with 100.8, we actually have a convenient way for you to store credentials by implementing the abstract class &lt;A href="https://developers.arcgis.com/net/latest/wpf/api-reference/html/T_Esri_ArcGISRuntime_Security_CredentialPersistence.htm"&gt;CredentialPersistence&lt;/A&gt;. By assigning an instance of this class to &lt;A href="https://developers.arcgis.com/net/latest/wpf/api-reference/html/P_Esri_ArcGISRuntime_Security_AuthenticationManager_Persistence.htm"&gt;AuthenticationManager.Current.Persistence&lt;/A&gt;, you can receive callbacks from the AuthenticationManager regarding when credentials should be added, removed, and updated so that you can store them securely.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you assign a new CredentialPersistence instance when your program starts, the AuthenticationManager will request any credentials you stored with it previously. In this way, you can keep the user signed on between sessions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As for how you can implement secure credential storage yourself, I recommend starting by looking into the &lt;A href="https://docs.microsoft.com/en-us/dotnet/standard/security/how-to-use-data-protection"&gt;Data Protection API&lt;/A&gt;. Using this API you will be able to store encrypted copies of serialized credentials on the user's computer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the future we plan to offer default implementations for CredentialPersistence and WPF is under consideration for this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Jul 2020 18:53:48 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-runtime-sdk-for-wpf-retired-questions/wpf-oauth-stay-logged-in/m-p/136386#M596</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2020-07-10T18:53:48Z</dc:date>
    </item>
  </channel>
</rss>

