Share via


Managed CCF - Create

Creates a Managed CCF with the specified Managed CCF parameters.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ConfidentialLedger/managedCCFs/{appName}?api-version=2024-09-19-preview

URI Parameters

Name In Required Type Description
appName
path True

string

pattern: ^[a-zA-Z0-9]

Name of the Managed CCF

resourceGroupName
path True

string

minLength: 1
maxLength: 90

The name of the resource group. The name is case insensitive.

subscriptionId
path True

string

minLength: 1

The ID of the target subscription.

api-version
query True

string

minLength: 1

The API version to use for this operation.

Request Body

Name Required Type Description
location True

string

The geo-location where the resource lives

properties

ManagedCCFProperties

ManagedCCFProperties
Properties of Managed CCF Resource.

tags

object

Resource tags.

Responses

Name Type Description
200 OK

ManagedCCF

The request was successful and ledger was created; response contains the Managed CCF

201 Created

The Managed CCF resource will be created asynchronously

Other Status Codes

ErrorResponse

Error response describing the reason for operation failure.

Security

azure_auth

Azure Active Directory OAuth2 Flow

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

ManagedCCFCreate

Sample request

PUT https://management.azure.com/subscriptions/0000000-0000-0000-0000-000000000001/resourceGroups/DummyResourceGroupName/providers/Microsoft.ConfidentialLedger/managedCCFs/DummyMccfAppName?api-version=2024-09-19-preview

{
  "properties": {
    "deploymentType": {
      "languageRuntime": "CPP",
      "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
    },
    "memberIdentityCertificates": [
      {
        "certificate": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
        "encryptionkey": "ledgerencryptionkey",
        "tags": {
          "additionalProps1": "additional properties"
        }
      }
    ],
    "nodeCount": 5
  },
  "location": "EastUS",
  "tags": {
    "additionalProps1": "additional properties"
  }
}

Sample response

{
  "properties": {
    "appName": "DummyMccfAppName",
    "appUri": "https://dummy.accledger.domain.com/DummyLedgerName",
    "identityServiceUri": "https://dummy.accledger.identity.com/DummyLedgerName",
    "deploymentType": {
      "languageRuntime": "CPP",
      "appSourceUri": "https://myaccount.blob.core.windows.net/storage/mccfsource?sv=2022-02-11%st=2022-03-11"
    },
    "memberIdentityCertificates": [
      {
        "certificate": "-----BEGIN CERTIFICATE-----MIIBsjCCATigAwIBAgIUZWIbyG79TniQLd2UxJuU74tqrKcwCgYIKoZIzj0EAwMwEDEOMAwGA1UEAwwFdXNlcjAwHhcNMjEwMzE2MTgwNjExWhcNMjIwMzE2MTgwNjExWjAQMQ4wDAYDVQQDDAV1c2VyMDB2MBAGByqGSM49AgEGBSuBBAAiA2IABBiWSo/j8EFit7aUMm5lF+lUmCu+IgfnpFD+7QMgLKtxRJ3aGSqgS/GpqcYVGddnODtSarNE/HyGKUFUolLPQ5ybHcouUk0kyfA7XMeSoUA4lBz63Wha8wmXo+NdBRo39qNTMFEwHQYDVR0OBBYEFPtuhrwgGjDFHeUUT4nGsXaZn69KMB8GA1UdIwQYMBaAFPtuhrwgGjDFHeUUT4nGsXaZn69KMA8GA1UdEwEB/wQFMAMBAf8wCgYIKoZIzj0EAwMDaAAwZQIxAOnozm2CyqRwSSQLls5r+mUHRGRyXHXwYtM4Dcst/VEZdmS9fqvHRCHbjUlO/+HNfgIwMWZ4FmsjD3wnPxONOm9YdVn/PRD7SsPRPbOjwBiE4EBGaHDsLjYAGDSGi7NJnSkA-----END CERTIFICATE-----",
        "encryptionkey": "ledgerencryptionkey",
        "tags": {
          "additionalProps1": "additional properties"
        }
      }
    ],
    "provisioningState": "Succeeded"
  },
  "name": "DummyLedgerName",
  "id": "/subscriptions/00000000-0000-0000-0000-000000000001/providers/Microsoft.ConfidentialLedger/ledgers/DummyLedgerName",
  "type": "Microsoft.ConfidentialLedger/ManagedCCFs",
  "location": "EastUS",
  "tags": {
    "additionalProps1": "additional properties"
  },
  "systemData": {
    "createdBy": "ledgerAdmin@contoso.com",
    "createdByType": "Admin1",
    "createdAt": "2020-12-01T00:00:00.1234567Z",
    "lastModifiedBy": "ledgerAdmin2@outlook.com",
    "lastModifiedByType": "Admin2",
    "lastModifiedAt": "2020-12-02T00:00:00.1234567Z"
  }
}

