├── .github ├── dependabot.yml └── workflows │ └── build.yaml ├── .gitignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Dockerfile ├── LICENSE ├── MAINTAINERS.md ├── README.md ├── images ├── audience-validation-config.png ├── patient-id-token-mapper.png ├── patient-selection-config.png ├── patient-selection-form-fhiruser.png └── smart-app-launch-flow.png ├── jboss-fhir-provider ├── pom.xml └── src │ └── main │ └── resources │ └── modules.xml ├── keycloak-config ├── Dockerfile ├── pom.xml ├── run.sh └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── alvearie │ │ │ └── keycloak │ │ │ └── config │ │ │ ├── KeycloakConfigurator.java │ │ │ ├── Main.java │ │ │ └── util │ │ │ ├── KeycloakConfig.java │ │ │ └── PropertyGroup.java │ └── resources │ │ └── config │ │ ├── backend-services-config.json │ │ ├── keycloak-config-with-idp.json │ │ └── keycloak-config.json │ └── test │ ├── java │ └── org │ │ └── alvearie │ │ └── keycloak │ │ └── config │ │ └── util │ │ └── PropertyGroupTest.java │ └── resources │ └── keycloak-config.json ├── keycloak-extensions ├── .gitignore ├── pom.xml └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── alvearie │ │ │ └── keycloak │ │ │ ├── AudienceValidator.java │ │ │ ├── AudienceValidatorFactory.java │ │ │ ├── PatientPrefixUserAttributeMapper.java │ │ │ ├── PatientSelectionForm.java │ │ │ ├── PatientSelectionFormFactory.java │ │ │ ├── UserAttributeMapper.java │ │ │ └── freemarker │ │ │ └── PatientStruct.java │ └── resources │ │ ├── META-INF │ │ ├── jboss-deployment-structure.xml │ │ └── services │ │ │ ├── org.keycloak.authentication.AuthenticatorFactory │ │ │ └── org.keycloak.protocol.ProtocolMapper │ │ └── theme-resources │ │ └── templates │ │ └── patient-select-form.ftl │ └── test │ ├── java │ └── org │ │ └── alvearie │ │ ├── keycloak │ │ └── KeycloakContainerTest.java │ │ └── utils │ │ └── SeleniumOauthInteraction.java │ └── resources │ ├── jboss │ └── module.xml │ ├── keycloak-config.json │ ├── logback-test.xml │ └── mock_fhir_response.json └── pom.xml /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/build.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/.github/workflows/build.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/.gitignore -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/LICENSE -------------------------------------------------------------------------------- /MAINTAINERS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/MAINTAINERS.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/README.md -------------------------------------------------------------------------------- /images/audience-validation-config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/images/audience-validation-config.png -------------------------------------------------------------------------------- /images/patient-id-token-mapper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/images/patient-id-token-mapper.png -------------------------------------------------------------------------------- /images/patient-selection-config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/images/patient-selection-config.png -------------------------------------------------------------------------------- /images/patient-selection-form-fhiruser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/images/patient-selection-form-fhiruser.png -------------------------------------------------------------------------------- /images/smart-app-launch-flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/images/smart-app-launch-flow.png -------------------------------------------------------------------------------- /jboss-fhir-provider/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/jboss-fhir-provider/pom.xml -------------------------------------------------------------------------------- /jboss-fhir-provider/src/main/resources/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/jboss-fhir-provider/src/main/resources/modules.xml -------------------------------------------------------------------------------- /keycloak-config/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/Dockerfile -------------------------------------------------------------------------------- /keycloak-config/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/pom.xml -------------------------------------------------------------------------------- /keycloak-config/run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/run.sh -------------------------------------------------------------------------------- /keycloak-config/src/main/java/org/alvearie/keycloak/config/KeycloakConfigurator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/main/java/org/alvearie/keycloak/config/KeycloakConfigurator.java -------------------------------------------------------------------------------- /keycloak-config/src/main/java/org/alvearie/keycloak/config/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/main/java/org/alvearie/keycloak/config/Main.java -------------------------------------------------------------------------------- /keycloak-config/src/main/java/org/alvearie/keycloak/config/util/KeycloakConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/main/java/org/alvearie/keycloak/config/util/KeycloakConfig.java -------------------------------------------------------------------------------- /keycloak-config/src/main/java/org/alvearie/keycloak/config/util/PropertyGroup.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/main/java/org/alvearie/keycloak/config/util/PropertyGroup.java -------------------------------------------------------------------------------- /keycloak-config/src/main/resources/config/backend-services-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/main/resources/config/backend-services-config.json -------------------------------------------------------------------------------- /keycloak-config/src/main/resources/config/keycloak-config-with-idp.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/main/resources/config/keycloak-config-with-idp.json -------------------------------------------------------------------------------- /keycloak-config/src/main/resources/config/keycloak-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/main/resources/config/keycloak-config.json -------------------------------------------------------------------------------- /keycloak-config/src/test/java/org/alvearie/keycloak/config/util/PropertyGroupTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/test/java/org/alvearie/keycloak/config/util/PropertyGroupTest.java -------------------------------------------------------------------------------- /keycloak-config/src/test/resources/keycloak-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-config/src/test/resources/keycloak-config.json -------------------------------------------------------------------------------- /keycloak-extensions/.gitignore: -------------------------------------------------------------------------------- 1 | /dependency-reduced-pom.xml 2 | -------------------------------------------------------------------------------- /keycloak-extensions/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/pom.xml -------------------------------------------------------------------------------- /keycloak-extensions/src/main/java/org/alvearie/keycloak/AudienceValidator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/java/org/alvearie/keycloak/AudienceValidator.java -------------------------------------------------------------------------------- /keycloak-extensions/src/main/java/org/alvearie/keycloak/AudienceValidatorFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/java/org/alvearie/keycloak/AudienceValidatorFactory.java -------------------------------------------------------------------------------- /keycloak-extensions/src/main/java/org/alvearie/keycloak/PatientPrefixUserAttributeMapper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/java/org/alvearie/keycloak/PatientPrefixUserAttributeMapper.java -------------------------------------------------------------------------------- /keycloak-extensions/src/main/java/org/alvearie/keycloak/PatientSelectionForm.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/java/org/alvearie/keycloak/PatientSelectionForm.java -------------------------------------------------------------------------------- /keycloak-extensions/src/main/java/org/alvearie/keycloak/PatientSelectionFormFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/java/org/alvearie/keycloak/PatientSelectionFormFactory.java -------------------------------------------------------------------------------- /keycloak-extensions/src/main/java/org/alvearie/keycloak/UserAttributeMapper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/java/org/alvearie/keycloak/UserAttributeMapper.java -------------------------------------------------------------------------------- /keycloak-extensions/src/main/java/org/alvearie/keycloak/freemarker/PatientStruct.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/java/org/alvearie/keycloak/freemarker/PatientStruct.java -------------------------------------------------------------------------------- /keycloak-extensions/src/main/resources/META-INF/jboss-deployment-structure.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/resources/META-INF/jboss-deployment-structure.xml -------------------------------------------------------------------------------- /keycloak-extensions/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/resources/META-INF/services/org.keycloak.authentication.AuthenticatorFactory -------------------------------------------------------------------------------- /keycloak-extensions/src/main/resources/META-INF/services/org.keycloak.protocol.ProtocolMapper: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/resources/META-INF/services/org.keycloak.protocol.ProtocolMapper -------------------------------------------------------------------------------- /keycloak-extensions/src/main/resources/theme-resources/templates/patient-select-form.ftl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/main/resources/theme-resources/templates/patient-select-form.ftl -------------------------------------------------------------------------------- /keycloak-extensions/src/test/java/org/alvearie/keycloak/KeycloakContainerTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/test/java/org/alvearie/keycloak/KeycloakContainerTest.java -------------------------------------------------------------------------------- /keycloak-extensions/src/test/java/org/alvearie/utils/SeleniumOauthInteraction.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/test/java/org/alvearie/utils/SeleniumOauthInteraction.java -------------------------------------------------------------------------------- /keycloak-extensions/src/test/resources/jboss/module.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/test/resources/jboss/module.xml -------------------------------------------------------------------------------- /keycloak-extensions/src/test/resources/keycloak-config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/test/resources/keycloak-config.json -------------------------------------------------------------------------------- /keycloak-extensions/src/test/resources/logback-test.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/test/resources/logback-test.xml -------------------------------------------------------------------------------- /keycloak-extensions/src/test/resources/mock_fhir_response.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/keycloak-extensions/src/test/resources/mock_fhir_response.json -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Alvearie/keycloak-extensions-for-fhir/HEAD/pom.xml --------------------------------------------------------------------------------