一意の質問値を使用したアクセス・リクエストの作成
すべてのアイデンティティの一意の質問値を使用して、DBUMアクセス・バンドルのアクセス・リクエストを作成します。
すべてのアイデンティティに対する一意の質問値を持つDBUMアクセス・バンドルのアクセスのリクエスト
この例では、Database User Management (DBUM)固有のアクセス・バンドルのリクエストを発行します。 このシナリオでは、勘定科目属性に一意の値(つまり、isIdentitySpecific: true
)を割り当て、勘定科目属性の値(isQuestion: true
)を含めます。
1つのアクセス・リクエストで、複数のアイデンティティに対して複数のアクセス・バンドルをリクエストできます。
- すべてのアイデンティティを一覧表示して、リクエストを発行する特定のグローバル・アイデンティティのIDを取得します。 複数のIDを取得できます。
- すべてのアクセス・バンドルをリストして、割り当てる特定のアクセス・バンドルおよび編成済システムIDのIDを取得します。
- 特定のアカウント・プロファイルのアカウント・プロファイル詳細の取得
- 新しいPOSTアクセス・リクエストの作成
ノート:
1つのアクセス・リクエストで、1つ以上のアクセス・バンドルを複数のアイデンティティに割り当てるようにリクエストできます。
ステップ1: アイデンティティ詳細の取得
すべてのアイデンティティを一覧表示して、リクエストを発行するアイデンティティのIDを取得します。
サンプルcURLcurl -i -X \
POST \
-H \
"Authorization:Bearer <your access token>" \
-H \
"Content-Type:application/json" \
-d \
'{
"keywordContains": ["Bill"],
"suggestedFilter": [],
"filterCriteria": null,
"attributes": ["displayName"]
}' \
'${service-instance-url}/access-governance/identities/${version}/identities'
RESTクライアントを使用したGETコマンドの例
${si}/access-governance/identities/20250331/identities?keywordContains=Bill
レスポンスのサンプル
次のレスポンス本文を含む200レスポンス・コードを受信する必要があります:
{
"id" : "globalId.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.1fbb825aef0ceab8xxxxxxxxxxx",
"type" : "IDENTITY",
"name" : "Bill.Clark@example.COM",
"timeCreated" : "2025-01-21T01:05:35.558Z",
"timeUpdated" : "2025-01-21T01:05:35.558Z",
"entityType" : "USER",
"attributes" : [ {
"name" : "agTerminated",
"value" : false
} ],
"value" : "{\"name\":{\"formatted\":\"Bill Clark\",\"familyName\":\"Clark\",\"givenName\":\"Bill\"},\"userName\":\"Bill.Clark@example.COM\",\"displayName\":\"Bill Clark\",\"primaryEmail\":\"Bill.Clark@example.COM\",\"organization\":{\"value\":\"organization.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.4eec1f689ba5647xxxxxx6\"},\"status\":\"Active\",\"emails\":[{\"primary\":false,\"secondary\":false,\"type\":\"recovery\",\"value\":\"0E5EB262.82DBD46A@testociemail-blackhole.com\",\"verified\":false},{\"primary\":true,\"secondary\":false,\"type\":\"work\",\"value\":\"Bill.Clark@example.COM\",\"verified\":false}],\"addresses\":[],\"phoneNumbers\":[],\"agStatus\":\"AG_ACTIVE\",\"agSubType\":\"WORKFORCE\",\"agRisk\":{\"value\":0,\"customAttributes\":{}},\"agDelegation\":{\"hasDelegations\":false,\"customAttributes\":{}},\"agTerminate\":{\"terminated\":false,\"customAttributes\":{}},\"domainOCID\":\"ocid1.domain.oc1..aaaaaaaayrdl7hgnjeqbpi4nvt72hxtki4uwxxxxxxx\",\"userNameDb2\":\"0E5EB26282DBD46A@testociemailbla\",\"userNameMysql\":\"0E5EB26282DBD46Atestociemailblac\",\"userNameOracle\":\"Bill.Clark@example.COM\",\"userNameMSSQl\":\"_0E5EB26282DBD46A@testociemailblackholecom\",\"agOrganizations\":[],\"targetId\":\"bd49ff2a-5c47-4242-8975-9ba235fbb0ec\",\"identityTargetId\":\"targetId.account.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.1fbb825aef0ceab8c084a645f4953107\",\"compartmentId\":\"resource.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.dd795ea6fd73983db4c97d0eb2c77c91\",\"domainId\":\"resource.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.1540420f1040686f5fcecf2d4043feb5\",\"region\":\"iad:us-ashburn-1\",\"customAttributes\":{\"targetAccounts\":[\"5bb2bb40b6394262ab74539a60714607\"],\"lastModifiedBy\":{\"displayName\":\"Abel Maclead\",\"ref\":\"https://idcs-824f604a4d4b48b8918cde1416682c66.identity.oraclecloud.com:443/admin/v1/Users/e4b4b893e2f8448ab76bf5ba85dad344\",\"resourceType\":\"ACCOUNT\",\"value\":\"ocid1.user.oc1..aaaaaaaaad25h6toymcbv6yf5dlymvwmlcemzmkepltjntiw5r3efzrtkzeq\"},\"createdBy\":{\"displayName\":\"Ama Maclead\",\"ref\":\"https://idcs-824f604a4d4b48b8918cde1416682c66.identity.oraclecloud.com:443/admin/v1/Users/e4b4b893e2f8448ab76bf5ba85dad344\",\"resourceType\":\"ACCOUNT\",\"value\":\"ocid1.user.oc1..aaaaaaaaad25h6toymcbv6yf5dlymvwmlcemzmkepltjntiw5r3efzrtkzeq\"},\"isCorrelated\":true,\"fullDN\":\"0E5EB262.82DBD46A@TESTOCIEMAIL-BLACKHOLE.COM_Tags\",\"domainName\":\"Default\",\"ocid\":\"ocid1.user.oc1..aaaaaaaayb7oyq66q64nytjoy5d4t64asklfeflrx6ghtlarguhhrhg6em6a\",\"compartmentOCID\":\"ocid1.tenancy.oc1..aaaaaaaazp2vvzjsn6newkqrpkwndxpdoixtqfgyhnf4y24h7d5ny27h6f3q\",\"compartmentName\":\"accessgovtest\",\"cloudAccountName\":\"accessgovtest\"},\"id\":\"globalId.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.1fbb825aef0ceab8c084a645f4953107\",\"externalId\":\"5bb2bb40b6394262ab74539a60714607\",\"schemas\":[],\"meta\":{\"resourceType\":\"USER\",\"created\":1737421535558,\"lastModified\":1737421535558,\"version\":\"1\",\"location\":\"\"}}"
}
後で利用するためにアイデンティティを保存します。
ステップ2: アクセス・バンドルおよび調整済システム詳細の取得
すべてのアクセス・バンドルをリストして、割り当てるIDおよび編成済システムIDを取得します。 このシナリオでは、アプリケーション・ロールにDBUM固有のアクセス・バンドルを使用します。
サンプルcURLcurl -i -X \
GET \
-H \
"Authorization:Bearer <your access token>" \
'${service-instance-url}/access-governance/access-controls/20250331/accessBundles?keywordContains=OCI'
}
RESTクライアントを使用したGETコマンドの例
${service-instance-url}/access-governance/access-controls/${version}/accessBundles?keywordContains=OCI
レスポンスのサンプル
次のレスポンス本文を含む200レスポンス・コードを受信する必要があります:
{
"items": [
{
"id": "c7568c3d-32bc-481f-87d3-6be2a5a1b36a",
"name": "OCI-AB",
"description": "AB for OCI",
"tags": null,
"timeCreated": "2025-04-11T07:00:41.456Z",
"timeUpdated": "2025-04-11T07:00:41.456Z",
"createdBy": {
"id": "globalId.125123c3-eedc-4d6a-b6d4-6c0f6537bad2.18.02e36bbb4xxxxxx",
"name": "Amel Maclead",
"displayName": "Amel Maclead"
},
"requestableBy": "ANY",
"status": "ACTIVE",
"approvalWorkflowId": "NO_APPROVAL_REQUIRED",
"orchestratedSystem": {
"id": "bd49ff2a-5c47-4242-8975-9ba235fcccec",
"name": "accessgovtest",
"displayName": "accessgovtest"
},
"accessBundleType": "PERMISSION_BUNDLE",
"primaryOwner": {
"value": "globalId.125123c3-eedc-4d6a-b6d4-6c0f6537bad2.18.02e36bbb4b2014xxxxxxx",
"displayName": "Ama Maclead"
},
"isOwner": false,
"customAttributes": null
}
]
}
後で使用するために、アクセス・バンドルIDおよび編成済システムIDを保存します。
ステップ3: 特定のアカウント・プロファイルのアカウント・プロファイル詳細の取得
これを実行する前に、「アカウント・プロファイルのリスト」を実行してアカウント・プロファイルIDをフェッチできます。 特定のアカウント・プロファイル・システムの場合は、対応するアカウント・プロファイル詳細を取得します。
サンプルcURLcurl -i -X \
GET \
-H \
"Authorization:Bearer <your access token>" \
'${service-instance-url}/access-governance/service-administration/${version}/orchestratedSystems/${orchestratedsystemId}/accountProfiles/${accountProfileId}'
RESTクライアントを使用したGETコマンドの例
${service-instance-url}/access-governance/service-administration/${version}/orchestratedSystems/${orchestratedsystemId}/accountProfiles/${accountProfileId}
レスポンスのサンプル
次のレスポンス本文を含む200レスポンス・コードを受信する必要があります:
{
"id": "84321700-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"orchestratedSystemId": "da7efca4-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "dbum AP 1",
"description": "DBUM Account Profile",
"tags": [],
"accountAttributes": [
{
"name": "authenticationType",
"title": "Authentication type",
"values": ["EXTERNAL"],
"type": "String",
"permissionType": null,
"children": [],
"discriminator": null,
"isQuestion": false
},
{
"name": "defaultTablespace",
"title": "Default tablespace",
"values": ["DEV1105_CATALOG_TEXT_IND_TAB"],
"type": "String",
"permissionType": null,
"children": [],
"discriminator": null,
"isQuestion": false
},
{
"name": "defaultTablespaceQuotaInMB",
"title": "Default tablespace quota (in MB)",
"values": [],
"type": "Long",
"permissionType": null,
"children": [],
"discriminator": null,
"isQuestion": true
},
{
"name": "temporaryTablespace",
"title": "Temporary tablespace",
"values": [],
"type": "String",
"permissionType": null,
"children": [],
"discriminator": null,
"isQuestion": false
},
{
"name": "profileName",
"title": "Profile name",
"values": [],
"type": "String",
"permissionType": null,
"children": [],
"discriminator": null,
"isQuestion": false
},
{
"name": "password",
"title": "Password",
"values": [],
"type": "GuardedString",
"permissionType": null,
"children": [],
"discriminator": "AccountPassword",
"isQuestion": false
}
],
"accountUiAttributes": [
{
"name": "authenticationType",
"type": "String",
"title": "Authentication type",
"children": [],
"lookupType": "authType",
"defaultValues": ["EXTERNAL"],
"permissionType": null,
"discriminator": null
},
{
"name": "defaultTablespace",
"type": "String",
"title": "Default tablespace",
"children": [],
"lookupType": "tablespace",
"defaultValues": ["DEV1105_CATALOG_TEXT_IND_TAB"],
"permissionType": null,
"discriminator": null
},
{
"name": "defaultTablespaceQuotaInMB",
"type": "Long",
"title": "Default tablespace quota (in MB)",
"children": [],
"lookupType": null,
"defaultValues": [],
"permissionType": null,
"discriminator": null
},
{
"name": "temporaryTablespace",
"type": "String",
"title": "Temporary tablespace",
"children": [],
"lookupType": "tempTablespace",
"defaultValues": [],
"permissionType": null,
"discriminator": null
},
{
"name": "profileName",
"type": "String",
"title": "Profile name",
"children": [],
"lookupType": "profile",
"defaultValues": [],
"permissionType": null,
"discriminator": null
},
{
"name": "password",
"type": "GuardedString",
"title": "Password",
"children": [],
"lookupType": null,
"defaultValues": [],
"permissionType": null,
"discriminator": "AccountPassword"
}
],
"isDefault": true,
"isInUseByAccessBundle": false,
"timeCreated": "2025-03-21T06:19:01.234Z",
"timeLastModified": "2025-03-21T06:19:01.234Z",
"createdBy": {
"id": "globalId.125123c3-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "Ama Maclead"
},
"lastModifiedBy": {
"id": "globalId.125123c3-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"name": "Ama Maclead"
}
}
ステップ4: アイデンティティのアクセス・リクエストの作成
前述のステップから抽出した詳細を使用して、1つ以上のアイデンティティに対するセルフサービス・アクセス・リクエストを作成します。 この例では、"identitySpecific": true
を保持して、すべてのアイデンティティに同じ質問値を使用します。
curl -i -X \
\
POST \
-H \
\
"Authorization:Bearer <your access token>" \
-H \
\
"Content-Type:application/json" \
-d \
'{
"justification": "UA AR Test for Identity Specific",
"createdBy": "globalId.125123c3-eedc-4d6a-b6d4-6c0f6537bad2.18.02e36bbb4b201421b44aaxxxxxxxxxa",
"accessBundles": [
"6adcbc8d-1816-xxxxx-af70-xxxc40bf850fb"
],
"identities": [
"globalId.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.xxxxxxx4394960469c2af598b63d4"
],
"accountProfileDetails": [
{
"accountProfileId": "84321700-1a93-4cf2-9226-3f4c2xxxxx9768",
"identitySpecific": true,
"accountAttributes": [
{
"name": "defaultTablespaceQuotaInMB",
"values": [
"100"
],
"children": [],
"isQuestion": true
}
],
"identityAccountAttributesDetails": [
{
"identityId": "globalId.OCI.bd49ff2a-5c47-4242-8975-xxxxxxxec.9f6e4161d84394960469cxxxxxxxx3d4",
"accountAttributes": [
{
"name": "defaultTablespaceQuotaInMB",
"values": [
"40"
],
"children": [],
"isQuestion": true
}
]
}
]
}
]
}'\
'${service-instance-url}/access-governance/access-controls/20250331/accessRequests'
RESTクライアントを使用したPOSTコマンドの例
認可 | ベアラー<your access token> |
Content-Type | application/json |
${service-instance-url}/access-governance/access-controls/${version}/accessRequests
サンプル・リクエスト本文
{
"justification": "UA AR Test for Identity Specific",
"createdBy": "globalId.125123c3-eedc-4d6a-b6d4-6c0f6537bad2.18.02e36bbb4b201421b44aaxxxxxxxxxa",
"accessBundles": [
"6adcbc8d-1816-xxxxx-af70-xxxc40bf850fb"
],
"identities": [
"globalId.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.xxxxxxx4394960469c2af598b63d4"
],
"accountProfileDetails": [
{
"accountProfileId": "84321700-1a93-4cf2-9226-3f4c2xxxxx9768",
"identitySpecific": true,
"accountAttributes": [
{
"name": "defaultTablespaceQuotaInMB",
"values": [
"100"
],
"children": [],
"isQuestion": true
}
],
"identityAccountAttributesDetails": [
{
"identityId": "globalId.OCI.bd49ff2a-5c47-4242-8975-xxxxxxxec.9f6e4161d84394960469cxxxxxxxx3d4",
"accountAttributes": [
{
"name": "defaultTablespaceQuotaInMB",
"values": [
"40"
],
"children": [],
"isQuestion": true
}
]
}
]
}
]
}
サンプル・レスポンス本文
次のレスポンス本文を含む200レスポンス・コードを受信する必要があります:
{
"id": "f303f482-1ace-43c2-xxxx-4719e507eb6a",
"justification": "UA AR Test for Identity Specific",
"requestStatus": "PENDING_APPROVALS",
"timeCreated": "2025-04-11T11:07:28.348Z",
"timeUpdated": "2025-04-11T11:07:28.348Z",
"createdBy": "globalId.125123c3-eedc-4d6a-b6d4-6xxxxxbad2.18.02e36bbb4b201421b44aa046b3ceb16a",
"permissionRoles": [
],
"accessBundles": [
{
"id": "6adcbc8d-1816-44a7-xxxx-78c40bf850fb",
"name": "test min payload",
"displayName": "test min payload",
"accountProfileId": "84321700-1a93-4xxxx-9226-3f4c26fd9768"
}
],
"identities": [
{
"id": "globalId.OCI.bd49ff2a-5c47-4242-8975-9ba235fbb0ec.xxxxxx394960469c2af598b63d4",
"name": "Bill.Clark@Example.com",
"displayName": "Bill Clark",
"owners": null
}
],
"attributes": {
"orchestratedSystemAttributes": null
},
"approvalRequests": null
}
GET ${service-instance-url}/access-governance/access-controls/${versionId}/accessRequests/${accessRequestId}