import React, { Component } from 'react'; import PropTypes from 'prop-types'; import Button from 'components/buttons/Button'; import Icon from 'components/icons/Icon'; import InputField from 'components/forms/fields/InputField'; import { renderFlash } from 'redux/nodes/notifications/actions'; import { copyText, COPY_TEXT_SUCCESS, COPY_TEXT_ERROR, } from 'utilities/copy_text'; import certificate from '../../../../assets/images/osquery-certificate.svg'; const baseClass = 'add-host-modal'; class AddHostModal extends Component { static propTypes = { dispatch: PropTypes.func, onFetchCertificate: PropTypes.func, onReturnToApp: PropTypes.func, osqueryEnrollSecret: PropTypes.string, }; constructor(props) { super(props); this.state = { revealSecret: false }; } onCopySecret = (elementClass) => { return (evt) => { evt.preventDefault(); const { dispatch } = this.props; if (copyText(elementClass)) { dispatch(renderFlash('success', COPY_TEXT_SUCCESS)); } else { this.setState({ revealSecret: true }); dispatch(renderFlash('error', COPY_TEXT_ERROR)); } }; }; toggleSecret = (evt) => { const { revealSecret } = this.state; evt.preventDefault(); this.setState({ revealSecret: !revealSecret }); return false; }; render() { const { onCopySecret, toggleSecret } = this; const { revealSecret } = this.state; const { onFetchCertificate, onReturnToApp, osqueryEnrollSecret, } = this.props; return (
Follow the instructions below to add hosts to your Kolide Instance.
In order to install osquery on a client you will need the following information:
The following is your enroll secret: {revealSecret ? 'Hide' : 'Reveal'} Secret
If you use the native osquery TLS plugins, Osquery requires the same TLS certificate that Kolide is using in order to authenticate. You can fetch the certificate below: