পিএসএলএলতে ক্লায়েন্টের শংসাপত্র কীভাবে নির্দিষ্ট করবেন?


11

আমার একটি ব্যবহারকারীর সাথে একটি পোস্টগ্রিস সার্ভার রয়েছে devযার জন্য লগ ইন করার জন্য ক্লায়েন্ট শংসাপত্রের প্রয়োজন I'm আমি কমান্ডটি ব্যবহার করছি psql "sslmode=require user=dev host=db.prod"যা আমাকে দেয় psql: FATAL: connection requires a valid client certificate

আমার সার্ভারে শংসাপত্রটি কোথায় আছে তা আমি জানি। আমার প্রশ্নটি হল, আমি ক্লায়েন্টের শংসাপত্রের অবস্থানটি কীভাবে নির্দিষ্ট করব psql?



উত্তর:


8

@ মাইলেন দ্বারা লিঙ্ক করা ডকুমেন্টেশনে যেমন বলা হয়েছে, আপনি পরিবেশ PGSSLCERTএবং PGSSLKEYপরিবেশের ভেরিয়েবলগুলি সেট করে বা sslcert=<cert location> sslkey=<key location>সংযোগের স্ট্রিং যুক্ত করে এটি করতে পারেন।


2
আমি এখানে এটি নোট করব PGSSLCERTএবং পাথগুলি নির্দিষ্ট PGSSLKEYকরারও অনুমতি দেব , সুতরাং সেই ভেরিয়েবলগুলিতে শংসাপত্র বা কীটি নিজেই করবেন না । cat
সিলডমনিডি

8

শেষ ফলাফলটি দেখে মনে হচ্ছে $>psql "port=5431 host=localhost user=postgres sslcert=./test/client.crt sslkey=./test/client.key sslrootcert=./test/server.crt sslmode=verify-ca"

সমস্ত পরিবর্তনশীল এখানে


যদি আমি cr / .postgreqsl / এ রুট crt রাখি / আমাকে কোনও কী সরবরাহ করতে হবে না। যদি আমি এটিকে অন্য কোথাও রাখি এবং sslrootcert সরবরাহ করি, হঠাৎ আমাকে কীও সরবরাহ করতে হবে - আপনি কী জানেন কীভাবে এটি কাজ করে?
রাদু সিমিনেস্কু
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.