OAuthOptions.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using System;
  2. using Abp.Dependency;
  3. using Microsoft.Owin;
  4. using Microsoft.Owin.Security.OAuth;
  5. using WeEngine.Api.Providers;
  6. namespace WeEngine.Api
  7. {
  8. public class OAuthOptions
  9. {
  10. /// <summary>
  11. /// Gets or sets the server options.
  12. /// </summary>
  13. /// <value>The server options.</value>
  14. private static OAuthAuthorizationServerOptions _serverOptions;
  15. /// <summary>
  16. /// Creates the server options.
  17. /// </summary>
  18. /// <returns>OAuthAuthorizationServerOptions.</returns>
  19. public static OAuthAuthorizationServerOptions CreateServerOptions()
  20. {
  21. if (_serverOptions == null)
  22. {
  23. var provider = IocManager.Instance.Resolve<IwbAuthorizationServerProvider>();
  24. var refreshTokenProvider = IocManager.Instance.Resolve<IwbRefreshTokenProvider>();
  25. _serverOptions = new OAuthAuthorizationServerOptions
  26. {
  27. TokenEndpointPath = new PathString(WeEngineConst.OAuthTokenUrl),
  28. Provider = provider,
  29. RefreshTokenProvider = refreshTokenProvider,
  30. AccessTokenExpireTimeSpan = TimeSpan.FromHours(1),
  31. AllowInsecureHttp = true
  32. };
  33. }
  34. return _serverOptions;
  35. }
  36. }
  37. }