ਗ੍ਰਾਂਟ, ਰਿਵੀਕ ਅਤੇ ਡੈਨੀ ਡਾਟਾਬੇਸ ਅਧਿਕਾਰ
ਡਾਟਾ ਕੰਟ੍ਰੋਲ ਭਾਸ਼ਾ (DCL) ਸਟ੍ਰਕਚਰਡ ਕੁਇਰੀ ਲੈਂਗਵੇਜ (SQL) ਦਾ ਸਬਸੈਟ ਹੈ ਅਤੇ ਡੇਟਾਬੇਸ ਪ੍ਰਸ਼ਾਸਕਾਂ ਨੂੰ ਰਿਲੇਸ਼ਨਲ ਡੈਟਾਬੇਸ ਤੋਂ ਸੁਰੱਖਿਆ ਪਹੁੰਚ ਦੀ ਸੰਰਚਨਾ ਕਰਨ ਦੀ ਆਗਿਆ ਦਿੰਦੀ ਹੈ. ਇਹ ਡਾਟਾ ਪਰਿਭਾਸ਼ਾ ਭਾਸ਼ਾ (ਡੀਡੀਐਲ) ਦੀ ਪੂਰਤੀ ਕਰਦਾ ਹੈ, ਜੋ ਡਾਟਾਬੇਸ ਆਬਜੈਕਟ ਨੂੰ ਜੋੜਨ ਅਤੇ ਮਿਟਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਡੇਟਾ ਮੈਨਿਪੂਲੇਸ਼ਨ ਭਾਸ਼ਾ (ਡੀਐਮਐਲ) ਨੂੰ ਡਾਟਾਬੇਸ ਦੀ ਸਮਗਰੀ ਨੂੰ ਮੁੜ ਪ੍ਰਾਪਤ, ਸੰਮਿਲਿਤ ਅਤੇ ਸੋਧਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ.
ਡੀ.ਸੀ.ਐਲ. ਐਸ ਸੀ ਐਸ ਸਬਸੈੱਟਾਂ ਦਾ ਸਭ ਤੋਂ ਸੌਖਾ ਤਰੀਕਾ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਕੇਵਲ ਤਿੰਨ ਕਮਾਂਡਾਂ ਹਨ: GRANT, REVOKE, ਅਤੇ DENY ਇਕੱਠਿਤ, ਇਹ ਤਿੰਨ ਹੁਕਮ ਪ੍ਰਸ਼ਾਸਕਾਂ ਨੂੰ ਇੱਕ ਬਹੁਤ ਹੀ ਗੁੰਝਲਦਾਰ ਰੂਪ ਵਿੱਚ ਡਾਟਾਬੇਸ ਅਧਿਕਾਰਾਂ ਨੂੰ ਸੈਟ ਅਤੇ ਹਟਾਉਣ ਲਈ ਲਚਕਤਾ ਪ੍ਰਦਾਨ ਕਰਦੇ ਹਨ.
ਗ੍ਰਾਂਟ ਕਮਾਂਡ ਦੇ ਨਾਲ ਅਨੁਮਤੀਆਂ ਨੂੰ ਜੋੜਨਾ
GRANT ਕਮਾਂਡ ਨੂੰ ਪ੍ਰਸ਼ਾਸਕਾਂ ਦੁਆਰਾ ਡਾਟਾਬੇਸ ਉਪਭੋਗਤਾ ਲਈ ਨਵੀਂ ਅਨੁਮਤੀਆਂ ਨੂੰ ਜੋੜਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਇਸ ਵਿੱਚ ਇੱਕ ਬਹੁਤ ਹੀ ਸਧਾਰਨ ਸੈਂਟੈਕਸ ਹੈ, ਜਿਸਦਾ ਪਰਿਭਾਸ਼ਾ ਇਸ ਤਰਾਂ ਹੈ:
ਗ੍ਰਾਂਟ [ਵਿਸ਼ੇਸ਼ਤਾ] ਔਨ [ਆਬਜੈਕਟ] ਤੋਂ [ਯੂਜ਼ਰ] [ਗ੍ਰਾਂਟ ਓਪਸ਼ਨ ਨਾਲ]ਇੱਥੇ ਤੁਸੀਂ ਇਸ ਕਮਾਂਡ ਨਾਲ ਹਰੇਕ ਪੈਰਾਮੀਟਰ ਨੂੰ ਸਪੁਰਦ ਕਰ ਸਕਦੇ ਹੋ:
- ਵਿਸ਼ੇਸ਼ਤਾ ਜਾਂ ਤਾਂ ਕੀਵਰਡ ALL ਹੋ ਸਕਦਾ ਹੈ (ਵੱਖ-ਵੱਖ ਅਧਿਕਾਰਾਂ ਨੂੰ ਮਨਜ਼ੂਰੀ ਦੇਣ) ਜਾਂ ਕਿਸੇ ਵਿਸ਼ੇਸ਼ ਡੇਟਾਬੇਸ ਦੀ ਇਜਾਜ਼ਤ ਜਾਂ ਅਧਿਕਾਰਾਂ ਦਾ ਸਮੂਹ. ਉਦਾਹਰਨਾਂ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰੋ ਡਾਟਾਬੇਸ ਬਣਾਓ, ਚੁਣੋ, Insert, Update, DELETE, EXECUTE ਅਤੇ REVIEW ਦੇਖੋ.
- ਇਕਾਈ ਕਿਸੇ ਵੀ ਡਾਟਾਬੇਸ ਆਬਜੈਕਟ ਹੋ ਸਕਦੀ ਹੈ ਵੈਧ ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰ ਵਿਕਲਪ ਤੁਹਾਡੇ ਦੁਆਰਾ ਇਸ ਧਾਰਾ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤੇ ਗਏ ਡੇਟਾਬੇਸ ਆਬਜੈਕਟ ਦੀ ਕਿਸਮ ਦੇ ਆਧਾਰ ਤੇ ਵੱਖ-ਵੱਖ ਹੁੰਦੇ ਹਨ. ਆਮ ਤੌਰ ਤੇ, ਇਕਾਈ ਜਾਂ ਤਾਂ ਡੇਟਾਬੇਸ, ਫੰਕਸ਼ਨ, ਸਟੋਰੀ ਪ੍ਰਕਿਰਿਆ , ਸਾਰਣੀ ਜਾਂ ਵਿਯੂ ਹੋਵੇਗੀ.
- ਯੂਜ਼ਰ ਕੋਈ ਵੀ ਡਾਟਾਬੇਸ ਉਪਭੋਗਤਾ ਹੋ ਸਕਦਾ ਹੈ. ਜੇਕਰ ਤੁਸੀਂ ਭੂਮਿਕਾ ਆਧਾਰਿਤ ਡਾਟਾਬੇਸ ਸੁਰੱਖਿਆ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਤੁਸੀਂ ਇਸ ਧਾਰਾ ਵਿੱਚ ਉਪਭੋਗਤਾ ਲਈ ਭੂਮਿਕਾ ਬਦਲ ਸਕਦੇ ਹੋ.
- ਜੇ ਤੁਸੀਂ ਗਰੰਟੰਟ ਕਮਾਂਡ ਦੇ ਅਖੀਰ ਵਿਚ ਗ੍ਰਾਂਟ ਓਪਲੇਸ਼ਨ ਕਲੋਜ਼ ਦੇ ਨਾਲ ਵਿਕਲਪਕ ਸ਼ਾਮਲ ਕਰਦੇ ਹੋ, ਤਾਂ ਤੁਸੀਂ ਕੇਵਲ ਸਪੱਸ਼ਟ ਉਪਭੋਗਤਾ ਨੂੰ SQL ਕਥਨ ਵਿੱਚ ਪ੍ਰਵਾਨਿਤ ਅਧਿਕਾਰਾਂ ਨੂੰ ਹੀ ਗ੍ਰਾਂਟ ਨਹੀਂ ਦੇਂਦੇ ਪਰ ਇਹ ਵੀ ਉਪਭੋਗਤਾ ਨੂੰ ਦੂਜੇ ਡੇਟਾਬੇਸ ਯੂਜ਼ਰਾਂ ਨੂੰ ਉਹੀ ਅਧਿਕਾਰ ਦੇਣ ਦੀ ਸਮਰੱਥਾ ਦਿੰਦਾ ਹੈ. ਇਸ ਕਾਰਨ ਕਰਕੇ, ਇਸ ਧਾਰਾ ਦਾ ਧਿਆਨ ਨਾਲ ਦੇਖਭਾਲ ਕਰੋ
ਉਦਾਹਰਨ ਲਈ, ਮੰਨ ਲਵੋ ਕਿ ਤੁਸੀਂ ਯੂਜ਼ਰ ਜੋ ਨੂੰ ਐਚਆਰ ਨਾਮਕ ਇੱਕ ਡੇਟਾਬੇਸ ਵਿੱਚ ਕਰਮਚਾਰੀ ਸਾਰਣੀ ਤੋਂ ਜਾਣਕਾਰੀ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਯੋਗਤਾ ਦੇਣਾ ਚਾਹੁੰਦੇ ਹੋ. ਤੁਸੀਂ ਅੱਗੇ ਦਿੱਤੇ SQL ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ:
H.R. ਦੇ ਕਰਮਚਾਰੀਆਂ ਲਈ ਜੋਅ ਨੂੰ ਚੁਣੋਜੋ ਹੁਣ ਕਰਮਚਾਰੀਆਂ ਦੀਆਂ ਮੇਜ਼ਾਂ ਤੋਂ ਜਾਣਕਾਰੀ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਰੱਖਦਾ ਹੈ. ਪਰ, ਉਹ ਦੂਜੇ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਉਸ ਸਾਰਣੀ ਤੋਂ ਜਾਣਕਾਰੀ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦੇਣ ਦੇ ਯੋਗ ਨਹੀਂ ਹੋਵੇਗਾ ਕਿਉਂਕਿ ਤੁਸੀਂ GRANT ਸਟੇਟਮੈਂਟ ਵਿੱਚ ਗਰਾਂਟ ਓਪੀਸ਼ਨ ਕਲੋਜ਼ ਨੂੰ ਸ਼ਾਮਲ ਨਹੀਂ ਕੀਤਾ ਸੀ.
ਡਾਟਾਬੇਸ ਐਕਸੈੱਸ ਨੂੰ ਰੱਦ ਕਰਨਾ
REVOKE ਕਮਾਡ ਦੀ ਵਰਤੋਂ ਪਹਿਲਾਂ ਐਕਸੈਸ ਕੀਤੇ ਗਏ ਉਪਯੋਗਕਰਤਾ ਤੋਂ ਡਾਟਾਬੇਸ ਐਕਸੈਸ ਨੂੰ ਹਟਾਉਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ. ਇਸ ਕਮਾਂਡ ਲਈ ਸੰਟੈਕਸ ਨੂੰ ਇਸ ਤਰਾਂ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਗਿਆ ਹੈ:
REVOKE [ਗ੍ਰਾਂਟ ਵਿਕਲਪ ਲਈ] [ਇਜਾਜ਼ਤ] ਔਨ [ਔਬਜੈਕਟ] [ਯੂਜ਼ਰ] ਤੋਂ [ਕਾাসਕੇ]REVOKE ਕਮਾਂਡ ਲਈ ਮਾਪਦੰਡਾਂ ਤੇ ਰਨਡਾਉਨ ਹੈ:
- ਅਧਿਕਾਰਤ ਉਪਭੋਗਤਾ ਤੋਂ ਹਟਾਉਣ ਲਈ ਡਾਟਾਬੇਸ ਅਧਿਕਾਰਾਂ ਨੂੰ ਨਿਰਧਾਰਿਤ ਕਰਦਾ ਹੈ ਆਦੇਸ਼ ਗਾਰੰਟ ਅਤੇ ਡੈਨੀ ਦਾਅਵੇਦਾਰਾਂ ਨੂੰ ਪਹਿਲਾਂ ਪਛਾਣ ਕੀਤੀ ਗਈ ਆਗਿਆ ਲਈ ਕੀਤੀ ਗਈ ਹੈ.
- ਇਕਾਈ ਕਿਸੇ ਵੀ ਡਾਟਾਬੇਸ ਆਬਜੈਕਟ ਹੋ ਸਕਦੀ ਹੈ ਵੈਧ ਵਿਸ਼ੇਸ਼ ਅਧਿਕਾਰ ਵਿਕਲਪ ਤੁਹਾਡੇ ਦੁਆਰਾ ਇਸ ਧਾਰਾ ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤੇ ਗਏ ਡੇਟਾਬੇਸ ਆਬਜੈਕਟ ਦੀ ਕਿਸਮ ਦੇ ਆਧਾਰ ਤੇ ਵੱਖ-ਵੱਖ ਹੁੰਦੇ ਹਨ. ਆਮ ਤੌਰ ਤੇ, ਇਕਾਈ ਜਾਂ ਤਾਂ ਡੇਟਾਬੇਸ, ਫੰਕਸ਼ਨ, ਸਟੋਰੀ ਪ੍ਰਕਿਰਿਆ, ਸਾਰਣੀ ਜਾਂ ਵਿਯੂ ਹੋਵੇਗੀ.
- ਯੂਜ਼ਰ ਕੋਈ ਵੀ ਡਾਟਾਬੇਸ ਉਪਭੋਗਤਾ ਹੋ ਸਕਦਾ ਹੈ. ਜੇਕਰ ਤੁਸੀਂ ਭੂਮਿਕਾ ਆਧਾਰਿਤ ਡਾਟਾਬੇਸ ਸੁਰੱਖਿਆ ਦੀ ਵਰਤੋਂ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਤੁਸੀਂ ਇਸ ਧਾਰਾ ਵਿੱਚ ਉਪਭੋਗਤਾ ਲਈ ਭੂਮਿਕਾ ਬਦਲ ਸਕਦੇ ਹੋ.
- ਗਰੰਟੀ ਦੇ ਲਈ ਅਨੁਮਤੀ ਨੂੰ ਖਾਸ ਉਪਭੋਗਤਾ ਦੀ ਖਾਸ ਅਨੁਮਤੀ ਦੂਜੀਆਂ ਉਪਭੋਗਤਾਵਾਂ ਨੂੰ ਪ੍ਰਦਾਨ ਕਰਨ ਦੀ ਯੋਗਤਾ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ ਨੋਟ : ਜੇ ਤੁਸੀਂ REVOKE ਸਟੇਟਮੈਂਟ ਵਿਚ ਗ੍ਰਾਂਟ ਵਿਕਲਪ ਧਾਰਾ ਨੂੰ ਸ਼ਾਮਲ ਕਰਦੇ ਹੋ, ਤਾਂ ਪ੍ਰਾਇਮਰੀ ਇਜਾਜ਼ਤ ਰੱਦ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ. ਇਹ ਧਾਰਾ ਕੇਵਲ ਗ੍ਰਾਂਟ ਦੇਣ ਦੀ ਯੋਗਤਾ ਨੂੰ ਮਨਸੂਖ ਕਰਦੀ ਹੈ.
- CASCADE ਵਿਕਲਪ ਕਿਸੇ ਵੀ ਉਪਭੋਗਤਾ ਦੀ ਨਿਸ਼ਚਤ ਅਨੁਮਤੀ ਨੂੰ ਵੀ ਰੱਦ ਕਰਦਾ ਹੈ ਜਿਸ ਨਾਲ ਨਿਸ਼ਚਿਤ ਉਪਯੋਗਕਰਤਾ ਵੱਲੋਂ ਆਗਿਆ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ.
ਉਦਾਹਰਣ ਲਈ, ਹੇਠ ਲਿਖੀ ਕਮਾਂਡ ਜੋਅ ਨੂੰ ਪਿਛਲੀ ਉਦਾਹਰਣ ਵਿੱਚ ਦਿੱਤੀ ਮਨਜ਼ੂਰੀ ਨੂੰ ਰੱਦ ਕਰਦੀ ਹੈ:
ਜੋਅ ਤੋਂ ਕਰਮਚਾਰੀਆਂ ਦੀ ਚੋਣ ਕਰੋਸਪਸ਼ਟ ਤੌਰ ਤੇ ਡਾਟਾਬੇਸ ਪਹੁੰਚ ਤੋਂ ਇਨਕਾਰ
DENY ਕਮਾਂਡ ਕਿਸੇ ਉਪਭੋਗਤਾ ਨੂੰ ਖਾਸ ਇਜਾਜ਼ਤ ਲੈਣ ਤੋਂ ਰੋਕਣ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ. ਇਹ ਉਦੋਂ ਸਹਾਇਕ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਉਪਯੋਗਕਰਤਾ ਕੋਈ ਭੂਮਿਕਾ ਜਾਂ ਸਮੂਹ ਦਾ ਮੈਂਬਰ ਹੁੰਦਾ ਹੈ ਜਿਸਨੂੰ ਇਜਾਜ਼ਤ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਤੁਸੀਂ ਉਸ ਵਿਅਕਤੀ ਨੂੰ ਕਿਸੇ ਅਪਵਾਦ ਨੂੰ ਬਣਾ ਕੇ ਅਨੁਮਤੀ ਪ੍ਰਾਪਤ ਕਰਨ ਤੋਂ ਰੋਕਣਾ ਚਾਹੁੰਦੇ ਹੋ. ਇਸ ਕਮਾਂਡ ਲਈ ਸੰਟੈਕਸ ਇਸ ਤਰਾਂ ਹੈ:
DENY [ਇਜਾਜ਼ਤ] ਔਨ [ਉਕਾਈ] ਤੋ [ਯੂਜ਼ਰ] DENY ਕਮਾਂਡ ਦੇ ਮਾਪਦੰਡ ਗ੍ਰੰਤ ਹੁਕਮ ਲਈ ਵਰਤੇ ਜਾਂਦੇ ਹਨ.
ਉਦਾਹਰਨ ਲਈ, ਜੇ ਤੁਸੀਂ ਇਹ ਸੁਨਿਸ਼ਚਿਤ ਕਰਨ ਦੀ ਕਾਮਨਾ ਕਰਦੇ ਹੋ ਕਿ ਮੈਥਿਊ ਨੂੰ ਕਰਮਚਾਰੀਆਂ ਦੀਆਂ ਮੇਜ਼ਾਂ ਤੋਂ ਜਾਣਕਾਰੀ ਮਿਟਾਉਣ ਦੀ ਯੋਗਤਾ ਕਦੇ ਨਹੀਂ ਮਿਲੇਗੀ, ਤਾਂ ਹੇਠ ਲਿਖੀ ਕਮਾਂਡ ਜਾਰੀ ਕਰੋ: