mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-02-05 11:26:11 -08:00
Translated ['src/pentesting-cloud/aws-security/aws-basic-information/REA
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
|
||||
### Λογαριασμοί
|
||||
|
||||
Στο AWS υπάρχει ένας **root account,** ο οποίος είναι ο **γονικός κάδος για όλους τους λογαριασμούς** της **οργάνωσής** σας. Ωστόσο, δεν χρειάζεται να χρησιμοποιήσετε αυτόν τον λογαριασμό για να αναπτύξετε πόρους, μπορείτε να δημιουργήσετε **άλλους λογαριασμούς για να διαχωρίσετε διαφορετικές υποδομές AWS** μεταξύ τους.
|
||||
Στο AWS, υπάρχει ένας **root account**, ο οποίος είναι ο **γονικός κάδος για όλους τους λογαριασμούς** της **οργάνωσής** σας. Ωστόσο, δεν χρειάζεται να χρησιμοποιήσετε αυτόν τον λογαριασμό για να αναπτύξετε πόρους, μπορείτε να δημιουργήσετε **άλλους λογαριασμούς για να διαχωρίσετε διαφορετικές υποδομές AWS** μεταξύ τους.
|
||||
|
||||
Αυτό είναι πολύ ενδιαφέρον από την **οπτική της ασφάλειας**, καθώς **ένας λογαριασμός δεν θα μπορεί να έχει πρόσβαση σε πόρους άλλου λογαριασμού** (εκτός αν έχουν δημιουργηθεί συγκεκριμένες γέφυρες), έτσι μπορείτε να δημιουργήσετε όρια μεταξύ των αναπτύξεων.
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
- Διαχείριση προσκλήσεων
|
||||
- Εφαρμογή πολιτικών σε οντότητες (roots, OUs ή λογαριασμούς) εντός της οργάνωσης
|
||||
- Ενεργοποίηση ενσωμάτωσης με υποστηριζόμενες υπηρεσίες AWS για να παρέχετε λειτουργικότητα υπηρεσιών σε όλους τους λογαριασμούς στην οργάνωση.
|
||||
- Είναι δυνατή η σύνδεση ως root χρήστης χρησιμοποιώντας το email και τον κωδικό πρόσβασης που χρησιμοποιήθηκαν για τη δημιουργία αυτού του root account/οργάνωσης.
|
||||
- Είναι δυνατή η σύνδεση ως root user χρησιμοποιώντας το email και τον κωδικό πρόσβασης που χρησιμοποιήθηκαν για τη δημιουργία αυτού του root account/οργάνωσης.
|
||||
|
||||
Ο λογαριασμός διαχείρισης έχει τις **ευθύνες ενός λογαριασμού πληρωμής** και είναι υπεύθυνος για την πληρωμή όλων των χρεώσεων που προκύπτουν από τους λογαριασμούς μελών. Δεν μπορείτε να αλλάξετε τον λογαριασμό διαχείρισης μιας οργάνωσης.
|
||||
|
||||
@@ -40,17 +40,17 @@ aws organizations create-organizational-unit --parent-id r-lalala --name TestOU
|
||||
```
|
||||
### Service Control Policy (SCP)
|
||||
|
||||
Μια **πολιτική ελέγχου υπηρεσιών (SCP)** είναι μια πολιτική που καθορίζει τις υπηρεσίες και τις ενέργειες που μπορούν να χρησιμοποιούν οι χρήστες και οι ρόλοι στους λογαριασμούς που επηρεάζει η SCP. Οι SCP είναι **παρόμοιες με τις πολιτικές δικαιωμάτων IAM** εκτός από το ότι **δεν παρέχουν κανένα δικαίωμα**. Αντίθετα, οι SCP καθορίζουν τα **μέγιστα δικαιώματα** για έναν οργανισμό, μια οργανωτική μονάδα (OU) ή έναν λογαριασμό. Όταν επισυνάπτετε μια SCP στη ρίζα του οργανισμού σας ή σε μια OU, η **SCP περιορίζει τα δικαιώματα για οντότητες σε μέλη λογαριασμούς**.
|
||||
Μια **service control policy (SCP)** είναι μια πολιτική που καθορίζει τις υπηρεσίες και τις ενέργειες που μπορούν να χρησιμοποιούν οι χρήστες και οι ρόλοι στους λογαριασμούς που επηρεάζει η SCP. Οι SCP είναι **παρόμοιες με τις πολιτικές δικαιωμάτων IAM** εκτός από το ότι **δεν παρέχουν κανένα δικαίωμα**. Αντίθετα, οι SCP καθορίζουν τα **μέγιστα δικαιώματα** για έναν οργανισμό, οργανωτική μονάδα (OU) ή λογαριασμό. Όταν επισυνάπτετε μια SCP στη ρίζα του οργανισμού σας ή σε μια OU, η **SCP περιορίζει τα δικαιώματα για οντότητες σε μέλη λογαριασμών**.
|
||||
|
||||
Αυτή είναι η ΜΟΝΗ τρόπος που **ακόμα και ο χρήστης ρίζας μπορεί να σταματήσει** να κάνει κάτι. Για παράδειγμα, θα μπορούσε να χρησιμοποιηθεί για να σταματήσει τους χρήστες από το να απενεργοποιούν το CloudTrail ή να διαγράφουν αντίγραφα ασφαλείας.\
|
||||
Αυτή είναι η ΜΟΝΗ τρόπος που **ακόμα και ο ριζικός χρήστης μπορεί να σταματήσει** να κάνει κάτι. Για παράδειγμα, θα μπορούσε να χρησιμοποιηθεί για να σταματήσει τους χρήστες από το να απενεργοποιούν το CloudTrail ή να διαγράφουν αντίγραφα ασφαλείας.\
|
||||
Ο μόνος τρόπος να παρακαμφθεί αυτό είναι να παραβιαστεί επίσης ο **κύριος λογαριασμός** που ρυθμίζει τις SCP (ο κύριος λογαριασμός δεν μπορεί να αποκλειστεί).
|
||||
|
||||
> [!WARNING]
|
||||
> Σημειώστε ότι **οι SCP περιορίζουν μόνο τους κύριους στον λογαριασμό**, επομένως άλλοι λογαριασμοί δεν επηρεάζονται. Αυτό σημαίνει ότι η ύπαρξη μιας SCP που αρνείται το `s3:GetObject` δεν θα σταματήσει τους ανθρώπους από το **να έχουν πρόσβαση σε ένα δημόσιο S3 bucket** στον λογαριασμό σας.
|
||||
> Σημειώστε ότι **οι SCP περιορίζουν μόνο τους κύριους στον λογαριασμό**, οπότε άλλοι λογαριασμοί δεν επηρεάζονται. Αυτό σημαίνει ότι η ύπαρξη μιας SCP που αρνείται το `s3:GetObject` δεν θα σταματήσει τους ανθρώπους από το **να έχουν πρόσβαση σε ένα δημόσιο S3 bucket** στον λογαριασμό σας.
|
||||
|
||||
Παραδείγματα SCP:
|
||||
SCP παραδείγματα:
|
||||
|
||||
- Απαγόρευση του λογαριασμού ρίζας εντελώς
|
||||
- Απαγόρευση του ριζικού λογαριασμού εντελώς
|
||||
- Επιτρέψτε μόνο συγκεκριμένες περιοχές
|
||||
- Επιτρέψτε μόνο υπηρεσίες που έχουν λευκή λίστα
|
||||
- Απαγόρευση του GuardDuty, CloudTrail και S3 Public Block Access από
|
||||
@@ -68,14 +68,14 @@ aws organizations create-organizational-unit --parent-id r-lalala --name TestOU
|
||||
|
||||
### Resource Control Policy (RCP)
|
||||
|
||||
Μια **πολιτική ελέγχου πόρων (RCP)** είναι μια πολιτική που καθορίζει τα **μέγιστα δικαιώματα για πόρους εντός του οργανισμού AWS σας**. Οι RCP είναι παρόμοιες με τις πολιτικές IAM στη σύνταξη αλλά **δεν παρέχουν δικαιώματα**—μόνο περιορίζουν τα δικαιώματα που μπορούν να εφαρμοστούν στους πόρους από άλλες πολιτικές. Όταν επισυνάπτετε μια RCP στη ρίζα του οργανισμού σας, σε μια οργανωτική μονάδα (OU) ή σε έναν λογαριασμό, η RCP περιορίζει τα δικαιώματα πόρων σε όλους τους πόρους στην επηρεαζόμενη περιοχή.
|
||||
Μια **resource control policy (RCP)** είναι μια πολιτική που καθορίζει τα **μέγιστα δικαιώματα για πόρους εντός του οργανισμού AWS σας**. Οι RCP είναι παρόμοιες με τις πολιτικές IAM στη σύνταξη αλλά **δεν παρέχουν δικαιώματα**—μόνο περιορίζουν τα δικαιώματα που μπορούν να εφαρμοστούν στους πόρους από άλλες πολιτικές. Όταν επισυνάπτετε μια RCP στη ρίζα του οργανισμού σας, σε μια οργανωτική μονάδα (OU) ή σε έναν λογαριασμό, η RCP περιορίζει τα δικαιώματα πόρων σε όλους τους πόρους στην επηρεαζόμενη περιοχή.
|
||||
|
||||
Αυτή είναι η ΜΟΝΗ τρόπος για να διασφαλίσετε ότι **οι πόροι δεν μπορούν να υπερβούν τα προκαθορισμένα επίπεδα πρόσβασης**—ακόμα και αν μια πολιτική βασισμένη σε ταυτότητα ή πόρο είναι πολύ επιεικής. Ο μόνος τρόπος να παρακαμφθούν αυτοί οι περιορισμοί είναι να τροποποιηθεί επίσης η RCP που έχει ρυθμιστεί από τον λογαριασμό διαχείρισης του οργανισμού σας.
|
||||
|
||||
> [!WARNING]
|
||||
> Οι RCP περιορίζουν μόνο τα δικαιώματα που μπορούν να έχουν οι πόροι. Δεν ελέγχουν άμεσα τι μπορούν να κάνουν οι κύριοι. Για παράδειγμα, αν μια RCP αρνείται την εξωτερική πρόσβαση σε ένα S3 bucket, διασφαλίζει ότι τα δικαιώματα του bucket δεν επιτρέπουν ποτέ ενέργειες πέρα από το καθορισμένο όριο—ακόμα και αν μια πολιτική βασισμένη σε πόρους είναι λανθασμένα ρυθμισμένη.
|
||||
|
||||
Παραδείγματα RCP:
|
||||
RCP παραδείγματα:
|
||||
|
||||
- Περιορισμός S3 buckets ώστε να μπορούν να προσπελαστούν μόνο από κύριους εντός του οργανισμού σας
|
||||
- Περιορισμός της χρήσης κλειδιών KMS ώστε να επιτρέπονται μόνο λειτουργίες από αξιόπιστους οργανωτικούς λογαριασμούς
|
||||
@@ -106,13 +106,13 @@ arn:aws:elasticbeanstalk:us-west-1:123456789098:environment/App/Env
|
||||
- **Authorization** - Καθορίζει τι μπορεί να έχει πρόσβαση μια ταυτότητα μέσα σε ένα σύστημα μόλις έχει επαληθευτεί σε αυτό.
|
||||
- **Access Control** - Η μέθοδος και η διαδικασία με την οποία παρέχεται πρόσβαση σε έναν ασφαλή πόρο.
|
||||
|
||||
Το IAM μπορεί να οριστεί από την ικανότητά του να διαχειρίζεται, ελέγχει και κυβερνά τους μηχανισμούς αυθεντικοποίησης, εξουσιοδότησης και ελέγχου πρόσβασης ταυτοτήτων στους πόρους σας μέσα στον λογαριασμό σας στο AWS.
|
||||
Το IAM μπορεί να οριστεί από την ικανότητά του να διαχειρίζεται, ελέγχει και κυβερνά τους μηχανισμούς επαλήθευσης, εξουσιοδότησης και ελέγχου πρόσβασης ταυτοτήτων στους πόρους σας μέσα στον λογαριασμό σας στο AWS.
|
||||
|
||||
### [AWS account root user](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) <a href="#id_root" id="id_root"></a>
|
||||
|
||||
Όταν δημιουργείτε για πρώτη φορά έναν λογαριασμό Amazon Web Services (AWS), ξεκινάτε με μια μοναδική ταυτότητα σύνδεσης που έχει **πλήρη πρόσβαση σε όλες** τις υπηρεσίες και τους πόρους AWS στον λογαριασμό. Αυτός είναι ο _**root user**_ του λογαριασμού AWS και αποκτάται με την είσοδο με τη **διεύθυνση email και τον κωδικό πρόσβασης που χρησιμοποιήσατε για να δημιουργήσετε τον λογαριασμό**.
|
||||
Όταν δημιουργείτε για πρώτη φορά έναν λογαριασμό Amazon Web Services (AWS), ξεκινάτε με μια μοναδική ταυτότητα σύνδεσης που έχει **πλήρη πρόσβαση σε όλες** τις υπηρεσίες και τους πόρους AWS στον λογαριασμό. Αυτή είναι η _**root user**_ του λογαριασμού AWS και αποκτάται με την είσοδο με τη **διεύθυνση email και τον κωδικό πρόσβασης που χρησιμοποιήσατε για να δημιουργήσετε τον λογαριασμό**.
|
||||
|
||||
Σημειώστε ότι ένας νέος **admin user** θα έχει **λιγότερα δικαιώματα από τον root user**.
|
||||
Σημειώστε ότι ένας νέος **admin user** θα έχει **λιγότερες άδειες από τον root user**.
|
||||
|
||||
Από άποψη ασφάλειας, συνιστάται να δημιουργήσετε άλλους χρήστες και να αποφύγετε τη χρήση αυτού.
|
||||
|
||||
@@ -120,9 +120,9 @@ arn:aws:elasticbeanstalk:us-west-1:123456789098:environment/App/Env
|
||||
|
||||
Ένας _user_ IAM είναι μια οντότητα που δημιουργείτε στο AWS για να **αντιπροσωπεύει το άτομο ή την εφαρμογή** που το χρησιμοποιεί για να **αλληλεπιδράσει με το AWS**. Ένας χρήστης στο AWS αποτελείται από ένα όνομα και διαπιστευτήρια (κωδικός πρόσβασης και έως δύο κλειδιά πρόσβασης).
|
||||
|
||||
Όταν δημιουργείτε έναν χρήστη IAM, του παρέχετε **δικαιώματα** κάνοντάς τον **μέλος μιας ομάδας χρηστών** που έχει συνημμένες κατάλληλες πολιτικές δικαιωμάτων (συνιστάται), ή **συνημμένα πολιτικές** απευθείας στον χρήστη.
|
||||
Όταν δημιουργείτε έναν χρήστη IAM, του παρέχετε **άδειες** κάνοντάς τον **μέλος μιας ομάδας χρηστών** που έχει συνημμένες κατάλληλες πολιτικές αδειών (συνιστάται), ή **συνημμένα πολιτικές** απευθείας στον χρήστη.
|
||||
|
||||
Οι χρήστες μπορούν να έχουν **ενεργοποιημένο MFA για σύνδεση** μέσω της κονσόλας. Τα API tokens των χρηστών με ενεργοποιημένο MFA δεν προστατεύονται από το MFA. Εάν θέλετε να **περιορίσετε την πρόσβαση των κλειδιών API ενός χρήστη χρησιμοποιώντας MFA**, πρέπει να υποδείξετε στην πολιτική ότι για να εκτελούνται ορισμένες ενέργειες πρέπει να είναι παρόν το MFA (παράδειγμα [**εδώ**](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html)).
|
||||
Οι χρήστες μπορούν να έχουν **MFA ενεργοποιημένο για σύνδεση** μέσω της κονσόλας. Τα API tokens των χρηστών με ενεργοποιημένο MFA δεν προστατεύονται από το MFA. Εάν θέλετε να **περιορίσετε την πρόσβαση των κλειδιών API ενός χρήστη χρησιμοποιώντας MFA**, πρέπει να υποδείξετε στην πολιτική ότι για να εκτελούνται ορισμένες ενέργειες πρέπει να είναι παρόν το MFA (παράδειγμα [**εδώ**](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html)).
|
||||
|
||||
#### CLI
|
||||
|
||||
@@ -134,17 +134,17 @@ _Δημιουργήστε ένα νέο access key -> Εφαρμόστε το ν
|
||||
|
||||
### MFA - Multi Factor Authentication
|
||||
|
||||
Χρησιμοποιείται για να **δημιουργήσει έναν επιπλέον παράγοντα για την αυθεντικοποίηση** εκτός από τις υπάρχουσες μεθόδους σας, όπως ο κωδικός πρόσβασης, δημιουργώντας έτσι ένα επίπεδο πολλαπλής αυθεντικοποίησης.\
|
||||
Μπορείτε να χρησιμοποιήσετε μια **δωρεάν εικονική εφαρμογή ή μια φυσική συσκευή**. Μπορείτε να χρησιμοποιήσετε εφαρμογές όπως η Google Authentication δωρεάν για να ενεργοποιήσετε το MFA στο AWS.
|
||||
Χρησιμοποιείται για να **δημιουργήσει έναν επιπλέον παράγοντα για την επαλήθευση** εκτός από τις υπάρχουσες μεθόδους σας, όπως ο κωδικός πρόσβασης, δημιουργώντας έτσι ένα επίπεδο πολλαπλής επαλήθευσης.\
|
||||
Μπορείτε να χρησιμοποιήσετε μια **δωρεάν εικονική εφαρμογή ή μια φυσική συσκευή**. Μπορείτε να χρησιμοποιήσετε εφαρμογές όπως το google authentication δωρεάν για να ενεργοποιήσετε ένα MFA στο AWS.
|
||||
|
||||
Πολιτικές με συνθήκες MFA μπορούν να συνημμένες στα εξής:
|
||||
|
||||
- Έναν χρήστη ή ομάδα IAM
|
||||
- Έναν πόρο όπως ένα Amazon S3 bucket, μια ουρά Amazon SQS ή ένα θέμα Amazon SNS
|
||||
- Την πολιτική εμπιστοσύνης ενός IAM role που μπορεί να αναληφθεί από έναν χρήστη
|
||||
- Ένας χρήστης ή ομάδα IAM
|
||||
- Ένας πόρος όπως ένα Amazon S3 bucket, Amazon SQS queue ή Amazon SNS topic
|
||||
- Η πολιτική εμπιστοσύνης ενός IAM role που μπορεί να αναληφθεί από έναν χρήστη
|
||||
|
||||
Εάν θέλετε να **έχετε πρόσβαση μέσω CLI** σε έναν πόρο που **ελέγχει για MFA**, πρέπει να καλέσετε **`GetSessionToken`**. Αυτό θα σας δώσει ένα token με πληροφορίες σχετικά με το MFA.\
|
||||
Σημειώστε ότι **τα διαπιστευτήρια `AssumeRole` δεν περιέχουν αυτές τις πληροφορίες**.
|
||||
Σημειώστε ότι **οι διαπιστεύσεις `AssumeRole` δεν περιέχουν αυτές τις πληροφορίες**.
|
||||
```bash
|
||||
aws sts get-session-token --serial-number <arn_device> --token-code <code>
|
||||
```
|
||||
@@ -152,16 +152,16 @@ aws sts get-session-token --serial-number <arn_device> --token-code <code>
|
||||
|
||||
### [Ομάδες χρηστών IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) <a href="#id_iam-groups" id="id_iam-groups"></a>
|
||||
|
||||
Μια ομάδα [χρηστών IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) είναι ένας τρόπος για να **συνδέσετε πολιτικές σε πολλούς χρήστες** ταυτόχρονα, κάτι που μπορεί να διευκολύνει τη διαχείριση των δικαιωμάτων για αυτούς τους χρήστες. **Οι ρόλοι και οι ομάδες δεν μπορούν να είναι μέρος μιας ομάδας**.
|
||||
Μια ομάδα [χρηστών IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) είναι ένας τρόπος για να **συνδέσετε πολιτικές σε πολλούς χρήστες** ταυτόχρονα, γεγονός που μπορεί να διευκολύνει τη διαχείριση των δικαιωμάτων για αυτούς τους χρήστες. **Οι ρόλοι και οι ομάδες δεν μπορούν να είναι μέρος μιας ομάδας**.
|
||||
|
||||
Μπορείτε να συνδέσετε μια **πολιτική βάσει ταυτότητας σε μια ομάδα χρηστών** έτσι ώστε όλοι οι **χρήστες** στην ομάδα χρηστών **να λαμβάνουν τα δικαιώματα της πολιτικής**. **Δεν μπορείτε** να προσδιορίσετε μια **ομάδα χρηστών** ως **`Principal`** σε μια **πολιτική** (όπως μια πολιτική βάσης πόρων) επειδή οι ομάδες σχετίζονται με τα δικαιώματα, όχι με την ταυτοποίηση, και οι principals είναι ταυτοποιημένες οντότητες IAM.
|
||||
|
||||
Ακολουθούν μερικά σημαντικά χαρακτηριστικά των ομάδων χρηστών:
|
||||
|
||||
- Μια **ομάδα χρηστών** μπορεί να **περιέχει πολλούς χρήστες**, και ένας **χρήστης** μπορεί να **ανήκει σε πολλές ομάδες**.
|
||||
- Μια **ομάδα** χρηστών μπορεί να **περιέχει πολλούς χρήστες**, και ένας **χρήστης** μπορεί να **ανήκει σε πολλές ομάδες**.
|
||||
- **Οι ομάδες χρηστών δεν μπορούν να είναι φωλιασμένες**; μπορούν να περιέχουν μόνο χρήστες, όχι άλλες ομάδες χρηστών.
|
||||
- Δεν υπάρχει **καμία προεπιλεγμένη ομάδα χρηστών που να περιλαμβάνει αυτόματα όλους τους χρήστες στον λογαριασμό AWS**. Εάν θέλετε να έχετε μια ομάδα χρηστών όπως αυτή, πρέπει να τη δημιουργήσετε και να αναθέσετε κάθε νέο χρήστη σε αυτήν.
|
||||
- Ο αριθμός και το μέγεθος των πόρων IAM σε έναν λογαριασμό AWS, όπως ο αριθμός των ομάδων και ο αριθμός των ομάδων στις οποίες μπορεί να είναι μέλος ένας χρήστης, είναι περιορισμένα. Για περισσότερες πληροφορίες, δείτε [ποσοστά IAM και AWS STS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html).
|
||||
- Ο αριθμός και το μέγεθος των πόρων IAM σε έναν λογαριασμό AWS, όπως ο αριθμός των ομάδων και ο αριθμός των ομάδων στις οποίες μπορεί να είναι μέλος ένας χρήστης, είναι περιορισμένα. Για περισσότερες πληροφορίες, δείτε τις [ποσοστώσεις IAM και AWS STS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-quotas.html).
|
||||
|
||||
### [Ρόλοι IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) <a href="#id_iam-roles" id="id_iam-roles"></a>
|
||||
|
||||
@@ -184,10 +184,10 @@ aws sts get-session-token --serial-number <arn_device> --token-code <code>
|
||||
Χρησιμοποιούνται για την ανάθεση δικαιωμάτων. Υπάρχουν 2 τύποι:
|
||||
|
||||
- Πολιτικές διαχείρισης AWS (προρυθμισμένες από την AWS)
|
||||
- Πολιτικές διαχείρισης πελατών: Ρυθμισμένες από εσάς. Μπορείτε να δημιουργήσετε πολιτικές βασισμένες σε πολιτικές διαχείρισης AWS (τροποποιώντας μία από αυτές και δημιουργώντας τη δική σας), χρησιμοποιώντας τον δημιουργό πολιτικών (μια GUI προβολή που σας βοηθά να παραχωρείτε και να αρνείστε δικαιώματα) ή γράφοντας τη δική σας.
|
||||
- Πολιτικές διαχείρισης πελατών: Ρυθμισμένες από εσάς. Μπορείτε να δημιουργήσετε πολιτικές βασισμένες σε πολιτικές διαχείρισης AWS (τροποποιώντας μία από αυτές και δημιουργώντας τη δική σας), χρησιμοποιώντας τον γεννήτρια πολιτικών (μια GUI προβολή που σας βοηθά να παραχωρείτε και να αρνείστε δικαιώματα) ή γράφοντας τη δική σας.
|
||||
|
||||
Κατά **προεπιλογή, η πρόσβαση** είναι **αρνητική**, η πρόσβαση θα παραχωρηθεί εάν έχει καθοριστεί ρητά ένας ρόλος.\
|
||||
Εάν **υπάρχει μία μόνο "Άρνηση", θα υπερισχύσει της "Άδειας"**, εκτός από αιτήματα που χρησιμοποιούν τα διαπιστευτήρια ασφαλείας του ριζικού λογαριασμού AWS (τα οποία επιτρέπονται κατά προεπιλογή).
|
||||
Κατά **προεπιλογή η πρόσβαση** είναι **αρνητική**, η πρόσβαση θα παραχωρηθεί εάν έχει καθοριστεί ρητά ένας ρόλος.\
|
||||
Εάν **υπάρχει μία μόνο "Άρνηση", θα υπερισχύσει της "Άδειας"**, εκτός από αιτήματα που χρησιμοποιούν τα διαπιστευτήρια ασφαλείας του ριζικού λογαριασμού AWS (τα οποία επιτρέπονται από προεπιλογή).
|
||||
```javascript
|
||||
{
|
||||
"Version": "2012-10-17", //Version of the policy
|
||||
@@ -220,23 +220,23 @@ aws sts get-session-token --serial-number <arn_device> --token-code <code>
|
||||
|
||||
#### Resource Bucket Policies
|
||||
|
||||
Αυτές είναι **πολιτικές** που μπορούν να οριστούν σε **πόρους**. **Όλοι οι πόροι του AWS δεν τις υποστηρίζουν**.
|
||||
Αυτές είναι **πολιτικές** που μπορούν να οριστούν σε **πόρους**. **Όχι όλοι οι πόροι του AWS τις υποστηρίζουν**.
|
||||
|
||||
Εάν μια κύρια οντότητα δεν έχει ρητή άρνηση γι' αυτές, και μια πολιτική πόρου τους παραχωρεί πρόσβαση, τότε επιτρέπεται.
|
||||
|
||||
### IAM Boundaries
|
||||
|
||||
Οι όρια IAM μπορούν να χρησιμοποιηθούν για να **περιορίσουν τις άδειες στις οποίες πρέπει να έχει πρόσβαση ένας χρήστης ή ρόλος**. Με αυτόν τον τρόπο, ακόμη και αν μια διαφορετική σειρά αδειών παραχωρηθεί στον χρήστη από μια **διαφορετική πολιτική**, η λειτουργία θα **αποτύχει** αν προσπαθήσει να τις χρησιμοποιήσει.
|
||||
Οι IAM boundaries μπορούν να χρησιμοποιηθούν για να **περιορίσουν τις άδειες στις οποίες πρέπει να έχει πρόσβαση ένας χρήστης ή ρόλος**. Με αυτόν τον τρόπο, ακόμη και αν μια διαφορετική σειρά αδειών παραχωρηθεί στον χρήστη από μια **διαφορετική πολιτική**, η λειτουργία θα **αποτύχει** αν προσπαθήσει να τις χρησιμοποιήσει.
|
||||
|
||||
Ένα όριο είναι απλώς μια πολιτική που συνδέεται με έναν χρήστη και **υποδεικνύει το μέγιστο επίπεδο αδειών που μπορεί να έχει ο χρήστης ή ο ρόλος**. Έτσι, **ακόμη και αν ο χρήστης έχει πρόσβαση Διαχειριστή**, αν το όριο υποδεικνύει ότι μπορεί να διαβάσει μόνο S· buckets, αυτό είναι το μέγιστο που μπορεί να κάνει.
|
||||
Μια boundary είναι απλώς μια πολιτική που συνδέεται με έναν χρήστη και **υποδεικνύει το μέγιστο επίπεδο αδειών που μπορεί να έχει ο χρήστης ή ο ρόλος**. Έτσι, **ακόμη και αν ο χρήστης έχει πρόσβαση Διαχειριστή**, αν η boundary υποδεικνύει ότι μπορεί να διαβάσει μόνο S· buckets, αυτό είναι το μέγιστο που μπορεί να κάνει.
|
||||
|
||||
**Αυτό**, **SCPs** και **η τήρηση της αρχής της ελάχιστης προνομίας** είναι οι τρόποι ελέγχου ώστε οι χρήστες να μην έχουν περισσότερες άδειες από αυτές που χρειάζονται.
|
||||
|
||||
### Session Policies
|
||||
|
||||
Μια πολιτική συνεδρίας είναι μια **πολιτική που ορίζεται όταν αναλαμβάνεται ένας ρόλος** με κάποιο τρόπο. Αυτό θα είναι σαν ένα **όριο IAM για αυτήν τη συνεδρία**: Αυτό σημαίνει ότι η πολιτική συνεδρίας δεν παραχωρεί άδειες αλλά **περιορίζει αυτές στις οποίες υποδεικνύεται στην πολιτική** (με τις μέγιστες άδειες να είναι αυτές που έχει ο ρόλος).
|
||||
Μια πολιτική συνεδρίας είναι μια **πολιτική που ορίζεται όταν αναλαμβάνεται ένας ρόλος** με κάποιο τρόπο. Αυτό θα είναι σαν μια **IAM boundary για αυτή τη συνεδρία**: Αυτό σημαίνει ότι η πολιτική συνεδρίας δεν παραχωρεί άδειες αλλά **περιορίζει αυτές στις οποίες υποδεικνύεται στην πολιτική** (με τις μέγιστες άδειες να είναι αυτές που έχει ο ρόλος).
|
||||
|
||||
Αυτό είναι χρήσιμο για **μέτρα ασφαλείας**: Όταν ένας διαχειριστής πρόκειται να αναλάβει έναν πολύ προνομιούχο ρόλο, θα μπορούσε να περιορίσει την άδεια μόνο στις υποδεικνυόμενες στην πολιτική συνεδρίας σε περίπτωση που η συνεδρία παραβιαστεί.
|
||||
Αυτό είναι χρήσιμο για **μέτρα ασφαλείας**: Όταν ένας διαχειριστής πρόκειται να αναλάβει έναν πολύ προνομιακό ρόλο, θα μπορούσε να περιορίσει την άδεια μόνο στις υποδεικνυόμενες στην πολιτική συνεδρίας σε περίπτωση που η συνεδρία παραβιαστεί.
|
||||
```bash
|
||||
aws sts assume-role \
|
||||
--role-arn <value> \
|
||||
@@ -244,7 +244,7 @@ aws sts assume-role \
|
||||
[--policy-arns <arn_custom_policy1> <arn_custom_policy2>]
|
||||
[--policy <file://policy.json>]
|
||||
```
|
||||
Σημειώστε ότι από προεπιλογή **το AWS μπορεί να προσθέσει πολιτικές συνεδρίας σε συνεδρίες** που πρόκειται να δημιουργηθούν λόγω τρίτων λόγων. Για παράδειγμα, σε [μη αυθεντικοποιημένους ρόλους cognito](../aws-services/aws-cognito-enum/cognito-identity-pools.md#accessing-iam-roles) από προεπιλογή (χρησιμοποιώντας ενισχυμένη αυθεντικοποίηση), το AWS θα δημιουργήσει **διαπιστευτήρια συνεδρίας με πολιτική συνεδρίας** που περιορίζει τις υπηρεσίες που μπορεί να έχει πρόσβαση η συνεδρία [**στην παρακάτω λίστα**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services).
|
||||
Σημειώστε ότι από προεπιλογή **το AWS μπορεί να προσθέσει πολιτικές συνεδρίας σε συνεδρίες** που πρόκειται να παραχθούν λόγω τρίτων λόγων. Για παράδειγμα, σε [μη αυθεντικοποιημένους ρόλους cognito](../aws-services/aws-cognito-enum/cognito-identity-pools.md#accessing-iam-roles) από προεπιλογή (χρησιμοποιώντας ενισχυμένη αυθεντικοποίηση), το AWS θα δημιουργήσει **διαπιστευτήρια συνεδρίας με πολιτική συνεδρίας** που περιορίζει τις υπηρεσίες που μπορεί να έχει πρόσβαση η συνεδρία [**στην παρακάτω λίστα**](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies-scope-down-services).
|
||||
|
||||
Επομένως, αν σε κάποια στιγμή αντιμετωπίσετε το σφάλμα "... επειδή καμία πολιτική συνεδρίας δεν επιτρέπει το ...", και ο ρόλος έχει πρόσβαση για να εκτελέσει την ενέργεια, είναι επειδή **υπάρχει μια πολιτική συνεδρίας που το εμποδίζει**.
|
||||
|
||||
@@ -253,7 +253,7 @@ aws sts assume-role \
|
||||
Η ομοσπονδία ταυτότητας **επιτρέπει στους χρήστες από παρόχους ταυτότητας που είναι εξωτερικοί** στο AWS να έχουν ασφαλή πρόσβαση σε πόρους του AWS χωρίς να χρειάζεται να παρέχουν διαπιστευτήρια χρήστη AWS από έγκυρο λογαριασμό IAM.\
|
||||
Ένα παράδειγμα παρόχου ταυτότητας μπορεί να είναι το δικό σας εταιρικό **Microsoft Active Directory** (μέσω **SAML**) ή υπηρεσίες **OpenID** (όπως **Google**). Η ομοσπονδία πρόσβασης θα επιτρέπει στους χρήστες εντός της να έχουν πρόσβαση στο AWS.
|
||||
|
||||
Για να ρυθμίσετε αυτήν την εμπιστοσύνη, θα δημιουργηθεί ένας **Πάροχος Ταυτότητας IAM (SAML ή OAuth)** που θα **εμπιστεύεται** την **άλλη πλατφόρμα**. Στη συνέχεια, τουλάχιστον ένας **ρόλος IAM ανατίθεται (εμπιστευόμενος) στον Πάροχο Ταυτότητας**. Εάν ένας χρήστης από την εμπιστευμένη πλατφόρμα αποκτήσει πρόσβαση στο AWS, θα έχει πρόσβαση ως ο αναφερόμενος ρόλος.
|
||||
Για να ρυθμίσετε αυτήν την εμπιστοσύνη, θα δημιουργηθεί ένας **Πάροχος Ταυτότητας IAM (SAML ή OAuth)** που θα **εμπιστεύεται** την **άλλη πλατφόρμα**. Στη συνέχεια, τουλάχιστον ένας **ρόλος IAM ανατίθεται (εμπιστευόμενος) στον Πάροχο Ταυτότητας**. Αν ένας χρήστης από την εμπιστευμένη πλατφόρμα αποκτήσει πρόσβαση στο AWS, θα έχει πρόσβαση ως ο αναφερόμενος ρόλος.
|
||||
|
||||
Ωστόσο, συνήθως θα θέλετε να δώσετε έναν **διαφορετικό ρόλο ανάλογα με την ομάδα του χρήστη** στην τρίτη πλατφόρμα. Στη συνέχεια, αρκετοί **ρόλοι IAM μπορούν να εμπιστεύονται** τον τρίτο Πάροχο Ταυτότητας και η τρίτη πλατφόρμα θα είναι αυτή που θα επιτρέπει στους χρήστες να αναλαμβάνουν έναν ρόλο ή τον άλλο.
|
||||
|
||||
@@ -273,7 +273,7 @@ aws sts assume-role \
|
||||
|
||||
<figure><img src="../../../images/image (279).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
Στην απλούστερη περίπτωση του καταλόγου Κέντρου Ταυτότητας, το **Κέντρο Ταυτότητας θα έχει μια λίστα χρηστών & ομάδων** και θα μπορεί να **αναθέτει πολιτικές** σε αυτούς για **οποιουσδήποτε από τους λογαριασμούς** της οργάνωσης.
|
||||
Στην απλούστερη περίπτωση του καταλόγου Κέντρου Ταυτότητας, το **Κέντρο Ταυτότητας θα έχει μια λίστα χρηστών & ομάδων** και θα μπορεί να **αναθέτει πολιτικές** σε αυτούς για **οποιονδήποτε από τους λογαριασμούς** της οργάνωσης.
|
||||
|
||||
Για να δώσετε πρόσβαση σε έναν χρήστη/ομάδα του Κέντρου Ταυτότητας σε έναν λογαριασμό, θα δημιουργηθεί ένας **Πάροχος Ταυτότητας SAML που εμπιστεύεται το Κέντρο Ταυτότητας**, και θα δημιουργηθεί ένας **ρόλος που εμπιστεύεται τον Πάροχο Ταυτότητας με τις καθορισμένες πολιτικές** στον προορισμό λογαριασμό.
|
||||
|
||||
@@ -285,7 +285,7 @@ aws sts assume-role \
|
||||
|
||||
### Διασυνοριακές Εμπιστοσύνες και Ρόλοι
|
||||
|
||||
**Ένας χρήστης** (εμπιστευόμενος) μπορεί να δημιουργήσει έναν Διασυνοριακό Ρόλο με κάποιες πολιτικές και στη συνέχεια, **να επιτρέψει σε έναν άλλο χρήστη** (εμπιστευμένος) να **έχει πρόσβαση στον λογαριασμό του** αλλά μόνο **έχοντας την πρόσβαση που υποδεικνύεται στις νέες πολιτικές ρόλου**. Για να το δημιουργήσετε αυτό, απλώς δημιουργήστε έναν νέο Ρόλο και επιλέξτε Διασυνοριακό Ρόλο. Οι ρόλοι για Διασυνοριακή Πρόσβαση προσφέρουν δύο επιλογές. Παρέχοντας πρόσβαση μεταξύ λογαριασμών AWS που κατέχετε, και παρέχοντας πρόσβαση μεταξύ ενός λογαριασμού που κατέχετε και ενός λογαριασμού τρίτου μέρους AWS.\
|
||||
**Ένας χρήστης** (εμπιστευόμενος) μπορεί να δημιουργήσει έναν Διασυνοριακό Ρόλο με κάποιες πολιτικές και στη συνέχεια, **να επιτρέψει σε έναν άλλο χρήστη** (εμπιστευμένο) να **έχει πρόσβαση στον λογαριασμό του** αλλά μόνο **έχοντας την πρόσβαση που υποδεικνύεται στις νέες πολιτικές ρόλου**. Για να το δημιουργήσετε αυτό, απλώς δημιουργήστε έναν νέο Ρόλο και επιλέξτε Διασυνοριακό Ρόλο. Οι ρόλοι για Διασυνοριακή Πρόσβαση προσφέρουν δύο επιλογές. Παρέχοντας πρόσβαση μεταξύ λογαριασμών AWS που κατέχετε, και παρέχοντας πρόσβαση μεταξύ ενός λογαριασμού που κατέχετε και ενός τρίτου λογαριασμού AWS.\
|
||||
Συνιστάται να **καθορίσετε τον χρήστη που είναι εμπιστευμένος και να μην βάλετε κάτι γενικό** γιατί αν όχι, άλλοι αυθεντικοποιημένοι χρήστες όπως οι ομοσπονδικοί χρήστες θα μπορούν επίσης να εκμεταλλευτούν αυτήν την εμπιστοσύνη.
|
||||
|
||||
### AWS Simple AD
|
||||
@@ -315,25 +315,25 @@ aws sts assume-role \
|
||||
|
||||
Στην [**αυτή τη σελίδα**](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-unique-ids) μπορείτε να βρείτε τα **προθέματα ID IAM** των κλειδιών ανάλογα με τη φύση τους:
|
||||
|
||||
| Κωδικός Αναγνωριστικού | Περιγραφή |
|
||||
| ---- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| ABIA | [AWS STS service bearer token](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_bearer.html) |
|
||||
| Κωδικός Αναγνωριστικού | Περιγραφή |
|
||||
| --------------- | ----------------------------------------------------------------------------------------------------------- |
|
||||
| ABIA | [AWS STS service bearer token](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_bearer.html) |
|
||||
|
||||
| ACCA | Διαπιστευτήριο συγκεκριμένου πλαισίου |
|
||||
| AGPA | Ομάδα χρηστών |
|
||||
| AIDA | Χρήστης IAM |
|
||||
| AIPA | Προφίλ στιγμής Amazon EC2 |
|
||||
| AKIA | Κλειδί πρόσβασης |
|
||||
| ANPA | Διαχειριζόμενη πολιτική |
|
||||
| ANVA | Έκδοση σε μια διαχειριζόμενη πολιτική |
|
||||
| APKA | Δημόσιο κλειδί |
|
||||
| AROA | Ρόλος |
|
||||
| ASCA | Πιστοποιητικό |
|
||||
| ACCA | Διαπιστευτήριο συγκεκριμένου πλαισίου |
|
||||
| AGPA | Ομάδα χρηστών |
|
||||
| AIDA | Χρήστης IAM |
|
||||
| AIPA | Προφίλ στιγμής Amazon EC2 |
|
||||
| AKIA | Κλειδί πρόσβασης |
|
||||
| ANPA | Διαχειριζόμενη πολιτική |
|
||||
| ANVA | Έκδοση σε μια διαχειριζόμενη πολιτική |
|
||||
| APKA | Δημόσιο κλειδί |
|
||||
| AROA | Ρόλος |
|
||||
| ASCA | Πιστοποιητικό |
|
||||
| ASIA | [Προσωρινά (AWS STS) αναγνωριστικά κλειδιών πρόσβασης](https://docs.aws.amazon.com/STS/latest/APIReference/API_Credentials.html) χρησιμοποιούν αυτό το πρόθεμα, αλλά είναι μοναδικά μόνο σε συνδυασμό με το μυστικό κλειδί πρόσβασης και το διακριτικό συνεδρίας. |
|
||||
|
||||
### Συνιστώμενες άδειες για έλεγχο λογαριασμών
|
||||
|
||||
Οι παρακάτω προνόμια παρέχουν διάφορες αναγνωρίσεις μεταδεδομένων:
|
||||
Οι παρακάτω προνόμια παρέχουν διάφορη ανάγνωση μεταδεδομένων:
|
||||
|
||||
- `arn:aws:iam::aws:policy/SecurityAudit`
|
||||
- `arn:aws:iam::aws:policy/job-function/ViewOnlyAccess`
|
||||
@@ -348,8 +348,8 @@ aws sts assume-role \
|
||||
|
||||
### Αυθεντικοποίηση CLI
|
||||
|
||||
Για να μπορεί ένας κανονικός χρήστης να αυθεντικοποιηθεί στο AWS μέσω CLI, πρέπει να έχει **τοπικά διαπιστευτήρια**. Από προεπιλογή μπορείτε να τα ρυθμίσετε **χειροκίνητα** στο `~/.aws/credentials` ή **τρέχοντας** `aws configure`.\
|
||||
Σε αυτό το αρχείο μπορείτε να έχετε περισσότερα από ένα προφίλ, αν **δεν καθοριστεί προφίλ** χρησιμοποιώντας το **aws cli**, το προφίλ που ονομάζεται **`[default]`** σε αυτό το αρχείο θα χρησιμοποιηθεί.\
|
||||
Για να αυθεντικοποιηθεί ένας κανονικός χρήστης στο AWS μέσω CLI, πρέπει να έχετε **τοπικά διαπιστευτήρια**. Από προεπιλογή μπορείτε να τα ρυθμίσετε **χειροκίνητα** στο `~/.aws/credentials` ή **τρέχοντας** `aws configure`.\
|
||||
Σε αυτό το αρχείο μπορείτε να έχετε περισσότερα από ένα προφίλ, αν **δεν καθοριστεί προφίλ** χρησιμοποιώντας το **aws cli**, θα χρησιμοποιηθεί το προφίλ που ονομάζεται **`[default]`** σε αυτό το αρχείο.\
|
||||
Παράδειγμα αρχείου διαπιστευτηρίων με περισσότερα από 1 προφίλ:
|
||||
```
|
||||
[default]
|
||||
|
||||
Reference in New Issue
Block a user