Toestemming om SQL-opdrachten uit te voeren. Beheer van beveiligingssystemen

Databases (inclusief het MySQL-systeem) zijn een entiteit voor het opslaan van informatie in de vorm van tabellen. Om te voorkomen dat de databases van anderen voor absoluut iedere gebruiker op de server toegankelijk zijn, is er voor deze databases een gebruikerssysteem. De toegang tot een database zelf kan door een beheerder (of een geautoriseerde gebruiker) worden toegewezen aan een andere gebruiker, en kan volledig of enigszins beperkt zijn. Meer specifiek wordt deze mate van toegang uitgedrukt in termen van privileges (“rechten” of “permissies”).

Machtigingen voor MySQL-gebruikers

Er zijn een aantal privileges in het MySQL-databasesysteem die hieronder met een beschrijving worden vermeld. Deze laatste bevoegdheden zijn bevoegdheden op beheerdersniveau, die expliciet alleen ter referentie worden vermeld. Volledige informatie over rechten/privileges is beschikbaar in de MySQL-ontwikkelaarsdocumentatie:

CREËREN- hiermee kunt u nieuwe databases en tabellen maken

DRUPPEL- hiermee kunt u databases of tabellen verwijderen

INVOEGEN- hiermee kunt u rijen aan de tabel toevoegen.

UPDATE- hiermee kunt u de inhoud van tabelrijen wijzigen. Niet te verwarren met ALTER, waarmee u de tabelstructuur zelf kunt wijzigen (aantal rijen/kolommen, kolomtypen).

VERWIJDEREN- het tegenovergestelde van INSERT - hiermee kunt u rijen uit de tabel verwijderen.

WIJZIGEN- hiermee kunt u de structuur van tabellen wijzigen. Vereist CREATE- en INSERT-rechten.

SUBSIDIE OPTIE- hiermee kunt u specifieke rechten toewijzen specifieke gebruiker(ook afhalen). Het is mogelijk alleen die rechten weg te geven/weg te nemen die de benoemer zelf heeft.

VERGRENDEL TAFELS- vergrendelt de tabel terwijl er kunstmatige wijzigingen in worden aangebracht (beheer), zodat de gegevens erin niet op natuurlijke wijze kunnen veranderen (tijdens de workflow).

REFERENTIES- hiermee kunt u een relatie tussen tabellen creëren met behulp van een externe sleutel.

EVENEMENT- geeft het recht om taken voor de planner aan te maken/wijzigen/verwijderen

TREKKER- hiermee kunt u triggers maken/wijzigen/verwijderen (gekoppeld aan specifieke tabellen), die, bij het uitvoeren van DELETE, UPDATE of INVOEGEN aanvullende acties ondernemen.

INDEX- het privilege geeft het recht om indexen aan (uit) tabellen toe te voegen/verwijderen. De indexen zelf worden handmatig toegewezen en maken het mogelijk tijd te besparen bij het zoeken naar rijen.

MAAK TIJDELIJKE TAFELS- hiermee kunt u tijdelijke tabellen maken voor de duur van de sessie.

CREËER UITZICHT- hiermee kunt u een weergave maken in de vorm van een tabel die eigenlijk niet als één enkele tabel bestaat en alleen gegevens uit andere tabellen bevat. In deze weergave kunt u bijvoorbeeld bepaalde gegroepeerde gegevens uit drie tabellen verzamelen ( SELECT-instructie) en in feite zullen de verzamelde gegevens alleen betrekking hebben op de gegevens van deze 3 tabellen en ook een unie zijn die geen eigen tabel nodig heeft.

TOON BEELD- hiermee kunt u controleren welke query (uit welke gegevens bestaat) een bepaalde weergave heeft gemaakt die is opgegeven met CREATE VIEW

CREËER ROUTINE- hiermee kunt u een procedure maken, een reeks voorbereide SQL-opdrachten.

WIJZIG ROUTINE- hiermee kunt u een procedure wijzigen die is gemaakt met CREATE ROUTINE.

UITVOEREN- hiermee kunt u kant-en-klare procedures oproepen.

BESTAND- biedt leestoegang tot elk bestand op de server waartoe u toegang heeft MySQL-systemen en toegang om een ​​bestand te maken in mappen waarvoor MySQL schrijfrechten heeft.

MAAK TAFELRUIMTE(admin) - hiermee kunt u tabelruimten maken/wijzigen/verwijderen. Deze ruimte zelf is logisch en is niet gekoppeld aan de databasestructuur of het schema. Het geeft de locatie van databaseobjecten op fysieke media aan en wordt gebruikt om het databasesysteem te optimaliseren.

MAAK GEBRUIKER AAN(admin) - hiermee kunt u databasegebruikers aanmaken/wijzigen/hernoemen/verwijderen.

PROCES(admin) - geeft toegang tot informatie over threads (processen) die op de server worden uitgevoerd.

VOLMACHT(admin) - hiermee kunt u inloggen als een andere gebruiker. Wordt door de beheerder gebruikt om de toegangsrechten te controleren/debuggen vereiste gebruiker.

HERLADEN(admin) - staat het gebruik van de FLUSH-operator toe, die de MySQL-cache wist

REPLICATIE-CLIENT(admin) - hiermee kunt u de bewerkingen SHOW MASTER STATUS, SHOW SLAVE STATUS en SHOW BINARY LOG uitvoeren.

