Notions de base des utilisateurs et des schémas dans Oracle 12c

Utilisateurs non seulement les données d'accès à des bases de données Oracle 12c, mais ils possèdent les objets qui contiennent les données. L'ensemble des objets appartenant à un utilisateur est son schéma. Pas tous les utilisateurs possèdent des objets, donc les schémas peuvent être vides.

Les autres utilisateurs peuvent accéder ou exécuter des objets au sein de la structure d'un utilisateur après que le propriétaire de schéma accorde des privilèges. Il est pratique courante d'avoir un utilisateur possède tous les objets d'une application (tables, index, vues, etc.) et ensuite donner accès à ces objets à tous les utilisateurs de l'application au sein de la base de données. Cela se fait par l'intermédiaire de subventions de base de données, les rôles et les synonymes.

Par exemple, supposons que vous avez l'application ACME. Vous souhaitez créer un utilisateur appelé ACME_OWN et de créer tous les objets que ACME_OWN. Ensuite, vous souhaitez créer un rôle de base de données appelée ACME_USER et Grant SELECT, UPDATE, exécutez pour les objets dans le schéma de ACME_OWN à ce rôle.

Utilisateurs de l'application seraient accordés le rôle de ACME_USER afin qu'ils puissent accéder aux objets de la ACME_OWN. De cette façon, un utilisateur possède les objets, mais les utilisateurs actuels de bases de données ou d'applications d'accéder aux données. Cette séparation améliore à la fois la sécurité et la gérabilité.

Les utilisateurs se répartissent en deux catégories:

  • Les propriétaires d'applications dont les schémas contiennent plusieurs objets

  • Utilisateurs de l'application avec peu ou pas d'objets

La syntaxe pour la création de chaque utilisateur est le même, mais les subventions et les privilèges de chaque sont ce qui séparent les deux catégories.

Voici la syntaxe pour la création d'un utilisateur:

CRÉER UN UTILISATEUR IDENTIFIÉ PAR “” TABLESPACE TEMPORAIRE DEFAULT TABLESPACE -

Pour le nom d'utilisateur, utilisez quelque chose descriptive (comme Base de données Titre_OWN) Pour le propriétaire des objets d'application. Si un utilisateur Web de connexion commun va accéder à l'application, un nom annexé avec _WEB est approprié. Utilisateurs de l'application normale devrait être descriptif, tel que le prénom, initialisation est un exemple VICKYB.

Le mot de passe de l'utilisateur doit avoir les caractéristiques suivantes:

  • Soyez plus de huit caractères

  • Inclure chiffres et caractères spéciaux

  • Ne pas être basée sur les mots du dictionnaire

  • Utilisez des caractères majuscules et minuscules




Placer le mot de passe dans des guillemets doubles (“ ”) permet des caractères spéciaux sans perturber la syntaxe Structured Query Language (SQL).

Deux tablespaces doivent être identifiés lors de la création d'un utilisateur: temporaire et par défaut:

  • La table temporaire est où des segments temporaires sont créés. TEMP est la norme.

  • La table par défaut est où les objets d'espace de table (comme les tables et les index) sont créés si vous omettez la clause de stockage TABLESPACE cours de l'objet instruction CREATE. Idéalement, chaque déclaration de la table ou de la création d'index répertorie un espace de table. Si un espace de table est absent, ces objets vont à l'espace logique défini par défaut. Généralement, les Utilisateurs tablespace est définie par défaut.

Un utilisateur a besoin des privilèges du système pour être en mesure de se connecter à la base de données et créer des objets. Accorder le rôle privilège CREATE SESSION ou CONNECT permet à un utilisateur de se connecter à la base de données. Donner un utilisateur le rôle RESSOURCE permet à l'utilisateur de créer des objets de base de données.

Dans les étapes suivantes, vous créez un utilisateur avec SQL * Plus et accordez les rôles et privilèges nécessaires pour se connecter à la base de données:

  1. Dans SQL * Plus, tapez la commande suivante pour créer un utilisateur:

    SYS @ dev12c> créer acme_own2 utilisateur identifié par "acme_own2013!" 3 temporaires tablespace Temp4 tablespace par défaut des utilisateurs-utilisateur créé.

    Dans cet exemple, l'utilisateur est propriétaire du schéma ACME_OWN. La table par défaut est défini comme UTILISATEURS bien que la clause de stockage TABLESPACE devrait spécifier ACME_DATA lorsque les objets sont créés.

  2. Accordez les rôles CONNECT et RESOURCE utilisateur afin que l'utilisateur peut se connecter à la base de données et créer des objets:

    SYS @ dev12c> Grant connecter à acme_own-Grant succeeded.SYS@dev12c> accorder des ressources à acme_own-Grant a réussi.
  3. Créer un nouveau rôle:

    SYS @ dev12c> créer rôle acme_user-Rôle created.SYS@dev12c> Grant créer session pour acme_user-Grant a réussi.

    Dans cet exemple, ACME_USER est créé. Ce utilisateur recevra des subventions de l'objet à partir du compte de ACME_OWN comme des objets sont créés.

  4. Accorder le INSERT échéant, UPDATE, DELETE, et les droits d'exécution pour chaque objet à la deuxième rôle.

    Cela vous permet de vous accordez le rôle qui a les subventions à chaque utilisateur de l'application. Chaque utilisateur de l'application a alors accès aux objets de ACME_OWN. Cela vous évite d'avoir à accorder individuellement chaque utilisateur d'accéder à chaque objet.

  5. Grant Créer une session à la première rôle.

    Lorsque les utilisateurs reçoivent le rôle, ils peuvent se connecter à la base de données.

Vous pouvez créer des utilisateurs d'applications individuels en utilisant SQL * Plus. Utilisez Enterprise Manager Database Express pour créer des utilisateurs:

  1. Choisissez sécurité aux utilisateurs d'accéder à l'écran Créer un utilisateur.

    image0.jpg
  2. Entrez le nom d'utilisateur, le profil, et mot de passe.

    VICKYB a le profil par défaut et l'authentification par mot de passe. Le mot de passe que vous tapez apparaît comme asterisks- vous devez entrer deux fois pour vous assurer de ne pas vous tromper il.

  3. Cliquez sur la flèche droite pour passer à l'écran Tablespaces.

    Choisissez le nouveau tablespace my_data que la table par défaut de VICKYB.

    Acceptez la table temporaire - TEMP tablespace par défaut.

    image1.jpg
  4. Cliquez sur la flèche droite pour passer à l'écran suivant.

    L'écran affiche Privilège. Sur la gauche sont des privilèges ou des rôles système. Les rôles sont indiqués par une coche. Vous pouvez également voir le nouvel utilisateur avec le rôle CONNECT.

    image2.jpg
  5. Lorsque vous avez terminé de choisir les rôles et privilèges, cliquez sur OK.

    L'utilisateur est créé.

Si vous avez besoin davantage d'utilisateurs de l'application, suivez ces étapes:

  1. De l'écran principal de sécurité, sélectionnez l'utilisateur que vous voulez utiliser comme modèle.

  2. Cliquez sur le bouton du type CREATE.

    Cela vous mènera de nouveau dans l'assistant Créer un utilisateur avec les options déjà sélectionnés pour refléter l'utilisateur que vous copiez.

  3. Créez un nouvel utilisateur avec les mêmes rôles et privilèges, mais avec un nom d'utilisateur et mot de passe différent.

    À ce stade, vous avez un schéma d'application compte propriétaire et une base de rôles privilèges objet de subvention à ce rôle que vous créez des objets. Vous avez également un utilisateur de l'application avec un rôle. Après les objets d'application sont construits et l'accès a été accordé à ce rôle, l'utilisateur de l'application peut accéder aux objets.


» » » Notions de base des utilisateurs et des schémas dans Oracle 12c