Introduction
This article provides an overview of the Oracle Cloud Infrastructure (OCI) Identity and Access Management (IAM) service, its key features, concepts, and practical applications in the multicloud arena. It covers:
- Authentication and authorization.
- Identity domains, users, groups, and compartments.
- Policy creation and advanced configurations.
- Federation with Azure Active Directory.
Part 1: Basics of IAM
- IAM stands for Identity and Access Management.
- Controls access to OCI resources by managing users, groups, and their permissions.
- Key components: Authentication (AuthN): Verifying who a user is. Authorization (AuthZ): Defining what a user is allowed to do.
- Identity Domains: Containers for managing users, groups, roles, and configurations. Each tenancy includes a default identity domain. Additional identity domains can be created for separate environments (e.g., development, production).
- Users and Principals: Users: Individuals or systems managing resources. Principals: IAM users and resource principals.
- Groups: Collections of users requiring the same type of access. Dynamic Groups: Membership changes dynamically based on rules.
- Policies: Define authorization in a human-readable format (e.g., "Allow group A to manage network resources").
- Compartments: Logical collections of resources for isolation and access control.
Part 2: Identity Domains
- Represent user populations with associated configurations and security settings.
- Support advanced capabilities like multi-factor authentication and federation.
- Free Identity Domain: Default, used for managing OCI resources.
- Oracle Apps Identity Domain: Supports seamless authentication for Oracle SaaS and PaaS, and GBU apps.
- Oracle Apps Premium Domain: Extends IAM to OCI-hosted or on-premises Oracle applications, like EBS.
- Premium Identity Domain: Full feature set for third-party applications.
- External User Identity Domain: For consumer-facing use cases (e.g., contractors or millions of users).
- Use separate identity domains for different environments (e.g., development and production).
Part 3: Policies and Authorization
- Components of a policy: Subject: Specifies users or groups (e.g., "group A"). Verb: Actions allowed (inspect, read, use, manage). Resource Type: Resource or resource family (e.g., virtual network family). Location: Specifies compartment or tenancy. Conditions: Advanced rules (e.g., restricting access by IP).
Allow group <domain/group_name> to manage virtual network family in tenancy
- OCI enforces least privilege by default.
- Policies always grant permissions (deny is implicit if not explicitly allowed).
Part 4: Federation Concepts
- Identity Provider (IdP): Service providing credentials and authentication.
- Service Provider (SP): Application relying on an IdP for authentication.
- Federation Trust: Relationship between IdP and SP.
- User accesses the service provider’s application.
- Service provider delegates authentication to the IdP.
- User authenticates with IdP.
- IdP provides an access token.
- User accesses the service provider’s application with the token.
- OCI supports Security Assertion Markup Language (SAML) 2.0.
Part 5: Practical Demonstrations
Example 1: Creating Users and Policies
- Create Identity Domain: Name the domain (e.g., "Test Domain"). Select the domain type (e.g., Free Identity Domain). Specify a domain administrator.
- Add Users and Groups: Create a user and assign to a group. Define permissions by writing policies (e.g., allowing a group to manage virtual networks).
- Test User Permissions: Log in as the user and verify resource access.
Example 2: Federation with Azure Active Directory
- OCI Configuration: Export SAML metadata from the OCI Console.
- Azure Configuration: Create an enterprise application for OCI in Azure. Configure single sign-on with SAML. Upload OCI SAML metadata.
- Federation Setup: Upload Azure SAML metadata to OCI. Create and activate the identity provider. Assign the provider to a policy for sign-in.
- Testing: Log in using Azure credentials via the OCI Console. Verify seamless access.
Conclusion
This article provides a concise introduction to OCI IAM, focusing on managing users, groups, policies, and federation. By mastering these concepts, you can effectively control access to OCI resources and ensure secure, streamlined operations in the multicloud context of Oracle DB@Azure.