SlideShare a Scribd company logo
1 of 8
CloudPlatform in a
multi-tenant setup
Domains, Accounts, Users & Projects

cloudcentral.com.au
Accounts, Domains and Projects
CloudPlatform permissions hierarchy consists
of:
Domains
– Accounts
 Users

– Projects

cloudcentral.com.au
Multi-Tenancy Account Management
Domain
Organization A

•

Resources:
VMs, IPs, Snapshots…

Admin

•

Domain

Resources:
VMs, IPs, Snapshots…

Reseller A
Admin

•
•

Sub-Domain

Organization C
Admin

Account
Group A

•

Domain is a unit of isolation and
represents a business unit,
customer organisation or a
reseller
Domain can have arbitrary levels
of sub-domains
A Domain can have one or more
accounts
An Account represents one or
more users and is the basic unit
of isolation
Admin can limit resources at the
Account or Domain levels

Account
Group A

User 1
User 2

cloudcentral.com.au
Domains
Domains are, more or less, the equivalent
of an organizational unit. Domains can
house projects and accounts, but domains
don't really own any resources on their
own. Domains can also impose resource
limits upon all accounts held within them.
A domain is basically a container for other
things which can own resources such as
instances, volumes, networks, snapshots,
templates, etc.

ROOT Domain
The root domain is somewhat special
because all domains are a child of this
parent domain. An admin account of the
ROOT domain has the ability to manipulate
(via the API) other resources belonging to
all child domains (e.g. ALL domains,
because all domains are a child of ROOT).
So admin accounts of the ROOT domain
have global admin privileges.

Domains must be unique to their parent
(ROOT/dom1, ROOT/dom2, etc), however
they can repeat if they are a child of
another domain (ROOT/dom1/sub1 and
ROOT/dom2/sub1 is acceptable because
even though "sub1" is not unique, it is
unique to its parent).

cloudcentral.com.au
Accounts, Account Types and Users
Admin Account
An admin account has domain admin privileges. It is still constrained to domain limitations set by the ROOT
admin on that domain (# of instances permitted, # of volumes, etc) but it has more privileges. For example,
a domain admin can create additional accounts within a domain or generate API keys for users. It can also
create sub-domains within its own domain and report on their resource utilization. For a full list of the
differences, please see the API guide.
User Account
A user account has privileges to create new resources (instances, volumes, snapshots, etc) but very little
administrative privileges. At this time, user accounts cannot generate API keys or additional users within
their account, they can only view them.
Usernames, Passwords, and API Keys
Usernames, passwords, and API keys belong to an account. This is the username & password you would log
into the Web UI with (and if you generated an API key, the API key you would use for making API calls).
Usernames must be unique to the domain they belong to (e.g. two users within the domain foo.tld cannot
have the same username – you can't have two joe@foo.tld users), but they can be duplicative between
multiple domains (e.g. joe@foo.tld and joe@bar.tld). Users do not own any resources, they are simply used
as a means to manipulate and access resources owned by the account they are a part of. Users cannot have
separate permissions between them, they inherit the permissions of the account they belong to.
Accounts and Resources
Accounts own resources. This is extremely important so I'll state it again: Accounts own resources. If
you delete an account all resources associated with it (instances, volumes, snapshots, etc) will be removed
as well. Usage is also tracked at an account level. So for billing or chargeback purposes, if the usage module
is enabled, reporting is available for resources used at an account level.

cloudcentral.com.au
Summary overview
A domain can have multiple Accounts. Each Account can have multiple users.
Users are mere synonyms for accessing the account resources just like in a bank joint account, different
users have visibility to the bank account. They just have different usernames and passwords but ultimately
they use the same bank account funds.
A user can belong to only one Account, i.e. the same User cannot belong to multiple Accounts.
Whenever creating an account at any domain level it can be of two types - Admin or user. If account == Admin
then he will be domain admin of that domain and if created with type=user he will be a regular account under that
domain.
An admin created at ROOT level is called ROOT admin and since ROOT is the top domain he has privileges to act
on all the resources.
A Username is unique in a Domain across Accounts in that Domain. The same username can exist in other
domains, including subdomains.
Account name is unique in a domain. The same Account name can exist in other domains, including subdomains.
Domain name can repeat as long as the full pathname from ROOT is unique. For ex, you can have ROOT/d1, as
well as ROOT/foo/d1, and ROOT/bar/d1.
Resources belong to an Account, not individual users in that account. Billing, resource limits etc are
maintained by Account, not users
CloudPlatform allows you to create 3 different types of accounts --> admin/domain-admin or user account. All the
roles (admin, domain admins and user) are attached at account level.
Under the account all the users have the same privileges. There are no role based users in one account.
We can have multiple admins for the same domain.
All the domains are created under the ROOT domain.

cloudcentral.com.au
Projects
Domain
Organization A

Projects are similar to accounts but unique in one special
aspect.

Resources:
VMs, IPs, Snapshots…

Admin

Domain

Resources:
VMs, IPs, Snapshots…

Reseller A
Admin

Sub-Domain

Organization C
Admin

Project A
Account
Group A
Project
Admin
Account
Group A

User 1

Projects can share control of resources amongst multiple
accounts. The resources themselves (instances, volumes,
snapshots, etc) are owned by the project and are allowed
to be manipulated by multiple accounts within the same
domain. So if there was a joint project being worked on
by multiple departments within an organization, a project
could be created and could invite other accounts
(departments in the organization) to take part in the
project. With a project, one account must be delegated as
the project administrator. A project admin has the ability
to invite and revoke access to other accounts within the
domain with regard to access on that project.
A project admin only has control of the project and has no
other authority over other accounts (e.g. it cannot impose
account-level restrictions such as limits on the number of
instances, volumes, snapshots, etc permitted), only over
which accounts can access the project. While there can
only be one project admin, it can be moved between
accounts without affecting anything because all resources
created by the project are owned by the project and not
the individual accounts that are participating in it.

User 2

cloudcentral.com.au
References
Apache CloudStack wiki
– https://cwiki.apache.org/confluence/display/CLOUDSTACK/Accounts%
2C+Domains%2C+and+Admin+explained
– https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=3
0149981

Citrix CloudPlatform 4.2 Technical Presentation

8

cloudcentral.com.au

3/03/2014

More Related Content

Recently uploaded

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 

Recently uploaded (20)

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 

Featured

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellSaba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming LanguageSimplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

CloudStack / CloudPlatform in a multi tenant setup - Domains, Accounts, Users & Projects

  • 1. CloudPlatform in a multi-tenant setup Domains, Accounts, Users & Projects cloudcentral.com.au
  • 2. Accounts, Domains and Projects CloudPlatform permissions hierarchy consists of: Domains – Accounts  Users – Projects cloudcentral.com.au
  • 3. Multi-Tenancy Account Management Domain Organization A • Resources: VMs, IPs, Snapshots… Admin • Domain Resources: VMs, IPs, Snapshots… Reseller A Admin • • Sub-Domain Organization C Admin Account Group A • Domain is a unit of isolation and represents a business unit, customer organisation or a reseller Domain can have arbitrary levels of sub-domains A Domain can have one or more accounts An Account represents one or more users and is the basic unit of isolation Admin can limit resources at the Account or Domain levels Account Group A User 1 User 2 cloudcentral.com.au
  • 4. Domains Domains are, more or less, the equivalent of an organizational unit. Domains can house projects and accounts, but domains don't really own any resources on their own. Domains can also impose resource limits upon all accounts held within them. A domain is basically a container for other things which can own resources such as instances, volumes, networks, snapshots, templates, etc. ROOT Domain The root domain is somewhat special because all domains are a child of this parent domain. An admin account of the ROOT domain has the ability to manipulate (via the API) other resources belonging to all child domains (e.g. ALL domains, because all domains are a child of ROOT). So admin accounts of the ROOT domain have global admin privileges. Domains must be unique to their parent (ROOT/dom1, ROOT/dom2, etc), however they can repeat if they are a child of another domain (ROOT/dom1/sub1 and ROOT/dom2/sub1 is acceptable because even though "sub1" is not unique, it is unique to its parent). cloudcentral.com.au
  • 5. Accounts, Account Types and Users Admin Account An admin account has domain admin privileges. It is still constrained to domain limitations set by the ROOT admin on that domain (# of instances permitted, # of volumes, etc) but it has more privileges. For example, a domain admin can create additional accounts within a domain or generate API keys for users. It can also create sub-domains within its own domain and report on their resource utilization. For a full list of the differences, please see the API guide. User Account A user account has privileges to create new resources (instances, volumes, snapshots, etc) but very little administrative privileges. At this time, user accounts cannot generate API keys or additional users within their account, they can only view them. Usernames, Passwords, and API Keys Usernames, passwords, and API keys belong to an account. This is the username & password you would log into the Web UI with (and if you generated an API key, the API key you would use for making API calls). Usernames must be unique to the domain they belong to (e.g. two users within the domain foo.tld cannot have the same username – you can't have two joe@foo.tld users), but they can be duplicative between multiple domains (e.g. joe@foo.tld and joe@bar.tld). Users do not own any resources, they are simply used as a means to manipulate and access resources owned by the account they are a part of. Users cannot have separate permissions between them, they inherit the permissions of the account they belong to. Accounts and Resources Accounts own resources. This is extremely important so I'll state it again: Accounts own resources. If you delete an account all resources associated with it (instances, volumes, snapshots, etc) will be removed as well. Usage is also tracked at an account level. So for billing or chargeback purposes, if the usage module is enabled, reporting is available for resources used at an account level. cloudcentral.com.au
  • 6. Summary overview A domain can have multiple Accounts. Each Account can have multiple users. Users are mere synonyms for accessing the account resources just like in a bank joint account, different users have visibility to the bank account. They just have different usernames and passwords but ultimately they use the same bank account funds. A user can belong to only one Account, i.e. the same User cannot belong to multiple Accounts. Whenever creating an account at any domain level it can be of two types - Admin or user. If account == Admin then he will be domain admin of that domain and if created with type=user he will be a regular account under that domain. An admin created at ROOT level is called ROOT admin and since ROOT is the top domain he has privileges to act on all the resources. A Username is unique in a Domain across Accounts in that Domain. The same username can exist in other domains, including subdomains. Account name is unique in a domain. The same Account name can exist in other domains, including subdomains. Domain name can repeat as long as the full pathname from ROOT is unique. For ex, you can have ROOT/d1, as well as ROOT/foo/d1, and ROOT/bar/d1. Resources belong to an Account, not individual users in that account. Billing, resource limits etc are maintained by Account, not users CloudPlatform allows you to create 3 different types of accounts --> admin/domain-admin or user account. All the roles (admin, domain admins and user) are attached at account level. Under the account all the users have the same privileges. There are no role based users in one account. We can have multiple admins for the same domain. All the domains are created under the ROOT domain. cloudcentral.com.au
  • 7. Projects Domain Organization A Projects are similar to accounts but unique in one special aspect. Resources: VMs, IPs, Snapshots… Admin Domain Resources: VMs, IPs, Snapshots… Reseller A Admin Sub-Domain Organization C Admin Project A Account Group A Project Admin Account Group A User 1 Projects can share control of resources amongst multiple accounts. The resources themselves (instances, volumes, snapshots, etc) are owned by the project and are allowed to be manipulated by multiple accounts within the same domain. So if there was a joint project being worked on by multiple departments within an organization, a project could be created and could invite other accounts (departments in the organization) to take part in the project. With a project, one account must be delegated as the project administrator. A project admin has the ability to invite and revoke access to other accounts within the domain with regard to access on that project. A project admin only has control of the project and has no other authority over other accounts (e.g. it cannot impose account-level restrictions such as limits on the number of instances, volumes, snapshots, etc permitted), only over which accounts can access the project. While there can only be one project admin, it can be moved between accounts without affecting anything because all resources created by the project are owned by the project and not the individual accounts that are participating in it. User 2 cloudcentral.com.au
  • 8. References Apache CloudStack wiki – https://cwiki.apache.org/confluence/display/CLOUDSTACK/Accounts% 2C+Domains%2C+and+Admin+explained – https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=3 0149981 Citrix CloudPlatform 4.2 Technical Presentation 8 cloudcentral.com.au 3/03/2014