REPLICATIE SLAVE(admin) - dit privilege is vereist voor gebruikers van een slave-databaseserver, zodat deze server als slave verbinding kan maken met de masterserver. Zonder dit recht kunnen slaveservers geen database- en tabelupdates aanvragen bij de masterserver.

TOON DATABASES(admin) - hiermee kunt u de instructie SHOW DATABASES uitvoeren. Gebruikers die dit recht niet hebben bij het uitvoeren van deze exploitant kunnen alleen de databanken zien waarvoor zij rechten hebben.

UITSCHAKELEN(admin) - met dit privilege kunt u de SHUTDOWN-instructie uitvoeren, waardoor My SQL-server.

SUPER(admin) - een privilege dat recht geeft op veel bewerkingen:

  • Hiermee kunt u processen beëindigen die eigendom zijn van andere gebruikers
  • verander de globale systeemvariabelen
  • logboekregistratie in-/uitschakelen
  • updates maken, zelfs wanneer gevestigde rechten lees voor systeemvariabelen
  • start/stop-replicatie op slaveservers
  • enz.

ALLE(admin) - de gebruiker die dit privilege heeft gekregen, krijgt automatisch alle rechten toegewezen binnen het privilegeniveau (mogelijke privileges in principe, afhankelijk van de context van het verlenen van privileges). Alleen het privilege is niet toegewezen SUBSIDIE OPTIE V in dit geval.

Het toewijzen van rechten aan MySQL-gebruikers bij het hosten van controlepanelen

  • DirectAdmin
  • cPanel
  • ISPmanager
  • Webuzo

DirectAdmin

Op startpagina DirectAdmin onder het gebruikersniveau in het menu Uw account ga naar de sectie MySQL-beheer:

Hier kunnen we een nieuwe gebruiker voor deze database aanmaken door naar te gaan Nieuwe databasegebruiker maken en koppel de bestaande eraan. Opgemerkt moet worden dat er geen speciale interface voor gebruikersbeheer is. Het is alleen toegankelijk via een database. Volg de link om de gebruikersrechten te geven privileges wijzigen:

Selecteer op de rechtenpagina de rechten die we aan de gebruiker willen verlenen voor een specifieke database en sla deze op. De statusbalk herinnert u eraan wat en aan wie rechten zijn toegewezen:

Hierna wordt u naar de bevestigingspagina voor opslaan geleid. Dat is alles, de rechten zijn uitgegeven.

cPanel

Op de hoofdpagina van cPanel moeten we de sectie vinden Databases ga erheen Basissen MySQL-gegevens :

Alle manipulaties met MySQL-databases, databasegebruikers en hun rechten worden in dit menu uitgevoerd.

Als we geen database of gebruiker hebben, maken we deze aan in de juiste secties van de pagina:

Hoofdstuk Huidige databases zal worden bijgewerkt:

Maak een gebruiker aan:

Hoofdstuk Huidige gebruikers zal worden bijgewerkt:

Om rechten aan een specifieke gebruiker voor een specifieke database toe te wijzen, moeten we de sectie op de pagina vinden Gebruiker toevoegen aan database en voeg de vereiste gebruiker toe aan de vereiste database:

Nadat een gebruiker aan de database is toegevoegd, wordt een dialoogvenster geopend waarin rechten kunnen worden toegewezen:

De knop Alle rechten is gelijk aan het ALL-privilege dat aan het begin van de handleiding wordt beschreven en wijst alle mogelijke rechten toe aan een gebruiker in de context van het eigendom van de gebruiker. bepaalde groep gebruikers op het niveau van de gehele MySQL-server.

Na bevestiging wijzigingen aangebracht er zal een omleiding zijn naar een pagina die bevestigt dat de opgegeven rechten zowel op de databasebeheerpagina als op de databasebeheerpagina zijn verleend MySQL-gebruikers de sectie wordt opnieuw bijgewerkt Huidige databases:

Klaar. De gebruiker wordt toegewezen aan de database.

ISPmanager Lite 5

Wanneer u als gebruiker inlogt bij ISPmanager, gaat u naar Hulpmiddelen -> Databases uit het linkermenu.

Vervolgens moet u in de databasebeheerinterface die wordt geopend de gewenste database selecteren en naar het menu gaan Gebruikers om naar de dte gaan. Als er geen databases zijn, kunt u een nieuwe aanmaken door op de knop te klikken Toevoegen.

Houd er rekening mee dat u bij het aanmaken van een nieuwe database onmiddellijk een nieuwe gebruiker kunt aanmaken die aan deze database wordt toegewezen. Of u selecteert een bestaande gebruiker, die ook automatisch aan deze database wordt toegewezen.

In de databasebeheerinterface krijgen we een lijst te zien met alle gebruikers van deze database lopende rekening ISPmanager. Om rechten te bewerken, moet u selecteren specifieke gebruiker, waaraan we rechten toewijzen, en ga naar het menu Wijziging

Hierna zien we alle rechten die aan deze gebruiker kunnen worden toegewezen:

Bij het aanmaken van een gebruiker en database worden standaard alle rechten toegewezen. We veranderen degene die we nodig hebben en bewaren de resultaten. Hierna keert u terug naar de databasegebruikersbeheerpagina.

Webuzo

Webuzo bestaat uit 2 panelen: beheerder en gebruiker. Laten we naar gaan aangepast paneel en selecteer op de hoofdpagina Beheer databases

Op de pagina die wordt geopend, kunnen we:

  • zie de lijst bestaande bases gegevens [ Database(s)];
  • creëren nieuwe basis gegevens [ Database maken];
  • bekijk een lijst met bestaande databasegebruikers [ Databasegebruiker(s)];
  • maak een databasegebruiker aan en wijs deze toe aan een specifieke database [ Gebruiker toevoegen aan database]

Als de doeldatabase nog niet bestaat, ga dan naar Database maken en maak een nieuwe database:

Als de doeldatabase echter al bestaat, moeten we bij databasebeheer naar Gebruiker toevoegen aan database en maak een nieuwe databasegebruiker aan of specificeer een bestaande om deze aan de database te binden:

Wanneer u een gebruiker aan de database toevoegt, wordt een nieuw venster geopend waarin u wordt gevraagd rechten aan die gebruiker toe te kennen. Selecteer de rechten die we nodig hebben en bevestig de wijzigingen met de knop Wijzigingen indienen.

Als de rechten succesvol zijn gewijzigd, verschijnt de volgende melding in het huidige venster: Databaserechten bijgewerkt. De taak is voltooid.

Annotatie: Deze lezing bevat materiaal over databasetoegangscontrole SQL-gegevens Server, inclusief het beheren van databasegebruikers, het inschakelen van de gastgebruiker, het maken van databaserollen, het verlenen van databasemachtigingen en het toevoegen van een databasegebruiker

Het bieden van toegang tot een instance van SQL Server alleen zal niet voldoende zijn voor een applicatie die toegang tot gegevens nodig heeft. Nadat u toegang heeft verleend tot een exemplaar van SQL Server, moet u toegang verlenen tot specifieke databases. Toegang tot databases wordt verleend door databasegebruikers toe te voegen en logins toe te wijzen aan databasegebruikers. Elke login wordt gekoppeld aan een databasegebruiker voor elke database waartoe die login toegang nodig heeft. Elke databasegebruiker wordt aan slechts één login toegewezen, met uitzondering van de dbo-databasegebruiker.

Opmerking. IN eerdere versies SQL-server U kunt de opgeslagen systeemprocedure sp_addalias gebruiken om meerdere aanmeldingen aan één databasegebruiker toe te wijzen. Dit kan ook worden gedaan in SQL Server 2005. Deze functie wordt echter niet aanbevolen omdat deze verouderd is en mogelijk wordt verwijderd in toekomstige versies van het programma.

Het verlenen van toegang tot databases

Databasegebruikers zijn deelnemers op databaseniveau. Alle logins behalve serverrol sysadmin moet worden toegewezen aan gebruikers, die op hun beurt worden toegewezen aan de database waartoe ze toegang nodig hebben. Rol leden systeembeheerder toegewezen aan gebruikers-dbo in alle serverdatabases.

Een databasegebruiker toevoegen

U kunt een databasegebruiker toevoegen met behulp van de instructie CREATE USER. In het volgende Transact-SQL-codevoorbeeld worden de login Peter en de bijbehorende gebruiker gemaakt in de Adventure Works-database:

  • Maak een inlognaam aan Peter

    AANMELDEN Peter MET WACHTWOORD = "Tyu87IOR0";

  • GEBRUIK AdventureWorks; GAAN

  • Voeg een databasegebruiker toe, Peter, die is toegewezen aan de Peter-login in de AdventureWorks-database.

    MAAK GEBRUIKER AAN Peter VOOR INLOGGEN Peter;

Databasegebruikers beheren

Met de volgende verklaring kunt u controleren of de huidige login toegang heeft tot de database:

SELECTEER HAS_DBACCESS("AdventureWorks");

Om informatie over databasegebruikers te verkrijgen, kunt u de catalogusweergave sys.database_principals gebruiken.

Als u de toegang van een gebruiker tot de database tijdelijk wilt uitschakelen, kunt u de CONNECT-machtiging voor die gebruiker intrekken. In het volgende voorbeeld wordt de CONNECT-machtiging voor de gebruiker Peter ingetrokken:

  • Wijzig de verbindingscontext naar de AdventureWorks-database.

    GEBRUIK AdventureWorks; GAAN

  • Trek de verbindingstoestemming voor Peter in AdventureWorks in.

    VERBINDEN MET Peter INTREKKEN;

U kunt een gebruiker uit een database verwijderen met behulp van de DROP USER-instructie.

Waarschuwing. SQL Server 2005 staat het verwijderen van een gebruiker die eigenaar is van een databaseschema niet toe. Circuits worden later in deze lezing besproken.

Beheer van gebruikers die het contact zijn kwijtgeraakt met hun logins

Zwevende aanmeldingen zijn databasegebruikers die niet zijn gekoppeld aan een aanmelding in het huidige exemplaar van SQL Server. In SQL Server 2005 kan het voorkomen dat een gebruiker niet meer aan een aanmelding is gekoppeld als de daaraan gekoppelde aanmelding wordt verwijderd. Om informatie over dergelijke gebruikers te krijgen, kunt u de volgende code uitvoeren:

  • Wijzig de verbindingscontext naar de AdventureWorks-database.

    GEBRUIK AdventureWorks; GAAN

  • Genereer een rapport over alle databasegebruikers die hun inlogverbinding hebben verloren

    UITVOEREN sp_change_users_login @Action="Rapport";

Met SQL Server 2005 kunt u een gebruiker maken die niet aan een aanmelding is gekoppeld door de clausule WITHOUT LOGIN te gebruiken. Gebruikers die zijn aangemaakt met behulp van de WITHOUT LOGIN-clausule worden niet beschouwd als verweesde login-gebruikers. Deze functie kan erg handig zijn in een situatie waarin u de uitvoeringscontext van een module moet wijzigen. De uitvoeringscontext wordt later in deze lezing besproken. In het volgende voorbeeld wordt een gebruiker gemaakt zonder bijbehorende aanmelding.

  • Wijzig de verbindingscontext naar de AdventureWorks-database.

    GEBRUIK AdventureWorks; GAAN

  • Maak een databasegebruiker Paul aan in de AdventureWorks-database
  • zonder de inlognaam ermee te matchen dit exemplaar SQL Server-exemplaar

    GEBRUIKER AANMAKEN Paul ZONDER INLOGGEN;

Schakel de gastgebruiker in

Wanneer een login zonder toegewezen gebruiker probeert verbinding te maken met de database, probeert SQL Server verbinding te maken met behulp van de gastgebruiker. De gastgebruiker wordt standaard gemaakt zonder machtigingen te verlenen. U kunt de gastgebruiker inschakelen door hem CONNECT-toestemming te verlenen, zoals hieronder weergegeven.

  • Wijzig de verbindingscontext naar de AdventureWorks-database.

    GEBRUIK AdventureWorks; GAAN

  • Wij verlenen de gastgebruiker toegang tot de AdventureWorks-database.

    VERLEEN VERBINDING MET Gast;

    Overweeg zorgvuldig of u de gastgebruiker wilt inschakelen, omdat uw databaseomgeving hierdoor aan extra risico wordt blootgesteld.

Databasemachtigingen verlenen

Nadat u databasegebruikers hebt aangemaakt, moet u de machtigingen voor die gebruikers beheren. Dit kan worden gedaan door gebruikers toe te voegen aan databaserollen of door gedetailleerde machtigingen aan de gebruikers zelf te verlenen.

Databaserollen maken

Databaserollen zijn niveauleden databases. Rollen databases kunnen worden gebruikt om machtigingen toe te wijzen database groep gebruikers. In SQL Server 2005 wordt standaard een set databaserollen gemaakt. Deze standaardrollen staan ​​in de tabel. 3.1.

Tabel 3.1.
Standaarddatabaserollen Rol van de databank
"Beschrijving db_accessadmin
Kan de toegang tot de database controleren db_backupoperator Kan presteren back-up
databases db_datareader
Kan gegevens uit alle gebruikerstabellen lezen db_datawriter
Kan gegevens in de tabellen van alle gebruikers toevoegen, verwijderen en bijwerken db_ddladmin
Kan alle DDL-opdrachten in de database uitvoeren db_denydatareader
Kan geen gegevens in gebruikerstabellen lezen db_denydatawriter
Kan geen gegevens in gebruikerstabellen toevoegen, verwijderen of bijwerken db_eigenaar
Kan alle configuratie- en onderhoudsactiviteiten uitvoeren db_securityadmin
Kan het lidmaatschap van de databaserol wijzigen en machtigingen beheren publiek

De bijzondere rol van de database. Alle gebruikers behoren tot de publieke rol. Gebruikers uit de openbare groep kunnen niet worden verwijderd.

  • Wijzig de verbindingscontext naar de AdventureWorks-database.

    GEBRUIK AdventureWorks; GAAN

  • U kunt databaserollen toevoegen als u gebruikers wilt groeperen op basis van specifieke machtigingsvereisten. In het volgende codevoorbeeld wordt een databaserol met de naam Auditors gemaakt en wordt de gebruiker Peter aan deze nieuwe rol toegevoegd.

    Maak de rol Auditors in de AdventureWorks-database.

  • CREËER ROL Auditors; GAAN

    Voeg de gebruiker Peter toe aan de rol Auditors

UITVOEREN sp_addrolemember "Auditors", "Peter";

Databaserollen beheren Na het invullen van het verzoek systeem functie

  • Wijzig de verbindingscontext naar de AdventureWorks-database.

    GEBRUIK AdventureWorks; GAAN

  • IS_MEMBER, kunt u controleren of de huidige gebruiker tot een databaserol behoort. In het volgende voorbeeld controleren we of de huidige gebruiker tot de databaserol db_owner behoort.

    Controleren of de huidige gebruiker tot de rol db_owner behoort Er zijn nogal wat soortgelijke artikelen, maar ik heb dit artikel vooral voor mezelf geschreven, waarbij ik me concentreerde op de aantekeningen die het beschrijven mogelijke problemen
    . Ik hoop dat het artikel nuttig zal zijn voor anderen.
    1. Installeer het 1C-platform

    Open na de installatie het beheerpaneel voor 1C enterprise-servers en zie dat dit leeg is.
    U moet een server maken: Open console root->Central 1C: Enterprise 8.2-servers. Klik erop klik met de rechtermuisknop muis en selecteer nieuw. Maak een keuze uit het vervolgkeuzemenu Centrale server 1C Onderneming 8.2. Voor ons gaat een venster met 4 velden open:
    Protocol- protocol waarmee gegevens worden verzonden
    Naam- de naam van de computer op het netwerk waarop de server zich bevindt
    IP-poort- poort waarop de server toegankelijk is
    Beschrijving-beschrijving. niet nodig.

    Opmerking:
    Als het 1C-platform op een computer is geïnstalleerd en de computer vervolgens is hernoemd, kunt u deze niet bereiken, omdat het 1C-platform een ​​zeer slim platform is en tijdens de installatie de computernaam in bepaalde bestanden opslaat, maar dan: wanneer de computernaam verandert, zal het platform niet langer herschrijven Deze bestanden zijn nodig voor de werking van de RAGENT 1C-service (deze zijn te vinden in actieve services, via het beheerpaneel Windows-server). Dit alles wijst erop dat u, om deze bestanden te hernoemen, de RAGENT-service moet stoppen. De bestanden zelf bevinden zich op de volgende plaatsen:
    C:\Program Files (x86)\1cv82\srvinfo\srvribrg
    C:\Program Files (x86)\1cv82\srvinfo\reg_1541\1CV8Reg
    We openen deze bestanden met Kladblok en veranderen de vroegere naam van de machine handmatig in de huidige. Bewaar en start RAGENT.

    Laten we terugkeren naar de instellingen:
    Nadat het venster met de velden is ingevuld, klikt u op OK en als alles correct is gedaan, hebben we een server met de naam van de machine waarop deze zich bevindt.

    Dus. De server draait en nu moeten we een database op de MYSQL-server maken en deze verbinden met de 1C-server. Er zijn verschillende manieren - hier zal ik de eenvoudigste beschrijven:
    Open op de enterprise 1C-server onze nieuw gemaakte server door op de + naast de servernaam en op het item "INFORMATIEBASES" te klikken, klik met de rechtermuisknop en selecteer Nieuw->Informatiebasis
    Er wordt een venster voor ons geopend met de volgende velden:

    Naam-de naam van onze database op de 1C-server (in de regel schrijven veel mensen het hetzelfde als in het databaseveld, om niet in de war te raken)
    Beschrijving-beschrijving
    Veilige verbinding-standaard uitgeschakeld. je kunt het inschakelen, maar dan neemt de belasting van de server toe
    Databaseserver-als de server op dezelfde server staat, geef dan (lokaal) precies zo aan tussen haakjes, zo niet op deze server, geef dan het server-ip aan
    DBMS-type-Selecteer MS SQL-type
    Database-naam van de database op de MS SQL-server. Als er geen database is, kunt u een van de selectievakjes aanvinken en deze wordt aangemaakt
    Databaseservergebruiker-Specificeer de gebruiker die u tijdens de installatie hebt aangemaakt, of maak deze aan individuele gebruiker in MS SQL, geef het rechten en registreer het hier.
    Gebruikerswachtwoord databaseserver-wachtwoord
    Sta de uitgifte van licenties door de 1C Enterprise-server toe-kies ja
    Land-Kies een land
    Datumverschuiving-instellen op 0
    Selectievakje “Creëer een database bij afwezigheid”-hetzelfde selectievakje voor het maken van een database als deze niet bestaat
    Selectievakje “Stel het blokkeren van geplande taken in”- vink het vakje niet aan

    Klik op OK en we zien dat de servers zijn geconfigureerd en op het tabblad “Informatiebases” staan informatiebasis onder de naam die we haar gaven.

    Om Back-up in te stellen, moeten we openen MicrosoftSQL BEHEERSTUDIO.
    Voer uw login in en maak verbinding met de server.
    Voor ons ligt de beheerdersconsole. IN Objectverkenner open een tabblad Beheer en daarin zien wij Onderhoudsplannen. Hier zullen we de BackUP maken die we nodig hebben. Zoals gewoonlijk, klik met de rechtermuisknop op Onderhoudsplannen -> nieuw onderhoudsplan. Het tabblad Subplan verschijnt in het hoofdvenster, en onder Objectverkenner er verschijnt een ander venster Gereedschapskist waarin is genest Onderhoudsplannen Taken. Daarin zullen we kiezen Back-up maken van databasetaak door er 2 keer op te klikken. Het wordt overgebracht naar het hoofdvenster. We klikken er 2 keer op en er verschijnt een venster voor ons, opnieuw met velden waarin we kunnen kiezen welke Back Up we willen doen, welke BackUp-basis we moeten gebruiken en waar we deze willen opslaan. Nadat u de instellingen hebt voltooid, klikt u op Ok.

    Opmerking:
    Back-up opslaan op een willekeurige netwerkmap(je zult het pad overigens handmatig moeten registreren, omdat het mapselectievenster alleen lokale bronnen ziet) de toegangsrechten bijhouden, en tegelijkertijd bijhouden welke authenticatie je hebt ingeschakeld MySQL-server omdat als de authenticatie niet is ingesteld voor Windows-accounts, maar voor de interne DBMS-gebruiker, en als u tegelijkertijd een AD-server hebt draaien, dan zal BackUp een foutmelding geven wanneer u probeert uit te voeren, omdat het dit namens de interne DBMS-gebruiker en AD laten het nergens door, behalve lokale computer.

    Nadat u het pad, de basis en het BackUp-type hebt geconfigureerd, moet u het schema configureren. Om dit te doen, staat er in het hoofdvenster boven de taak die u hebt gemaakt een bord Subplan. Aan het einde van het bord (aan de rechterkant) staat een kalenderpictogram. Door erop te klikken komt u bij de roosterinstellingen. Door de selectievakjes van de dagen aan te vinken en de tijd in te stellen, stelt u een schema op. Door te dubbelklikken op het opgeroepen veld Subplan u kunt de naam van de taak wijzigen. Nadat u alles hebt geconfigureerd, gaat u naar Bestand-> Bewaar alles. Na het opslaan verschijnt er in Onderhoudsplannen een Taak met jouw naam die je aan BackUp hebt gegeven.

    Controleer na het voltooien van de installatie de werking. Om dit te doen, klikt u met de rechtermuisknop op de gemaakte taak en voert u Exicute uit.

    Opmerking:
    Als Exicute een foutmelding geeft, lees dan de foutmeldingen die Studio u geeft, en controleer allereerst of u actief bent SQL-serveragent. Hij is het die de taken uitvoert en de Exicute-functie wendt zich tot hem om de taken te voltooien. Als het niet actief is, mislukt de uitvoeringspoging. Om te zien of de agent in Studio in Object Explorer wel of niet werkt, gaat u naar het tabblad SQL Server-agent. Als het opsommingsteken een rode cirkel met een kruis heeft, betekent dit dat de agent is tegengehouden. U kunt het starten door er met de rechtermuisknop op te klikken en te selecteren contextmenu START-optie.

    Toegangsrechten (machtigingen) om met geodatabases te werken worden geconfigureerd door vooraf geconfigureerde rollen toe te wijzen aan gebruikers en groepen. Het account of de groep is in dit geval het Windows-account dat de gebruiker identificeert, en de rollen bepalen de machtigingen voor de acties die de gebruiker kan uitvoeren.

    De vooraf geconfigureerde rollen en mogelijke toegangsrechten worden hieronder vermeld:

    • Geen: er is geen toegang verleend tot de geodatabase of geodatabase-gegevensset.
    • Alleen lezen – Gebruiker kan gegevens bekijken en selecteren.
    • Lezen/schrijven: de gebruiker kan nieuwe datasets in een geodatabase lezen, schrijven en maken, of kan bestaande datasets lezen en schrijven.
    • Beheerder: een gebruiker kan administratieve taken uitvoeren op een specifieke geodatabase.
    • Serverbeheerder – De gebruiker die de databaseserver beheert.

    Machtigingen zijn cumulatief. Als u een beheerder bent op databaseserverniveau, bent u ook een geodatabasebeheerder. Als u een geodatabasebeheerder bent, heeft u automatisch lees-/schrijfrechten voor alle datasets in die geodatabase.

    Hieronder wordt elk niveau beschreven waarop machtigingen kunnen worden toegewezen.

    Toegangsrechten op databaseserverniveau

    Machtigingen op databaseserverniveau kunnen alleen worden geconfigureerd voor de serverbeheerder; de gebruiker is een serverbeheerder of niet.

    Tijdens het post-installatieproces waarbij het exemplaar van SQL Server Express wordt geconfigureerd om geodatabases op te slaan, wordt een gebruikersaccount toegevoegd aan de databaseserver. Windows-invoer. Op dit punt wordt aan het account de rol van serverbeheerder toegewezen. De machtigingen voor de databaseserver zijn vervolgens toegankelijk via het contextmenu van de databaseserver in ArcGIS for Desktop.

    De serverbeheerder kan de volgende taken uitvoeren:

    • Databaseservergebruikers toevoegen en verwijderen.
    • Beheer geodatabases en beveiligingsinstellingen.
    • Geodatabases maken en verwijderen.
    • Geodatabases koppelen en losmaken.
    • Maak een back-up van geodatabases en herstel deze.
    • Update geodatabases.
    • Geodatabases comprimeren (Compress).
    • Update statistieken en indexen in de geodatabase.
    • Verklein de geodatabase.
    • Start, stop en pauzeer de databaseserver.

    Normaal gesproken heeft u één databaseserverbeheerder.

    Hieronder ziet u een voorbeeld van het dialoogvenster Machtigingen voor databaseservers. Aan het ROCKETJAY\har-account is de rol Serverbeheerder toegewezen.

    Machtigingen op geodatabaseniveau

    Machtigingen op geodatabaseniveau worden toegewezen via het geodatabasecontextmenu wanneer u toegang krijgt via de map Databaseservers in de catalogusstructuur.

    Toegangsrechten op dit niveau worden in eerste instantie verleend aan de serverbeheerder en worden beheerd op basis van rollen. Mogelijke rollen die aan een gebruiker kunnen worden toegewezen:

    • Alleen-lezen – Met deze toestemming kan de gebruiker gegevens uit elke tabel in de geodatabase selecteren.
    • Lezen/schrijven: gebruikers aan wie de machtiging Lezen/schrijven is toegewezen, kunnen alle bestaande gegevens in een geodatabase selecteren en bewerken en kunnen nieuwe geodatabase-elementen maken, zoals functieklassen. Als aan een gebruiker de machtiging Lezen/Schrijven is verleend op geodatabaseniveau, kunt u de machtigingen niet wijzigen op gegevenssetniveau. Deze worden automatisch ingesteld op Lezen/Schrijven.
    • Beheerder: Gebruikers aan wie de rol Beheerder is toegewezen, zijn alleen beheerders van die geodatabase. Dit betekent dat de gebruiker lees-/schrijfrechten heeft op alle datasets en de geodatabase, en deze rechten kunnen niet worden ingetrokken op datasetniveau. U kunt bijvoorbeeld het tabblad Machtigingen niet op gegevenssetniveau openen en Alleen-lezen-machtigingen selecteren voor de klassenset voor die gebruiker.

      Naast lees-/schrijftoegang tot datasets kunnen geodatabasebeheerders administratieve bewerkingen uitvoeren op die geodatabases, inclusief het maken ervan reservekopieën, het comprimeren van geodatabases, het bijwerken van geodatabases en het beheren van gebruikersrechten voor geodatabases. (Er moeten gebruikers aanwezig zijn op de databaseserver; geodatabasebeheerders kunnen geen nieuwe gebruikers toevoegen aan de databaseserver.)

    • Een andere optie voor de gebruikersrol is Geen. In dit geval heeft de gebruiker geen toegangsrechten tot gegevens op geodatabaseniveau; de gebruiker kan echter wel de machtiging Alleen-lezen of Lezen/Schrijven krijgen voor specifieke gegevenssets, zoals beschreven in de sectie Machtigingen voor gegevenssets. Geen is het standaardmachtigingsniveau voor gebruikers die aan de databaseserver worden toegevoegd.

    In het volgende voorbeeld van het dialoogvenster Geodatabase-machtigingen is het account ROCKETAY\pllama toegevoegd aan de rol Lezen/Schrijven voor de historische geodatabase.

    Om te ontvangen aanvullende informatie Zie Databaseserverbeheerders voor informatie over server- en geodatabasebeheerders.

    Machtigingen op gegevenssetniveau

    Gegevenssetmachtigingen zijn beschikbaar via de opdracht Toegangsrechten (privileges) in het contextmenu van de gegevensset, waarmee het dialoogvenster Machtigingen wordt geopend. Mogelijke machtigingen voor gegevenssets die beschikbaar zijn via het dialoogvenster Machtigingen op gegevenssetniveau zijn Alleen-lezen, Lezen/schrijven en Geen.

    Een gebruiker heeft mogelijk geen machtigingen op geodatabaseniveau (hun machtigingen worden ingesteld op Geen), maar ze kunnen wel lees-/schrijf- of alleen-lezen machtigingen krijgen voor specifieke gegevenssets in de geodatabase. U kunt analistengebruikers bijvoorbeeld alleen-lezen toegang geven tot gegevens in een geodatabase, maar hen schrijf-/leestoegang geven tot één featureklasse in de geodatabase.

    Wanneer een gebruiker een set gegevens maakt, zoals een tabel, wordt die gebruiker de eigenaar ervan en wordt de tabel beschouwd als onderdeel van het schema van de gebruiker. Gebruikersrechten voor datasets in een geodatabase kunnen alleen worden geconfigureerd door de eigenaar van de dataset.

    Als de serverbeheerder datasets aanmaakt, zijn deze eigendom van de dbo-gebruiker en worden ze opgeslagen in het dbo-schema. Een serverbeheerder kan dus machtigingen verlenen aan elke set klassen in het dbo-schema, maar alleen aan objecten in het dbo-schema. Met andere woorden: de serverbeheerder kan geen toestemming verlenen voor gegevens die eigendom zijn van niet-beheerders.

    Hier volgt een voorbeeld van het dialoogvenster Machtigingen voor de gegevensset van de brandweerkazernes:


    Zie voor meer informatie over het proces van het toewijzen van rollen aan gebruikers en het verlenen en intrekken van machtigingen

    Hallo allemaal! Nu zullen we naar voorbeelden kijken gebruikers aanmaken en verwijderen Microsoft DBMS SQL-server zowel met behulp van Transact-SQL-instructies als met behulp van Milieubeheer Studio.

    Het proces voor het aanmaken van gebruikers in MS SQL Server bestaat uit twee fasen:

    1. Een SQL Server-aanmelding maken. Deze naam is vereist zodat de gebruiker verbinding kan maken met het SQL Server-exemplaar;
    2. Een databasegebruiker aanmaken. In dit geval verlenen we de gebruikers al machtigingen voor databaseobjecten.

    Opmerking! Mijn SQL-server is bijvoorbeeld Microsoft SQL Server 2012 Express. Op deze SQL-server is een testdatabase Test aangemaakt.

    Een login aanmaken op MS SQL Server

    Voordat u begint met het aanmaken van een login voor de SQL-server, moet u beslissen over de authenticatiemethode. Er zijn twee opties:

    1. Inspectie Windows-authenticiteit is wanneer een inlognaam de gebruiker kan identificeren als een Windows-account of als lid Windows-groepen (inclusief domeinnamen rekeningen, en groepen);
    2. SQL Server-verificatie. In dit geval bestaat de login alleen in SQL Server.

    Laten we een paar voorbeelden bekijken van het maken van een login op een SQL-server. We doen dit eerst met behulp van SQL Server Management Studio en vervolgens met Transact-SQL.

    Een login aanmaken met behulp van SQL Server Management Studio

    Laten we lanceren Managementstudio, dan vinden we in de objectbrowser het item “ Veiligheid", open het met een plusteken, klik met de rechtermuisknop op het item " Inloggen" en selecteer het item " Inloggen aanmaken».

    Laten we vervolgens als voorbeeld een testaanmelding maken met SQL Server-authenticatie. Wij geven een inlognaam op, maken een wachtwoord aan en bevestigen deze. We kunnen ook verschillende opties controleren, zoals het gebruik van wachtwoordbeleid, standaarddatabase, standaardtaal en andere.

    Klik dan op de knop “ OK", waarna de login TestLogin wordt aangemaakt. Standaard voornaam login wordt ingeschakeld en heeft de rechten van de "openbare" serverrol.

    Een aanmelding maken met Transact-SQL

    Om een ​​login in Transact-SQL aan te maken, moet u de query-editor in Management Studio openen en uitvoeren de volgende instructies (het doet precies hetzelfde als onze acties hierboven grafische interface Managementstudio).

    AANMELDEN MET WACHTWOORD=N"Pa$$w0rd", DEFAULT_DATABASE=, DEFAULT_LANGUAGE=[Russisch], CHECK_EXPIRATION=UIT, CHECK_POLICY=ON GO

    Met andere woorden, om een ​​login op de SQL-server aan te maken, wordt de instructie gebruikt AANMELDEN.

    Een SQL Server-aanmelding maken met Windows-verificatie

    Ga als volgt te werk om een ​​Windows-geauthenticeerde aanmelding te maken: SQL-instructie:

    AANMELDEN VANAF WINDOWS MET DEFAULT_DATABASE=, DEFAULT_LANGUAGE=[Russisch];

    • GAAN
    • Computernaam\NaamGebruiker is de computernaam\Gebruikersnaam;
    • VANUIT WINDOWS - geeft aan dat Windows-authenticatie zal worden gebruikt;
    • WITH DEFAULT_DATABASE= – standaarddatabase;

    DEFAULT_LANGUAGE=[Russisch] – standaardtaal.

    Inloggen in MS SQL Server in- en uitschakelen

    Indien nodig kunt u de aanmelding tijdelijk uitschakelen om te voorkomen dat de gebruiker toegang krijgt tot de server.

    Schakel ALTER LOGIN uit TestLogin UITSCHAKELEN;

    --ALTER LOGIN inschakelen TestLogin INSCHAKELEN;

    Een databasegebruiker aanmaken in MS SQL Server Zodra de login is aangemaakt, kunt u doorgaan met het aanmaken van een databasegebruiker, d.w.z. het toewijzen van een gebruiker aan een login. Laten we ook op twee manieren een TestLogin-gebruiker aanmaken, d.w.z. Met

    gebruik maken van Beheer

    Studio- en T-SQL-taal. Veiligheid Een databasegebruiker aanmaken met Management Studio Open Management Studio, zoek de gewenste database in de objectbrowser en open deze met het plusteken. Gebruik dan ook het plusteken om het item “" en klik op de map " Gebruikers».

    "Klik met de rechtermuisknop en selecteer" Maak een gebruiker aan), en geef ook het standaardschema aan ( indien niet gespecificeerd, wordt het dbo-schema toegewezen).

    Laten we ook meteen de rol opmerken die de database zal spelen deze gebruiker. Op de pagina " Lidmaatschap"Ik heb het vakje naast de rol aangevinkt databases, d.w.z. de gebruiker heeft rechten om gegevens uit gebruikerstabellen te lezen. Klik op " OK».

    Een databasegebruiker maken met Transact-SQL

    Volgende T-SQL-instructie maakt een databasegebruiker aan ( standaardschema dbo) en wijst deze de rol db_datareader toe, d.w.z. doet hetzelfde als wat we iets eerder deden in de grafische interface van Management Studio.

    GEBRUIK Test GA GEBRUIKER AANMAKEN VOOR INLOGGEN MET DEFAULT_SCHEMA= GA WIJZIG ROL LID TOEVOEGEN;

    GAAN MAAK GEBRUIKER AAN De instructies dus

    gebruikt om een ​​databasegebruiker aan te maken.

    Databasegebruiker verwijderen en inloggen in MS SQL Server Om een ​​databasegebruiker te verwijderen kunt u schrijven eenvoudige SQL

    instructies bijvoorbeeld

    DROP GEBRUIKER Testinloggen; Of gebruik de grafische tool Management Studio, b.v. in de Objectbrowser, in de benodigde databank gegevens selecteren " Beveiliging -> Gebruikers " en klik met de rechtermuisknop op de gebruiker die u wilt verwijderen en selecteer "».

    Opmerking! Verwijderen

    Gebruikers die beveiligbare objecten bezitten, kunnen niet uit de database worden verwijderd. U kunt ook de grafische tool van Management Studio gebruiken ( die. “Beveiliging -> Logins” klik met de rechtermuisknop op de naam en klik vervolgens op “Verwijderen”

    ) en Transact-SQL-instructie, d.w.z.

    Opmerking! DROP LOGIN TestLogin; De huidige login kan niet worden verwijderd, net zomin als een login die eigenaar is van een beveiligbaar object of taak op serverniveau. SQL-agent Server. Bovendien kan de login niet worden verwijderd als de op dit moment

    de gebruiker is verbonden met het systeem. Het is mogelijk om een ​​login te verwijderen zonder de bijbehorende databasegebruiker te verwijderen, maar dit zal resulteren in gebruikers die niet langer aan hun accounts zijn gekoppeld.