MySQL เจตเจฟเฉฑเจš เจเจจเจ•เฉเจฐเจฟเจชเจธเจผเจจ: เจ•เฉ€เจธเจŸเฉ‹เจฐ

เจ•เฉ‹เจฐเจธ เจฒเจˆ เจจเจตเฉ‡เจ‚ เจฆเจพเจ–เจฒเฉ‡ เจฆเฉ€ เจธเจผเฉเจฐเฉ‚เจ†เจค เจฆเฉ€ เจ‰เจฎเฉ€เจฆ เจตเจฟเฉฑเจš "เจกเจพเจŸเจพเจฌเฉ‡เจธ" เจ…เจธเฉ€เจ‚ เจคเฉเจนเจพเจกเฉ‡ เจฒเจˆ เจ‡เฉฑเจ• เจ‰เจชเจฏเฉ‹เจ—เฉ€ เจฒเฉ‡เจ– เจฆเจพ เจ…เจจเฉเจตเจพเจฆ เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจนเฉˆเฅค

MySQL เจตเจฟเฉฑเจš เจเจจเจ•เฉเจฐเจฟเจชเจธเจผเจจ: เจ•เฉ€เจธเจŸเฉ‹เจฐ

เจชเจพเจฐเจฆเจฐเจธเจผเฉ€ เจกเฉ‡เจŸเจพ เจเจจเจ•เฉเจฐเจฟเจชเจธเจผเจจ (TDE) เจตเจฟเฉฑเจš เจชเฉเจฐเจ—เจŸ เจนเฉ‹เจ‡เจ† MySQL เจฒเจˆ เจชเจฐเจ•เฉ‹เจจเจพ เจธเจฐเจตเจฐ เจ…เจคเฉ‡ เจ•เฉเจ เจธเจฎเฉ‡เจ‚ เจฒเจˆ MySQL. เจชเจฐ เจ•เฉ€ เจคเฉเจธเฉ€เจ‚ เจ•เจฆเฉ‡ เจ‡เจธ เจฌเจพเจฐเฉ‡ เจธเฉ‹เจšเจฟเจ† เจนเฉˆ เจ•เจฟ เจ‡เจน เจนเฉเฉฑเจก เจฆเฉ‡ เจนเฉ‡เจ เจพเจ‚ เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจคเฉเจนเจพเจกเฉ‡ เจธเจฐเจตเจฐ 'เจคเฉ‡ TDE เจฆเจพ เจ•เฉ€ เจชเฉเจฐเจญเจพเจต เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ? เจฒเฉ‡เจ–เจพเจ‚ เจฆเฉ€ เจ‡เจธ เจฒเฉœเฉ€ เจตเจฟเฉฑเจš เจ…เจธเฉ€เจ‚ เจฆเฉ‡เจ–เจพเจ‚เจ—เฉ‡ เจ•เจฟ TDE เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ†เจ“ เจ•เฉเฉฐเจœเฉ€ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเฉ€เจ, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจเจจเจ•เฉเจฐเจฟเจชเจธเจผเจจ เจฆเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ เจ‡เจน เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ เจนเฉˆเฅค เจซเจฟเจฐ เจ…เจธเฉ€เจ‚ เจ‡เจธ เจ—เฉฑเจฒ 'เจคเฉ‡ เจกเฉ‚เฉฐเจ˜เจพเจˆ เจจเจพเจฒ เจตเจฟเจšเจพเจฐ เจ•เจฐเจพเจ‚เจ—เฉ‡ เจ•เจฟ MySQL/MySQL เจฒเจˆ เจชเจฐเจ•เฉ‹เจจเจพ เจธเจฐเจตเจฐ เจตเจฟเฉฑเจš เจเจจเจ•เฉเจฐเจฟเจชเจธเจผเจจ เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ MySQL เจฒเจˆ เจชเจฐเจ•เฉ‹เจจเจพ เจธเจฐเจตเจฐ เจตเจฟเฉฑเจš เจ•เจฟเจนเฉœเฉ€เจ†เจ‚ เจตเจพเจงเฉ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจนเจจเฅค

MySQL เจ•เฉ€เจฐเจฟเฉฐเจ—

เจ•เฉ€เจฐเจฟเฉฐเจ— เจ‰เจน เจชเจฒเฉฑเจ—เจ‡เจจ เจนเจจ เจœเฉ‹ เจธเจฐเจตเจฐ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจธเจฅเจพเจจเจ• เจซเจพเจˆเจฒ (เจ•เฉ€เจฐเจฟเฉฐเจ—_เจซเจพเจˆเจฒ) เจœเจพเจ‚ เจฐเจฟเจฎเฉ‹เจŸ เจธเจฐเจตเจฐ (เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจนเฉˆเจธเจผเฉ€เจ•เฉŒเจฐเจช เจตเจพเจฒเจŸ) เจตเจฟเฉฑเจš เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจฆเฉ€ เจชเฉเฉฑเจ›เจ—เจฟเฉฑเจ› เจ•เจฐเจจ, เจฌเจฃเจพเจ‰เจฃ เจ…เจคเฉ‡ เจฎเจฟเจŸเจพเจ‰เจฃ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเฉ‡ เจนเจจเฅค เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ‰เจนเจจเจพเจ‚ เจฆเฉ€ เจฎเฉเฉœ เจชเฉเจฐเจพเจชเจคเฉ€ เจจเฉ‚เฉฐ เจคเฉ‡เจœเจผ เจ•เจฐเจจ เจฒเจˆ เจนเจฎเฉ‡เจธเจผเจพเจ‚ เจธเจฅเจพเจจเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เฉˆเจธเจผ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจชเจฒเฉฑเจ—เจ‡เจจ เจจเฉ‚เฉฐ เจฆเฉ‹ เจธเจผเฉเจฐเฉ‡เจฃเฉ€เจ†เจ‚ เจตเจฟเฉฑเจš เจตเฉฐเจกเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ:

  • เจธเจฅเจพเจจเจ• เจธเจŸเฉ‹เจฐเฉ‡เจœเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ‡เฉฑเจ• เจธเจฅเจพเจจเจ• เจซเจพเจˆเจฒ (เจ…เจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจซเจพเจˆเจฒ-เจ…เจงเจพเจฐเจฟเจค เจ•เฉ€เจฐเจฟเฉฐเจ— เจ•เจนเจฟเฉฐเจฆเฉ‡ เจนเจพเจ‚)เฅค
  • เจฐเจฟเจฎเฉ‹เจŸ เจธเจŸเฉ‹เจฐเฉ‡เจœเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ (เจ…เจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจธเจฐเจตเจฐ-เจ…เจงเจพเจฐเจฟเจค เจ•เฉ€เจฐเจฟเฉฐเจ— เจ•เจนเจฟเฉฐเจฆเฉ‡ เจนเจพเจ‚)เฅค

