1Password SSH Agent and CLI: Read-Only AI Agent Access

Table of Contents
কমান্ড-লাইন এজেন্টের জন্য প্রয়োজনীয় অ্যাক্সেস, প্রতিটি ক্রেডেনশিয়ালের কপি নয়। এই গাইডটি 1Password CLI, 1Password SSH Agent, Bitbucket Git অ্যাক্সেস এবং Model Context Protocol (MCP)-এর জন্য একটি সীমাবদ্ধ নকশা উপস্থাপন করে। প্রথম ওয়ার্কফ্লোতে সিন্থেটিক নাম, রিড-অনলি অ্যাকশন এবং SSH বাউন্ডারিতে মানবিক অনুমোদন ব্যবহার করা হয়েছে।
মূল পার্থক্যটি সহজ। ইন্টারঅ্যাক্টিভ SSH-এর জন্য 1Password SSH Agent-এর মাধ্যমে সম্মতি প্রয়োজন। আনঅ্যাটেন্ডেড অটোমেশনের জন্য একটি আলাদা পরিচয়, সংকীর্ণ অ্যাক্সেস এবং ভিন্ন কী লাইফসাইকেল প্রয়োজন। একটি MCP সংযোগকে যেকোনো ওয়ার্কফ্লো চালানোর অনুমতি হিসেবে বিবেচনা করবেন না।
মূল বিষয়বস্তু
- প্রাইভেট-কী সুরক্ষা: 1Password SSH Agent SSH অথেনটিকেশন সম্পাদন করে, যখন প্রাইভেট কীগুলি 1Password অ্যাপের ভেতরে থাকে।
- পাবলিক-কী হ্যান্ডলিং: শুধুমাত্র একটি পাবলিক কী Bitbucket-এ বা রিমোট অ্যাকাউন্টে প্রকাশ করুন। প্রাইভেট অংশটি একটি SSH Key আইটেমে রাখুন।
- ইন্টারঅ্যাক্টিভ সম্মতি: SSH Agent একটি কী ব্যবহার করার আগে একজন ব্যক্তি একটি ক্লায়েন্ট বা টার্মিনাল সেশন অনুমোদন করেন।
- আনঅ্যাটেন্ডেড পৃথকীকরণ: একটি স্কেজুলড জবের জন্য একটি নিবেদিত সার্ভিস অ্যাকাউন্ট এবং একটি সংকীর্ণ ভল্ট স্কোপ প্রয়োজন। একটি ইন্টারঅ্যাক্টিভ SSH Agent অনুমোদন এই প্রয়োজন পূরণ করে না।
- MCP সীমানা: MCP একটি এজেন্টকে টুল এবং রিসোর্সের সাথে সংযুক্ত করে। ক্লায়েন্ট, সার্ভার, অপারেটিং সিস্টেম এবং 1Password পলিসি এখনও অ্যাক্সেস নিয়ন্ত্রণ করে।
শুরু করার আগে
পূর্বশর্ত: 1Password 8 এবং 1Password CLI 2.20.0 বা তার পরের সংস্করণ ইনস্টল করুন। একটি সাপোর্টেড 1Password অ্যাকাউন্টের মাধ্যমে সাইন ইন করুন। একটি OpenSSH ক্লায়েন্ট ব্যবহার করুন। একটি টেস্ট Bitbucket রিপোজিটরি বা অন্য কোনো নন-প্রোডাকশন টার্গেট তৈরি করুন। রোলব্যাকের জন্য একটি দ্বিতীয় প্রশাসনিক পথ উপলব্ধ রাখুন।
সময়: নকশা পর্যালোচনা এবং সিন্থেটিক ওয়াকথ্রুয়ের জন্য 30 থেকে 45 মিনিট।
কঠিনতা: মধ্যম। আপনার কাছে বেসিক Git, SSH, শেল এবং অ্যাক্সেস-কন্ট্রোল জ্ঞান প্রয়োজন।
এই গাইডটি নকশা এবং পরিকল্পনা কভার করে। লিঙ্ক করা Bitbucket আর্টিকেলটি Bitbucket-নির্দিষ্ট অ্যাক্সেস সীমানা কভার করে। এই গাইডটি একটি লাইভ অ্যাকাউন্ট পরীক্ষা করে না, একটি বাস্তব কী তৈরি করে না, একটি বাস্তব হোস্টের সাথে সংযোগ করে না, বা একটি বাস্তব MCP সার্ভার নিবন্ধিত করে না। নিচের প্রতিটি আইডেন্টিফায়ার সিন্থেটিক। শুধুমাত্র আপনার নিজের নিয়ন্ত্রিত পরিবেশের ভেতরে প্লেসহোল্ডার প্রতিস্থাপন করুন।
সংস্করণ অবস্থান: এই ওয়ার্কফ্লোর জন্য 1Password 8 এবং 1Password CLI 2.20.0 বা তার পরের সংস্করণ ব্যবহার করুন। 1Password CLI 1 অবহিত । 1Password 7 2027 সালের শুরুতে অবসরপ্রাপ্ত হবে । SSH-কী জেনারেশন, ইমপোর্ট এবং শেয়ারিংয়ের জন্য 1Password 8 প্রয়োজন। পরীক্ষার আগে ইনস্টল করা Git, OpenSSH, MCP হোস্ট এবং MCP সার্ভারের সংস্করণ নিশ্চিত করুন। নিচের উদাহরণগুলি এখনও পরীক্ষিত নয়।
একটি ভল্ট হলো আইটেমের একটি সুরক্ষিত 1Password সংগ্রহ। OpenSSH হলো SSH ক্লায়েন্ট এবং সার্ভার সফটওয়্যার, যা অনেক অপারেটিং সিস্টেম ব্যবহার করে। MCP, অথবা মডেল কনটেক্সট প্রোটোকল, একটি এজেন্টকে অনুমোদিত টুল বা রিসোর্সের সাথে সংযুক্ত করে।
কেন প্রাইভেট কী অদৃশ্য রাখা উচিত
একটি SSH কী পেয়ারে একটি পাবলিক কী এবং একটি প্রাইভেট কী থাকে। একটি রিমোট Git সার্ভিস বা সার্ভার পাবলিক কীটি সংরক্ষণ করে। প্রমাণীকরণের সময় ক্লায়েন্ট প্রাইভেট কীটির অধিকার প্রমাণ করে। প্রাইভেট কীটির রিমোট সার্ভিসে পৌঁছানোর প্রয়োজন নেই।
1Password SSH Agent এই মডেলটি সম্প্রসারিত করে। এর ডকুমেন্টেশনে বলা হয়েছে যে SSH এবং Git ক্লায়েন্ট এজেন্টের মাধ্যমে প্রমাণীকরণ করে, যখন প্রাইভেট কীটি 1Password অ্যাপে থাকে। ক্লায়েন্ট একটি সাইনিং রেজাল্ট পায়, প্রাইভেট-কী ফাইল নয়।
এই সীমানা কয়েকটি এক্সপোজার পথ কমান:
- সোর্স কন্ট্রোল: একটি প্রাইভেট কী রিপোজিটরি বা একটি পুল রিকোয়েস্টে প্রবেশ করে না।
- শেল হিস্ট্রি: একটি প্রাইভেট-কী মান কমান্ড আর্গুমেন্টে দেখা যায় না।
- টেনপোরারি ফাইল: একটি স্ক্রিপ্টকে প্রাইভেট কী
~/.ssh/-এ লেখার প্রয়োজন হয় না। - এজেন্ট কনটেক্সট: একটি বড় ভাষা মডেল (LLM)-কে একটি SSH অপারেশন অনুরোধ করতে প্রাইভেট-কী টেক্সটের প্রয়োজন হয় না।
- অসাবধানতাপূর্ণ পুনঃব্যবহার: একটি টাস্ক শেষ হওয়ার পরে একটি কপি করা কী পুরনো ওয়ার্কস্পেসে অবশিষ্ট থাকে না।
এই সীমানা SSH-কে নিরাপদ করে তোলে না। এজেন্ট সকেট ব্যবহার করার অনুমতি থাকা একটি প্রসেস অনুমোদিত কী হিসেবে কাজ করতে পারে। হোস্ট-কী ভেরিফিকেশন, রিমোট অ্যাকাউন্ট সীমাবদ্ধতা, রিপোজিটরি অনুমতি, কমান্ড পলিসি এবং প্রসেস আইসোলেশন এখনও গুরুত্বপূর্ণ।
প্রাইভেট-কী সীমানা কী ম্যাটেরিয়াল সুরক্ষিত করে। সীমানাটি একটি রিমোট কমান্ড অনুমোদিত করে না বা প্রমাণ করে না যে টার্গেট হোস্টটি বিশ্বস্ত।
ইন্টারঅ্যাকটিভ SSH সম্মতি
এজেন্ট কীগুলোর জন্য একটি নিবেদিত ভল্ট কনফিগার করুন। SSH Agent কনফিগারেশন ফাইল ব্যবহার করে ক্ষুদ্রতম কী সেট এবং একটি হোস্ট-নির্দিষ্ট কী নির্বাচন করুন। একটি অটোমেশন প্রসেসের জন্য প্রতিটি বিল্ট-ইন ভল্ট থেকে প্রতিটি যোগ্য কী এক্সপোজ করবেন না।
1Password SSH Agent সিকিউরিটি মডেল অনুমোদনকে একটি কী এবং একটি রিকোয়েস্টিং প্রসেসের সাথে যুক্ত করে। প্রম্পটটি প্রসেস এবং কীটি চিহ্নিত করে। তারপর ব্যক্তিটি কনফিগার করা প্রমাণীকরণ পদ্ধতির মাধ্যমে অনুরোধটি অনুমোদিত করে।
1Password কয়েকটি অনুমোদন স্কোপ ডকুমেন্ট করেছে। পার-কী এবং পার-অ্যাপ্লিকেশন অনুমোদনটি ডিফল্ট। একটি টার্মিনাল-সেশন স্কোপ অনুমোদনকে একটি ট্যাব বা সেশনে সংকুচিত করে। পার-রিকোয়েস্ট অনুমোদন প্রতিটি অনুরোধের জন্য আবার জিজ্ঞাসা করে। একটি অল-প্রসেস অনুমোদন অপশন রয়েছে, কিন্তু এই অপশনটি বর্তমান অপারেটিং-সিস্টেম ইউজারের অধীনে প্রতিটি প্রসেসকে সেশনের জন্য অ্যাক্সেস দেয়।
কাজের জন্য উপযুক্ত সবচেয়ে সংকীর্ণ অনুমোদন স্কোপ ব্যবহার করুন। সিস্টেম-অ্যাডমিনিস্ট্রেশন এজেন্টকে একটি নিবেদিত টার্মিনাল বা স্যান্ডবক্সে চালানো উচিত। একটি একক টার্মিনাল সেশন যথেষ্ট হলে প্রতিটি প্রসেসের অনুমোদন দেবেন না।
অনুমোদন সেশন স্থায়ী অনুমতি নয়। 1Password কনফিগার করা সময়কাল পর্যন্ত অথবা অ্যাপ লক বা বন্ধ না হওয়া পর্যন্ত অনুমোদন রেকর্ড করে। যখন অ্যাপ লক করা থাকে, তখন এজেন্ট পরবর্তী ব্যবহারের জন্য প্রাইভেট কী ধরে রাখে না। যখন 1Password বন্ধ থাকে, তখন সাপোর্টেড সেটিংস সক্রিয় থাকলে SSH Agent প্রসেস ব্যাকগ্রাউন্ডে চলতে থাকে, তবে একটি নতুন সাইনিং অনুরোধের জন্য 1Password আনলক করা আবশ্যক।
1Password SSH সেটআপ গাইড সাধারণ প্রবাহ দেখায়: একটি কী তৈরি বা ইমপোর্ট করা, পাবলিক কী প্রকাশ করা, SSH Agent সক্রিয় করা, SSH ক্লায়েন্ট কনফিগার করা, একটি SSH বা Git কমান্ড চালানো, এবং অনুরোধ অনুমোদন করা। সঠিক সকেট পথ অপারেটিং সিস্টেম অনুযায়ী ভিন্ন হয়। অন্য কোনো মেশিন থেকে পথ কপি করার বদলে বর্তমান প্ল্যাটফর্মের নির্দেশনা ব্যবহার করুন।
একটি নতুন সাইনিং অনুরোধ সফল হওয়ার আগে 1Password অ্যাপ আনলক করা থাকতে হবে। অ্যাপ বন্ধ থাকলেও এজেন্ট প্রসেস ব্যাকগ্রাউন্ডে চলতে পারে। লক করা অ্যাপ সাইনিংয়ের জন্য প্রাইভেট-কী ম্যাটেরিয়াল মুক্ত করে না।
পাবলিক কী এবং Bitbucket
1Password কী-ম্যানেজমেন্ট গাইড
SSH Key আইটেম, কী জেনারেশন, কী ইমপোর্ট, পাবলিক কী, ফিঙ্গারপ্রিন্ট এবং প্রাইভেট কী নিয়ে ডকুমেন্টেশন করে। CLI উদাহরণে একটি SSH Key আইটেম তৈরি করতে op item create --category ssh ব্যবহার করা হয়। এই উদাহরণের জন্য 1Password CLI ডিফল্টভাবে একটি Ed25519 কী তৈরি করে এবং এর আউটপুটে প্রাইভেট কী লুকিয়ে রাখে।
Bitbucket Cloud স্বাভাবিক Git এবং OpenSSH কমান্ড-লাইন ওয়ার্কফ্লো ব্যবহার করে। এর কমান্ড-লাইন গাইড লোকাল রিপোজিটরি থেকে Git অপারেশন বর্ণনা করে। এর SSH কনফিগারেশন গাইড SSH রিমোট ফর্ম এবং সাপোর্টেড পাবলিক-কী ফরম্যাট তালিকাভুক্ত করে।
Bitbucket-কে পাবলিক-কী কনজিউমার হিসেবে বিবেচনা করুন। অনুমোদিত Bitbucket অ্যাকাউন্ট বা রিপোজিটরি সেটিংসের মাধ্যমে পাবলিক কী বা ফিঙ্গারপ্রিন্ট নিবন্ধিত করুন। প্রাইভেট কী 1Password-এ রাখুন। Git ক্লায়েন্ট SSH Agent-কে সাইন করতে বলে। ক্লায়েন্ট কোনো প্রাইভেট-কী ফাইল পড়ে না।
Bitbucket অ্যাক্সেস-কী স্কোপ, নিবন্ধন পথ এবং রিড-অনলি Git টেস্টের জন্য দেখুন Bitbucket Cloud SSH Keys and Git CLI: Read-Only Access for AI Agents ।
Bitbucket ডকুমেন্টেশন একে Git CLI ওয়ার্কফ্লো বলে। এই নিবন্ধে আলাদা কোনো Bitbucket MCP সার্ভার বা Bitbucket CLI নামক কোনো প্রোডাক্টের অনুমান করা হয় না। Bitbucket-নির্দিষ্ট CLI-এর নিজস্ব বর্তমান ডকুমেন্টেশন এবং নিজস্ব পারমিশন রিভিউর প্রয়োজন।
এজেন্ট এবং MCP বাউন্ডারি
নতুন সার্ভার রিভিউ করার সময় বর্তমান MCP স্পেসিফিকেশন ব্যবহার করুন।
নিচের ব্যাকগ্রাউন্ড প্যারাগ্রাফে উল্লেখিত 2025-06-18 স্পেসিফিকেশন URL একটি ঐতিহাসিক সংস্করণ। নতুন রিভিউয়ের জন্য 2026-07-28 স্পেসিফিকেশন ব্যবহার করুন।
MCP একটি LLM অ্যাপ্লিকেশন, ক্লায়েন্ট কানেক্টর এবং সার্ভারের মধ্যে সংযোগকে মানসম্মত করে। একটি সার্ভার টুল, রিসোর্স বা প্রম্পট সরবরাহ করে। স্পেসিফিকেশনে এটিও বলা হয়েছে যে হোস্টকে ডেটা প্রকাশ বা টুল ইনভোক করার আগে ব্যবহারকারীর সম্মতি নিশ্চিত করতে হবে।
MCP নিজেই অনুমতি প্রদান করে না। একটি MCP টুল তার সার্ভার প্রসেস, অপারেটিং সিস্টেম ইউজার, নেটওয়ার্ক পথ, ক্লাউড অ্যাকাউন্ট এবং কনফিগার্ড ক্রেডেনশিয়ালের অনুমতির মধ্যেই চলে। একটি টুলের বর্ণনা কোনো অথরাইজেশন পলিসি নয়।
1Password Security for AI ডকুমেন্টেশন একটি Environments MCP Server এবং নিরাপদ MCP কনফিগারেশন প্যাটার্ন বর্ণনা করে। একই পেজে 1Password থেকে MCP কনফিগারেশন মানগুলোর রানটাইম লোডিং সম্পর্কেও বলা হয়েছে। এই পেজগুলো একটি জেনেরিক 1Password SSH-কি MCP প্রোডাক্ট বা প্রতিটি এজেন্ট ক্লায়েন্টের জন্য একটি সার্বজনীন SSH ওয়ার্কফ্লো সংজ্ঞায়িত করে না।
MCP-কে একটি সংকীর্ণ কন্ট্রোল সারফেস হিসেবে ব্যবহার করুন:
- রিড টুল: সার্ভিস স্ট্যাটাস, রিপোজিটরি মেটাডেটা বা অনুমোদিত লগ পরিদর্শন করুন।
- প্ল্যান টুল: কমান্ড বা পরিবর্তন রেকর্ড প্রস্তুত করুন, তবে কমান্ডটি চালু করবেন না।
- অ্যাপ্রুভাল টুল: রিমোট রাইট করার আগে একটি মানবিক সিদ্ধান্তের অনুরোধ করুন।
- রাইট টুল: লক্ষ্য, কমান্ড, স্কোপ এবং রোলব্যাক পরিকল্পনা স্পষ্ট না হওয়া পর্যন্ত এটি নিষ্ক্রিয় রাখুন।
এজেন্টকে রেফারেন্স, মেটাডেটা এবং অপারেশন ফলাফল প্রদান করা উচিত। এজেন্টকে প্রাইভেট-কি টেক্সট, ভল্ট-ওয়াইড আইটেম ডাম্প বা অসীমিত শেল প্রদান করা উচিত নয়।
একটি নিরাপদ প্রথম পলিসি
একটি এজেন্ট সক্রিয় করার আগে একটি লিখিত পলিসি দিয়ে শুরু করুন। পলিসিটি MCP কনফিগারেশনের কাছাকাছি রাখুন, কিন্তু ফাইলে ক্রেডেনশিয়াল রাখবেন না।
agent_policy:
purpose: "Read-only repository and system inspection"
identities:
interactive_ssh: "1Password SSH Agent with per-terminal consent"
unattended_jobs: "Dedicated service account with one narrow vault"
allowed:
- "Read repository metadata through Git"
- "Read approved service status and logs"
- "Run one synthetic SSH connectivity check"
approval_required:
- "Any remote write"
- "Any package, firewall, clock, or service change"
- "Any new host-key acceptance"
- "Any private-key export"
denied:
- "Read or print private-key fields"
- "List every vault or every item"
- "Write tokens or secrets to shell profiles"
- "Run arbitrary commands from tool output"
rollback:
- "Revoke the service account"
- "Remove the public key from the target"
- "Disable the MCP server entry"
- "Lock 1Password and end the agent session"
এই পলিসিটি একটি উদাহরণ, 1Password কনফিগারেশন ফরম্যাট নয়। আপনার এজেন্ট ক্লায়েন্ট দ্বারা ব্যবহৃত কন্ট্রোল প্লেনে প্রকৃত পলিসিটি সংরক্ষণ করুন। প্রতিটি টুল সক্রিয় করার আগে পলিসির বিপরীতে প্রতিটি টুল রিভিউ করুন।
সার্ভিস অ্যাকাউন্ট এবং সিক্রেট রেফারেন্স
একটি সার্ভিস অ্যাকাউন্ট একটি স্বয়ংক্রিয় প্রসেসকে তার নিজস্ব পরিচয় প্রদান করে। 1Password CLI স্ক্রিপ্ট গাইড নির্দিষ্ট ভল্টগুলোর জন্য ন্যূনতম-অনুমতি অ্যাক্সেসের জন্য সার্ভিস অ্যাকাউন্টের সুপারিশ করে। এটি একটি অন্যাশ্রিত জবকে একজন ব্যক্তির SSO, MFA, ভল্ট ইনভেন্টরি এবং দৈনিক অ্যাকাউন্ট থেকে আলাদা করে।
একটি গোপন রেফারেন্স (secret reference) সোর্সে মানের (value) অবস্থান না রেখে একটি মানের নাম নির্দেশ করে।
1Password CLI রেফারেন্স
op://vault/item/field আকার ব্যবহার করে। কেবল তখনই রেফারেন্সটি সংরক্ষণের জন্য নিরাপদ যদি আশেপাশের প্রক্রিয়াটির (process) অ্যাক্সেস এখনও সংকীর্ণ থাকে। একটি রেফারেন্স নীতি (policy) এড়িয়ে যেতে পারে না।
যখন একটি কমান্ডের একটি মানের প্রয়োজন হয় তখন op read ব্যবহার করুন। যখন একটি চাইল্ড প্রক্রিয়ায় (child process) নিয়ন্ত্রিত সেটের রানটাইম মানের প্রয়োজন হয় তখন op run ব্যবহার করুন। যখন অনুমোদিত ভল্টে (vault) একটি নতুন SSH Key আইটেমের অস্তিত্ব থাকতে হবে তখন op item create ব্যবহার করুন।
রানটাইম ইনজেকশন (runtime injection) এবং প্রাইভেট-কি সুরক্ষাকে (private-key protection) গুলিয়ে ফেলবেন না। একটি এনভায়রনমেন্ট ভেরিয়েবল হিসেবে পাঠানো API টোকেন এখনও চাইল্ড প্রক্রিয়াতে দৃশ্যমান থাকে। একটি প্রাইভেট কীকে এনভায়রনমেন্ট ভেরিয়েবলের মাধ্যমে পাঠানো আরও খারাপ কারণ মানটি প্রক্রিয়া পরিদর্শন, ক্র্যাশ রিপোর্ট, ডিবাগ আউটপুট, শেল ট্রেসিং এবং দুর্ঘটনামূলক লগিংয়ের দিকে এক্সপোজার (exposure) বাড়িয়ে দেয়।
সোর্সে একটি রেফারেন্স এবং সম্ভাব্য ক্ষুদ্রতম প্রক্রিয়ায় একটি রানটাইম মানকে অগ্রাধিকার দিন। প্রক্রিয়াটি স্বল্পকালীন রাখুন। শেল ট্রেসিং নিষ্ক্রিয় করুন। এনভায়রনমেন্ট প্রিন্ট করবেন না। ব্যর্থ চলাচলের পরে সাময়িক ফাইলগুলো মুছে ফেলুন।
নিরাপদ প্রাথমিক ওয়ার্কফ্লো
নিচের ক্রমটি পাবলিক-কি নিবন্ধন, ইন্টারঅ্যাক্টিভ SSH, MCP আবিষ্কার এবং অ-নিরীক্ষিত ডিজাইনকে আলাদা করে।
১. লক্ষ্য নির্ধারণ করুন
লক্ষ্যের শ্রেণি, রিমোট অ্যাকাউন্ট, নির্ধারিত রিপোজিটরি বা কমান্ড, হোস্ট-কি সোর্স, অনুমোদন মালিক এবং রোলব্যাক অ্যাকশন লিখে নিন। প্রথম অনুশীলনের সময় একটি সংশ্লেষিত রেকর্ড (synthetic record) ব্যবহার করুন।
target_class: test-repository
remote_account: git
operation: read-only connectivity check
host_key_source: approved administrator record
approval_owner: named operator
rollback: remove public key and revoke test identity
প্রত্যাশিত ফলাফল, পরীক্ষিত নয়: রেকর্ডটি একটি লক্ষ্য এবং একটি অপারেশন চিহ্নিত করে। রেকর্ডে কোনো হোস্টনেম, IP ঠিকানা, টোকেন, প্রাইভেট কী বা ব্যক্তিগত তথ্য নেই।
২. SSH Key আইটেম তৈরি বা নির্বাচন করুন
অফিসিয়াল 1Password SSH কী গাইড CLI তৈরির প্যাটার্ন নথিভুক্ত করে। নিচের কমান্ডটি একটি সংশ্লেষিত শিরোনাম এবং নামকৃত টেস্ট ভল্ট ব্যবহার করে।
op item create --category ssh --ssh-generate-key=ed25519 --vault "synthetic-test-vault" --title "synthetic-agent-admin-key"
প্রত্যাশিত আউটপুট, পরীক্ষিত নয়: 1Password নামকৃত টেস্ট ভল্টে একটি SSH Key আইটেম তৈরি করে এবং টার্মিনাল আউটপুটে প্রাইভেট কী লুকিয়ে রাখে (redacts)। কমান্ডটি 1Password-এর অবস্থা পরিবর্তন করে। সঠিক মানব-পাঠযোগ্য আউটপুট CLI ভার্সন এবং সাইন-ইন অবস্থার উপর নির্ভর করে।
প্রাইভেট-কী ফিল্ড কপি না করে টেস্ট রেকর্ডে ফেরত দেওয়া আইটেম আইডেন্টিফায়ারটি সংগ্রহ করুন। আইটেম স্কিমা নিশ্চিত হওয়ার পরে কেবল পরবর্তীতে ফিল্ড-নির্দিষ্ট পড়ার জন্য আইডেন্টিফায়ার বা সঠিক আইটেম শিরোনাম ব্যবহার করুন।
এই আউটপুটটি একটি শেয়ার্ড লগে রিডাইরেক্ট করবেন না। স্থানীয় পদ্ধতি নিরাপদ স্ট্রাকচার্ড আউটপুট সমর্থন করে থাকলে কেবল আইটেম আইডেন্টিফায়ার, পাবলিক-কি ফিঙ্গারপ্রিন্ট এবং অনুমোদন রেকর্ড সংগ্রহ করুন।
৩. পাবলিক কী হ্যান্ডল করুন
1Password-এ SSH Key আইটেমটি খুলুন এবং এর Copy Public Key অ্যাকশনটি ব্যবহার করুন। আপনার নিজের অ্যাকাউন্টে পাবলিক-কী ফিল্ডের লেবেল নিশ্চিত করার পরে মাত্র ফিল্ড-নির্দিষ্ট রেফারেন্স ব্যবহার করুন। সম্পূর্ণ আইটেমটি ডাম্প করবেন না।
PUBLIC_KEY_REF="op://synthetic-test-vault/synthetic-agent-admin-key/synthetic-public-key-field"
op read "$PUBLIC_KEY_REF"
প্রত্যাশিত আউটপুট, পরীক্ষিত নয়: একটি সংশ্লেষিত OpenSSH পাবলিক-কী লাইন অথবা নিশ্চিত ফিল্ড থেকে পাবলিক-কী মান। উপরের প্লেসহোল্ডার ফিল্ডের নাম আপনার আইটেমের ফিল্ড লেবেলের বিষয়ে কোনো প্রতিশ্রুতি নয়।
অনুমোদিত Bitbucket অ্যাকাউন্ট, Bitbucket রিপোজিটরি, বা রিমোট অ্যাকাউন্টে পাবলিক কীটি নিবন্ধিত করুন। কখনোই Bitbucket-এ সমতুল্য প্রাইভেট কী পেস্ট করবেন না। Bitbucket SSH গাইড প্রথম সংযোগের আগে Bitbucket হোস্ট কী রেকর্ড করারও সুপারিশ করে।
Bitbucket-এর জন্য, প্রকাশিত হোস্ট-কী রেকর্ডটি আনুমানিক করুন এবং ~/.ssh/known_hosts-এ একটি লাইন যোগ করার আগে রেকর্ডটি একটি স্বাধীন বিশ্বস্ত কপি-র সাথে তুলনা করুন। তুলনা পাস করার পরে কঠোর হোস্ট চেকিং ব্যবহার করুন। এজেন্ট চালুর সময় পরিবর্তিত হোস্ট কী গ্রহণ করবেন না।
৪. ইন্টারঅ্যাকটিভ SSH সক্রিয় করুন
ডেস্কটপ অ্যাপে 1Password SSH Agent চালু করুন। প্ল্যাটফর্ম-নির্দিষ্ট IdentityAgent বা SSH_AUTH_SOCK মান ব্যবহার করে OpenSSH কনফিগার করুন, যা
অফিসিয়াল সেটআপ গাইড
-এ পাওয়া যায়। প্রথম পরীক্ষাটি একটি রিপোজিটরি বা একটি নন-প্রোডাকশন অ্যাকাউন্টে সীমাবদ্ধ রাখুন।
macOS বা Linux-এ, প্ল্যাটফর্ম সেটআপ গাইড থেকে সকেট সেট করুন এবং ssh-add -l চালান। Windows-এ, সাপোর্টেড নেইমড-পাইপ কনফিগারেশন ব্যবহার করুন এবং 1Password SSH Agent ইন্টারফেস বা একটি ডকুমেন্টেড Windows SSH টেস্টের মাধ্যমে উপলব্ধ কীগুলি যাচাই করুন। ssh-add -l-কে ক্রস-প্ল্যাটফর্ম ভেরিফিকেশন কমান্ড হিসেবে উপস্থাপন করবেন না।
শুধুমাত্র macOS বা Linux-এ:
ssh-add -l
git ls-remote "<repository-ssh-url>" HEAD
প্রত্যাশিত আউটপুট, পরীক্ষিত নয়: macOS বা Linux-এ, ssh-add -l সক্রিয় এজেন্ট থেকে ফিঙ্গারপ্রিন্ট তালিকা করে। Windows-এ, ডকুমেন্টেড নেইমড-পাইপ টেস্ট বা 1Password SSH Agent ইন্টারফেস ব্যবহার করুন। সফল Git রিড একটি কমিট রেফারেন্স ফেরত দেয়। উপরের রিপোজিটরি প্লেসহোল্ডারটি একটি নিয়ন্ত্রিত পরীক্ষায় প্রতিস্থাপন করা আবশ্যক।
কমান্ডটি একটি রিপোজিটরি প্লেসহোল্ডার ব্যবহার করে। শুধুমাত্র নিয়ন্ত্রিত পরীক্ষায় প্লেসহোল্ডারটি প্রতিস্থাপন করুন। আপনার প্রত্যাশিত নয় এমন কোনো টার্গেট বা প্রসেসের জন্য প্রম্পট অনুমোদন করবেন না।
৫. SSH পথ কাজ করার পরে MCP যোগ করুন
প্রথমে MCP ছাড়াই SSH ক্লায়েন্ট এবং টার্গেট যাচাই করুন। তারপর একটি রিড-অনলি MCP সার্ভার বা লোকাল কানেক্টর যোগ করুন। এজেন্টকে read_status বা prepare_command এর মতো একটি টুল দিন। সাধারণ শেল টুল দিয়ে শুরু করবেন না।
MCP কনফিগারেশনকে ক্লায়েন্টের সমর্থিত পরিবেশ মেকানিজমের মাধ্যমে রানটাইম মানগুলিকে রেফারেন্স করতে হবে। 1Password AI সিকিউরিটি গাইড 1Password থেকে লোড করা এনভায়রনমেন্ট ভেরিয়েবল দিয়ে প্লেইনটেক্সট MCP কনফিগারেশন টোকেন প্রতিস্থাপনকে বর্ণনা করে। কনফিগারেশনে রেফারেন্স বা ভেরিয়েবলের নাম রাখুন। এজেন্ট ট্রান্সক্রিপ্ট থেকে রেজলভড মান বাদ দিন।
এই অংশটি একটি ডিজাইন বর্ণনা করে, যা পরীক্ষিত MCP কনফিগারেশন নয়। এখানে কোনো ক্লায়েন্ট, সার্ভার, ট্রান্সপোর্ট, ভার্সন বা ফিক্সচার পিন করা হয়নি। প্রোডাকশন সিস্টেমে এজেন্ট সংযুক্ত করার আগে একটি আলাদা টেস্ট প্রোফাইলে একটি রিড-অনলি সার্ভার যাচাই করুন।
৬. ফলাফল রেকর্ড করুন
টার্গেট ক্লাস, টুলের নাম, অনুমোদন সিদ্ধান্ত, পাবলিক-কি ফিঙ্গারপ্রিন্ট, কমান্ডের ফলাফল এবং ক্লিনআপ ফলাফল রেকর্ড করুন। সিক্রেট মান বাদ দিন। প্রতিটি আউটপুটকে পর্যবেক্ষিত বা প্রত্যাশিত হিসেবে চিহ্নিত করুন।
প্রত্যাশিত ফলাফল, পরীক্ষিত নয়: এজেন্ট স্ট্যাটাস পড়ে, একটি সীমাবদ্ধ কমান্ড প্রস্তাব করে, SSH অনুরোধের জন্য স্পষ্ট অনুমোদন পায়, রিড-অনলি অপারেশন সম্পন্ন করে এবং প্রাইভেট-কি টেক্সট ছাড়া একটি রেকর্ড তৈরি করে।
সিন্থেটিক কমান্ড সিকোয়েন্স
নিচের সিকোয়েন্সটি বাস্তব ইনফ্রাস্ট্রাকচার ব্যবহার না করে ক্রমটি দেখায়। এই কমান্ডগুলি শুধুমাত্র উদাহরণ। নিবন্ধ প্রস্তুতির সময় এগুলি চালানো হয়নি।
op --version
op item create --category ssh --ssh-generate-key=ed25519 --vault "synthetic-test-vault" --title "synthetic-agent-admin-key"
op read "op://synthetic-test-vault/synthetic-agent-admin-key/synthetic-public-key-field"
# macOS or Linux only
ssh-add -l
git ls-remote "<repository-ssh-url>" HEAD
প্রত্যাশিত আউটপুট, পরীক্ষিত নয়:
2.x.y
SSH Key item created. Private key: redacted
ssh-ed25519 AAAA<synthetic-public-key> synthetic-key-label
256 SHA256:<synthetic-fingerprint> synthetic-agent-admin-key (ED25519)
<synthetic-commit-id> HEAD
আউটপুট ব্লকটি প্রতীকী। ব্লকটি 1Password অ্যাকাউন্ট, Bitbucket, Git প্রোভাইডার বা রিমোট হোস্টের বিরুদ্ধে কোনো রানকে প্রতিনিধিত্ব করে না। একটি প্রোডাকশন রেকর্ডে শুধুমাত্র অনুমোদিত মেটাডেটা এবং সফলতা বা ব্যর্থতার অবস্থা সংরক্ষণ করা উচিত।
ইন্টারঅ্যাকটিভ বনাম আনঅ্যাটেন্ডেড অ্যাক্সেস
| অ্যাক্সেস মোড | পরিচয় | প্রাইভেট-কি পথ | অনুমোদন মডেল |
|---|---|---|---|
| ইন্টারঅ্যাকটিভ SSH | 1Password SSH Agent-এর মাধ্যমে হিউম্যান অ্যাকাউন্ট | প্রাইভেট কি 1Password অ্যাপে থাকে | হিউম্যান একটি প্রসেস, টার্মিনাল সেশন বা অনুরোধ অনুমোদন করে |
| স্কেজুলড রিড | নিবেদিত সার্ভিস অ্যাকাউন্ট | op run সংকীর্ণ রানটাইম মান সরবরাহ করে | জব পলিসি এবং সার্ভিস-অ্যাকাউন্ট স্কোপ |
| স্কেজুলড SSH | নিবেদিত অটোমেশন পরিচয় | কি এক্সপোর্ট একটি শেষ-উপায় ডিজাইন হিসেবে থাকে | জব আইসোলেশন, সংক্ষিপ্ত লাইফটাইম, হোস্ট সীমাবদ্ধতা এবং রোটেশন |
| এজেন্ট রাইট | হিউম্যান বা টাস্ক-নির্দিষ্ট পরিচয় | অনুমোদিত ইন্টিগ্রেশনের উপর নির্ভর করে | প্রতিটি সংজ্ঞায়িত পরিবর্তনের আগে হিউম্যান অনুমোদন |
ইন্টারঅ্যাকটিভ SSH Agent প্রম্পটের চারপাশে একটি ওয়ার্কফ্লো স্কেজুল করবেন না। একটি আলাদা অটোমেশন ডিজাইন ব্যবহার করুন বা ধাপটি হিউম্যান-চালিত রাখুন।
অনিয়ন্ত্রিত জবগুলোর জন্য, একটি ভল্ট বা একটি ছোট আইটেম সেটের অ্যাক্সেস সহ একটি সার্ভিস অ্যাকাউন্ট তৈরি করুন। জবটিকে একটি নির্দিষ্ট উদ্দেশ্য দিন। একটি নিবেদিত রিপোজিটরি বা সার্ভার অ্যাকাউন্ট ব্যবহার করুন। হোস্ট-কী ভেরিফিকেশন যোগ করুন। এক্সিকিউশন টাইমআউট সেট করুন। সিক্রেট ছাড়াই অ্যাকশন মেটাডেটা লগ করুন। পরীক্ষার পরে পরিচয়টি রোটেট বা রিভোক করুন।
যদি একটি অনিয়ন্ত্রিত জবকে সত্যিই একটি SSH প্রাইভেট কী প্রয়োজন হয়, তবে একটি সংকীর্ণ রিমোট অ্যাকাউন্ট এবং একটি নথিভুক্ত শেষ তারিখ সহ একটি নিবেদিত অটোমেশন কী ব্যবহার করুন। op read ব্যবহার করে প্রাইভেট কী ফেচ করা এখনও একটি প্রসেস বাউন্ডারির জুড়ে কী ম্যাটেরিয়াল এক্সপোর্ট করে। এই ডিজাইনের ব্লাস্ট রেডিয়াস 1Password SSH Agent-এর চেয়ে বড়। লক্ষ্য যদি একটি প্ল্যাটফর্ম আইডেন্টিটি, ডিপ্লয় সার্ভিস, বা অন্য কোনো ওয়ার্কলোড আইডেন্টিটি সাপোর্ট করে, তবে সেটি ব্যবহার করা উত্তম।
কেন প্লেইনটেক্সট এনভায়রনমেন্ট ভেরিয়েবল ঝুঁকি বাড়ায়
এনভায়রনমেন্ট ভেরিয়েবল সিক্রেটকে সোর্স ফাইল থেকে দূরে রাখে, কিন্তু এটি সিক্রেটকে অদৃশ্য করে না। একটি চাইল্ড প্রসেস তার এনভায়রনমেন্ট পড়ে। প্রসেস ইন্সপেকশন, ক্র্যাশ হ্যান্ডলার, ডিবাগ আউটপুট, শেল ট্রেসিং, এবং কপি করা কমান্ড রেকর্ড মানগুলো প্রকাশ করতে পারে।
1Password op run-কে একটি সাবপ্রসেসে রেফারেন্স লোড করার জন্য একটি রানটাইম পদ্ধতি হিসেবে নথিভুক্ত করেছে। একটি প্রসেসের সত্যিই প্রয়োজনীয় মানগুলোর জন্য op run ব্যবহার করুন। চাইল্ড প্রসেসটি সংক্ষিপ্তকালীন রাখুন এবং এর কমান্ড সীমাবদ্ধ করুন। যখন SSH Agent এক্সপোর্টের প্রয়োজনীয়তা দূর করে, তখন SSH_PRIVATE_KEY, KEY, বা একটি অনুরূপ ভেরিয়েবলের মাধ্যমে প্রাইভেট কী পাঠাবেন না।
নিরাপদ ক্রম হলো:
- ইন্টারঅ্যাক্টিভ SSH-এর জন্য SSH Agent ব্যবহার করুন।
- Bitbucket বা রিমোট অ্যাকাউন্টের জন্য পাবলিক-কী রেজিস্ট্রেশন ব্যবহার করুন।
- একটি সংকীর্ণ অনিয়ন্ত্রিত চাইল্ড প্রসেসের জন্য
op runব্যবহার করুন। - যখন একটি চাইল্ড প্রসেসের সম্পূর্ণ এনভায়রনমেন্টের প্রয়োজন নেই, তখন একটি মানের জন্য
op readব্যবহার করুন। - একটি লিখিত ব্যতিক্রম, সংকীর্ণ স্কোপ, ক্লিনআপ পরিকল্পনা, এবং রোটেশন পরিকল্পনার পরেই প্রাইভেট কী এক্সপোর্ট করুন।
সিদ্ধান্ত টেবিল
| প্রয়োজন | পছন্দের পথ | থামার বা নতুনভাবে ডিজাইন করার কারণ |
|---|---|---|
| মানুষ SSH-এর মাধ্যমে Git চালায় | 1Password SSH Agent | প্রম্পট যদি অপ্রত্যাশিত প্রক্রিয়া বা কী-এর নাম উল্লেখ করে তবে থামুন |
| একটি রিপোজিটোরি কী নিবন্ধন করা | পাবলিক কী পড়া বা অটোফিল করা | কখনোই প্রাইভেট কী রিপোজিটোরি সার্ভিসে কপি করবেন না |
| এজেন্ট সার্ভিসের অবস্থা পড়ে | OS-স্তরের স্কোপ সহ রিড-অনলি MCP টুল | টুল যদি অসীমিত শেল প্রকাশ করে তবে থামুন |
| এজেন্ট একটি রিমোট পরিবর্তন প্রস্তাব করে | পরিকল্পনা টুলের পরে মানুষের অনুমোদন | লক্ষ্য, কমান্ড, বা রোলব্যাক অস্পষ্ট হলে থামুন |
| জব একটি API টোকেন পড়ে | সার্ভিস অ্যাকাউন্ট এবং op read অথবা op run | টোকেন যদি সোর্স, লগ, বা গ্লোবাল প্রোফাইলে প্রবেশ করে তবে থামুন |
| জবের SSH অ্যাক্সেসের প্রয়োজন | ওয়ার্কলোড আইডেন্টিটি বা নিবেদিত অটোমেশন কী | জব যদি ব্যক্তিগত কী বা বিস্তৃত অ্যাকাউন্টের প্রয়োজন হয় তবে থামুন |
| MCP কনফিগের একটি টোকেনের প্রয়োজন | সাপোর্টেড ক্লায়েন্ট দ্বারা লোড করা রানটাইম রেফারেন্স | প্লেইনটেক্সট টোকেন কনফিগে কমিট করা হলে থামুন |
ফেইলার হ্যান্ডলিং
অপ্রত্যাশিত SSH সম্মতি প্রম্পট: প্রম্পটটি অস্বীকার করুন। প্রক্রিয়ার নাম, টার্মিনাল সেশন, কী ফিঙ্গারপ্রিন্ট, রিপোজিটোরি লক্ষ্য, এবং হোস্ট কী পরীক্ষা করুন। পুনরায় চেষ্টার আগে SSH ক্লায়েন্ট কনফিগারেশন পর্যালোচনা করুন।
কোনো SSH Agent সকেট নেই: নিশ্চিত করুন যে 1Password ডেস্কটপ অ্যাপটি একটি সাপোর্টেড মাধ্যমে ইনস্টল করা হয়েছে, SSH Agent সক্রিয় করা হয়েছে, এবং ক্লায়েন্টটি প্ল্যাটফর্ম-নির্দিষ্ট সকেট ব্যবহার করছে। অফিসিয়াল SSH Agent পেজ অপারেটিং সিস্টেমের প্রয়োজনীয়তা এবং সকেট সেটআপ লিংক তালিকাভুক্ত করে।
পাবলিক-কী প্রমাণীকরণ ব্যর্থ হয়: নির্বাচিত পাবলিক কী, রিমোট অ্যাকাউন্ট, রিপোজিটোরি অনুমতি, হোস্ট কী, এবং SSH কনফিগারেশন পরীক্ষা করুন। একটি পাবলিক ফিঙ্গারপ্রিন্ট তুলনা ব্যবহার করুন। একটি সম্পর্কহীন প্রাইভেট কী এক্সপোর্ট করে এররটি সমাধান করবেন না।
op read অ্যাক্সেস অস্বীকার করে: সার্ভিস-অ্যাকাউন্ট ভল্ট স্কোপ, আইটেম আইডেন্টিফায়ার, ফিল্ড রেফারেন্স, সাইন-ইন অবস্থা, এবং আইটেমের অবস্থা পরীক্ষা করুন। রেফারেন্সটি একটি অনুমোদিত আইটেমে সীমাবদ্ধ করুন। প্রথম প্রতিক্রিয়া হিসেবে ভল্ট অনুমতি বর্ধিত করবেন না।
op run একটি মান প্রকাশ করে: জবটি থামান। শুধুমাত্র ন্যূনতম ইনসিডেন্ট রেকর্ড সংরক্ষণ করুন। আপনার সংরক্ষণ নীতি অনুসারে কপি করা লগ এবং সাময়িক ফাইল মুছে ফেলুন। প্রভাবিত সিক্রেট বা কী রোটেট করুন। শেল ট্রেসিং, প্রক্রিয়া পরিদর্শন, ক্র্যাশ রিপোর্ট, এবং MCP ট্রান্সক্রিপ্ট সংরক্ষণ পর্যালোচনা করুন।
MCP টুল অপ্রত্যাশিতভাবে আচরণ করে: টুলের আউটপুটকে অবিশ্বস্ত ডেটা হিসেবে বিবেচনা করুন। আউটপুটের দ্বারা প্রস্তাবিত কমান্ড চালাতে শুরু করার আগে থেমে যান। সার্ভারের সোর্স, কনফিগারেশন, পারমিশন এবং ট্রান্সপোর্ট পরীক্ষা করুন। MCP হোস্টকে ব্যবহারকারীর সম্মতি অর্জন করতে হবে। স্পেসিফিকেশনে সম্মতি এবং অ্যাক্সেস কন্ট্রোলসের জন্য ইমপ্লিমেন্টর গাইডেন্সও দেওয়া আছে, তবে প্রোটোকল আপনার পর্যালোচনার বিকল্প নয়।
রোলব্যাক এবং অপসারণ
রোলব্যাক শুরু হয় অ্যাক্সেস অপসারণ দিয়ে, ফাইল ডিলিট করার মাধ্যমে নয়।
- এজেন্ট বা স্কেজুলড জব থামান। MCP সার্ভার এন্ট্রিটি নিষ্ক্রিয় করুন বা ক্লায়েন্টটি বিচ্ছিন্ন করুন।
- 1Password লক করুন। ইন্টারঅ্যাক্টিভ SSH অনুমোদন সেশনটি শেষ করুন।
- পাবলিক কী মুছে ফেলুন। Bitbucket, রিপোজিটরি বা রিমোট অ্যাকাউন্ট থেকে টেস্ট কীটি মুছে ফেলুন।
- সার্ভিস অ্যাকাউন্টটি বাতিল করুন। এর ভল্ট অ্যাক্সেস সরিয়ে ফেলুন এবং এর টোকেনটি অবৈধ করুন।
- টেস্ট SSH Key আইটেমটি মুছে ফেলুন নিশ্চিত হওয়ার পরে যে কোনো অনুমোদিত ওয়ার্কফ্লো এই আইটেমটি ব্যবহার করে না।
- অস্থায়ী কনফিগারেশন সরিয়ে ফেলুন। টেস্ট রেফারেন্স, লোকাল সকেট ওভাররাইড এবং জেনারেটেড লগ মুছে ফেলুন।
- প্রমাণ পর্যালোচনা করুন। নিশ্চিত করুন যে রোলব্যাক রেকর্ডে কোনো প্রাইভেট কী, টোকেন বা এনভায়রনমেন্ট ডাম্প নেই।
একটি লোকাল ফাইল মুছে ফেলা পাবলিক কী, সার্ভিস অ্যাকাউন্ট, ক্যাশেড টোকেন বা রিমোট অনুমোদন বাতিল করে না। প্রতিটি অনুমতি তার উৎস থেকে সরিয়ে ফেলুন।
ট্রাবলশুটিং
এজেন্ট প্রতিটি কমান্ডের জন্য একটি কী চায়
নির্বাচিত অনুমোদন স্কোপ পরীক্ষা করুন। প্রতি-রিকোয়েস্ট অনুমোদন বেশি সীমাবদ্ধ। একটি টার্মিনাল বা অ্যাপ্লিকেশন সেশন সম্ভবত শেষ হয়ে গেছে। 1Password লক বা কুইট ইভেন্টের পরেও আবার জিজ্ঞাসা করে।
এজেন্ট তার ট্রান্সক্রিপ্টে একটি প্রাইভেট কী দেখে
ওয়ার্কফ্লোটি থামান এবং কীটি রোটেট করুন। MCP সার্ভারের রেসপন্স, শেল কমান্ড, ডিবাগ লগ এবং টুল র্যাপার পরীক্ষা করুন। ইন্টারঅ্যাক্টিভ কাজের জন্য প্রাইভেট-কী রিডের পরিবর্তে SSH Agent ব্যবহার করুন। জবগুলোর জন্য, ব্যক্তিগত কীর পরিবর্তে একটি নিবেদিত আইডেন্টিটি এবং একটি নথিভুক্ত ব্যতিক্রম ব্যবহার করুন।
একটি কী তালিকায় অনেক বেশি আইডেন্টিটি রয়েছে
1Password SSH Agent তার কনফিগার করা ভল্ট থেকে যোগ্য কীগুলি প্রকাশ করে। একটি স্কোপড এজেন্ট কনফিগারেশন বা হোস্ট-নির্দিষ্ট SSH কনফিগারেশন ব্যবহার করুন। এজেন্ট ডকুমেন্টেশন এও উল্লেখ করা হয়েছে OpenSSH সার্ভারের ছয়-কী সীমা।
একটি কমান্ড হাতে কাজ করে কিন্তু একটি জবে ব্যর্থ হয়
আইডেন্টিটি, ভল্ট স্কোপ, এনভায়রনমেন্ট, হোস্ট-কী ডেটা, ওয়ার্কিং ডিরেক্টরি এবং অনুমোদন ধারণা তুলনা করুন। একটি ইন্টারঅ্যাক্টিভ 1Password সেশনে মানবিক সম্মতি অন্তর্ভুক্ত থাকে। একটি স্কেজুলড জবে তা থাকে না। জবটিকে একটি আলাদা অ্যাক্সেস মোড হিসেবে ডিজাইন করুন।
MCP সার্ভার সংযুক্ত কিন্তু কাজটি ব্যর্থ হয়
কানেকশন অনুমোদন প্রমাণ করে না। টুল ডিসকভারি, সার্ভার ক্রেডেনশিয়াল, ক্লায়েন্ট সম্মতি, অপারেটিং সিস্টেম অনুমতি, নেটওয়ার্ক অ্যাক্সেস এবং টার্গেট-সাইড অনুমতি আলাদা ধাপে যাচাই করুন। প্রথম পরীক্ষাটি রিড-অনলি রাখুন।
পরবর্তী ধাপ
নতুন অনুমোদনের জন্য বর্তমান ২০২৬-০৭-২৮ MCP স্পেসিফিকেশন ব্যবহার করুন। এই নিবন্ধে থাকা যেকোনো ২০২৫-০৬-১৮ স্পেসিফিকেশন লিংক ইতিহাসগত প্রেক্ষাপট হিসেবে বিবেচ্য।
একটি সিনথেটিক রিপোজিটরি এবং একটি রিড-অনলি MCP টুল দিয়ে শুরু করুন। নিয়ন্ত্রিত পরিবেশে প্রমাণ না পাওয়া পর্যন্ত প্রতিটি প্রত্যাশিত ফলাফলকে অপরীক্ষিত হিসেবে নথিভুক্ত করুন। এরপর একটি নন-প্রোডাকশন টার্গেট, একটি নামযুক্ত অপারেটর, একটি যাচাইকৃত হোস্ট কী এবং একটি লিখিত রোলব্যাক রেকর্ড সহ ওয়ার্কফ্লোটি পুনরাবৃত্তি করুন।
বর্তমান কমান্ড ফ্ল্যাগগুলোর জন্য 1Password CLI রেফারেন্স পড়ুন। সার্ভিস-অ্যাকাউন্ট অটোমেশন তৈরির আগে স্ক্রিপ্টে সিক্রেট লোড করা পড়ুন। নতুন সার্ভার থেকে টুল অনুমোদনের আগে MCP স্পেসিফিকেশন পড়ুন।
ইন্টারঅ্যাক্টিভ SSH-কে মানবিক অনুমোদনসহ রাখুন। আনঅ্যাটেন্ডেড অ্যাক্সেস আলাদা রাখুন। যখনই টার্গেট এজেন্ট-ভিত্তিক প্রমাণীকরণ সমর্থন করে, তখন প্রাইভেট কী পড়া থেকে বিরত থাকুন।