Definitions

Name Description
CertificateTags

Tags for Managed CCF Certificates

createdByType

The type of identity that created the resource.

DeploymentType

DeploymentType

EnclavePlatform

Object representing the enclave platform for the Managed CCF application. Defaults to IntelSgx.

ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ErrorResponse

Error response

LanguageRuntime

Object representing LanguageRuntime for Manged CCF.

ManagedCCF

Managed CCF. Contains the properties of Managed CCF Resource.

ManagedCCFProperties

ManagedCCFProperties

MemberIdentityCertificate

MemberIdentityCertificate

ProvisioningState

Object representing ProvisioningState for Managed CCF.

RunningState

Object representing RunningState for Managed CCF.

systemData

Metadata pertaining to creation and last modification of the resource.

CertificateTags

Tags for Managed CCF Certificates

Name Type Description
tags

object

Additional tags for Managed CCF Certificates

createdByType

The type of identity that created the resource.

Value Description
User
Application
ManagedIdentity
Key

DeploymentType

DeploymentType

Name Type Description
appSourceUri

string

Source Uri containing ManagedCCF code

languageRuntime

LanguageRuntime

Unique name for the Managed CCF.

EnclavePlatform

Object representing the enclave platform for the Managed CCF application. Defaults to IntelSgx.

Value Description
IntelSgx
AmdSevSnp

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

object

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ErrorResponse

Error response

Name Type Description
error

ErrorDetail

The error object.

LanguageRuntime

Object representing LanguageRuntime for Manged CCF.

Value Description
CPP
JS

ManagedCCF

Managed CCF. Contains the properties of Managed CCF Resource.

Name Type Description
id

string

Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

location

string

The geo-location where the resource lives

name

string

The name of the resource

properties

ManagedCCFProperties

ManagedCCFProperties
Properties of Managed CCF Resource.

systemData

systemData

Azure Resource Manager metadata containing createdBy and modifiedBy information.

tags

object

Resource tags.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

ManagedCCFProperties

ManagedCCFProperties

Name Type Default value Description
appName

string

Unique name for the Managed CCF.

appUri

string

Endpoint for calling Managed CCF Service.

deploymentType

DeploymentType

DeploymentType
Deployment Type of Managed CCF

enclavePlatform

EnclavePlatform

Enclave platform of Managed CCF.

identityServiceUri

string

Endpoint for accessing network identity.

memberIdentityCertificates

MemberIdentityCertificate[]

List of member identity certificates for Managed CCF

nodeCount

integer (int32)

3

NodeCount
Number of CCF nodes in the Managed CCF.

provisioningState

ProvisioningState

Provisioning state of Managed CCF Resource

runningState

RunningState

Object representing RunningState for Managed CCF.

MemberIdentityCertificate

MemberIdentityCertificate

Name Type Description
certificate

string

Member Identity Certificate

encryptionkey

string

Member Identity Certificate Encryption Key

tags

CertificateTags[]

Tags for Managed CCF Certificates

ProvisioningState

Object representing ProvisioningState for Managed CCF.

Value Description
Unknown
Succeeded
Failed
Canceled
Creating
Deleting
Updating

RunningState

Object representing RunningState for Managed CCF.

Value Description
Active
Paused
Unknown
Pausing
Resuming

systemData

Metadata pertaining to creation and last modification of the resource.

Name Type Description
createdAt

string (date-time)

The timestamp of resource creation (UTC).

createdBy

string

The identity that created the resource.

createdByType

createdByType

The type of identity that created the resource.

lastModifiedAt

string (date-time)

The timestamp of resource last modification (UTC)

lastModifiedBy

string

The identity that last modified the resource.

lastModifiedByType

createdByType

The type of identity that last modified the resource.