Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle में उपयोगकर्ता कैसे बनाएं और विशेषाधिकार असाइन करें

हम ओरेकल डेटाबेस में यूजर एक्सेस और सुरक्षा पर जानकारी पोस्ट करेंगे। यह पोस्ट ओरेकल में उपयोगकर्ता बनाएं, सिस्टम विशेषाधिकार और ओरेकल ऑब्जेक्ट विशेषाधिकार, उपयोगकर्ताओं को विशेषाधिकार कैसे प्रदान करें, ओरेकल में उपयोगकर्ता से सभी विशेषाधिकार कैसे दिखाएं

पर अच्छी जानकारी देगी।

उपयोगकर्ता विवरण बनाएं

यह एक उपयोगकर्ता (स्कीमा) बनाने के लिए नियोजित है।

एक नए उपयोगकर्ता के लिए डिफ़ॉल्ट प्रमाणीकरण डेटाबेस है। उपयोगकर्ता को एक पासवर्ड दिया जाता है, और पासवर्ड को डेटाबेस में एन्क्रिप्टेड रखा जाता है। दो अन्य प्रकार के प्रमाणीकरण संभव हैं, पहला ऑपरेटिंग सिस्टम स्तर का उपयोग करके बाहरी प्रमाणीकरण है। बाहरी प्रमाणीकरण ऑपरेटिंग सिस्टम स्तर पर पासवर्ड की जांच करता है।

दूसरा वैश्विक प्रमाणीकरण है जो Oracle सुरक्षा सेवा या किसी अन्य तृतीय-पक्ष निर्देशिका सेवा में उपयोगकर्ता पासवर्ड की जाँच करता है।

गुण निर्दिष्ट करना -

हम ALTER USER का उपयोग करके उपयोगकर्ता विशेषताओं को बदल सकते हैं। हम या तो उन्हें बदल सकते हैं या उन्हें असाइन कर सकते हैं

कुछ विशेषताओं के सेट के साथ उपयोगकर्ता स्टेटमेंट बनाएं

CREATE USER SCOTT
IDENTIFIED BY TTOC
DEFAULT TABLESPACE USERS
QUOTA 10M ON USERS
TEMPORARY TABLESPACE temp
QUOTA 5M ON system
PROFILE application_user
PASSWORD EXPIRE

Oracle सिस्टम विशेषाधिकार

यह अनुदानग्राही को डेटाबेस ऑब्जेक्ट बनाने, बदलने, छोड़ने और प्रबंधित करने की अनुमति देता है। उदाहरण के लिए, टेबल स्पेस बनाने और डेटाबेस में किसी भी टेबल की पंक्तियों को हटाने के विशेषाधिकार सिस्टम विशेषाधिकार हैं।

Oracle के पास 100 से अधिक सिस्टम विशेषाधिकार हैं (SYSTEM_PRIVILEGE_MAP तालिका में पाए जाते हैं)।

Oracle डेटाबेस में SYSDBA और SYSOPER नामक 2 विशेष विशेषाधिकार हैं। दोनों विशेषाधिकार डेटाबेस संचालन जैसे STARTUP, SHUTDOWN, OPEN, MOUNT, BACKUP, ARCHIVELOG और RECOVER की अनुमति देते हैं। SYSDBA CREATE DATABASE कमांड और CHARACTER SET विकल्पों को बदलने की अनुमति देता है।

सिस्टम विशेषाधिकार डेटाबेस व्यवस्थापक द्वारा ग्रांट कमांड का उपयोग करने वाले उपयोगकर्ताओं को प्रदान किए जाते हैं और रिवोक कमांड का उपयोग करके निरस्त कर दिए जाते हैं

यदि डीबीए को किसी को सिस्टम विशेषाधिकार प्रदान करने की आवश्यकता है ताकि कोई अन्य व्यक्ति भी इसे प्रदान कर सके, तो इसे व्यवस्थापक विकल्प के साथ दिया जाना चाहिए

GRANT create session TO user;
GRANT create session TO user with admin option;
Revoke create session from user;

उपयोगकर्ता सिस्टम विशेषाधिकार

जब उपयोगकर्ता बनाया जाता है, तो हम आम तौर पर निम्न सिस्टम विशेषाधिकार प्रदान करते हैं

  • सत्र बनाएं
  • तालिका बनाएं
  • दृश्य बनाएं
  • अनुक्रम बनाएं
  • प्रक्रिया बनाएं

इससे उपयोगकर्ता टेबल और अन्य ऑब्जेक्ट बनाना शुरू कर सकता है।

