├── .editorconfig ├── .gitattributes ├── .github ├── CODEOWNERS ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE.md ├── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── feature_request.md │ └── new_provider.md ├── PULL_REQUEST_TEMPLATE.md ├── SECURITY.md ├── dependabot.yml └── workflows │ ├── build.yml │ ├── code-scan.yml │ └── update-dotnet-sdks.yml ├── .gitignore ├── .vscode ├── extensions.json ├── launch.json └── tasks.json ├── AspNet.Security.OAuth.Providers.ruleset ├── AspNet.Security.OAuth.Providers.sln ├── CODE_OF_CONDUCT.md ├── Directory.Build.props ├── Directory.Build.targets ├── Directory.Packages.props ├── LICENSE ├── NuGet.config ├── README.md ├── build.cmd ├── build.ps1 ├── build.sh ├── docs ├── README.md ├── amazon.md ├── amocrm.md ├── battlenet.md ├── bitbucket.md ├── digitalocean.md ├── discord.md ├── docusign.md ├── dropbox.md ├── ebay.md ├── eveonline.md ├── foursquare.md ├── gitcode.md ├── gitee.md ├── github.md ├── huawei.md ├── instagram.md ├── jumpcloud.md ├── keycloak.md ├── kook.md ├── kroger.md ├── lichess.md ├── line.md ├── linear.md ├── linkedin.md ├── miro.md ├── moodle.md ├── odnoklassniki.md ├── okta.md ├── patreon.md ├── pingone.md ├── qq.md ├── reddit.md ├── salesforce.md ├── sign-in-with-apple.md ├── smartsheet.md ├── snapchat.md ├── stackexchange.md ├── superoffice.md ├── trakt.md ├── trovo.md ├── twitch.md ├── twitter.md ├── vkontakte.md ├── webflow.md ├── weibo.md ├── workweixin.md ├── xero.md ├── xumm.md └── zendesk.md ├── eng ├── Signing.props ├── Version.Details.xml ├── Versions.props ├── common │ ├── BuildConfiguration │ │ └── build-configuration.json │ ├── CIBuild.cmd │ ├── PSScriptAnalyzerSettings.psd1 │ ├── README.md │ ├── SetupNugetSources.ps1 │ ├── SetupNugetSources.sh │ ├── build.cmd │ ├── build.ps1 │ ├── build.sh │ ├── cibuild.sh │ ├── cross │ │ ├── arm │ │ │ └── tizen │ │ │ │ └── tizen.patch │ │ ├── arm64 │ │ │ └── tizen │ │ │ │ └── tizen.patch │ │ ├── armel │ │ │ ├── armel.jessie.patch │ │ │ └── tizen │ │ │ │ └── tizen.patch │ │ ├── build-android-rootfs.sh │ │ ├── build-rootfs.sh │ │ ├── riscv64 │ │ │ └── tizen │ │ │ │ └── tizen.patch │ │ ├── tizen-build-rootfs.sh │ │ ├── tizen-fetch.sh │ │ ├── toolchain.cmake │ │ └── x86 │ │ │ └── tizen │ │ │ └── tizen.patch │ ├── darc-init.ps1 │ ├── darc-init.sh │ ├── dotnet-install.cmd │ ├── dotnet-install.ps1 │ ├── dotnet-install.sh │ ├── enable-cross-org-publishing.ps1 │ ├── generate-locproject.ps1 │ ├── generate-sbom-prep.ps1 │ ├── generate-sbom-prep.sh │ ├── helixpublish.proj │ ├── init-tools-native.cmd │ ├── init-tools-native.ps1 │ ├── init-tools-native.sh │ ├── internal-feed-operations.ps1 │ ├── internal-feed-operations.sh │ ├── internal │ │ ├── Directory.Build.props │ │ ├── NuGet.config │ │ └── Tools.csproj │ ├── loc │ │ └── P22DotNetHtmlLocalization.lss │ ├── msbuild.ps1 │ ├── msbuild.sh │ ├── native │ │ ├── CommonLibrary.psm1 │ │ ├── common-library.sh │ │ ├── init-compiler.sh │ │ ├── init-distro-rid.sh │ │ ├── init-os-and-arch.sh │ │ ├── install-cmake-test.sh │ │ ├── install-cmake.sh │ │ └── install-tool.ps1 │ ├── pipeline-logging-functions.ps1 │ ├── pipeline-logging-functions.sh │ ├── post-build │ │ ├── check-channel-consistency.ps1 │ │ ├── nuget-validation.ps1 │ │ ├── nuget-verification.ps1 │ │ ├── publish-using-darc.ps1 │ │ ├── redact-logs.ps1 │ │ ├── sourcelink-validation.ps1 │ │ └── symbols-validation.ps1 │ ├── retain-build.ps1 │ ├── sdk-task.ps1 │ ├── sdl │ │ ├── NuGet.config │ │ ├── configure-sdl-tool.ps1 │ │ ├── execute-all-sdl-tools.ps1 │ │ ├── extract-artifact-archives.ps1 │ │ ├── extract-artifact-packages.ps1 │ │ ├── init-sdl.ps1 │ │ ├── packages.config │ │ ├── run-sdl.ps1 │ │ ├── sdl.ps1 │ │ └── trim-assets-version.ps1 │ ├── tools.ps1 │ └── tools.sh └── key.snk ├── global.json ├── package-icon.png ├── samples └── Mvc.Client │ ├── Controllers │ ├── AuthenticationController.cs │ └── HomeController.cs │ ├── Extensions │ └── HttpContextExtensions.cs │ ├── Mvc.Client.csproj │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── Startup.cs │ ├── Views │ ├── Authentication │ │ └── SignIn.cshtml │ ├── Home │ │ └── Index.cshtml │ ├── Shared │ │ └── _Layout.cshtml │ └── _ViewStart.cshtml │ ├── appsettings.json │ ├── web.config │ └── wwwroot │ └── favicon.ico ├── src ├── AspNet.Security.OAuth.AdobeIO │ ├── AdobeIOAuthenticationConstants.cs │ ├── AdobeIOAuthenticationDefaults.cs │ ├── AdobeIOAuthenticationExtensions.cs │ ├── AdobeIOAuthenticationHandler.cs │ ├── AdobeIOAuthenticationOptions.cs │ └── AspNet.Security.OAuth.AdobeIO.csproj ├── AspNet.Security.OAuth.Airtable │ ├── AirtableAuthenticationDefaults.cs │ ├── AirtableAuthenticationExtensions.cs │ ├── AirtableAuthenticationHandler.cs │ ├── AirtableAuthenticationOptions.cs │ └── AspNet.Security.OAuth.Airtable.csproj ├── AspNet.Security.OAuth.Alipay │ ├── AlipayAuthenticationConstants.cs │ ├── AlipayAuthenticationDefaults.cs │ ├── AlipayAuthenticationExtensions.cs │ ├── AlipayAuthenticationHandler.cs │ ├── AlipayAuthenticationOptions.cs │ └── AspNet.Security.OAuth.Alipay.csproj ├── AspNet.Security.OAuth.Amazon │ ├── AmazonAuthenticationDefaults.cs │ ├── AmazonAuthenticationExtensions.cs │ ├── AmazonAuthenticationHandler.cs │ ├── AmazonAuthenticationOptions.cs │ └── AspNet.Security.OAuth.Amazon.csproj ├── AspNet.Security.OAuth.AmoCrm │ ├── AmoCrmAuthenticationDefaults.cs │ ├── AmoCrmAuthenticationExtensions.cs │ ├── AmoCrmAuthenticationHandler.cs │ ├── AmoCrmAuthenticationOptions.cs │ └── AspNet.Security.OAuth.AmoCrm.csproj ├── AspNet.Security.OAuth.Apple │ ├── AppleAuthenticationConstants.cs │ ├── AppleAuthenticationDefaults.cs │ ├── AppleAuthenticationEvents.cs │ ├── AppleAuthenticationExtensions.cs │ ├── AppleAuthenticationHandler.cs │ ├── AppleAuthenticationOptions.cs │ ├── AppleAuthenticationOptionsExtensions.cs │ ├── AppleClientSecretGenerator.cs │ ├── AppleEmailClaimAction.cs │ ├── AppleGenerateClientSecretContext.cs │ ├── AppleIdTokenValidator.cs │ ├── ApplePostConfigureOptions.cs │ ├── AppleValidateIdTokenContext.cs │ ├── AspNet.Security.OAuth.Apple.csproj │ └── Internal │ │ ├── DefaultAppleClientSecretGenerator.cs │ │ └── DefaultAppleIdTokenValidator.cs ├── AspNet.Security.OAuth.ArcGIS │ ├── ArcGISAuthenticationDefaults.cs │ ├── ArcGISAuthenticationExtensions.cs │ ├── ArcGISAuthenticationHandler.cs │ ├── ArcGISAuthenticationOptions.cs │ └── AspNet.Security.OAuth.ArcGIS.csproj ├── AspNet.Security.OAuth.Asana │ ├── AsanaAuthenticationDefaults.cs │ ├── AsanaAuthenticationExtensions.cs │ ├── AsanaAuthenticationHandler.cs │ ├── AsanaAuthenticationOptions.cs │ └── AspNet.Security.OAuth.Asana.csproj ├── AspNet.Security.OAuth.Atlassian │ ├── AspNet.Security.OAuth.Atlassian.csproj │ ├── AtlassianAuthenticationDefaults.cs │ ├── AtlassianAuthenticationExtensions.cs │ ├── AtlassianAuthenticationHandler.cs │ ├── AtlassianAuthenticationOptions.cs │ └── AtlassianOAuthenticationConstants.cs ├── AspNet.Security.OAuth.Autodesk │ ├── AspNet.Security.OAuth.Autodesk.csproj │ ├── AutodeskAuthenticationConstants.cs │ ├── AutodeskAuthenticationDefaults.cs │ ├── AutodeskAuthenticationExtensions.cs │ ├── AutodeskAuthenticationHandler.cs │ └── AutodeskAuthenticationOptions.cs ├── AspNet.Security.OAuth.Baidu │ ├── AspNet.Security.OAuth.Baidu.csproj │ ├── BaiduAuthenticationConstants.cs │ ├── BaiduAuthenticationDefaults.cs │ ├── BaiduAuthenticationExtensions.cs │ ├── BaiduAuthenticationHandler.cs │ └── BaiduAuthenticationOptions.cs ├── AspNet.Security.OAuth.Basecamp │ ├── AspNet.Security.OAuth.Basecamp.csproj │ ├── BasecampAuthenticationDefaults.cs │ ├── BasecampAuthenticationExtensions.cs │ ├── BasecampAuthenticationHandler.cs │ └── BasecampAuthenticationOptions.cs ├── AspNet.Security.OAuth.BattleNet │ ├── AspNet.Security.OAuth.BattleNet.csproj │ ├── BattleNetAuthenticationDefaults.cs │ ├── BattleNetAuthenticationExtensions.cs │ ├── BattleNetAuthenticationHandler.cs │ ├── BattleNetAuthenticationOptions.cs │ ├── BattleNetAuthenticationRegion.cs │ └── BattleNetPostConfigureOptions.cs ├── AspNet.Security.OAuth.Bilibili │ ├── AspNet.Security.OAuth.Bilibili.csproj │ ├── BilibiliAuthenticationConstants.cs │ ├── BilibiliAuthenticationDefaults.cs │ ├── BilibiliAuthenticationExtensions.cs │ ├── BilibiliAuthenticationHandler.cs │ └── BilibiliAuthenticationOptions.cs ├── AspNet.Security.OAuth.Bitbucket │ ├── AspNet.Security.OAuth.Bitbucket.csproj │ ├── BitbucketAuthenticationConstants.cs │ ├── BitbucketAuthenticationDefaults.cs │ ├── BitbucketAuthenticationExtensions.cs │ ├── BitbucketAuthenticationHandler.cs │ └── BitbucketAuthenticationOptions.cs ├── AspNet.Security.OAuth.Buffer │ ├── AspNet.Security.OAuth.Buffer.csproj │ ├── BufferAuthenticationDefaults.cs │ ├── BufferAuthenticationExtensions.cs │ ├── BufferAuthenticationHandler.cs │ └── BufferAuthenticationOptions.cs ├── AspNet.Security.OAuth.Calendly │ ├── AspNet.Security.OAuth.Calendly.csproj │ ├── CalendlyAuthenticationDefaults.cs │ ├── CalendlyAuthenticationExtensions.cs │ ├── CalendlyAuthenticationHandler.cs │ └── CalendlyAuthenticationOptions.cs ├── AspNet.Security.OAuth.CiscoSpark │ ├── AspNet.Security.OAuth.CiscoSpark.csproj │ ├── CiscoSparkAuthenticationDefaults.cs │ ├── CiscoSparkAuthenticationExtensions.cs │ ├── CiscoSparkAuthenticationHandler.cs │ └── CiscoSparkAuthenticationOptions.cs ├── AspNet.Security.OAuth.Coinbase │ ├── AspNet.Security.OAuth.Coinbase.csproj │ ├── CoinbaseAuthenticationConstants.cs │ ├── CoinbaseAuthenticationDefaults.cs │ ├── CoinbaseAuthenticationExtensions.cs │ ├── CoinbaseAuthenticationHandler.cs │ └── CoinbaseAuthenticationOptions.cs ├── AspNet.Security.OAuth.Contentful │ ├── AspNet.Security.OAuth.Contentful.csproj │ ├── ContentfulAuthenticationDefaults.cs │ ├── ContentfulAuthenticationExtensions.cs │ ├── ContentfulAuthenticationHandler.cs │ └── ContentfulAuthenticationOptions.cs ├── AspNet.Security.OAuth.Deezer │ ├── AspNet.Security.OAuth.Deezer.csproj │ ├── DeezerAuthenticationConstants.cs │ ├── DeezerAuthenticationDefaults.cs │ ├── DeezerAuthenticationExtensions.cs │ ├── DeezerAuthenticationHandler.cs │ └── DeezerAuthenticationOptions.cs ├── AspNet.Security.OAuth.DeviantArt │ ├── AspNet.Security.OAuth.DeviantArt.csproj │ ├── DeviantArtAuthenticationConstants.cs │ ├── DeviantArtAuthenticationDefaults.cs │ ├── DeviantArtAuthenticationExtensions.cs │ ├── DeviantArtAuthenticationHandler.cs │ └── DeviantArtAuthenticationOptions.cs ├── AspNet.Security.OAuth.DigitalOcean │ ├── AspNet.Security.OAuth.DigitalOcean.csproj │ ├── DigitalOceanAuthenticationConstants.cs │ ├── DigitalOceanAuthenticationDefaults.cs │ ├── DigitalOceanAuthenticationExtensions.cs │ ├── DigitalOceanAuthenticationHandler.cs │ └── DigitalOceanAuthenticationOptions.cs ├── AspNet.Security.OAuth.Discord │ ├── AspNet.Security.OAuth.Discord.csproj │ ├── DiscordAuthenticationConstants.cs │ ├── DiscordAuthenticationDefaults.cs │ ├── DiscordAuthenticationExtensions.cs │ ├── DiscordAuthenticationHandler.cs │ └── DiscordAuthenticationOptions.cs ├── AspNet.Security.OAuth.Docusign │ ├── AspNet.Security.OAuth.Docusign.csproj │ ├── DocusignAuthenticationDefaults.cs │ ├── DocusignAuthenticationEnvironment.cs │ ├── DocusignAuthenticationExtensions.cs │ ├── DocusignAuthenticationHandler.cs │ ├── DocusignAuthenticationOptions.cs │ └── DocusignAuthenticationPostConfigureOptions.cs ├── AspNet.Security.OAuth.Dropbox │ ├── AspNet.Security.OAuth.Dropbox.csproj │ ├── DropboxAuthenticationDefaults.cs │ ├── DropboxAuthenticationExtensions.cs │ ├── DropboxAuthenticationHandler.cs │ └── DropboxAuthenticationOptions.cs ├── AspNet.Security.OAuth.EVEOnline │ ├── AspNet.Security.OAuth.EVEOnline.csproj │ ├── EVEOnlineAuthenticationConstants.cs │ ├── EVEOnlineAuthenticationDefaults.cs │ ├── EVEOnlineAuthenticationExtensions.cs │ ├── EVEOnlineAuthenticationHandler.cs │ ├── EVEOnlineAuthenticationOptions.cs │ ├── EVEOnlineAuthenticationServer.cs │ └── EVEOnlinePostConfigureOptions.cs ├── AspNet.Security.OAuth.Ebay │ ├── AspNet.Security.OAuth.Ebay.csproj │ ├── EbayAuthenticationDefaults.cs │ ├── EbayAuthenticationExtensions.cs │ ├── EbayAuthenticationHandler.cs │ └── EbayAuthenticationOptions.cs ├── AspNet.Security.OAuth.ExactOnline │ ├── AspNet.Security.OAuth.ExactOnline.csproj │ ├── ExactOnlineAuthenticationConstants.cs │ ├── ExactOnlineAuthenticationDefaults.cs │ ├── ExactOnlineAuthenticationExtensions.cs │ ├── ExactOnlineAuthenticationHandler.cs │ └── ExactOnlineAuthenticationOptions.cs ├── AspNet.Security.OAuth.Feishu │ ├── AspNet.Security.OAuth.Feishu.csproj │ ├── FeishuAuthenticationConstants.cs │ ├── FeishuAuthenticationDefaults.cs │ ├── FeishuAuthenticationExtensions.cs │ ├── FeishuAuthenticationHandler.cs │ └── FeishuAuthenticationOptions.cs ├── AspNet.Security.OAuth.Fitbit │ ├── AspNet.Security.OAuth.Fitbit.csproj │ ├── FitbitAuthenticationConstants.cs │ ├── FitbitAuthenticationDefaults.cs │ ├── FitbitAuthenticationExtensions.cs │ ├── FitbitAuthenticationHandler.cs │ └── FitbitAuthenticationOptions.cs ├── AspNet.Security.OAuth.Foursquare │ ├── AspNet.Security.OAuth.Foursquare.csproj │ ├── FoursquareAuthenticationDefaults.cs │ ├── FoursquareAuthenticationExtensions.cs │ ├── FoursquareAuthenticationHandler.cs │ └── FoursquareAuthenticationOptions.cs ├── AspNet.Security.OAuth.GitCode │ ├── AspNet.Security.OAuth.GitCode.csproj │ ├── GitCodeAuthenticationConstants.cs │ ├── GitCodeAuthenticationDefaults.cs │ ├── GitCodeAuthenticationExtensions.cs │ ├── GitCodeAuthenticationHandler.cs │ └── GitCodeAuthenticationOptions.cs ├── AspNet.Security.OAuth.GitHub │ ├── AspNet.Security.OAuth.GitHub.csproj │ ├── GitHubAuthenticationConstants.cs │ ├── GitHubAuthenticationDefaults.cs │ ├── GitHubAuthenticationExtensions.cs │ ├── GitHubAuthenticationHandler.cs │ ├── GitHubAuthenticationOptions.cs │ └── GitHubPostConfigureOptions.cs ├── AspNet.Security.OAuth.GitLab │ ├── AspNet.Security.OAuth.GitLab.csproj │ ├── GitLabAuthenticationConstants.cs │ ├── GitLabAuthenticationDefaults.cs │ ├── GitLabAuthenticationExtensions.cs │ ├── GitLabAuthenticationHandler.cs │ └── GitLabAuthenticationOptions.cs ├── AspNet.Security.OAuth.Gitee │ ├── AspNet.Security.OAuth.Gitee.csproj │ ├── GiteeAuthenticationConstants.cs │ ├── GiteeAuthenticationDefaults.cs │ ├── GiteeAuthenticationExtensions.cs │ ├── GiteeAuthenticationHandler.cs │ └── GiteeAuthenticationOptions.cs ├── AspNet.Security.OAuth.Harvest │ ├── AspNet.Security.OAuth.Harvest.csproj │ ├── HarvestAuthenticationDefaults.cs │ ├── HarvestAuthenticationExtensions.cs │ ├── HarvestAuthenticationHandler.cs │ └── HarvestAuthenticationOptions.cs ├── AspNet.Security.OAuth.HealthGraph │ ├── AspNet.Security.OAuth.HealthGraph.csproj │ ├── HealthGraphAuthenticationDefaults.cs │ ├── HealthGraphAuthenticationExtensions.cs │ ├── HealthGraphAuthenticationHandler.cs │ └── HealthGraphAuthenticationOptions.cs ├── AspNet.Security.OAuth.Huawei │ ├── AspNet.Security.OAuth.Huawei.csproj │ ├── HuaweiAuthenticationConstants.cs │ ├── HuaweiAuthenticationDefaults.cs │ ├── HuaweiAuthenticationExtensions.cs │ ├── HuaweiAuthenticationHandler.cs │ └── HuaweiAuthenticationOptions.cs ├── AspNet.Security.OAuth.HubSpot │ ├── AspNet.Security.OAuth.HubSpot.csproj │ ├── HubSpotAuthenticationConstants.cs │ ├── HubSpotAuthenticationDefaults.cs │ ├── HubSpotAuthenticationExtensions.cs │ ├── HubSpotAuthenticationHandler.cs │ └── HubSpotAuthenticationOptions.cs ├── AspNet.Security.OAuth.Imgur │ ├── AspNet.Security.OAuth.Imgur.csproj │ ├── ImgurAuthenticationConstants.cs │ ├── ImgurAuthenticationDefaults.cs │ ├── ImgurAuthenticationExtensions.cs │ ├── ImgurAuthenticationHandler.cs │ └── ImgurAuthenticationOptions.cs ├── AspNet.Security.OAuth.Instagram │ ├── AspNet.Security.OAuth.Instagram.csproj │ ├── InstagramAuthenticationConstants.cs │ ├── InstagramAuthenticationDefaults.cs │ ├── InstagramAuthenticationExtensions.cs │ ├── InstagramAuthenticationHandler.cs │ └── InstagramAuthenticationOptions.cs ├── AspNet.Security.OAuth.JumpCloud │ ├── AspNet.Security.OAuth.JumpCloud.csproj │ ├── JumpCloudAuthenticationDefaults.cs │ ├── JumpCloudAuthenticationExtensions.cs │ ├── JumpCloudAuthenticationHandler.cs │ ├── JumpCloudAuthenticationOptions.cs │ └── JumpCloudPostConfigureOptions.cs ├── AspNet.Security.OAuth.KakaoTalk │ ├── AspNet.Security.OAuth.KakaoTalk.csproj │ ├── KakaoTalkAuthenticationConstants.cs │ ├── KakaoTalkAuthenticationDefaults.cs │ ├── KakaoTalkAuthenticationExtensions.cs │ ├── KakaoTalkAuthenticationHandler.cs │ └── KakaoTalkAuthenticationOptions.cs ├── AspNet.Security.OAuth.Keycloak │ ├── AspNet.Security.OAuth.Keycloak.csproj │ ├── KeycloakAuthenticationAccessType.cs │ ├── KeycloakAuthenticationDefaults.cs │ ├── KeycloakAuthenticationExtensions.cs │ ├── KeycloakAuthenticationHandler.cs │ ├── KeycloakAuthenticationOptions.cs │ └── KeycloakPostConfigureOptions.cs ├── AspNet.Security.OAuth.Kook │ ├── AspNet.Security.OAuth.Kook.csproj │ ├── KookAuthenticationConstants.cs │ ├── KookAuthenticationDefaults.cs │ ├── KookAuthenticationExtensions.cs │ ├── KookAuthenticationHandler.cs │ └── KookAuthenticationOptions.cs ├── AspNet.Security.OAuth.Kroger │ ├── AspNet.Security.OAuth.Kroger.csproj │ ├── KrogerAuthenticationDefaults.cs │ ├── KrogerAuthenticationExtensions.cs │ ├── KrogerAuthenticationHandler.cs │ └── KrogerAuthenticationOptions.cs ├── AspNet.Security.OAuth.Lichess │ ├── AspNet.Security.OAuth.Lichess.csproj │ ├── LichessAuthenticationConstants.cs │ ├── LichessAuthenticationDefaults.cs │ ├── LichessAuthenticationExtensions.cs │ ├── LichessAuthenticationHandler.cs │ └── LichessAuthenticationOptions.cs ├── AspNet.Security.OAuth.Line │ ├── AspNet.Security.OAuth.Line.csproj │ ├── LineAuthenticationConstants.cs │ ├── LineAuthenticationDefaults.cs │ ├── LineAuthenticationExtensions.cs │ ├── LineAuthenticationHandler.cs │ └── LineAuthenticationOptions.cs ├── AspNet.Security.OAuth.Linear │ ├── AspNet.Security.OAuth.Linear.csproj │ ├── LinearAuthenticationConstants.cs │ ├── LinearAuthenticationDefaults.cs │ ├── LinearAuthenticationExtensions.cs │ ├── LinearAuthenticationHandler.cs │ └── LinearAuthenticationOptions.cs ├── AspNet.Security.OAuth.LinkedIn │ ├── AspNet.Security.OAuth.LinkedIn.csproj │ ├── LinkedInAuthenticationConstants.cs │ ├── LinkedInAuthenticationDefaults.cs │ ├── LinkedInAuthenticationExtensions.cs │ ├── LinkedInAuthenticationHandler.cs │ └── LinkedInAuthenticationOptions.cs ├── AspNet.Security.OAuth.MailChimp │ ├── AspNet.Security.OAuth.MailChimp.csproj │ ├── MailChimpAuthenticationDefaults.cs │ ├── MailChimpAuthenticationExtensions.cs │ ├── MailChimpAuthenticationHandler.cs │ └── MailChimpAuthenticationOptions.cs ├── AspNet.Security.OAuth.MailRu │ ├── AspNet.Security.OAuth.MailRu.csproj │ ├── MailRuAuthenticationConstants.cs │ ├── MailRuAuthenticationDefaults.cs │ ├── MailRuAuthenticationExtensions.cs │ ├── MailRuAuthenticationHandler.cs │ └── MailRuAuthenticationOptions.cs ├── AspNet.Security.OAuth.Miro │ ├── AspNet.Security.OAuth.Miro.csproj │ ├── MiroAuthenticationConstants.cs │ ├── MiroAuthenticationDefaults.cs │ ├── MiroAuthenticationExtensions.cs │ ├── MiroAuthenticationHandler.cs │ └── MiroAuthenticationOptions.cs ├── AspNet.Security.OAuth.Mixcloud │ ├── AspNet.Security.OAuth.Mixcloud.csproj │ ├── MixcloudAuthenticationConstants.cs │ ├── MixcloudAuthenticationDefaults.cs │ ├── MixcloudAuthenticationExtensions.cs │ ├── MixcloudAuthenticationHandler.cs │ └── MixcloudAuthenticationOptions.cs ├── AspNet.Security.OAuth.Moodle │ ├── AspNet.Security.OAuth.Moodle.csproj │ ├── MoodleAuthenticationConstants.cs │ ├── MoodleAuthenticationDefaults.cs │ ├── MoodleAuthenticationExtensions.cs │ ├── MoodleAuthenticationHandler.cs │ ├── MoodleAuthenticationOptions.cs │ └── MoodlePostConfigureOptions.cs ├── AspNet.Security.OAuth.Myob │ ├── AspNet.Security.OAuth.Myob.csproj │ ├── MyobAuthenticationDefaults.cs │ ├── MyobAuthenticationExtensions.cs │ ├── MyobAuthenticationHandler.cs │ └── MyobAuthenticationOptions.cs ├── AspNet.Security.OAuth.Naver │ ├── AspNet.Security.OAuth.Naver.csproj │ ├── NaverAuthenticationConstants.cs │ ├── NaverAuthenticationDefaults.cs │ ├── NaverAuthenticationExtensions.cs │ ├── NaverAuthenticationHandler.cs │ └── NaverAuthenticationOptions.cs ├── AspNet.Security.OAuth.NetEase │ ├── AspNet.Security.OAuth.NetEase.csproj │ ├── NetEaseAuthenticationDefaults.cs │ ├── NetEaseAuthenticationExtensions.cs │ ├── NetEaseAuthenticationHandler.cs │ └── NetEaseAuthenticationOptions.cs ├── AspNet.Security.OAuth.Nextcloud │ ├── AspNet.Security.OAuth.Nextcloud.csproj │ ├── NextcloudAuthenticationConstants.cs │ ├── NextcloudAuthenticationDefaults.cs │ ├── NextcloudAuthenticationExtensions.cs │ ├── NextcloudAuthenticationHandler.cs │ └── NextcloudAuthenticationOptions.cs ├── AspNet.Security.OAuth.Notion │ ├── AspNet.Security.OAuth.Notion.csproj │ ├── NotionAuthenticationConstants.cs │ ├── NotionAuthenticationDefaults.cs │ ├── NotionAuthenticationExtensions.cs │ ├── NotionAuthenticationHandler.cs │ └── NotionAuthenticationOptions.cs ├── AspNet.Security.OAuth.Odnoklassniki │ ├── AspNet.Security.OAuth.Odnoklassniki.csproj │ ├── OdnoklassnikiAuthenticationConstants.cs │ ├── OdnoklassnikiAuthenticationDefaults.cs │ ├── OdnoklassnikiAuthenticationExtensions.cs │ ├── OdnoklassnikiAuthenticationHandler.cs │ └── OdnoklassnikiAuthenticationOptions.cs ├── AspNet.Security.OAuth.Okta │ ├── AspNet.Security.OAuth.Okta.csproj │ ├── OktaAuthenticationDefaults.cs │ ├── OktaAuthenticationExtensions.cs │ ├── OktaAuthenticationHandler.cs │ ├── OktaAuthenticationOptions.cs │ └── OktaPostConfigureOptions.cs ├── AspNet.Security.OAuth.Onshape │ ├── AspNet.Security.OAuth.Onshape.csproj │ ├── OnshapeAuthenticationDefaults.cs │ ├── OnshapeAuthenticationExtensions.cs │ ├── OnshapeAuthenticationHandler.cs │ └── OnshapeAuthenticationOptions.cs ├── AspNet.Security.OAuth.Patreon │ ├── AspNet.Security.OAuth.Patreon.csproj │ ├── PatreonAuthenticationConstants.cs │ ├── PatreonAuthenticationDefaults.cs │ ├── PatreonAuthenticationExtensions.cs │ ├── PatreonAuthenticationHandler.cs │ └── PatreonAuthenticationOptions.cs ├── AspNet.Security.OAuth.Paypal │ ├── AspNet.Security.OAuth.Paypal.csproj │ ├── PaypalAuthenticationDefaults.cs │ ├── PaypalAuthenticationExtensions.cs │ ├── PaypalAuthenticationHandler.cs │ └── PaypalAuthenticationOptions.cs ├── AspNet.Security.OAuth.PingOne │ ├── AspNet.Security.OAuth.PingOne.csproj │ ├── PingOneAuthenticationDefaults.cs │ ├── PingOneAuthenticationExtensions.cs │ ├── PingOneAuthenticationHandler.cs │ ├── PingOneAuthenticationOptions.cs │ └── PingOnePostConfigureOptions.cs ├── AspNet.Security.OAuth.Pipedrive │ ├── AspNet.Security.OAuth.Pipedrive.csproj │ ├── PipedriveAuthenticationDefaults.cs │ ├── PipedriveAuthenticationExtensions.cs │ ├── PipedriveAuthenticationHandler.cs │ └── PipedriveAuthenticationOptions.cs ├── AspNet.Security.OAuth.QQ │ ├── AspNet.Security.OAuth.QQ.csproj │ ├── QQAuthenticationConstants.cs │ ├── QQAuthenticationDefaults.cs │ ├── QQAuthenticationExtensions.cs │ ├── QQAuthenticationHandler.cs │ └── QQAuthenticationOptions.cs ├── AspNet.Security.OAuth.QuickBooks │ ├── AspNet.Security.OAuth.QuickBooks.csproj │ ├── QuickBooksAuthenticationConstants.cs │ ├── QuickBooksAuthenticationDefaults.cs │ ├── QuickBooksAuthenticationExtensions.cs │ ├── QuickBooksAuthenticationHandler.cs │ └── QuickBooksAuthenticationOptions.cs ├── AspNet.Security.OAuth.Reddit │ ├── AspNet.Security.OAuth.Reddit.csproj │ ├── RedditAuthenticationConstants.cs │ ├── RedditAuthenticationDefaults.cs │ ├── RedditAuthenticationExtensions.cs │ ├── RedditAuthenticationHandler.cs │ └── RedditAuthenticationOptions.cs ├── AspNet.Security.OAuth.Salesforce │ ├── AspNet.Security.OAuth.Salesforce.csproj │ ├── SalesforceAuthenticationConstants.cs │ ├── SalesforceAuthenticationDefaults.cs │ ├── SalesforceAuthenticationEnvironment.cs │ ├── SalesforceAuthenticationExtensions.cs │ ├── SalesforceAuthenticationHandler.cs │ └── SalesforceAuthenticationOptions.cs ├── AspNet.Security.OAuth.ServiceChannel │ ├── AspNet.Security.OAuth.ServiceChannel.csproj │ ├── ServiceChannelAuthenticationConstants.cs │ ├── ServiceChannelAuthenticationDefaults.cs │ ├── ServiceChannelAuthenticationExtensions.cs │ ├── ServiceChannelAuthenticationHandler.cs │ └── ServiceChannelAuthenticationOptions.cs ├── AspNet.Security.OAuth.Shopify │ ├── AspNet.Security.OAuth.Shopify.csproj │ ├── ShopifyAuthenticationDefaults.cs │ ├── ShopifyAuthenticationExtensions.cs │ ├── ShopifyAuthenticationHandler.cs │ ├── ShopifyAuthenticationOptions.cs │ └── ShopifyAuthenticationProperties.cs ├── AspNet.Security.OAuth.Slack │ ├── AspNet.Security.OAuth.Slack.csproj │ ├── SlackAuthenticationConstants.cs │ ├── SlackAuthenticationDefaults.cs │ ├── SlackAuthenticationExtensions.cs │ ├── SlackAuthenticationHandler.cs │ └── SlackAuthenticationOptions.cs ├── AspNet.Security.OAuth.Smartsheet │ ├── AspNet.Security.OAuth.Smartsheet.csproj │ ├── SmartsheetAuthenticationConstants.cs │ ├── SmartsheetAuthenticationDefaults.cs │ ├── SmartsheetAuthenticationExtensions.cs │ ├── SmartsheetAuthenticationHandler.cs │ └── SmartsheetAuthenticationOptions.cs ├── AspNet.Security.OAuth.Snapchat │ ├── AspNet.Security.OAuth.Snapchat.csproj │ ├── SnapchatAuthenticationConstants.cs │ ├── SnapchatAuthenticationDefaults.cs │ ├── SnapchatAuthenticationExtensions.cs │ ├── SnapchatAuthenticationHandler.cs │ └── SnapchatAuthenticationOptions.cs ├── AspNet.Security.OAuth.SoundCloud │ ├── AspNet.Security.OAuth.SoundCloud.csproj │ ├── SoundCloudAuthenticationConstants.cs │ ├── SoundCloudAuthenticationDefaults.cs │ ├── SoundCloudAuthenticationExtensions.cs │ ├── SoundCloudAuthenticationHandler.cs │ └── SoundCloudAuthenticationOptions.cs ├── AspNet.Security.OAuth.Spotify │ ├── AspNet.Security.OAuth.Spotify.csproj │ ├── SpotifyAuthenticationConstants.cs │ ├── SpotifyAuthenticationDefaults.cs │ ├── SpotifyAuthenticationExtensions.cs │ ├── SpotifyAuthenticationHandler.cs │ └── SpotifyAuthenticationOptions.cs ├── AspNet.Security.OAuth.StackExchange │ ├── AspNet.Security.OAuth.StackExchange.csproj │ ├── StackExchangeAuthenticationConstants.cs │ ├── StackExchangeAuthenticationDefaults.cs │ ├── StackExchangeAuthenticationExtensions.cs │ ├── StackExchangeAuthenticationHandler.cs │ └── StackExchangeAuthenticationOptions.cs ├── AspNet.Security.OAuth.Strava │ ├── AspNet.Security.OAuth.Strava.csproj │ ├── StravaAuthenticationConstants.cs │ ├── StravaAuthenticationDefaults.cs │ ├── StravaAuthenticationExtensions.cs │ ├── StravaAuthenticationHandler.cs │ └── StravaAuthenticationOptions.cs ├── AspNet.Security.OAuth.Streamlabs │ ├── AspNet.Security.OAuth.Streamlabs.csproj │ ├── StreamlabsAuthenticationConstants.cs │ ├── StreamlabsAuthenticationDefaults.cs │ ├── StreamlabsAuthenticationExtensions.cs │ ├── StreamlabsAuthenticationHandler.cs │ └── StreamlabsAuthenticationOptions.cs ├── AspNet.Security.OAuth.SuperOffice │ ├── AspNet.Security.OAuth.SuperOffice.csproj │ ├── SuperOfficeAuthenticationConstants.cs │ ├── SuperOfficeAuthenticationDefaults.cs │ ├── SuperOfficeAuthenticationEnvironment.cs │ ├── SuperOfficeAuthenticationExtensions.cs │ ├── SuperOfficeAuthenticationHandler.cs │ ├── SuperOfficeAuthenticationOptions.cs │ ├── SuperOfficeAuthenticationPostConfigureOptions.cs │ └── SuperOfficeFunctionalRightsClaimAction.cs ├── AspNet.Security.OAuth.Trakt │ ├── AspNet.Security.OAuth.Trakt.csproj │ ├── TraktAuthenticationConstants.cs │ ├── TraktAuthenticationDefaults.cs │ ├── TraktAuthenticationExtensions.cs │ ├── TraktAuthenticationHandler.cs │ └── TraktAuthenticationOptions.cs ├── AspNet.Security.OAuth.Trovo │ ├── AspNet.Security.OAuth.Trovo.csproj │ ├── TrovoAuthenticationConstants.cs │ ├── TrovoAuthenticationDefaults.cs │ ├── TrovoAuthenticationExtensions.cs │ ├── TrovoAuthenticationHandler.cs │ └── TrovoAuthenticationOptions.cs ├── AspNet.Security.OAuth.Twitch │ ├── AspNet.Security.OAuth.Twitch.csproj │ ├── TwitchAuthenticationConstants.cs │ ├── TwitchAuthenticationDefaults.cs │ ├── TwitchAuthenticationExtensions.cs │ ├── TwitchAuthenticationHandler.cs │ └── TwitchAuthenticationOptions.cs ├── AspNet.Security.OAuth.Twitter │ ├── AspNet.Security.OAuth.Twitter.csproj │ ├── TwitterAuthenticationConstants.cs │ ├── TwitterAuthenticationDefaults.cs │ ├── TwitterAuthenticationExtensions.cs │ ├── TwitterAuthenticationHandler.cs │ └── TwitterAuthenticationOptions.cs ├── AspNet.Security.OAuth.Typeform │ ├── AspNet.Security.OAuth.Typeform.csproj │ ├── TypeformAuthenticationDefaults.cs │ ├── TypeformAuthenticationExtensions.cs │ ├── TypeformAuthenticationHandler.cs │ └── TypeformAuthenticationOptions.cs ├── AspNet.Security.OAuth.Untappd │ ├── AspNet.Security.OAuth.Untappd.csproj │ ├── UntappdAuthenticationConstants.cs │ ├── UntappdAuthenticationDefaults.cs │ ├── UntappdAuthenticationExtensions.cs │ ├── UntappdAuthenticationHandler.cs │ └── UntappdAuthenticationOptions.cs ├── AspNet.Security.OAuth.Vimeo │ ├── AspNet.Security.OAuth.Vimeo.csproj │ ├── VimeoAuthenticationConstants.cs │ ├── VimeoAuthenticationDefaults.cs │ ├── VimeoAuthenticationExtensions.cs │ ├── VimeoAuthenticationHandler.cs │ └── VimeoAuthenticationOptions.cs ├── AspNet.Security.OAuth.VisualStudio │ ├── AspNet.Security.OAuth.VisualStudio.csproj │ ├── VisualStudioAuthenticationDefaults.cs │ ├── VisualStudioAuthenticationExtensions.cs │ ├── VisualStudioAuthenticationHandler.cs │ └── VisualStudioAuthenticationOptions.cs ├── AspNet.Security.OAuth.VkId │ ├── AspNet.Security.OAuth.VkId.csproj │ ├── VkIdAuthenticationConstants.cs │ ├── VkIdAuthenticationDefaults.cs │ ├── VkIdAuthenticationExtensions.cs │ ├── VkIdAuthenticationHandler.cs │ ├── VkIdAuthenticationOptions.cs │ └── VkIdAuthenticationScopes.cs ├── AspNet.Security.OAuth.Vkontakte │ ├── AspNet.Security.OAuth.Vkontakte.csproj │ ├── VkontakteAuthenticationConstants.cs │ ├── VkontakteAuthenticationDefaults.cs │ ├── VkontakteAuthenticationExtensions.cs │ ├── VkontakteAuthenticationHandler.cs │ └── VkontakteAuthenticationOptions.cs ├── AspNet.Security.OAuth.Webflow │ ├── AspNet.Security.OAuth.Webflow.csproj │ ├── WebflowAuthenticationDefaults.cs │ ├── WebflowAuthenticationExtensions.cs │ ├── WebflowAuthenticationHandler.cs │ └── WebflowAuthenticationOptions.cs ├── AspNet.Security.OAuth.Weibo │ ├── AspNet.Security.OAuth.Weibo.csproj │ ├── WeiboAuthenticationConstants.cs │ ├── WeiboAuthenticationDefaults.cs │ ├── WeiboAuthenticationExtensions.cs │ ├── WeiboAuthenticationHandler.cs │ └── WeiboAuthenticationOptions.cs ├── AspNet.Security.OAuth.Weixin │ ├── AspNet.Security.OAuth.Weixin.csproj │ ├── WeixinAuthenticationConstants.cs │ ├── WeixinAuthenticationDefaults.cs │ ├── WeixinAuthenticationExtensions.cs │ ├── WeixinAuthenticationHandler.cs │ └── WeixinAuthenticationOptions.cs ├── AspNet.Security.OAuth.WordPress │ ├── AspNet.Security.OAuth.WordPress.csproj │ ├── WordPressAuthenticationConstants.cs │ ├── WordPressAuthenticationDefaults.cs │ ├── WordPressAuthenticationExtensions.cs │ ├── WordPressAuthenticationHandler.cs │ └── WordPressAuthenticationOptions.cs ├── AspNet.Security.OAuth.WorkWeixin │ ├── AspNet.Security.OAuth.WorkWeixin.csproj │ ├── WorkWeixinAuthenticationConstants.cs │ ├── WorkWeixinAuthenticationDefaults.cs │ ├── WorkWeixinAuthenticationExtensions.cs │ ├── WorkWeixinAuthenticationHandler.cs │ └── WorkWeixinAuthenticationOptions.cs ├── AspNet.Security.OAuth.Xero │ ├── AspNet.Security.OAuth.Xero.csproj │ ├── XeroAuthenticationConstants.cs │ ├── XeroAuthenticationDefaults.cs │ ├── XeroAuthenticationExtensions.cs │ ├── XeroAuthenticationHandler.cs │ ├── XeroAuthenticationOptions.cs │ └── XeroAuthenticationPostConfigureOptions.cs ├── AspNet.Security.OAuth.Xumm │ ├── AspNet.Security.OAuth.Xumm.csproj │ ├── XummAuthenticationConstants.cs │ ├── XummAuthenticationDefaults.cs │ ├── XummAuthenticationExtensions.cs │ ├── XummAuthenticationHandler.cs │ └── XummAuthenticationOptions.cs ├── AspNet.Security.OAuth.Yahoo │ ├── AspNet.Security.OAuth.Yahoo.csproj │ ├── YahooAuthenticationConstants.cs │ ├── YahooAuthenticationDefaults.cs │ ├── YahooAuthenticationExtensions.cs │ ├── YahooAuthenticationHandler.cs │ └── YahooAuthenticationOptions.cs ├── AspNet.Security.OAuth.Yammer │ ├── AspNet.Security.OAuth.Yammer.csproj │ ├── YammerAuthenticationConstants.cs │ ├── YammerAuthenticationDefaults.cs │ ├── YammerAuthenticationExtensions.cs │ ├── YammerAuthenticationHandler.cs │ └── YammerAuthenticationOptions.cs ├── AspNet.Security.OAuth.Yandex │ ├── AspNet.Security.OAuth.Yandex.csproj │ ├── YandexAuthenticationDefaults.cs │ ├── YandexAuthenticationExtensions.cs │ ├── YandexAuthenticationHandler.cs │ └── YandexAuthenticationOptions.cs ├── AspNet.Security.OAuth.Zalo │ ├── AspNet.Security.OAuth.Zalo.csproj │ ├── ZaloAuthenticationDefaults.cs │ ├── ZaloAuthenticationExtensions.cs │ ├── ZaloAuthenticationHandler.cs │ └── ZaloAuthenticationOptions.cs ├── AspNet.Security.OAuth.Zendesk │ ├── AspNet.Security.OAuth.Zendesk.csproj │ ├── ZendeskAuthenticationDefaults.cs │ ├── ZendeskAuthenticationExtensions.cs │ ├── ZendeskAuthenticationHandler.cs │ ├── ZendeskAuthenticationOptions.cs │ └── ZendeskPostConfigureOptions.cs ├── AspNet.Security.OAuth.Zoho │ ├── AspNet.Security.OAuth.Zoho.csproj │ ├── ZohoAuthenticationDefaults.cs │ ├── ZohoAuthenticationExtensions.cs │ ├── ZohoAuthenticationHandler.cs │ └── ZohoAuthenticationOptions.cs └── AspNet.Security.OAuth.Zoom │ ├── AspNet.Security.OAuth.Zoom.csproj │ ├── ZoomAuthenticationConstants.cs │ ├── ZoomAuthenticationDefaults.cs │ ├── ZoomAuthenticationExtensions.cs │ ├── ZoomAuthenticationHandler.cs │ └── ZoomAuthenticationOptions.cs ├── stylecop.json └── test └── AspNet.Security.OAuth.Providers.Tests ├── AdobeIO ├── AdobeIOTests.cs └── bundle.json ├── Airtable ├── AirtableTests.cs └── bundle.json ├── Alipay ├── AlipayTests.cs └── bundle.json ├── Amazon ├── AmazonTests.cs └── bundle.json ├── AmoCrm ├── AmoCrmTests.cs └── bundle.json ├── Apple ├── AppleAuthenticationOptionsExtensionsTests.cs ├── AppleAuthenticationOptionsTests.cs ├── AppleClientSecretGeneratorTests.cs ├── AppleTests.cs ├── TestKeys.cs ├── bundle.json ├── test.cer ├── test.p8 └── test.pfx ├── ArcGIS ├── ArcGISTests.cs └── bundle.json ├── Asana ├── AsanaTests.cs └── bundle.json ├── AspNet.Security.OAuth.Providers.Tests.csproj ├── Atlassian ├── AtlassianTests.cs └── bundle.json ├── Autodesk ├── AutodeskTests.cs └── bundle.json ├── Baidu ├── BaiduTests.cs └── bundle.json ├── Basecamp ├── BasecampTests.cs └── bundle.json ├── BattleNet ├── BattleNetTests.cs └── bundle.json ├── Bilibili ├── BilibiliTests.cs └── bundle.json ├── Bitbucket ├── BitbucketTests.cs └── bundle.json ├── Buffer ├── BufferTests.cs └── bundle.json ├── Calendly ├── CalendlyTests.cs └── bundle.json ├── CiscoSpark ├── CiscoSparkTests.cs └── bundle.json ├── Coinbase ├── CoinbaseTests.cs └── bundle.json ├── Contentful ├── ContentfulTests.cs └── bundle.json ├── Deezer ├── DeezerTests.cs └── bundle.json ├── DeviantArt ├── DeviantArtTests.cs └── bundle.json ├── DigitalOcean ├── DigitalOceanTests.cs └── bundle.json ├── Discord ├── DiscordTests.cs └── bundle.json ├── Docusign ├── DocusignAuthenticationPostConfigureOptionsTests.cs ├── DocusignTests.cs └── bundle.json ├── Dropbox ├── DropboxTests.cs └── bundle.json ├── EVEOnline ├── EVEOnlineTests.cs └── bundle.json ├── Ebay ├── EbayTests.cs └── bundle.json ├── ExactOnline ├── ExactOnlineTests.cs └── bundle.json ├── Feishu ├── FeishuTests.cs └── bundle.json ├── Fitbit ├── FitbitTests.cs └── bundle.json ├── Foursquare ├── FoursquareTests.cs └── bundle.json ├── GitCode ├── GitCodeTests.cs └── bundle.json ├── GitHub ├── GitHubEnterpriseTests.cs ├── GitHubPostConfigureOptionsTests.cs ├── GitHubTests.cs └── bundle.json ├── GitLab ├── GitLabTests.cs └── bundle.json ├── Gitee ├── GiteeTests.cs └── bundle.json ├── Harvest ├── HarvestTests.cs └── bundle.json ├── HealthGraph ├── HealthGraphTests.cs └── bundle.json ├── Huawei ├── HuaweiTests.cs └── bundle.json ├── HubSpot ├── HubSpotTests.cs └── bundle.json ├── Imgur ├── ImgurTests.cs └── bundle.json ├── Infrastructure ├── ApplicationFactory.cs ├── HttpRequestInterceptionFilter.cs ├── LoopbackRedirectHandler.cs └── Program.cs ├── Instagram ├── InstagramTests.cs └── bundle.json ├── JumpCloud ├── JumpCloudAuthenticationOptionsTests.cs ├── JumpCloudEnterpriseTests.cs ├── JumpCloudPostConfigureOptionsTests.cs ├── JumpCloudTests.cs └── bundle.json ├── KakaoTalk ├── KakaoTalkTests.cs └── bundle.json ├── Keycloak ├── KeycloakAuthenticationOptionsTests.cs ├── KeycloakTests.cs └── bundle.json ├── Kook ├── KookTests.cs └── bundle.json ├── Kroger ├── KrogerTests.cs └── bundle.json ├── Lichess ├── LichessTests.cs └── bundle.json ├── Line ├── LineTests.cs └── bundle.json ├── Linear ├── LinearTests.cs └── bundle.json ├── LinkedIn ├── LinkedInTests.cs └── bundle.json ├── MailChimp ├── MailChimpTests.cs └── bundle.json ├── MailRu ├── MailRuTests.cs └── bundle.json ├── Miro ├── MiroTests.cs └── bundle.json ├── Mixcloud ├── MixcloudTests.cs └── bundle.json ├── Moodle ├── MoodleAuthenticationOptionsTests.cs ├── MoodlePostConfigureOptionsTests.cs ├── MoodleTests.cs └── bundle.json ├── Myob ├── MyobTests.cs └── bundle.json ├── Naver ├── NaverTests.cs └── bundle.json ├── NetEase ├── NetEaseTests.cs └── bundle.json ├── Nextcloud ├── NextcloudTests.cs └── bundle.json ├── Notion ├── NotionTests.cs └── bundle.json ├── OAuthTests`1.cs ├── Odnoklassniki ├── OdnoklassnikiTests.cs └── bundle.json ├── Okta ├── OktaAuthenticationOptionsTests.cs ├── OktaPostConfigureOptionsTests.cs ├── OktaTests.cs └── bundle.json ├── Onshape ├── OnshapeTests.cs └── bundle.json ├── PackageMetadataTests.cs ├── Patreon ├── PatreonTests.cs └── bundle.json ├── Paypal ├── PaypalTests.cs └── bundle.json ├── PingOne ├── PingOneAuthenticationOptionsTests.cs ├── PingOnePostConfigureOptionsTests.cs ├── PingOneTests.cs └── bundle.json ├── Pipedrive ├── PipedriveTests.cs └── bundle.json ├── QQ ├── QQTests.cs └── bundle.json ├── QuickBooks ├── QuickBooksTests.cs └── bundle.json ├── Reddit ├── RedditTests.cs └── bundle.json ├── Salesforce ├── SalesforceTests.cs └── bundle.json ├── ServiceChannel ├── ServiceChannelTests.cs └── bundle.json ├── Shopify ├── ShopifyTests.cs └── bundle.json ├── Slack ├── SlackTests.cs └── bundle.json ├── Smartsheet ├── SmartsheetTests.cs └── bundle.json ├── Snapchat ├── SnapchatTests.cs └── bundle.json ├── SoundCloud ├── SoundCloudTests.cs └── bundle.json ├── Spotify ├── SpotifyTests.cs └── bundle.json ├── StackExchange ├── StackExchangeAuthenticationOptionsTests.cs ├── StackExchangeTests.cs └── bundle.json ├── StaticAnalysisTests.cs ├── Strava ├── StravaTests.cs └── bundle.json ├── Streamlabs ├── StreamlabsTests.cs └── bundle.json ├── SuperOffice ├── SuperOfficeTests.cs └── bundle.json ├── Trakt ├── TraktTests.cs └── bundle.json ├── Trovo ├── TrovoTests.cs └── bundle.json ├── Twitch ├── TwitchTests.cs └── bundle.json ├── Twitter ├── TwitterTests.cs └── bundle.json ├── Typeform ├── TypeformTests.cs └── bundle.json ├── Untappd ├── UntappdTests.cs └── bundle.json ├── Vimeo ├── VimeoTests.cs └── bundle.json ├── VisualStudio ├── VisualStudioTests.cs └── bundle.json ├── VkId ├── VkIdTests.cs └── bundle.json ├── Vkontakte ├── VkontakteTests.cs └── bundle.json ├── Webflow ├── WebflowTests.cs └── bundle.json ├── Weibo ├── WeiboTests.cs └── bundle.json ├── Weixin ├── WeixinTests.cs └── bundle.json ├── WordPress ├── WordPressTests.cs └── bundle.json ├── WorkWeixin ├── WorkWeixinTests.cs └── bundle.json ├── Xero ├── XeroTests.cs └── bundle.json ├── Xumm ├── XummTests.cs └── bundle.json ├── Yahoo ├── YahooTests.cs └── bundle.json ├── Yammer ├── YammerTests.cs └── bundle.json ├── Yandex ├── YandexTests.cs └── bundle.json ├── Zalo ├── ZaloTests.cs └── bundle.json ├── Zendesk ├── ZendeskAuthenticationOptionsTests.cs ├── ZendeskPostConfigureOptionsTests.cs ├── ZendeskTests.cs └── bundle.json ├── Zoho ├── ZohoTests.cs └── bundle.json ├── Zoom ├── ZoomTests.cs └── bundle.json └── xunit.runner.json /.github/CODEOWNERS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet-contrib/AspNet.Security.OAuth.Providers/840e14b677661eb16ed3ef728f6ce442238a3e38/.github/CODEOWNERS -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ### Provider name 2 | 3 | 6 | 7 | ### Expected behavior 8 | 9 | 12 | 13 | ### Actual behavior 14 | 15 | 18 | 19 | ### Steps to reproduce 20 | 21 | 24 | 25 | ### Additional information 26 | 27 | 30 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for a new feature for AspNet.Security.OAuth.Providers 4 | 5 | --- 6 | 7 | ### Is your feature request related to a problem? Please describe. 8 | 9 | 12 | 13 | ### Describe the solution you'd like 14 | 15 | 18 | 19 | ### Describe alternatives you've considered 20 | 21 | 24 | 25 | ### Additional context 26 | 27 | 30 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /.github/SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security policy 2 | 3 | ## Supported Versions 4 | 5 | Only versions of the providers that target versions of ASP.NET Core that are in support by Microsoft are supported by the maintainers. 6 | 7 | The .NET Core and ASP.NET Core support policy, including currently supported versions, can be found at the [.NET and .NET Core Support Policy page](https://dotnet.microsoft.com/platform/support/policy/dotnet-core). 8 | 9 | ## Reporting a Vulnerability 10 | 11 | Security issues and bugs should be reported privately by emailing [contact@kevinchalet.com](mailto:contact@kevinchalet.com). 12 | 13 | You should receive a response within 48 hours. If for some reason you do not, please follow up via email to ensure we received your original message. 14 | 15 | Please do not open GitHub issues for anything you think might have a security implication. 16 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "editorconfig.editorconfig", 4 | "github.vscode-github-actions", 5 | "ms-dotnettools.csharp" 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.2.0", 3 | "configurations": [ 4 | { 5 | "name": "Run tests", 6 | "type": "coreclr", 7 | "request": "launch", 8 | "preLaunchTask": "build", 9 | "program": "dotnet", 10 | "args": [ 11 | "test" 12 | ], 13 | "cwd": "${workspaceFolder}/test/AspNet.Security.OAuth.Providers.Tests", 14 | "console": "internalConsole", 15 | "stopAtEntry": false 16 | } 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0.0", 3 | "tasks": [ 4 | { 5 | "label": "build", 6 | "command": "dotnet", 7 | "type": "process", 8 | "args": [ 9 | "build", 10 | "${workspaceFolder}/test/AspNet.Security.OAuth.Providers.Tests/AspNet.Security.OAuth.Providers.Tests.csproj", 11 | "/property:GenerateFullPaths=true", 12 | "/consoleloggerparameters:NoSummary" 13 | ], 14 | "problemMatcher": "$msCompile" 15 | }, 16 | { 17 | "label": "watch", 18 | "command": "dotnet", 19 | "type": "process", 20 | "args": [ 21 | "watch", 22 | "run", 23 | "${workspaceFolder}/test/AspNet.Security.OAuth.Providers.Tests/AspNet.Security.OAuth.Providers.Tests.csproj", 24 | "/property:GenerateFullPaths=true", 25 | "/consoleloggerparameters:NoSummary" 26 | ], 27 | "problemMatcher": "$msCompile" 28 | } 29 | ] 30 | } 31 | -------------------------------------------------------------------------------- /Directory.Build.targets: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 11 | 12 | 13 | $(Authors) 14 | $(_ProjectCopyright) 15 | false 16 | false 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /NuGet.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /build.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0eng\common\Build.ps1""" -restore -build %*" 3 | exit /b %ErrorLevel% 4 | -------------------------------------------------------------------------------- /build.ps1: -------------------------------------------------------------------------------- 1 | $ErrorActionPreference = "Stop" 2 | 3 | Set-Location $PSScriptRoot 4 | $buildFile = Join-Path "$PSScriptRoot" "Run.ps1" 5 | 6 | &"$buildFile" @args 7 | -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | source="${BASH_SOURCE[0]}" 4 | 5 | # resolve $SOURCE until the file is no longer a symlink 6 | while [[ -h $source ]]; do 7 | scriptroot="$( cd -P "$( dirname "$source" )" && pwd )" 8 | source="$(readlink "$source")" 9 | 10 | # if $source was a relative symlink, we need to resolve it relative to the path where the 11 | # symlink file was located 12 | [[ $source != /* ]] && source="$scriptroot/$source" 13 | done 14 | 15 | scriptroot="$( cd -P "$( dirname "$source" )" && pwd )" 16 | "$scriptroot/eng/common/build.sh" --build --restore $@ 17 | -------------------------------------------------------------------------------- /docs/amazon.md: -------------------------------------------------------------------------------- 1 | # Integrating the Amazon Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddAmazon(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | 12 | // Optionally request the user's postal code, if needed 13 | options.Scope.Add("postal_code"); 14 | options.Fields.Add("postal_code"); 15 | }); 16 | ``` 17 | 18 | ## Required Additional Settings 19 | 20 | _None._ 21 | 22 | ## Optional Settings 23 | 24 | | Property Name | Property Type | Description | Default Value | 25 | |:-:|:-:|:-:|:-:| 26 | | `Fields` | `ISet` | The fields of the user's profile to return. | `[ "email", "name", "user_id" ]` | 27 | -------------------------------------------------------------------------------- /docs/amocrm.md: -------------------------------------------------------------------------------- 1 | # Integrating the amoCRM Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddAmoCrm(options => 8 | { 9 | options.Account = "my-account"; 10 | options.ClientId = "client-id"; 11 | options.ClientSecret = "client-secret"; 12 | }); 13 | ``` 14 | 15 | ## Required Additional Settings 16 | 17 | | Property Name | Property Type | Description | Default Value | 18 | |:--|:--|:--|:--| 19 | | `Account` | `string?` | The amoCRM account. | `example` | 20 | 21 | ## Optional Settings 22 | 23 | _None._ 24 | -------------------------------------------------------------------------------- /docs/battlenet.md: -------------------------------------------------------------------------------- 1 | # Integrating the BattleNet Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddBattleNet(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | options.Region = BattleNetAuthenticationRegion.Europe; 12 | }); 13 | ``` 14 | 15 | ## Required Additional Settings 16 | 17 | | Property Name | Property Type | Description | Default Value | 18 | |:--|:--|:--|:--| 19 | | `Region` | [`BattleNetAuthenticationRegion`](https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers/blob/dev/src/AspNet.Security.OAuth.BattleNet/BattleNetAuthenticationRegion.cs "BattleNetAuthenticationRegion enumeration") | The region used to determine the appropriate API endpoints. | `BattleNetAuthenticationRegion.America` | 20 | 21 | ## Optional Settings 22 | 23 | _None._ 24 | -------------------------------------------------------------------------------- /docs/bitbucket.md: -------------------------------------------------------------------------------- 1 | # Integrating the Bitbucket Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddBitbucket(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `UserEmailsEndpoint` | `string` | The address of the endpoint exposing the email addresses associated with the logged in user. | `BitbucketAuthenticationDefaults.UserEmailsEndpoint` | 23 | -------------------------------------------------------------------------------- /docs/digitalocean.md: -------------------------------------------------------------------------------- 1 | # Integrating the DigitalOcean Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddDigitalOcean(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | _None._ 21 | -------------------------------------------------------------------------------- /docs/eveonline.md: -------------------------------------------------------------------------------- 1 | # Integrating the EVE Online Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddEVEOnline(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `Server` | [`EVEOnlineAuthenticationServer`](https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers/blob/dev/src/AspNet.Security.OAuth.EVEOnline/EVEOnlineAuthenticationServer.cs "EVEOnlineAuthenticationServer enumeration") | The EVE Online server to use. | `EVEOnlineAuthenticationServer.Tranquility` | 23 | -------------------------------------------------------------------------------- /docs/foursquare.md: -------------------------------------------------------------------------------- 1 | # Integrating the Foursquare Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddFoursquare(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `ApiVersion` | `string` | The API version to use. | `"20150927"` | 23 | -------------------------------------------------------------------------------- /docs/gitcode.md: -------------------------------------------------------------------------------- 1 | # Integrating the GitCode Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddGitCode(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | 12 | // GitCode does not support setting scopes via requests to the API. 13 | // The configuration of scopes (App permissions) are instead managed 14 | // within the OAuth app management in GitCode itself. 15 | }); 16 | ``` 17 | 18 | ## Required Additional Settings 19 | 20 | _None._ 21 | 22 | ## Optional Settings 23 | 24 | _None._ 25 | -------------------------------------------------------------------------------- /docs/gitee.md: -------------------------------------------------------------------------------- 1 | # Integrating the Gitee Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddGitee(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `UserEmailsEndpoint` | `string` | The address of the endpoint exposing the email addresses associated with the logged in user. | `GiteeAuthenticationDefaults.UserEmailsEndpoint` | 23 | -------------------------------------------------------------------------------- /docs/github.md: -------------------------------------------------------------------------------- 1 | # Integrating the GitHub Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddGitHub(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | 12 | // Optional domain name for GitHub Enterprise on-premises deployments 13 | options.EnterpriseDomain = "github.corp.local"; 14 | }); 15 | ``` 16 | 17 | ## Required Additional Settings 18 | 19 | _None._ 20 | 21 | ## Optional Settings 22 | 23 | | Property Name | Property Type | Description | Default Value | 24 | |:--|:--|:--|:--| 25 | | `EnterpriseDomain` | `string?` | The domain name to use for a GitHub Enterprise on-premises deployment. | `null` | 26 | | `UserEmailsEndpoint` | `string` | The address of the endpoint exposing the email addresses associated with the logged in user. | `GitHubAuthenticationDefaults.UserEmailsEndpoint` | 27 | -------------------------------------------------------------------------------- /docs/jumpcloud.md: -------------------------------------------------------------------------------- 1 | # Integrating the JumpCloud Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddJumpCloud(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | options.Domain = "oauth.id.jumpcloud.com"; 12 | }); 13 | ``` 14 | 15 | ## Required Additional Settings 16 | 17 | _None._ 18 | 19 | ## Optional Settings 20 | 21 | | Property Name | Property Type | Description | Default Value | 22 | |:--|:--|:--|:--| 23 | | `Domain` | `string?` | The JumpCloud domain to use for authentication. | `"oauth.id.jumpcloud.com"` | 24 | -------------------------------------------------------------------------------- /docs/kook.md: -------------------------------------------------------------------------------- 1 | # Integrating the KOOK Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddKook(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | 12 | // The scope get_user_info is added by default. 13 | // Please make sure the scope get_user_info is enabled in your KOOK developer center. 14 | // If you do not want to use the default scope indeed, remove it as shown below: 15 | // options.Scope.Remove("get_user_info"); 16 | }); 17 | ``` 18 | 19 | ## Required Additional Settings 20 | 21 | _None._ 22 | 23 | ## Optional Settings 24 | 25 | _None._ 26 | -------------------------------------------------------------------------------- /docs/kroger.md: -------------------------------------------------------------------------------- 1 | # Integrating the Kroger Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddKroger(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | 12 | // Optionally request other permissions 13 | // See https://developer.kroger.com/reference/#section/Authentication for details. 14 | options.Scope.Add("product.compact"); 15 | options.Scope.Add("cart.basic:write"); 16 | }); 17 | ``` 18 | 19 | ## Required Additional Settings 20 | 21 | _None._ 22 | 23 | ## Optional Settings 24 | 25 | _None._ -------------------------------------------------------------------------------- /docs/line.md: -------------------------------------------------------------------------------- 1 | # Integrating the Line Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddLine(options => 8 | { 9 | options.ClientId = "my-channel-id"; 10 | options.ClientSecret = "my-channel-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `Prompt` | `bool` | Used to force the consent screen to be displayed even if the user has already granted all requested permissions. | `false` | 23 | | `UserEmailsEndpoint` | `string` | The address of the endpoint exposing the email addresses associated with the logged in user. | `LineAuthenticationDefaults.UserEmailsEndpoint` | 24 | -------------------------------------------------------------------------------- /docs/linear.md: -------------------------------------------------------------------------------- 1 | # Integrating the Linear Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddLinear(options => 8 | { 9 | options.ClientId = configuration["Linear:ClientId"] ?? string.Empty; 10 | options.ClientSecret = configuration["Linear:ClientSecret"] ?? string.Empty; 11 | 12 | // 'read' scope is added by default. Add additional scopes required 13 | // options.Scope.Add("write"); 14 | 15 | // Additional authorization parameters can also be added 16 | // options.AdditionalAuthorizationParameters.Add("prompt", "consent"); 17 | }) 18 | ``` 19 | 20 | ## Required Additional Settings 21 | 22 | _None._ 23 | 24 | ## Optional Settings 25 | 26 | _None._ 27 | -------------------------------------------------------------------------------- /docs/miro.md: -------------------------------------------------------------------------------- 1 | # Integrating the Miro Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddMiro(options => 8 | { 9 | options.ClientId = configuration["Miro:ClientId"] ?? string.Empty; 10 | options.ClientSecret = configuration["Miro:ClientSecret"] ?? string.Empty; 11 | }) 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | _None._ 21 | 22 | ## Retrieving the user's email address 23 | 24 | The Miro provider does not return the user's email address, since the API endpoints to do that is available only on the Miro Enterprise plan. If you are on the Miro Enterprise plan, you can use the access token returned by the authentication flow to retrieve the user's email address yourself by following the Miro documentation for [getting the user info and email](https://developers.miro.com/docs/get-user-info-and-email). 25 | 26 | -------------------------------------------------------------------------------- /docs/moodle.md: -------------------------------------------------------------------------------- 1 | # Integrating the Moodle Provider 2 | 3 | Applies to the Moodle plugin [HIT-ReFreSH/moodle-local_oauth](https://github.com/HIT-ReFreSH/moodle-local_oauth). 4 | 5 | ## Example 6 | 7 | ```csharp 8 | services.AddAuthentication(options => /* Auth configuration */) 9 | .AddMoodle(options => 10 | { 11 | options.ClientId = "my-client-id"; 12 | options.ClientSecret = "my-client-secret"; 13 | options.Domain = "mymoodlesite.com"; 14 | }); 15 | ``` 16 | 17 | ## Required Additional Settings 18 | 19 | | Property Name | Property Type | Description | Default Value | 20 | |:--|:--|:--|:--| 21 | | `Domain` | `string?` | The Moodle domain (_Org URL_) of your site. For example: "mymoodlesite.com". | `null` | 22 | 23 | ## Optional Settings 24 | 25 | _None._ 26 | -------------------------------------------------------------------------------- /docs/odnoklassniki.md: -------------------------------------------------------------------------------- 1 | # Integrating the Odnoklassniki Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddOdnoklassniki(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | 13 | ``` 14 | 15 | ## Required Additional Settings 16 | 17 | _None._ 18 | 19 | ## Optional Settings 20 | 21 | | Property Name | Property Type | Description | Default Value | 22 | |:--|:--|:--|:--| 23 | | `PublicSecret` | `string?` | The Public App Key from the application registration email. | `null` | 24 | -------------------------------------------------------------------------------- /docs/okta.md: -------------------------------------------------------------------------------- 1 | # Integrating the Okta Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddOkta(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | options.Domain = "https://dev-000000.okta.com"; 12 | }); 13 | ``` 14 | 15 | ## Required Additional Settings 16 | 17 | | Property Name | Property Type | Description | Default Value | 18 | |:--|:--|:--|:--| 19 | | `AuthorizationServer` | `string` | The Okta custom authorization server to use for authentication. | `default` | 20 | | `Domain` | `string?` | The Okta domain (_Org URL_) to use for authentication. This can be found on the `/dev/console` page of the Okta admin portal for your account. | `null` | 21 | 22 | ## Optional Settings 23 | 24 | _None._ 25 | -------------------------------------------------------------------------------- /docs/patreon.md: -------------------------------------------------------------------------------- 1 | # Integrating the Patreon Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddPatreon(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `Fields` | `ISet` | The list of fields to retrieve from the user information endpoint. | `[ "first_name", "full_name", "last_name", "thumb_url", "url" ]` | 23 | | `Includes` | `ISet` | The list of related data to include from the user information endpoint. | `[]` | 24 | -------------------------------------------------------------------------------- /docs/qq.md: -------------------------------------------------------------------------------- 1 | # Integrating the QQ Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddQQ(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `ApplyForUnionId` | `bool` | Set if the UnionID should be retrieved and put into user claims. | `false` | 23 | | `UserIdentificationEndpoint` | `string` | The address of the endpoint to use for user identification. | `QQAuthenticationDefaults.UserIdentificationEndpoint` | 24 | -------------------------------------------------------------------------------- /docs/reddit.md: -------------------------------------------------------------------------------- 1 | # Integrating the Reddit Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddReddit(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `UserAgent` | `string?` | The `User-Agent` string to use for Reddit API requests. | `null` | 23 | -------------------------------------------------------------------------------- /docs/salesforce.md: -------------------------------------------------------------------------------- 1 | # Integrating the Salesforce Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddSalesforce(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `Environment` | [`SalesforceAuthenticationEnvironment`](https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers/blob/dev/src/AspNet.Security.OAuth.Salesforce/SalesforceAuthenticationEnvironment.cs "SalesforceAuthenticationEnvironment enumeration") | The Salesforce environment to use. | `SalesforceAuthenticationEnvironment.Production` | 23 | -------------------------------------------------------------------------------- /docs/smartsheet.md: -------------------------------------------------------------------------------- 1 | # Integrating the Smartsheet Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddSmartsheet(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | 12 | // At least one scope must be passed 13 | options.Scope.Add("READ_SHEETS"); 14 | }); 15 | ``` 16 | 17 | ## Required Additional Settings 18 | 19 | _None._ 20 | 21 | ## Optional Settings 22 | 23 | _None._ 24 | -------------------------------------------------------------------------------- /docs/snapchat.md: -------------------------------------------------------------------------------- 1 | # Integrating the Snapchat Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | public void ConfigureServices(IServiceCollection services) 7 | { 8 | services.AddAuthentication(options => /* Auth configuration */) 9 | .AddSnapchat(options => 10 | { 11 | options.ClientId = "my-client-id"; 12 | options.ClientSecret = "my-client-secret"; 13 | }); 14 | } 15 | 16 | public void Configure(IApplicationBuilder app) 17 | { 18 | app.UseAuthentication(); 19 | app.UseAuthorization(); 20 | } 21 | ``` 22 | 23 | ## Required Additional Settings 24 | 25 | _None._ 26 | -------------------------------------------------------------------------------- /docs/stackexchange.md: -------------------------------------------------------------------------------- 1 | # Integrating the StackExchange Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddStackExchange(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | options.RequestKey = "my-request-key"; 12 | }); 13 | ``` 14 | 15 | ## Required Additional Settings 16 | 17 | | Property Name | Property Type | Description | 18 | |:--|:--|:--|:--| 19 | | `RequestKey` | `string` | The application request key. | 20 | 21 | ## Optional Settings 22 | 23 | | Property Name | Property Type | Description | Default Value | 24 | |:--|:--|:--|:--| 25 | | `Site` | `string` | The site the users being authenticated are registered with. | `"StackOverflow"` | 26 | -------------------------------------------------------------------------------- /docs/trakt.md: -------------------------------------------------------------------------------- 1 | # Integrating the Trakt Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddTrakt(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `ApiVersion` | `string` | The Trakt API version to use. | `"2"` | 23 | -------------------------------------------------------------------------------- /docs/trovo.md: -------------------------------------------------------------------------------- 1 | # Integrating the Trovo Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddTrovo(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | _None._ -------------------------------------------------------------------------------- /docs/twitch.md: -------------------------------------------------------------------------------- 1 | # Integrating the Twitch Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddTwitch(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `ForceVerify` | `bool` | Whether to send the `force_verify=true` query string parameter with authenticating users. | `false` | 23 | -------------------------------------------------------------------------------- /docs/vkontakte.md: -------------------------------------------------------------------------------- 1 | # Integrating the Vkontakte Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddVkontakte(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `ApiVersion` | `string` | The API version to use. | `"5.131"` | 23 | | `Fields` | `ISet` | The [profile fields](https://vk.com/dev/fields "User object") to return from the API. | `[ "id", "first_name", "last_name", "photo_rec", "photo", "hash" ]` | 24 | -------------------------------------------------------------------------------- /docs/webflow.md: -------------------------------------------------------------------------------- 1 | # Integrating the Webflow Provider 2 | 3 | > [!IMPORTANT] 4 | > When you create the OAuth application in Webflow, make sure to enable the Authorized user (Read-only) [scope](https://developers.webflow.com/v2.0.0/data/reference/scopes). If this scope is not enabled, retrieving the user information will fail, resulting in the entire authorization flow to fail. 5 | 6 | ## Example 7 | 8 | ```csharp 9 | services.AddAuthentication(options => /* Auth configuration */) 10 | .AddWebflow(options => 11 | { 12 | options.ClientId = configuration["Webflow:ClientId"] ?? string.Empty; 13 | options.ClientSecret = configuration["Webflow:ClientSecret"] ?? string.Empty; 14 | }) 15 | ``` 16 | 17 | ## Required Additional Settings 18 | 19 | _None._ 20 | 21 | ## Optional Settings 22 | 23 | _None._ 24 | -------------------------------------------------------------------------------- /docs/weibo.md: -------------------------------------------------------------------------------- 1 | # Integrating the Weibo Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddWeibo(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | }); 12 | ``` 13 | 14 | ## Required Additional Settings 15 | 16 | _None._ 17 | 18 | ## Optional Settings 19 | 20 | | Property Name | Property Type | Description | Default Value | 21 | |:--|:--|:--|:--| 22 | | `UserEmailsEndpoint` | `string` | The address of the endpoint exposing the email addresses associated with the logged in user. | `WeiboAuthenticationDefaults.UserEmailsEndpoint` | 23 | -------------------------------------------------------------------------------- /docs/workweixin.md: -------------------------------------------------------------------------------- 1 | # Integrating the WorkWeixin Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddWorkWeixin(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | options.AgentId = "my-agent-id"; 12 | }); 13 | ``` 14 | 15 | ## Required Additional Settings 16 | 17 | 18 | | Property Name | Property Type | Description | Default Value | 19 | |:--|:--|:--|:--| 20 | | `AgentId` | `string` | Gets or sets the web application ID of the licensor. | `null` | 21 | 22 | 23 | ## Optional Settings 24 | 25 | | Property Name | Property Type | Description | Default Value | 26 | |:--|:--|:--|:--| 27 | | `UserIdentificationEndpoint` | `string` | The address of the endpoint to use for user identification. | `WorkWeixinAuthenticationDefaults.UserIdentificationEndpoint` | 28 | -------------------------------------------------------------------------------- /docs/xumm.md: -------------------------------------------------------------------------------- 1 | # Integrating the Xumm Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | public void ConfigureServices(IServiceCollection services) 7 | { 8 | services.AddAuthentication(options => /* Auth configuration */) 9 | .AddXumm(options => 10 | { 11 | options.ClientId = "my-api-key"; 12 | options.ClientSecret = "my-api-secret"; 13 | }); 14 | } 15 | 16 | public void Configure(IApplicationBuilder app) 17 | { 18 | app.UseAuthentication(); 19 | app.UseAuthorization(); 20 | } 21 | ``` 22 | 23 | ## Required Additional Settings 24 | 25 | _None._ 26 | -------------------------------------------------------------------------------- /docs/zendesk.md: -------------------------------------------------------------------------------- 1 | # Integrating the Zendesk Provider 2 | 3 | ## Example 4 | 5 | ```csharp 6 | services.AddAuthentication(options => /* Auth configuration */) 7 | .AddZendesk(options => 8 | { 9 | options.ClientId = "my-client-id"; 10 | options.ClientSecret = "my-client-secret"; 11 | options.Domain = "https://glowingwaffle.zendesk.com"; 12 | }); 13 | ``` 14 | 15 | ## Required Additional Settings 16 | 17 | | Property Name | Property Type | Description | Default Value | 18 | |:--|:--|:--|:--| 19 | | `Domain` | `string?` | The Zendesk domain (_Account URL_) to use for authentication. | `null` | 20 | 21 | ## Optional Settings 22 | 23 | _None._ 24 | -------------------------------------------------------------------------------- /eng/Signing.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | true 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /eng/Version.Details.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | https://github.com/dotnet/arcade 10 | dd332f2d4e21daa8b79f84251ab156af9a0b11b2 11 | 12 | 13 | 14 | 15 | https://github.com/dotnet/arcade 16 | dd332f2d4e21daa8b79f84251ab156af9a0b11b2 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /eng/common/BuildConfiguration/build-configuration.json: -------------------------------------------------------------------------------- 1 | { 2 | "RetryCountLimit": 1, 3 | "RetryByAnyError": false 4 | } 5 | -------------------------------------------------------------------------------- /eng/common/CIBuild.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0Build.ps1""" -restore -build -test -sign -pack -publish -ci %*" -------------------------------------------------------------------------------- /eng/common/PSScriptAnalyzerSettings.psd1: -------------------------------------------------------------------------------- 1 | @{ 2 | IncludeRules=@('PSAvoidUsingCmdletAliases', 3 | 'PSAvoidUsingWMICmdlet', 4 | 'PSAvoidUsingPositionalParameters', 5 | 'PSAvoidUsingInvokeExpression', 6 | 'PSUseDeclaredVarsMoreThanAssignments', 7 | 'PSUseCmdletCorrectly', 8 | 'PSStandardDSCFunctionsInResource', 9 | 'PSUseIdenticalMandatoryParametersForDSC', 10 | 'PSUseIdenticalParametersForDSC') 11 | } -------------------------------------------------------------------------------- /eng/common/build.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0build.ps1""" %*" 3 | exit /b %ErrorLevel% 4 | -------------------------------------------------------------------------------- /eng/common/cibuild.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | source="${BASH_SOURCE[0]}" 4 | 5 | # resolve $SOURCE until the file is no longer a symlink 6 | while [[ -h $source ]]; do 7 | scriptroot="$( cd -P "$( dirname "$source" )" && pwd )" 8 | source="$(readlink "$source")" 9 | 10 | # if $source was a relative symlink, we need to resolve it relative to the path where 11 | # the symlink file was located 12 | [[ $source != /* ]] && source="$scriptroot/$source" 13 | done 14 | scriptroot="$( cd -P "$( dirname "$source" )" && pwd )" 15 | 16 | . "$scriptroot/build.sh" --restore --build --test --pack --publish --ci $@ -------------------------------------------------------------------------------- /eng/common/cross/arm/tizen/tizen.patch: -------------------------------------------------------------------------------- 1 | diff -u -r a/usr/lib/libc.so b/usr/lib/libc.so 2 | --- a/usr/lib/libc.so 2016-12-30 23:00:08.284951863 +0900 3 | +++ b/usr/lib/libc.so 2016-12-30 23:00:32.140951815 +0900 4 | @@ -2,4 +2,4 @@ 5 | Use the shared library, but some functions are only in 6 | the static library, so try that secondarily. */ 7 | OUTPUT_FORMAT(elf32-littlearm) 8 | -GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-armhf.so.3 ) ) 9 | +GROUP ( libc.so.6 libc_nonshared.a AS_NEEDED ( ld-linux-armhf.so.3 ) ) 10 | -------------------------------------------------------------------------------- /eng/common/cross/arm64/tizen/tizen.patch: -------------------------------------------------------------------------------- 1 | diff -u -r a/usr/lib/libc.so b/usr/lib/libc.so 2 | --- a/usr/lib64/libc.so 2016-12-30 23:00:08.284951863 +0900 3 | +++ b/usr/lib64/libc.so 2016-12-30 23:00:32.140951815 +0900 4 | @@ -2,4 +2,4 @@ 5 | Use the shared library, but some functions are only in 6 | the static library, so try that secondarily. */ 7 | OUTPUT_FORMAT(elf64-littleaarch64) 8 | -GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib/ld-linux-aarch64.so.1 ) ) 9 | +GROUP ( libc.so.6 libc_nonshared.a AS_NEEDED ( ld-linux-aarch64.so.1 ) ) 10 | -------------------------------------------------------------------------------- /eng/common/cross/armel/tizen/tizen.patch: -------------------------------------------------------------------------------- 1 | diff -u -r a/usr/lib/libc.so b/usr/lib/libc.so 2 | --- a/usr/lib/libc.so 2016-12-30 23:00:08.284951863 +0900 3 | +++ b/usr/lib/libc.so 2016-12-30 23:00:32.140951815 +0900 4 | @@ -2,4 +2,4 @@ 5 | Use the shared library, but some functions are only in 6 | the static library, so try that secondarily. */ 7 | OUTPUT_FORMAT(elf32-littlearm) 8 | -GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux.so.3 ) ) 9 | +GROUP ( libc.so.6 libc_nonshared.a AS_NEEDED ( ld-linux.so.3 ) ) 10 | -------------------------------------------------------------------------------- /eng/common/cross/riscv64/tizen/tizen.patch: -------------------------------------------------------------------------------- 1 | diff -u -r a/usr/lib/libc.so b/usr/lib/libc.so 2 | --- a/usr/lib64/libc.so 2016-12-30 23:00:08.284951863 +0900 3 | +++ b/usr/lib64/libc.so 2016-12-30 23:00:32.140951815 +0900 4 | @@ -2,4 +2,4 @@ 5 | Use the shared library, but some functions are only in 6 | the static library, so try that secondarily. */ 7 | OUTPUT_FORMAT(elf64-littleriscv) 8 | -GROUP ( /lib64/libc.so.6 /usr/lib64/libc_nonshared.a AS_NEEDED ( /lib64/ld-linux-riscv64-lp64d.so.1 ) ) 9 | +GROUP ( libc.so.6 libc_nonshared.a AS_NEEDED ( ld-linux-riscv64-lp64d.so.1 ) ) 10 | -------------------------------------------------------------------------------- /eng/common/cross/x86/tizen/tizen.patch: -------------------------------------------------------------------------------- 1 | diff -u -r a/usr/lib/libc.so b/usr/lib/libc.so 2 | --- a/usr/lib/libc.so 2016-12-30 23:00:08.284951863 +0900 3 | +++ b/usr/lib/libc.so 2016-12-30 23:00:32.140951815 +0900 4 | @@ -2,4 +2,4 @@ 5 | Use the shared library, but some functions are only in 6 | the static library, so try that secondarily. */ 7 | OUTPUT_FORMAT(elf32-i386) 8 | -GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux.so.2 ) ) 9 | +GROUP ( libc.so.6 libc_nonshared.a AS_NEEDED ( ld-linux.so.2 ) ) 10 | -------------------------------------------------------------------------------- /eng/common/dotnet-install.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0dotnet-install.ps1""" %*" -------------------------------------------------------------------------------- /eng/common/dotnet-install.ps1: -------------------------------------------------------------------------------- 1 | [CmdletBinding(PositionalBinding=$false)] 2 | Param( 3 | [string] $verbosity = 'minimal', 4 | [string] $architecture = '', 5 | [string] $version = 'Latest', 6 | [string] $runtime = 'dotnet', 7 | [string] $RuntimeSourceFeed = '', 8 | [string] $RuntimeSourceFeedKey = '' 9 | ) 10 | 11 | . $PSScriptRoot\tools.ps1 12 | 13 | $dotnetRoot = Join-Path $RepoRoot '.dotnet' 14 | 15 | $installdir = $dotnetRoot 16 | try { 17 | if ($architecture -and $architecture.Trim() -eq 'x86') { 18 | $installdir = Join-Path $installdir 'x86' 19 | } 20 | InstallDotNet $installdir $version $architecture $runtime $true -RuntimeSourceFeed $RuntimeSourceFeed -RuntimeSourceFeedKey $RuntimeSourceFeedKey 21 | } 22 | catch { 23 | Write-Host $_.ScriptStackTrace 24 | Write-PipelineTelemetryError -Category 'InitializeToolset' -Message $_ 25 | ExitWithExitCode 1 26 | } 27 | 28 | ExitWithExitCode 0 29 | -------------------------------------------------------------------------------- /eng/common/enable-cross-org-publishing.ps1: -------------------------------------------------------------------------------- 1 | param( 2 | [string] $token 3 | ) 4 | 5 | 6 | . $PSScriptRoot\pipeline-logging-functions.ps1 7 | 8 | # Write-PipelineSetVariable will no-op if a variable named $ci is not defined 9 | # Since this script is only ever called in AzDO builds, just universally set it 10 | $ci = $true 11 | 12 | Write-PipelineSetVariable -Name 'VSS_NUGET_ACCESSTOKEN' -Value $token -IsMultiJobVariable $false 13 | Write-PipelineSetVariable -Name 'VSS_NUGET_URI_PREFIXES' -Value 'https://dnceng.pkgs.visualstudio.com/;https://pkgs.dev.azure.com/dnceng/;https://devdiv.pkgs.visualstudio.com/;https://pkgs.dev.azure.com/devdiv/' -IsMultiJobVariable $false 14 | -------------------------------------------------------------------------------- /eng/common/generate-sbom-prep.ps1: -------------------------------------------------------------------------------- 1 | Param( 2 | [Parameter(Mandatory=$true)][string] $ManifestDirPath # Manifest directory where sbom will be placed 3 | ) 4 | 5 | . $PSScriptRoot\pipeline-logging-functions.ps1 6 | 7 | Write-Host "Creating dir $ManifestDirPath" 8 | # create directory for sbom manifest to be placed 9 | if (!(Test-Path -path $ManifestDirPath)) 10 | { 11 | New-Item -ItemType Directory -path $ManifestDirPath 12 | Write-Host "Successfully created directory $ManifestDirPath" 13 | } 14 | else{ 15 | Write-PipelineTelemetryError -category 'Build' "Unable to create sbom folder." 16 | } 17 | 18 | Write-Host "Updating artifact name" 19 | $artifact_name = "${env:SYSTEM_STAGENAME}_${env:AGENT_JOBNAME}_SBOM" -replace '["/:<>\\|?@*"() ]', '_' 20 | Write-Host "Artifact name $artifact_name" 21 | Write-Host "##vso[task.setvariable variable=ARTIFACT_NAME]$artifact_name" 22 | -------------------------------------------------------------------------------- /eng/common/init-tools-native.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | powershell -NoProfile -NoLogo -ExecutionPolicy ByPass -command "& """%~dp0init-tools-native.ps1""" %*" 3 | exit /b %ErrorLevel% -------------------------------------------------------------------------------- /eng/common/internal/Directory.Build.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | false 6 | false 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /eng/common/internal/NuGet.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /eng/common/msbuild.ps1: -------------------------------------------------------------------------------- 1 | [CmdletBinding(PositionalBinding=$false)] 2 | Param( 3 | [string] $verbosity = 'minimal', 4 | [bool] $warnAsError = $true, 5 | [bool] $nodeReuse = $true, 6 | [switch] $ci, 7 | [switch] $prepareMachine, 8 | [switch] $excludePrereleaseVS, 9 | [string] $msbuildEngine = $null, 10 | [Parameter(ValueFromRemainingArguments=$true)][String[]]$extraArgs 11 | ) 12 | 13 | . $PSScriptRoot\tools.ps1 14 | 15 | try { 16 | if ($ci) { 17 | $nodeReuse = $false 18 | } 19 | 20 | MSBuild @extraArgs 21 | } 22 | catch { 23 | Write-Host $_.ScriptStackTrace 24 | Write-PipelineTelemetryError -Category 'Build' -Message $_ 25 | ExitWithExitCode 1 26 | } 27 | 28 | ExitWithExitCode 0 -------------------------------------------------------------------------------- /eng/common/post-build/nuget-validation.ps1: -------------------------------------------------------------------------------- 1 | # This script validates NuGet package metadata information using this 2 | # tool: https://github.com/NuGet/NuGetGallery/tree/jver-verify/src/VerifyMicrosoftPackage 3 | 4 | param( 5 | [Parameter(Mandatory=$true)][string] $PackagesPath # Path to where the packages to be validated are 6 | ) 7 | 8 | # `tools.ps1` checks $ci to perform some actions. Since the post-build 9 | # scripts don't necessarily execute in the same agent that run the 10 | # build.ps1/sh script this variable isn't automatically set. 11 | $ci = $true 12 | $disableConfigureToolsetImport = $true 13 | . $PSScriptRoot\..\tools.ps1 14 | 15 | try { 16 | & $PSScriptRoot\nuget-verification.ps1 ${PackagesPath}\*.nupkg 17 | } 18 | catch { 19 | Write-Host $_.ScriptStackTrace 20 | Write-PipelineTelemetryError -Category 'NuGetValidation' -Message $_ 21 | ExitWithExitCode 1 22 | } 23 | -------------------------------------------------------------------------------- /eng/common/sdl/NuGet.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /eng/common/sdl/packages.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /eng/key.snk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet-contrib/AspNet.Security.OAuth.Providers/840e14b677661eb16ed3ef728f6ce442238a3e38/eng/key.snk -------------------------------------------------------------------------------- /global.json: -------------------------------------------------------------------------------- 1 | { 2 | "sdk": { 3 | "version": "9.0.300", 4 | "allowPrerelease": true, 5 | "rollForward": "major" 6 | }, 7 | 8 | "tools": { 9 | "dotnet": "9.0.300" 10 | }, 11 | 12 | "msbuild-sdks": { 13 | "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.24453.1", 14 | "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.24453.1" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /package-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet-contrib/AspNet.Security.OAuth.Providers/840e14b677661eb16ed3ef728f6ce442238a3e38/package-icon.png -------------------------------------------------------------------------------- /samples/Mvc.Client/Controllers/HomeController.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | using Microsoft.AspNetCore.Mvc; 8 | 9 | namespace Mvc.Client.Controllers; 10 | 11 | public class HomeController : Controller 12 | { 13 | [HttpGet("~/")] 14 | public ActionResult Index() => View(); 15 | } 16 | -------------------------------------------------------------------------------- /samples/Mvc.Client/Program.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace Mvc.Client; 8 | 9 | public static class Program 10 | { 11 | public static void Main(string[] args) => 12 | CreateHostBuilder(args).Build().Run(); 13 | 14 | public static IHostBuilder CreateHostBuilder(string[] args) => 15 | Host.CreateDefaultBuilder(args) 16 | .ConfigureWebHostDefaults( 17 | (webBuilder) => webBuilder.UseStartup()); 18 | } 19 | -------------------------------------------------------------------------------- /samples/Mvc.Client/Properties/launchSettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "iisSettings": { 3 | "windowsAuthentication": false, 4 | "anonymousAuthentication": true, 5 | "iisExpress": { 6 | "applicationUrl": "https://localhost:44318/", 7 | "sslPort": 44318 8 | } 9 | }, 10 | "profiles": { 11 | "IIS Express": { 12 | "commandName": "IISExpress", 13 | "launchBrowser": true, 14 | "environmentVariables": { 15 | "ASPNETCORE_ENVIRONMENT": "Development" 16 | } 17 | }, 18 | "web": { 19 | "commandName": "Project", 20 | "launchBrowser": true, 21 | "launchUrl": "https://localhost:5001/", 22 | "environmentVariables": { 23 | "ASPNETCORE_ENVIRONMENT": "Development" 24 | } 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /samples/Mvc.Client/Views/Authentication/SignIn.cshtml: -------------------------------------------------------------------------------- 1 | @using Microsoft.AspNetCore.Authentication 2 | @model AuthenticationScheme[] 3 | 4 |
5 |

