בדף הזה מוסבר איך לנהל את הגישה למערכי נתונים ולמאגרי נתונים של Cloud Healthcare API באמצעות הרשאות של ניהול זהויות והרשאות גישה (IAM). באמצעות IAM תוכלו לקבוע למי תהיה גישה למערכי הנתונים ולמאגרי הנתונים שלכם. מידע נוסף על IAM ל-Cloud Healthcare API זמין במאמר בנושא בקרת גישה.
סקירה כללית של מדיניות IAM
הגישה למשאב מנוהלת באמצעות מדיניות IAM. מדיניות מכילה מערך שנקרא bindings. המערך הזה מכיל אוסף של קישורים, שהם שיוכים בין חשבונות ראשיים, כמו חשבון משתמש או חשבון שירות, לבין תפקיד. כללי המדיניות מיוצגים באמצעות JSON או YAML.
בדוגמה הבאה של מדיניות אפשר לראות ש-user-1@example.com קיבל את התפקיד roles/healthcare.datasetAdmin, ו-user-2@example.com ו-service-account-13@ קיבלו את התפקיד roles/healthcare.datasetViewer:
{ "etag":"bytes", "bindings": [ { "role":"roles/healthcare.datasetAdmin", "members": [ "user:user-1@example.com" ] }, { "role":"roles/healthcare.datasetViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com" ] } ] }
כדי לעדכן מדיניות של משאב, צריך להשתמש בתבנית קריאה-שינוי-כתיבה. אין שיטות נפרדות ליצירה, לשינוי ולביטול של גישת משתמשים.
כדי לעדכן מדיניות:
- קוראים את המדיניות הנוכחית באמצעות קריאה ל-method
getIamPolicy()של המשאב. לדוגמה, כדי לקרוא את המדיניות הנוכחית של קבוצת נתונים, קוראים אתprojects.locations.datasets.getIamPolicy. - כדי להוסיף או להסיר חשבונות משתמשים רלוונטיים והרשאות לתפקידים שלהם, עורכים את המדיניות שמוחזרת באמצעות כלי לעריכת טקסט או באופן פרוגרמטי.
- כותבים את המדיניות המעודכנת באמצעות קריאה ל-method
setIamPolicy()של המשאב. לדוגמה, כדי לכתוב את המדיניות המעודכנת של קבוצת נתונים, קוראים ל-projects.locations.datasets.setIamPolicy.
שימוש ב-IAM במאגרי מידע של הסכמות
בקטעים הבאים מוסבר איך לקבל, לשנות ולהגדיר מדיניות למאגר הסכמה. הקטעים האלה מתבססים על מדיניות לדוגמה:
{ "etag":"bytes", "bindings": [ { "role":"roles/healthcare.consentStoreAdmin", "members": [ "user:user-1@example.com" ] }, { "role":"roles/healthcare.consentReader", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com" ] } ] }
אחזור מדיניות
בדוגמאות הבאות אפשר לראות איך קוראים מדיניות IAM ברמת מאגר ההסכמה. מידע נוסף זמין במאמר projects.locations.datasets.consentStores.getIamPolicy.
המסוף
כדי לראות את מדיניות ה-IAM של מאגר הסכמה:
- נכנסים לדף Datasets במסוף Google Cloud .
- לוחצים על המזהה של מערך הנתונים שמכיל את מאגר ההסכמות, ואז בוחרים את מאגר ההסכמות שרוצים לקבל לגביו מדיניות.
- לוחצים על הצגת חלונית המידע.
- כדי לראות את החשבונות הראשיים שהוקצה להם תפקיד מסוים, מרחיבים את התפקיד.
gcloud
כדי לראות את מדיניות ה-IAM של מאגר הסכמה, מריצים את הפקודה gcloud healthcare consent-stores get-iam-policy. מציינים את השם של מאגר ההסכמות, את השם של מערך הנתונים ואת המיקום.
gcloud healthcare consent-stores get-iam-policy CONSENT_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
אם הבקשה מצליחה, מוצגים הקישורים.
bindings: - members: - user:user-1@example.com role: roles/healthcare.consentStoreAdmin - serviceAccount:service-account-13@ - user:user-2@example.com role: roles/healthcare.consentReader etag: bytes version: VERSION_NUMBER
Node.js
Python
curl
כדי לקרוא את מדיניות ה-IAM של מאגר הסכמה, שולחים בקשת GET ומציינים את שם מערך הנתונים, את שם מאגר ההסכמה ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת GET באמצעות curl:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/consentStores/CONSENT_STORE_ID:getIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.consentStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.consentReader",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
PowerShell
כדי לקרוא את מדיניות ה-IAM של מאגר הסכמה, שולחים בקשת GET ומציינים את שם מערך הנתונים, את שם מאגר ההסכמה ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת GET באמצעות Windows PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/consentStores/CONSENT_STORE_ID:getIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.consentStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.consentReader",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
שינוי מדיניות
בדוגמאות הבאות מוענק למשתמש חדש התפקיד roles/healthcare.consentReader. מידע נוסף זמין במאמר projects.locations.datasets.consentStores.setIamPolicy.
הגדרת מדיניות
המסוף
כדי להגדיר מדיניות IAM ברמת מאגר ההסכמות, מבצעים את השלבים הבאים:
- נכנסים לדף Datasets במסוף Google Cloud .
- לוחצים על המזהה של מערך הנתונים שמכיל את מאגר ההסכמות, ואז בוחרים את מאגר ההסכמות שרוצים להגדיר לו מדיניות.
- לוחצים על הצגת חלונית המידע.
- לוחצים על Add principal.
- בשדה New principals, מזינים את הזהות (או הזהויות) שצריכה גישה למאגר הסכמה.
- ברשימה Select a role, בקטע Cloud Healthcare, בוחרים את ההרשאה שרוצים להעניק. לדוגמה, בעל הרשאת צפייה במאגר הסכמה ב-Healthcare.
- לוחצים על Save.
gcloud
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.consentReader:
{ "role":"roles/healthcare.consentReader", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, מריצים את הפקודה המתאימה של set-iam-policy כדי שהשינויים יתעדכנו. כדי להגדיר מדיניות ברמת מאגר הסכמה, מריצים את הפקודה gcloud healthcare consent-stores set-iam-policy. מציינים את השם של מאגר ההסכמה, את השם של מערך הנתונים, את המיקום ואת הנתיב לקובץ המדיניות שיצרתם.
gcloud healthcare consent-stores set-iam-policy CONSENT_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ POLICY_FILE_NAME
אם הבקשה מצליחה, מוצגים השם של מאגר ההסכמה והקישורים.
Updated IAM policy for consentStore [CONSENT_STORE_ID]. bindings: - members: - user:user-1@example.com role: roles/healthcare.consentStoreAdmin - serviceAccount:service-account-13@ - user:user-2@example.com - user:NEW_USER_EMAIL_ADDRESS role: roles/healthcare.consentReader etag: bytes version: VERSION_NUMBER
Node.js
Python
curl
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.consentReader:
{ "role":"roles/healthcare.consentReader", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.consentStores.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת מאגר ההסכמות, שולחים POSTבקשה ומציינים את שם מערך הנתונים, את שם מאגר ההסכמות, את
המדיניות
ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl להענקת התפקיד הקיים roles/healthcare.consentReader למשתמש חדש:
Policy.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'policy': { 'bindings': [ { 'role':'roles/healthcare.consentStoreAdmin', 'members': [ 'user:user-1@example.com' ] }, { 'role':'roles/healthcare.consentReader', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/consentStores/CONSENT_STORE_ID:setIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.consentStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.consentReader",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
PowerShell
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.consentReader:
{ "role":"roles/healthcare.consentReader", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.consentStores.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת מאגר ההסכמות, שולחים POSTבקשה ומציינים את שם מערך הנתונים, את שם מאגר ההסכמות, את
המדיניות
ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות Windows PowerShell להקצאת התפקיד הקיים roles/healthcare.consentReader למשתמש חדש:
Policy.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'policy': { 'bindings': [ { 'role': 'roles/healthcare.consentStoreAdmin', 'members': [ 'user:user-1@example.com', ] }, { 'role': 'roles/healthcare.consentReader', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/consentStores/CONSENT_STORE_ID:setIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.consentStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.consentReader",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
שימוש ב-IAM עם מערכי נתונים
בקטעים הבאים מוסבר איך לקבל, לשנות ולהגדיר מדיניות עבור מערך נתונים. הקטעים האלה מתבססים על מדיניות לדוגמה:
{ "etag":"bytes", "bindings": [ { "role":"roles/healthcare.datasetAdmin", "members": [ "user:user-1@example.com" ] }, { "role":"roles/healthcare.datasetViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com" ] } ] }
אחזור מדיניות
בדוגמאות הבאות אפשר לראות איך קוראים מדיניות IAM ברמת מערך הנתונים. מידע נוסף זמין במאמר projects.locations.datasets.getIamPolicy.
curl
כדי לקרוא את מדיניות ה-IAM של מערך נתונים, שולחים בקשת GET ומציינים את השם של מערך הנתונים ואסימון גישה.
בדוגמה הבאה מוצגת בקשת GET באמצעות curl:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:getIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.datasetAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.datasetViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
PowerShell
כדי לראות את מדיניות ה-IAM של מערך נתונים, שולחים בקשת GET ומציינים את השם של מערך הנתונים ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת GET באמצעות Windows PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:getIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.datasetAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.datasetViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
המסוף
כדי לראות את מדיניות ה-IAM של מערך נתונים:- נכנסים לדף Datasets במסוף Google Cloud .
- בוחרים מערך נתונים ולוחצים על הצגת חלונית המידע.
- כדי לראות את החשבונות הראשיים שהוקצה להם תפקיד מסוים, מרחיבים את התפקיד.
gcloud
כדי לראות את מדיניות ה-IAM של מערך נתונים, מריצים את הפקודה gcloud healthcare datasets get-iam-policy. מציינים את השם של מערך הנתונים ואת המיקום.
gcloud healthcare datasets get-iam-policy DATASET_ID \ --location=LOCATION
אם הבקשה מצליחה, מוצגים הקישורים.
bindings: - members: - serviceAccount:service-account-13@ - user:user-2@example.com role: roles/healthcare.datasetViewer etag: bytes version: VERSION_NUMBER
Go
Java
Node.js
Python
שינוי מדיניות
בדוגמאות הבאות מוענק למשתמש חדש התפקיד roles/healthcare.datasetViewer:
הגדרת מדיניות
המסוף
כדי להגדיר מדיניות IAM ברמת מערך הנתונים, מבצעים את השלבים הבאים:
- נכנסים לדף Datasets במסוף Google Cloud .
- בוחרים את מערך הנתונים שרוצים להגדיר לו מדיניות ולוחצים על הצגת חלונית המידע.
- לוחצים על Add principal.
- בשדה New principals, מזינים את הזהות (או הזהויות) שצריכה גישה למערך הנתונים.
- ברשימה Select a role, בקטע Cloud Healthcare, בוחרים את ההרשאה שרוצים להעניק. לדוגמה, Healthcare Dataset Viewer.
- לוחצים על Save.
gcloud
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.datasetViewer:
{ "role":"roles/healthcare.datasetViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, מריצים את הפקודה המתאימה של set-iam-policy כדי שהשינויים יתעדכנו. כדי להגדיר מדיניות ברמת מערך הנתונים, מריצים את הפקודה gcloud healthcare datasets set-iam-policy. מציינים את השם של מערך הנתונים, את המיקום ואת הנתיב לקובץ המדיניות שיצרתם.
gcloud healthcare datasets set-iam-policy DATASET_ID \ --location=LOCATION \ POLICY_FILE_NAME
אם הבקשה מצליחה, מוצגים שם מערך הנתונים והקישורים.
Updated IAM policy for dataset [DATASET_ID]. bindings: - members: - serviceAccount:service-account-13@ - user:user-2@example.com role: roles/healthcare.datasetAdmin - user:user-1@example.com - user:NEW_USER_EMAIL_ADDRESS role: roles/healthcare.datasetViewer etag: bytes version: VERSION_NUMBER
curl
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.datasetViewer:
{ "role":"roles/healthcare.datasetViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת מערך הנתונים, שולחים POSTבקשה ומציינים את השם של מערך הנתונים, את המדיניות ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl להענקת התפקיד הקיים roles/healthcare.datasetViewer למשתמש חדש:
Policy.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'policy': { 'bindings': [ { 'role':'roles/healthcare.datasetAdmin', 'members': [ 'user:user-1@example.com' ] }, { 'role':'roles/healthcare.datasetViewer', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:setIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.datasetAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.datasetViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
PowerShell
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.datasetViewer:
{ "role":"roles/healthcare.datasetViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת מערך הנתונים, שולחים POSTבקשה ומציינים את השם של מערך הנתונים, את המדיניות ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות Windows PowerShell להקצאת התפקיד הקיים roles/healthcare.datasetViewer למשתמש חדש:
Policy.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'policy': { 'bindings': [ { 'role': 'roles/healthcare.datasetAdmin', 'members': [ 'user:user-1@example.com' ] }, { 'role': 'roles/healthcare.datasetViewer', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID:setIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.datasetAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.datasetViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
Go
Java
Node.js
Python
שימוש ב-IAM עם מאגרי DICOM
בקטעים הבאים מוסבר איך לקבל, לשנות ולהגדיר מדיניות עבור מאגר DICOM. הקטעים האלה מתבססים על מדיניות לדוגמה:
{ "etag":"bytes", "bindings": [ { "role":"roles/healthcare.dicomStoreAdmin", "members": [ "user:user-1@example.com" ] }, { "role":"roles/healthcare.dicomViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com" ] } ] }
אחזור מדיניות
בדוגמאות הבאות אפשר לראות איך קוראים מדיניות IAM ברמת מאגר DICOM. מידע נוסף זמין במאמר projects.locations.datasets.dicomStores.getIamPolicy.
המסוף
כדי לראות את מדיניות ה-IAM של מאגר DICOM:
- נכנסים לדף Datasets במסוף Google Cloud .
- לוחצים על מזהה מערך הנתונים שמכיל את מאגר DICOM, ואז בוחרים את מאגר DICOM שרוצים לקבל לגביו מדיניות.
- לוחצים על הצגת חלונית המידע.
- כדי לראות את החשבונות הראשיים שהוקצה להם תפקיד מסוים, מרחיבים את התפקיד.
gcloud
כדי לראות את מדיניות ה-IAM של מאגר DICOM, מריצים את הפקודה gcloud healthcare dicom-stores get-iam-policy. מציינים את שם מאגר DICOM, את שם מערך הנתונים ואת המיקום.
gcloud healthcare dicom-stores get-iam-policy DICOM_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
אם הבקשה מצליחה, מוצגים הקישורים.
bindings: - members: - user:user-1@example.com role: roles/healthcare.dicomStoreAdmin - serviceAccount:service-account-13@ - user:user-2@example.com role: roles/healthcare.dicomViewer etag: bytes version: VERSION_NUMBER
Go
Java
Node.js
Python
curl
כדי לקרוא את מדיניות IAM של מאגר DICOM, שולחים בקשת GET ומציינים את שם מערך הנתונים, את שם מאגר DICOM ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת GET באמצעות curl:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:getIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.dicomStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.dicomViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
PowerShell
כדי לקרוא את מדיניות IAM של מאגר DICOM, שולחים בקשת GET ומציינים את שם מערך הנתונים, את שם מאגר DICOM ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת GET באמצעות Windows PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:getIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.dicomStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.dicomViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
שינוי מדיניות
בדוגמאות הבאות מוענק למשתמש חדש התפקיד roles/healthcare.dicomViewer. מידע נוסף זמין במאמר projects.locations.datasets.dicomStores.setIamPolicy.
הגדרת מדיניות
המסוף
כדי להגדיר מדיניות IAM ברמת חנות DICOM, מבצעים את השלבים הבאים:
- נכנסים לדף Datasets במסוף Google Cloud .
- לוחצים על מזהה מערך הנתונים שמכיל את מאגר DICOM, ואז בוחרים את מאגר DICOM שרוצים להגדיר לו מדיניות.
- לוחצים על הצגת חלונית המידע.
- לוחצים על Add principal.
- בשדה New principals, מזינים את הזהות (או הזהויות) שצריכה גישה למאגר DICOM.
- ברשימה Select a role, בקטע Cloud Healthcare, בוחרים את ההרשאה שרוצים להעניק. לדוגמה, Healthcare DICOM Store Viewer.
- לוחצים על Save.
gcloud
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.dicomViewer:
{ "role":"roles/healthcare.dicomViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, מריצים את הפקודה המתאימה של set-iam-policy כדי שהשינויים יתעדכנו. כדי להגדיר מדיניות ברמת מאגר DICOM, מריצים את הפקודה gcloud healthcare dicom-stores set-iam-policy. מציינים את שם מאגר ה-DICOM, את שם מערך הנתונים, את המיקום ואת הנתיב לקובץ המדיניות שיצרתם.
gcloud healthcare dicom-stores set-iam-policy DICOM_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ POLICY_FILE_NAME
אם הבקשה מצליחה, מוצגים שם מאגר ה-DICOM והקישורים.
Updated IAM policy for dicomStore [DICOM_STORE_ID]. bindings: - members: - user:user-1@example.com role: roles/healthcare.dicomStoreAdmin - serviceAccount:service-account-13@ - user:user-2@example.com - user:NEW_USER_EMAIL_ADDRESS role: roles/healthcare.dicomViewer etag: bytes version: VERSION_NUMBER
Go
Java
Node.js
Python
curl
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.dicomViewer:
{ "role":"roles/healthcare.dicomViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.dicomStores.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת מאגר DICOM, שולחים בקשת POST ומציינים את שם מערך הנתונים, את שם מאגר DICOM, את המדיניות ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl להענקת התפקיד הקיים roles/healthcare.dicomViewer למשתמש חדש:
Policy.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'policy': { 'bindings': [ { 'role':'roles/healthcare.dicomStoreAdmin', 'members': [ 'user:user-1@example.com' ] }, { 'role':'roles/healthcare.dicomViewer', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:setIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.dicomStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.dicomViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
PowerShell
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק תפקיד למשתמש חדש, מוסיפים את כתובת האימייל שלו למערך members
מתחת לקישור roles/healthcare.dicomViewer:
{ "role":"roles/healthcare.dicomViewer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.dicomStores.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת מאגר DICOM, שולחים בקשת POST ומציינים את שם מערך הנתונים, את שם מאגר DICOM, את המדיניות ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות Windows PowerShell להקצאת התפקיד הקיים roles/healthcare.dicomViewer למשתמש חדש:
Policy.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'policy': { 'bindings': [ { 'role': 'roles/healthcare.dicomStoreAdmin', 'members': [ 'user:user-1@example.com', ] }, { 'role': 'roles/healthcare.dicomViewer', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:setIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.dicomStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.dicomViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
שימוש ב-IAM עם מאגרי FHIR
בקטעים הבאים מוסבר איך לקבל, לשנות ולהגדיר מדיניות עבור מאגר FHIR. הקטעים האלה מתבססים על מדיניות לדוגמה:
{ "etag":"bytes", "bindings": [ { "role":"roles/healthcare.fhirStoreAdmin", "members": [ "user:user-1@example.com" ] }, { "role":"roles/healthcare.fhirResourceReader", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com" ] } ] }
אחזור מדיניות
בדוגמאות הבאות אפשר לראות איך קוראים מדיניות IAM ברמת מאגר FHIR. מידע נוסף זמין במאמר projects.locations.datasets.fhirStores.getIamPolicy.
המסוף
כדי לראות את מדיניות ה-IAM של מאגר FHIR:
- נכנסים לדף Datasets במסוף Google Cloud .
- לוחצים על המזהה של מערך הנתונים שמכיל את מאגר ה-FHIR, ואז בוחרים את מאגר ה-FHIR שעבורו רוצים לקבל מדיניות.
- לוחצים על הצגת חלונית המידע.
- כדי לראות את החשבונות הראשיים שהוקצה להם תפקיד מסוים, מרחיבים את התפקיד.
gcloud
כדי לראות את מדיניות ה-IAM של מאגר FHIR, מריצים את הפקודה gcloud healthcare fhir-stores get-iam-policy. מציינים את השם של מאגר FHIR, את השם של מערך הנתונים ואת המיקום.
gcloud healthcare fhir-stores get-iam-policy FHIR_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
אם הבקשה מצליחה, מוצגים הקישורים.
bindings: - members: - user:user-1@example.com role: roles/healthcare.fhirStoreAdmin - serviceAccount:service-account-13@ - user:user-2@example.com role: roles/healthcare.fhirResourceReader etag: bytes version: VERSION_NUMBER
Go
Java
Node.js
Python
curl
כדי לקרוא את מדיניות ה-IAM של מאגר FHIR, צריך לשלוח בקשת POST ולציין את שם קבוצת הנתונים, את שם מאגר ה-FHIR ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:getIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.fhirStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.fhirResourceReader",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
PowerShell
כדי לקרוא את מדיניות ה-IAM של מאגר FHIR, צריך לשלוח בקשת POST ולציין את שם קבוצת הנתונים, את שם מאגר ה-FHIR ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות Windows PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:getIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.fhirStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.fhirResourceReader",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
שינוי מדיניות
בדוגמאות הבאות מוענק למשתמש חדש התפקיד roles/healthcare.fhirResourceReader. מידע נוסף זמין במאמר projects.locations.datasets.fhirStores.setIamPolicy.
הגדרת מדיניות
המסוף
כדי להגדיר מדיניות IAM ברמת מאגר FHIR, מבצעים את השלבים הבאים:
- נכנסים לדף Datasets במסוף Google Cloud .
- לוחצים על המזהה של מערך הנתונים שמכיל את מאגר ה-FHIR, ואז בוחרים את מאגר ה-FHIR שרוצים להגדיר לו מדיניות.
- לוחצים על הצגת חלונית המידע.
- לוחצים על Add principal.
- בשדה New principals, מזינים את הזהות (או הזהויות) שצריכה גישה למאגר FHIR.
- ברשימה Select a role, בקטע Cloud Healthcare, בוחרים את ההרשאה שרוצים להעניק. לדוגמה, Healthcare FHIR Resource Reader.
- לוחצים על Save.
gcloud
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק למשתמש חדש את התפקיד, מוסיפים את כתובת האימייל שלו למערך members בקטע roles/healthcare.fhirResourceReader binding:
{ "role":"roles/healthcare.fhirResourceReader", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, מריצים את הפקודה המתאימה של set-iam-policy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות ברמת מאגר FHIR, מריצים את הפקודה gcloud healthcare fhir-stores set-iam-policy. מציינים את השם של מאגר FHIR, את השם של מערך הנתונים, את המיקום ואת הנתיב לקובץ המדיניות שיצרתם.
gcloud healthcare fhir-stores set-iam-policy FHIR_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ POLICY_FILE_NAME
אם הבקשה תאושר, יוצגו שם מאגר ה-FHIR והקישורים.
Updated IAM policy for fhirStore [FHIR_STORE_ID]. bindings: - members: - serviceAccount:service-account-13@ - user:user-2@example.com - user:NEW_USER_EMAIL_ADDRESS role: roles/healthcare.fhirResourceReader etag: bytes version: VERSION_NUMBER
Go
Java
Node.js
Python
curl
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך שלetag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק למשתמש חדש את התפקיד, מוסיפים את כתובת האימייל שלו למערך members בקטע roles/healthcare.fhirResourceReader binding:
{ "role":"roles/healthcare.fhirResourceReader", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.fhirStores.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת מאגר FHIR, שולחים בקשת POST ומציינים את שם מערך הנתונים, את שם מאגר ה-FHIR, את המדיניות ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl להענקת התפקיד הקיים roles/healthcare.fhirResourceReader למשתמש חדש:
Policy.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'policy': { 'bindings': [ { 'role':'roles/healthcare.fhirStoreAdmin', 'members': [ 'user:user-1@example.com' ] }, { 'role':'roles/healthcare.fhirResourceReader', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:setIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.fhirStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.fhirResourceViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
PowerShell
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק למשתמש חדש את התפקיד, מוסיפים את כתובת האימייל שלו למערך members בקטע roles/healthcare.fhirResourceReader binding:
{ "role":"roles/healthcare.fhirResourceReader", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.fhirStores.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת מאגר FHIR, שולחים בקשת POST ומציינים את שם מערך הנתונים, את שם מאגר ה-FHIR, את המדיניות ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות Windows PowerShell להקצאת התפקיד הקיים roles/healthcare.fhirResourceReader למשתמש חדש:
Policy.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'policy': { 'bindings': [ { 'role': 'roles/healthcare.fhirStoreAdmin', 'members': [ 'user:user-1@example.com', ] }, { 'role': 'roles/healthcare.fhirResourceReader', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:setIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.fhirStoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.fhirResourceViewer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
שימוש ב-IAM עם חנויות HL7v2
בקטעים הבאים מוסבר איך לקבל, לשנות ולהגדיר מדיניות לחנות HL7v2. הקטעים האלה מתבססים על מדיניות לדוגמה:
{ "etag":"bytes", "bindings": [ { "role":"roles/healthcare.hl7V2StoreAdmin", "members": [ "user:user-1@example.com" ] }, { "role":"roles/healthcare.hl7V2Consumer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com" ] } ] }
אחזור מדיניות
בדוגמאות הבאות אפשר לראות איך קוראים מדיניות IAM ברמת מאגר HL7v2. מידע נוסף זמין במאמר projects.locations.datasets.hl7V2Stores.getIamPolicy.
המסוף
כדי לראות את מדיניות ה-IAM של מאגר HL7v2:
- נכנסים לדף Datasets במסוף Google Cloud .
- לוחצים על המזהה של מערך הנתונים שמכיל את החנות ב-HL7v2, ואז בוחרים את החנות ב-HL7v2 שרוצים לקבל לגביה מדיניות.
- לוחצים על הצגת חלונית המידע.
- כדי לראות את החשבונות הראשיים שהוקצה להם תפקיד מסוים, מרחיבים את התפקיד.
gcloud
כדי לראות את מדיניות ה-IAM של מאגר HL7v2, מריצים את הפקודה hl7v2-stores get-iam-policy. מציינים את השם של חנות HL7v2, את השם של מערך הנתונים ואת המיקום.
gcloud healthcare hl7v2-stores get-iam-policy HL7V2_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
אם הבקשה מצליחה, מוצגים הקישורים.
bindings: - members: - user:user-1@example.com role: roles/healthcare.hl7v2StoreAdmin - serviceAccount:service-account-13@ - user:user-2@example.com role: roles/healthcare.hl7v2Consumer etag: bytes version: VERSION_NUMBER
curl
כדי לקרוא את מדיניות ה-IAM של חנות HL7v2, שולחים בקשת GET ומציינים את השם של מערך הנתונים, את השם של חנות HL7v2 ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת GET באמצעות curl:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID:getIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.hl7V2StoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.hl7V2Consumer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
PowerShell
כדי לקרוא את מדיניות ה-IAM של חנות HL7v2, שולחים בקשת GET ומציינים את השם של מערך הנתונים, את השם של חנות HL7v2 ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת GET באמצעות Windows PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID:getIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.hl7V2StoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.hl7V2Consumer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com"
]
}
]
}
Go
Java
Node.js
Python
שינוי מדיניות
בדוגמאות הבאות מוענק למשתמש חדש התפקיד roles/healthcare.hl7V2Consumer. מידע נוסף זמין במאמר projects.locations.datasets.hl7V2Stores.setIamPolicy.
הגדרת מדיניות
המסוף
כדי להגדיר מדיניות IAM ברמת מאגר HL7v2, מבצעים את השלבים הבאים:
- נכנסים לדף Datasets במסוף Google Cloud .
- לוחצים על מזהה מערך הנתונים שמכיל את החנות ב-HL7v2, ואז בוחרים את החנות ב-HL7v2 שרוצים להגדיר לה מדיניות.
- לוחצים על הצגת חלונית המידע.
- לוחצים על Add principal.
- בשדה New principals, מזינים את הזהות (או הזהויות) שצריכה גישה לחנות HL7v2.
- ברשימה Select a role, בקטע Cloud Healthcare, בוחרים את ההרשאה שרוצים להעניק. לדוגמה, צרכן הודעות של Healthcare HL7v2.
- לוחצים על Save.
gcloud
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק למשתמש חדש את התפקיד, מוסיפים את כתובת האימייל שלו למערך members בקטע roles/healthcare.hl7V2Consumer binding:
{ "role":"roles/healthcare.hl7V2Consumer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, מריצים את הפקודה המתאימה של set-iam-policy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות ברמת חנות HL7v2, מריצים את הפקודה gcloud healthcare hl7v2-stores set-iam-policy. מציינים את שם החנות ב-HL7v2, את שם מערך הנתונים, את המיקום ואת הנתיב לקובץ המדיניות שיצרתם.
gcloud healthcare hl7v2-stores set-iam-policy HL7V2_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ POLICY_FILE_NAME
אם הבקשה מצליחה, מוצגים שם מאגר HL7v2 והקישורים.
Updated IAM policy for hl7v2Store [HL7V2_STORE_ID]. bindings: - members: - user:user-1@example.com role: roles/healthcare.hl7v2StoreAdmin - serviceAccount:service-account-13@ - user:user-2@example.com - user:NEW_USER_EMAIL_ADDRESS role: roles/healthcare.hl7v2Consumer etag: bytes version: VERSION_NUMBER
curl
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק למשתמש חדש את התפקיד, מוסיפים את כתובת האימייל שלו למערך members בקטע roles/healthcare.hl7V2Consumer binding:
{ "role":"roles/healthcare.hl7V2Consumer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.hl7V2Stores.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת חנות HL7v2, שולחים בקשת POST ומציינים את שם מערך הנתונים, את שם חנות HL7v2, את המדיניות ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl להענקת התפקיד הקיים roles/healthcare.hl7V2Consumer למשתמש חדש.
Policy.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'policy': { 'bindings': [ { 'role':'roles/healthcare.hl7V2StoreAdmin', 'members': [ 'user:user-1@example.com' ] }, { 'role':'roles/healthcare.hl7V2Consumer', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID:setIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.hl7V2StoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.hl7V2Consumer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
PowerShell
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להעניק למשתמש חדש את התפקיד, מוסיפים את כתובת האימייל שלו למערך members בקטע roles/healthcare.hl7V2Consumer binding:
{ "role":"roles/healthcare.hl7V2Consumer", "members": [ "serviceAccount:service-account-13@", "user:user-2@example.com", "user:NEW_USER_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.locations.datasets.hl7V2Stores.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת חנות HL7v2, שולחים בקשת POST ומציינים את שם מערך הנתונים, את שם חנות HL7v2, את המדיניות ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl להענקת התפקיד הקיים roles/healthcare.hl7V2Consumer למשתמש חדש:
Policy.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'policy': { 'bindings': [ { 'role': 'roles/healthcare.hl7V2StoreAdmin', 'members': [ 'user:user-1@example.com', ] }, { 'role': 'roles/healthcare.hl7V2Consumer', 'members': [ 'serviceAccount:service-account-13@', 'user:user-2@example.com', 'user:NEW_USER_EMAIL_ADDRESS' ] } ] } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/hl7V2Stores/HL7V2_STORE_ID:setIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.hl7V2StoreAdmin",
"members": [
"user:user-1@example.com"
]
},
{
"role":"roles/healthcare.hl7V2Consumer",
"members": [
"serviceAccount:service-account-13@",
"user:user-2@example.com",
"user:NEW_USER_EMAIL_ADDRESS"
]
}
]
}
Go
Java
Node.js
Python
שימוש ב-IAM עם Healthcare Natural Language API
בקטעים הבאים מוסבר איך מקבלים, משנים ומגדירים מדיניות עבור Healthcare Natural Language API. הקטעים האלה מתבססים על מדיניות לדוגמה בתור נקודת התחלה:
{ "etag":"bytes", "bindings": [ { "role":"roles/healthcare.nlpServiceViewer", "members": [ "serviceAccount:service-account-13@" ] } ] }
אחזור מדיניות
בדוגמאות הבאות מוצגות דרכים לקרוא מדיניות IAM ברמת הפרויקט. מידע נוסף זמין בשיטה projects.getIamPolicy.
curl
כדי לקרוא את מדיניות ה-IAM של פרויקט, שולחים בקשת POST ומציינים את שם הפרויקט ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.nlpServiceViewer",
"members": [
"serviceAccount:service-account-13@"
]
}
]
}
PowerShell
כדי לראות את מדיניות ה-IAM של פרויקט, שולחים בקשת POST ומציינים את שם הפרויקט ואת טוקן הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות Windows PowerShell:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:getIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.nlpServiceViewer",
"members": [
"serviceAccount:service-account-13@"
]
}
]
}
המסוף
כדי להציג את מדיניות ה-IAM של פרויקט:
- נכנסים לדף IAM במסוף Google Cloud .
- כדי לראות את חשבונות המשתמשים שהוקצו לתפקיד מסוים, לוחצים על Roles ומרחיבים את התפקיד.
gcloud
כדי לראות את מדיניות ה-IAM של פרויקט, מריצים את הפקודה
gcloud projects get-iam-policy. מציינים את שם הפרויקט בבקשה.
gcloud projects get-iam-policy PROJECT_ID
אם הבקשה מצליחה, מוצגים הקישורים.
bindings: - members: - serviceAccount:service-account-13@ role: roles/healthcare.nlpServiceViewer etag: bytes version: VERSION_NUMBER
שינוי מדיניות
בדוגמאות הבאות מוקצה לשירות התפקיד roles/healthcare.nlpServiceViewer. מידע נוסף זמין במאמר projects.setIamPolicy.
הגדרת מדיניות
המסוף
כדי להגדיר מדיניות IAM ברמת הפרויקט:
- נכנסים לדף IAM במסוף Google Cloud .
- לוחצים על הלחצן Edit לצד החשבון הראשי, או לוחצים על Add principal ואז בשדה New principals מזינים את הזהות (או הזהויות) שצריכה גישה לפרויקט.
- ברשימה Select a role, בקטע Cloud Healthcare, בוחרים באפשרות Healthcare Natural Language Service Viewer.
- לוחצים על Save.
gcloud
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להקצות את התפקיד לחשבון שירות חדש, מוסיפים את כתובת האימייל של חשבון השירות למערך members בקטע roles/healthcare.nlpServiceViewerbinding:
{ "role":"roles/healthcare.nlpServiceViewer", "members": [ "serviceAccount:service-account-13@", "serviceAccount:NEW_SERVICE_ACCOUNT_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, מריצים את הפקודה gcloud projects set-iam-policy כדי שהשינויים יתעדכנו. מציינים את הפרויקט ואת הנתיב לקובץ המדיניות שיצרתם.
gcloud projects set-iam-policy PROJECT_STORE_ID \ POLICY_FILE_NAME
אם הבקשה מצליחה, מוצגים שם הפרויקט וההתאמות.
Updated IAM policy for project [PROJECT_ID]. bindings: - members: - serviceAccount:service-account-13@ - serviceAccount:NEW_USER_EMAIL_ADDRESS role: roles/healthcare.nlpServiceViewer etag: bytes version: VERSION_NUMBER
curl
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להקצות את התפקיד לחשבון שירות חדש, מוסיפים את כתובת האימייל של חשבון השירות למערך members בקטע roles/healthcare.nlpServiceViewerbinding:
{ "role":"roles/healthcare.nlpServiceViewer", "members": [ "serviceAccount:service-account-13@", "serviceAccount:NEW_SERVICE_ACCOUNT_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת הפרויקט, שולחים בקשת POST ומציינים את שם הפרויקט, את המדיניות ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl להענקת התפקיד הקיים roles/healthcare.nlpServiceViewer למשתמש חדש:
Policy.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'policy': { 'bindings': [ { 'role':'roles/healthcare.nlpServiceViewer', 'members': [ 'serviceAccount:service-account-13@' ] } ] } }" "https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy"
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.nlpServiceViewer",
"members": [
"serviceAccount:service-account-13@"
]
}
]
}
PowerShell
כדי להקצות או לבטל תפקידים למשתמשים, משנים את המדיניות שאוחזרה באופן פרוגרמטי או באמצעות כלי לעריכת טקסט. הערך של etag משתנה כשהמדיניות משתנה, ולכן צריך לציין את הערך הנוכחי.
כדי להקצות את התפקיד לחשבון שירות חדש, מוסיפים את כתובת האימייל של חשבון השירות למערך members בקטע roles/healthcare.nlpServiceViewerbinding:
{ "role":"roles/healthcare.nlpServiceViewer", "members": [ "serviceAccount:service-account-13@", "serviceAccount:NEW_SERVICE_ACCOUNT_EMAIL_ADDRESS" ] }
members. כדי לבטל את הגישה של החשבון הראשי האחרון שיש לו תפקיד, מוחקים את מערך ה-bindings של התפקיד. אסור שיהיה במדיניות מערך bindings ריק.
אחרי שמשנים את המדיניות ונותנים את התפקידים הרלוונטיים, צריך לבצע קריאה אל projects.setIamPolicy כדי שהשינויים יתעדכנו.
כדי להגדיר מדיניות IAM ברמת הפרויקט, צריך לשלוח POSTבקשה ולציין את שם הפרויקט, את המדיניות ואת אסימון הגישה.
בדוגמה הבאה מוצגת בקשת POST באמצעות curl להענקת התפקיד הקיים roles/healthcare.nlpServiceViewer למשתמש חדש:
Policy.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'policy': { 'bindings': [ { 'role': 'roles/healthcare.nlpServiceViewer', 'members': [ 'serviceAccount:service-account-13@', 'serviceAccount:NEW_USER_EMAIL_ADDRESS' ] } ] } }" ` -Uri "https://cloudresourcemanager.googleapis.com/v1/projects/PROJECT_ID:setIamPolicy" | Select-Object -Expand Content
התגובה היא:
{
"etag":"bytes",
"bindings": [
{
"role":"roles/healthcare.nlpServiceViewer",
"members": [
"serviceAccount:service-account-13@",
"serviceAccount:NEW_USER_EMAIL_ADDRESS"
]
}
]
}