├── apis-images ├── cool_app.png ├── surf-oauth.png ├── university.png ├── apis-client.png ├── surf-conext-logo.png ├── surf-oauth-client.png └── apis_deployment_diagram.png ├── apis-example-client-app ├── .gitignore ├── src │ ├── main │ │ ├── webapp │ │ │ ├── assets │ │ │ │ ├── bootstrap-2.0.2 │ │ │ │ │ ├── readme │ │ │ │ │ └── img │ │ │ │ │ │ ├── glyphicons-halflings.png │ │ │ │ │ │ └── glyphicons-halflings-white.png │ │ │ │ ├── img │ │ │ │ │ └── surf-oauth.png │ │ │ │ ├── awesome-1.0.0 │ │ │ │ │ └── font │ │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ │ ├── fontawesome-webfont.svgz │ │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ │ └── fontawesome-webfont.woff │ │ │ │ ├── css │ │ │ │ │ ├── client.css │ │ │ │ │ └── style-additional.css │ │ │ │ └── js │ │ │ │ │ └── client.js │ │ │ └── WEB-INF │ │ │ │ └── web.xml │ │ └── java │ │ │ └── org │ │ │ └── surfnet │ │ │ └── oaaas │ │ │ └── config │ │ │ └── SpringConfiguration.java │ └── test │ │ └── resources │ │ └── client.apis.properties └── README.md ├── apis-example-resource-server ├── .gitignore ├── university-foo-local.yml ├── README.md └── src │ └── main │ └── java │ └── org │ └── surfnet │ └── oaaas │ └── example │ └── api │ ├── UniversityFooConfiguration.java │ ├── domain │ ├── Student.java │ ├── Course.java │ └── University.java │ ├── AuthConfiguration.java │ └── UniversityFooService.java ├── apis-example-resource-server-war ├── .gitignore ├── src │ ├── main │ │ └── webapp │ │ │ ├── index.jsp │ │ │ └── WEB-INF │ │ │ └── web.xml │ └── test │ │ ├── resources │ │ └── apis-resource-server.properties │ │ └── java │ │ └── org │ │ └── surfnet │ │ └── oaaas │ │ └── it │ │ └── AuthorizationFilterIntegration.java ├── README.md └── pom.xml ├── apis-openconext-mock-war ├── README.md ├── src │ └── main │ │ ├── java │ │ └── org │ │ │ └── surfnet │ │ │ └── oaaas │ │ │ └── conext │ │ │ └── mock │ │ │ └── OpenConextServlet.java │ │ └── webapp │ │ └── WEB-INF │ │ └── web.xml └── pom.xml ├── apis-authorization-server-war ├── src │ ├── main │ │ ├── webapp │ │ │ ├── client │ │ │ │ ├── img │ │ │ │ │ ├── arrow.png │ │ │ │ │ ├── Untitled-3.png │ │ │ │ │ ├── surf-oauth.png │ │ │ │ │ ├── icon-example.png │ │ │ │ │ ├── dead-end-sign.jpg │ │ │ │ │ ├── icon-apps-blue.png │ │ │ │ │ ├── icon-apps-grey.png │ │ │ │ │ ├── icon-keys-blue.png │ │ │ │ │ ├── icon-keys-grey.png │ │ │ │ │ ├── icon-stats-blue.png │ │ │ │ │ ├── icon-stats-grey.png │ │ │ │ │ ├── side-nav-server.png │ │ │ │ │ ├── icon-servers-blue.png │ │ │ │ │ ├── icon-servers-grey.png │ │ │ │ │ ├── dead_end_no_consent.jpg │ │ │ │ │ ├── glyphicons-halflings.png │ │ │ │ │ ├── glyphicons-halflings-blue.png │ │ │ │ │ └── glyphicons-halflings-white.png │ │ │ │ ├── templates │ │ │ │ │ ├── tplAlert.html │ │ │ │ │ ├── tplResourceServerScope.html │ │ │ │ │ ├── tplClientRedirectUri.html │ │ │ │ │ ├── tplDeleteScopeWarning.html │ │ │ │ │ ├── tplClientAttribute.html │ │ │ │ │ ├── tplLanding.html │ │ │ │ │ ├── tplStatisticsGrid.html │ │ │ │ │ ├── tplAccessTokenGrid.html │ │ │ │ │ ├── tplClientGrid.html │ │ │ │ │ └── tplResourceServerGrid.html │ │ │ │ ├── js │ │ │ │ │ ├── jquery-extensions.js │ │ │ │ │ ├── main.js │ │ │ │ │ ├── statisticsGrid.js │ │ │ │ │ └── oauth.js │ │ │ │ └── client.html │ │ │ ├── index.html │ │ │ └── WEB-INF │ │ │ │ └── jsp │ │ │ │ ├── userconsent_denied.jsp │ │ │ │ └── login.jsp │ │ ├── resources │ │ │ ├── db │ │ │ │ └── migration │ │ │ │ │ └── mysql_content │ │ │ │ │ └── V1__auth-server-admin.sql │ │ │ └── spring-repositories.xml │ │ └── java │ │ │ └── org │ │ │ └── surfnet │ │ │ └── oaaas │ │ │ ├── logging │ │ │ └── LogbackConfigLocationListener.java │ │ │ └── config │ │ │ └── CasSpringConfiguration.java │ └── test │ │ ├── resources │ │ ├── apis.application.test.properties │ │ ├── mujina-idp.properties │ │ ├── jetty-context.xml │ │ ├── logback.xml │ │ └── apis-logback.xml │ │ └── java │ │ └── org │ │ └── surfnet │ │ └── oaaas │ │ ├── config │ │ └── SpringConfigTest.java │ │ ├── it │ │ ├── AbstractAuthorizationServerTest.java │ │ └── VerifyResourceTestIT.java │ │ └── selenium │ │ └── ImplicitGrantTestIT.java └── README.md ├── .gitignore ├── apis-authorization-server ├── src │ ├── test │ │ ├── resources │ │ │ ├── db │ │ │ │ └── migration │ │ │ │ │ ├── hsqldb │ │ │ │ │ ├── V2_2__insert_resowner.sql │ │ │ │ │ └── V2_1__add_resowner.sql │ │ │ │ │ └── mysql │ │ │ │ │ └── V1__auth-server-admin.sql │ │ │ └── logback.xml │ │ └── java │ │ │ └── org │ │ │ └── surfnet │ │ │ └── oaaas │ │ │ ├── model │ │ │ ├── AbstractEntityTest.java │ │ │ ├── ResourceOwnerTest.java │ │ │ └── ClientTest.java │ │ │ ├── repository │ │ │ ├── AccessTokenRepositoryTest.java │ │ │ └── ResourceOwnerRepositoryTest.java │ │ │ ├── resource │ │ │ └── resourceserver │ │ │ │ ├── ResourceServerResourceTest.java │ │ │ │ ├── AccessTokenResourceTest.java │ │ │ │ └── ResourceOwnerResourceTest.java │ │ │ └── auth │ │ │ └── LocalResourceOwnerAuthenticatorTest.java │ └── main │ │ ├── java │ │ └── org │ │ │ └── surfnet │ │ │ └── oaaas │ │ │ ├── cas │ │ │ ├── CasUser.java │ │ │ ├── CasAuthenticator.java │ │ │ └── PostCasAuthenticationFilter.java │ │ │ ├── auth │ │ │ ├── ResourceOwnerAuthenticator.java │ │ │ ├── LocalResourceOwnerAuthenticator.java │ │ │ ├── ValidationResponseException.java │ │ │ └── AbstractFilter.java │ │ │ ├── repository │ │ │ ├── ExceptionTranslator.java │ │ │ ├── ResourceOwnerRepository.java │ │ │ ├── AuthorizationRequestRepository.java │ │ │ ├── ResourceServerRepository.java │ │ │ ├── ClientRepository.java │ │ │ ├── OpenJPAExceptionTranslator.java │ │ │ └── AccessTokenRepository.java │ │ │ ├── noop │ │ │ ├── NoopResourceOwnerAuthenticator.java │ │ │ ├── NoopAdminAuthenticator.java │ │ │ ├── NoopAuthenticator.java │ │ │ └── NoopUserConsentHandler.java │ │ │ ├── support │ │ │ └── Cleaner.java │ │ │ └── model │ │ │ ├── validation │ │ │ ├── AbstractEntityValid.java │ │ │ └── AbstractEntityValidator.java │ │ │ ├── ValidationErrorResponse.java │ │ │ ├── ResourceOwner.java │ │ │ └── ErrorResponse.java │ │ └── resources │ │ └── META-INF │ │ └── persistence.xml └── README.md ├── apis-authorization-server-dist ├── README.md ├── src │ └── main │ │ ├── resources │ │ ├── context │ │ │ └── ROOT.xml │ │ └── tomcat │ │ │ ├── apis.application.properties.prod │ │ │ ├── apis.application.properties.acc │ │ │ ├── apis.application.properties.dev │ │ │ ├── apis.application.properties.test │ │ │ ├── apis.application.properties.vm │ │ │ ├── apis-logback.xml.acc │ │ │ ├── apis-logback.xml.dev │ │ │ ├── apis-logback.xml.prod │ │ │ ├── apis-logback.xml.test │ │ │ ├── apis-logback.xml.vm │ │ │ ├── surfconext.authn.properties.vm │ │ │ └── surfconext.authn.properties.acc │ │ └── assembly │ │ └── dep.xml ├── build.xml └── pom.xml ├── NOTICE ├── .editorconfig ├── jetty-connector ├── README.md ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── surfnet │ │ └── oaaas │ │ └── jetty │ │ └── SelectChannelConnectorHttps.java │ └── test │ └── java │ └── org │ └── surfnet │ └── oaaas │ └── jetty │ └── SelectChannelConnectorHttpsTest.java ├── apis-resource-server-library ├── README.md └── src │ ├── main │ └── java │ │ └── org │ │ └── surfnet │ │ └── oaaas │ │ ├── model │ │ └── TokenResponseCache.java │ │ └── auth │ │ └── ObjectMapperProvider.java │ └── test │ └── java │ └── org │ └── surfnet │ └── oaaas │ ├── auth │ └── principal │ │ ├── AuthenticatedPrincipalTest.java │ │ └── BasicAuthCredentialsTest.java │ └── model │ └── TokenResponseCacheTest.java ├── CHANGES.md └── apis-surfconext-authn ├── src └── test │ └── java │ └── org │ └── surfnet │ └── oaaas │ └── conext │ └── SAMLAuthenticatedPrincipalTest.java └── pom.xml /apis-images/cool_app.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-images/cool_app.png -------------------------------------------------------------------------------- /apis-images/surf-oauth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-images/surf-oauth.png -------------------------------------------------------------------------------- /apis-images/university.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-images/university.png -------------------------------------------------------------------------------- /apis-images/apis-client.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-images/apis-client.png -------------------------------------------------------------------------------- /apis-example-client-app/.gitignore: -------------------------------------------------------------------------------- 1 | .classpath 2 | .project 3 | .settings 4 | .idea 5 | *.iml 6 | target 7 | -------------------------------------------------------------------------------- /apis-example-resource-server/.gitignore: -------------------------------------------------------------------------------- 1 | .classpath 2 | .project 3 | .settings 4 | .idea 5 | *.iml 6 | target 7 | -------------------------------------------------------------------------------- /apis-example-client-app/src/main/webapp/assets/bootstrap-2.0.2/readme: -------------------------------------------------------------------------------- 1 | http://twitter.github.com/bootstrap/download.html -------------------------------------------------------------------------------- /apis-example-resource-server-war/.gitignore: -------------------------------------------------------------------------------- 1 | .classpath 2 | .project 3 | .settings 4 | .idea 5 | *.iml 6 | target 7 | -------------------------------------------------------------------------------- /apis-images/surf-conext-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-images/surf-conext-logo.png -------------------------------------------------------------------------------- /apis-images/surf-oauth-client.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-images/surf-oauth-client.png -------------------------------------------------------------------------------- /apis-images/apis_deployment_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-images/apis_deployment_diagram.png -------------------------------------------------------------------------------- /apis-openconext-mock-war/README.md: -------------------------------------------------------------------------------- 1 | OpenConext Mock War 2 | ====== 3 | This project can be ignored. It is used internally by the SAML Authenticator. -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/arrow.png -------------------------------------------------------------------------------- /apis-example-client-app/src/main/webapp/assets/img/surf-oauth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-example-client-app/src/main/webapp/assets/img/surf-oauth.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | notes 2 | .DS_Store 3 | rebel.xml 4 | .classpath 5 | .project 6 | .settings 7 | .idea 8 | *.iml 9 | *.ipr 10 | *.iws 11 | target 12 | bin 13 | .sass-cache -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/Untitled-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/Untitled-3.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/surf-oauth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/surf-oauth.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-example.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/dead-end-sign.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/dead-end-sign.jpg -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-apps-blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-apps-blue.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-apps-grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-apps-grey.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-keys-blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-keys-blue.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-keys-grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-keys-grey.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-stats-blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-stats-blue.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-stats-grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-stats-grey.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/side-nav-server.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/side-nav-server.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-servers-blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-servers-blue.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/icon-servers-grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/icon-servers-grey.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/dead_end_no_consent.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/dead_end_no_consent.jpg -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/img/glyphicons-halflings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OAuth-Apis/apis/HEAD/apis-authorization-server-war/src/main/webapp/client/img/glyphicons-halflings.png -------------------------------------------------------------------------------- /apis-authorization-server-war/src/main/webapp/client/templates/tplAlert.html: -------------------------------------------------------------------------------- 1 |
Can you imagine getting an OAuth2 compliant Authorization Server (and this client apparently;-) up in a matter of minutes? Wait and see. By the way, the Apis Authorization Server lets you authenticate against any possible backend of your choice and is totally agnostic as it comes to the flavor of your Resource Server.
4 |5 | 6 | Login 7 | 8 |
9 |All your Resource Servers and client statistics
23 |Resource Server name: {{name}}
26 | {{#if description}} 27 |Description: {{description}}
28 | {{/if}} 29 || Client App name | 33 |Description | 34 |#Unique clients | 35 |
|---|---|---|
| {{name}} | 41 |{{description}} | 42 |{{tokenCount}} | 43 |
No resource servers configured.
50 | {{/if}} 51 || Token | 25 |Resource server | 26 |Client | 27 |Scopes | 28 |Resource owner ID | 29 |Issue date | 30 |Valid until | 31 |Actions | 32 |
|---|---|---|---|---|---|---|---|
| {{token}} | 38 |todo | 39 |{{clientId}} | 40 |{{scopes}} | 41 |{{resourceOwnerId}} | 42 |{{creationDate}} | 43 |{{expiresIn}} | 44 |Delete | 45 |
No access tokens found for current user.
51 | {{/if}} 52 |
25 |
27 | Powered by SURFnet. Fork me on Github. Licensed under the Apache License 2.0.
43 || Icon | 9 |Name | 10 |Client ID | 11 |Scopes | 12 |Credentials | 13 |Actions | 14 |
|---|---|---|---|---|---|
| {{name}} 21 | {{description}} 22 | Connected to {{resourceServer.name}} 23 | |
24 | {{clientId}} | 25 |{{scopes}} | 26 |
27 | Contact: {{contactName}} 28 | Client ID : 29 | 30 | Secret : 31 | 32 | |
33 | Delete | 34 |
No clients yet. Add one.
40 | {{/if}} 41 || Icon | 10 |Resource server | 11 |Client apps | 12 |Scopes | 13 |About | 14 |Actions | 15 |
|---|---|---|---|---|---|
| {{name}} 22 | {{description}} 23 | |
24 | 25 | | {{scopes}} | 26 |
27 | Contact: {{contactName}} 28 | Key : 29 | 30 | Secret : 31 | 32 | |
33 | Delete | 34 |
No resource servers yet. Add one.
40 |After you have added a resource server, you can start adding client applications that actually do something with the protected resources of your resource server. 41 | {{/if}} 42 |
21 | Powered by SURFnet. Fork me on Github. Licensed under the Apache License 2.0.
65 |