Add SignCSR Dbus interfaces

This method creates object for each CSR request to get it signed
by authority and each object has ClientCert and status
properties.

Design Doc:
https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/23420

Signed-off-by: Ravi Teja <raviteja28031990@gmail.com>
Change-Id: Ib2515e1fcdbf50b14fbfe177a80eeeade61faf16
diff --git a/xyz/openbmc_project/Certs/Authority.interface.yaml b/xyz/openbmc_project/Certs/Authority.interface.yaml
new file mode 100644
index 0000000..4a9beea
--- /dev/null
+++ b/xyz/openbmc_project/Certs/Authority.interface.yaml
@@ -0,0 +1,22 @@
+description: >
+    Signs Certificate Signing Request.
+methods:
+    - name: SignCSR
+      description: >
+          This method provides signing authority functionality.
+
+      parameters:
+      - name: CSR
+        type: string
+        description: >
+          Should be a valid PEM encoded Certificate signing request string.
+
+      returns:
+      - name: path
+        type: path
+        description: >
+          The object path of an object that implements, at a minimum,
+          xyz.openbmc_project.Certs.Entry and xyz.openbmc_project.Object.Delete
+
+      errors:
+        - xyz.openbmc_project.Common.Error.InvalidArgument
diff --git a/xyz/openbmc_project/Certs/Entry.interface.yaml b/xyz/openbmc_project/Certs/Entry.interface.yaml
new file mode 100644
index 0000000..d4c46ce
--- /dev/null
+++ b/xyz/openbmc_project/Certs/Entry.interface.yaml
@@ -0,0 +1,31 @@
+description: >
+    Implement to get CSR string signed by authority and get
+    client certificate.
+
+properties:
+    - name: ClientCertificate
+      type: string
+      description: >
+          Client certificate content.
+          User reads this property based on status.
+          The value of this property is empty until Status.State == complete.
+    - name: Status
+      type: enum[self.State]
+      default: Pending
+      description: >
+          The current status of the signing operation.
+
+enumerations:
+  - name: State
+    description: >
+      Signing operation state enum.
+    values:
+      - name: Pending
+        description: >
+         Signing request is pending.
+      - name: BadCSR
+        description: >
+          The CSR was malformed.
+      - name: Complete
+        description: >
+          CSR signing complete