SQL సర్వర్ గ్రాంట్

Sql Sarvar Grant



ఈ కథనంలో, ప్రిన్సిపాల్‌కు సెక్యూరబుల్‌పై అనుమతులను మంజూరు చేయడానికి SQL సర్వర్‌లో GRANT స్టేట్‌మెంట్‌ను ఎలా ఉపయోగించాలో మీరు అర్థం చేసుకుంటారు.

SQL సర్వర్ సెక్యూరబుల్ మరియు ప్రిన్సిపాల్

సెక్యూరబుల్ అనేది SQL సర్వర్ డేటాబేస్ ఇంజిన్ ఆథరైజేషన్ సిస్టమ్ యాక్సెస్‌ని నియంత్రించే వనరులను సూచిస్తుంది. ఒక ఉదాహరణ డేటాబేస్ పట్టిక.

ఏదైనా SQL సర్వర్ రిసోర్స్‌కు యాక్సెస్ అవసరమయ్యే ఏదైనా ఎంటిటీని ప్రిన్సిపాల్ సూచిస్తుంది. ఉదాహరణకు, టేబుల్‌పై అనుమతులను అభ్యర్థిస్తున్న వినియోగదారు ప్రధానమైనది.







SQL సర్వర్ గ్రాంట్ స్టేట్‌మెంట్

కిందిది SQL సర్వర్‌లో GRANT కమాండ్ యొక్క సింటాక్స్‌ను చూపుతుంది:



అనుమతులు మంజూరు చేయండి
మెయిన్‌కి సెక్యూరబుల్ ఆన్;

మీరు ప్రిన్సిపాల్‌కు కామాతో వేరు చేయబడిన జాబితాగా కేటాయించాలనుకుంటున్న అనుమతిని పేర్కొనాలి.



ON కీవర్డ్ అనుమతులు వర్తించే సురక్షితాన్ని పేర్కొనడానికి మిమ్మల్ని అనుమతిస్తుంది. చివరగా, TO కీవర్డ్ మిమ్మల్ని టార్గెట్ ప్రిన్సిపాల్‌ని సెట్ చేయడానికి అనుమతిస్తుంది.





ఉదాహరణకు, CREATE USER స్టేట్‌మెంట్‌ని ఉపయోగించి వినియోగదారుని సృష్టించడం ఆ వినియోగదారుకు అనుమతులను నిర్వచించదు. అందువల్ల, ఆ వినియోగదారుకు అనుమతులను సెట్ చేయడానికి GRANT స్టేట్‌మెంట్‌ను ఉపయోగించడం చాలా అవసరం.

ఒక ఉదాహరణ తీసుకుందాం.



ఉదాహరణ లాగిన్ సృష్టించండి

ఇలస్ట్రేషన్ ప్రయోజనాల కోసం నమూనా లాగిన్‌ని సృష్టించడం ద్వారా ప్రారంభిద్దాం. ప్రశ్న క్రింది విధంగా అందించబడింది:

లాగిన్ linuxhint సృష్టించండి
పాస్‌వర్డ్‌తో='పాస్‌వర్డ్';

పై ఆదేశం linuxhint వినియోగదారు పేరు మరియు పేర్కొన్న పాస్‌వర్డ్‌తో వినియోగదారుని సృష్టించాలి.

నమూనా డేటాబేస్ సృష్టించండి

మేము లాగిన్‌ను నిర్వచించిన తర్వాత వినియోగదారు నివసించే డేటాబేస్‌ను సృష్టించవచ్చు. ప్రశ్నలు చూపిన విధంగా ఉన్నాయి:

పరిష్కర్త ఉన్నట్లయితే డేటాబేస్ను వదలండి;

డేటాబేస్ పరిష్కరిణిని సృష్టించండి;

పరిష్కరిణిని ఉపయోగించండి;

ఎంట్రీలు ఉంటే పట్టికను వదలండి;