เจ‡เจน เจตเฉฑเจ– เจ•เจฐเจจเจพ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจฆเฉ€เจ†เจ‚ เจตเฉฑเจ–-เจตเฉฑเจ– เจ•เจฟเจธเจฎเจพเจ‚ เจฅเฉ‹เฉœเฉเจนเจพ เจตเฉฑเจ–เจฐเจพ เจตเจฟเจนเจพเจฐ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ, เจจเจพ เจธเจฟเจฐเจซเจผ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจ…เจคเฉ‡ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจตเฉ‡เจฒเฉ‡, เจธเจ—เฉ‹เจ‚ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจตเฉ‡เจฒเฉ‡ เจตเฉ€เฅค

เจ‡เฉฑเจ• เจซเจพเจˆเจฒ เจธเจŸเฉ‹เจฐเฉ‡เจœเจผ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจธเจŸเจพเจฐเจŸเจ…เฉฑเจช 'เจคเฉ‡, เจธเจŸเฉ‹เจฐเฉ‡เจœเจผ เจฆเฉ€ เจธเจฎเฉเฉฑเจšเฉ€ เจธเจฎเฉฑเจ—เจฐเฉ€ เจจเฉ‚เฉฐ เจ•เฉˆเจธเจผ เจตเจฟเฉฑเจš เจฒเฉ‹เจก เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ: เจ•เฉเฉฐเจœเฉ€ เจ†เจˆเจกเฉ€, เจ•เฉเฉฐเจœเฉ€ เจ‰เจชเจญเฉ‹เจ—เจคเจพ, เจ•เฉเฉฐเจœเฉ€ เจ•เจฟเจธเจฎ, เจ…เจคเฉ‡ เจ–เฉเจฆ เจ•เฉเฉฐเจœเฉ€เฅค

เจ‡เฉฑเจ• เจธเจฐเจตเจฐ-เจธเจพเจˆเจก เจธเจŸเฉ‹เจฐ (เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ) เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš, เจธเจผเฉเจฐเฉ‚เจ†เจคเฉ€ เจธเจฎเฉ‡เจ‚ เจธเจฟเจฐเจซ เจ•เฉเฉฐเจœเฉ€ เจ†เจˆเจกเฉ€ เจ…เจคเฉ‡ เจ•เฉเฉฐเจœเฉ€ เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจฒเฉ‹เจก เจ•เฉ€เจคเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ, เจ‡เจธเจฒเจˆ เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจจเจพเจฒ เจธเจŸเจพเจฐเจŸเจ…เจช เจนเฉŒเจฒเฉ€ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเจพเฅค เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจ†เจฒเจธ เจจเจพเจฒ เจฒเฉ‹เจก เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจฏเจพเจจเฉ€, เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจตเจพเจฒเจŸ เจคเฉ‹เจ‚ เจ‰เจฆเฉ‹เจ‚ เจนเฉ€ เจฒเฉ‹เจก เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจ‡เจธเจฆเฉ€ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจ‡เฉฑเจ• เจตเจพเจฐ เจกเจพเจ‰เจจเจฒเฉ‹เจก เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจตเจฟเฉฑเจš เจ•เฉˆเจธเจผ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจคเจพเจ‚ เจœเฉ‹ เจญเจตเจฟเฉฑเจ– เจตเจฟเฉฑเจš เจ‡เจธเจจเฉ‚เฉฐ เจŸเฉ€เจเจฒเจเจธ เจ•เจจเฉˆเจ•เจธเจผเจจเจพเจ‚ เจฆเฉเจ†เจฐเจพ เจตเฉˆเฉฑเจฒเจŸ เจธเจฐเจตเจฐ เจจเจพเจฒ เจเจ•เจธเฉˆเจธ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจจเจพ เจชเจตเฉ‡เฅค เจ…เฉฑเจ—เฉ‡, เจ†เจ“ เจฆเฉ‡เจ–เฉ€เจ เจ•เจฟ เจ•เฉเฉฐเจœเฉ€ เจธเจŸเฉ‹เจฐ เจตเจฟเฉฑเจš เจ•เจฟเจนเฉœเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฎเฉŒเจœเฉ‚เจฆ เจนเฉˆเฅค

