├── .gitattributes ├── .github └── ISSUE_TEMPLATE │ ├── bug_report.md │ └── feature_request.md ├── .gitignore ├── .mvn └── wrapper │ └── maven-wrapper.properties ├── CHANGES.md ├── LICENSE ├── README.md ├── SUPPORT.md ├── build ├── checkstyle-header.xml ├── checkstyle-import.xml ├── checkstyle-jsp.xml ├── checkstyle-suppression.xml ├── checkstyle.xml ├── license-header-css.txt ├── license-header-html.txt ├── license-header-java.txt ├── license-header-js.txt ├── license-header-jsp.txt ├── license-header-properties.txt ├── license-header-xml.txt ├── local-maven-repo │ └── com │ │ └── novell │ │ └── security │ │ └── nmas │ │ ├── ChallengeResponseLCM │ │ ├── 2013.04.18 │ │ │ ├── ChallengeResponseLCM-2013.04.18.jar │ │ │ ├── ChallengeResponseLCM-2013.04.18.jar.md5 │ │ │ ├── ChallengeResponseLCM-2013.04.18.jar.sha1 │ │ │ ├── ChallengeResponseLCM-2013.04.18.pom │ │ │ ├── ChallengeResponseLCM-2013.04.18.pom.md5 │ │ │ └── ChallengeResponseLCM-2013.04.18.pom.sha1 │ │ ├── maven-metadata.xml │ │ ├── maven-metadata.xml.md5 │ │ └── maven-metadata.xml.sha1 │ │ ├── NMASToolkit │ │ ├── 2013.04.26 │ │ │ ├── NMASToolkit-2013.04.26.jar │ │ │ ├── NMASToolkit-2013.04.26.jar.md5 │ │ │ ├── NMASToolkit-2013.04.26.jar.sha1 │ │ │ ├── NMASToolkit-2013.04.26.pom │ │ │ ├── NMASToolkit-2013.04.26.pom.md5 │ │ │ └── NMASToolkit-2013.04.26.pom.sha1 │ │ ├── maven-metadata.xml │ │ ├── maven-metadata.xml.md5 │ │ └── maven-metadata.xml.sha1 │ │ ├── ldap │ │ ├── 2013.04.26 │ │ │ ├── ldap-2013.04.26.jar │ │ │ ├── ldap-2013.04.26.jar.md5 │ │ │ ├── ldap-2013.04.26.jar.sha1 │ │ │ ├── ldap-2013.04.26.pom │ │ │ ├── ldap-2013.04.26.pom.md5 │ │ │ └── ldap-2013.04.26.pom.sha1 │ │ ├── maven-metadata.xml │ │ ├── maven-metadata.xml.md5 │ │ └── maven-metadata.xml.sha1 │ │ └── nmasclient │ │ ├── 2013.04.26 │ │ ├── nmasclient-2013.04.26.jar │ │ ├── nmasclient-2013.04.26.jar.md5 │ │ ├── nmasclient-2013.04.26.jar.sha1 │ │ ├── nmasclient-2013.04.26.pom │ │ ├── nmasclient-2013.04.26.pom.md5 │ │ └── nmasclient-2013.04.26.pom.sha1 │ │ ├── maven-metadata.xml │ │ ├── maven-metadata.xml.md5 │ │ └── maven-metadata.xml.sha1 └── spotbugs-exclude.xml ├── client ├── README.md ├── angular │ ├── .gitignore │ ├── images │ │ ├── icons │ │ │ ├── m_circle-horz-menu_thin.svg │ │ │ └── wait_25.gif │ │ └── user.png │ ├── package-lock.json │ ├── package.json │ ├── src │ │ ├── component.ts │ │ ├── components │ │ │ └── changepassword │ │ │ │ ├── autogen-change-password.component.html │ │ │ │ ├── autogen-change-password.component.scss │ │ │ │ ├── autogen-change-password.controller.ts │ │ │ │ ├── random-change-password.component.html │ │ │ │ ├── random-change-password.controller.ts │ │ │ │ ├── success-change-password.component.html │ │ │ │ ├── success-change-password.controller.ts │ │ │ │ ├── type-change-password.component.html │ │ │ │ ├── type-change-password.component.scss │ │ │ │ └── type-change-password.controller.ts │ │ ├── i18n │ │ │ └── translations_en.json │ │ ├── index-dev.html │ │ ├── models │ │ │ ├── column.model.ts │ │ │ ├── orgchart-data.model.ts │ │ │ ├── person.model.ts │ │ │ └── search-result.model.ts │ │ ├── modules │ │ │ ├── changepassword │ │ │ │ ├── changepassword.controller.ts │ │ │ │ ├── changepassword.module.ts │ │ │ │ ├── password-suggestions.html │ │ │ │ └── password-suggestions.scss │ │ │ ├── configeditor │ │ │ │ ├── configeditor.controller.ts │ │ │ │ └── configeditor.module.ts │ │ │ ├── helpdesk │ │ │ │ ├── date.filters.ts │ │ │ │ ├── helpdesk-detail-dialog.template.html │ │ │ │ ├── helpdesk-detail.component.html │ │ │ │ ├── helpdesk-detail.component.scss │ │ │ │ ├── helpdesk-detail.component.ts │ │ │ │ ├── helpdesk-search-base.component.ts │ │ │ │ ├── helpdesk-search-cards.component.html │ │ │ │ ├── helpdesk-search-cards.component.ts │ │ │ │ ├── helpdesk-search-table.component.html │ │ │ │ ├── helpdesk-search-table.component.ts │ │ │ │ ├── helpdesk-search.component.scss │ │ │ │ ├── helpdesk.module.ts │ │ │ │ ├── main.dev.ts │ │ │ │ ├── main.ts │ │ │ │ ├── recent-verifications-dialog.controller.ts │ │ │ │ ├── recent-verifications-dialog.template.html │ │ │ │ ├── routes.ts │ │ │ │ ├── verifications-dialog.component.scss │ │ │ │ ├── verifications-dialog.controller.ts │ │ │ │ └── verifications-dialog.template.html │ │ │ └── peoplesearch │ │ │ │ ├── main.dev.ts │ │ │ │ ├── main.ts │ │ │ │ ├── orgchart-email.component.html │ │ │ │ ├── orgchart-email.component.scss │ │ │ │ ├── orgchart-email.controller.ts │ │ │ │ ├── orgchart-export.component.html │ │ │ │ ├── orgchart-export.component.scss │ │ │ │ ├── orgchart-export.controller.ts │ │ │ │ ├── orgchart-search.component.html │ │ │ │ ├── orgchart-search.component.scss │ │ │ │ ├── orgchart-search.component.ts │ │ │ │ ├── orgchart.component.html │ │ │ │ ├── orgchart.component.scss │ │ │ │ ├── orgchart.component.test.ts │ │ │ │ ├── orgchart.component.ts │ │ │ │ ├── peoplesearch-base.component.ts │ │ │ │ ├── peoplesearch-cards.component.html │ │ │ │ ├── peoplesearch-cards.component.scss │ │ │ │ ├── peoplesearch-cards.component.ts │ │ │ │ ├── peoplesearch-table.component.html │ │ │ │ ├── peoplesearch-table.component.scss │ │ │ │ ├── peoplesearch-table.component.ts │ │ │ │ ├── peoplesearch.module.ts │ │ │ │ ├── peoplesearch.scss │ │ │ │ ├── person-card.component.html │ │ │ │ ├── person-card.component.ts │ │ │ │ ├── person-details-dialog.component.html │ │ │ │ ├── person-details-dialog.component.scss │ │ │ │ ├── person-details-dialog.component.ts │ │ │ │ ├── person.filters.ts │ │ │ │ └── string.filters.ts │ │ ├── route-error-handler.ts │ │ ├── routes.ts │ │ ├── services │ │ │ ├── base-config.service.dev.ts │ │ │ ├── base-config.service.ts │ │ │ ├── common-search.service.test.ts │ │ │ ├── common-search.service.ts │ │ │ ├── helpdesk-config.service.dev.ts │ │ │ ├── helpdesk-config.service.test-data.ts │ │ │ ├── helpdesk-config.service.test.ts │ │ │ ├── helpdesk-config.service.ts │ │ │ ├── helpdesk.service.dev.ts │ │ │ ├── helpdesk.service.test-data.ts │ │ │ ├── helpdesk.service.test.ts │ │ │ ├── helpdesk.service.ts │ │ │ ├── local-storage.service.ts │ │ │ ├── object.service.ts │ │ │ ├── password.service.dev.ts │ │ │ ├── password.service.ts │ │ │ ├── people.data.json │ │ │ ├── people.service.dev.ts │ │ │ ├── people.service.ts │ │ │ ├── peoplesearch-config.service.dev.ts │ │ │ ├── peoplesearch-config.service.ts │ │ │ ├── promise.service.ts │ │ │ ├── pwm.service.dev.ts │ │ │ ├── pwm.service.ts │ │ │ └── translations-loader.factory.ts │ │ ├── styles.scss │ │ └── ux │ │ │ ├── element-size.service.ts │ │ │ └── ux.module.ts │ ├── test │ │ ├── karma-test-suite.ts │ │ └── karma.conf.js │ ├── tsconfig.json │ ├── tslint.json │ ├── vendor │ │ └── angular-ui-router.js │ └── webpack.config.js └── pom.xml ├── data-service ├── pom.xml └── src │ └── main │ ├── java │ └── password │ │ └── pwm │ │ └── receiver │ │ ├── ContextManager.java │ │ ├── CsvDownloadServlet.java │ │ ├── FtpDataIngestor.java │ │ ├── Logger.java │ │ ├── PwmReceiverApp.java │ │ ├── PwmReceiverLogger.java │ │ ├── Settings.java │ │ ├── Status.java │ │ ├── Storage.java │ │ ├── SummaryBean.java │ │ ├── TelemetryRestReceiver.java │ │ └── TelemetryViewerServlet.java │ └── webapp │ ├── META-INF │ └── context.xml │ ├── WEB-INF │ ├── jsp │ │ └── telemetry-viewer.jsp │ └── web.xml │ └── index.jsp ├── docker ├── pom.xml └── src │ └── main │ ├── image-files │ ├── app │ │ ├── command.sh │ │ ├── java.vmoptions │ │ └── startup.sh │ └── config │ │ └── readme.txt │ └── java │ └── password │ └── pwm │ └── docker │ └── DockerStub.java ├── mvnw ├── mvnw.cmd ├── onejar ├── onejar-assembly.xml ├── pom.xml └── src │ └── main │ ├── java │ └── password │ │ └── pwm │ │ └── onejar │ │ ├── Argument.java │ │ ├── ArgumentParser.java │ │ ├── ArgumentParserException.java │ │ ├── OnejarConfig.java │ │ ├── OnejarException.java │ │ ├── OnejarMain.java │ │ ├── Resource.java │ │ ├── TomcatOnejarRunner.java │ │ └── WebServer.java │ └── resources │ ├── ROOT-redirect-webapp │ └── WEB-INF │ │ ├── index.jsp │ │ └── web.xml │ └── password │ └── pwm │ └── onejar │ └── Resource.properties ├── pom.xml ├── rest-test-service ├── pom.xml └── src │ └── main │ ├── java │ └── password │ │ └── pwm │ │ └── resttest │ │ ├── RestTestExternalMacroServlet.java │ │ ├── RestTestExternalTokenDestinationServlet.java │ │ ├── RestTestPasswordCheckServlet.java │ │ ├── RestTestRemoteResponsesServlet.java │ │ ├── RestTestSmsGatewayServlet.java │ │ ├── RestTestUtilities.java │ │ ├── SmsGetResponseBody.java │ │ ├── SmsPostResponseBody.java │ │ └── SmsResponse.java │ └── webapp │ ├── META-INF │ └── context.xml │ ├── WEB-INF │ └── web.xml │ └── index.jsp ├── server ├── .gitignore ├── pom.xml └── src │ ├── main │ ├── java │ │ └── password │ │ │ └── pwm │ │ │ ├── AppAttribute.java │ │ │ ├── AppProperty.java │ │ │ ├── FileLocker.java │ │ │ ├── Permission.java │ │ │ ├── PwmAboutProperty.java │ │ │ ├── PwmApplication.java │ │ │ ├── PwmApplicationMode.java │ │ │ ├── PwmConstants.java │ │ │ ├── PwmEnvironment.java │ │ │ ├── PwmEnvironmentUtils.java │ │ │ ├── VerificationMethodSystem.java │ │ │ ├── bean │ │ │ ├── EmailItemBean.java │ │ │ ├── FormNonce.java │ │ │ ├── LocalSessionStateBean.java │ │ │ ├── LoginInfoBean.java │ │ │ ├── PasswordStatus.java │ │ │ ├── PrivateKeyCertificate.java │ │ │ ├── RemoteVerificationRequestBean.java │ │ │ ├── RemoteVerificationResponseBean.java │ │ │ ├── ResponseInfoBean.java │ │ │ ├── SessionLabel.java │ │ │ ├── SmsItemBean.java │ │ │ ├── TelemetryPublishBean.java │ │ │ ├── TokenDestinationItem.java │ │ │ ├── UserIdentity.java │ │ │ ├── VersionNumber.java │ │ │ └── pub │ │ │ │ ├── PublicUserInfoBean.java │ │ │ │ ├── PublishVersionBean.java │ │ │ │ ├── PublishedBean.java │ │ │ │ └── SessionStateInfoBean.java │ │ │ ├── config │ │ │ ├── Configuration.java │ │ │ ├── ConfigurationUtil.java │ │ │ ├── LDAPPermissionInfo.java │ │ │ ├── PwmSetting.java │ │ │ ├── PwmSettingCategory.java │ │ │ ├── PwmSettingFlag.java │ │ │ ├── PwmSettingMetaDataReader.java │ │ │ ├── PwmSettingProperty.java │ │ │ ├── PwmSettingScope.java │ │ │ ├── PwmSettingStats.java │ │ │ ├── PwmSettingSyntax.java │ │ │ ├── PwmSettingTemplate.java │ │ │ ├── PwmSettingTemplateSet.java │ │ │ ├── PwmSettingXml.java │ │ │ ├── SettingReader.java │ │ │ ├── SettingUIFunction.java │ │ │ ├── function │ │ │ │ ├── AbstractUriCertImportFunction.java │ │ │ │ ├── ActionCertImportFunction.java │ │ │ │ ├── LdapCertImportFunction.java │ │ │ │ ├── OAuthCertImportFunction.java │ │ │ │ ├── RemoteWebServiceCertImportFunction.java │ │ │ │ ├── SMSGatewayCertImportFunction.java │ │ │ │ ├── SmtpCertImportFunction.java │ │ │ │ ├── SyslogCertImportFunction.java │ │ │ │ └── UserMatchViewerFunction.java │ │ │ ├── option │ │ │ │ ├── ADPolicyComplexity.java │ │ │ │ ├── ApplicationPage.java │ │ │ │ ├── AutoSetLdapUserLanguage.java │ │ │ │ ├── CertificateMatchingMode.java │ │ │ │ ├── ConfigurationOption.java │ │ │ │ ├── DataStorageMethod.java │ │ │ │ ├── DuplicateMode.java │ │ │ │ ├── ForceSetupPolicy.java │ │ │ │ ├── HelpdeskClearResponseMode.java │ │ │ │ ├── HelpdeskUIMode.java │ │ │ │ ├── IdentityVerificationMethod.java │ │ │ │ ├── IntruderStorageMethod.java │ │ │ │ ├── MessageSendMethod.java │ │ │ │ ├── OTPStorageFormat.java │ │ │ │ ├── PasswordSyncCheckMode.java │ │ │ │ ├── RecoveryAction.java │ │ │ │ ├── RecoveryMinLifetimeOption.java │ │ │ │ ├── RequireCurrentPasswordMode.java │ │ │ │ ├── SelectableContextMode.java │ │ │ │ ├── SessionBeanMode.java │ │ │ │ ├── SessionVerificationMode.java │ │ │ │ ├── SmtpServerType.java │ │ │ │ ├── StrengthMeterType.java │ │ │ │ ├── SyslogOutputFormat.java │ │ │ │ ├── TLSVersion.java │ │ │ │ ├── TokenStorageMethod.java │ │ │ │ ├── UserEventStorageMethod.java │ │ │ │ ├── ViewStatusFields.java │ │ │ │ └── WebServiceUsage.java │ │ │ ├── profile │ │ │ │ ├── AbstractProfile.java │ │ │ │ ├── AccountInformationProfile.java │ │ │ │ ├── ActivateUserProfile.java │ │ │ │ ├── ChallengeProfile.java │ │ │ │ ├── ChangePasswordProfile.java │ │ │ │ ├── DeleteAccountProfile.java │ │ │ │ ├── EmailServerProfile.java │ │ │ │ ├── ForgottenPasswordProfile.java │ │ │ │ ├── HelpdeskProfile.java │ │ │ │ ├── LdapProfile.java │ │ │ │ ├── NewUserProfile.java │ │ │ │ ├── PeopleSearchProfile.java │ │ │ │ ├── Profile.java │ │ │ │ ├── ProfileDefinition.java │ │ │ │ ├── ProfileUtility.java │ │ │ │ ├── PwmPasswordPolicy.java │ │ │ │ ├── PwmPasswordRule.java │ │ │ │ ├── SetupOtpProfile.java │ │ │ │ └── UpdateProfileProfile.java │ │ │ ├── stored │ │ │ │ ├── ConfigRestartRequirement.java │ │ │ │ ├── ConfigurationCleaner.java │ │ │ │ ├── ConfigurationProperty.java │ │ │ │ ├── ConfigurationReader.java │ │ │ │ ├── StoredConfigData.java │ │ │ │ ├── StoredConfigItemKey.java │ │ │ │ ├── StoredConfigSerializer.java │ │ │ │ ├── StoredConfigXmlSerializer.java │ │ │ │ ├── StoredConfigZipJsonSerializer.java │ │ │ │ ├── StoredConfigZipXmlSerializer.java │ │ │ │ ├── StoredConfiguration.java │ │ │ │ ├── StoredConfigurationFactory.java │ │ │ │ ├── StoredConfigurationImpl.java │ │ │ │ ├── StoredConfigurationModifier.java │ │ │ │ ├── StoredConfigurationProvider.java │ │ │ │ ├── StoredConfigurationUtil.java │ │ │ │ ├── ValueMetaData.java │ │ │ │ └── XmlOutputProcessData.java │ │ │ └── value │ │ │ │ ├── AbstractValue.java │ │ │ │ ├── ActionValue.java │ │ │ │ ├── BooleanValue.java │ │ │ │ ├── ChallengeValue.java │ │ │ │ ├── CustomLinkValue.java │ │ │ │ ├── EmailValue.java │ │ │ │ ├── FileValue.java │ │ │ │ ├── FormValue.java │ │ │ │ ├── LocalizedStringArrayValue.java │ │ │ │ ├── LocalizedStringValue.java │ │ │ │ ├── NamedSecretValue.java │ │ │ │ ├── NumericArrayValue.java │ │ │ │ ├── NumericValue.java │ │ │ │ ├── OptionListValue.java │ │ │ │ ├── PasswordValue.java │ │ │ │ ├── PrivateKeyValue.java │ │ │ │ ├── RemoteWebServiceValue.java │ │ │ │ ├── StoredValue.java │ │ │ │ ├── StoredValueEncoder.java │ │ │ │ ├── StringArrayValue.java │ │ │ │ ├── StringValue.java │ │ │ │ ├── UserPermissionValue.java │ │ │ │ ├── ValueFactory.java │ │ │ │ ├── ValueTypeConverter.java │ │ │ │ ├── VerificationMethodValue.java │ │ │ │ ├── X509CertificateValue.java │ │ │ │ └── data │ │ │ │ ├── ActionConfiguration.java │ │ │ │ ├── ChallengeItemConfiguration.java │ │ │ │ ├── CustomLinkConfiguration.java │ │ │ │ ├── FormConfiguration.java │ │ │ │ ├── NamedSecretData.java │ │ │ │ ├── RemoteWebServiceConfiguration.java │ │ │ │ ├── ShortcutItem.java │ │ │ │ └── UserPermission.java │ │ │ ├── error │ │ │ ├── ErrorInformation.java │ │ │ ├── PwmDataStoreException.java │ │ │ ├── PwmDataValidationException.java │ │ │ ├── PwmError.java │ │ │ ├── PwmException.java │ │ │ ├── PwmInternalException.java │ │ │ ├── PwmOperationalException.java │ │ │ ├── PwmPasswordValidationException.java │ │ │ └── PwmUnrecoverableException.java │ │ │ ├── health │ │ │ ├── ApplianceStatusChecker.java │ │ │ ├── CertificateChecker.java │ │ │ ├── ConfigurationChecker.java │ │ │ ├── DatabaseStatusChecker.java │ │ │ ├── HealthChecker.java │ │ │ ├── HealthMessage.java │ │ │ ├── HealthMonitor.java │ │ │ ├── HealthMonitorSettings.java │ │ │ ├── HealthRecord.java │ │ │ ├── HealthStatus.java │ │ │ ├── HealthTopic.java │ │ │ ├── JavaChecker.java │ │ │ ├── LDAPHealthChecker.java │ │ │ └── LocalDBHealthChecker.java │ │ │ ├── http │ │ │ ├── AppServerManager.java │ │ │ ├── ContextManager.java │ │ │ ├── HttpContentType.java │ │ │ ├── HttpEntityDataType.java │ │ │ ├── HttpEventManager.java │ │ │ ├── HttpHeader.java │ │ │ ├── HttpMethod.java │ │ │ ├── IdleTimeoutCalculator.java │ │ │ ├── JspUrl.java │ │ │ ├── JspUtility.java │ │ │ ├── ProcessStatus.java │ │ │ ├── PwmHttpRequestWrapper.java │ │ │ ├── PwmHttpResponseWrapper.java │ │ │ ├── PwmRequest.java │ │ │ ├── PwmRequestAttribute.java │ │ │ ├── PwmRequestContext.java │ │ │ ├── PwmRequestFlag.java │ │ │ ├── PwmResponse.java │ │ │ ├── PwmResponseFlag.java │ │ │ ├── PwmSession.java │ │ │ ├── PwmSessionWrapper.java │ │ │ ├── PwmURL.java │ │ │ ├── SessionManager.java │ │ │ ├── auth │ │ │ │ ├── AuthenticationMethod.java │ │ │ │ ├── BasicFilterAuthenticationProvider.java │ │ │ │ ├── CASFilterAuthenticationProvider.java │ │ │ │ ├── HttpAuthRecord.java │ │ │ │ ├── HttpAuthenticationUtilities.java │ │ │ │ ├── OAuthFilterAuthenticationProvider.java │ │ │ │ ├── PwmHttpFilterAuthenticationProvider.java │ │ │ │ └── SSOHeaderFilterAuthenticationProvider.java │ │ │ ├── bean │ │ │ │ ├── ActivateUserBean.java │ │ │ │ ├── AdminBean.java │ │ │ │ ├── ChangePasswordBean.java │ │ │ │ ├── ConfigGuideBean.java │ │ │ │ ├── ConfigManagerBean.java │ │ │ │ ├── DeleteAccountBean.java │ │ │ │ ├── DisplayElement.java │ │ │ │ ├── ForgottenPasswordBean.java │ │ │ │ ├── ForgottenPasswordStage.java │ │ │ │ ├── GuestRegistrationBean.java │ │ │ │ ├── ImmutableByteArray.java │ │ │ │ ├── LoginServletBean.java │ │ │ │ ├── NewUserBean.java │ │ │ │ ├── PwmSessionBean.java │ │ │ │ ├── SetupOtpBean.java │ │ │ │ ├── SetupResponsesBean.java │ │ │ │ ├── ShortcutsBean.java │ │ │ │ ├── UpdateProfileBean.java │ │ │ │ └── UserSessionDataCacheBean.java │ │ │ ├── filter │ │ │ │ ├── AbstractPwmFilter.java │ │ │ │ ├── ApplicationModeFilter.java │ │ │ │ ├── AuthenticationFilter.java │ │ │ │ ├── AuthorizationFilter.java │ │ │ │ ├── ConfigAccessFilter.java │ │ │ │ ├── CookieManagementFilter.java │ │ │ │ ├── GZIPFilter.java │ │ │ │ ├── ObsoleteUrlFilter.java │ │ │ │ ├── RequestInitializationFilter.java │ │ │ │ └── SessionFilter.java │ │ │ ├── servlet │ │ │ │ ├── AbstractPwmServlet.java │ │ │ │ ├── ClientApiServlet.java │ │ │ │ ├── ControlledPwmServlet.java │ │ │ │ ├── DeleteAccountServlet.java │ │ │ │ ├── ForgottenUsernameServlet.java │ │ │ │ ├── FullPageHealthServlet.java │ │ │ │ ├── GuestRegistrationServlet.java │ │ │ │ ├── LoginServlet.java │ │ │ │ ├── LogoutServlet.java │ │ │ │ ├── PwmRequestID.java │ │ │ │ ├── PwmServlet.java │ │ │ │ ├── PwmServletDefinition.java │ │ │ │ ├── SetupOtpServlet.java │ │ │ │ ├── SetupResponsesServlet.java │ │ │ │ ├── ShortcutServlet.java │ │ │ │ ├── accountinfo │ │ │ │ │ ├── AccountInformationBean.java │ │ │ │ │ └── AccountInformationServlet.java │ │ │ │ ├── activation │ │ │ │ │ ├── ActivateUserServlet.java │ │ │ │ │ └── ActivateUserUtils.java │ │ │ │ ├── admin │ │ │ │ │ ├── AdminServlet.java │ │ │ │ │ ├── AppDashboardData.java │ │ │ │ │ ├── ReportStatusBean.java │ │ │ │ │ ├── UserDebugDataBean.java │ │ │ │ │ └── UserDebugDataReader.java │ │ │ │ ├── changepw │ │ │ │ │ ├── ChangePasswordServlet.java │ │ │ │ │ ├── ChangePasswordServletUtil.java │ │ │ │ │ ├── PrivateChangePasswordServlet.java │ │ │ │ │ └── PublicChangePasswordServlet.java │ │ │ │ ├── command │ │ │ │ │ ├── CommandServlet.java │ │ │ │ │ ├── PrivateCommandServlet.java │ │ │ │ │ └── PublicCommandServlet.java │ │ │ │ ├── configeditor │ │ │ │ │ ├── ConfigEditorServlet.java │ │ │ │ │ ├── ConfigEditorServletUtils.java │ │ │ │ │ ├── SearchResultItem.java │ │ │ │ │ └── data │ │ │ │ │ │ ├── CategoryInfo.java │ │ │ │ │ │ ├── LocaleInfo.java │ │ │ │ │ │ ├── NavTreeDataMaker.java │ │ │ │ │ │ ├── NavTreeItem.java │ │ │ │ │ │ ├── NavTreeSettings.java │ │ │ │ │ │ ├── SettingData.java │ │ │ │ │ │ ├── SettingDataMaker.java │ │ │ │ │ │ ├── SettingInfo.java │ │ │ │ │ │ └── VarData.java │ │ │ │ ├── configguide │ │ │ │ │ ├── ConfigGuideForm.java │ │ │ │ │ ├── ConfigGuideFormField.java │ │ │ │ │ ├── ConfigGuideServlet.java │ │ │ │ │ ├── ConfigGuideUtils.java │ │ │ │ │ └── GuideStep.java │ │ │ │ ├── configmanager │ │ │ │ │ ├── ConfigManagerCertificatesServlet.java │ │ │ │ │ ├── ConfigManagerLocalDBServlet.java │ │ │ │ │ ├── ConfigManagerLoginServlet.java │ │ │ │ │ ├── ConfigManagerServlet.java │ │ │ │ │ ├── ConfigManagerWordlistServlet.java │ │ │ │ │ └── DebugItemGenerator.java │ │ │ │ ├── forgottenpw │ │ │ │ │ ├── ForgottenPasswordServlet.java │ │ │ │ │ ├── ForgottenPasswordStageProcessor.java │ │ │ │ │ ├── ForgottenPasswordStateMachine.java │ │ │ │ │ ├── ForgottenPasswordUtil.java │ │ │ │ │ └── RemoteVerificationMethod.java │ │ │ │ ├── helpdesk │ │ │ │ │ ├── HelpdeskCardInfoBean.java │ │ │ │ │ ├── HelpdeskClientDataBean.java │ │ │ │ │ ├── HelpdeskDetailInfoBean.java │ │ │ │ │ ├── HelpdeskSearchRequestBean.java │ │ │ │ │ ├── HelpdeskSearchResultsBean.java │ │ │ │ │ ├── HelpdeskServlet.java │ │ │ │ │ ├── HelpdeskServletUtil.java │ │ │ │ │ ├── HelpdeskVerificationOptionsBean.java │ │ │ │ │ ├── HelpdeskVerificationRequestBean.java │ │ │ │ │ ├── HelpdeskVerificationResponseBean.java │ │ │ │ │ └── HelpdeskVerificationStateBean.java │ │ │ │ ├── newuser │ │ │ │ │ ├── NewUserForm.java │ │ │ │ │ ├── NewUserFormUtils.java │ │ │ │ │ ├── NewUserServlet.java │ │ │ │ │ ├── NewUserTokenData.java │ │ │ │ │ └── NewUserUtils.java │ │ │ │ ├── oauth │ │ │ │ │ ├── OAuthConsumerServlet.java │ │ │ │ │ ├── OAuthForgottenPasswordResults.java │ │ │ │ │ ├── OAuthMachine.java │ │ │ │ │ ├── OAuthRequestState.java │ │ │ │ │ ├── OAuthResolveResults.java │ │ │ │ │ ├── OAuthSettings.java │ │ │ │ │ ├── OAuthState.java │ │ │ │ │ └── OAuthUseCase.java │ │ │ │ ├── peoplesearch │ │ │ │ │ ├── PeopleSearchConfiguration.java │ │ │ │ │ ├── PeopleSearchDataReader.java │ │ │ │ │ ├── PeopleSearchService.java │ │ │ │ │ ├── PeopleSearchServlet.java │ │ │ │ │ ├── PhotoDataReader.java │ │ │ │ │ ├── PrivatePeopleSearchServlet.java │ │ │ │ │ ├── PublicPeopleSearchServlet.java │ │ │ │ │ ├── SearchRequestBean.java │ │ │ │ │ └── bean │ │ │ │ │ │ ├── AttributeDetailBean.java │ │ │ │ │ │ ├── LinkReferenceBean.java │ │ │ │ │ │ ├── OrgChartDataBean.java │ │ │ │ │ │ ├── OrgChartReferenceBean.java │ │ │ │ │ │ ├── PeopleSearchClientConfigBean.java │ │ │ │ │ │ ├── SearchAttributeBean.java │ │ │ │ │ │ ├── SearchResultBean.java │ │ │ │ │ │ ├── UserDetailBean.java │ │ │ │ │ │ └── UserReferenceBean.java │ │ │ │ ├── resource │ │ │ │ │ ├── CacheEntry.java │ │ │ │ │ ├── CacheKey.java │ │ │ │ │ ├── ConfigSettingFileResource.java │ │ │ │ │ ├── FileResource.java │ │ │ │ │ ├── MemoryFileResource.java │ │ │ │ │ ├── RealFileResource.java │ │ │ │ │ ├── ResourceFileRequest.java │ │ │ │ │ ├── ResourceFileServlet.java │ │ │ │ │ ├── ResourceServletConfiguration.java │ │ │ │ │ ├── ResourceServletService.java │ │ │ │ │ ├── UncacheableResourceException.java │ │ │ │ │ └── ZipFileResource.java │ │ │ │ └── updateprofile │ │ │ │ │ ├── UpdateProfileServlet.java │ │ │ │ │ └── UpdateProfileUtil.java │ │ │ ├── state │ │ │ │ ├── CryptoCookieBeanImpl.java │ │ │ │ ├── CryptoCookieLoginImpl.java │ │ │ │ ├── CryptoRequestBeanImpl.java │ │ │ │ ├── LocalLoginSessionImpl.java │ │ │ │ ├── LocalSessionBeanImpl.java │ │ │ │ ├── SessionBeanProvider.java │ │ │ │ ├── SessionLoginProvider.java │ │ │ │ └── SessionStateService.java │ │ │ └── tag │ │ │ │ ├── CurrentUrlTag.java │ │ │ │ ├── DisplayTag.java │ │ │ │ ├── ErrorMessageTag.java │ │ │ │ ├── JspThrowableHandlerTag.java │ │ │ │ ├── PasswordRequirementsTag.java │ │ │ │ ├── PwmAbstractTag.java │ │ │ │ ├── PwmAutofocusTag.java │ │ │ │ ├── PwmContextTag.java │ │ │ │ ├── PwmFormIDTag.java │ │ │ │ ├── PwmMacroTag.java │ │ │ │ ├── PwmScriptRefTag.java │ │ │ │ ├── PwmScriptTag.java │ │ │ │ ├── SuccessMessageTag.java │ │ │ │ ├── UserInfoTag.java │ │ │ │ ├── conditional │ │ │ │ ├── PwmIfOptions.java │ │ │ │ ├── PwmIfTag.java │ │ │ │ └── PwmIfTest.java │ │ │ │ ├── url │ │ │ │ ├── PwmThemeURL.java │ │ │ │ └── PwmUrlTag.java │ │ │ │ └── value │ │ │ │ ├── PwmValue.java │ │ │ │ ├── PwmValueTag.java │ │ │ │ └── ValueOutput.java │ │ │ ├── i18n │ │ │ ├── Admin.java │ │ │ ├── Config.java │ │ │ ├── ConfigGuide.java │ │ │ ├── Display.java │ │ │ ├── Error.java │ │ │ ├── Health.java │ │ │ ├── Message.java │ │ │ ├── PwmDisplayBundle.java │ │ │ ├── PwmLocaleBundle.java │ │ │ └── PwmSetting.java │ │ │ ├── ldap │ │ │ ├── LdapBrowser.java │ │ │ ├── LdapConnectionService.java │ │ │ ├── LdapDebugDataGenerator.java │ │ │ ├── LdapOperationsHelper.java │ │ │ ├── PasswordChangeProgressChecker.java │ │ │ ├── PhotoDataBean.java │ │ │ ├── PwmLdapVendor.java │ │ │ ├── UserInfo.java │ │ │ ├── UserInfoBean.java │ │ │ ├── UserInfoFactory.java │ │ │ ├── UserInfoReader.java │ │ │ ├── ViewableUserInfoDisplayReader.java │ │ │ ├── auth │ │ │ │ ├── AuthenticationRequest.java │ │ │ │ ├── AuthenticationResult.java │ │ │ │ ├── AuthenticationStrategy.java │ │ │ │ ├── AuthenticationType.java │ │ │ │ ├── AuthenticationUtility.java │ │ │ │ ├── LDAPAuthenticationRequest.java │ │ │ │ ├── PwmAuthenticationSource.java │ │ │ │ ├── SessionAuthenticator.java │ │ │ │ └── SimpleLdapAuthenticator.java │ │ │ ├── permission │ │ │ │ ├── AllPermissionTypeHelper.java │ │ │ │ ├── LdapGroupTypeHelper.java │ │ │ │ ├── LdapQueryHelper.java │ │ │ │ ├── LdapUserDNTypeHelper.java │ │ │ │ ├── PermissionTypeHelper.java │ │ │ │ ├── UserPermissionType.java │ │ │ │ └── UserPermissionUtility.java │ │ │ ├── schema │ │ │ │ ├── EdirSchemaExtender.java │ │ │ │ ├── SchemaDefinition.java │ │ │ │ ├── SchemaExtender.java │ │ │ │ ├── SchemaManager.java │ │ │ │ └── SchemaOperationResult.java │ │ │ └── search │ │ │ │ ├── SearchConfiguration.java │ │ │ │ ├── UserSearchEngine.java │ │ │ │ ├── UserSearchJob.java │ │ │ │ ├── UserSearchJobParameters.java │ │ │ │ └── UserSearchResults.java │ │ │ ├── svc │ │ │ ├── AbstractPwmService.java │ │ │ ├── PwmService.java │ │ │ ├── PwmServiceEnum.java │ │ │ ├── PwmServiceManager.java │ │ │ ├── cache │ │ │ │ ├── CacheDebugItem.java │ │ │ │ ├── CacheKey.java │ │ │ │ ├── CacheLoader.java │ │ │ │ ├── CachePolicy.java │ │ │ │ ├── CacheService.java │ │ │ │ ├── CacheStore.java │ │ │ │ ├── CacheValueType.java │ │ │ │ └── MemoryCacheStore.java │ │ │ ├── email │ │ │ │ ├── EmailConnection.java │ │ │ │ ├── EmailConnectionPool.java │ │ │ │ ├── EmailServer.java │ │ │ │ ├── EmailServerUtil.java │ │ │ │ ├── EmailService.java │ │ │ │ └── EmailServiceSettings.java │ │ │ ├── event │ │ │ │ ├── AuditEvent.java │ │ │ │ ├── AuditField.java │ │ │ │ ├── AuditFormatter.java │ │ │ │ ├── AuditRecord.java │ │ │ │ ├── AuditRecordFactory.java │ │ │ │ ├── AuditService.java │ │ │ │ ├── AuditSettings.java │ │ │ │ ├── AuditVault.java │ │ │ │ ├── CEFAuditFormatter.java │ │ │ │ ├── DatabaseUserHistory.java │ │ │ │ ├── HelpdeskAuditRecord.java │ │ │ │ ├── JsonAuditFormatter.java │ │ │ │ ├── LdapXmlUserHistory.java │ │ │ │ ├── LocalDbAuditVault.java │ │ │ │ ├── SyslogAuditService.java │ │ │ │ ├── SystemAuditRecord.java │ │ │ │ ├── UserAuditRecord.java │ │ │ │ └── UserHistoryStore.java │ │ │ ├── httpclient │ │ │ │ ├── ApachePwmHttpClient.java │ │ │ │ ├── HttpClientService.java │ │ │ │ ├── HttpTrustManagerHelper.java │ │ │ │ ├── JavaPwmHttpClient.java │ │ │ │ ├── PwmHttpClient.java │ │ │ │ ├── PwmHttpClientConfiguration.java │ │ │ │ ├── PwmHttpClientMessage.java │ │ │ │ ├── PwmHttpClientProvider.java │ │ │ │ ├── PwmHttpClientRequest.java │ │ │ │ └── PwmHttpClientResponse.java │ │ │ ├── intruder │ │ │ │ ├── DataStoreRecordStore.java │ │ │ │ ├── IntruderManager.java │ │ │ │ ├── IntruderRecord.java │ │ │ │ ├── IntruderSettings.java │ │ │ │ ├── RecordManager.java │ │ │ │ ├── RecordManagerImpl.java │ │ │ │ ├── RecordStore.java │ │ │ │ ├── RecordType.java │ │ │ │ └── StubRecordManager.java │ │ │ ├── node │ │ │ │ ├── DatabaseNodeDataService.java │ │ │ │ ├── LDAPNodeDataService.java │ │ │ │ ├── NodeDataServiceProvider.java │ │ │ │ ├── NodeInfo.java │ │ │ │ ├── NodeMachine.java │ │ │ │ ├── NodeService.java │ │ │ │ ├── NodeServiceSettings.java │ │ │ │ ├── NodeServiceStatistics.java │ │ │ │ └── StoredNodeData.java │ │ │ ├── pwnotify │ │ │ │ ├── PwNotifyDbStorageService.java │ │ │ │ ├── PwNotifyEngine.java │ │ │ │ ├── PwNotifyLdapStorageService.java │ │ │ │ ├── PwNotifyService.java │ │ │ │ ├── PwNotifySettings.java │ │ │ │ ├── PwNotifyStorageService.java │ │ │ │ ├── PwNotifyStoredJobState.java │ │ │ │ └── PwNotifyUserStatus.java │ │ │ ├── report │ │ │ │ ├── ReportCsvUtility.java │ │ │ │ ├── ReportService.java │ │ │ │ ├── ReportSettings.java │ │ │ │ ├── ReportStatusInfo.java │ │ │ │ ├── ReportSummaryData.java │ │ │ │ ├── UserCacheRecord.java │ │ │ │ └── UserCacheService.java │ │ │ ├── sessiontrack │ │ │ │ ├── SessionTrackService.java │ │ │ │ └── UserAgentUtils.java │ │ │ ├── shorturl │ │ │ │ ├── AbstractUrlShortener.java │ │ │ │ ├── BasicUrlShortener.java │ │ │ │ ├── TinyUrlShortener.java │ │ │ │ └── UrlShortenerService.java │ │ │ ├── stats │ │ │ │ ├── AvgStatistic.java │ │ │ │ ├── DailyKey.java │ │ │ │ ├── EpsKey.java │ │ │ │ ├── EpsStatistic.java │ │ │ │ ├── StatKey.java │ │ │ │ ├── Statistic.java │ │ │ │ ├── StatisticType.java │ │ │ │ ├── StatisticsBundle.java │ │ │ │ └── StatisticsManager.java │ │ │ ├── telemetry │ │ │ │ ├── FtpTelemetrySender.java │ │ │ │ ├── HttpTelemetrySender.java │ │ │ │ ├── TelemetrySender.java │ │ │ │ └── TelemetryService.java │ │ │ ├── token │ │ │ │ ├── CryptoTokenMachine.java │ │ │ │ ├── DataStoreTokenMachine.java │ │ │ │ ├── LdapTokenMachine.java │ │ │ │ ├── StoredTokenKey.java │ │ │ │ ├── TokenDestinationDisplayMasker.java │ │ │ │ ├── TokenKey.java │ │ │ │ ├── TokenMachine.java │ │ │ │ ├── TokenPayload.java │ │ │ │ ├── TokenService.java │ │ │ │ ├── TokenType.java │ │ │ │ └── TokenUtil.java │ │ │ ├── version │ │ │ │ └── VersionCheckService.java │ │ │ └── wordlist │ │ │ │ ├── AbstractWordlist.java │ │ │ │ ├── AbstractWordlistBucket.java │ │ │ │ ├── LocalDBWordlistBucket.java │ │ │ │ ├── MemoryWordlistBucket.java │ │ │ │ ├── SeedlistService.java │ │ │ │ ├── SharedHistoryManager.java │ │ │ │ ├── WordType.java │ │ │ │ ├── Wordlist.java │ │ │ │ ├── WordlistBucket.java │ │ │ │ ├── WordlistConfiguration.java │ │ │ │ ├── WordlistImporter.java │ │ │ │ ├── WordlistInspector.java │ │ │ │ ├── WordlistService.java │ │ │ │ ├── WordlistSource.java │ │ │ │ ├── WordlistSourceInfo.java │ │ │ │ ├── WordlistSourceType.java │ │ │ │ ├── WordlistStatistics.java │ │ │ │ ├── WordlistStatus.java │ │ │ │ ├── WordlistType.java │ │ │ │ ├── WordlistUtil.java │ │ │ │ └── WordlistZipReader.java │ │ │ ├── util │ │ │ ├── BasicAuthInfo.java │ │ │ ├── CaptchaUtility.java │ │ │ ├── DailySummaryJob.java │ │ │ ├── DataStore.java │ │ │ ├── DataStoreFactory.java │ │ │ ├── EventRateMeter.java │ │ │ ├── FormMap.java │ │ │ ├── IPMatcher.java │ │ │ ├── JarMain.java │ │ │ ├── LDAPPermissionCalculator.java │ │ │ ├── MBeanUtility.java │ │ │ ├── OnejarHelper.java │ │ │ ├── PasswordData.java │ │ │ ├── PostChangePasswordAction.java │ │ │ ├── ProgressInfo.java │ │ │ ├── PropertyConfigurationImporter.java │ │ │ ├── PwmScheduler.java │ │ │ ├── SampleDataGenerator.java │ │ │ ├── ServletUtility.java │ │ │ ├── TransactionSizeCalculator.java │ │ │ ├── Validator.java │ │ │ ├── cli │ │ │ │ ├── CliEnvironment.java │ │ │ │ ├── CliException.java │ │ │ │ ├── CliParameters.java │ │ │ │ ├── MainClass.java │ │ │ │ ├── MainOptions.java │ │ │ │ └── commands │ │ │ │ │ ├── AbstractCliCommand.java │ │ │ │ │ ├── ClearResponsesCommand.java │ │ │ │ │ ├── CliCommand.java │ │ │ │ │ ├── ConfigDeleteCommand.java │ │ │ │ │ ├── ConfigLockCommand.java │ │ │ │ │ ├── ConfigNewCommand.java │ │ │ │ │ ├── ConfigResetHttpsCommand.java │ │ │ │ │ ├── ConfigSetPasswordCommand.java │ │ │ │ │ ├── ConfigUnlockCommand.java │ │ │ │ │ ├── ExportAuditCommand.java │ │ │ │ │ ├── ExportHttpsKeyStoreCommand.java │ │ │ │ │ ├── ExportHttpsTomcatConfigCommand.java │ │ │ │ │ ├── ExportLocalDBCommand.java │ │ │ │ │ ├── ExportLogsCommand.java │ │ │ │ │ ├── ExportResponsesCommand.java │ │ │ │ │ ├── ExportStatsCommand.java │ │ │ │ │ ├── ExportWordlistCommand.java │ │ │ │ │ ├── HelpCommand.java │ │ │ │ │ ├── ImportHttpsKeyStoreCommand.java │ │ │ │ │ ├── ImportLocalDBCommand.java │ │ │ │ │ ├── ImportPropertyConfigCommand.java │ │ │ │ │ ├── ImportResponsesCommand.java │ │ │ │ │ ├── LdapSchemaExtendCommand.java │ │ │ │ │ ├── LocalDBInfoCommand.java │ │ │ │ │ ├── ResetInstanceIDCommand.java │ │ │ │ │ ├── ResponseStatsCommand.java │ │ │ │ │ ├── ShellCommand.java │ │ │ │ │ ├── TokenInfoCommand.java │ │ │ │ │ ├── UserReportCommand.java │ │ │ │ │ └── VersionCommand.java │ │ │ ├── db │ │ │ │ ├── DBConfiguration.java │ │ │ │ ├── DatabaseAccessor.java │ │ │ │ ├── DatabaseAccessorImpl.java │ │ │ │ ├── DatabaseDataStore.java │ │ │ │ ├── DatabaseException.java │ │ │ │ ├── DatabaseService.java │ │ │ │ ├── DatabaseTable.java │ │ │ │ ├── DatabaseUtil.java │ │ │ │ └── JDBCDriverLoader.java │ │ │ ├── form │ │ │ │ ├── FormState.java │ │ │ │ └── FormUtility.java │ │ │ ├── i18n │ │ │ │ ├── ConfigLocaleStats.java │ │ │ │ ├── LocaleComparators.java │ │ │ │ ├── LocaleHelper.java │ │ │ │ └── LocaleStats.java │ │ │ ├── java │ │ │ │ ├── AtomicLoopIntIncrementer.java │ │ │ │ ├── AtomicLoopLongIncrementer.java │ │ │ │ ├── AverageTracker.java │ │ │ │ ├── BlockingThreadPool.java │ │ │ │ ├── CachingProxyWrapper.java │ │ │ │ ├── ClosableIterator.java │ │ │ │ ├── ConcurrentClosableIteratorWrapper.java │ │ │ │ ├── ConditionalTaskExecutor.java │ │ │ │ ├── DebugOutputBuilder.java │ │ │ │ ├── FileSystemUtility.java │ │ │ │ ├── JavaHelper.java │ │ │ │ ├── JsonUtil.java │ │ │ │ ├── LazySoftReference.java │ │ │ │ ├── LazySupplier.java │ │ │ │ ├── LicenseInfoReader.java │ │ │ │ ├── Memorizer.java │ │ │ │ ├── MovingAverage.java │ │ │ │ ├── Percent.java │ │ │ │ ├── PwmCallable.java │ │ │ │ ├── PwmDateFormat.java │ │ │ │ ├── PwmExceptionLoggingConsumer.java │ │ │ │ ├── PwmNumberFormat.java │ │ │ │ ├── StatisticCounterBundle.java │ │ │ │ ├── StringUtil.java │ │ │ │ ├── TimeDuration.java │ │ │ │ ├── XmlDocument.java │ │ │ │ ├── XmlElement.java │ │ │ │ └── XmlFactory.java │ │ │ ├── localdb │ │ │ │ ├── AbstractJDBCLocalDB.java │ │ │ │ ├── BerkeleyLocalDB.java │ │ │ │ ├── DerbyLocalDB.java │ │ │ │ ├── H2LocalDB.java │ │ │ │ ├── H2MVLocalDB.java │ │ │ │ ├── LocalDB.java │ │ │ │ ├── LocalDBAdaptor.java │ │ │ │ ├── LocalDBDataStore.java │ │ │ │ ├── LocalDBException.java │ │ │ │ ├── LocalDBFactory.java │ │ │ │ ├── LocalDBProvider.java │ │ │ │ ├── LocalDBService.java │ │ │ │ ├── LocalDBStoredQueue.java │ │ │ │ ├── LocalDBUtility.java │ │ │ │ ├── MapDBLocalDB.java │ │ │ │ ├── MemoryLocalDB.java │ │ │ │ ├── WorkQueueProcessor.java │ │ │ │ └── XodusLocalDB.java │ │ │ ├── logging │ │ │ │ ├── LocalDBLog4jAppender.java │ │ │ │ ├── LocalDBLogger.java │ │ │ │ ├── LocalDBLoggerSettings.java │ │ │ │ ├── LocalDBSearchQuery.java │ │ │ │ ├── LocalDBSearchResults.java │ │ │ │ ├── LoggedThrowable.java │ │ │ │ ├── PwmLogEvent.java │ │ │ │ ├── PwmLogLevel.java │ │ │ │ ├── PwmLogManager.java │ │ │ │ └── PwmLogger.java │ │ │ ├── macro │ │ │ │ ├── AbstractMacro.java │ │ │ │ ├── ExternalRestMacro.java │ │ │ │ ├── Macro.java │ │ │ │ ├── MacroMachine.java │ │ │ │ ├── MacroParseException.java │ │ │ │ ├── MacroReplacer.java │ │ │ │ ├── MacroRequest.java │ │ │ │ ├── StaticMacros.java │ │ │ │ ├── SystemMacros.java │ │ │ │ └── UserMacros.java │ │ │ ├── operations │ │ │ │ ├── ActionExecutor.java │ │ │ │ ├── CrService.java │ │ │ │ ├── OtpService.java │ │ │ │ ├── cr │ │ │ │ │ ├── CrOperator.java │ │ │ │ │ ├── DbCrOperator.java │ │ │ │ │ ├── LdapCrOperator.java │ │ │ │ │ ├── LocalDbCrOperator.java │ │ │ │ │ └── NMASCrOperator.java │ │ │ │ └── otp │ │ │ │ │ ├── AbstractOtpOperator.java │ │ │ │ │ ├── DbOtpOperator.java │ │ │ │ │ ├── LdapOtpOperator.java │ │ │ │ │ ├── LocalDbOtpOperator.java │ │ │ │ │ ├── OTPPamUtil.java │ │ │ │ │ ├── OTPUrlUtil.java │ │ │ │ │ ├── OTPUserRecord.java │ │ │ │ │ ├── OtpOperator.java │ │ │ │ │ └── PasscodeGenerator.java │ │ │ ├── password │ │ │ │ ├── PasswordCharCounter.java │ │ │ │ ├── PasswordRuleChecks.java │ │ │ │ ├── PasswordRuleReaderHelper.java │ │ │ │ ├── PasswordUtility.java │ │ │ │ ├── PwmPasswordRuleUtil.java │ │ │ │ ├── PwmPasswordRuleValidator.java │ │ │ │ └── RandomPasswordGenerator.java │ │ │ ├── queue │ │ │ │ └── SmsQueueManager.java │ │ │ └── secure │ │ │ │ ├── BCrypt.java │ │ │ │ ├── BeanCryptoMachine.java │ │ │ │ ├── CertificateReadingTrustManager.java │ │ │ │ ├── ChecksumInputStream.java │ │ │ │ ├── ChecksumOutputStream.java │ │ │ │ ├── HmacAlgorithm.java │ │ │ │ ├── HttpsServerCertificateManager.java │ │ │ │ ├── PromiscuousTrustManager.java │ │ │ │ ├── PwmBlockAlgorithm.java │ │ │ │ ├── PwmHashAlgorithm.java │ │ │ │ ├── PwmRandom.java │ │ │ │ ├── PwmSecurityKey.java │ │ │ │ ├── PwmTrustManager.java │ │ │ │ ├── SecureEngine.java │ │ │ │ ├── SecureService.java │ │ │ │ ├── TrustManagerSettings.java │ │ │ │ ├── X509Utils.java │ │ │ │ └── self │ │ │ │ ├── SelfCertFactory.java │ │ │ │ ├── SelfCertGenerator.java │ │ │ │ ├── Settings.java │ │ │ │ └── StoredCertData.java │ │ │ └── ws │ │ │ ├── client │ │ │ └── rest │ │ │ │ ├── RestClient.java │ │ │ │ ├── RestClientHelper.java │ │ │ │ ├── RestTokenDataClient.java │ │ │ │ └── form │ │ │ │ ├── FormDataRequestBean.java │ │ │ │ ├── FormDataResponseBean.java │ │ │ │ └── RestFormDataClient.java │ │ │ └── server │ │ │ ├── PresentableForm.java │ │ │ ├── PresentableFormRow.java │ │ │ ├── RestAuthentication.java │ │ │ ├── RestAuthenticationProcessor.java │ │ │ ├── RestAuthenticationType.java │ │ │ ├── RestMethodHandler.java │ │ │ ├── RestRequest.java │ │ │ ├── RestResultBean.java │ │ │ ├── RestServlet.java │ │ │ ├── RestUtility.java │ │ │ ├── RestWebServer.java │ │ │ └── rest │ │ │ ├── RestChallengesServer.java │ │ │ ├── RestCheckPasswordServer.java │ │ │ ├── RestForgottenPasswordServer.java │ │ │ ├── RestFormSigningServer.java │ │ │ ├── RestHealthServer.java │ │ │ ├── RestProfileServer.java │ │ │ ├── RestRandomPasswordServer.java │ │ │ ├── RestSetPasswordServer.java │ │ │ ├── RestStatisticsServer.java │ │ │ ├── RestStatusServer.java │ │ │ ├── RestVerifyOtpServer.java │ │ │ ├── RestVerifyResponsesServer.java │ │ │ └── bean │ │ │ ├── HealthData.java │ │ │ └── HealthRecord.java │ └── resources │ │ └── password │ │ └── pwm │ │ ├── AppProperty.properties │ │ ├── PwmConstants.properties │ │ ├── bean │ │ └── package.html │ │ ├── config │ │ ├── PwmSetting.xml │ │ ├── PwmSetting.xsd │ │ ├── StoredConfiguration.xsd │ │ ├── package.html │ │ └── stored │ │ │ └── StoredConfigurationFactory.properties │ │ ├── http │ │ ├── servlet │ │ │ └── package.html │ │ └── tag │ │ │ └── package.html │ │ ├── i18n │ │ ├── Admin.properties │ │ ├── Admin_nl.properties │ │ ├── Config.properties │ │ ├── ConfigGuide.properties │ │ ├── Display.properties │ │ ├── Display_ca.properties │ │ ├── Display_cs.properties │ │ ├── Display_da.properties │ │ ├── Display_de.properties │ │ ├── Display_el.properties │ │ ├── Display_en_CA.properties │ │ ├── Display_es.properties │ │ ├── Display_fi.properties │ │ ├── Display_fr.properties │ │ ├── Display_fr_CA.properties │ │ ├── Display_hu.properties │ │ ├── Display_it.properties │ │ ├── Display_iw.properties │ │ ├── Display_ja.properties │ │ ├── Display_ko.properties │ │ ├── Display_nb.properties │ │ ├── Display_nl-colloquial.properties │ │ ├── Display_nl.properties │ │ ├── Display_nn.properties │ │ ├── Display_no.properties │ │ ├── Display_pl.properties │ │ ├── Display_pt.properties │ │ ├── Display_pt_BR.properties │ │ ├── Display_ru.properties │ │ ├── Display_sk.properties │ │ ├── Display_sv.properties │ │ ├── Display_th.properties │ │ ├── Display_tr.properties │ │ ├── Display_zh_CN.properties │ │ ├── Display_zh_TW.properties │ │ ├── Error.properties │ │ ├── Error_ca.properties │ │ ├── Error_cs.properties │ │ ├── Error_da.properties │ │ ├── Error_de.properties │ │ ├── Error_el.properties │ │ ├── Error_en_CA.properties │ │ ├── Error_es.properties │ │ ├── Error_fi.properties │ │ ├── Error_fr.properties │ │ ├── Error_fr_CA.properties │ │ ├── Error_hu.properties │ │ ├── Error_it.properties │ │ ├── Error_iw.properties │ │ ├── Error_ja.properties │ │ ├── Error_ko.properties │ │ ├── Error_nb.properties │ │ ├── Error_nl.properties │ │ ├── Error_nn.properties │ │ ├── Error_no.properties │ │ ├── Error_pl.properties │ │ ├── Error_pt.properties │ │ ├── Error_pt_BR.properties │ │ ├── Error_ru.properties │ │ ├── Error_sk.properties │ │ ├── Error_sv.properties │ │ ├── Error_th.properties │ │ ├── Error_tr.properties │ │ ├── Error_zh_CN.properties │ │ ├── Error_zh_TW.properties │ │ ├── Health.properties │ │ ├── Health_nl.properties │ │ ├── Message.properties │ │ ├── Message_ca.properties │ │ ├── Message_cs.properties │ │ ├── Message_da.properties │ │ ├── Message_de.properties │ │ ├── Message_el.properties │ │ ├── Message_en_CA.properties │ │ ├── Message_es.properties │ │ ├── Message_fi.properties │ │ ├── Message_fr.properties │ │ ├── Message_fr_CA.properties │ │ ├── Message_hu.properties │ │ ├── Message_it.properties │ │ ├── Message_iw.properties │ │ ├── Message_ja.properties │ │ ├── Message_ko.properties │ │ ├── Message_nb.properties │ │ ├── Message_nl-colloquial.properties │ │ ├── Message_nl.properties │ │ ├── Message_nn.properties │ │ ├── Message_no.properties │ │ ├── Message_pl.properties │ │ ├── Message_pt.properties │ │ ├── Message_pt_BR.properties │ │ ├── Message_ru.properties │ │ ├── Message_sk.properties │ │ ├── Message_sv.properties │ │ ├── Message_th.properties │ │ ├── Message_tr.properties │ │ ├── Message_zh_CN.properties │ │ ├── Message_zh_TW.properties │ │ ├── PwmSetting.properties │ │ └── nl-colloquial.readme │ │ ├── ldap │ │ └── schema │ │ │ └── SchemaDefinition.properties │ │ ├── package.html │ │ ├── svc │ │ └── event │ │ │ └── AuditEvent.properties │ │ ├── util │ │ ├── localdb │ │ │ └── XodusLocalDB.properties │ │ └── package.html │ │ └── ws │ │ └── client │ │ └── novell │ │ └── pwdmgt │ │ └── service.wsdl │ └── test │ ├── java │ └── password │ │ └── pwm │ │ ├── AppPropertyTest.java │ │ ├── config │ │ ├── PwmSettingCategoryTest.java │ │ ├── PwmSettingPropertyTest.java │ │ ├── PwmSettingTest.java │ │ ├── PwmSettingXmlTest.java │ │ ├── StoredValueEncoderTest.java │ │ ├── option │ │ │ └── IdentityVerificationMethodEnumTest.java │ │ ├── profile │ │ │ ├── PasswordRuleReaderHelperTest.java │ │ │ └── PwmPasswordRuleTest.java │ │ ├── stored │ │ │ ├── ConfigurationCleanerTest.java │ │ │ ├── StoredConfigItemKeyTest.java │ │ │ ├── StoredConfigurationModifierTest.java │ │ │ ├── StoredConfigurationTest.java │ │ │ └── StoredConfigurationUtilTest.java │ │ └── value │ │ │ └── ActionValueTest.java │ │ ├── error │ │ └── PwmErrorTest.java │ │ ├── health │ │ ├── HealthMessageTest.java │ │ └── HealthStatusTest.java │ │ ├── http │ │ ├── HttpContentTypeTest.java │ │ ├── client │ │ │ └── PwmHttpClientTest.java │ │ ├── filter │ │ │ └── RequestInitializationFilterTest.java │ │ └── servlet │ │ │ ├── ControlledPwmServletTest.java │ │ │ └── oauth │ │ │ └── OAuthMachineTest.java │ │ ├── i18n │ │ ├── AdminPropertyKeysTest.java │ │ └── NonLocalizedKeyTest.java │ │ ├── svc │ │ ├── email │ │ │ └── InternetAddressTest.java │ │ ├── event │ │ │ ├── AuditEventTest.java │ │ │ ├── CEFAuditFormatterTest.java │ │ │ ├── JsonAuditFormatterTest.java │ │ │ └── LdapXmlUserHistoryTest.java │ │ └── wordlist │ │ │ ├── WordTypeTest.java │ │ │ ├── WordlistServiceTest.java │ │ │ └── WordlistUtilTest.java │ │ ├── tests │ │ └── PwmPasswordJudgeTest.java │ │ ├── util │ │ ├── LDAPPermissionCalculatorTest.java │ │ ├── db │ │ │ └── DatabaseServiceTest.java │ │ ├── i18n │ │ │ └── LocaleComparatorTest.java │ │ ├── java │ │ │ ├── AtomicLoopIntIncrementerTest.java │ │ │ ├── AverageTrackerTest.java │ │ │ ├── PwmDateFormatTest.java │ │ │ ├── StringUtilTest.java │ │ │ ├── TimeDurationTest.java │ │ │ ├── XmlFactoryBenchmarkExtendedTest.java │ │ │ └── XmlFactoryTest.java │ │ ├── localdb │ │ │ ├── LocalDBExtendedTest.java │ │ │ ├── LocalDBLoggerExtendedTest.java │ │ │ ├── LocalDBStoredQueueExtendedTest.java │ │ │ ├── LocalDBStoredQueuePositionTest.java │ │ │ ├── LocalDBStoredQueueTest.java │ │ │ └── TestHelper.java │ │ ├── macro │ │ │ └── MacroTest.java │ │ ├── otp │ │ │ ├── OTPPamUtilTest.java │ │ │ └── OTPUrlUtilTest.java │ │ ├── password │ │ │ ├── PasswordRuleChecksTest.java │ │ │ ├── PwmPasswordRuleValidatorTest.java │ │ │ └── RandomPasswordGeneratorTest.java │ │ ├── queue │ │ │ └── EmailQueueManagerTest.java │ │ └── secure │ │ │ ├── PromiscuousTrustManagerTest.java │ │ │ └── self │ │ │ └── SelfCertGeneratorTest.java │ │ └── ws │ │ └── server │ │ └── rest │ │ └── RestServletTest.java │ └── resources │ └── password │ └── pwm │ ├── config │ ├── stored │ │ └── ConfigurationCleanerTest.xml │ └── value │ │ └── ActionValueTest.properties │ ├── svc │ ├── event │ │ └── LdapXmlUserHistoryTest.properties │ ├── report │ │ ├── allUserRecords.json │ │ ├── allUserRecordsReport-noUserDnColumn.csv │ │ ├── allUserRecordsReport-onlyUserDnColumn.csv │ │ └── allUserRecordsReport.csv │ └── wordlist │ │ └── test-wordlist.zip │ └── util │ ├── java │ └── XmlFactoryTest.xml │ └── secure │ └── PromiscuousTrustManagerTest.properties └── webapp ├── pom.xml └── src ├── build ├── assembly │ ├── ldif-schema-zip.xml │ └── source-reference.xml └── ldif │ ├── AD-schema.ldif │ ├── ApacheDS-schema.ldif │ ├── OracleDS-schema.ldif │ ├── edirectory-schema-update.ldif │ ├── edirectory-schema.ldif │ ├── edirectory-schema.sch │ ├── openDJ-schema.ldif │ ├── openldap.ldif │ └── openldap.schema └── main └── webapp ├── META-INF └── context.xml ├── WEB-INF ├── Command.bat ├── command.sh ├── jsp │ ├── README.TXT │ ├── accountinformation.jsp │ ├── activateuser-agreement.jsp │ ├── activateuser-entercode.jsp │ ├── activateuser-search.jsp │ ├── activateuser-tokenchoice.jsp │ ├── activateuser-tokensuccess.jsp │ ├── admin-activity.jsp │ ├── admin-analysis.jsp │ ├── admin-dashboard.jsp │ ├── admin-logview-window.jsp │ ├── admin-logview.jsp │ ├── admin-tokenlookup.jsp │ ├── admin-urlreference.jsp │ ├── admin-user-debug.jsp │ ├── application-unavailable.jsp │ ├── changepassword-agreement.jsp │ ├── changepassword-complete.jsp │ ├── changepassword-form.jsp │ ├── changepassword-wait.jsp │ ├── changepassword-warn.jsp │ ├── changepassword.jsp │ ├── configeditor.jsp │ ├── configguide-app.jsp │ ├── configguide-cr_policy.jsp │ ├── configguide-database.jsp │ ├── configguide-end.jsp │ ├── configguide-eula.jsp │ ├── configguide-ldap_admins.jsp │ ├── configguide-ldap_cert.jsp │ ├── configguide-ldap_context.jsp │ ├── configguide-ldap_permissions.jsp │ ├── configguide-ldap_proxy.jsp │ ├── configguide-ldap_schema.jsp │ ├── configguide-ldap_server.jsp │ ├── configguide-ldap_testuser.jsp │ ├── configguide-menu.jsp │ ├── configguide-password.jsp │ ├── configguide-start.jsp │ ├── configguide-storage.jsp │ ├── configguide-telemetry.jsp │ ├── configguide-template.jsp │ ├── configmanager-certificates.jsp │ ├── configmanager-localdb.jsp │ ├── configmanager-login.jsp │ ├── configmanager-permissions.jsp │ ├── configmanager-summary.jsp │ ├── configmanager-wordlists.jsp │ ├── configmanager.jsp │ ├── deleteaccount-agreement.jsp │ ├── deleteaccount-confirm.jsp │ ├── error-http.jsp │ ├── error.jsp │ ├── forgottenpassword-actionchoice.jsp │ ├── forgottenpassword-agreement.jsp │ ├── forgottenpassword-attributes.jsp │ ├── forgottenpassword-enterotp.jsp │ ├── forgottenpassword-entertoken.jsp │ ├── forgottenpassword-method.jsp │ ├── forgottenpassword-remote.jsp │ ├── forgottenpassword-responses.jsp │ ├── forgottenpassword-search.jsp │ ├── forgottenpassword-tokenchoice.jsp │ ├── forgottenpassword-tokensuccess.jsp │ ├── forgottenusername-complete.jsp │ ├── forgottenusername-search.jsp │ ├── fragment │ │ ├── admin-nav.jsp │ │ ├── cancel-button.jsp │ │ ├── cancel-form.jsp │ │ ├── captcha-embed.jsp │ │ ├── configguide-buttonbar.jsp │ │ ├── configguide-header.jsp │ │ ├── configmanager-nav.jsp │ │ ├── customlink.jsp │ │ ├── debug.jsp │ │ ├── displayelement-row.jsp │ │ ├── footer.jsp │ │ ├── forgottenpassword-cancel.jsp │ │ ├── form.jsp │ │ ├── guest-nav.jsp │ │ ├── header-body.jsp │ │ ├── header-common.jsp │ │ ├── header-menu.jsp │ │ ├── header.jsp │ │ ├── ldap-permissions.jsp │ │ ├── ldap-selector.jsp │ │ ├── log-viewer.jsp │ │ ├── message.jsp │ │ ├── setupresponses-form.jsp │ │ └── token-form-field.jsp │ ├── fullpagehealth.jsp │ ├── guest-create.jsp │ ├── guest-search.jsp │ ├── guest-update.jsp │ ├── helpdesk.jsp │ ├── init.jsp │ ├── login-passwordonly.jsp │ ├── login.jsp │ ├── logout-public.jsp │ ├── logout.jsp │ ├── newuser-agreement.jsp │ ├── newuser-entercode.jsp │ ├── newuser-profilechoice.jsp │ ├── newuser-remote.jsp │ ├── newuser-tokensuccess.jsp │ ├── newuser-wait.jsp │ ├── newuser.jsp │ ├── peoplesearch.jsp │ ├── setupotpsecret-existing.jsp │ ├── setupotpsecret-success.jsp │ ├── setupotpsecret-test.jsp │ ├── setupotpsecret.jsp │ ├── setupresponses-confirm.jsp │ ├── setupresponses-existing.jsp │ ├── setupresponses-helpdesk.jsp │ ├── setupresponses.jsp │ ├── shortcut.jsp │ ├── success.jsp │ ├── updateprofile-agreement.jsp │ ├── updateprofile-confirm.jsp │ ├── updateprofile-entercode.jsp │ ├── updateprofile-tokensuccess.jsp │ └── updateprofile.jsp ├── log4jconfig-sample.xml ├── pwm-taglib.tld ├── seedlist.zip ├── web.xml └── wordlist.zip ├── config └── index.jsp ├── index.jsp ├── private ├── config │ └── index.jsp └── index.jsp └── public ├── examples ├── rest-client-example.js ├── rest-client-example.jsp ├── rest-dest-token-server.jsp ├── rest-macro-server.jsp └── rest-pwcheck-server.jsp ├── health.jsp ├── index.jsp ├── localeselect.jsp ├── randomgen.jsp ├── reference ├── displaystrings.jsp ├── environment.jsp ├── index.jsp ├── ldap-schema.jsp ├── license.jsp ├── localeinfo.jsp ├── reference-nav.jsp ├── referencedoc.jsp ├── rest.jsp ├── settings.jsp ├── tables.jsp └── timezones.jsp └── resources ├── UserPhoto.png ├── close_40.png ├── configmanagerStyle.css ├── favicon.png ├── greenCheck.png ├── header-gradient.gif ├── html-editor.css ├── js ├── admin.js ├── changepassword.js ├── configeditor-settings-action.js ├── configeditor-settings-challenges.js ├── configeditor-settings-customlink.js ├── configeditor-settings-email.js ├── configeditor-settings-form.js ├── configeditor-settings-permissions.js ├── configeditor-settings-remotewebservices.js ├── configeditor-settings.js ├── configeditor.js ├── configguide.js ├── configmanager.js ├── guest.js ├── main.js ├── newuser.js ├── otpsecret.js ├── responses.js ├── uilibrary.js └── updateprofile.js ├── loading.gif ├── mobileStyle.css ├── orgChart.png ├── pwm-icons.css ├── redX.png ├── referenceStyle.css ├── reset.gif ├── reset.png ├── spacer.gif ├── style-print.css ├── style.css ├── text ├── datetimeFormatHelp.html ├── eula.txt ├── macroHelp.html ├── privacy.txt └── welcome.txt ├── themes ├── autumn │ ├── autumn-bg-mobile.jpg │ ├── autumn-bg.jpg │ ├── mobileStyle.css │ └── style.css ├── basic │ ├── mobileStyle.css │ └── style.css ├── blue │ ├── README.txt │ ├── header-gradient.gif │ ├── logo.png │ ├── mobileStyle.css │ └── style.css ├── custom │ ├── mobileStyle.css │ └── style.css ├── matrix │ ├── MatrixText.jpg │ ├── logo.png │ ├── mobileStyle.css │ └── style.css ├── midnight │ ├── logo.png │ └── style.css ├── pwm │ ├── configStyle.css │ ├── mobileStyle.css │ ├── paper-bg.jpg │ └── style.css ├── red │ ├── header-gradient.gif │ ├── logo.png │ ├── mobileStyle.css │ └── style.css ├── sterile │ ├── logo.png │ ├── mobileStyle.css │ ├── style.css │ └── wait.gif ├── tulips │ ├── Istok.woff │ ├── README.txt │ ├── mobileStyle.css │ ├── style.css │ ├── tulips-bg-mobile.jpg │ └── tulips-bg.jpg └── water │ ├── README.txt │ ├── header-gradient.gif │ ├── logo.png │ ├── mobileStyle.css │ ├── rain.jpg │ └── style.css ├── wait.gif └── warning.gif /.gitattributes: -------------------------------------------------------------------------------- 1 | # Set the default behavior, in case people don't have core.autocrlf set. 2 | * text=auto 3 | 4 | # 5 | # The above will handle all files NOT found below 6 | # 7 | # These files are text and should be normalized (Convert crlf => lf) 8 | *.css text 9 | *.df text 10 | *.htm text 11 | *.html text 12 | *.java text 13 | *.js text 14 | *.json text 15 | *.jsp text 16 | *.jspf text 17 | *.properties text 18 | *.sh text 19 | *.svg text 20 | *.tld text 21 | *.txt text 22 | *.xml text 23 | *.csv text 24 | 25 | # These files are binary and should be left untouched 26 | # (binary is a macro for -text -diff) 27 | *.class binary 28 | *.dll binary 29 | *.ear binary 30 | *.gif binary 31 | *.ico binary 32 | *.jar binary 33 | *.jpg binary 34 | *.jpeg binary 35 | *.png binary 36 | *.so binary 37 | *.war binary 38 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | ***DO NOT FILE AN ISSUE FOR HELP OR TO ASK QUESTIONS.*** This issue system is not for help requests and such issues will be deleted. 11 | 12 | Instead, please ask for help on the [PWM-General Google Group](https://groups.google.com/group/pwm-general). If your not sure, it's better to ask on the pwm-general group before opening an issue here. 13 | 14 | **Is your feature request related to a problem? Please describe.** 15 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 16 | 17 | **Describe the solution you'd like** 18 | A clear and concise description of what you want to happen. 19 | 20 | **Describe alternatives you've considered** 21 | A clear and concise description of any alternative solutions or features you've considered. 22 | 23 | **Additional context** 24 | Add any other context or screenshots about the feature request here. 25 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # PWM Project gitignore files 2 | 3 | # Eclipse Project Files 4 | /.project 5 | /.settings 6 | /.classpath 7 | 8 | # IntelliJ Project Files 9 | **/.idea/ 10 | **/*.iml 11 | */.idea/ 12 | */*.iml 13 | 14 | # OS folder info 15 | .directory 16 | .DS_Store 17 | .DS_Store? 18 | 19 | # Maven Output 20 | */target 21 | 22 | 23 | /target 24 | /webapp/src/main/webapp/public/resources/themes/netiq 25 | /webapp/src/main/webapp/public/resources/themes/netiq32 26 | /webapp/src/main/webapp/public/resources/themes/idm 27 | /webapp/src/main/webapp/public/resources/themes/mdefault 28 | /webapp/src/main/webapp/public/resources/themes/mdefault44 29 | 30 | # VS Code Project Files 31 | .vscode/* 32 | .vscode/* 33 | !.vscode/settings.json 34 | !.vscode/tasks.json 35 | !.vscode/launch.json 36 | !.vscode/extensions.json 37 | 38 | **/.settings/ 39 | */.settings/ 40 | **/*.classpath 41 | */*.classpath 42 | **/*.factorypath 43 | */*.factorypath 44 | **/*.project 45 | */*.project 46 | 47 | 48 | -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | # Licensed to the Apache Software Foundation (ASF) under one 2 | # or more contributor license agreements. See the NOTICE file 3 | # distributed with this work for additional information 4 | # regarding copyright ownership. The ASF licenses this file 5 | # to you under the Apache License, Version 2.0 (the 6 | # "License"); you may not use this file except in compliance 7 | # with the License. You may obtain a copy of the License at 8 | # 9 | # http://www.apache.org/licenses/LICENSE-2.0 10 | # 11 | # Unless required by applicable law or agreed to in writing, 12 | # software distributed under the License is distributed on an 13 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 14 | # KIND, either express or implied. See the License for the 15 | # specific language governing permissions and limitations 16 | # under the License. 17 | wrapperVersion=3.3.2 18 | distributionType=only-script 19 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.6.3/apache-maven-3.6.3-bin.zip 20 | -------------------------------------------------------------------------------- /SUPPORT.md: -------------------------------------------------------------------------------- 1 | Please do not open issues to ask questions. Issues that are just questions will be deleted. 2 | 3 | For assistance with PWM use the [PWM-General Google Group](https://groups.google.com/group/pwm-general) to ask questions. 4 | 5 | -------------------------------------------------------------------------------- /build/checkstyle-suppression.xml: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /build/license-header-css.txt: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | -------------------------------------------------------------------------------- /build/license-header-html.txt: -------------------------------------------------------------------------------- 1 | 2 | 21 | -------------------------------------------------------------------------------- /build/license-header-java.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | -------------------------------------------------------------------------------- /build/license-header-js.txt: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | -------------------------------------------------------------------------------- /build/license-header-jsp.txt: -------------------------------------------------------------------------------- 1 | <%-- 2 | ~ Password Management Servlets (PWM) 3 | ~ http://www.pwm-project.org 4 | ~ 5 | ~ Copyright (c) 2006-2009 Novell, Inc. 6 | ~ Copyright (c) 2009-2023 The PWM Project 7 | ~ 8 | ~ Licensed under the Apache License, Version 2.0 (the "License"); 9 | ~ you may not use this file except in compliance with the License. 10 | ~ You may obtain a copy of the License at 11 | ~ 12 | ~ http://www.apache.org/licenses/LICENSE-2.0 13 | ~ 14 | ~ Unless required by applicable law or agreed to in writing, software 15 | ~ distributed under the License is distributed on an "AS IS" BASIS, 16 | ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ~ See the License for the specific language governing permissions and 18 | ~ limitations under the License. 19 | --%> 20 | <%-- 21 | THIS FILE IS NOT INTENDED FOR END USER MODIFICATION. 22 | See the README.TXT file in WEB-INF/jsp before making changes. 23 | --%> 24 | -------------------------------------------------------------------------------- /build/license-header-properties.txt: -------------------------------------------------------------------------------- 1 | # 2 | # Password Management Servlets (PWM) 3 | # http://www.pwm-project.org 4 | # 5 | # Copyright (c) 2006-2009 Novell, Inc. 6 | # Copyright (c) 2009-2023 The PWM Project 7 | # 8 | # Licensed under the Apache License, Version 2.0 (the "License"); 9 | # you may not use this file except in compliance with the License. 10 | # You may obtain a copy of the License at 11 | # 12 | # http://www.apache.org/licenses/LICENSE-2.0 13 | # 14 | # Unless required by applicable law or agreed to in writing, software 15 | # distributed under the License is distributed on an "AS IS" BASIS, 16 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | # See the License for the specific language governing permissions and 18 | # limitations under the License. 19 | # 20 | -------------------------------------------------------------------------------- /build/license-header-xml.txt: -------------------------------------------------------------------------------- 1 | 2 | 21 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/2013.04.18/ChallengeResponseLCM-2013.04.18.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/2013.04.18/ChallengeResponseLCM-2013.04.18.jar -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/2013.04.18/ChallengeResponseLCM-2013.04.18.jar.md5: -------------------------------------------------------------------------------- 1 | 7863839b6318164c5788114e32fe7e9b -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/2013.04.18/ChallengeResponseLCM-2013.04.18.jar.sha1: -------------------------------------------------------------------------------- 1 | 3807ea8e61ffacd7cbe5aea297e5c66332e345f0 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/2013.04.18/ChallengeResponseLCM-2013.04.18.pom: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | com.novell.security.nmas 6 | ChallengeResponseLCM 7 | 2013.04.18 8 | 9 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/2013.04.18/ChallengeResponseLCM-2013.04.18.pom.md5: -------------------------------------------------------------------------------- 1 | 86e9d630cddc9ec23c0eaf4f5f8eff1f -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/2013.04.18/ChallengeResponseLCM-2013.04.18.pom.sha1: -------------------------------------------------------------------------------- 1 | 65d5e45a9e68bb12811614ef2dd79f82de500bb3 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/maven-metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | com.novell.security.nmas 4 | ChallengeResponseLCM 5 | 6 | 2013.04.18 7 | 8 | 2013.04.18 9 | 10 | 20161116075037 11 | 12 | 13 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/maven-metadata.xml.md5: -------------------------------------------------------------------------------- 1 | 7f0cf42248660c824301b7f56d63d199 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ChallengeResponseLCM/maven-metadata.xml.sha1: -------------------------------------------------------------------------------- 1 | 9f0d73e71919a155d6691f2346e8ee423a44d160 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/2013.04.26/NMASToolkit-2013.04.26.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/build/local-maven-repo/com/novell/security/nmas/NMASToolkit/2013.04.26/NMASToolkit-2013.04.26.jar -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/2013.04.26/NMASToolkit-2013.04.26.jar.md5: -------------------------------------------------------------------------------- 1 | 8e6c4c9d1e86b6f7538e1c408b0ea18e -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/2013.04.26/NMASToolkit-2013.04.26.jar.sha1: -------------------------------------------------------------------------------- 1 | 9eebfc7fe4e553dfbeb77acd2ea2c6880c84b88c -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/2013.04.26/NMASToolkit-2013.04.26.pom: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | com.novell.security.nmas 6 | NMASToolkit 7 | 2013.04.26 8 | 9 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/2013.04.26/NMASToolkit-2013.04.26.pom.md5: -------------------------------------------------------------------------------- 1 | 3324051c79bc427f8f3e535610ebb748 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/2013.04.26/NMASToolkit-2013.04.26.pom.sha1: -------------------------------------------------------------------------------- 1 | e5c1350c1565567fa533c7bcc96eb5263f583512 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/maven-metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | com.novell.security.nmas 4 | NMASToolkit 5 | 6 | 2013.04.26 7 | 8 | 2013.04.26 9 | 10 | 20161116075716 11 | 12 | 13 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/maven-metadata.xml.md5: -------------------------------------------------------------------------------- 1 | 86303c1eaa049c832db5b114bfc713ac -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/NMASToolkit/maven-metadata.xml.sha1: -------------------------------------------------------------------------------- 1 | 9ef00eddb5ca98cab52686236def296d01d91648 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/2013.04.26/ldap-2013.04.26.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/build/local-maven-repo/com/novell/security/nmas/ldap/2013.04.26/ldap-2013.04.26.jar -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/2013.04.26/ldap-2013.04.26.jar.md5: -------------------------------------------------------------------------------- 1 | b0eb9ec4e8f04166b0565b5913e45bd7 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/2013.04.26/ldap-2013.04.26.jar.sha1: -------------------------------------------------------------------------------- 1 | b74a91783d911d3ab6bc6f7dc277d413578de9ae -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/2013.04.26/ldap-2013.04.26.pom: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | com.novell.security.nmas 6 | ldap 7 | 2013.04.26 8 | 9 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/2013.04.26/ldap-2013.04.26.pom.md5: -------------------------------------------------------------------------------- 1 | a831e428dae2349a55eb188e88ca2181 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/2013.04.26/ldap-2013.04.26.pom.sha1: -------------------------------------------------------------------------------- 1 | aa946d2d33ce8716c0a33da0df068f51e6ab98a0 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/maven-metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | com.novell.security.nmas 4 | ldap 5 | 6 | 2013.04.26 7 | 8 | 2013.04.26 9 | 10 | 20161116075553 11 | 12 | 13 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/maven-metadata.xml.md5: -------------------------------------------------------------------------------- 1 | 4da3de88467fca9a5e73568edcd389ca -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/ldap/maven-metadata.xml.sha1: -------------------------------------------------------------------------------- 1 | 12a20bac12f07eed9bc584a3c424bb5db129bfc4 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/2013.04.26/nmasclient-2013.04.26.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/build/local-maven-repo/com/novell/security/nmas/nmasclient/2013.04.26/nmasclient-2013.04.26.jar -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/2013.04.26/nmasclient-2013.04.26.jar.md5: -------------------------------------------------------------------------------- 1 | 19c52827e00fb50ced72add8136a4a1d -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/2013.04.26/nmasclient-2013.04.26.jar.sha1: -------------------------------------------------------------------------------- 1 | 8fa6f0b43c4cc0fc0c9d98ac1ba0a9d5ba7bd9bf -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/2013.04.26/nmasclient-2013.04.26.pom: -------------------------------------------------------------------------------- 1 | 2 | 4 | 4.0.0 5 | com.novell.security.nmas 6 | nmasclient 7 | 2013.04.26 8 | 9 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/2013.04.26/nmasclient-2013.04.26.pom.md5: -------------------------------------------------------------------------------- 1 | c96d24e2dabc764fbcd5b8f378cdb183 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/2013.04.26/nmasclient-2013.04.26.pom.sha1: -------------------------------------------------------------------------------- 1 | 88501a4f2b8651487eecafc43b7f66d875d45d60 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/maven-metadata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | com.novell.security.nmas 4 | nmasclient 5 | 6 | 2013.04.26 7 | 8 | 2013.04.26 9 | 10 | 20161116075517 11 | 12 | 13 | -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/maven-metadata.xml.md5: -------------------------------------------------------------------------------- 1 | ac7c3c903f1a2fe6dbf3ba79c1d75010 -------------------------------------------------------------------------------- /build/local-maven-repo/com/novell/security/nmas/nmasclient/maven-metadata.xml.sha1: -------------------------------------------------------------------------------- 1 | 16ec025b28fa929f3d8b526df3017fd844342fd1 -------------------------------------------------------------------------------- /client/README.md: -------------------------------------------------------------------------------- 1 | ## Set up 2 | 3 | ### Build 4 | Run the following commands 5 | 1. `npm install` 6 | 2. `npm run build` 7 | 8 | ### Setup Development Environment 9 | Run the following commands 10 | 1. `npm install` 11 | 2. `npm start` 12 | 3. `npm test` (optional) 13 | 14 | ### Useful commands 15 | * `npm run build` Starts a production build 16 | * `npm start` Starts the development environment, which watches your 17 | system for any file changes and rebuilds automatically. It also serves 18 | the dist/ folder from http://localhost:4000/ 19 | * `npm run clean` Cleans dist/ directory 20 | * `npm test` Starts test environment, which will watch your system for 21 | any file changes, rebuild your code, and run unit tests 22 | * `npm run test-single-run` Builds the code and runs all unit tests a 23 | one time 24 | 25 | ## Known Issues 26 | 27 | ### Visual Studio Code 28 | * Jasmine global properties not recognized in Typescript. https://github.com/Microsoft/TypeScript/issues/11620 -------------------------------------------------------------------------------- /client/angular/.gitignore: -------------------------------------------------------------------------------- 1 | # NPM 2 | /node_modules 3 | .node 4 | 5 | # Generated Javascript files 6 | /src/**/*.js 7 | 8 | # Build output 9 | /dist 10 | 11 | # Generated log files 12 | *.log 13 | -------------------------------------------------------------------------------- /client/angular/images/icons/wait_25.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/client/angular/images/icons/wait_25.gif -------------------------------------------------------------------------------- /client/angular/images/user.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/client/angular/images/user.png -------------------------------------------------------------------------------- /client/angular/src/components/changepassword/autogen-change-password.component.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | ias-dialog { 22 | &.autogen-change-password-dialog { 23 | table { 24 | td { 25 | min-width: 160px; 26 | height: 15px; 27 | 28 | div { 29 | cursor: pointer; 30 | font-family: monospace; 31 | } 32 | } 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /client/angular/src/models/column.model.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | export default class Column { 23 | constructor(public label: string, 24 | public valueExpression: string, 25 | public visible?: boolean) { 26 | this.visible = visible !== false; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /client/angular/src/models/orgchart-data.model.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | import { IPerson } from './person.model'; 23 | export default class IOrgChartData { 24 | manager?: IPerson; 25 | children?: IPerson[]; 26 | self: IPerson; 27 | assistant?: IPerson; 28 | } 29 | -------------------------------------------------------------------------------- /client/angular/src/models/search-result.model.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | import { IPerson } from './person.model'; 23 | 24 | export default class SearchResult { 25 | sizeExceeded: boolean; 26 | people: IPerson[]; 27 | 28 | constructor(options: any) { 29 | this.sizeExceeded = options.sizeExceeded; 30 | this.people = options.searchResults.map((person: any) => (person)); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /client/angular/src/modules/changepassword/changepassword.module.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | /* tslint:disable */ 22 | 23 | import { module } from 'angular'; 24 | import ChangePasswordController from './changepassword.controller'; 25 | 26 | module("changepassword.module", []) 27 | .controller("ChangePasswordController", ChangePasswordController); 28 | -------------------------------------------------------------------------------- /client/angular/src/modules/changepassword/password-suggestions.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | .randomPasswordDialog { 22 | height: 395px; width: 350px; max-width: 350px; margin-top: auto; margin-bottom: auto; 23 | } -------------------------------------------------------------------------------- /client/angular/src/modules/helpdesk/verifications-dialog.component.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | #verification-token-destination { 22 | margin: 0; 23 | width: 210px; 24 | } 25 | 26 | .token-destination-submitter { 27 | display: flex; 28 | flex-wrap: wrap; 29 | align-items: center; 30 | 31 | > * { 32 | margin-right: 10px !important; 33 | margin-top: 4px !important; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /client/angular/src/modules/peoplesearch/orgchart-email.component.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | .ias-styles-root { 22 | #teamMembersContainer { 23 | display: flex; 24 | flex-direction: column; 25 | height: 150px; 26 | 27 | > textarea { 28 | align-self: stretch; 29 | flex-grow: 1; 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /client/angular/src/modules/peoplesearch/orgchart-export.component.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | .ias-styles-root { 22 | } 23 | -------------------------------------------------------------------------------- /client/angular/src/modules/peoplesearch/orgchart-search.component.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | .ias-styles-root { 22 | org-chart-search { 23 | #page-content-title { 24 | margin-bottom: 0; 25 | } 26 | 27 | display: flex; 28 | flex-flow: column nowrap; 29 | height: 100%; 30 | 31 | > org-chart { 32 | flex: 1 1; 33 | overflow-x: auto; 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /client/angular/src/modules/peoplesearch/orgchart.component.test.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | describe('testing OrgChartComponent', () => { 23 | beforeEach(() => { 24 | }); 25 | 26 | it('should pass', () => { 27 | expect('foo').toEqual('foo'); 28 | }); 29 | 30 | it('should fail', () => { 31 | expect('foo').not.toEqual('bar'); 32 | }); 33 | }); 34 | -------------------------------------------------------------------------------- /client/angular/src/modules/peoplesearch/person.filters.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | import { IPerson } from '../../models/person.model'; 23 | 24 | export function FullNameFilter(): (person: IPerson) => string { 25 | return (person: IPerson): string => { 26 | return `${person.givenName} ${person.sn}`; 27 | }; 28 | } 29 | -------------------------------------------------------------------------------- /client/angular/src/modules/peoplesearch/string.filters.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | export function HighlightFilter() { 23 | return (input: string, searchText: string): string => { 24 | if (!input || !searchText || !searchText.length) { 25 | return input; 26 | } 27 | 28 | const searchTextRegExp = new RegExp(searchText, 'gi'); 29 | 30 | return input.replace(searchTextRegExp, function (match) { 31 | return `${match}`; 32 | }); 33 | }; 34 | } 35 | -------------------------------------------------------------------------------- /client/angular/src/route-error-handler.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | import { IAngularEvent, IRootScopeService } from 'angular'; 23 | import { IStateService } from 'angular-ui-router'; 24 | 25 | export default [ 26 | '$transitions', 27 | '$state', 28 | ($transitions, $state: IStateService) => { 29 | $transitions.onError({}, (transition) => { 30 | if (transition._error === 'OrgChart disabled') { 31 | $state.go('search.cards'); 32 | } 33 | }); 34 | } 35 | ]; 36 | -------------------------------------------------------------------------------- /client/angular/src/services/helpdesk.service.test-data.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | /* tslint:disable */ 22 | 23 | export const getRecentVerifications_response = { 24 | "error": false, 25 | "errorCode": 0, 26 | "data": { 27 | "records": [ 28 | { 29 | "timestamp": "2018-02-22T15:14:39Z", 30 | "profile": "default", 31 | "username": "bjenner", 32 | "method": "Personal Data" 33 | } 34 | ] 35 | } 36 | }; 37 | -------------------------------------------------------------------------------- /client/angular/src/services/promise.service.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | import { IPromise, IQService } from 'angular'; 22 | 23 | // Pattern explained at https://www.bennadel.com/blog/2731-canceling-a-promise-in-angularjs.htm 24 | export default class PromiseService { 25 | static $inject = [ '$q' ]; 26 | constructor(private $q: IQService) {} 27 | 28 | abort(promise: IPromise) { 29 | if (promise && promise['_httpTimeout'] && promise['_httpTimeout'].resolve) { 30 | promise['_httpTimeout'].resolve(); 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /client/angular/src/services/translations-loader.factory.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | import 'angular-translate'; 23 | import { IQService } from 'angular'; 24 | import IPwmService from './pwm.service'; 25 | 26 | export default [ 27 | '$q', 28 | 'PwmService', 29 | ($q: IQService, pwmService: IPwmService) => { 30 | return function () { 31 | return $q.resolve(pwmService.localeStrings['Display']); 32 | }; 33 | }]; 34 | -------------------------------------------------------------------------------- /client/angular/src/ux/ux.module.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | import { module } from 'angular'; 23 | import ElementSizeService from './element-size.service'; 24 | 25 | const moduleName = 'peoplesearch.ux'; 26 | 27 | module(moduleName, [ ]) 28 | .service('MfElementSizeService', ElementSizeService); 29 | 30 | export default moduleName; 31 | -------------------------------------------------------------------------------- /client/angular/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "baseUrl": "./", 4 | "experimentalDecorators": true, 5 | "lib": [ 6 | "es2015", 7 | "es2015.iterable", 8 | "dom" 9 | ], 10 | "module": "commonjs", 11 | "removeComments": true, 12 | "sourceMap": true, 13 | "target": "es5" 14 | }, 15 | "files": [ 16 | "src/modules/peoplesearch/main.ts" 17 | ], 18 | "exclude": [ 19 | "dist", 20 | "node_modules" 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /data-service/src/main/java/password/pwm/receiver/CsvDownloadServlet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.receiver; 22 | 23 | import javax.servlet.annotation.WebServlet; 24 | 25 | @WebServlet( 26 | name = "TelemetryViewer", 27 | urlPatterns = { 28 | "/csv", 29 | } 30 | ) 31 | public class CsvDownloadServlet 32 | { 33 | } 34 | -------------------------------------------------------------------------------- /data-service/src/main/java/password/pwm/receiver/Status.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.receiver; 22 | 23 | import lombok.Getter; 24 | import lombok.Setter; 25 | 26 | import java.time.Instant; 27 | 28 | @Getter 29 | @Setter 30 | public class Status 31 | { 32 | private String errorState; 33 | private String lastFtpStatus; 34 | private Instant lastFtpIngest; 35 | private int lastFtpFilesRead; 36 | } 37 | -------------------------------------------------------------------------------- /data-service/src/main/webapp/META-INF/context.xml: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /data-service/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | ~ Password Management Servlets (PWM) 3 | ~ http://www.pwm-project.org 4 | ~ 5 | ~ Copyright (c) 2006-2009 Novell, Inc. 6 | ~ Copyright (c) 2009-2023 The PWM Project 7 | ~ 8 | ~ Licensed under the Apache License, Version 2.0 (the "License"); 9 | ~ you may not use this file except in compliance with the License. 10 | ~ You may obtain a copy of the License at 11 | ~ 12 | ~ http://www.apache.org/licenses/LICENSE-2.0 13 | ~ 14 | ~ Unless required by applicable law or agreed to in writing, software 15 | ~ distributed under the License is distributed on an "AS IS" BASIS, 16 | ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ~ See the License for the specific language governing permissions and 18 | ~ limitations under the License. 19 | --%> 20 | <%-- 21 | THIS FILE IS NOT INTENDED FOR END USER MODIFICATION. 22 | See the README.TXT file in WEB-INF/jsp before making changes. 23 | --%> 24 | 25 | 26 | 27 | <%@ page language="java" session="true" isThreadSafe="true" 28 | contentType="text/html" %> 29 | 30 | 31 |
html-pwm-receiver 32 |
33 | 34 | 35 | -------------------------------------------------------------------------------- /docker/src/main/image-files/app/command.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # Run command line shell environment inside the docker container. Execute using 3 | # docker exec -it /application/command.sh 4 | 5 | java -jar /app/libs/*onejar*.jar -applicationPath /config -command $1 $2 $3 $4 $5 $6 $7 $8 $9 6 | 7 | -------------------------------------------------------------------------------- /docker/src/main/image-files/app/java.vmoptions: -------------------------------------------------------------------------------- 1 | -server 2 | -Xmx1g 3 | -Xms1g 4 | -Xlog:gc:file=/config/logs/gc.log:time,uptime,level,tags:filecount=10,filesize=10M 5 | -------------------------------------------------------------------------------- /docker/src/main/image-files/app/startup.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | #Docker container startup script 3 | 4 | mkdir -p /config/logs 5 | 6 | PRIMARY_OPTIONS_FILE="/app/java.vmoptions" 7 | USER_OPTIONS_FILE="/config/java.vmoptions" 8 | USER_REPLACE_FILE="/config/java.vmoptions.replace" 9 | 10 | JAVA_OPTS="" 11 | 12 | if [[ -f ${PRIMARY_OPTIONS_FILE} ]]; then 13 | echo "file $PRIMARY_OPTIONS_FILE exists, adding to java options" 14 | JAVA_OPTS+="$(sed 's/./&/' ${PRIMARY_OPTIONS_FILE} | tr '\n' ' ')" 15 | else 16 | echo "file $PRIMARY_OPTIONS_FILE does not exist." 17 | fi 18 | 19 | if [[ -f ${USER_OPTIONS_FILE} ]]; then 20 | if [[ -f ${USER_REPLACE_FILE} ]]; then 21 | echo "file $USER_OPTIONS_FILE and $USER_REPLACE_FILE both exists, replacing java options" 22 | JAVA_OPTS="$(sed 's/./&/' ${USER_OPTIONS_FILE} | tr '\n' ' ')" 23 | else 24 | echo "file $USER_OPTIONS_FILE exists, adding to java options" 25 | JAVA_OPTS+="$(sed 's/./&/' ${USER_OPTIONS_FILE} | tr '\n' ' ')" 26 | fi 27 | else 28 | echo "file $USER_OPTIONS_FILE does not exist." 29 | fi 30 | 31 | export JAVA_OPTS 32 | echo "effective java options: $JAVA_OPTS" 33 | 34 | echo "starting java" 35 | java ${JAVA_OPTS} -jar /app/libs/*onejar*.jar -applicationPath /config 36 | -------------------------------------------------------------------------------- /docker/src/main/image-files/config/readme.txt: -------------------------------------------------------------------------------- 1 | # readme -------------------------------------------------------------------------------- /docker/src/main/java/password/pwm/docker/DockerStub.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.docker; 22 | 23 | // at least one class is required to "trick" the jib-docker plugin to execute. 24 | public class DockerStub 25 | { 26 | } 27 | -------------------------------------------------------------------------------- /onejar/onejar-assembly.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | onejar 5 | 6 | jar 7 | 8 | false 9 | 10 | 11 | / 12 | true 13 | true 14 | runtime 15 | 16 | 17 | 18 | 19 | ${project.basedir}${file.separator}..${file.separator}webapp${file.separator}target${file.separator}${warArtifactID} 20 | / 21 | embed.war 22 | 23 | 24 | -------------------------------------------------------------------------------- /onejar/src/main/java/password/pwm/onejar/ArgumentParserException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.onejar; 22 | 23 | public class ArgumentParserException extends Exception 24 | { 25 | public ArgumentParserException( final String msg ) 26 | { 27 | super( msg ); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /onejar/src/main/java/password/pwm/onejar/OnejarException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.onejar; 22 | 23 | public class OnejarException extends Exception 24 | { 25 | public OnejarException( final String msg ) 26 | { 27 | super( msg ); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /onejar/src/main/java/password/pwm/onejar/WebServer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.onejar; 22 | 23 | public interface WebServer 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /onejar/src/main/resources/ROOT-redirect-webapp/WEB-INF/index.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | ~ Password Management Servlets (PWM) 3 | ~ http://www.pwm-project.org 4 | ~ 5 | ~ Copyright (c) 2006-2009 Novell, Inc. 6 | ~ Copyright (c) 2009-2023 The PWM Project 7 | ~ 8 | ~ Licensed under the Apache License, Version 2.0 (the "License"); 9 | ~ you may not use this file except in compliance with the License. 10 | ~ You may obtain a copy of the License at 11 | ~ 12 | ~ http://www.apache.org/licenses/LICENSE-2.0 13 | ~ 14 | ~ Unless required by applicable law or agreed to in writing, software 15 | ~ distributed under the License is distributed on an "AS IS" BASIS, 16 | ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ~ See the License for the specific language governing permissions and 18 | ~ limitations under the License. 19 | --%> 20 | <%-- 21 | THIS FILE IS NOT INTENDED FOR END USER MODIFICATION. 22 | See the README.TXT file in WEB-INF/jsp before making changes. 23 | --%> 24 | 25 | 26 | <%@ page session="false" contentType="text/html" %> 27 | 28 | -------------------------------------------------------------------------------- /onejar/src/main/resources/password/pwm/onejar/Resource.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Password Management Servlets (PWM) 3 | # http://www.pwm-project.org 4 | # 5 | # Copyright (c) 2006-2009 Novell, Inc. 6 | # Copyright (c) 2009-2023 The PWM Project 7 | # 8 | # Licensed under the Apache License, Version 2.0 (the "License"); 9 | # you may not use this file except in compliance with the License. 10 | # You may obtain a copy of the License at 11 | # 12 | # http://www.apache.org/licenses/LICENSE-2.0 13 | # 14 | # Unless required by applicable law or agreed to in writing, software 15 | # distributed under the License is distributed on an "AS IS" BASIS, 16 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | # See the License for the specific language governing permissions and 18 | # limitations under the License. 19 | # 20 | 21 | 22 | envVarPrefix=PWM 23 | defaultContext=pwm 24 | defaultWorkPathName=.pwm-workpath 25 | defaultPort=8443 26 | defaultLocalAddress= 27 | defaultWarFileName=embed.war 28 | -------------------------------------------------------------------------------- /rest-test-service/src/main/java/password/pwm/resttest/RestTestExternalMacroServlet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | package password.pwm.resttest; 23 | 24 | import javax.servlet.annotation.WebServlet; 25 | import javax.servlet.http.HttpServlet; 26 | 27 | @WebServlet( 28 | name = "ExternalMacroTest", 29 | urlPatterns = { "/macro", } 30 | ) 31 | public class RestTestExternalMacroServlet extends HttpServlet 32 | { 33 | 34 | } 35 | -------------------------------------------------------------------------------- /rest-test-service/src/main/webapp/META-INF/context.xml: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /rest-test-service/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | ~ Password Management Servlets (PWM) 3 | ~ http://www.pwm-project.org 4 | ~ 5 | ~ Copyright (c) 2006-2009 Novell, Inc. 6 | ~ Copyright (c) 2009-2023 The PWM Project 7 | ~ 8 | ~ Licensed under the Apache License, Version 2.0 (the "License"); 9 | ~ you may not use this file except in compliance with the License. 10 | ~ You may obtain a copy of the License at 11 | ~ 12 | ~ http://www.apache.org/licenses/LICENSE-2.0 13 | ~ 14 | ~ Unless required by applicable law or agreed to in writing, software 15 | ~ distributed under the License is distributed on an "AS IS" BASIS, 16 | ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ~ See the License for the specific language governing permissions and 18 | ~ limitations under the License. 19 | --%> 20 | <%-- 21 | THIS FILE IS NOT INTENDED FOR END USER MODIFICATION. 22 | See the README.TXT file in WEB-INF/jsp before making changes. 23 | --%> 24 | 25 | 26 | 27 | <%@ page language="java" session="true" isThreadSafe="true" 28 | contentType="text/html" %> 29 | 30 | 31 |
html-pwm-receiver 32 |
33 | 34 | 35 | -------------------------------------------------------------------------------- /server/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | 3 | # Older PWM versions defaulted the applicationPath dir to WEB-INF. This section ignores them if the applicationPath is set to WEB-INF. 4 | /src/main/webapp/WEB-INF/logs 5 | /src/main/webapp/WEB-INF/PwmConfiguration.xml 6 | /src/main/webapp/WEB-INF/backup 7 | /src/main/webapp/WEB-INF/LocalDB 8 | /bin/ 9 | /src/main/webapp/WEB-INF/applicationPath.lock 10 | /src/main/webapp/public/resources/themes/mdefault 11 | /src/main/webapp/public/resources/themes/netiq32 12 | /src/main/webapp/public/resources/themes/idm 13 | /src/main/webapp/public/resources/themes/netiq 14 | /src/main/webapp/public/resources/app 15 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/PwmEnvironmentUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm; 22 | 23 | import password.pwm.util.logging.PwmLogger; 24 | 25 | public class PwmEnvironmentUtils 26 | { 27 | 28 | private static final PwmLogger LOGGER = PwmLogger.forClass( PwmEnvironmentUtils.class ); 29 | 30 | 31 | } 32 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/bean/pub/PublishedBean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.bean.pub; 22 | 23 | public interface PublishedBean 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/PwmSettingProperty.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config; 22 | 23 | public enum PwmSettingProperty 24 | { 25 | ModificationWarning, 26 | 27 | Minimum, 28 | Maximum, 29 | 30 | Minimum_Values, 31 | Maximum_Values, 32 | 33 | Form_Types, 34 | 35 | Cert_ImportHandler, 36 | 37 | MethodType, 38 | 39 | Restart_Requirements, 40 | } 41 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/PwmSettingScope.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config; 22 | 23 | public enum PwmSettingScope 24 | { 25 | SYSTEM, 26 | DOMAIN, 27 | } 28 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/ADPolicyComplexity.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum ADPolicyComplexity implements ConfigurationOption 24 | { 25 | NONE, 26 | AD2003, 27 | AD2008, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/ApplicationPage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum ApplicationPage implements ConfigurationOption 24 | { 25 | LOGIN, 26 | FORGOTTEN_PASSWORD, 27 | FORGOTTEN_USERNAME, 28 | USER_ACTIVATION, 29 | NEW_USER_REGISTRATION, 30 | } 31 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/AutoSetLdapUserLanguage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum AutoSetLdapUserLanguage 24 | { 25 | disabled, 26 | enabled, 27 | } 28 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/CertificateMatchingMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum CertificateMatchingMode 24 | { 25 | CA_ONLY, 26 | CERTIFICATE_CHAIN, 27 | } 28 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/ConfigurationOption.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | /** 24 | * Marker interface. 25 | */ 26 | public interface ConfigurationOption 27 | { 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/DataStorageMethod.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum DataStorageMethod implements ConfigurationOption 24 | { 25 | AUTO, 26 | DB, 27 | LDAP, 28 | LOCALDB, 29 | NMAS, 30 | CRYPTO 31 | } 32 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/DuplicateMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum DuplicateMode implements ConfigurationOption 24 | { 25 | FIRST_ALL, 26 | FIRST_PROFILE, 27 | NONE 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/ForceSetupPolicy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum ForceSetupPolicy 24 | { 25 | FORCE, 26 | FORCE_ALLOW_SKIP, 27 | SKIP 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/HelpdeskClearResponseMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum HelpdeskClearResponseMode implements ConfigurationOption 24 | { 25 | yes, 26 | ask, 27 | no 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/HelpdeskUIMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum HelpdeskUIMode implements ConfigurationOption 24 | { 25 | none, 26 | type, 27 | autogen, 28 | both, 29 | random, 30 | } 31 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/IntruderStorageMethod.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum IntruderStorageMethod implements ConfigurationOption 24 | { 25 | AUTO, 26 | DATABASE, 27 | LOCALDB, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/PasswordSyncCheckMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum PasswordSyncCheckMode implements ConfigurationOption 24 | { 25 | DISABLED, 26 | ENABLED, 27 | ENABLED_SHOW 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/RecoveryAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum RecoveryAction implements ConfigurationOption 24 | { 25 | RESETPW, 26 | SENDNEWPW, 27 | SENDNEWPW_AND_EXPIRE, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/RecoveryMinLifetimeOption.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum RecoveryMinLifetimeOption implements ConfigurationOption 24 | { 25 | ALLOW, 26 | UNLOCKONLY, 27 | NONE 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/RequireCurrentPasswordMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum RequireCurrentPasswordMode 24 | { 25 | TRUE, 26 | FALSE, 27 | NOTEXPIRED, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/SelectableContextMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum SelectableContextMode implements ConfigurationOption 24 | { 25 | SHOW_PROFILE, 26 | SHOW_CONTEXTS, 27 | NONE 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/SessionBeanMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum SessionBeanMode implements ConfigurationOption 24 | { 25 | LOCAL, 26 | CRYPTCOOKIE, 27 | CRYPTREQUEST, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/SessionVerificationMode.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum SessionVerificationMode implements ConfigurationOption 24 | { 25 | OFF, 26 | VERIFY, 27 | VERIFY_AND_CACHE, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/SmtpServerType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum SmtpServerType 24 | { 25 | SMTP, 26 | START_TLS, 27 | SMTPS, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/StrengthMeterType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum StrengthMeterType implements ConfigurationOption 24 | { 25 | PWM, 26 | ZXCVBN, 27 | } 28 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/SyslogOutputFormat.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum SyslogOutputFormat 24 | { 25 | JSON, 26 | CEF, 27 | } 28 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/TokenStorageMethod.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum TokenStorageMethod implements ConfigurationOption 24 | { 25 | STORE_LOCALDB, 26 | STORE_DB, 27 | STORE_CRYPTO, 28 | STORE_LDAP 29 | } 30 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/option/UserEventStorageMethod.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.option; 22 | 23 | public enum UserEventStorageMethod implements ConfigurationOption 24 | { 25 | AUTO, 26 | DATABASE, 27 | LDAP, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/stored/ConfigRestartRequirement.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.stored; 22 | 23 | public enum ConfigRestartRequirement 24 | { 25 | Application 26 | } 27 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/stored/StoredConfigurationProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.stored; 22 | 23 | import password.pwm.error.PwmUnrecoverableException; 24 | 25 | import java.io.InputStream; 26 | import java.io.OutputStream; 27 | 28 | interface StoredConfigurationProvider 29 | { 30 | StoredConfiguration fromXml( InputStream inputStream ) throws PwmUnrecoverableException; 31 | 32 | void toXml( OutputStream outputStream ); 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/stored/ValueMetaData.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.stored; 22 | 23 | import lombok.Builder; 24 | import lombok.Value; 25 | import password.pwm.bean.UserIdentity; 26 | 27 | import java.io.Serializable; 28 | import java.time.Instant; 29 | 30 | @Value 31 | @Builder( toBuilder = true ) 32 | public class ValueMetaData implements Serializable 33 | { 34 | private Instant modifyDate; 35 | private UserIdentity userIdentity; 36 | } 37 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/stored/XmlOutputProcessData.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.stored; 22 | 23 | import lombok.Builder; 24 | import lombok.Value; 25 | import password.pwm.config.value.StoredValueEncoder; 26 | import password.pwm.util.secure.PwmSecurityKey; 27 | 28 | @Value 29 | @Builder 30 | public class XmlOutputProcessData 31 | { 32 | @Builder.Default 33 | private StoredValueEncoder.Mode storedValueEncoderMode = StoredValueEncoder.Mode.ENCODED; 34 | private PwmSecurityKey pwmSecurityKey; 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/config/value/data/NamedSecretData.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.config.value.data; 22 | 23 | import lombok.Value; 24 | import password.pwm.util.PasswordData; 25 | 26 | import java.io.Serializable; 27 | import java.util.List; 28 | 29 | @Value 30 | public class NamedSecretData implements Serializable 31 | { 32 | private PasswordData password; 33 | private List usage; 34 | } 35 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/error/PwmPasswordValidationException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.error; 22 | 23 | public class PwmPasswordValidationException extends PwmOperationalException 24 | { 25 | 26 | public PwmPasswordValidationException( final ErrorInformation error ) 27 | { 28 | super( error ); 29 | } 30 | 31 | public PwmPasswordValidationException( final PwmError error ) 32 | { 33 | super( error ); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/health/HealthChecker.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.health; 22 | 23 | import password.pwm.PwmApplication; 24 | 25 | import java.util.List; 26 | 27 | public interface HealthChecker 28 | { 29 | List doHealthCheck( PwmApplication pwmApplication ); 30 | } 31 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/AppServerManager.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http; 22 | 23 | public class AppServerManager 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/HttpEntityDataType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http; 22 | 23 | public enum HttpEntityDataType 24 | { 25 | String, 26 | ByteArray, 27 | } 28 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/ProcessStatus.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http; 22 | 23 | public enum ProcessStatus 24 | { 25 | Continue, 26 | Halt, 27 | } 28 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/PwmRequestFlag.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http; 22 | 23 | public enum PwmRequestFlag 24 | { 25 | HIDE_LOCALE, 26 | HIDE_IDLE, 27 | HIDE_FOOTER_TEXT, 28 | HIDE_HEADER_BUTTONS, 29 | HIDE_HEADER_WARNINGS, 30 | NO_REQ_COUNTER, 31 | NO_IDLE_TIMEOUT, 32 | NO_MOBILE_CSS, 33 | ALWAYS_EXPAND_MESSAGE_TEXT, 34 | INCLUDE_CONFIG_CSS, 35 | INCLUDE_IAS_ANGULAR, 36 | INCLUDE_IAS_CSS 37 | } 38 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/PwmResponseFlag.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http; 22 | 23 | public enum PwmResponseFlag 24 | { 25 | ERROR_RESPONSE_SENT, 26 | } 27 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/auth/HttpAuthRecord.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.auth; 22 | 23 | import lombok.Value; 24 | 25 | import java.io.Serializable; 26 | import java.time.Instant; 27 | 28 | @Value 29 | public class HttpAuthRecord implements Serializable 30 | { 31 | private Instant date; 32 | private String guid; 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/auth/PwmHttpFilterAuthenticationProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.auth; 22 | 23 | import password.pwm.error.PwmUnrecoverableException; 24 | import password.pwm.http.PwmRequest; 25 | 26 | import java.io.IOException; 27 | 28 | public interface PwmHttpFilterAuthenticationProvider 29 | { 30 | void attemptAuthentication( PwmRequest pwmRequest ) 31 | throws PwmUnrecoverableException, IOException; 32 | 33 | boolean hasRedirectedResponse( ); 34 | } 35 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/bean/ForgottenPasswordStage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.bean; 22 | 23 | public enum ForgottenPasswordStage 24 | { 25 | IDENTIFICATION, 26 | METHOD_CHOICE, 27 | TOKEN_CHOICE, 28 | VERIFICATION, 29 | ACTION_CHOICE, 30 | NEW_PASSWORD, 31 | COMPLETE, 32 | } 33 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/PwmServlet.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet; 22 | 23 | public interface PwmServlet 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/configeditor/data/VarData.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.configeditor.data; 22 | 23 | import lombok.Builder; 24 | import lombok.Value; 25 | import password.pwm.config.PwmSettingTemplateSet; 26 | 27 | import java.io.Serializable; 28 | import java.util.List; 29 | 30 | @Value 31 | @Builder 32 | public class VarData implements Serializable 33 | { 34 | private final List ldapProfileIds; 35 | private final PwmSettingTemplateSet currentTemplate; 36 | } 37 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/helpdesk/HelpdeskVerificationResponseBean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.helpdesk; 22 | 23 | import lombok.Value; 24 | 25 | import java.io.Serializable; 26 | 27 | @Value 28 | public class HelpdeskVerificationResponseBean implements Serializable 29 | { 30 | private boolean passed; 31 | private String verificationState; 32 | } 33 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/oauth/OAuthRequestState.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.oauth; 22 | 23 | import lombok.Value; 24 | 25 | import java.io.Serializable; 26 | 27 | @Value 28 | public class OAuthRequestState implements Serializable 29 | { 30 | @SuppressWarnings( "checkstyle:MemberName" ) 31 | private OAuthState oAuthState; 32 | private boolean sessionMatch; 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/oauth/OAuthResolveResults.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.oauth; 22 | 23 | import lombok.Builder; 24 | import lombok.Value; 25 | 26 | import java.io.Serializable; 27 | 28 | @Value 29 | @Builder( toBuilder = true ) 30 | class OAuthResolveResults implements Serializable 31 | { 32 | private String accessToken; 33 | private long expiresSeconds; 34 | private String refreshToken; 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/oauth/OAuthUseCase.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.oauth; 22 | 23 | import com.google.gson.annotations.SerializedName; 24 | 25 | import java.io.Serializable; 26 | 27 | enum OAuthUseCase implements Serializable 28 | { 29 | @SerializedName( "F" ) 30 | ForgottenPassword, 31 | 32 | @SerializedName( "A" ) 33 | Authentication, 34 | } 35 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/peoplesearch/bean/LinkReferenceBean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.peoplesearch.bean; 22 | 23 | import lombok.Data; 24 | 25 | import java.io.Serializable; 26 | 27 | @Data 28 | public class LinkReferenceBean implements Serializable 29 | { 30 | private String name; 31 | private String link; 32 | } 33 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/peoplesearch/bean/OrgChartReferenceBean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.peoplesearch.bean; 22 | 23 | import lombok.Data; 24 | 25 | import java.io.Serializable; 26 | import java.util.ArrayList; 27 | import java.util.List; 28 | 29 | @Data 30 | public class OrgChartReferenceBean implements Serializable 31 | { 32 | private String userKey; 33 | private List displayNames = new ArrayList<>(); 34 | private String photoURL; 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/peoplesearch/bean/UserReferenceBean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.peoplesearch.bean; 22 | 23 | import lombok.Data; 24 | 25 | import java.io.Serializable; 26 | 27 | @Data 28 | public class UserReferenceBean implements Serializable 29 | { 30 | private String userKey; 31 | private String displayName; 32 | } 33 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/resource/FileResource.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.resource; 22 | 23 | import java.io.IOException; 24 | import java.io.InputStream; 25 | 26 | interface FileResource 27 | { 28 | InputStream getInputStream( ) throws IOException; 29 | 30 | long length( ); 31 | 32 | long lastModified( ); 33 | 34 | boolean exists( ); 35 | 36 | String getName( ); 37 | } 38 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/servlet/resource/UncacheableResourceException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.servlet.resource; 22 | 23 | final class UncacheableResourceException extends Exception 24 | { 25 | UncacheableResourceException( final String message ) 26 | { 27 | super( message ); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/tag/PwmAbstractTag.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.tag; 22 | 23 | import javax.servlet.jsp.tagext.TagSupport; 24 | 25 | /** 26 | * @author Jason D. Rivard 27 | */ 28 | public abstract class PwmAbstractTag extends TagSupport 29 | { 30 | } 31 | 32 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/http/tag/conditional/PwmIfOptions.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.http.tag.conditional; 22 | 23 | import lombok.Value; 24 | import password.pwm.Permission; 25 | import password.pwm.config.PwmSetting; 26 | import password.pwm.http.PwmRequestFlag; 27 | 28 | @Value 29 | class PwmIfOptions 30 | { 31 | private final boolean negate; 32 | private final Permission permission; 33 | private final PwmSetting pwmSetting; 34 | private final PwmRequestFlag requestFlag; 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/i18n/Error.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.i18n; 22 | 23 | public abstract class Error implements PwmDisplayBundle 24 | { 25 | 26 | @Override 27 | public String getKey( ) 28 | { 29 | return this.toString(); 30 | 31 | } 32 | 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/i18n/Health.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.i18n; 22 | 23 | public abstract class Health implements PwmDisplayBundle 24 | { 25 | @Override 26 | public String getKey( ) 27 | { 28 | return this.toString(); 29 | 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/i18n/PwmDisplayBundle.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.i18n; 22 | 23 | public interface PwmDisplayBundle 24 | { 25 | String getKey( ); 26 | } 27 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ldap/PhotoDataBean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ldap; 22 | 23 | import lombok.Value; 24 | import password.pwm.http.bean.ImmutableByteArray; 25 | 26 | import java.io.Serializable; 27 | 28 | @Value 29 | public class PhotoDataBean implements Serializable 30 | { 31 | private String mimeType; 32 | private ImmutableByteArray contents; 33 | 34 | @Override 35 | public String toString() 36 | { 37 | return "[image " + contents.size() + " bytes, mime=" + mimeType + "]"; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ldap/auth/AuthenticationResult.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ldap.auth; 22 | 23 | import com.novell.ldapchai.provider.ChaiProvider; 24 | import lombok.Value; 25 | import password.pwm.util.PasswordData; 26 | 27 | @Value 28 | public class AuthenticationResult 29 | { 30 | private final ChaiProvider userProvider; 31 | private final AuthenticationType authenticationType; 32 | private final PasswordData userPassword; 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ldap/auth/AuthenticationStrategy.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ldap.auth; 22 | 23 | public enum AuthenticationStrategy 24 | { 25 | BIND, 26 | READ_THEN_BIND, 27 | WRITE_THEN_BIND, 28 | ADMIN_PROXY, 29 | } 30 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ldap/auth/PwmAuthenticationSource.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ldap.auth; 22 | 23 | public enum PwmAuthenticationSource 24 | { 25 | LOGIN_FORM, 26 | CAS, 27 | BASIC_AUTH, 28 | SSO_HEADER, 29 | OAUTH, 30 | 31 | NEW_USER_REGISTRATION, 32 | FORGOTTEN_PASSWORD, 33 | USER_ACTIVATION, 34 | } 35 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ldap/schema/SchemaExtender.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ldap.schema; 22 | 23 | import com.novell.ldapchai.provider.ChaiProvider; 24 | import password.pwm.error.PwmUnrecoverableException; 25 | 26 | public interface SchemaExtender 27 | { 28 | void init( ChaiProvider chaiProvider ) throws PwmUnrecoverableException; 29 | 30 | SchemaOperationResult extendSchema( ) throws PwmUnrecoverableException; 31 | 32 | SchemaOperationResult checkExistingSchema( ) throws PwmUnrecoverableException; 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/cache/CacheDebugItem.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.cache; 22 | 23 | import lombok.Builder; 24 | import lombok.Value; 25 | 26 | import java.io.Serializable; 27 | 28 | @Value 29 | @Builder 30 | class CacheDebugItem implements Serializable 31 | { 32 | private final String srcClass; 33 | private final String userIdentity; 34 | private final String valueID; 35 | private final String age; 36 | private final int chars; 37 | } 38 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/cache/CacheLoader.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | package password.pwm.svc.cache; 23 | 24 | import password.pwm.error.PwmUnrecoverableException; 25 | 26 | public interface CacheLoader 27 | { 28 | T read() throws PwmUnrecoverableException; 29 | } 30 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/cache/CacheValueType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.cache; 22 | 23 | public enum CacheValueType 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/event/AuditField.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.event; 22 | 23 | public enum AuditField 24 | { 25 | type, 26 | eventCode, 27 | timestamp, 28 | message, 29 | narrative, 30 | perpetratorID, 31 | perpetratorDN, 32 | sourceAddress, 33 | sourceHost, 34 | targetID, 35 | targetDN, 36 | } 37 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/event/AuditFormatter.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.event; 22 | 23 | import password.pwm.PwmApplication; 24 | import password.pwm.error.PwmUnrecoverableException; 25 | 26 | public interface AuditFormatter 27 | { 28 | String convertAuditRecordToMessage( 29 | PwmApplication pwmApplication, 30 | AuditRecord auditRecord 31 | ) 32 | throws PwmUnrecoverableException; 33 | 34 | } 35 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/httpclient/PwmHttpClientMessage.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.httpclient; 22 | 23 | import password.pwm.http.HttpEntityDataType; 24 | import password.pwm.http.bean.ImmutableByteArray; 25 | 26 | import java.util.Map; 27 | 28 | public interface PwmHttpClientMessage 29 | { 30 | int getRequestID(); 31 | 32 | String getBody(); 33 | 34 | Map getHeaders(); 35 | 36 | HttpEntityDataType getDataType(); 37 | 38 | ImmutableByteArray getBinaryBody(); 39 | } 40 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/httpclient/PwmHttpClientProvider.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.httpclient; 22 | 23 | import password.pwm.PwmApplication; 24 | import password.pwm.error.PwmUnrecoverableException; 25 | 26 | public interface PwmHttpClientProvider extends PwmHttpClient 27 | { 28 | void init( PwmApplication pwmApplication, HttpClientService httpClientService, PwmHttpClientConfiguration pwmHttpClientConfiguration ) 29 | throws PwmUnrecoverableException; 30 | 31 | } 32 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/pwnotify/PwNotifyUserStatus.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.pwnotify; 22 | 23 | import lombok.Value; 24 | 25 | import java.io.Serializable; 26 | import java.time.Instant; 27 | 28 | @Value 29 | public 30 | class PwNotifyUserStatus implements Serializable 31 | { 32 | private Instant expireTime; 33 | private Instant lastNotice; 34 | private int interval; 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/stats/StatKey.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.stats; 22 | 23 | public interface StatKey 24 | { 25 | } 26 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/stats/StatisticType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.stats; 22 | 23 | public enum StatisticType 24 | { 25 | INCREMENTER, 26 | AVERAGE, 27 | EPS, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/telemetry/TelemetrySender.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.telemetry; 22 | 23 | import password.pwm.PwmApplication; 24 | import password.pwm.bean.TelemetryPublishBean; 25 | import password.pwm.error.PwmUnrecoverableException; 26 | 27 | public interface TelemetrySender 28 | { 29 | void init( PwmApplication pwmApplication, String initString ); 30 | 31 | void publish( TelemetryPublishBean statsPublishBean ) throws PwmUnrecoverableException; 32 | } 33 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/token/TokenKey.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.token; 22 | 23 | interface TokenKey 24 | { 25 | String getStoredHash( ); 26 | } 27 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/wordlist/WordlistSourceInfo.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.wordlist; 22 | 23 | import lombok.Value; 24 | 25 | import java.io.Serializable; 26 | 27 | @Value 28 | public class WordlistSourceInfo implements Serializable 29 | { 30 | private String hash; 31 | private long bytes; 32 | private String importUrl; 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/svc/wordlist/WordlistSourceType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.svc.wordlist; 22 | 23 | import lombok.Getter; 24 | 25 | @Getter 26 | public enum WordlistSourceType 27 | { 28 | BuiltIn( "Built-In" ), 29 | Temporary_BuiltIn( "Built-In (auto-import failed)" ), 30 | AutoImport( "Import from configured URL" ), 31 | User( "Upload" ),; 32 | 33 | private final String label; 34 | 35 | WordlistSourceType( final String label ) 36 | { 37 | this.label = label; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/util/PostChangePasswordAction.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.util; 22 | 23 | import password.pwm.error.PwmUnrecoverableException; 24 | import password.pwm.http.PwmSession; 25 | 26 | import java.io.Serializable; 27 | 28 | public interface PostChangePasswordAction extends Serializable 29 | { 30 | String getLabel( ); 31 | 32 | boolean doAction( PwmSession pwmSession, String newPassword ) throws PwmUnrecoverableException; 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/util/cli/CliException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.util.cli; 22 | 23 | public class CliException extends Exception 24 | { 25 | 26 | public CliException( final String message ) 27 | { 28 | super( message ); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/util/cli/commands/CliCommand.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.util.cli.commands; 22 | 23 | import password.pwm.util.cli.CliEnvironment; 24 | import password.pwm.util.cli.CliParameters; 25 | 26 | public interface CliCommand 27 | { 28 | 29 | 30 | void execute( String cli, CliEnvironment cliEnvironment ); 31 | 32 | CliParameters getCliParameters( ); 33 | 34 | 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/util/db/DatabaseTable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.util.db; 22 | 23 | public enum DatabaseTable 24 | { 25 | PWM_META, 26 | PWM_RESPONSES, 27 | USER_AUDIT, 28 | INTRUDER, 29 | TOKENS, 30 | OTP, 31 | PW_NOTIFY, 32 | CLUSTER_STATE, 33 | } 34 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/util/java/ClosableIterator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.util.java; 22 | 23 | import java.util.Iterator; 24 | 25 | public interface ClosableIterator extends Iterator, AutoCloseable 26 | { 27 | @Override 28 | void close( ); 29 | } 30 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/util/java/PwmCallable.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.util.java; 22 | 23 | import password.pwm.error.PwmUnrecoverableException; 24 | 25 | public interface PwmCallable 26 | { 27 | void call() throws PwmUnrecoverableException; 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/util/logging/LocalDBSearchQuery.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.util.logging; 22 | 23 | import lombok.Builder; 24 | import lombok.Value; 25 | import password.pwm.util.java.TimeDuration; 26 | 27 | @Value 28 | @Builder 29 | public class LocalDBSearchQuery 30 | { 31 | private PwmLogLevel minimumLevel; 32 | private int maxEvents; 33 | private String username; 34 | private String text; 35 | private TimeDuration maxQueryTime; 36 | private LocalDBLogger.EventType eventType; 37 | } 38 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/util/macro/MacroReplacer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.util.macro; 22 | 23 | public interface MacroReplacer 24 | { 25 | String replace( String matchedMacro, String newValue ); 26 | } 27 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ws/client/rest/RestClient.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ws.client.rest; 22 | 23 | public interface RestClient 24 | { 25 | String DATA_KEY_USERINFO = "userInfo"; 26 | String DATA_KEY_TOKENDATA = "tokenDestination"; 27 | 28 | String DATA_KEY_RETURNVALUE = "value"; 29 | } 30 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ws/client/rest/form/FormDataResponseBean.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ws.client.rest.form; 22 | 23 | import lombok.Builder; 24 | import lombok.Value; 25 | 26 | import java.io.Serializable; 27 | import java.util.Map; 28 | 29 | @Value 30 | @Builder 31 | public class FormDataResponseBean implements Serializable 32 | { 33 | private boolean error; 34 | private String errorMessage; 35 | private String errorDetail; 36 | private Map formValues; 37 | } 38 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ws/server/PresentableForm.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ws.server; 22 | 23 | import lombok.Builder; 24 | import lombok.Singular; 25 | import lombok.Value; 26 | 27 | import java.io.Serializable; 28 | import java.util.List; 29 | 30 | @Value 31 | @Builder 32 | public class PresentableForm implements Serializable 33 | { 34 | @Singular 35 | private List formRows; 36 | private String label; 37 | private String message; 38 | private String messageDetail; 39 | } 40 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ws/server/RestAuthenticationType.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ws.server; 22 | 23 | public enum RestAuthenticationType 24 | { 25 | PUBLIC, 26 | LDAP, 27 | NAMED_SECRET, 28 | } 29 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ws/server/RestWebServer.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ws.server; 22 | 23 | import password.pwm.config.option.WebServiceUsage; 24 | 25 | import java.lang.annotation.ElementType; 26 | import java.lang.annotation.Retention; 27 | import java.lang.annotation.RetentionPolicy; 28 | import java.lang.annotation.Target; 29 | 30 | @Retention( RetentionPolicy.RUNTIME ) 31 | @Target( ElementType.TYPE ) 32 | public @interface RestWebServer 33 | { 34 | WebServiceUsage webService( ); 35 | } 36 | -------------------------------------------------------------------------------- /server/src/main/java/password/pwm/ws/server/rest/bean/HealthData.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | package password.pwm.ws.server.rest.bean; 22 | 23 | import lombok.Builder; 24 | import lombok.Value; 25 | 26 | import java.io.Serializable; 27 | import java.time.Instant; 28 | import java.util.List; 29 | 30 | @Value 31 | @Builder 32 | public class HealthData implements Serializable 33 | { 34 | @Builder.Default 35 | public Instant timestamp = Instant.now(); 36 | 37 | public String overall; 38 | public List records; 39 | } 40 | -------------------------------------------------------------------------------- /server/src/main/resources/password/pwm/bean/package.html: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | Session and Context beans used throughout PWM. 25 | 26 | 27 | -------------------------------------------------------------------------------- /server/src/main/resources/password/pwm/config/package.html: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | Configuration state managers and data objects. 25 | 26 | 27 | -------------------------------------------------------------------------------- /server/src/main/resources/password/pwm/http/servlet/package.html: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | All PWM servlets that implement {@link HttpServlet}, and are mapped in web.xml. 25 | 26 | 27 | -------------------------------------------------------------------------------- /server/src/main/resources/password/pwm/http/tag/package.html: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | Custom jsp tag libraries. 25 | 26 | 27 | -------------------------------------------------------------------------------- /server/src/main/resources/password/pwm/package.html: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | 25 | PWM root package. 26 | 27 | Password Management Framework (PWM). 28 |

29 | More information about PWM can be found at 30 | http://www.pwm-project.org or 31 | https://github.com/pwm-project/pwm. 32 | 33 | 34 | -------------------------------------------------------------------------------- /server/src/main/resources/password/pwm/util/package.html: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | Utility classes. 25 | 26 | 27 | -------------------------------------------------------------------------------- /server/src/test/resources/password/pwm/svc/report/allUserRecordsReport-noUserDnColumn.csv: -------------------------------------------------------------------------------- 1 | User Name,LDAP Profile,Email,UserGuid,Account Expiration Time,Password Expiration Time,Password Change Time,Response Save Time,Last Login Time,Has Valid Responses,Has Help Desk Responses,Response Storage Method,Response Format Type,Password Expired,Password Pre-Expired,Password Violates Policy,Password In Warn Period,Requires Password Update,Requires Response Update,Requires Profile Update,Record Cache Time 2 | fflintstone,Fred's LDAP profile,fflintstone@flintstones.tv,FRED1234,n/a,2016-08-30T17:02:46Z,2016-08-30T17:03:46Z,2016-08-30T17:04:46Z,2016-08-30T17:01:46Z,True,False,AUTO,TEXT,True,False,True,False,True,False,True,2016-08-30T17:29:46Z 3 | brubble,Barney's LDAP profile,fflintstone@flintstones.tv,BARNEY1234,n/a,2016-08-30T18:02:46Z,2016-08-30T18:03:46Z,2016-08-30T18:04:46Z,2016-08-30T18:01:46Z,False,True,LDAP,HELPDESK,False,True,False,True,False,True,False,2016-08-30T18:29:46Z 4 | -------------------------------------------------------------------------------- /server/src/test/resources/password/pwm/svc/report/allUserRecordsReport-onlyUserDnColumn.csv: -------------------------------------------------------------------------------- 1 | UserDN 2 | "cn=fflintstone,ou=users,o=novell" 3 | "cn=brubble,ou=users,o=novell" 4 | -------------------------------------------------------------------------------- /server/src/test/resources/password/pwm/svc/report/allUserRecordsReport.csv: -------------------------------------------------------------------------------- 1 | User Name,UserDN,LDAP Profile,Email,UserGuid,Account Expiration Time,Password Expiration Time,Password Change Time,Response Save Time,Last Login Time,Has Valid Responses,Has Help Desk Responses,Response Storage Method,Response Format Type,Password Expired,Password Pre-Expired,Password Violates Policy,Password In Warn Period,Requires Password Update,Requires Response Update,Requires Profile Update,Record Cache Time 2 | fflintstone,"cn=fflintstone,ou=users,o=novell",Fred's LDAP profile,fflintstone@flintstones.tv,FRED1234,n/a,2016-08-30T17:02:46Z,2016-08-30T17:03:46Z,2016-08-30T17:04:46Z,2016-08-30T17:01:46Z,True,False,AUTO,TEXT,True,False,True,False,True,False,True,2016-08-30T17:29:46Z 3 | brubble,"cn=brubble,ou=users,o=novell",Barney's LDAP profile,fflintstone@flintstones.tv,BARNEY1234,n/a,2016-08-30T18:02:46Z,2016-08-30T18:03:46Z,2016-08-30T18:04:46Z,2016-08-30T18:01:46Z,False,True,LDAP,HELPDESK,False,True,False,True,False,True,False,2016-08-30T18:29:46Z 4 | -------------------------------------------------------------------------------- /server/src/test/resources/password/pwm/svc/wordlist/test-wordlist.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/server/src/test/resources/password/pwm/svc/wordlist/test-wordlist.zip -------------------------------------------------------------------------------- /webapp/src/build/ldif/openldap.ldif: -------------------------------------------------------------------------------- 1 | dn: cn=pwm,cn=schema,cn=config 2 | objectClass: olcSchemaConfig 3 | cn: pwm 4 | olcAttributeTypes: {0}( 1.3.6.1.4.1.35015.1.2.1 NAME 'pwmEventLog' E 5 | QUALITY octetStringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 ) 6 | olcAttributeTypes: {1}( 1.3.6.1.4.1.35015.1.2.2 NAME 'pwmResponseSet 7 | ' EQUALITY octetStringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 ) 8 | olcAttributeTypes: {2}( 1.3.6.1.4.1.35015.1.2.3 NAME 'pwmLastPwdUpda 9 | te' SYNTAX 1.3.6.1.4.1.1466.115.121.1.24 ) 10 | olcAttributeTypes: {3}( 1.3.6.1.4.1.35015.1.2.4 NAME 'pwmGUID' SYNTA 11 | X 1.3.6.1.4.1.1466.115.121.1.15 ) 12 | olcAttributeTypes: {1}( 1.3.6.1.4.1.35015.1.2.6 NAME 'pwmOtpSecret' 13 | EQUALITY octetStringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 ) 14 | olcAttributeTypes: {2}( 1.3.6.1.4.1.35015.1.2.7 NAME 'pwmData' 15 | EQUALITY octetStringMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 ) 16 | olcObjectClasses: {0}( 1.3.6.1.4.1.591242.1.2010.04.16.1 NAME 'pwmUser' AUXILI 17 | ARY MAY ( pwmLastPwdUpdate $ pwmEventLog $ pwmResponseSet $ pwmOtpSecret $ pw 18 | mGUID $ pwmData ) ) 19 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/META-INF/context.xml: -------------------------------------------------------------------------------- 1 | 2 | 21 | 22 | 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/WEB-INF/Command.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | setLocal EnableDelayedExpansion 3 | 4 | if NOT DEFINED JAVA_HOME goto err 5 | 6 | set JAVA_OPTS="-Xmx1024m" 7 | set CLASSPATH="lib/*;classes" 8 | 9 | "%JAVA_HOME%\bin\java" %JAVA_OPTS% -classpath !CLASSPATH! password.pwm.util.cli.MainClass %1 %2 %3 %4 %5 %6 %7 %8 %9 10 | goto finally 11 | 12 | :err 13 | echo JAVA_HOME variable must be set to a valid Java JDK or JRE 14 | 15 | :finally 16 | endLocal -------------------------------------------------------------------------------- /webapp/src/main/webapp/WEB-INF/command.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # command.sh 3 | # 4 | # This script can be used to execute the command line tool. 5 | # It must be run from within the WEB-INF directory. 6 | # 7 | # Krowten's fault 8 | 9 | if [ -z "$JAVA_HOME" ]; then 10 | echo "JAVA_HOME variable must be set to a valid Java JDK or JRE" 11 | exit 1 12 | fi 13 | 14 | JAVA_OPTS=-Xmx1024m 15 | CLASSPATH=lib/*:classes 16 | 17 | $JAVA_HOME/bin/java $JAVA_OPTS -cp $CLASSPATH password.pwm.util.cli.MainClass $1 $2 $3 $4 $5 $6 $7 $8 $9 18 | 19 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/WEB-INF/seedlist.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/WEB-INF/seedlist.zip -------------------------------------------------------------------------------- /webapp/src/main/webapp/WEB-INF/wordlist.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/WEB-INF/wordlist.zip -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/examples/rest-dest-token-server.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | ~ Password Management Servlets (PWM) 3 | ~ http://www.pwm-project.org 4 | ~ 5 | ~ Copyright (c) 2006-2009 Novell, Inc. 6 | ~ Copyright (c) 2009-2023 The PWM Project 7 | ~ 8 | ~ Licensed under the Apache License, Version 2.0 (the "License"); 9 | ~ you may not use this file except in compliance with the License. 10 | ~ You may obtain a copy of the License at 11 | ~ 12 | ~ http://www.apache.org/licenses/LICENSE-2.0 13 | ~ 14 | ~ Unless required by applicable law or agreed to in writing, software 15 | ~ distributed under the License is distributed on an "AS IS" BASIS, 16 | ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ~ See the License for the specific language governing permissions and 18 | ~ limitations under the License. 19 | --%> 20 | <%-- 21 | THIS FILE IS NOT INTENDED FOR END USER MODIFICATION. 22 | See the README.TXT file in WEB-INF/jsp before making changes. 23 | --%> 24 | 25 | 26 | <%@ page language="java" contentType="application/json; charset=UTF-8" pageEncoding="UTF-8"%> 27 | { 28 | "email":"email@example.org", 29 | "sms":"555-555-5555", 30 | "displayValue":"e****@example.org or 555-555-****" 31 | } 32 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/examples/rest-macro-server.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | ~ Password Management Servlets (PWM) 3 | ~ http://www.pwm-project.org 4 | ~ 5 | ~ Copyright (c) 2006-2009 Novell, Inc. 6 | ~ Copyright (c) 2009-2023 The PWM Project 7 | ~ 8 | ~ Licensed under the Apache License, Version 2.0 (the "License"); 9 | ~ you may not use this file except in compliance with the License. 10 | ~ You may obtain a copy of the License at 11 | ~ 12 | ~ http://www.apache.org/licenses/LICENSE-2.0 13 | ~ 14 | ~ Unless required by applicable law or agreed to in writing, software 15 | ~ distributed under the License is distributed on an "AS IS" BASIS, 16 | ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ~ See the License for the specific language governing permissions and 18 | ~ limitations under the License. 19 | --%> 20 | <%-- 21 | THIS FILE IS NOT INTENDED FOR END USER MODIFICATION. 22 | See the README.TXT file in WEB-INF/jsp before making changes. 23 | --%> 24 | 25 | 26 | <%@ page language="java" contentType="application/json; charset=UTF-8" pageEncoding="UTF-8"%> 27 | {"output":"macro api output"} 28 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/examples/rest-pwcheck-server.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | ~ Password Management Servlets (PWM) 3 | ~ http://www.pwm-project.org 4 | ~ 5 | ~ Copyright (c) 2006-2009 Novell, Inc. 6 | ~ Copyright (c) 2009-2023 The PWM Project 7 | ~ 8 | ~ Licensed under the Apache License, Version 2.0 (the "License"); 9 | ~ you may not use this file except in compliance with the License. 10 | ~ You may obtain a copy of the License at 11 | ~ 12 | ~ http://www.apache.org/licenses/LICENSE-2.0 13 | ~ 14 | ~ Unless required by applicable law or agreed to in writing, software 15 | ~ distributed under the License is distributed on an "AS IS" BASIS, 16 | ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ~ See the License for the specific language governing permissions and 18 | ~ limitations under the License. 19 | --%> 20 | <%-- 21 | THIS FILE IS NOT INTENDED FOR END USER MODIFICATION. 22 | See the README.TXT file in WEB-INF/jsp before making changes. 23 | --%> 24 | 25 | 26 | <%@ page language="java" contentType="application/json; charset=UTF-8" pageEncoding="UTF-8"%> 27 | { "error": true, 28 | "errorMessage":"password check output - from rest api" 29 | } 30 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/reference/reference-nav.jsp: -------------------------------------------------------------------------------- 1 | <%-- 2 | ~ Password Management Servlets (PWM) 3 | ~ http://www.pwm-project.org 4 | ~ 5 | ~ Copyright (c) 2006-2009 Novell, Inc. 6 | ~ Copyright (c) 2009-2023 The PWM Project 7 | ~ 8 | ~ Licensed under the Apache License, Version 2.0 (the "License"); 9 | ~ you may not use this file except in compliance with the License. 10 | ~ You may obtain a copy of the License at 11 | ~ 12 | ~ http://www.apache.org/licenses/LICENSE-2.0 13 | ~ 14 | ~ Unless required by applicable law or agreed to in writing, software 15 | ~ distributed under the License is distributed on an "AS IS" BASIS, 16 | ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | ~ See the License for the specific language governing permissions and 18 | ~ limitations under the License. 19 | --%> 20 | <%-- 21 | THIS FILE IS NOT INTENDED FOR END USER MODIFICATION. 22 | See the README.TXT file in WEB-INF/jsp before making changes. 23 | --%> 24 | 25 | 26 | <%@ page import="password.pwm.http.tag.conditional.PwmIfTest" %> 27 | 28 | Reference Library 29 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/UserPhoto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/UserPhoto.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/close_40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/close_40.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/configmanagerStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | .buttoncell { 22 | border: 0; 23 | width:50%; 24 | } 25 | .buttonrow { 26 | height: 45px; 27 | margin-top: 20px; 28 | margin-bottom: 20px; 29 | } 30 | .menubutton { 31 | cursor: pointer; 32 | display: block; 33 | margin-left: auto; 34 | margin-right: auto; 35 | } 36 | .menubutton:hover { 37 | border:none; 38 | } 39 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/favicon.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/greenCheck.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/greenCheck.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/header-gradient.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/header-gradient.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/loading.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/orgChart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/orgChart.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/redX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/redX.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/referenceStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | .codeExample { 22 | background-color: #5d5d5d; 23 | color: white; 24 | border: 1px white solid; 25 | margin: 5px; 26 | padding: 10px; 27 | } 28 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/reset.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/reset.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/reset.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/reset.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/spacer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/spacer.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/text/eula.txt: -------------------------------------------------------------------------------- 1 | eula text -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/text/privacy.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/text/privacy.txt -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/text/welcome.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/text/welcome.txt -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/autumn/autumn-bg-mobile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/autumn/autumn-bg-mobile.jpg -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/autumn/autumn-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/autumn/autumn-bg.jpg -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/basic/mobileStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | /* 23 | * Placeholder stylesheet 24 | */ 25 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/basic/style.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | /* 23 | This stylesheet is intentionally blank and should never be populated with rules. It is intended 24 | to show the base style css without any additional theme elements. 25 | */ 26 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/blue/README.txt: -------------------------------------------------------------------------------- 1 | This is an example custom style. 2 | 3 | Edit the css stylesheets to fit your needs. Any style defined 4 | in these files will override the default stayles. 5 | 6 | The example logo has been composed using a file from www.clker.com: 7 | http://www.clker.com/clipart-12291.html 8 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/blue/header-gradient.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/blue/header-gradient.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/blue/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/blue/logo.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/blue/mobileStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | /* 23 | * Placeholder stylesheet 24 | */ 25 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/custom/mobileStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | /* 23 | This file is not used. See the PwmConfiguration advanced setting under User Interface --> Custom CSS Stylesheet 24 | */ 25 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/custom/style.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | /* 23 | / his file is not used. See the PwmConfiguration advanced setting under User Interface --> Custom CSS Stylesheet 24 | */ 25 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/matrix/MatrixText.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/matrix/MatrixText.jpg -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/matrix/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/matrix/logo.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/matrix/mobileStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/midnight/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/midnight/logo.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/pwm/mobileStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | .inputfield { 23 | width: 90%; 24 | } 25 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/pwm/paper-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/pwm/paper-bg.jpg -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/red/header-gradient.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/red/header-gradient.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/red/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/red/logo.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/red/mobileStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | /* 23 | * Placeholder stylesheet 24 | */ 25 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/sterile/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/sterile/logo.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/sterile/mobileStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | /* 23 | * Placeholder stylesheet 24 | */ 25 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/sterile/wait.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/sterile/wait.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/tulips/Istok.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/tulips/Istok.woff -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/tulips/README.txt: -------------------------------------------------------------------------------- 1 | This is an example custom style. 2 | 3 | Edit the css stylesheets to fit your needs. Any style defined 4 | in these files will override the default stayles. 5 | 6 | The example logo has been composed using a file from www.clker.com: 7 | http://www.clker.com/clipart-12291.html 8 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/tulips/tulips-bg-mobile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/tulips/tulips-bg-mobile.jpg -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/tulips/tulips-bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/tulips/tulips-bg.jpg -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/water/README.txt: -------------------------------------------------------------------------------- 1 | This is an example custom style. 2 | 3 | Edit the css stylesheets to fit your needs. Any style defined 4 | in these files will override the default stayles. 5 | 6 | The example logo has been composed using a file from www.clker.com: 7 | http://www.clker.com/clipart-12291.html 8 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/water/header-gradient.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/water/header-gradient.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/water/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/water/logo.png -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/water/mobileStyle.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Password Management Servlets (PWM) 3 | * http://www.pwm-project.org 4 | * 5 | * Copyright (c) 2006-2009 Novell, Inc. 6 | * Copyright (c) 2009-2023 The PWM Project 7 | * 8 | * Licensed under the Apache License, Version 2.0 (the "License"); 9 | * you may not use this file except in compliance with the License. 10 | * You may obtain a copy of the License at 11 | * 12 | * http://www.apache.org/licenses/LICENSE-2.0 13 | * 14 | * Unless required by applicable law or agreed to in writing, software 15 | * distributed under the License is distributed on an "AS IS" BASIS, 16 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 | * See the License for the specific language governing permissions and 18 | * limitations under the License. 19 | */ 20 | 21 | 22 | /* 23 | * Placeholder stylesheet 24 | */ 25 | -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/themes/water/rain.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/themes/water/rain.jpg -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/wait.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/wait.gif -------------------------------------------------------------------------------- /webapp/src/main/webapp/public/resources/warning.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pwm-project/pwm/b7ed22b3d075396330004bfcafa9947368412bc4/webapp/src/main/webapp/public/resources/warning.gif --------------------------------------------------------------------------------