Authentication

6 |

Sign in using one of these external providers:

7 | 8 | @foreach (var scheme in Model!.OrderBy(p => p.DisplayName)) 9 | { 10 |
11 | 12 | 13 | 14 | 15 |
16 | } 17 |
18 | -------------------------------------------------------------------------------- /samples/Mvc.Client/Views/Home/Index.cshtml: -------------------------------------------------------------------------------- 1 | 
2 | @if (User?.Identity?.IsAuthenticated ?? false) 3 | { 4 |

Welcome, @User.Identity.Name

5 | 6 |

7 | @foreach (var claim in Context.User.Claims) 8 | { 9 |

@claim.Type: @claim.Value
10 | } 11 |

12 | 13 | Sign out 14 | } 15 | 16 | else 17 | { 18 |

Welcome, anonymous

19 | Sign in 20 | } 21 |
22 | -------------------------------------------------------------------------------- /samples/Mvc.Client/Views/_ViewStart.cshtml: -------------------------------------------------------------------------------- 1 | @{ 2 | Layout = "_Layout"; 3 | } 4 | -------------------------------------------------------------------------------- /samples/Mvc.Client/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "Dropbox": { 3 | "ClientId": "jpk24g2uxfxe939", 4 | "ClientSecret": "qbxvkjk5la7mjp6" 5 | }, 6 | "GitHub": { 7 | "ClientId": "49e302895d8b09ea5656", 8 | "ClientSecret": "98f1bf028608901e9df91d64ee61536fe562064b" 9 | }, 10 | "Google": { 11 | "ClientId": "560027070069-37ldt4kfuohhu3m495hk2j4pjp92d382.apps.googleusercontent.com", 12 | "ClientSecret": "n2Q-GEw9RQjzcRbU3qhfTj8f" 13 | }, 14 | "Twitter": { 15 | "ClientId": "6XaCTaLbMqfj6ww3zvZ5g", 16 | "ClientSecret": "Il2eFzGIrYhz6BWjYhVXBPQSfZuS4xoHpSSyD9PI" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /samples/Mvc.Client/web.config: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /samples/Mvc.Client/wwwroot/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet-contrib/AspNet.Security.OAuth.Providers/840e14b677661eb16ed3ef728f6ce442238a3e38/samples/Mvc.Client/wwwroot/favicon.ico -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.AdobeIO/AdobeIOAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.AdobeIO; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class AdobeIOAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string AccountType = "urn:adobeio:account_type"; 17 | public const string EmailVerified = "urn:adobeio:email_verified"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.AdobeIO/AspNet.Security.OAuth.AdobeIO.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling AdobeIO authentication. 9 | biltongza 10 | adobe;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Airtable/AspNet.Security.OAuth.Airtable.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Airtable authentication. 9 | Denys Goncharenko 10 | aspnetcore;authentication;oauth;airtable;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Alipay/AspNet.Security.OAuth.Alipay.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Alipay authentication. 9 | LeaFrock;vicente.yu 10 | alipay;alibaba;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Amazon/AspNet.Security.OAuth.Amazon.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Amazon authentication. 9 | Martin Costello 10 | amazon;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.AmoCrm/AspNet.Security.OAuth.AmoCrm.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling amoCRM authentication. 9 | Denis Ivanov 10 | amocrm;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Apple/AppleAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Apple; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class AppleAuthenticationConstants 13 | { 14 | /// 15 | /// Default value for the token audience. 16 | /// 17 | public const string Audience = "https://appleid.apple.com"; 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Apple/AspNet.Security.OAuth.Apple.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security provider enabling Apple authentication. 9 | Martin Costello 10 | apple;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.ArcGIS/AspNet.Security.OAuth.ArcGIS.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling ArcGIS authentication. 9 | Dave Timmins;Chino Chang 10 | arcgis;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Asana/AspNet.Security.OAuth.Asana.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Asana authentication. 9 | Adam Reisinger;Chino Chang 10 | asana;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Atlassian/AspNet.Security.OAuth.Atlassian.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 9.1.0 5 | $(DefaultNetCoreTargetFramework) 6 | 7 | 8 | 9 | ASP.NET Core security middleware enabling Atlassian authentication. 10 | smnsht 11 | atlassian;aspnetcore;authentication;oauth;security 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Autodesk/AspNet.Security.OAuth.Autodesk.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Autodesk authentication. 9 | Jeff Hotchkiss;Chino Chang 10 | aspnetcore;authentication;autodesk;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Autodesk/AutodeskAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Autodesk; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class AutodeskAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string EmailVerified = "urn:autodesk:emailverified"; 17 | public const string TwoFactorEnabled = "urn:autodesk:twofactorenabled"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Baidu/AspNet.Security.OAuth.Baidu.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Baidu authentication. 9 | Chino Chang 10 | aspnetcore;authentication;baidu;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Baidu/BaiduAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Baidu; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class BaiduAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Portrait = "urn:baidu:portrait"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Basecamp/AspNet.Security.OAuth.Basecamp.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Basecamp authentication. 9 | Luke Fulliton 10 | basecamp;37signal;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.BattleNet/AspNet.Security.OAuth.BattleNet.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Battle.net authentication. 9 | Gekctek;Chino Chang 10 | aspnetcore;authentication;battlenet;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Bilibili/AspNet.Security.OAuth.Bilibili.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 9.4.0 5 | $(DefaultNetCoreTargetFramework) 6 | 7 | 8 | 9 | ASP.NET Core security middleware enabling Bilibili authentication. 10 | Loongle Tse 11 | bilibili;aspnetcore;authentication;oauth;security 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Bilibili/BilibiliAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Bilibili; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class BilibiliAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Face = "urn:bilibili:face"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Bitbucket/AspNet.Security.OAuth.Bitbucket.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Bitbucket authentication. 9 | Steffen Wenz;Chino Chang 10 | aspnetcore;authentication;bitbucket;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Bitbucket/BitbucketAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Bitbucket; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class BitbucketAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string DisplayName = "urn:bitbucket:name"; 17 | public const string Website = "urn:bitbucket:url"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Buffer/AspNet.Security.OAuth.Buffer.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Buffer authentication. 9 | Jerrie Pelser;Chino Chang 10 | aspnetcore;authentication;buffer;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Calendly/AspNet.Security.OAuth.Calendly.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Calendly authentication. 9 | Denys Goncharenko 10 | aspnetcore;authentication;oauth;calendly;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.CiscoSpark/AspNet.Security.OAuth.CiscoSpark.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Cisco Spark authentication. 9 | Robert Shade;Chino Chang 10 | aspnetcore;authentication;cisco;ciscospark;oauth;security;spark 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Coinbase/AspNet.Security.OAuth.Coinbase.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | levimatheri 9 | ASP.NET Core security middleware enabling Coinbase authentication. 10 | aspnetcore;authentication;coinbase;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Contentful/AspNet.Security.OAuth.Contentful.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 9.3.0 5 | $(DefaultNetCoreTargetFramework) 6 | 7 | 8 | 9 | ASP.NET Core security middleware enabling Contentful authentication. 10 | Jerrie Pelser 11 | contentful;aspnetcore;authentication;oauth;security 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Deezer/AspNet.Security.OAuth.Deezer.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Deezer authentication. 9 | Tolbxela 10 | aspnetcore;authentication;deezer;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.DeviantArt/AspNet.Security.OAuth.DeviantArt.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling DeviantArt authentication. 9 | Tommy Parnell;Chino Chang 10 | aspnetcore;authentication;deviantart;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.DeviantArt/DeviantArtAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.DeviantArt; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class DeviantArtAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Username = "urn:deviantart:name"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.DigitalOcean/AspNet.Security.OAuth.DigitalOcean.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling DigitalOcean authentication. 9 | Elan Hasson 10 | DigitalOcean;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Discord/AspNet.Security.OAuth.Discord.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Discord authentication. 9 | Anders Blankholm;Chino Chang 10 | aspnetcore;authentication;discord;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Docusign/AspNet.Security.OAuth.Docusign.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Docusign authentication. 9 | Denys Goncharenko 10 | aspnetcore;authentication;oauth;docusign;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Docusign/DocusignAuthenticationEnvironment.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Docusign; 8 | 9 | /// 10 | /// Used to determine which environment to use. 11 | /// 12 | public enum DocusignAuthenticationEnvironment 13 | { 14 | Production = 0, 15 | Development = 1 16 | } 17 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Dropbox/AspNet.Security.OAuth.Dropbox.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Dropbox authentication. 9 | S Hana;Chino Chang 10 | aspnetcore;authentication;dropbox;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.EVEOnline/AspNet.Security.OAuth.EVEOnline.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling EVEOnline authentication. 9 | Mariusz Zieliński;Chino Chang;Matthew Moore 10 | aspnetcore;authentication;eveonline;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.EVEOnline/EVEOnlineAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.EVEOnline; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class EVEOnlineAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Scopes = "urn:eveonline:scopes"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.EVEOnline/EVEOnlineAuthenticationServer.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth; 8 | 9 | /// 10 | /// Defines a list of servers used to determine the appropriate 11 | /// API endpoints when communicating with EVEOnline. 12 | /// 13 | public enum EVEOnlineAuthenticationServer 14 | { 15 | /// 16 | /// Live server. 17 | /// 18 | Tranquility = 0, 19 | 20 | /// 21 | /// Test server. 22 | /// 23 | Singularity = 1 24 | } 25 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Ebay/AspNet.Security.OAuth.Ebay.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling eBay authentication. 9 | Nicola Biancolini 10 | ebay;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.ExactOnline/AspNet.Security.OAuth.ExactOnline.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling ExactOnline authentication. 9 | Floris Westerman 10 | aspnetcore;authentication;exactonline;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.ExactOnline/ExactOnlineAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.ExactOnline; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class ExactOnlineAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Division = "urn:exactonline:division"; 17 | public const string Company = "urn:exactonline:company"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Feishu/AspNet.Security.OAuth.Feishu.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Feishu authentication. 9 | Vicente Yu 10 | aspnetcore;authentication;feishu;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Feishu/FeishuAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Feishu; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class FeishuAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string UnionId = "urn:feishu:unionid"; 17 | public const string Avatar = "urn:feishu:avatar"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Fitbit/AspNet.Security.OAuth.Fitbit.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Fitbit authentication. 9 | Jason Loeffler;Chino Chang 10 | aspnetcore;authentication;fitbit;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Fitbit/FitbitAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Fitbit; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class FitbitAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Avatar = "urn:fitbit:avatar"; 17 | public const string Avatar150 = "urn:fitbit:avatar150"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Foursquare/AspNet.Security.OAuth.Foursquare.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Foursquare authentication. 9 | Abhinav Nigam;Chino Chang 10 | aspnetcore;authentication;foursquare;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.GitCode/AspNet.Security.OAuth.GitCode.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9.1.0 5 | $(DefaultNetCoreTargetFramework) 6 | 7 | 8 | 9 | ASP.NET Core security middleware enabling GitCode authentication. 10 | Gehongyan 11 | aspnetcore;authentication;gitcode;oauth;security 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.GitHub/AspNet.Security.OAuth.GitHub.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling GitHub authentication. 9 | Kévin Chalet;Jerrie Pelser 10 | aspnetcore;authentication;github;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.GitHub/GitHubAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.GitHub; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class GitHubAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Name = "urn:github:name"; 17 | public const string Url = "urn:github:url"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.GitLab/AspNet.Security.OAuth.GitLab.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling GitLab authentication. 9 | twsl 10 | aspnetcore;authentication;gitlab;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.GitLab/GitLabAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.GitLab; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class GitLabAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Name = "urn:gitlab:name"; 17 | public const string Avatar = "urn:gitlab:avatar"; 18 | public const string Url = "urn:gitlab:url"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Gitee/AspNet.Security.OAuth.Gitee.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Gitee authentication. 9 | HahaMango 10 | aspnetcore;authentication;gitee;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Gitee/GiteeAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Gitee; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class GiteeAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Name = "urn:gitee:name"; 17 | public const string Url = "urn:gitee:url"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Harvest/AspNet.Security.OAuth.Harvest.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Harvest authentication. 9 | Volodymyr Baydalka 10 | aspnetcore;authentication;harvest;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.HealthGraph/AspNet.Security.OAuth.HealthGraph.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling HealthGraph authentication. 9 | Adam Reisinger;Chino Chang 10 | aspnetcore;authentication;healthgraph;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Huawei/AspNet.Security.OAuth.Huawei.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Huawei authentication. 9 | Vicente Yu 10 | aspnetcore;authentication;huawei;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Huawei/HuaweiAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Huawei; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class HuaweiAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Avatar = "urn:huawei:avatar"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.HubSpot/AspNet.Security.OAuth.HubSpot.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling HubSpot authentication. 9 | Shayaan Ahmed Farooqi 10 | hubspot;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.HubSpot/HubSpotAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.HubSpot; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class HubSpotAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string HubId = "urn:HubSpot:hub_id"; 17 | public const string UserId = "urn:HubSpot:user_id"; 18 | public const string AppId = "urn:HubSpot:app_id"; 19 | public const string HubDomain = "urn:HubSpot:hub_domain"; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Imgur/AspNet.Security.OAuth.Imgur.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Imgur authentication. 9 | Albireo;Chino Chang 10 | aspnetcore;authentication;imgur;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Imgur/ImgurAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Imgur; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class ImgurAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Bio = "urn:imgur:bio"; 17 | public const string Created = "urn:imgur:created"; 18 | public const string ProExpiration = "urn:imgur:proexpiration"; 19 | public const string Reputation = "urn:imgur:reputation"; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Instagram/AspNet.Security.OAuth.Instagram.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Instagram authentication. 9 | Yannic Smeets;Chino Chang 10 | aspnetcore;authentication;instagram;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.JumpCloud/AspNet.Security.OAuth.JumpCloud.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling JumpCloud authentication. 9 | AaronSadlerUK 10 | jumpcloud;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.KakaoTalk/AspNet.Security.OAuth.KakaoTalk.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling KakaoTalk authentication. 9 | wplong11 10 | aspnetcore;authentication;kakaotalk;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Keycloak/AspNet.Security.OAuth.Keycloak.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security provider enabling Keycloak authentication. 9 | Anto Subash 10 | keycloak;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Keycloak/KeycloakAuthenticationAccessType.cs: -------------------------------------------------------------------------------- 1 | // Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 2 | // See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 3 | // for more information concerning the license and the contributors participating to this project. 4 | 5 | namespace AspNet.Security.OAuth.Keycloak; 6 | 7 | public enum KeycloakAuthenticationAccessType 8 | { 9 | Confidential, 10 | Public, 11 | BearerOnly, 12 | } 13 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Kook/AspNet.Security.OAuth.Kook.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling KOOK authentication. 9 | Gehongyan 10 | aspnetcore;authentication;kaiheila;kook;kookapp;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Kroger/AspNet.Security.OAuth.Kroger.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Kroger authentication. 9 | Luke Moore 10 | aspnetcore;authentication;kroger;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Lichess/AspNet.Security.OAuth.Lichess.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Lichess authentication. 9 | Michael Tanczos 10 | aspnetcore;authentication;lichess;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Line/AspNet.Security.OAuth.Line.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Line authentication. 9 | CoCo Lin 10 | aspnetcore;authentication;line;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Line/LineAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Line; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class LineAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string PictureUrl = "urn:line:picture_url"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Linear/AspNet.Security.OAuth.Linear.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 9.2.0 5 | $(DefaultNetCoreTargetFramework) 6 | 7 | 8 | 9 | ASP.NET Core security middleware enabling Linear authentication. 10 | Jerrie Pelser 11 | aspnetcore;authentication;linear;oauth;security 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Linear/LinearAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Linear; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class LinearAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string OrganizationId = "urn:linear:organization_id"; 17 | 18 | public const string OrganizationName = "urn:linear:organization_name"; 19 | 20 | public const string OrganizationUrlKey = "urn:linear:organization_urlkey"; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.LinkedIn/AspNet.Security.OAuth.LinkedIn.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling LinkedIn authentication. 9 | Kévin Chalet;Jerrie Pelser;Alvin Stanescu 10 | aspnetcore;authentication;linkedin;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.MailChimp/AspNet.Security.OAuth.MailChimp.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling MailChimp authentication. 9 | Igor Simovic;Hayden Hancock 10 | aspnetcore;authentication;mailchimp;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.MailRu/AspNet.Security.OAuth.MailRu.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling MailRu authentication. 9 | Dmitry Vostryakov 10 | aspnetcore;authentication;mailru;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.MailRu/MailRuAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.MailRu; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class MailRuAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string ImageUrl = "urn:mailru:profileimage"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Miro/AspNet.Security.OAuth.Miro.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 9.2.0 5 | $(DefaultNetCoreTargetFramework) 6 | 7 | 8 | 9 | ASP.NET Core security middleware enabling Miro authentication. 10 | Jerrie Pelser 11 | aspnetcore;authentication;miro;oauth;security 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Miro/MiroAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Miro; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class MiroAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string OrganizationId = "urn:miro:organization_id"; 17 | 18 | public const string OrganizationName = "urn:miro:organization_name"; 19 | 20 | public const string TeamId = "urn:miro:team_id"; 21 | 22 | public const string TeamName = "urn:miro:team_name"; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Mixcloud/AspNet.Security.OAuth.Mixcloud.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Mixcloud authentication. 9 | Michael DeMond 10 | aspnetcore;authentication;oauth;security;mixcloud 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Moodle/AspNet.Security.OAuth.Moodle.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Moodle authentication. 9 | HIT-ReFreSH 10 | aspnetcore;authentication;moodle;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Moodle/MoodleAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Moodle; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class MoodleAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string IdNumber = "urn:moodle:idnumber"; 17 | public const string MoodleId = "urn:moodle:id"; 18 | public const string Language = "urn:moodle:lang"; 19 | public const string Description = "urn:moodle:desc"; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Myob/AspNet.Security.OAuth.Myob.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling MYOB authentication. 9 | Jordan Knight;Chino Chang 10 | accountright;aspnetcore;authentication;essentials;exo;myob;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Naver/AspNet.Security.OAuth.Naver.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Naver authentication. 9 | christallire 10 | aspnetcore;authentication;naver;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.NetEase/AspNet.Security.OAuth.NetEase.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling NetEase authentication. 9 | HahaMango 10 | aspnetcore;authentication;netease;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Nextcloud/AspNet.Security.OAuth.Nextcloud.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Nextcloud authentication. 9 | Dennis "zAfLu" Everts 10 | aspnetcore;authentication;oauth;security;nextcloud 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Notion/AspNet.Security.OAuth.Notion.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Notion authentication. 9 | Vyacheslav Mostovoy 10 | aspnetcore;authentication;oauth;security;notion 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Notion/NotionAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Notion; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class NotionAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string WorkspaceName = "urn:notion:workspace_name"; 17 | public const string WorkspaceIcon = "urn:notion:workspace_icon"; 18 | public const string BotId = "urn:notion:bot_id"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Odnoklassniki/AspNet.Security.OAuth.Odnoklassniki.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Odnoklassniki authentication. 9 | Dmitry Vostryakov 10 | aspnetcore;authentication;odnoklassniki;ok;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Odnoklassniki/OdnoklassnikiAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Odnoklassniki; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class OdnoklassnikiAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Image1 = "urn:ok:image1"; 17 | public const string Image2 = "urn:ok:image2"; 18 | public const string Image3 = "urn:ok:image3"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Okta/AspNet.Security.OAuth.Okta.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security provider enabling Okta authentication. 9 | Martin Costello 10 | okta;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Onshape/AspNet.Security.OAuth.Onshape.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Onshape authentication. 9 | Tathagata Chakraborty;Chino Chang 10 | aspnetcore;authentication;oauth;onshape;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Patreon/AspNet.Security.OAuth.Patreon.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Patreon authentication. 9 | Antoine Bichon;Chino Chang 10 | aspnetcore;authentication;oauth;patreon;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Patreon/PatreonAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Patreon; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class PatreonAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Avatar = "urn:patreon:avatar"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Paypal/AspNet.Security.OAuth.Paypal.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Paypal authentication. 9 | Yannic Smeets;Chino Chang 10 | aspnetcore;authentication;oauth;paypal;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.PingOne/AspNet.Security.OAuth.PingOne.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security provider enabling PingOne authentication. 9 | Drew Killion 10 | pingone;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Pipedrive/AspNet.Security.OAuth.Pipedrive.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Pipedrive authentication. 9 | Denys Goncharenko 10 | aspnetcore;authentication;oauth;pipedrive;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.QQ/AspNet.Security.OAuth.QQ.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling QQ authentication. 9 | zhengchun;huww98 10 | aspnetcore;authentication;oauth;qq;security;tencent 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.QuickBooks/AspNet.Security.OAuth.QuickBooks.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling QuickBooks authentication. 9 | RekingShui 10 | quickbooks;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.QuickBooks/QuickBooksAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.QuickBooks; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class QuickBooksAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string AccountType = "urn:quickbooks:appenvrionment"; 17 | public const string EmailVerified = "urn:quickbooks:email_verified"; 18 | public const string PhoneNumberVerified = "urn:quickbooks:phone_number_verified"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Reddit/AspNet.Security.OAuth.Reddit.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Reddit authentication. 9 | Tommy Parnell;Chino Chang 10 | aspnetcore;authentication;oauth;reddit;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Reddit/RedditAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Reddit; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class RedditAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Over18 = "urn:reddit:over18"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Salesforce/AspNet.Security.OAuth.Salesforce.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Salesforce authentication. 9 | Andrew Mattie;Chino Chang 10 | aspnetcore;authentication;oauth;salesforce;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Salesforce/SalesforceAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Salesforce; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class SalesforceAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Email = "urn:salesforce:email"; 17 | public const string RestUrl = "urn:salesforce:rest_url"; 18 | public const string ThumbnailPhoto = "urn:salesforce:thumbnail_photo"; 19 | public const string UtcOffset = "urn:salesforce:utc_offset"; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Salesforce/SalesforceAuthenticationEnvironment.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Salesforce; 8 | 9 | /// 10 | /// Defines a list of environments used to determine the appropriate 11 | /// OAuth2 endpoints when communicating with Salesforce. 12 | /// 13 | public enum SalesforceAuthenticationEnvironment 14 | { 15 | /// 16 | /// Use login.salesforce.com in the OAuth2 endpoints. 17 | /// 18 | Production = 0, 19 | 20 | /// 21 | /// Uses test.salesforce.com in the OAuth2 endpoints. 22 | /// 23 | Test = 1 24 | } 25 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.ServiceChannel/AspNet.Security.OAuth.ServiceChannel.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling ServiceChannel authentication. 9 | Hang Yang 10 | servicechannel;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.ServiceChannel/ServiceChannelAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.ServiceChannel; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class ServiceChannelAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string ProviderId = "urn:servicechannel:providerId"; 17 | public const string ProviderName = "urn:servicechannel:providerName"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Shopify/AspNet.Security.OAuth.Shopify.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Shopify authentication. 9 | Chris Boaro;Sebastien Biaudet 10 | aspnetcore;authentication;oauth;salesforce;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Slack/AspNet.Security.OAuth.Slack.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Slack authentication. 9 | Michael Knowles;Chino Chang 10 | aspnetcore;authentication;oauth;security;slack 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Slack/SlackAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Slack; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class SlackAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string TeamId = "urn:slack:team_id"; 17 | public const string TeamName = "urn:slack:team_name"; 18 | public const string UserId = "urn:slack:user_id"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Smartsheet/AspNet.Security.OAuth.Smartsheet.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Smartsheet authentication. 9 | Steve Albison 10 | aspnetcore;authentication;oauth;smartsheet;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Smartsheet/SmartsheetAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Smartsheet; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class SmartsheetAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string ProfileImage = "urn:smartsheet:profileimage"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Snapchat/AspNet.Security.OAuth.Snapchat.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Snapchat authentication. 9 | Nikola Maksimovic 10 | aspnetcore;authentication;oauth;security;snapchat 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Snapchat/SnapchatAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Snapchat; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class SnapchatAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string TeamId = "organization_id"; 17 | public const string MemberStatus = "member_status"; 18 | public const string UserId = "id"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.SoundCloud/AspNet.Security.OAuth.SoundCloud.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling SoundCloud authentication. 9 | Adam Reisinger;Chino Chang 10 | aspnetcore;authentication;oauth;security;soundcloud 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.SoundCloud/SoundCloudAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.SoundCloud; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class SoundCloudAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string City = "urn:soundcloud:city"; 17 | public const string FullName = "urn:soundcloud:fullname"; 18 | public const string ProfileUrl = "urn:soundcloud:profileurl"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Spotify/AspNet.Security.OAuth.Spotify.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Spotify authentication. 9 | Adam Reisinger;0xNF 10 | aspnetcore;authentication;oauth;security;spotify 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Spotify/SpotifyAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Spotify; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class SpotifyAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Product = "urn:spotify:product"; 17 | public const string ProfilePicture = "urn:spotify:profilepicture"; 18 | public const string Url = "urn:spotify:url"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.StackExchange/AspNet.Security.OAuth.StackExchange.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling StackExchange authentication. 9 | Andrew Lock;Chino Chang 10 | aspnetcore;authentication;stackexchange;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.StackExchange/StackExchangeAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.StackExchange; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class StackExchangeAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Link = "urn:stackexchange:link"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Strava/AspNet.Security.OAuth.Strava.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Strava authentication. 9 | James Holcomb;Jack Thorpe 10 | aspnetcore;authentication;oauth;security;strava 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Streamlabs/AspNet.Security.OAuth.Streamlabs.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | 9 | ASP.NET Core security middleware enabling Streamlabs authentication. 10 | Sertay Kabuk 11 | aspnetcore;authentication;oauth;security;streamlabs 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.SuperOffice/AspNet.Security.OAuth.SuperOffice.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling SuperOffice authentication. 9 | Anthony Yates 10 | superoffice;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.SuperOffice/SuperOfficeAuthenticationEnvironment.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.SuperOffice; 8 | 9 | /// 10 | /// Used to map usage to specific online environment, i.e. development, stage or production. 11 | /// 12 | public enum SuperOfficeAuthenticationEnvironment 13 | { 14 | Development, 15 | Stage, 16 | Production 17 | } 18 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Trakt/AspNet.Security.OAuth.Trakt.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Trakt authentication. 9 | TheUltimateC0der 10 | aspnetcore;authentication;oauth;security;trakt 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Trakt/TraktAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Trakt; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class TraktAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Vip = "urn:trakt:vip"; 17 | public const string VipEp = "urn:trakt:vip_ep"; 18 | public const string Private = "urn:trakt:private"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Trovo/AspNet.Security.OAuth.Trovo.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Trovo authentication. 9 | Albert Zakiev;Chino Chang 10 | aspnetcore;authentication;oauth;security;trovo 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Trovo/TrovoAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Trovo; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public class TrovoAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string ChannelId = "urn:trovo:channelid"; 17 | public const string ProfilePic = "urn:trovo:profilepic"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Twitch/AspNet.Security.OAuth.Twitch.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Twitch authentication. 9 | Tommy Parnell;Chino Chang 10 | aspnetcore;authentication;oauth;security;twitch 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Twitter/AspNet.Security.OAuth.Twitter.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Twitter authentication. 9 | Martin Costello 10 | aspnetcore;authentication;oauth;security;twitter 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Twitter/TwitterAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Twitter; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class TwitterAuthenticationConstants 13 | { 14 | /// 15 | /// Contains claim types specific to Twitter. 16 | /// 17 | public static class Claims 18 | { 19 | /// 20 | /// The claim for the friendly name of a user, as shown on their profile. 21 | /// 22 | public const string Name = "urn:twitter:name"; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Typeform/AspNet.Security.OAuth.Typeform.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Typeform authentication. 9 | Denys Goncharenko 10 | aspnetcore;authentication;oauth;typeform;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Untappd/AspNet.Security.OAuth.Untappd.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Untappd authentication. 9 | Albert Zakiev;Chino Chang 10 | aspnetcore;authentication;untappd;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Untappd/UntappdAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Untappd; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class UntappdAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Avatar = "urn:untappd:link"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Vimeo/AspNet.Security.OAuth.Vimeo.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Vimeo authentication. 9 | Adam Reisinger;Chino Chang 10 | aspnetcore;authentication;oauth;security;vimeo 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Vimeo/VimeoAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Vimeo; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class VimeoAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string FullName = "urn:vimeo:fullname"; 17 | public const string ProfileUrl = "urn:vimeo:profileurl"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.VisualStudio/AspNet.Security.OAuth.VisualStudio.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Visual Studio Online authentication. 9 | Albert Zakiev;Chino Chang 10 | aspnetcore;authentication;oauth;security;visualstudio 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.VkId/AspNet.Security.OAuth.VkId.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling VK ID authentication. 9 | hscokies 10 | aspnetcore;authentication;oauth;security;vkontakte;vkid 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.VkId/VkIdAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.VkId; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class VkIdAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Avatar = "urn:vkid:avatar:link"; 17 | public const string IsVerified = "urn:vkid:verified"; 18 | } 19 | 20 | public static class AuthenticationProperties 21 | { 22 | public const string DeviceId = "DeviceId"; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Vkontakte/AspNet.Security.OAuth.Vkontakte.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Vkontakte authentication. 9 | Albert Zakiev 10 | aspnetcore;authentication;oauth;security;vkontakte 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Vkontakte/VkontakteAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Vkontakte; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class VkontakteAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string PhotoUrl = "urn:vkontakte:photo:link"; 17 | public const string ThumbnailUrl = "urn:vkontakte:photo_thumb:link"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Webflow/AspNet.Security.OAuth.Webflow.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 9.2.0 5 | $(DefaultNetCoreTargetFramework) 6 | 7 | 8 | 9 | ASP.NET Core security middleware enabling Webflow authentication. 10 | Jerrie Pelser 11 | aspnetcore;authentication;webflow;oauth;security 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Weibo/AspNet.Security.OAuth.Weibo.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Weibo authentication. 9 | zhengchun;Chino Chang 10 | aspnetcore;authentication;oauth;security;weibo 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Weixin/AspNet.Security.OAuth.Weixin.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Weixin authentication. 9 | zhengchun;Chino Chang 10 | aspnetcore;authentication;oauth;security;weixin 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.WordPress/AspNet.Security.OAuth.WordPress.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling WordPress authentication. 9 | Kévin Chalet;Jerrie Pelser;Chino Chang 10 | aspnetcore;authentication;oauth;security;wordpress 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.WorkWeixin/AspNet.Security.OAuth.WorkWeixin.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling WorkWeixin\WeCom authentication. 9 | wangqianlong 10 | aspnetcore;authentication;oauth;security;workweixin;wecom;tencent 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.WorkWeixin/WorkWeixinAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.WorkWeixin; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class WorkWeixinAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Avatar = "urn:workweixin:avatar"; 17 | public const string Mobile = "urn:workweixin:mobile"; 18 | public const string Alias = "urn:workweixin:alias"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Xero/AspNet.Security.OAuth.Xero.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Xero authentication. 9 | Albert Zakiev 10 | xero;aspnetcore;authentication;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Xero/XeroAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Xero; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class XeroAuthenticationConstants 13 | { 14 | public static class ClaimNames 15 | { 16 | /// 17 | /// Unique user identifier. 18 | /// 19 | public const string UserId = "xero_userid"; 20 | 21 | /// 22 | /// User email address. 23 | /// 24 | public const string Email = "email"; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Xumm/AspNet.Security.OAuth.Xumm.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Xumm authentication. 9 | Dominique Blomsma 10 | aspnetcore;authentication;oauth;security;xumm 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Xumm/XummAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Xumm; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class XummAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string Picture = "urn:xumm:picture"; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Yahoo/AspNet.Security.OAuth.Yahoo.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Yahoo authentication. 9 | Kévin Chalet;Jerrie Pelser;Chino Chang 10 | aspnetcore;authentication;oauth;security;yahoo 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Yahoo/YahooAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Yahoo; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class YahooAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string FamilyName = "urn:yahoo:familyname"; 17 | public const string GivenName = "urn:yahoo:givenname"; 18 | public const string Picture = "urn:yahoo:picture"; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Yammer/AspNet.Security.OAuth.Yammer.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Yammer authentication. 9 | Albert Zakiev;Chino Chang 10 | aspnetcore;authentication;oauth;security;yammer 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Yammer/YammerAuthenticationConstants.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Yammer; 8 | 9 | /// 10 | /// Contains constants specific to the . 11 | /// 12 | public static class YammerAuthenticationConstants 13 | { 14 | public static class Claims 15 | { 16 | public const string JobTitle = "urn:yammer:job_title"; 17 | public const string WebUrl = "urn:yammer:link"; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Yandex/AspNet.Security.OAuth.Yandex.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Yandex authentication. 9 | Dmitry Popov;Chino Chang 10 | aspnetcore;authentication;oauth;security;yandex 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Zalo/AspNet.Security.OAuth.Zalo.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Zalo authentication. 9 | HoangITK 10 | aspnetcore;authentication;oauth;security;zalo 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Zendesk/AspNet.Security.OAuth.Zendesk.csproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Zendesk authentication. 9 | Levi Muriuki 10 | aspnetcore;authentication;oauth;security;zendesk 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Zoho/AspNet.Security.OAuth.Zoho.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Zoho authentication. 9 | Denys Goncharenko 10 | aspnetcore;authentication;oauth;zoho;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/AspNet.Security.OAuth.Zoom/AspNet.Security.OAuth.Zoom.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(DefaultNetCoreTargetFramework) 5 | 6 | 7 | 8 | ASP.NET Core security middleware enabling Zoom authentication. 9 | Christian Oluwawibe 10 | aspnetcore;authentication;zoom;oauth;security 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Amazon/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://api.amazon.com/auth/o2/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://api.amazon.com/user/profile?fields=email,name,user_id,postal_code", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "user_id": "my-id", 20 | "name": "John Smith", 21 | "email": "john@john-smith.local", 22 | "postal_code": "90210" 23 | } 24 | } 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Apple/TestKeys.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Apple; 8 | 9 | internal static class TestKeys 10 | { 11 | internal static async Task> GetPrivateKeyAsync(CancellationToken cancellationToken = default) 12 | => (await File.ReadAllTextAsync(Path.Combine("Apple", "test.p8"), cancellationToken)).AsMemory(); 13 | } 14 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Apple/test.p8: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIGTAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBHkwdwIBAQQgU208KCg/doqiSzsVF5sknVtYSgt8/3oiYGbvryIRrzSgCgYIKoZIzj0DAQehRANCAAQfrvDWizEnWAzB2Hx2r/NyvIBO6KGBDL7wkZoKnz4Sm4+1P1dhD9fVEhbsdoq9RKEf8dvzTOZMaC/iLqZFKSN6 3 | -----END PRIVATE KEY----- -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Apple/test.pfx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet-contrib/AspNet.Security.OAuth.Providers/840e14b677661eb16ed3ef728f6ce442238a3e38/test/AspNet.Security.OAuth.Providers.Tests/Apple/test.pfx -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/ArcGIS/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://www.arcgis.com/sharing/rest/oauth2/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://www.arcgis.com/sharing/rest/community/self?f=json&token=secret-access-token", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "username": "my-id", 20 | "fullName": "John Smith", 21 | "email": "john@john-smith.local" 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Asana/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://app.asana.com/-/oauth_token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://app.asana.com/api/1.0/users/me", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "data": { 20 | "id": "my-id", 21 | "name": "John Smith", 22 | "email": "john@john-smith.local" 23 | } 24 | } 25 | } 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Baidu/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://openapi.baidu.com/oauth/2.0/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://openapi.baidu.com/rest/2.0/passport/users/getLoggedInUser?access_token=secret-access-token", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "uid": "my-id", 20 | "uname": "my-name", 21 | "portrait": "my-portrait" 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Buffer/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://api.bufferapp.com/1/oauth2/token.json", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://api.bufferapp.com/1/user.json", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "id": "my-id" 20 | } 21 | } 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Calendly/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://auth.calendly.com/oauth/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "Bearer", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": 3600 13 | } 14 | }, 15 | { 16 | "uri": "https://api.calendly.com/users/me", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "resource": { 20 | "email": "testuser@example.com", 21 | "name": "Test User" 22 | } 23 | } 24 | } 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/CiscoSpark/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://api.ciscospark.com/v1/access_token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://api.ciscospark.com/v1/people/me", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "id": "my-id", 20 | "displayName": "John Smith", 21 | "emails": [ 22 | "john@john-smith.local" 23 | ] 24 | } 25 | } 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/DeviantArt/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://www.deviantart.com/oauth2/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://www.deviantart.com/api/v1/oauth2/user/whoami/", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "userid": "my-id", 20 | "username": "John Smith" 21 | } 22 | } 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Discord/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://discord.com/api/oauth2/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://discord.com/api/users/@me", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "id": "my-id", 20 | "username": "John Smith", 21 | "email": "john@john-smith.local", 22 | "discriminator": "1234", 23 | "avatar": "dummy-avatar-hash" 24 | } 25 | } 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Docusign/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://account.docusign.com/oauth/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "Bearer", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": 3600 13 | } 14 | }, 15 | { 16 | "uri": "https://account.docusign.com/oauth/userinfo", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "email": "testuser@example.com", 20 | "name": "User Name", 21 | "given_name": "User", 22 | "family_name": "Name" 23 | } 24 | } 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Ebay/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://api.ebay.com/identity/v1/oauth2/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "refresh_token_expires_in": 300, 13 | "expires_in": 300 14 | } 15 | }, 16 | { 17 | "uri": "https://apiz.ebay.com/commerce/identity/v1/user", 18 | "contentFormat": "json", 19 | "contentJson": { 20 | "userId": "my-id", 21 | "username": "John Smith" 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/HealthGraph/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://runkeeper.com/apps/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://api.runkeeper.com/user", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "userID": "my-id" 20 | } 21 | } 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Infrastructure/Program.cs: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0) 3 | * See https://github.com/aspnet-contrib/AspNet.Security.OAuth.Providers 4 | * for more information concerning the license and the contributors participating to this project. 5 | */ 6 | 7 | namespace AspNet.Security.OAuth.Infrastructure; 8 | 9 | /// 10 | /// A stub class representing the program class for the test application. 11 | /// 12 | public sealed class Program 13 | { 14 | } 15 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/MailChimp/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://login.mailchimp.com/oauth2/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://login.mailchimp.com/oauth2/metadata", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "accountname": "John Smith", 20 | "login": { 21 | "login_id": "my-id", 22 | "login_email": "john@john-smith.local" 23 | } 24 | } 25 | } 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Myob/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://secure.myob.com/oauth2/v1/authorize", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300", 13 | "user": { 14 | "uid": "my-id", 15 | "username": "John Smith" 16 | } 17 | } 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/NetEase/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "comment": "https://reg.163.com/help/help_oauth2.html", 6 | "uri": "https://reg.163.com/open/oauth2/token.do", 7 | "method": "POST", 8 | "contentFormat": "json", 9 | "contentJson": { 10 | "access_token": "secret-access-token", 11 | "expires_in": "5184000" 12 | } 13 | }, 14 | { 15 | "comment": "See https://reg.163.com/help/help_oauth2.html", 16 | "uri": "https://reg.163.com/open/oauth2/getUserInfo.do", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "userId":"820014421", 20 | "username":"urstest_mreg" 21 | } 22 | } 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Notion/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "comment": "https://developers.notion.com/docs/authorization#authorizing-public-integrations", 6 | "uri": "https://api.notion.com/v1/oauth/token", 7 | "method": "POST", 8 | "contentFormat": "json", 9 | "contentJson": { 10 | "access_token": "someaccesstoken", 11 | "workspace_name": "mif", 12 | "workspace_icon": "icon", 13 | "bot_id": "mybot" 14 | } 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Onshape/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://oauth.onshape.com/oauth/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://cad.onshape.com/api/users/sessioninfo", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "id": "my-id", 20 | "name": "John Smith" 21 | } 22 | } 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Reddit/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://www.reddit.com/api/v1/access_token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://oauth.reddit.com/api/v1/me", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "id": "my-id", 20 | "name": "John Smith", 21 | "over_18": true 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Typeform/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://api.typeform.com/oauth/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "Bearer", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": 3600 13 | } 14 | }, 15 | { 16 | "uri": "https://api.typeform.com/me", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "user_id": "id", 20 | "email": "testuser@example.com", 21 | "alias": "Test Name" 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Vimeo/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://api.vimeo.com/oauth/access_token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://api.vimeo.com/me", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "uri": "https://vimeo.local/my-id", 20 | "name": "John Smith", 21 | "link": "https://vimeo.local/JohnSmith" 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/VisualStudio/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://app.vssps.visualstudio.com/oauth2/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://app.vssps.visualstudio.com/_apis/profile/profiles/me", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "id": "my-id", 20 | "publicAlias": "John Smith", 21 | "displayName": "John", 22 | "emailAddress": "john@john-smith.local" 23 | } 24 | } 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Webflow/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://api.webflow.com/oauth/access_token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "bearer", 11 | "scope": "authorized_user:read" 12 | } 13 | }, 14 | { 15 | "uri": "https://api.webflow.com/v2/token/authorized_by", 16 | "contentFormat": "json", 17 | "contentJson": { 18 | "id": "545bbecb7bdd6769632504a7", 19 | "email": "some@email.com", 20 | "firstName": "Some", 21 | "lastName": "One" 22 | } 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Xumm/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://oauth2.xumm.app/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://oauth2.xumm.app/userinfo", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "sub": "my-r-address", 20 | "name": "John Smith", 21 | "email": "john.smith@xumm.me", 22 | "picture": "Avatar" 23 | } 24 | } 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Yandex/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://oauth.yandex.ru/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://login.yandex.ru/info", 17 | "contentFormat": "json", 18 | "contentJson": { 19 | "id": "my-id", 20 | "login": "John Smith", 21 | "first_name": "John", 22 | "last_name": "Smith", 23 | "emails": [ 24 | "john@john-smith.local" 25 | ] 26 | } 27 | } 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Zendesk/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://glowingwaffle.zendesk.com/oauth/tokens", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "access", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": "300" 13 | } 14 | }, 15 | { 16 | "uri": "https://glowingwaffle.zendesk.com/api/v2/users/me", 17 | "method": "GET", 18 | "contentFormat": "json", 19 | "contentJson": { 20 | "user": { 21 | "id": 35436, 22 | "name": "Johnny Agent", 23 | "email": "johnnyagent@zendesk.com" 24 | } 25 | } 26 | } 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/Zoho/bundle.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/justeat/httpclient-interception/master/src/HttpClientInterception/Bundles/http-request-bundle-schema.json", 3 | "items": [ 4 | { 5 | "uri": "https://accounts.zoho.com/oauth/v2/token", 6 | "method": "POST", 7 | "contentFormat": "json", 8 | "contentJson": { 9 | "access_token": "secret-access-token", 10 | "token_type": "Bearer", 11 | "refresh_token": "secret-refresh-token", 12 | "expires_in": 3600 13 | } 14 | }, 15 | { 16 | "uri": "https://accounts.zoho.com/oauth/user/info", 17 | "method": "GET", 18 | "contentFormat": "json", 19 | "contentJson": { 20 | "ZUID": "1234567890", 21 | "Email": "testuser@example.com", 22 | "Display_Name": "User Name" 23 | } 24 | } 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /test/AspNet.Security.OAuth.Providers.Tests/xunit.runner.json: -------------------------------------------------------------------------------- 1 | { 2 | "methodDisplay": "method" 3 | } 4 | --------------------------------------------------------------------------------