పట్టిక ఎంట్రీలను సృష్టించు(
id int శూన్య గుర్తింపు కాదు(1,
1) ప్రాథమిక కీ,
సర్వర్_పేరు వర్చార్(50),
సర్వర్_అడ్రస్ వర్చార్(255) శూన్యం కాదు,
compression_method varchar(100) డిఫాల్ట్ 'ఏదీ లేదు',
size_on_disk ఫ్లోట్ శూన్యం కాదు,
పరిమాణం_కంప్రెస్డ్ ఫ్లోట్,
total_records int శూన్యం కాదు,
init_తేదీ తేదీ
);
చొప్పించు
లోకి
ENTRIES(సర్వర్_పేరు,
సర్వర్ చిరునామా,
కుదింపు_పద్ధతి,
డిస్క్‌లో_పరిమాణం,
పరిమాణం_కంప్రెస్డ్,
మొత్తం_రికార్డులు,
init_తేదీ)
విలువలు
('MySQL','localhost:3306','lz77',90.66,40.04,560000,'2022-01-02'),
('రెడిస్','లోకల్ హోస్ట్:6307','స్నాపీ',3.55,998.2,100000,'2022-03-19'),
('PostgreSQL','localhost:5432','pglz',101.2,98.01,340000 ,'2022-11-11'),
('ఎలాస్టిక్ సెర్చ్','లోకల్ హోస్ట్:9200','lz4',333.2,300.2,1200000,'2022-10-08'),
('MongoDB','localhost:27017','Snappy',4.55,4.10,620000,'2021-12-12'),
('Apache Cassandra','localhost:9042','zstd',300.3,200.12,10000000,'2020-03-21');

లాగిన్ కోసం వినియోగదారుని సృష్టించండి

మేము డేటాబేస్ మరియు పట్టికను సృష్టించిన తర్వాత, linuxhint లాగిన్ కోసం వినియోగదారుని ఇలా సృష్టించవచ్చు:

పరిష్కరిణిని ఉపయోగించండి
వినియోగదారు linuxhint సృష్టించండి
లాగిన్ linuxhint కోసం;

కొత్త వినియోగదారుగా లాగిన్ చేయండి

తరువాత, కొత్తగా సృష్టించిన వినియోగదారుగా లాగిన్ చేద్దాం. కమాండ్ చూపిన విధంగా ఉంది:

సెట్యూజర్ 'linuxhint';

లాగిన్ అయిన తర్వాత, ఎంపిక ఆదేశాన్ని అమలు చేయడం ద్వారా మేము పట్టికలను వీక్షించడానికి ప్రయత్నించవచ్చు:

ఎంట్రీల నుండి * ఎంచుకోండి;

పై ప్రశ్నను అమలు చేయడం వలన ఎర్రర్ ఏర్పడుతుంది:

సందేశం 229, స్థాయి 14, రాష్ట్రం 5, లైన్ 379
ఆబ్జెక్ట్ 'ఎంట్రీలు', డేటాబేస్ 'రిసోల్వర్', స్కీమా 'డిబో'పై SELECT అనుమతి నిరాకరించబడింది.

ఎందుకంటే linuxhint వినియోగదారుకు SELECT అనుమతులతో సహా డేటాబేస్‌లో ఎలాంటి అనుమతులు లేవు.

వినియోగదారుకు అనుమతిని మంజూరు చేయండి

పట్టికలలో నిల్వ చేయబడిన సమాచారాన్ని వీక్షించడానికి వినియోగదారుని అనుమతించడానికి మేము SELECT అనుమతులను మంజూరు చేయాలి.

దాని కోసం, మీరు SQL సర్వర్ అడ్మినిస్ట్రేటివ్ ఖాతాతో లాగిన్ చేయాలి.

తరువాత, ప్రశ్నను ఇలా అమలు చేయండి:

linuxhintకు ఎంట్రీలపై ఎంపికను మంజూరు చేయండి;

అమలు చేసిన తర్వాత, linuxhint వినియోగదారుగా లాగిన్ చేసి, SELECT స్టేట్‌మెంట్‌ను ఉపయోగించండి.

ఎంట్రీల నుండి * ఎంచుకోండి;

ఈ సందర్భంలో, వినియోగదారుకు SELECT అనుమతులు ఉన్నందున ఆదేశం పట్టికను అందిస్తుంది

మీరు వినియోగదారుకు ఇలా చొప్పించడం మరియు తొలగించడం వంటి ఇతర అనుమతిని కూడా కేటాయించవచ్చు:

చొప్పించడాన్ని మంజూరు చేయండి, linuxhintకు ఎంట్రీలపై తొలగించండి;

ఈ సందర్భంలో, linuxhint వినియోగదారు ఎంట్రీల పట్టికలో SELECT, INSERT మరియు DELETE అనుమతులను కలిగి ఉండాలి.

ముగింపు

ఈ పోస్ట్‌లో, మేము SQL సర్వర్‌లో GRANT కమాండ్ వినియోగాన్ని అన్వేషించాము. ఇచ్చిన ప్రిన్సిపాల్‌కు అనుమతులను కేటాయించడానికి ఆదేశం మిమ్మల్ని అనుమతిస్తుంది.