เจฎเฉเฉฑเจ– เจœเจพเจฃเจ•เจพเจฐเฉ€ เจตเจฟเฉฑเจš เจนเฉ‡เจ  เจฒเจฟเจ–เฉ‡ เจธเจผเจพเจฎเจฒ เจนเจจ:

  • เจ•เฉเฉฐเจœเฉ€ เจ†เจˆ.เจกเฉ€ โ€” เจ•เฉเฉฐเจœเฉ€ เจชเจ›เจพเจฃเจ•เจฐเจคเจพ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ:
    INNODBKey-764d382a-7324-11e9-ad8f-9cb6d0d5dc99-1
  • เจ•เฉเฉฐเจœเฉ€ เจ•เจฟเจธเจฎ โ€” เจตเจฐเจคเฉ‡ เจ—เจ เจเจจเจ•เฉเจฐเจฟเจชเจธเจผเจจ เจเจฒเจ—เฉ‹เจฐเจฟเจฆเจฎ 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจฎเฉเฉฑเจ– เจ•เจฟเจธเจฎ, เจธเฉฐเจญเจต เจฎเฉเฉฑเจฒ: โ€œAESโ€, โ€œRSAโ€ เจœเจพเจ‚ โ€œDSAโ€เฅค
  • เจ•เฉเฉฐเจœเฉ€ เจฒเฉฐเจฌเจพเจˆ โ€” เจฌเจพเจˆเจŸเจพเจ‚ เจตเจฟเฉฑเจš เจฎเฉเฉฑเจ– เจฒเฉฐเจฌเจพเจˆ, AES: 16, 24 เจœเจพเจ‚ 32, RSA 128, 256, 512 เจ…เจคเฉ‡ DSA 128, 256 เจœเจพเจ‚ 384เฅค
  • เจ‰เจชเจญเฉ‹เจ—เฉ€ เจจเฉ‚เฉฐ - เจ•เฉเฉฐเจœเฉ€ เจฆเจพ เจฎเจพเจฒเจ•เฅค เจœเฉ‡เจ•เจฐ เจ•เฉเฉฐเจœเฉ€ เจธเจฟเจธเจŸเจฎ เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจฎเจพเจธเจŸเจฐ เจ•เฉเฉฐเจœเฉ€, เจคเจพเจ‚ เจ‡เจน เจ–เฉ‡เจคเจฐ เจ–เจพเจฒเฉ€ เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ keyring_udf เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ•เฉเฉฐเจœเฉ€ เจฌเจฃเจพเจˆ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจน เจ–เฉ‡เจคเจฐ เจ•เฉเฉฐเจœเฉ€ เจฆเฉ‡ เจฎเจพเจฒเจ• เจฆเฉ€ เจชเจ›เจพเจฃ เจ•เจฐเจฆเจพ เจนเฉˆเฅค
  • เจ•เฉเฉฐเจœเฉ€ เจ†เจชเจฃเฉ‡ เจ†เจช เจจเฉ‚เฉฐ

เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเฉ‡ เจฆเฉเจ†เจฐเจพ เจตเจฟเจฒเฉฑเจ–เจฃ เจคเฉŒเจฐ 'เจคเฉ‡ เจชเจ›เจพเจฃเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ: key_id, เจ‰เจชเจญเฉ‹เจ—เจคเจพเฅค

เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจ…เจคเฉ‡ เจฎเจฟเจŸเจพเจ‰เจฃ เจตเจฟเฉฑเจš เจตเฉ€ เจ…เฉฐเจคเจฐ เจนเจจเฅค

เจซเจพเจˆเจฒ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจคเฉ‡เจœเจผ เจนเฉˆเฅค เจคเฉเจธเฉ€เจ‚ เจธเฉ‹เจš เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ•เจฟ เจ‡เฉฑเจ• เจ•เฉเฉฐเจœเฉ€ เจธเจŸเฉ‹เจฐ เจธเจฟเจฐเจซเจผ เจ‡เฉฑเจ• เจตเจพเจฐ เจ‡เฉฑเจ• เจซเจพเจˆเจฒ เจฆเฉ€ เจ•เฉเฉฐเจœเฉ€ เจฒเจฟเจ– เจฐเจฟเจนเจพ เจนเฉˆ, เจชเจฐ เจจเจนเฉ€เจ‚, เจ‡เฉฑเจฅเฉ‡ เจนเฉ‹เจฐ เจตเฉ€ เจšเฉฑเจฒ เจฐเจฟเจนเจพ เจนเฉˆเฅค เจœเจฆเฉ‹เจ‚ เจตเฉ€ เจ•เฉ‹เจˆ เจซเจพเจˆเจฒ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจธเฉ‹เจง เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจธเจญ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจธเจพเจฐเฉ€ เจธเจฎเฉฑเจ—เจฐเฉ€ เจฆเฉ€ เจฌเฉˆเจ•เจ…เฉฑเจช เจ•เจพเจชเฉ€ เจฌเจฃเจพเจˆ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค เจฎเฉฐเจจ เจฒเจ“ เจ•เจฟ เจซเจพเจˆเจฒ เจจเฉ‚เฉฐ my_biggest_secrets เจ•เจฟเจนเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจฌเฉˆเจ•เจ…เฉฑเจช เจ•เจพเจชเฉ€ my_biggest_secrets.backup เจนเฉ‹เจตเฉ‡เจ—เฉ€เฅค เจ…เฉฑเจ—เฉ‡, เจ•เฉˆเจธเจผ เจฌเจฆเจฒเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ (เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจœเฉ‹เฉœเฉ€เจ†เจ‚ เจœเจพเจ‚ เจฎเจฟเจŸเจพเจˆเจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจ) เจ…เจคเฉ‡, เจœเฉ‡ เจธเจญ เจ•เฉเจ เจธเจซเจฒ เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ•เฉˆเจธเจผ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจซเจพเจˆเจฒ เจตเจฟเฉฑเจš เจฐเฉ€เจธเฉˆเจŸ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจฌเจนเฉเจค เจ˜เฉฑเจŸ เจฎเจพเจฎเจฒเจฟเจ†เจ‚ เจตเจฟเฉฑเจš, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจธเจฐเจตเจฐ เจ…เจธเจซเจฒเจคเจพ, เจคเฉเจธเฉ€เจ‚ เจ‡เจน เจฌเฉˆเจ•เจ…เฉฑเจช เจซเจพเจˆเจฒ เจฆเฉ‡เจ– เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจ…เจ—เจฒเฉ€ เจตเจพเจฐ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจฒเฉ‹เจก เจนเฉ‹เจฃ 'เจคเฉ‡ เจฌเฉˆเจ•เจ…เฉฑเจช เจซเจพเจˆเจฒ เจฎเจฟเจŸเจพ เจฆเจฟเฉฑเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ (เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจธเจฐเจตเจฐ เจฆเฉ‡ เจฎเฉเฉœ เจšเจพเจฒเฉ‚ เจนเฉ‹เจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ)เฅค

เจธเจฐเจตเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจœเจพเจ‚ เจฎเจฟเจŸเจพเจ‰เจฃ เจตเฉ‡เจฒเฉ‡, เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเฉ‚เฉฐ "เจ•เฉเฉฐเจœเฉ€ เจญเฉ‡เจœเฉ‹" / "เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจฎเจฟเจŸเจพเจ‰เจฃ เจฆเฉ€ เจฌเฉ‡เจจเจคเฉ€" เจ•เจฎเจพเจ‚เจกเจพเจ‚ เจจเจพเจฒ MySQL เจธเจฐเจตเจฐ เจจเจพเจฒ เจœเฉเฉœเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

เจšเจฒเฉ‹ เจธเจฐเจตเจฐ เจธเจŸเจพเจฐเจŸเจ…เจช เจธเจชเฉ€เจก 'เจคเฉ‡ เจตเจพเจชเจธ เจ†เจ“เฅค เจ‡เจธ เจคเฉฑเจฅ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ เจ•เจฟ เจฒเจพเจ‚เจš เจฆเฉ€ เจ—เจคเฉ€ เจตเจพเจฒเจŸ เจฆเฉเจ†เจฐเจพ เจนเฉ€ เจชเฉเจฐเจญเจพเจตเจฟเจค เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ, เจ‡เจน เจตเฉ€ เจฎเฉเฉฑเจฆเจพ เจนเฉˆ เจ•เจฟ เจธเจผเฉเจฐเฉ‚เจ†เจค 'เจคเฉ‡ เจตเจพเจฒเจŸ เจคเฉ‹เจ‚ เจ•เจฟเฉฐเจจเฉ€เจ†เจ‚ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจฌเฉ‡เจธเจผเฉฑเจ•, เจ‡เจน เจธเจฐเจตเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจฒเจˆ เจ–เจพเจธ เจคเฉŒเจฐ 'เจคเฉ‡ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆ. เจธเจผเฉเจฐเฉ‚เจ†เจคเฉ€ เจธเจฎเฉ‡เจ‚, เจธเจฐเจตเจฐ เจœเจพเจ‚เจš เจ•เจฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจเจจเจ•เฉเจฐเจฟเจชเจŸเจก เจŸเฉ‡เจฌเจฒ/เจŸเฉ‡เจฌเจฒเจธเจชเฉ‡เจธ เจฒเจˆ เจ•เจฟเจนเฉœเฉ€ เจ•เฉเฉฐเจœเฉ€ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ เจ…เจคเฉ‡ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจคเฉ‹เจ‚ เจ•เฉเฉฐเจœเฉ€ เจฆเฉ€ เจฌเฉ‡เจจเจคเฉ€ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจฎเจพเจธเจŸเจฐ เจ•เฉเฉฐเจœเฉ€ เจ‡เจจเจ•เฉเจฐเจฟเจชเจธเจผเจจ เจตเจพเจฒเฉ‡ "เจ•เจฒเฉ€เจจ" เจธเจฐเจตเจฐ 'เจคเฉ‡, เจ‡เฉฑเจ• เจฎเจพเจธเจŸเจฐ เจ•เฉเฉฐเจœเฉ€ เจนเฉ‹เจฃเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆ, เจœเฉ‹ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจคเฉ‹เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เฉ€เจคเฉ€ เจœเจพเจฃเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆเฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจตเฉฑเจกเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจฟเฉฑเจš เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจœเจฆเฉ‹เจ‚ เจฌเฉˆเจ•เจ…เฉฑเจช เจธเจฐเจตเจฐ เจชเฉเจฐเจพเจ‡เจฎเจฐเฉ€ เจธเจฐเจตเจฐ เจคเฉ‹เจ‚ เจฌเฉˆเจ•เจ…เฉฑเจช เจจเฉ‚เฉฐ เจฌเจนเจพเจฒ เจ•เจฐ เจฐเจฟเจนเจพ เจนเฉˆเฅค เจ…เจœเจฟเจนเฉ‡ เจฎเจพเจฎเจฒเจฟเจ†เจ‚ เจตเจฟเฉฑเจš, เจฎเจพเจธเจŸเจฐ เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจฐเฉ‹เจŸเฉ‡เจธเจผเจจ เจชเฉเจฐเจฆเจพเจจ เจ•เฉ€เจคเจพ เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจจเฉ‚เฉฐ เจญเจตเจฟเฉฑเจ– เจฆเฉ‡ เจฒเฉ‡เจ–เจพเจ‚ เจตเจฟเฉฑเจš เจตเจงเฉ‡เจฐเฉ‡ เจตเจฟเจธเจคเจพเจฐ เจตเจฟเฉฑเจš เจ•เจตเจฐ เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพ, เจนเจพเจฒเจพเจ‚เจ•เจฟ เจ‡เฉฑเจฅเฉ‡ เจฎเฉˆเจ‚ เจ‡เจน เจจเฉ‹เจŸ เจ•เจฐเจจเจพ เจšเจพเจนเจพเจ‚เจ—เจพ เจ•เจฟ เจ‡เฉฑเจ• เจธเจฐเจตเจฐ เจฎเจฒเจŸเฉ€เจชเจฒ เจฎเจพเจธเจŸเจฐ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจธเจผเฉเจฐเฉ‚ เจนเฉ‹เจฃ เจตเจฟเฉฑเจš เจฅเฉ‹เฉœเจพ เจธเจฎเจพเจ‚ เจฒเฉˆ เจธเจ•เจฆเจพ เจนเฉˆ, เจ–เจพเจธ เจ•เจฐเจ•เฉ‡ เจœเจฆเฉ‹เจ‚ เจธเจฐเจตเจฐ-เจธเจพเจˆเจก เจ•เฉเฉฐเจœเฉ€ เจธเจŸเฉ‹เจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจเฅค

เจนเฉเจฃ เจ•เฉ€เจฐเจฟเฉฐเจ—_เจซเจพเจ‡เจฒ เจฌเจพเจฐเฉ‡ เจฅเฉ‹เฉœเฉ€ เจนเฉ‹เจฐ เจ—เฉฑเจฒ เจ•เจฐเฉ€เจเฅค เจœเจฆเฉ‹เจ‚ เจฎเฉˆเจ‚ เจ•เฉ€เจฐเจฟเฉฐเจ—_เจซเจพเจˆเจฒ เจฆเจพ เจตเจฟเจ•เจพเจธ เจ•เจฐ เจฐเจฟเจนเจพ เจธเฉ€, เจคเจพเจ‚ เจฎเฉˆเจ‚ เจ‡เจธ เจฌเจพเจฐเฉ‡ เจตเฉ€ เจšเจฟเฉฐเจคเจค เจธเฉ€ เจ•เจฟ เจธเจฐเจตเจฐ เจฆเฉ‡ เจšเฉฑเจฒเจฃ เจฆเฉŒเจฐเจพเจจ เจ•เฉ€เจฐเจฟเฉฐเจ—_เจซเจพเจˆเจฒ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฟเจตเฉ‡เจ‚ เจ•เจฐเจจเฉ€ เจนเฉˆเฅค 5.7 เจตเจฟเฉฑเจš, เจœเจพเจ‚เจš เจซเจพเจˆเจฒ เจ…เฉฐเจ•เฉœเจฟเจ†เจ‚ เจฆเฉ‡ เจ…เจงเจพเจฐ เจคเฉ‡ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจธเฉ€, เจœเฉ‹ เจ•เจฟ เจ‡เฉฑเจ• เจ†เจฆเจฐเจธเจผ เจนเฉฑเจฒ เจจเจนเฉ€เจ‚ เจธเฉ€, เจ…เจคเฉ‡ 8.0 เจตเจฟเฉฑเจš เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• SHA256 เจšเฉˆเฉฑเจ•เจธเจฎ เจจเจพเจฒ เจฌเจฆเจฒ เจฆเจฟเฉฑเจคเจพ เจ—เจฟเจ† เจธเฉ€เฅค

เจชเจนเจฟเจฒเฉ€ เจตเจพเจฐ เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ keyring_file เจšเจฒเจพเจ‰เจ‚เจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจซเจพเจˆเจฒ เจฆเฉ‡ เจ…เฉฐเจ•เฉœเฉ‡ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจšเฉˆเจ•เจธเจฎ เจฆเฉ€ เจ—เจฃเจจเจพ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจœเฉ‹ เจธเจฐเจตเจฐ เจฆเฉเจ†เจฐเจพ เจฏเจพเจฆ เจฐเฉฑเจ–เฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจคเจพเจ‚ เจนเฉ€ เจฒเจพเจ—เฉ‚ เจนเฉเฉฐเจฆเฉ€เจ†เจ‚ เจนเจจ เจœเฉ‡เจ•เจฐ เจ‰เจน เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเฉ‡ เจนเจจเฅค เจœเจฆเฉ‹เจ‚ เจซเจพเจˆเจฒ เจฌเจฆเจฒ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจšเฉˆเจ•เจธเจฎ เจ…เฉฑเจชเจกเฉ‡เจŸ เจนเฉ‹ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจ…เจธเฉ€เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจฎเฉเฉฑเจ– เจตเจพเจฒเจŸเจธ เจฌเจพเจฐเฉ‡ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจธเจตเจพเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจตเจฐ เจ•เจฐ เจšเฉเฉฑเจ•เฉ‡ เจนเจพเจ‚เฅค เจนเจพเจฒเจพเจ‚เจ•เจฟ, เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจตเจฟเจธเจผเจพ เจนเฉˆ เจœเฉ‹ เจ…เจ•เจธเจฐ เจญเฉเฉฑเจฒ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจœเจพเจ‚ เจ—เจฒเจค เจธเจฎเจเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ: เจธเจฐเจตเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจธเจพเจ‚เจเฉ€เจ†เจ‚ เจ•เจฐเจจเจพเฅค

เจฎเฉ‡เจฐเจพ เจ•เฉ€ เจฎเจคเจฒเจฌ เจนเฉˆ? เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจนเจฐเฉ‡เจ• เจธเจฐเจตเจฐ (เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจชเจฐเจ•เฉ‹เจจเจพ เจธเจฐเจตเจฐ) เจฆเจพ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ เจ‰เฉฑเจคเฉ‡ เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเจพ เจŸเจฟเจ•เจพเจฃเจพ เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจœเจฟเจธ เจตเจฟเฉฑเจš เจชเจฐเจ•เฉ‹เจจเจพ เจธเจฐเจตเจฐ เจจเฉ‚เฉฐ เจ†เจชเจฃเฉ€เจ†เจ‚ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจเฉ€เจ†เจ‚ เจšเจพเจนเฉ€เจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจธเจŸเฉ‹เจฐเฉ‡เจœเจผ เจตเจฟเฉฑเจš เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจ•เฉ€เจคเฉ€ เจนเจฐเฉ‡เจ• เจฎเจพเจธเจŸเจฐ เจ•เฉเฉฐเจœเฉ€ เจตเจฟเฉฑเจš เจ‡เจธเจฆเฉ‡ เจชเจ›เจพเจฃเจ•เจฐเจคเจพ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจชเจฐเจ•เฉ‹เจจเจพ เจธเจฐเจตเจฐ เจฆเจพ GUID เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจ‡เจน เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจ•เจฟเจ‰เจ‚ เจนเฉˆ? เจ•เจฒเจชเจจเจพ เจ•เจฐเฉ‹ เจ•เจฟ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจธเจฟเจฐเจซเจผ เจ‡เฉฑเจ• เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ เจนเฉˆ เจ…เจคเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจชเจฐเจ•เฉ‹เจจเจพ เจธเจฐเจตเจฐ เจ‰เจธ เจธเจฟเฉฐเจ—เจฒ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค เจธเจฎเฉฑเจธเจฟเจ† เจธเจชเฉฑเจธเจผเจŸ เจœเจพเจชเจฆเฉ€ เจนเฉˆ. เจœเฉ‡เจ•เจฐ เจธเจพเจฐเฉ‡ เจชเจฐเจ•เฉ‹เจจเจพ เจธเจฐเจตเจฐ เจตเจฟเจฒเฉฑเจ–เจฃ เจชเจ›เจพเจฃเจ•เจฐเจคเจพเจตเจพเจ‚ เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚ เจ‡เฉฑเจ• เจฎเจพเจธเจŸเจฐ เจ•เฉเฉฐเจœเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ id = 1, id = 2, เจ†เจฆเจฟ, เจคเจพเจ‚ เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ‡ เจธเจฐเจตเจฐ เจ‡เฉฑเจ•เฉ‹ เจฎเจพเจธเจŸเจฐ เจ•เฉเฉฐเจœเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจ—เฉ‡เฅค เจœเฉ‹ GUID เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆ เจ‰เจน เจธเจฐเจตเจฐเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจ…เฉฐเจคเจฐ เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ เจ‡เฉฑเจ• เจตเจฟเจฒเฉฑเจ–เจฃ GUID เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจฎเฉŒเจœเฉ‚เจฆ เจนเฉˆ เจคเจพเจ‚ เจธเจฐเจตเจฐเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจพเจ‚เจเจพ เจ•เจฐเจจ เจฌเจพเจฐเฉ‡ เจ•เจฟเจ‰เจ‚ เจ—เฉฑเจฒ เจ•เจฐเฉ‹? เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจชเจฒเฉฑเจ—เจ‡เจจ เจนเฉˆ - keyring_udf. เจ‡เจธ เจชเจฒเฉฑเจ—เจ‡เจจ เจจเจพเจฒ, เจคเฉเจนเจพเจกเจพ เจธเจฐเจตเจฐ เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจ†เจชเจฃเฉ€เจ†เจ‚ เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจธเจŸเฉ‹เจฐ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจธเจฎเฉฑเจธเจฟเจ† เจ‰เจฆเฉ‹เจ‚ เจ†เจ‰เจ‚เจฆเฉ€ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจธเจฐเจตเจฐ 1 เจคเฉ‡ เจ‡เฉฑเจ• เจ•เฉเฉฐเจœเฉ€ เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ…เจคเฉ‡ เจซเจฟเจฐ เจธเจฐเจตเจฐ 2 เจคเฉ‡ เจ‰เจธเฉ‡ ID เจจเจพเจฒ เจ‡เฉฑเจ• เจ•เฉเฉฐเจœเฉ€ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ:

--server1:
select keyring_key_store('ROB_1','AES',"123456789012345");
1
--1 ะทะฝะฐั‡ะธั‚ ัƒัะฟะตัˆะฝะพะต ะทะฐะฒะตั€ัˆะตะฝะธะต
--server2:
select keyring_key_store('ROB_1','AES',"543210987654321");
1

เจ‰เจกเฉ€เจ• เจ•เจฐเฉ‹เฅค เจฆเฉ‹เจตเฉ‡เจ‚ เจธเจฐเจตเจฐ เจ‡เฉฑเจ•เฉ‹ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจฐเจนเฉ‡ เจนเจจ, เจ•เฉ€ เจธเจฐเจตเจฐ2 'เจคเฉ‡ เจ•เฉ€เจฐเจฟเฉฐเจ—_เจ•เฉ€_เจธเจŸเฉ‹เจฐ เจซเฉฐเจ•เจธเจผเจจ เจซเฉ‡เจฒ เจจเจนเฉ€เจ‚ เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ? เจฆเจฟเจฒเจšเจธเจช เจ—เฉฑเจฒ เจ‡เจน เจนเฉˆ เจ•เจฟ, เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจธเจฐเจตเจฐ 'เจคเฉ‡ เจ…เจœเจฟเจนเจพ เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ—เจฒเจคเฉ€ เจฎเจฟเจฒเฉ‡เจ—เฉ€:

--server1:
select keyring_key_store('ROB_1','AES',"123456789012345");
1
select keyring_key_store('ROB_1','AES',"543210987654321");
0

เจ‡เจน เจธเจนเฉ€ เจนเฉˆ, ROB_1 เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจฎเฉŒเจœเฉ‚เจฆ เจนเฉˆเฅค

เจ†เจ“ เจชเจนเจฟเจฒเจพเจ‚ เจฆเฉ‚เจœเฉ€ เจ‰เจฆเจพเจนเจฐเจฃ เจฆเฉ€ เจšเจฐเจšเจพ เจ•เจฐเฉ€เจเฅค เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจ…เจธเฉ€เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจ•เจฟเจนเจพ เจธเฉ€, เจ•เฉ€เจฐเจฟเฉฐเจ—_เจตเจพเจฒเจŸ เจœเจพเจ‚ เจ•เฉ‹เจˆ เจนเฉ‹เจฐ เจ•เฉ€เจฐเจฟเฉฐเจ— เจชเจฒเฉฑเจ—เจ‡เจจ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจตเจฟเฉฑเจš เจธเจพเจฐเฉ€เจ†เจ‚ เจฎเฉเฉฑเจ– เจ†เจˆเจกเฉ€เจœเจผ เจจเฉ‚เฉฐ เจ•เฉˆเจš เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจฒเจˆ, เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจ•เฉเฉฐเจœเฉ€ เจฌเจฃเจพเจ‰เจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, ROB_1 เจจเฉ‚เฉฐ เจธเจฐเจตเจฐ 1 เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เจธ เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจตเจพเจฒเจŸ เจจเฉ‚เฉฐ เจญเฉ‡เจœเจฃ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจ•เฉˆเจธเจผ เจตเจฟเฉฑเจš เจตเฉ€ เจœเฉ‹เฉœเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจนเฉเจฃ, เจœเจฆเฉ‹เจ‚ เจ…เจธเฉ€เจ‚ เจ‰เจธเฉ‡ เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจฆเฉ‚เจœเฉ€ เจตเจพเจฐ เจœเฉ‹เฉœเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚, keyring_vault เจœเจพเจ‚เจš เจ•เจฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เฉ€ เจ•เฉˆเจธเจผ เจตเจฟเฉฑเจš เจฎเฉŒเจœเฉ‚เจฆ เจนเฉˆ เจœเจพเจ‚ เจจเจนเฉ€เจ‚ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจ—เจฒเจคเฉ€ เจธเฉเฉฑเจŸเจฆเฉ€ เจนเฉˆเฅค

เจชเจนเจฟเจฒเฉ€ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจธเจฅเจฟเจคเฉ€ เจตเฉฑเจ–เจฐเฉ€ เจนเฉˆ. เจธเจฐเจตเจฐ1 เจ…เจคเฉ‡ เจธเจฐเจตเจฐ 2 เจ•เฉ‹เจฒ เจตเฉฑเจ–เจฐเฉ‡ เจ•เฉˆเจธเจผ เจนเจจเฅค เจธเจฐเจตเจฐ1 เจ…เจคเฉ‡ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจ•เฉเฉฐเจœเฉ€ เจ•เฉˆเจธเจผ เจตเจฟเฉฑเจš ROB_1 เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจธเจฐเจตเจฐ 2 'เจคเฉ‡ เจ•เฉเฉฐเจœเฉ€ เจ•เฉˆเจธเจผ เจธเจฟเฉฐเจ• เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ เจนเฉˆเฅค เจธเจฐเจตเจฐ 2 'เจคเฉ‡ เจ•เฉˆเจธเจผ เจตเจฟเฉฑเจš เจ•เฉ‹เจˆ ROB_1 เจ•เฉเฉฐเจœเฉ€ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, ROB_1 เจ•เฉเฉฐเจœเฉ€ keyring_key_store เจ…เจคเฉ‡ Vault เจธเจฐเจตเจฐ เจจเฉ‚เฉฐ เจฒเจฟเจ–เฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจœเฉ‹ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจชเจฟเจ›เจฒเฉ‡ เจฎเฉเฉฑเจฒ (!) เจจเฉ‚เฉฐ เจ“เจตเจฐเจฐเจพเจˆเจŸ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค เจนเฉเจฃ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ 'เจคเฉ‡ ROB_1 เจ•เฉเฉฐเจœเฉ€ 543210987654321 เจนเฉˆเฅค เจฆเจฟเจฒเจšเจธเจช เจ—เฉฑเจฒ เจ‡เจน เจนเฉˆ เจ•เจฟ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ เจ…เจœเจฟเจนเฉ€เจ†เจ‚ เจ•เจพเจฐเจตเจพเจˆเจ†เจ‚ เจจเฉ‚เฉฐ เจฌเจฒเฉŒเจ• เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจชเฉเจฐเจพเจฃเฉ‡ เจฎเฉเฉฑเจฒ เจจเฉ‚เฉฐ เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจ“เจตเจฐเจฐเจพเจˆเจŸ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจนเฉเจฃ เจ…เจธเฉ€เจ‚ เจฆเฉ‡เจ– เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจ•เจฟ เจตเจพเจฒเจŸ เจตเจฟเฉฑเจš เจธเจฐเจตเจฐ เจตเจฟเจญเจพเจ—เฉ€เจ•เจฐเจจ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจ•เจฟเจ‰เจ‚ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ - เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ keyring_udf เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจฐเจนเฉ‡ เจนเฉ‹ เจ…เจคเฉ‡ เจตเจพเจฒเจŸ เจตเจฟเฉฑเจš เจ•เฉเฉฐเจœเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹เฅค เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจ‡เจธ เจตเจฟเจ›เฉ‹เฉœเฉ‡ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจเจพ เจนเฉˆ?

เจตเจพเจฒเจŸ เจตเจฟเฉฑเจš เจตเฉฐเจกเจฃ เจฆเฉ‡ เจฆเฉ‹ เจคเจฐเฉ€เจ•เฉ‡ เจนเจจเฅค เจคเฉเจธเฉ€เจ‚ เจนเจฐเฉ‡เจ• เจธเจฐเจตเจฐ เจฒเจˆ เจตเฉฑเจ–-เจตเฉฑเจ– เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸ เจฌเจฃเจพ เจธเจ•เจฆเฉ‡ เจนเฉ‹, เจœเจพเจ‚ เจ‡เฉฑเจ•เฉ‹ เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจตเฉฑเจ–-เจตเฉฑเจ– เจฎเจพเจฐเจ—เจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจ‡เจน เจ‰เจฆเจพเจนเจฐเจฃเจพเจ‚ เจจเจพเจฒ เจธเจญ เจคเฉ‹เจ‚ เจตเจงเฉ€เจ† เจฆเจฐเจธเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆเฅค เจคเจพเจ‚ เจ†เจ“ เจชเจนเจฟเจฒเจพเจ‚ เจตเจฟเจ…เจ•เจคเฉ€เจ—เจค เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจตเฉ‡เจ–เฉ€เจ:

