ਪਰਮਿਸ਼ਨ ਮੋਡ APX ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ, APC ਵਿੱਚ ਨਹੀਂ

APC ਇੱਕ ਪੋਰਟੇਬਲ ਕੰਟੈਕਸ ਲੇਅਰ (portable context layer) ਹੈ। APX ਰਨਟਾਈਮ ਅਤੇ ਟੂਲਿੰਗ ਲੇਅਰ (runtime and tooling layer) ਹੈ। ਸੁਰੱਖਿਆ ਲਈ ਇਹ ਅੰਤਰ ਮਹੱਤਵਪੂਰਨ ਹੈ।

ਪਰਮਿਸ਼ਨਾਂ ਪ੍ਰੋਜੈਕਟ ਦੀ ਸੱਚਾਈ ਨਹੀਂ ਹਨ। ਉਹ ਮਸ਼ੀਨ ਦੀ ਨੀਤੀ (machine policy) ਹਨ।

ਇੱਕ ਰੈਪੋਜ਼ੀਟਰੀ (repository) ਨੂੰ ਬਿਨਾਂ ਕਿਸੇ ਰੁਕਾਵਟ ਦੇ ਲੈਪਟਾਪਾਂ ਅਤੇ ਡੈਸਕਟਾਪਾਂ ਵਿਚਕਾਰ ਆਉਣਾ-ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਪਰਮਿਸ਼ਨ ਸੈਟਿੰਗ ਹਰ ਮਸ਼ੀਨ 'ਤੇ ਇੱਕੋ ਜਿਹਾ ਜੋਖਮ ਪੱਧਰ ਲਾਜ਼ਮੀ ਨਹੀਂ ਕਰਦੀ ਹੋਣੀ ਚਾਹੀਦੀ। ਜੇਕਰ ਤੁਸੀਂ ਪਰਮਿਸ਼ਨ ਸਟੇਟ ਨੂੰ APC ਵਿੱਚ ਰੱਖਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਸਥਾਨਕ ਵਿਸ਼ਵਾਸ (local trust) ਨੂੰ ਸਾਂਝੇ ਕੰਟੈਕਸ (shared context) ਨਾਲ ਮਿਲਾ ਦਿੰਦੇ ਹੋ।

APX ਸੀਮਾ ਨੂੰ ਸਪੱਸ਼ਟ ਰੱਖਦਾ ਹੈ। ਪਰਮਿਸ਼ਨ ਮੋਡ ਤੁਹਾਡੀ ਸਥਾਨਕ ਕੌਂਫਿਗ (local config) ਵਿੱਚ ਰਹਿੰਦਾ ਹੈ, ਰੈਪੋਜ਼ੀਟਰੀ ਵਿੱਚ ਨਹੀਂ।

ਉਪਲਬਧ ਮੋਡ ਹਨ:

  • total: ਬਿਨਾਂ ਕਿਸੇ ਪੁਸ਼ਟੀ ਦੇ ਹਰ ਟੂਲ ਨੂੰ ਚਲਾਓ।
  • automatico: ਸੁਰੱਖਿਅਤ ਰੀਡ (reads) ਅਤੇ ਸ਼ੈੱਲ ਕੰਮ (shell work) ਦੀ ਇਜਾਜ਼ਤ ਦਿਓ। ਵਿਨਾਸ਼ਕਾਰੀ ਜਾਂ ਬਾਹਰੀ ਕਾਰਵਾਈਆਂ ਲਈ ਪੁਸ਼ਟੀ ਮੰਗੋ।
  • permiso: ਸਿਰਫ਼ ਇਜਾਜ਼ਤ ਪ੍ਰਾਪਤ ਟੂਲਸ ਨੂੰ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਚਲਾਓ। ਬਾਕੀ ਸਭ ਲਈ ਪੁਸ਼ਟੀ ਦੀ ਲੋੜ ਹੈ।

Automatico ਡਿਫੌਲਟ ਹੈ। ਇਹ ਰਨਟਾਈਮ ਨੂੰ ਰੋਜ਼ਾਨਾ ਕੰਮ ਲਈ ਵਰਤੋਂ ਯੋਗ ਰੱਖਦਾ ਹੈ।

APC ਪ੍ਰੋਜੈਕਟ ਮੈਟਾਡਾਟਾ (metadata), ਏਜੰਟਸ (agents), ਅਤੇ ਸਕਿੱਲਜ਼ (skills) ਨੂੰ ਸੰਭਾਲਦਾ ਹੈ। ਇਹ ਸਮੱਗਰੀ ਟੂਲਸ ਵਿੱਚ ਸਥਿਰ ਰਹਿੰਦੀ ਹੈ ਅਤੇ git ਵਿੱਚ ਵਧੀਆ ਕੰਮ ਕਰਦੀ ਹੈ।

ਪਰਮਿਸ਼ਨ ਮੋਡ ਰਨਟਾਈਮ ਤੱਥਾਂ 'ਤੇ ਨਿਰਭਰ ਕਰਦਾ ਹੈ:

  • ਮਸ਼ੀਨ ਦਾ ਮਾਲਕ ਕੌਣ ਹੈ।
  • ਕੀ ਮਸ਼ੀਨ ਨਿੱਜੀ ਹੈ ਜਾਂ ਸਾਂਝੀ।
  • ਕੀ ਕੰਮ ਖੋਜਮੂਲਕ (exploratory) ਹੈ ਜਾਂ ਉੱਚ ਜੋਖਮ ਵਾਲਾ।
  • ਅੱਜ ਤੁਸੀਂ ਰਨਟਾਈਮ ਨੂੰ ਕਿੰਨਾ ਵਿਸ਼ਵਾਸ ਦਿੰਦੇ ਹੋ।