Sample
CREATE USER "TEST" IDENTIFIED BY TEST
DEFAULT TABLESPACE "TOOLS"
TEMPORARY TABLESPACE "TEMP";
grant CREATE TRIGGER to TEST;
grant CREATE PROCEDURE to TEST;
grant CREATE SESSION to TEST;
grant CREATE TYPE to TEST;
grant CREATE TABLE to TEST;
grant CREATE VIEW to TEST;
grant ALTER SESSION to TEST;
grant CREATE SEQUENCE to TEST;
grant CREATE SYNONYM to TEST;
grant CREATE ANY SYNONYM to TEST;
grant UNLIMITED TABLESPACE to TEST;

Oracle ऑब्जेक्ट विशेषाधिकार

ये डेटाबेस ऑब्जेक्ट्स (जैसे एक टेबल, व्यू, प्रक्रिया, आदि…) पर दिए जाते हैं

स्वामी के पास सभी विशेषाधिकार हैं और स्वामी वस्तुओं पर विशिष्ट विशेषाधिकार दे सकता है

मालिक नीचे दिए गए आदेश का उपयोग करके विशेषाधिकार प्रदान कर सकता है

GRANT privileges ON object TO user;

विशेषाधिकारों का चयन, सम्मिलित करना, अद्यतन करना, हटाना या सभी हो सकता है

यदि स्वामी सभी उपयोगकर्ताओं को विशेषाधिकार प्रदान करना चाहता है

GRANT privileges ON object TO public;

यदि स्वामी उपयोगकर्ता को अनुदान विकल्प के साथ विशेषाधिकार प्रदान करना चाहता है। मूल रूप से, इसका मतलब है कि, अनुदेयी आगे इस विशेषाधिकार को दूसरों को सौंप सकता है

GRANT privileges ON object TO user with grant option;

इसी तरह, हमारे पास ऑब्जेक्ट से विशेषाधिकारों को हटाने के लिए रिवोक कमांड है

ओरेकल भूमिका क्या है?

भूमिका एक डेटाबेस ऑब्जेक्ट है जिसका उपयोग विशेषाधिकारों को लागू करने के लिए किया जाता है। डेटाबेस ऑब्जेक्ट पर विशेषाधिकार सेट करने के लिए उपयोगकर्ता को एक भूमिका सौंपी जा सकती है:

GRANT EBS_ADMIN TO SCOTT;

यह उपयोगकर्ता SCOTT को अपने सभी विशेषाधिकारों के साथ EBS_ADMIN भूमिका प्रदान करेगा।

भूमिकाएं बनाना और उनका उपयोग करना

CREATE ROLE [पहचान <पासवर्ड>] कमांड, एक भूमिका बनाता है। भूमिका को विशेषाधिकार सौंपना GRANT कमांड का उपयोग करके किया जाता है। रिवोक <विशेषाधिकार> फ्रॉम रोल का उपयोग करके विशेषाधिकारों को निरस्त किया जाता है।

सिस्टम और ऑब्जेक्ट विशेषाधिकारों में क्या अंतर है?

डेटा डिक्शनरी टेबल और दृश्य

Oracle ने विशेषाधिकारों के बारे में जानकारी प्राप्त करने के लिए डेटा शब्दकोश दृश्य प्रदान किए हैं

दृश्यों की तीन श्रेणियां हैं

विशेषाधिकार दृश्यों की जांच करना

विशेषाधिकारों के लिए उपयोगी क्वेरी

oracle में उपयोक्ता विशेषाधिकारों की जांच कैसे करें

col role for a16
col pv for a75 hea 'PRIVILEGE OR ROLE'
break on role on type skip 1
define usercheck = 'SH'
select grantee, 'ROL' type, granted_role pv
from dba_role_privs where grantee = '&usercheck' union
select grantee, 'PRV' type, privilege pv
from dba_sys_privs where grantee = '&usercheck' union
select grantee, 'OBJ' type,
max(decode(privilege,'WRITE','WRITE,'))||max(decode(privilege,'READ','READ'))||
max(decode(privilege,'EXECUTE','EXECUTE'))||max(decode
(privilege,'SELECT','SELECT'))||
max(decode(privilege,'DELETE',',DELETE'))||max(decode
(privilege,'UPDATE',',UPDATE'))||
max(decode(privilege,'INSERT',',INSERT'))||' ON '||object_type||'
"'||a.owner||'.'||table_name||'"' pv
from dba_tab_privs a, dba_objects b
where a.owner=b.owner and a.table_name = b.object_name and
a.grantee='&usercheck'
group by a.owner,table_name,object_type,grantee union
select username grantee, '---' type, 'empty user ---' pv from dba_users
where not username in (select distinct grantee from dba_role_privs) and
not username in (select distinct grantee from dba_sys_privs) and
not username in (select distinct grantee from dba_tab_privs) and username like
'%&usercheck%'
group by username
order by grantee, type, pv;

उपयोगकर्ता को दिए गए सिस्टम विशेषाधिकार निर्धारित करें

SELECT GRANTEE, PRIVILEGE FROM DBA_SYS_PRIVS  
WHERE GRANTEE = 'USER';

