All Downloads are FREE. Search and download functionalities are using the official Maven repository.

web-interface.assets.21.7274e9222d07ea893176.js Maven / Gradle / Ivy

There is a newer version: 6.0.6
Show newest version
webpackJsonp([21],{1487:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(5),l=a(n),r=t(2),s=a(r),i=t(16),o=t(923),u=a(o),d=t(167),c=a(d);t(1488);var f=t(279),m=a(f),p=t(927),h=a(p),g=t(1500),E=a(g),b=s.default.createClass({displayName:"AuthenticationPage",propTypes:{children:l.default.object,location:l.default.object.isRequired,params:l.default.object.isRequired,history:l.default.object.isRequired},mixins:[c.default],render:function(){return s.default.createElement("span",null,s.default.createElement(m.default,{title:"Authentication Management"},s.default.createElement("span",null,"Configure Graylog's authentication providers and manage the active users of this Graylog cluster."),s.default.createElement("span",null,"Read more authentication in the ",s.default.createElement(h.default,{page:u.default.PAGES.USERS_ROLES,text:"documentation"}),".")),s.default.createElement(i.Row,{className:"content"},s.default.createElement(i.Col,{md:12},s.default.createElement(E.default,{location:this.props.location,params:this.props.params,history:this.props.history},this.props.children))))}});exports.default=b,e.exports=exports.default},1488:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}var n=t(269),l=t(1489),r=a(l),s=t(1490),i=a(s),o=t(1491),u=a(o),d=t(1498),c=a(d),f=t(1499),m=a(f);n.PluginStore.register(new n.PluginManifest({},{authenticatorConfigurations:[{name:"mongodb-password",displayName:"Passwords",description:"Graylog managed account passwords (from MongoDB)",canBeDisabled:!0,component:r.default},{name:"mongodb-session",displayName:"Sessions",description:"Established session authenticator",canBeDisabled:!1,component:i.default},{name:"legacy-ldap",displayName:"LDAP/Active Directory",description:"Authenticates against external system and creates accounts in Graylog",canBeDisabled:!0,component:u.default},{name:"root-user",displayName:"Admin user",description:"Static account configured in the server configuration file",canBeDisabled:!1,component:c.default},{name:"access-token",displayName:"API Tokens",description:"Per user tokens which do not establish sessions",canBeDisabled:!0,component:m.default}]}))},1489:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(5),l=a(n),r=t(2),s=a(r),i=t(49),o=s.default.createClass({displayName:"MongoDbPasswordConfig",propTypes:{config:l.default.object},render:function(){return s.default.createElement(i.DocumentTitle,{title:"Password Authenticator"},s.default.createElement("span",null,s.default.createElement(i.PageHeader,{title:"Password Authenticator",subpage:!0},s.default.createElement("span",null,"This authenticator uses the password stored in MongoDB to grant access to users, it usually runs last, so that other authentication sources have priority.")),s.default.createElement("span",null,"If you only rely on external authentication systems, such as LDAP or Active Directory, you can disable this authenticator. It currently has no configuration options.")))}});exports.default=o,e.exports=exports.default},1490:function(e,exports,t){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var a=t(2),n=function(e){return e&&e.__esModule?e:{default:e}}(a),l=t(49),r=function(){return n.default.createElement(l.DocumentTitle,{title:"Session Authenticator"},n.default.createElement("span",null,n.default.createElement(l.PageHeader,{title:"Session Authenticator",subpage:!0},n.default.createElement("span",null,"This authenticator uses the session supplied from the web interface to grant access to logged in users, it usually runs first.")),n.default.createElement("span",null,"Since sessions are necessary to let the web interface function it cannot be disabled.")))};exports.default=r,e.exports=exports.default},1491:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(5),l=a(n),r=t(2),s=a(r),i=t(49),o=t(16),u=t(1492),d=a(u),c=t(1497),f=a(c),m=t(68),p=a(m),h=t(76),g=a(h),E=p.default.get("Ldap"),b=E.LdapActions,_=s.default.createClass({displayName:"LegacyLdapConfig",propTypes:{history:l.default.object.isRequired},getInitialState:function(){return{showSettings:!0}},componentDidMount:function(){b.loadSettings()},_toggleButton:function(){this.setState({showSettings:!this.state.showSettings})},_onSettingsCancel:function(){this._toggleButton()},_onCancel:function(){this.props.history.pushState(null,g.default.SYSTEM.AUTHENTICATION.OVERVIEW)},render:function(){var e=this.state.showSettings?"LDAP Group Mapping":"LDAP Settings",t=this.state.showSettings?s.default.createElement(d.default,{onCancel:this._onCancel,onShowGroups:this._toggleButton}):s.default.createElement(f.default,{onCancel:this._onSettingsCancel,onShowConfig:this._toggleButton});return s.default.createElement(i.DocumentTitle,{title:"LDAP Settings"},s.default.createElement("span",null,s.default.createElement(i.PageHeader,{title:"LDAP Settings",subpage:!0},s.default.createElement("span",null,"This page is the only resource you need to set up the Graylog LDAP integration. You can test the connection to your LDAP server and even try to log in with an LDAP account of your choice right away."),null,s.default.createElement("span",null,s.default.createElement(o.Button,{bsStyle:"success",onClick:this._toggleButton},e))),t))}});exports.default=_,e.exports=exports.default},1492:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l=t(5),r=a(l),s=t(2),i=a(s),o=t(1),u=a(o),d=t(16),c=t(89),f=a(c),m=t(922),p=a(m),h=t(46),g=t(49),E=t(270),b=a(E),_=t(1493),S=a(_),y=t(1494),v=a(y),C=t(23),A=a(C),N=t(8),P=a(N),w=A.default.getStore("Roles"),D=A.default.getStore("Ldap"),T=P.default.getActions("Ldap"),R={activeDirectory:{SYSTEM_USERNAME:i.default.createElement("span",null,"The username for the initial connection to the Active Directory server, e.g. ",i.default.createElement("code",null,"[email protected]"),".",i.default.createElement("br",null),"This needs to match the ",i.default.createElement("code",null,"userPrincipalName")," of that user."),SYSTEM_PASSWORD:"The password for the initial connection to the Active Directory server.",SEARCH_BASE:i.default.createElement("span",null,"The base tree to limit the Active Directory search query to, e.g. ",i.default.createElement("code",null,"cn=users,dc=example,dc=com"),"."),SEARCH_PATTERN:i.default.createElement("span",null,"For example ",i.default.createElement("code",{className:"text-nowrap"},"(&(objectClass=user)(sAMAccountName={0}))"),"."," ","The string ",i.default.createElement("code",null,"{0}")," will be replaced by the entered username."),DISPLAY_NAME:i.default.createElement("span",null,"Which Active Directory attribute to use for the full name of the user in Graylog, e.g. ",i.default.createElement("code",null,"displayName"),".",i.default.createElement("br",null),"Try to load a test user using the form below, if you are unsure which attribute to use."),GROUP_SEARCH_BASE:i.default.createElement("span",null,"The base tree to limit the Active Directory group search query to, e.g. ",i.default.createElement("code",null,"cn=users,dc=example,dc=com"),"."),GROUP_PATTERN:i.default.createElement("span",null,"The search pattern used to find groups in Active Directory for mapping to Graylog roles, e.g."," ",i.default.createElement("code",{className:"text-nowrap"},"(objectClass=group)")," or"," ",i.default.createElement("code",{className:"text-nowrap"},"(&(objectClass=group)(cn=graylog*))"),"."),GROUP_ID:i.default.createElement("span",null,"Which Active Directory attribute to use for the full name of the group, usually ",i.default.createElement("code",null,"cn"),"."),defaultGroup:function(e){return i.default.createElement("span",null,"The default Graylog role determines whether a user created via Active Directory can access the entire system, or has limited access.",i.default.createElement("br",null),"You can assign additional permissions by"," ",i.default.createElement("a",{href:"#",onClick:e},"mapping Active Directory groups to Graylog roles"),","," ","or you can assign additional Graylog roles to Active Directory users below.")},ADDITIONAL_GROUPS:"Choose the additional roles each Active Directory user will have by default, leave it empty if you want to map Active Directory groups to Graylog roles."},ldap:{SYSTEM_USERNAME:i.default.createElement("span",null,"The username for the initial connection to the LDAP server, e.g."," ",i.default.createElement("code",{className:"text-nowrap"},"uid=admin,ou=system"),", this might be optional depending on your LDAP server."),SYSTEM_PASSWORD:"The password for the initial connection to the LDAP server.",SEARCH_BASE:i.default.createElement("span",null,"The base tree to limit the LDAP search query to, e.g. ",i.default.createElement("code",{className:"text-nowrap"},"cn=users,dc=example,dc=com"),"."),SEARCH_PATTERN:i.default.createElement("span",null,"For example ",i.default.createElement("code",{className:"text-nowrap"},"(&(objectClass=inetOrgPerson)(uid={0}))"),"."," ","The string ",i.default.createElement("code",null,"{0}")," will be replaced by the entered username."),DISPLAY_NAME:i.default.createElement("span",null,"Which LDAP attribute to use for the full name of the user in Graylog, e.g. ",i.default.createElement("code",null,"cn"),".",i.default.createElement("br",null),"Try to load a test user using the form below, if you are unsure which attribute to use."),GROUP_SEARCH_BASE:i.default.createElement("span",null,"The base tree to limit the LDAP group search query to, e.g. ",i.default.createElement("code",null,"cn=users,dc=example,dc=com"),"."),GROUP_PATTERN:i.default.createElement("span",null,"The search pattern used to find groups in LDAP for mapping to Graylog roles, e.g."," ",i.default.createElement("code",null,"(objectClass=groupOfNames)")," or"," ",i.default.createElement("code",{className:"text-nowrap"},"(&(objectClass=groupOfNames)(cn=graylog*))"),"."),GROUP_ID:i.default.createElement("span",null,"Which LDAP attribute to use for the full name of the group, usually ",i.default.createElement("code",null,"cn"),"."),defaultGroup:function(e){return i.default.createElement("span",null,"The default Graylog role determines whether a user created via LDAP can access the entire system, or has limited access.",i.default.createElement("br",null),"You can assign additional permissions by"," ",i.default.createElement("a",{href:"#",onClick:e},"mapping LDAP groups to Graylog roles"),","," ","or you can assign additional Graylog roles to LDAP users below.")},ADDITIONAL_GROUPS:"Choose the additional roles each LDAP user will have by default, leave it empty if you want to map LDAP groups to Graylog roles."}},L=i.default.createClass({displayName:"LdapComponent",mixins:[u.default.listenTo(D,"_onLdapSettingsChange","_onLdapSettingsChange")],propTypes:{onCancel:r.default.func.isRequired,onShowGroups:r.default.func.isRequired},getInitialState:function(){return{ldapSettings:void 0,ldapUri:void 0,roles:void 0}},componentDidMount:function(){var e=this;w.loadRoles().then(function(t){e.setState({roles:e._formatAdditionalRoles(t)})})},_formatAdditionalRoles:function(e){return e.filter(function(e){return!("reader"===e.name.toLowerCase()||"admin"===e.name.toLowerCase())}).sort(function(e,t){return(0,p.default)(e.name.toLowerCase(),t.name.toLowerCase())}).map(function(e){return{label:e.name,value:e.name}})},_onLdapSettingsChange:function(e){if(e.ldapSettings){var t=b.default.clone(e.ldapSettings),a=new f.default(t.ldap_uri);this.setState({ldapSettings:t,ldapUri:a})}},_isLoading:function(){return!this.state.ldapSettings||!this.state.roles},_bindChecked:function(e,t){this._setSetting(e.target.name,void 0===t?e.target.checked:t)},_bindValue:function(e){this._setSetting(e.target.name,e.target.value)},_updateSsl:function(e){this._setUriScheme(e.target.checked?"ldaps":"ldap")},_setSetting:function(e,t){var a={},l=t;"ldap_uri"===e&&"object"===(void 0===t?"undefined":n(t))&&(a.ldapUri=t,l=t.toString());var r=b.default.clone(this.state.ldapSettings);r[e]=l,a.ldapSettings=r,a.serverConnectionStatus={},this.setState(a)},_setUriScheme:function(e){var t=this.state.ldapUri.clone();t.scheme(e),this._setSetting("ldap_uri",t)},_uriScheme:function(){return this.state.ldapUri.scheme()+"://"},_setUriHost:function(e){var t=this.state.ldapUri.clone();t.hostname(e),this._setSetting("ldap_uri",t)},_uriHost:function(){return this.state.ldapUri.hostname()},_setUriPort:function(e){var t=this.state.ldapUri.clone();t.port(e),this._setSetting("ldap_uri",t)},_uriPort:function(){return this.state.ldapUri.port()},_setAdditionalDefaultGroups:function(e){var t=e.split(",").filter(function(e){return""!==e});this._setSetting("additional_default_groups",t)},_saveSettings:function(e){e.preventDefault(),T.update(this.state.ldapSettings)},_onShowGroups:function(e){e.preventDefault(),this.props.onShowGroups()},render:function(){var e=this;if(this._isLoading())return i.default.createElement(g.Spinner,null);var t=this.state.ldapSettings.active_directory,a=!this.state.ldapSettings.enabled,n=t?R.activeDirectory:R.ldap,l=this.state.roles;return i.default.createElement(d.Row,null,i.default.createElement(d.Col,{lg:8},i.default.createElement("form",{id:"ldap-settings-form",className:"form-horizontal",onSubmit:this._saveSettings},i.default.createElement(h.Input,{type:"checkbox",label:"Enable LDAP",help:"User accounts will be taken from LDAP/Active Directory, the administrator account will still be available.",wrapperClassName:"col-sm-offset-3 col-sm-9",name:"enabled",checked:this.state.ldapSettings.enabled,onChange:this._bindChecked}),i.default.createElement("fieldset",null,i.default.createElement(d.Row,{className:"row-sm"},i.default.createElement(d.Col,{sm:12},i.default.createElement("legend",null,"1. Server configuration"))),i.default.createElement(h.Input,{id:"active_directory",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Server Type"},i.default.createElement("label",{className:"radio-inline"},i.default.createElement("input",{type:"radio",name:"active_directory",checked:!t,disabled:a,onChange:function(t){return e._bindChecked(t,!1)}}),"LDAP"),i.default.createElement("label",{className:"radio-inline"},i.default.createElement("input",{type:"radio",name:"active_directory",checked:t,disabled:a,onChange:function(t){return e._bindChecked(t,!0)}}),"Active Directory")),i.default.createElement(h.Input,{id:"ldap-uri-host",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Server Address"},i.default.createElement("div",{className:"input-group"},i.default.createElement("span",{className:"input-group-addon"},this._uriScheme()),i.default.createElement("input",{type:"text",className:"form-control",id:"ldap-uri-host",value:this._uriHost(),placeholder:"Hostname",required:!0,onChange:function(t){return e._setUriHost(t.target.value)},disabled:a}),i.default.createElement("span",{className:"input-group-addon input-group-separator"},":"),i.default.createElement("input",{type:"number",className:"form-control",id:"ldap-uri-port",value:this._uriPort(),min:"1",max:"65535",placeholder:"Port",required:!0,style:{width:120},onChange:function(t){return e._setUriPort(t.target.value)},disabled:a})),i.default.createElement("label",{className:"checkbox-inline"},i.default.createElement("input",{type:"checkbox",name:"ssl",checked:"ldaps"===this.state.ldapUri.scheme(),onChange:this._updateSsl,disabled:a})," SSL"),i.default.createElement("label",{className:"checkbox-inline"},i.default.createElement("input",{type:"checkbox",name:"use_start_tls",value:"true",id:"ldap-uri-starttls",checked:this.state.ldapSettings.use_start_tls,onChange:this._bindChecked,disabled:a})," StartTLS"),i.default.createElement("label",{className:"checkbox-inline"},i.default.createElement("input",{type:"checkbox",name:"trust_all_certificates",value:"true",id:"trust-all-certificates",checked:this.state.ldapSettings.trust_all_certificates,onChange:this._bindChecked,disabled:a})," Allow self-signed certificates")),i.default.createElement(h.Input,{type:"text",id:"system_username",name:"system_username",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",placeholder:"System User DN",label:"System Username",value:this.state.ldapSettings.system_username,help:n.SYSTEM_USERNAME,onChange:this._bindValue,disabled:a}),i.default.createElement(h.Input,{type:"password",id:"system_password",name:"system_password",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",placeholder:"System Password",label:"System Password",value:this.state.ldapSettings.system_password,help:n.SYSTEM_PASSWORD,onChange:this._bindValue,disabled:a})),i.default.createElement("fieldset",null,i.default.createElement(d.Row,{className:"row-sm"},i.default.createElement(d.Col,{sm:12},i.default.createElement("legend",null,"2. Connection Test"))),i.default.createElement(S.default,{ldapSettings:this.state.ldapSettings,ldapUri:this.state.ldapUri,disabled:a})),i.default.createElement("fieldset",null,i.default.createElement(d.Row,{className:"row-sm"},i.default.createElement(d.Col,{sm:12},i.default.createElement("legend",null,"3. User mapping"))),i.default.createElement(h.Input,{type:"text",id:"search_base",name:"search_base",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",placeholder:"Search Base",label:"Search Base DN",value:this.state.ldapSettings.search_base,help:n.SEARCH_BASE,onChange:this._bindValue,disabled:a,required:!0}),i.default.createElement(h.Input,{type:"text",id:"search_pattern",name:"search_pattern",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",placeholder:"Search Pattern",label:"User Search Pattern",value:this.state.ldapSettings.search_pattern,help:n.SEARCH_PATTERN,onChange:this._bindValue,disabled:a,required:!0}),i.default.createElement(h.Input,{type:"text",id:"display_name_attribute",name:"display_name_attribute",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",placeholder:"Display Name Attribute",label:"Display Name attribute",value:this.state.ldapSettings.display_name_attribute,help:n.DISPLAY_NAME,onChange:this._bindValue,disabled:a,required:!0})),i.default.createElement("fieldset",null,i.default.createElement(d.Row,{className:"row-sm"},i.default.createElement(d.Col,{sm:12},i.default.createElement("legend",null,"4. Group Mapping ",i.default.createElement("small",null,"(optional)")))),i.default.createElement(h.Input,{type:"text",id:"group_search_base",name:"group_search_base",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",placeholder:"Group Search Base",label:"Group Search Base DN",value:this.state.ldapSettings.group_search_base,help:n.GROUP_SEARCH_BASE,onChange:this._bindValue,disabled:a}),i.default.createElement(h.Input,{type:"text",id:"group_search_pattern",name:"group_search_pattern",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",placeholder:"Group Search Pattern",label:"Group Search Pattern",value:this.state.ldapSettings.group_search_pattern,help:n.GROUP_PATTERN,onChange:this._bindValue,disabled:a}),i.default.createElement(h.Input,{type:"text",id:"group_id_attribute",name:"group_id_attribute",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",placeholder:"Group Id Attribute",label:"Group Name Attribute",value:this.state.ldapSettings.group_id_attribute,help:n.GROUP_ID,onChange:this._bindValue,disabled:a}),i.default.createElement(h.Input,{id:"default_group",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Default User Role",help:n.defaultGroup(this._onShowGroups)},i.default.createElement(d.Row,null,i.default.createElement(d.Col,{sm:4},i.default.createElement("select",{id:"default_group",name:"default_group",className:"form-control",required:!0,value:this.state.ldapSettings.default_group.toLowerCase(),disabled:a,onChange:function(t){return e._setSetting("default_group",t.target.value)}},i.default.createElement("option",{value:"reader"},"Reader - basic access"),i.default.createElement("option",{value:"admin"},"Administrator - complete access"))))),i.default.createElement(d.Row,null,i.default.createElement(d.Col,{sm:9,smOffset:3},i.default.createElement(d.Panel,{bsStyle:"info"},"Changing the static role assignment will only affect to new users created via LDAP/Active Directory!",i.default.createElement("br",null),"Existing user accounts will be updated on their next login, or if you edit their roles manually."))),i.default.createElement(h.Input,{id:"additional_default_groups",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Additional Default Roles",help:n.ADDITIONAL_GROUPS},i.default.createElement(g.MultiSelect,{ref:"select",options:l,disabled:a,value:this.state.ldapSettings.additional_default_groups,onChange:function(t){return e._setAdditionalDefaultGroups(t)},placeholder:"Choose additional roles..."})),i.default.createElement(d.Row,null,i.default.createElement(d.Col,{sm:9,smOffset:3},i.default.createElement(d.Panel,{bsStyle:"info"},"Changing the static role assignment will only affect to new users created via LDAP/Active Directory!",i.default.createElement("br",null),"Existing user accounts will be updated on their next login, or if you edit their roles manually.")))),i.default.createElement("fieldset",null,i.default.createElement(d.Row,{className:"row-sm"},i.default.createElement(d.Col,{sm:12},i.default.createElement("legend",null,"5. Login test"))),i.default.createElement(v.default,{ldapSettings:this.state.ldapSettings,disabled:a})),i.default.createElement("fieldset",null,i.default.createElement(d.Row,{className:"row-sm"},i.default.createElement(d.Col,{sm:12},i.default.createElement("legend",null,"6. Store settings"))),i.default.createElement("div",{className:"form-group"},i.default.createElement(d.Col,{sm:9,smOffset:3},i.default.createElement(d.Button,{type:"submit",bsStyle:"primary",className:"save-button-margin"},"Save LDAP settings"),i.default.createElement(d.Button,{onClick:this.props.onCancel},"Cancel")))))))}});exports.default=L,e.exports=exports.default},1493:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(5),l=a(n),r=t(2),s=a(r),i=t(16),o=t(8),u=a(o),d=u.default.getActions("Ldap"),c=s.default.createClass({displayName:"TestLdapConnection",propTypes:{ldapSettings:l.default.object.isRequired,ldapUri:l.default.object.isRequired,disabled:l.default.bool},getInitialState:function(){return{serverConnectionStatus:{}}},componentWillReceiveProps:function(e){JSON.stringify(this.props.ldapSettings)!==JSON.stringify(e.ldapSettings)&&this.setState({serverConnectionStatus:{}})},_testServerConnection:function(){var e=this;d.testServerConnection.triggerPromise(this.props.ldapSettings).then(function(t){t.connected?e.setState({serverConnectionStatus:{loading:!1,success:!0}}):e.setState({serverConnectionStatus:{loading:!1,error:t.exception}})},function(){e.setState({serverConnectionStatus:{loading:!1,error:"Unable to check connection, please try again."}})}),this.setState({serverConnectionStatus:{loading:!0}})},_getServerConnectionStyle:function(){return this.state.serverConnectionStatus.success?"success":this.state.serverConnectionStatus.error?"danger":"info"},render:function(){var e=this.state.serverConnectionStatus,t=this.props.disabled||""===this.props.ldapUri.hostname()||e.loading,a=void 0;return e.error&&(a=s.default.createElement(i.Alert,{bsStyle:"danger"},e.error)),e.success&&(a=s.default.createElement(i.Alert,{bsStyle:"success"},"Connection to server was successful")),s.default.createElement("div",{className:"form-group"},s.default.createElement(i.Row,null,s.default.createElement(i.Col,{sm:9,smOffset:3},s.default.createElement(i.Button,{id:"ldap-test-connection",bsStyle:this._getServerConnectionStyle(),disabled:t,onClick:this._testServerConnection},e.loading?"Testing...":"Test Server Connection"),s.default.createElement("span",{className:"help-block"},"Performs a background connection check with the address and credentials above."),a)))}});exports.default=c,e.exports=exports.default},1494:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(5),l=a(n),r=t(2),s=a(r),i=t(16),o=t(46),u=t(270),d=a(u),c=t(8),f=a(c),m=f.default.getActions("Ldap"),p=s.default.createClass({displayName:"TestLdapLogin",propTypes:{ldapSettings:l.default.object.isRequired,disabled:l.default.bool},getInitialState:function(){return{loginUser:"",loginPassword:"",loginStatus:{}}},componentDidMount:function(){this.style.use()},componentWillReceiveProps:function(e){JSON.stringify(this.props.ldapSettings)!==JSON.stringify(e.ldapSettings)&&this.setState({loginStatus:{}})},componentWillUnmount:function(){this.style.unuse()},style:t(1495),_changeLoginForm:function(e){var t={};t["test_login_username"===e.target.name?"loginUser":"loginPassword"]=e.target.value,t.loginStatus={},this.setState(t)},_disableSubmitOnEnter:function(e){e.key&&"Enter"===e.key&&e.preventDefault()},_testLogin:function(){var e=this;m.testLogin.triggerPromise(this.props.ldapSettings,this.state.loginUser,this.state.loginPassword).then(function(t){!t.connected||!t.login_authenticated&&d.default.isEmpty(t.entry)?e.setState({loginStatus:{loading:!1,error:!0,result:t}}):e.setState({loginStatus:{loading:!1,success:!0,result:t}})},function(){e.setState({loginStatus:{loading:!1,error:!0,result:{exception:"Unable to test login, please try again."}}})}),this.setState({loginStatus:{loading:!0}})},_loginTestButtonStyle:function(){return this.state.loginStatus.success?"success":this.state.loginStatus.error?"danger":"info"},_formatLoginStatus:function(e){if(!e.error&&!e.success)return null;var t="Connection "+(e.error?"failed":"successful"),a=e.error?"danger":"success",n=void 0;n=d.default.isEmpty(e.result.entry)?s.default.createElement("i",{className:"fa fa-times ldap-failure"}):s.default.createElement("i",{className:"fa fa-check ldap-success"});var l=void 0;l=e.result.login_authenticated?s.default.createElement("i",{className:"fa fa-check ldap-success"}):""===this.state.loginPassword?s.default.createElement("i",{className:"fa fa-question ldap-info"}):s.default.createElement("i",{className:"fa fa-times ldap-failure"});var r=void 0;e.result.exception&&(r=s.default.createElement("pre",null,e.result.exception));var o=Object.keys(e.result.entry).map(function(t){return[s.default.createElement("dt",null,t),s.default.createElement("dd",null,e.result.entry[t])]}),u=o.length>0?s.default.createElement("dl",null,o):s.default.createElement("p",null,"LDAP server did not return any attributes for the user."),c=e.result.groups?e.result.groups.map(function(e){return s.default.createElement("li",{key:e},e)}):[],f=c.length>0?s.default.createElement("ul",{style:{padding:0}},c):s.default.createElement("p",null,"LDAP server did not return any groups for the user.");return s.default.createElement(i.Row,null,s.default.createElement(i.Col,{sm:9,smOffset:3},s.default.createElement(i.Panel,{header:t,bsStyle:a,className:"ldap-test-login-result"},s.default.createElement("ul",{className:"login-status"},s.default.createElement("li",null,s.default.createElement("h4",null,"User found ",n)),s.default.createElement("li",null,s.default.createElement("h4",null,"Login attempt ",l))),r&&s.default.createElement("h4",null,"Server response"),r,s.default.createElement("h4",null,"User's LDAP attributes"),u,s.default.createElement("h4",null,"User's LDAP groups"),f)))},render:function(){var e=this.state.loginStatus,t=this.props.disabled||!this.state.loginUser||e.loading;return s.default.createElement("div",null,s.default.createElement(o.Input,{id:"test_login_username",labelClassName:"col-sm-3",wrapperClassName:"col-sm-9",label:"Login test",help:"Verify the previous settings by loading the entry for the given user name. If you omit the password, no authentication attempt will be made."},s.default.createElement(i.Row,{className:"row-sm"},s.default.createElement(i.Col,{sm:5},s.default.createElement("input",{type:"text",id:"test_login_username",name:"test_login_username",className:"form-control",value:this.state.loginUser,onChange:this._changeLoginForm,onKeyPress:this._disableSubmitOnEnter,placeholder:"Username for login test",disabled:this.props.disabled})),s.default.createElement(i.Col,{sm:5},s.default.createElement("input",{type:"password",id:"test_login_password",name:"test_login_password",className:"form-control",value:this.state.testLoginPassword,onChange:this._changeLoginForm,onKeyPress:this._disableSubmitOnEnter,placeholder:"Password",disabled:this.props.disabled})),s.default.createElement(i.Col,{sm:2},s.default.createElement(i.Button,{bsStyle:this._loginTestButtonStyle(),disabled:t,onClick:this._testLogin},e.loading?"Testing...":"Test login")))),this._formatLoginStatus(e))}});exports.default=p,e.exports=exports.default},1495:function(e,exports,t){var a,n=0,l=t(1496);"string"==typeof l&&(l=[[e.i,l,""]]),l.locals&&(exports.locals=l.locals),exports.use=exports.ref=function(){return n++||(a=t(22)(l,{})),exports},exports.unuse=exports.unref=function(){n>0&&!--n&&(a(),a=null)}},1496:function(e,exports,t){exports=e.exports=t(21)(void 0),exports.push([e.i,".ldap-test-login-result h4{margin-bottom:10px}.ldap-test-login-result .login-status{padding:0;margin-bottom:10px}.ldap-test-login-result .login-status li{display:inline-block;margin-right:20px}.ldap-success{color:green}.ldap-failure{color:maroon}.ldap-info{color:#337ab7}",""])},1497:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(5),l=a(n),r=t(2),s=a(r),i=t(54),o=a(i),u=t(16),d=t(922),c=a(d),f=t(46),m=t(49),p=t(8),h=a(p),g=t(23),E=a(g),b=h.default.getActions("LdapGroups"),_=E.default.getStore("Roles"),S=(E.default.getStore("LdapGroups"),s.default.createClass({displayName:"LdapGroupsComponent",propTypes:{onCancel:l.default.func.isRequired,onShowConfig:l.default.func.isRequired},getInitialState:function(){return{groups:o.default.Set.of(),roles:o.default.Set.of(),mapping:o.default.Map(),groupsErrorMessage:null}},componentDidMount:function(){var e=this;b.loadMapping.triggerPromise().then(function(t){return e.setState({mapping:o.default.Map(t)})}),b.loadGroups.triggerPromise().then(function(t){return e.setState({groups:o.default.Set(t)})},function(t){400!==t.additional.status&&e.setState({groupsErrorMessage:t})}),_.loadRoles().then(function(t){return e.setState({roles:o.default.Set(t)})})},_updateMapping:function(e){var t=e.target.value,a=e.target.getAttribute("data-group");""===t?this.setState({mapping:this.state.mapping.delete(a)}):this.setState({mapping:this.state.mapping.set(a,t)})},_saveMapping:function(e){e.preventDefault(),b.saveMapping(this.state.mapping.toJS())},_onShowConfig:function(e){e.preventDefault(),this.props.onShowConfig()},_isLoading:function(){return!(this.state.mapping&&this.state.groups&&this.state.roles)},render:function(){var e=this;if(this._isLoading())return s.default.createElement(m.Spinner,null);if(this.state.groupsErrorMessage)return s.default.createElement(u.Panel,{header:"Error: Unable to load LDAP groups",bsStyle:"danger"},"The error message was:",s.default.createElement("br",null),this.state.groupsErrorMessage.message);c.default.insensitive=!0;var t=this.state.roles.sort(c.default).map(function(e){return s.default.createElement("option",{key:e.name,value:e.name},e.name)}),a=this.state.groups.sort(c.default).map(function(a){return s.default.createElement("li",{key:a},s.default.createElement(f.Input,{label:a,"data-group":a,type:"select",value:e.state.mapping.get(a,""),onChange:e._updateMapping,labelClassName:"col-sm-2",wrapperClassName:"col-sm-5"},s.default.createElement("option",{value:""},"None"),t))});return c.default.insensitive=!1,0===a.size?s.default.createElement("p",null,"No LDAP/Active Directory groups found. Please verify that your"," ",s.default.createElement("a",{href:"#",onClick:this._onShowConfig},"LDAP group mapping")," ","settings are correct."):s.default.createElement("form",{className:"form-horizontal",onSubmit:this._saveMapping},s.default.createElement(u.Row,null,s.default.createElement(u.Col,{md:12},s.default.createElement("ul",{style:{padding:0}},a)),s.default.createElement(u.Col,{md:10,mdPush:2},s.default.createElement(u.Button,{type:"submit",bsStyle:"primary",className:"save-button-margin"},"Save"),s.default.createElement(u.Button,{onClick:this.props.onCancel},"Cancel"))))}}));exports.default=S,e.exports=exports.default},1498:function(e,exports,t){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var a=t(2),n=function(e){return e&&e.__esModule?e:{default:e}}(a),l=t(49),r=function(){return n.default.createElement(l.DocumentTitle,{title:"Admin User Authenticator"},n.default.createElement("span",null,n.default.createElement(l.PageHeader,{title:"Admin User Authenticator",subpage:!0},n.default.createElement("span",null,"This authenticator grants access to the admin user specified in the configuration file.")),n.default.createElement("span",null,"Currently the admin user authenticator cannot be configured outside of the configuration file. It can also not be disabled at the moment.")))};exports.default=r,e.exports=exports.default},1499:function(e,exports,t){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var a=t(2),n=function(e){return e&&e.__esModule?e:{default:e}}(a),l=t(49),r=function(){return n.default.createElement(l.DocumentTitle,{title:"Access Token Authenticator"},n.default.createElement("span",null,n.default.createElement(l.PageHeader,{title:"Access Token Authenticator",subpage:!0},n.default.createElement("span",null,"Each user can generate access tokens to avoid having to use their main password in insecure scripts.")),n.default.createElement("span",null,"There currently is no configuration available for access tokens. You can safely disable this authenticator if you do not use access tokens.")))};exports.default=r,e.exports=exports.default},1500:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(5),l=a(n),r=t(2),s=a(r),i=t(1),o=a(i),u=t(16),d=t(920),c=t(76),f=a(c),m=t(49),p=t(269),h=t(167),g=a(h),E=t(1501),b=a(E),_=t(8),S=a(_),y=t(23),v=a(y),C=t(1502),A=a(C),N=S.default.getActions("Authentication"),P=v.default.getStore("Authentication"),w=v.default.getStore("CurrentUser"),D=s.default.createClass({displayName:"AuthenticationComponent",propTypes:{location:l.default.object.isRequired,params:l.default.object.isRequired,history:l.default.object.isRequired,children:l.default.element},mixins:[o.default.connect(P),o.default.connect(w),g.default],componentDidMount:function(){var e=this;N.load(),p.PluginStore.exports("authenticatorConfigurations").forEach(function(t){e.authenticatorConfigurations[t.name]=t})},authenticatorConfigurations:{},_pluginPane:function(){var e=this.props.params.name,t=this.authenticatorConfigurations[e];return t?s.default.createElement(t.component,{key:"auth-configuration-"+e,history:this.props.history}):s.default.createElement(u.Alert,{bsStyle:"danger"},"Plugin component missing for authenticator ",s.default.createElement("code",null,e),", this is an error.")},_onUpdateProviders:function(e){return N.update("providers",e)},_contentComponent:function(){return this.state.authenticators?void 0===this.props.params.name?s.default.createElement(b.default,{config:this.state.authenticators,descriptors:this.authenticatorConfigurations,updateConfig:this._onUpdateProviders,history:this.props.history}):this._pluginPane():s.default.createElement(m.Spinner,null)},render:function(){var e=this,t=[],a=this.state.authenticators;a?this.isPermitted(this.state.currentUser.permissions,["authentication:edit"])&&(t=a.realm_order.map(function(t,a){var n=e.authenticatorConfigurations[t],l=(n||{displayName:t}).displayName,r=a+1+". "+l;return s.default.createElement(d.LinkContainer,{key:"container-"+t,to:f.default.SYSTEM.AUTHENTICATION.PROVIDERS.provider(t)},s.default.createElement(u.NavItem,{key:t,title:r},r))}),t.unshift(s.default.createElement(u.NavItem,{key:"divider",disabled:!0,title:"Provider Settings",className:A.default.divider},"Provider Settings")),t.unshift(s.default.createElement(d.LinkContainer,{key:"container-settings",to:f.default.SYSTEM.AUTHENTICATION.PROVIDERS.CONFIG},s.default.createElement(u.NavItem,{key:"settings",title:"Configure Provider Order"},"Configure Provider Order")))):t=[s.default.createElement(u.NavItem,{key:"loading",disabled:!0,title:"Loading..."},"Loading...")],this.isPermitted(this.state.currentUser.permissions,["roles:read"])&&t.unshift(s.default.createElement(d.LinkContainer,{key:"roles",to:f.default.SYSTEM.AUTHENTICATION.ROLES},s.default.createElement(u.NavItem,{title:"Roles"},"Roles"))),this.isPermitted(this.state.currentUser.permissions,["users:list"])&&t.unshift(s.default.createElement(d.LinkContainer,{key:"users",to:f.default.SYSTEM.AUTHENTICATION.USERS.LIST},s.default.createElement(u.NavItem,{title:"Users"},"Users"))),0===t.length&&(t=[s.default.createElement(d.LinkContainer,{key:"profile-edit",to:f.default.SYSTEM.AUTHENTICATION.USERS.edit(encodeURIComponent(this.state.currentUser.username))},s.default.createElement(u.NavItem,{title:"Edit User"},"Edit User"))]);var n=s.default.createElement(u.Nav,{stacked:!0,bsStyle:"pills"},t),l=1===s.default.Children.count(this.props.children)?s.default.Children.only(this.props.children):this._contentComponent();return s.default.createElement(u.Row,null,s.default.createElement(u.Col,{md:2,className:A.default.subnavigation},n),s.default.createElement(u.Col,{md:10,className:A.default.contentpane},l))}});exports.default=D,e.exports=exports.default},1501:function(e,exports,t){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var n=t(5),l=a(n),r=t(2),s=a(r),i=t(16),o=t(272),u=a(o),d=t(49),c=t(76),f=a(c),m=t(270),p=a(m),h=t(922),g=a(h),E=s.default.createClass({displayName:"AuthProvidersConfig",propTypes:{config:l.default.object.isRequired,descriptors:l.default.object.isRequired,updateConfig:l.default.func.isRequired,history:l.default.object.isRequired},getDefaultProps:function(){return{config:{disabled_realms:[],realm_order:[]}}},getInitialState:function(){return{config:{disabled_realms:this.props.config.disabled_realms,realm_order:this.props.config.realm_order}}},_openModal:function(){this.refs.configModal.open()},_closeModal:function(){this.refs.configModal.close()},_saveConfig:function(){var e=this;this._hasNoActiveRealm()||this.props.updateConfig(this.state.config).then(function(){e._closeModal()})},_resetConfig:function(){this.setState(this.getInitialState())},_onCancel:function(){this.props.history.pushState(null,f.default.SYSTEM.AUTHENTICATION.OVERVIEW)},_updateSorting:function(e){var t=p.default.clone(this.state.config);t.realm_order=e.map(function(e){return e.id}),this.setState({config:t})},_toggleStatus:function(e){var t=this;return function(){var a=t.state.config.disabled_realms,n=p.default.clone(t.state.config);t.refs[e].checked?n.disabled_realms=a.filter(function(t){return t!==e}):-1===a.indexOf(e)&&n.disabled_realms.push(e),t.setState({config:n})}},_hasNoActiveRealm:function(){return this.state.config.disabled_realms.length>=this.state.config.realm_order.length},_noActiveRealmWarning:function(){return this._hasNoActiveRealm()?s.default.createElement(i.Alert,{bsStyle:"danger"},s.default.createElement("strong",null,"ERROR:")," No active authentication provider!"):null},_summary:function(){var e=this;return this.state.config.realm_order.map(function(t,a){var n=e.state.config.disabled_realms.filter(function(e){return e===t}).length>0?"disabled":"active",l=e.props.descriptors[t]||{id:t,title:"Unavailable"};return s.default.createElement("tr",{key:a},s.default.createElement("td",null,a+1),s.default.createElement("td",null,l.displayName),s.default.createElement("td",null,l.description),s.default.createElement("td",null,n))})},_sortableItems:function(){var e=this;return this.state.config.realm_order.map(function(t){var a=e.props.descriptors[t]||{id:t,title:"Unavailable"};return{id:a.name,title:a.displayName}})},_statusForm:function(){var e=this;return p.default.clone(this.state.config.realm_order).sort(function(e,t){return(0,g.default)(e.displayName,t.displayName)}).map(function(t,a){var n=e.state.config.disabled_realms.filter(function(e){return e===t}).length<1,l=e.props.descriptors[t]||{id:t,displayName:"Unavailable"};return s.default.createElement("tr",{key:a},s.default.createElement("td",null,l.displayName),s.default.createElement("td",null,s.default.createElement("input",{ref:l.name,type:"checkbox",checked:n,disabled:!l.canBeDisabled,onChange:e._toggleStatus(l.name)})))})},render:function(){return s.default.createElement(d.DocumentTitle,{title:"Authentication Providers"},s.default.createElement("span",null,s.default.createElement(d.PageHeader,{title:"Authentication Providers",subpage:!0},s.default.createElement("span",null,"The following authentication providers executed in order during login. Disabled providers will be skipped.",s.default.createElement("br",null),"A user is authenticated by the first matching provider, a successful match can cause a Graylog account for this user to be created.")),s.default.createElement(i.Row,null,s.default.createElement(i.Col,{md:6},s.default.createElement(i.Table,{striped:!0,bordered:!0,className:"top-margin"},s.default.createElement("thead",null,s.default.createElement("tr",null,s.default.createElement("th",null,"#"),s.default.createElement("th",null,"Provider"),s.default.createElement("th",null,"Description"),s.default.createElement("th",null,"Status"))),s.default.createElement("tbody",null,this._summary())),s.default.createElement(d.IfPermitted,{permissions:"clusterconfigentry:edit"},s.default.createElement(i.Button,{bsStyle:"primary",onClick:this._openModal,className:"save-button-margin"},"Update"),s.default.createElement(i.Button,{onClick:this._onCancel},"Cancel")),s.default.createElement(u.default,{ref:"configModal",title:"Update Authentication Provider Configuration",onSubmitForm:this._saveConfig,onModalClose:this._resetConfig,submitButtonText:"Save"},s.default.createElement("h3",null,"Order"),s.default.createElement("p",null,"Use drag and drop to change the execution order of the authentication providers."),s.default.createElement(d.SortableList,{items:this._sortableItems(),onMoveItem:this._updateSorting}),s.default.createElement("h3",null,"Status"),s.default.createElement("p",null,"Change the checkboxes to change the status of an authentication provider."),s.default.createElement(i.Table,{striped:!0,bordered:!0,condensed:!0,className:"top-margin"},s.default.createElement("thead",null,s.default.createElement("tr",null,s.default.createElement("th",null,"Provider"),s.default.createElement("th",null,"Enabled"))),s.default.createElement("tbody",null,this._statusForm())),this._noActiveRealmWarning())))))}});exports.default=E,e.exports=exports.default},1502:function(e,exports,t){var a=t(1503);"string"==typeof a&&(a=[[e.i,a,""]]);var n={};n.transform=void 0;t(22)(a,n);a.locals&&(e.exports=a.locals)},1503:function(e,exports,t){exports=e.exports=t(21)(void 0),exports.push([e.i,"._1-7A7Wk93i64abyb8RD454{border-right:1px solid #d1d1d1}._19WVz2Pea58X7AsOkte5Ft{border-left:1px solid #d1d1d1;margin-left:-1px}.GzKGC_ryb3VuVQhgY0qvA{border-bottom:1px solid #d1d1d1}",""]),exports.locals={subnavigation:"_1-7A7Wk93i64abyb8RD454",contentpane:"_19WVz2Pea58X7AsOkte5Ft",divider:"GzKGC_ryb3VuVQhgY0qvA"}}});
//# sourceMappingURL=21.7274e9222d07ea893176.js.map




© 2015 - 2024 Weber Informatics LLC | Privacy Policy