ਜੇਕਰ ਤੁਸੀਂ ਪਰਮਿਸ਼ਨਾਂ ਨੂੰ APC ਵਿੱਚ ਬਦਲਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਦੋ ਸਮੱਸਿਆਵਾਂ ਪੈਦਾ ਕਰਦੇ ਹੋ। ਤੁਸੀਂ ਇੱਕ ਅਜਿਹੀ ਨੀਤੀ ਨੂੰ ਅਪਣਾ ਲੈਂਦੇ ਹੋ ਜੋ ਸ਼ਾਇਦ ਨਵੀਂ ਮਸ਼ੀਨ ਦੇ ਅਨੁਕੂਲ ਨਾ ਹੋਵੇ। ਤੁਸੀਂ ਇੱਕ ਸਥਾਨਕ ਸੁਰੱਖਿਆ ਚੋਣ ਨੂੰ ਸਾਂਝੇ ਪ੍ਰੋਜੈਕਟ ਦੇ ਬੋਝ (baggage) ਵਿੱਚ ਵੀ ਬਦਲ ਦਿੰਦੇ ਹੋ।

ਰੈਪੋ (repo) ਕੰਮ ਦਾ ਵਰਣਨ ਕਰਦੀ ਹੈ। APX ਫੈਸਲਾ ਕਰਦਾ ਹੈ ਕਿ ਸਥਾਨਕ ਰਨਟਾਈਮ ਕੋਲ ਕਿੰਨੀ ਸ਼ਕਤੀ ਹੈ।

APX ਇਸ ਨੂੰ ਕੋਡ ਵਿੱਚ ਲਾਗੂ ਕਰਦਾ ਹੈ। createPermissionGuard ਫੰਕਸ਼ਨ ਤੁਹਾਡੀ ਗਲੋਬਲ ਕੌਂਫਿਗ ਨੂੰ ਪੜ੍ਹਦਾ ਹੈ ਅਤੇ ਟੂਲ ਕਾਲਜ਼ ਨੂੰ ਰੋਕਦਾ ਜਾਂ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ।

ਇਹ ਢਾਂਚਾ ਤੁਹਾਡੇ ਕੰਮ ਕਰਨ ਦੇ ਤਰੀਕੇ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ। ਇੱਕ ਫਾਈਲ ਨੂੰ ਪੜ੍ਹਨਾ ਰੈਪੋਜ਼ੀਟਰੀ ਨੂੰ ਬਦਲਣ ਨਾਲੋਂ ਵੱਖਰਾ ਹੈ। ਇੱਕ ਸੁਰੱਖਿਅਤ ਲੁੱਕਅੱਪ (lookup) ਇੱਕ MCP ਕਨੈਕਸ਼ਨ ਨਾਲੋਂ ਵੱਖਰਾ ਹੈ।

ਤੁਸੀਂ ਵੱਖ-ਵੱਖ APX ਨੀਤੀਆਂ ਨਾਲ ਇੱਕੋ APC ਪ੍ਰੋਜੈਕਟ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ। ਆਪਣੇ ਲੈਪਟਾਪ 'ਤੇ automatico ਦੀ ਵਰਤੋਂ ਕਰੋ। ਸਾਂਝੇ ਵਰਕਸਟੇਸ਼ਨ 'ਤੇ permiso ਦੀ ਵਰਤੋਂ ਕਰੋ।

ਇਹ ਫੈਸਲਾ ਕਰਨ ਲਈ ਕਿ ਕੋਈ ਸੈਟਿੰਗ ਕਿੱਥੇ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ, ਇਸ ਟੈਸਟ ਦੀ ਵਰਤੋਂ ਕਰੋ:

  • ਕੀ ਇਹ "ਇਹ ਪ੍ਰੋਜੈਕਟ ਕੀ ਹੈ?" ਦਾ ਜਵਾਬ ਦਿੰਦਾ ਹੈ? ਇਸਨੂੰ APC ਵਿੱਚ ਰੱਖੋ।
  • ਕੀ ਇਹ "ਇਹ ਮਸ਼ੀਨ ਇਸ ਸਮੇਂ ਕੀ ਕਰ ਸਕਦੀ ਹੈ?" ਦਾ ਜਵਾਬ ਦਿੰਦਾ ਹੈ? ਇਸਨੂੰ APX ਵਿੱਚ ਰੱਖੋ।

ਪਰਮਿਸ਼ਨ ਮੋਡ APX ਵਿੱਚ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਇਹ APC ਨੂੰ ਪੋਰਟੇਬਲ ਰੱਖਦਾ ਹੈ ਅਤੇ ਤੁਹਾਡੇ ਸਥਾਨਕ ਰਨਟਾਈਮ ਨੂੰ ਭਰੋਸੇਯੋਗ ਰੱਖਦਾ ਹੈ।

ਸਰੋਤ: https://dev.to/agentprojectcontext/permission-mode-lives-in-apx-not-apc-50d6

ਵਿਕਲਪਿਕ ਲਰਨਿੰਗ ਕਮਿਊਨਿਟੀ: https://t.me/GyaanSetuAi