{"id":13602026,"url":"https://github.com/spring-projects/spring-authorization-server","last_synced_at":"2025-05-12T03:42:43.651Z","repository":{"id":36954129,"uuid":"248032165","full_name":"spring-projects/spring-authorization-server","owner":"spring-projects","description":"Spring Authorization Server","archived":false,"fork":false,"pushed_at":"2025-04-30T13:47:14.000Z","size":6150,"stargazers_count":4983,"open_issues_count":56,"forks_count":1327,"subscribers_count":197,"default_branch":"main","last_synced_at":"2025-05-01T10:06:12.679Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://spring.io/projects/spring-authorization-server","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spring-projects.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":"CONTRIBUTING.adoc","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-03-17T17:28:57.000Z","updated_at":"2025-04-30T18:04:17.000Z","dependencies_parsed_at":"2023-02-18T23:30:33.130Z","dependency_job_id":"87094c5e-d384-4541-8ac3-b21d5b1a5e8c","html_url":"https://github.com/spring-projects/spring-authorization-server","commit_stats":{"total_commits":1225,"total_committers":87,"mean_commits":"14.080459770114942","dds":0.3477551020408163,"last_synced_commit":"00f3874a80563930e88618f5f195b03695a800e6"},"previous_names":[],"tags_count":72,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spring-projects%2Fspring-authorization-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spring-projects%2Fspring-authorization-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spring-projects%2Fspring-authorization-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spring-projects%2Fspring-authorization-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spring-projects","download_url":"https://codeload.github.com/spring-projects/spring-authorization-server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251857024,"owners_count":21655121,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T18:01:12.018Z","updated_at":"2025-05-01T10:07:23.162Z","avatar_url":"https://github.com/spring-projects.png","language":"Java","readme":"= Spring Authorization Server image:https://badges.gitter.im/Join%20Chat.svg[Gitter,link=https://gitter.im/spring-projects/spring-security?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge] image:https://github.com/spring-projects/spring-authorization-server/actions/workflows/continuous-integration-workflow.yml/badge.svg[\"Build Status\", link=\"https://github.com/spring-projects/spring-authorization-server/actions/workflows/continuous-integration-workflow.yml\"] image:https://img.shields.io/badge/Revved%20up%20by-Develocity-06A0CE?logo=Gradle\u0026labelColor=02303A[\"Revved up by Develocity\", link=\"https://ge.spring.io/scans?\u0026search.rootProjectNames=spring-authorization-server\"]\n\nThe Spring Authorization Server project, led by the https://spring.io/projects/spring-security/[Spring Security] team, is focused on delivering https://datatracker.ietf.org/doc/html/draft-ietf-oauth-v2-1-07#section-1.1[OAuth 2.1 Authorization Server] support to the Spring community.\n\nThis project replaces the Authorization Server support provided by https://github.com/spring-attic/spring-security-oauth[Spring Security OAuth].\n\n== Feature Planning\nThis project uses https://docs.github.com/en/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects[GitHub Projects] to prioritize the feature roadmap and help organize the project plan.\nThe project board can be accessed https://github.com/orgs/spring-projects/projects/8[here].\n\nThe feature list can be viewed in the https://docs.spring.io/spring-authorization-server/reference/overview.html#feature-list[reference documentation].\n\n== Support Policy\nThe Spring Authorization Server project provides software support through the https://tanzu.vmware.com/support/oss[VMware Tanzu OSS support policy].\nhttps://tanzu.vmware.com/spring-runtime[Commercial support], which offers an extended support period, is also available from VMware.\n\n== Getting Started\nThe first place to start is to read the https://datatracker.ietf.org/doc/html/draft-ietf-oauth-v2-1-11[OAuth 2.1 Authorization Framework] to gain an in-depth understanding on how to build an Authorization Server.\nIt is a critically important first step as the implementation must conform to the specification defined in the OAuth 2.1 Authorization Framework and the https://github.com/spring-projects/spring-authorization-server/wiki/OAuth2-and-OIDC-Specifications[related specifications].\n\nThe second place to start is to become very familiar with the codebase in the following Spring Security modules:\n\n- https://github.com/spring-projects/spring-security/tree/main/oauth2/oauth2-core[OAuth 2.0 Core]\n- https://github.com/spring-projects/spring-security/tree/main/oauth2/oauth2-client[OAuth 2.0 Client]\n- https://github.com/spring-projects/spring-security/tree/main/oauth2/oauth2-resource-server[OAuth 2.0 Resource Server]\n- https://github.com/spring-projects/spring-security/tree/main/oauth2/oauth2-jose[OAuth 2.0 JOSE] (Javascript Object Signing and Encryption)\n\nA significant amount of effort was put into developing the https://spring.io/blog/2018/01/30/next-generation-oauth-2-0-support-with-spring-security[Next Generation OAuth 2.0 Support in Spring Security].\nThe goal is to leverage all the knowledge learned thus far and apply the same to the development of Spring Authorization Server.\n\nSubmitted work via pull requests should follow the same coding style/conventions and adopt the same or similar design patterns that have been established in Spring Security's OAuth 2.0 support.\n\n== Documentation\nBe sure to read the https://docs.spring.io/spring-authorization-server/reference/[Spring Authorization Server Reference] and https://docs.spring.io/spring-security/reference[Spring Security Reference], as well as the https://docs.spring.io/spring-security/reference/servlet/oauth2/index.html[OAuth 2.0 Reference], which describes the Client and Resource Server features available.\n\nJavaDoc is also available for the https://docs.spring.io/spring-authorization-server/docs/current/api/[Spring Authorization Server API] and https://docs.spring.io/spring-security/site/docs/current/api/[Spring Security API].\n\n== Code of Conduct\nPlease see our https://github.com/spring-projects/.github/blob/main/CODE_OF_CONDUCT.md[code of conduct].\n\n== Downloading Artifacts\nSee https://github.com/spring-projects/spring-framework/wiki/Spring-Framework-Artifacts[downloading Spring artifacts] for Maven repository information.\n\n== Building from Source\nSpring Authorization Server uses a https://gradle.org[Gradle]-based build system.\nIn the instructions below, https://vimeo.com/34436402[`./gradlew`] is invoked from the root of the source tree and serves as\na cross-platform, self-contained bootstrap mechanism for the build.\n\n=== Prerequisites\nhttps://help.github.com/set-up-git-redirect[Git] and the https://www.oracle.com/technetwork/java/javase/downloads[JDK17 build].\n\nBe sure that your `JAVA_HOME` environment variable points to the `jdk17` folder extracted from the JDK download.\n\n=== Check out sources\n[indent=0]\n----\ngit clone git@github.com:spring-projects/spring-authorization-server.git\n\n----\n\n=== Install all spring-\\* jars into your local Maven cache\n[indent=0]\n----\n./gradlew publishToMavenLocal\n----\n\n=== Compile and test; build all jars, distribution zips, and docs\n[indent=0]\n----\n./gradlew build\n----\n\nDiscover more commands with `./gradlew tasks`.\n\n== Getting Support\nCheck out the https://stackoverflow.com/questions/tagged/spring-authorization-server[Spring Authorization Server tags on Stack Overflow].\nhttps://spring.io/support[Commercial support] is available too.\n\n== Contributing\nhttps://help.github.com/articles/creating-a-pull-request[Pull requests] are welcome; see the link:CONTRIBUTING.adoc[contributor guidelines] for details.\n\n== License\nSpring Authorization Server is Open Source software released under the\nhttps://www.apache.org/licenses/LICENSE-2.0.html[Apache 2.0 license].\n","funding_links":[],"categories":["Java","安全","Back-End Development"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspring-projects%2Fspring-authorization-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspring-projects%2Fspring-authorization-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspring-projects%2Fspring-authorization-server/lists"}