यह जांचना कि आपके द्वारा अन्य उपयोगकर्ताओं को कौन-से तालिका विशेषाधिकार दिए गए हैं।

SELECT * FROM USER_TAB_PRIVS_MADE

यह जांचना कि अन्य उपयोगकर्ताओं द्वारा आपको कौन-से तालिका विशेषाधिकार दिए गए हैं

SELECT * FROM USER_TAB_PRIVS_RECD;

यह जांचना कि आपके द्वारा अन्य उपयोगकर्ताओं को कौन-से स्तंभ-स्तरीय विशेषाधिकार दिए गए हैं।

SELECT * FROM USER_COL_PRIVS_MADE;


जांचना  अन्य उपयोगकर्ताओं द्वारा आपको कौन से स्तंभ-स्तरीय विशेषाधिकार दिए गए हैं

SELECT * FROM USER_COL_PRIVS_RECD;


जांच करना कि भूमिकाओं को कौन-से विशेषाधिकार दिए गए हैं

SELECT * FROM USER_ROLE_PRIVS;

Oracle में विशेषाधिकार कैसे दें और निरस्त करें

Objects grant/revoke from user  
grant select on dept to public;
revoke select  on dept  from public;
Objects grant/revoke from Role
grant delete on dept to dept_role;
revoke update on dept from dept_role;

संबंधित लिंक

उपयोगकर्ता विशेषाधिकार और भूमिकाएं प्रबंधित करना :आगे के संदर्भ के लिए Oracle दस्तावेज़ीकरण
Oracle विचार :oracle दृश्य कैसे बनाएं, oracle दृश्य कैसे छोड़ें, oracle दृश्य कैसे बदलें, पहले से बनाए गए दृश्य की क्वेरी का निर्धारण कैसे करें
बनाएं Oracle में तालिका:तालिकाएँ Oracle डेटाबेस में डेटा संग्रहण की मूल इकाई हैं। हम कवर करते हैं कि कैसे एक विदेशी कुंजी / प्राथमिक कुंजी के साथ एक टेबल बनाने के लिए ओरेकल क्रिएट टेबल कमांड का उपयोग करें
ओरेकल में अनुक्रम:ओरेकल में अनुक्रम क्या है, सभी विकल्पों का विवरण, उन्हें कैसे बनाएं, ओरेकल 12 सी अनुक्रमों की नई सुविधा , उन्हें कैसे छोड़ें और बदलें
oracle 12c में उपयोगकर्ता बनाएं :oracle 12c में एक सामान्य उपयोगकर्ता बनाने का तरीका जानें, एक सामान्य और स्थानीय उपयोगकर्ता बनाएं, सामान्य भूमिका और स्थानीय भूमिका बनाएं और उन्हें कैसे प्रबंधित करें

आशा है कि आपको पोस्ट पसंद आई होगी। कृपया प्रतिक्रिया अवश्य दें

अनुशंसित पाठ्यक्रम

यहाँ Oracle SQL के लिए अच्छा Udemy कोर्स है
Oracle-Sql-Step-by-step :इस कोर्स में बेसिक sql, जॉइन, टेबल बनाना और इसकी संरचना को संशोधित करना, व्यू, यूनियन, यूनियन -ऑल और बहुत कुछ शामिल है। . SQL स्टार्टर के लिए एक बढ़िया कोर्स और अनिवार्य कोर्स
पूर्ण Oracle SQL प्रमाणन पाठ्यक्रम :यह उन लोगों के लिए एक अच्छा कोर्स है जो SQL डेवलपर कौशल के लिए नौकरी के लिए तैयार होना चाहते हैं। एक अच्छा समझाया गया कोर्स
Oracle SQL Developer:Essentials, Tips and Tricks :Oracle Sql डेवलपर टूल का उपयोग कई डेवलपर्स द्वारा किया जा रहा है। यह कोर्स हमें प्रभावी ढंग से इसका उपयोग करने और एक उत्पादक sql डेवलपर बनने के तरीके के बारे में ट्रिक्स और सबक देता है
Oracle SQL प्रदर्शन ट्यूनिंग मास्टरक्लास 2020 :प्रदर्शन ट्यूनिंग एक महत्वपूर्ण और सर्वाधिक मांग वाला कौशल है। इसके बारे में जानने और sql प्रदर्शन ट्यूनिंग शुरू करने के लिए यह एक अच्छा कोर्स है


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle के लिए ऑटो इंक्रीमेंट

  2. इकाई फ्रेमवर्क और एकाधिक स्कीमा

  3. विंडोज 7 पर ROracle पैकेज कैसे स्थापित करें?

  4. एसक्यूएल में डेटाटाइप का आकार बदलें

  5. Oracle का उपयोग करके हाइबरनेट में अंतिम सम्मिलित पंक्ति की आईडी पुनर्प्राप्त नहीं कर सकता