--server1:
vault_url = http://127.0.0.1:8200
secret_mount_point = server1_mount
token = (...)
vault_ca = (...)

--server2:
vault_url = http://127.0.0.1:8200
secret_mount_point = sever2_mount
token = (...)
vault_ca = (...)

เจ‡เฉฑเจฅเฉ‡ เจคเฉเจธเฉ€เจ‚ เจตเฉ‡เจ– เจธเจ•เจฆเฉ‡ เจนเฉ‹ เจ•เจฟ เจธเจฐเจตเจฐ1 เจ…เจคเฉ‡ เจธเจฐเจตเจฐ 2 เจตเฉฑเจ–-เจตเฉฑเจ– เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจฐเจนเฉ‡ เจนเจจเฅค เจฎเจพเจฐเจ—เจพเจ‚ เจจเฉ‚เฉฐ เจตเฉฐเจกเจฃ เจตเฉ‡เจฒเฉ‡, เจธเฉฐเจฐเจšเจจเจพ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจฆเจฟเจ–เจพเจˆ เจฆเฉ‡เจตเฉ‡เจ—เฉ€:

--server1:
vault_url = http://127.0.0.1:8200
secret_mount_point = mount_point/server1
token = (...)
vault_ca = (...)
--server2:
vault_url = http://127.0.0.1:8200
secret_mount_point = mount_point/sever2
token = (...)
vault_ca = (...)

เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจฆเฉ‹เจตเฉ‡เจ‚ เจธเจฐเจตเจฐ เจ‡เฉฑเจ•เฉ‹ เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸ "mount_point" เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจ, เจชเจฐ เจตเฉฑเจ–-เจตเฉฑเจ– เจฎเจพเจฐเจ—เฅค เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ เจ‡เจธ เจฎเจพเจฐเจ— เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจธเจฐเจตเจฐ 1 'เจคเฉ‡ เจชเจนเจฟเจฒเจพ เจฐเจพเจœเจผ เจฌเจฃเจพเจ‰เจ‚เจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ เจ†เจชเจฃเฉ‡ เจ†เจช เจ‡เฉฑเจ• "เจธเจฐเจตเจฐ1" เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ เจฌเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆเฅค เจธเจฐเจตเจฐ 2 เจฒเจˆ เจธเจญ เจ•เฉเจ เจธเจฎเจพเจจ เจนเฉˆ. เจœเจฆเฉ‹เจ‚ เจคเฉเจธเฉ€เจ‚ mount_point/server1 เจœเจพเจ‚ mount_point/server2 เจตเจฟเฉฑเจš เจ†เจ–เจฐเฉ€ เจฐเจพเจœเจผ เจจเฉ‚เฉฐ เจฎเจฟเจŸเจพเจ‰เจ‚เจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจตเจพเจฒเจŸ เจธเจฐเจตเจฐ เจ‰เจนเจจเจพเจ‚ เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจตเฉ€ เจฎเจฟเจŸเจพ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ เจคเฉเจธเฉ€เจ‚ เจฎเจพเจฐเจ— เจตเฉฑเจ– เจ•เจฐเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเจฟเจฐเจซเจผ เจ‡เฉฑเจ• เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸ เจฌเจฃเจพเจ‰เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจธเฉฐเจฐเจšเจจเจพ เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจฌเจฆเจฒเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจคเจพเจ‚ เจœเฉ‹ เจธเจฐเจตเจฐ เจตเฉฑเจ–เจฐเฉ‡ เจฎเจพเจฐเจ—เจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฃเฅค HTTP เจฌเฉ‡เจจเจคเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‡เฉฑเจ• เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸ เจฌเจฃเจพเจ‡เจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค CURL เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจจเจพเจฒ เจ‡เจน เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ:

curl -L -H "X-Vault-Token: TOKEN" โ€“cacert VAULT_CA
--data '{"type":"generic"}' --request POST VAULT_URL/v1/sys/mounts/SECRET_MOUNT_POINT

เจธเจพเจฐเฉ‡ เจ–เฉ‡เจคเจฐ (TOKEN, VAULT_CA, VAULT_URL, SECRET_MOUNT_POINT) เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจซเจพเจˆเจฒ เจฆเฉ‡ เจฎเจพเจชเจฆเฉฐเจกเจพเจ‚ เจจเจพเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเฉ‡ เจนเจจเฅค เจฌเฉ‡เจธเจผเฉฑเจ•, เจคเฉเจธเฉ€เจ‚ เจ…เจœเจฟเจนเจพ เจ•เจฐเจจ เจฒเจˆ เจตเจพเจฒเจŸ เจ‰เจชเจฏเฉ‹เจ—เจคเจพเจตเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจชเจฐ เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸ เจฆเฉ€ เจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจธเจตเฉˆเจšเจฒเจฟเจค เจ•เจฐเจจเจพ เจ†เจธเจพเจจ เจนเฉˆเฅค เจฎเฉˆเจจเฉ‚เฉฐ เจ‰เจฎเฉ€เจฆ เจนเฉˆ เจ•เจฟ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจน เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฒเจพเจญเจฆเจพเจ‡เจ• เจฒเฉฑเจ—เฉ‡เจ—เฉ€ เจ…เจคเฉ‡ เจ…เจธเฉ€เจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจธ เจฒเฉœเฉ€ เจฆเฉ‡ เจ…เจ—เจฒเฉ‡ เจฒเฉ‡เจ–เจพเจ‚ เจตเจฟเฉฑเจš เจฆเฉ‡เจ–เจพเจ‚เจ—เฉ‡เฅค

MySQL เจตเจฟเฉฑเจš เจเจจเจ•เฉเจฐเจฟเจชเจธเจผเจจ: เจ•เฉ€เจธเจŸเฉ‹เจฐ

เจนเฉ‹เจฐ เจชเฉœเฉเจนเฉ‹:

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