OS Management Hub Policies
Use policies to control access to OS Management Hub.
For policy management, define groups of users and dynamic groups of resources. Then create policies that apply to the groups instead of individual users or resources.
Recommended User Group
Create a user group to administer the OS Management Hub service in the tenancy. Any user that belongs to the group automatically inherits the policies and permissions with that specific group.
Required Dynamic Group
Create a dynamic group to include the Management Agents within the tenancy. As new stations and instances register with the OS Management Hub, the dynamic group will include them based on its rule statements. Either create one rule statement for each compartment or a single rule for all compartments that will contain managed instances.
The rule builder provides flexibility for creating rules that might reference multiple resources. Be aware of the differences when using ALL and ANY conditions with rule builder. For more information, see Managing Dynamic Groups .
ANY {resource.type='managementagent', resource.compartment.id='<compartment_ocid>'}
Required Policies
You must have a policy that allows instances to register with OS Management Hub and allows users to manage and operate the service. Before creating the policy, create a dynamic group and the recommended user group. The following is a broad policy, granting full privileges to OS Management Hub resources in all compartments in the tenancy.
The policy statement uses the default identity domain unless you define the identity domain before the group or dynamic group name (for example,
<identity_domain_name>/<dynamic_group_name>
). For more information, see Policy Syntax. allow dynamic-group <dynamic_group> to {OSMH_MANAGED_INSTANCE_ACCESS} in tenancy where request.principal.id = target.managed-instance.id
allow group <user_group> to manage management-agents in tenancy
allow group <user_group> to manage management-agent-install-keys in tenancy
allow group <user_group> to manage osmh-family in tenancy
The first line allows the Management Agents on the managed instances to interact with OS Management Hub. This includes actions such as updating patch levels and reporting status and inventory to the service.
The remaining lines grant permission to a user group to create, update, and delete Management Agents and install keys; and manage and operate the OS Management Hub service.
Resource-Types
OS Management Hub offers both aggregate and individual resource-types for writing policies.
Aggregate Resource Type |
Individual Resource Types |
---|---|
|
|
Details for Verb and Resource-Type Combinations
The following tables show the permissions and API operations covered by each verb. The level of access is cumulative as you go from inspect
> read
> use
> manage
. A plus sign (+) in a table cell indicates incremental access compared to the cell directly above it, whereas "no extra" indicates no incremental access.
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
read |
INSPECT +
|
|
none |
use |
READ +
|
|
none |
manage |
USE +
|
|
none |
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
read |
INSPECT +
|
|
|
use |
READ +
|
none |
|
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
read |
INSPECT +
|
|
|
use |
READ +
|
|
|
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
read |
INSPECT +
|
|
|
use |
READ +
|
|
|
manage |
USE +
|
|
none |
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
read |
INSPECT +
|
|
none |
use |
READ +
|
|
none |
manage |
USE +
|
|
|
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
read |
INSPECT +
|
|
|
use |
READ +
|
|
|
manage |
USE +
|
|
none |
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
read |
INSPECT +
|
|
none |
use |
READ +
|
|
none |
manage |
USE +
|
|
|
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
read |
INSPECT +
|
|
none |
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
|
read |
INSPECT +
|
|
|
use |
READ +
|
|
none |
manage |
USE +
|
|
none |
Verbs | Permissions | APIs Fully Covered | APIs Partially Covered |
---|---|---|---|
inspect |
|
|
none |
manage |
INSPECT +
|
|
none |
Permissions Required for Each API Operation
API Operation | Permissions Required to Use the Operation |
---|---|
CreateLifecycleEnvironment |
OSMH_LIFECYCLE_ENVIRONMENT_CREATE |
ListLifecycleEnvironments |
OSMH_LIFECYCLE_ENVIRONMENT_INSPECT |
GetLifecycleEnvironment |
OSMH_LIFECYCLE_ENVIRONMENT_READ |
UpdateLifecycleEnvironment |
OSMH_LIFECYCLE_ENVIRONMENT_UPDATE |
DeleteLifecycleEnvironment |
OSMH_LIFECYCLE_ENVIRONMENT_DELETE |
ListLifecycleStages |
OSMH_LIFECYCLE_STAGE_INSPECT |
GetLifecycleStage |
OSMH_LIFECYCLE_STAGE_READ |
AttachManagedInstanceToLifecycleStage |
|
DetachManagedInstanceFromLifecycleStage |
|
PromoteSoftwareSourceToLifecycleStage |
|
ListLifecycleStageInstalledPackages |
|
ListManagedInstances |
|
GetManagedInstance |
|
UpdateManagedInstance |
|
ListInstalledPackagesOnManagedInstance |
OSMH_MANAGED_INSTANCE_READ |
ListAvailablePackagesForManagedInstance |
OSMH_MANAGED_INSTANCE_READ |
ListUpdatablePackagesForManagedInstance |
OSMH_MANAGED_INSTANCE_READ |
ListErrataOnManagedInstance |
OSMH_MANAGED_INSTANCE_READ |
ListAvailableSoftwareSourcesForManagedInstance |
|
InstallPackagesOnManagedInstance |
|
RemovePackagesFromManagedInstance |
|
UpdatePackagesOnManagedInstance |
|
UpdateAllPackagesOnManagedInstance |
|
RefreshSoftwareOnManagedInstance |
|
AttachSoftwareSourcesToManagedInstance |
|
DetachSoftwareSourcesFromManagedInstance |
OSMH_MANAGED_INSTANCE_REMOVE_SOFTWARE_SOURCE |
ManageModuleStreamsOnManagedInstance |
OSMH_MANAGED_INSTANCE_MANAGE_MODULE_STREAM |
EnableModuleStreamOnManagedInstance |
OSMH_MANAGED_INSTANCE_ENABLE_MODULE_STREAM |
DisableModuleStreamOnManagedInstance |
OSMH_MANAGED_INSTANCE_DISABLE_MODULE_STREAM |
SwitchModuleStreamOnManagedInstance |
OSMH_MANAGED_INSTANCE_SWITCH_MODULE_STREAM |
InstallModuleStreamProfileOnManagedInstance |
OSMH_MANAGED_INSTANCE_INSTALL_MODULE_STREAM_PROFILE |
RemoveModuleStreamProfileFromManagedInstance |
OSMH_MANAGED_INSTANCE_REMOVE_MODULE_STREAM_PROFILE |
ListModuleStreamsOnManagedInstance |
OSMH_MANAGED_INSTANCE_READ |
UpdateAllPackagesOnManagedInstancesInCompartment |
OSMH_MANAGED_INSTANCE_INSTALL_UPDATE |
SummarizeManagedInstanceAnalytics |
OSMH_MANAGED_INSTANCE_READ |
GetManagedInstanceAnalyticContent |
OSMH_MANAGED_INSTANCE_READ |
GetManagedInstanceContent |
OSMH_MANAGED_INSTANCE_READ |
CreateManagedInstanceGroup |
|
ListManagedInstanceGroups |
OSMH_MANAGED_INSTANCE_GROUP_INSPECT |
GetManagedInstanceGroup |
|
UpdateManagedInstanceGroup |
|
DeleteManagedInstanceGroup |
|
AttachManagedInstancesToManagedInstanceGroup |
And one or more of the following:
|
DetachManagedInstancesFromManagedInstanceGroup |
OSMH_MANAGED_INSTANCE_GROUP_DETACH_INSTANCE |
DetachManagedInstancesFromManagedInstanceGroup |
OSMH_MANAGED_INSTANCE_GROUP_DETACH_INSTANCE |
AttachSoftwareSourcesToManagedInstanceGroup |
|
DetachSoftwareSourcesFromManagedInstanceGroup |
|
ListAvailableSoftwareSourcesForManagedInstanceGroup |
|
InstallPackagesOnManagedInstanceGroup |
|
RemovePackagesFromManagedInstanceGroup |
|
ListInstalledPackagesOnManagedInstanceGroup |
OSMH_MANAGED_INSTANCE_GROUP_READ |
ListAvailablePackagesForManagedInstanceGroup |
OSMH_MANAGED_INSTANCE_GROUP_READ |
ManageModuleStreamsOnManagedInstanceGroup |
|
EnableModuleStreamOnManagedInstanceGroup |
|
DisableModuleStreamOnManagedInstanceGroup |
|
InstallModuleStreamProfileOnManagedInstanceGroup |
|
RemoveModuleStreamProfileFromManagedInstanceGroup |
|
ListModuleStreamsOnManagedInstanceGroup |
|
ListAvailableModuleStreamsForManagedInstanceGroup |
|
CreateProfile |
And at most one of the following:
|
GetProfile |
OSMH_PROFILE_READ |
ListProfiles |
OSMH_PROFILE_INSPECT |
UpdateProfile |
OSMH_PROFILE_UPDATE |
DeleteProfile |
OSMH_PROFILE_DELETE |
CreateManagementStation |
OSMH_MANAGEMENT_STATION_CREATE |
ListManagementStations |
OSMH_MANAGEMENT_STATION_INSPECT |
GetManagementStation |
OSMH_MANAGEMENT_STATION_READ |
UpdateManagementStation |
OSMH_MANAGEMENT_STATION_UPDATE |
DeleteManagementStation |
OSMH_MANAGEMENT_STATION_DELETE |
ListMirrors |
OSMH_MANAGEMENT_STATION_READ |
SynchronizeMirrors |
OSMH_MANAGEMENT_STATION_UPDATE |
SynchronizeSingleMirrors |
OSMH_MANAGEMENT_STATION_UPDATE |
ListScheduledJobs |
OSMH_SCHEDULED_JOB_INSPECT |
CreateScheduledJob |
And one or more of the following:
|
GetScheduledJob |
OSMH_SCHEDULED_JOB_READ |
UpdateScheduledJob |
OSMH_SCHEDULED_JOB_UPDATE |
DeleteScheduledJob |
OSMH_SCHEDULED_JOB_DELETE |
RunScheduledJobNow |
OSMH_SCHEDULED_JOB_UPDATE |
ListWorkRequests |
OSMH_WORK_REQUEST_INSPECT |
GetWorkRequest |
OSMH_WORK_REQUEST_READ |
ListWorkRequestErrors |
OSMH_WORK_REQUEST_READ |
ListWorkRequestLogs |
OSMH_WORK_REQUEST_READ |
ListSoftwareSources |
OSMH_SOFTWARE_SOURCE_INSPECT |
GetSoftwareSource |
OSMH_SOFTWARE_SOURCE_READ |
UpdateSoftwareSource |
OSMH_SOFTWARE_SOURCE_UPDATE |
CreateSoftwareSource |
OSMH_SOFTWARE_SOURCE_CREATE |
DeleteSoftwareSource |
OSMH_SOFTWARE_SOURCE_DELETE |
ListSoftwarePackages |
OSMH_SOFTWARE_SOURCE_READ |
GetSoftwarePackage |
OSMH_SOFTWARE_SOURCE_READ |
ListErrata |
No authorization needed as it's shared public information. This API will only be authenticated. |
GetErratum |
No authorization needed as it's shared public information. This API will only be authenticated. |
ListModuleStreams |
OSMH_SOFTWARE_SOURCE_READ |
ListModuleStreamProfiles |
OSMH_SOFTWARE_SOURCE_READ |
QueryModuleStreamProfilesInSoftwareSources |
OSMH_SOFTWARE_SOURCE_READ |
GetModuleStream |
OSMH_SOFTWARE_SOURCE_READ |
GetModuleStreamProfile |
OSMH_SOFTWARE_SOURCE_READ |
ChangeAvailabilityOfSoftwareSources |
OSMH_SOFTWARE_SOURCE_UPDATE |
ListPackageGroups |
OSMH_SOFTWARE_SOURCE_READ |
GetPackageGroup |
OSMH_SOFTWARE_SOURCE_READ |
QueryPackageGroupsInSoftwareSources |
OSMH_SOFTWARE_SOURCE_READ |
ListSoftwareSourceVendors |
OSMH_SOFTWARE_SOURCE_INSPECT |
ListEntitlements |
OSMH_ENTITLEMENTS_INSPECT |
CreateEntitlement |
OSMH_ENTITLEMENTS_CREATE |