Add Template Support for Custom Policy Module for Enterprise CA - visual-c++

We are developing a custom policy module which should do nothing else than change adapt some
values given by the CSR for a set of given templates.
Despite quite an amount of research we weren't able to find more than the Microsoft Documentation and the sample (also provided by MS) here:
https://github.com/microsoft/Windows-classic-samples/tree/main/Samples/Win7Samples/security/certific...
So, the required functionality can easily be implemented, BUT
This sample has no security enabled and does not respect the settings given by the template.
E.g. if the template says that a certificate should be valid for 1 year the CA still issues certificates
that are valid for 2 years.
E.g. the sample does for validity this:
hr = polGetRequestAttribute(
pServer,
wszPROPEXPIRATIONDATE,
&strExpirationDate);
if (SUCCEEDED(hr))
{
--> So, it takes the validity from the request itself (e.g. from some extension for validities) and then just applies some validation on it.
But of course it should get the according template info and act like the template
is configured.
Any hint on how we can achieve that would be very helpful.
Even better of course would be if there was somewhere some sample code we can take
to find out how to go on.

Related

What does atlOrigin query parameter mean in Jira URL?

When I open a Jira issue link from a third party or copy from a clipboard I always find the URL looks like this:
https://mycompany.atlassian.net/browse/comapnyAlias-issueNumber?atlOrigin=longCharacters
I am curious what does atlOrigin means? and why do they use it?
There is a small explanation here https://developer.atlassian.com/developer-guide/client-identification/
Origin ID for links to Atlassian UI
Identify HTML links into our product user interface with a unique atlOrigin query string parameter added to the URL. This is similar to the UTM parameter used for click tracking in marketing web sites. In this context, uniqueness is guaranteed by Atlassian issuing the origin ID. For example, if linking into Jira’s Issue page:
https://devpartisan.atlassian.net/browse/TIS-11?atlOrigin=abc123
We generate a unique value for each integration so if you have more than 1 integration, please make sure we have properly associated each integration to a different origin value.
We do not recommend using this parameter in REST APIs or OAuth 2.0 flows, where this parameter might not be properly ignored.
Result is very Google Search - unfriendly to come up 😕

Azure B2C SignUp Policy with mandatory fields

I'm using the Azure portal to create a SignUp policy.
But can't find a way to make certain fields mandatory. Is this possible?
You can do this in the standard policy (i.e. without custom policies) by going in the Page UI Customization, and for each page, selecting whether you want attributes to be optional or required. This gives you the capability to make an attribute optional in one page (e.g. local account sign-up) but mandatory on another (e.g. social account sign-up).
See the image below.
I'm referring to Randy Minder answer,
the comments <!-- Required claims --> and <!-- Optional claims --> ,
they don't seem to work, if placed only (?) inside the Technical Profile. Also those are not mentioned in the linked documentation. So I was struggling, how to make a newly created extension_attribute not mandatory.
Then after "trial and error", i found this post: restrictions. Apparently, if you add a restriction pattern, the field becomes mandatory. That is implicit and not mentioned in the documentation. Also a default value doesn't change this behavior.
You can solve this problem by making certain claims required or optional, as shown below.
You can learn more about here
This response is inaccurate and misleading - the Required / Optional in the example given are comments (and hence do not affect functionality) which refer to which fields are required / optional when writing the registration data to the underlying directory.

Server-side templates not displaying fields in embedded signing experience

This is complicated but I'll try to explain. I've written an API integration in PHP. With this module installed on my website, I'm able to call a web service (on my website), pass it a PDF, and a collection of requisite parameters including a specific template ID in my Docusign account, and get back an embedded signing link, which I can then use to redirect to the Docusign signing experience for that template/document combination.
The PDF document I'm passing is the exact same PDF in the selected template, but with data filled into some of the files, whereas the version in the template is blank. In the template, various fields are defined (signature tab, date signed, SSN, etc..). These are clearly visible and correctly configured. One can verify this by going into the account and editing the template in question from the Docusign web UI.
My problem is that of the 5 templates I have configured, only one is working as expected (PDF shows up, you fill in the fields and sign, and click "Finish"... callback web hook fires delivering the finished PDF back to my server... done.). The rest show none of the configured fields signers are supposed to interact with. You can click continue, but in the left sidebar, you get the tools for adding fields to the document, instead of the pre-configured ones displaying properly in the body of the PDF.
The template that's working, was broken two days ago with the symptoms described above. I've done nothing to the account or that template and it's magically working somehow. I called tech support on Friday and they told me that occasionally templates get corrupted on the docusign server, but that was tier 1 support and I'm not sure that's a valid comment.
That's about the best I can do to describe the problem. I'm unsure what specific information I could supply to help troubleshoot this, but I'll watch the thread and react as quickly as possible.
I'm observing the exact same behavior in both dev and live environments with the exact same group of templates. The one that works in the live environment is the same one that works in dev.
List of templates: (this is for the Dev implementation)
86841739-f12d-460e-9807-23a9b90cff6b (only this one works)
6c3fd328-6f2e-4de1-a9bc-f50df7761ec2
68ce0c9e-a892-4a15-b0f5-39f28aba4588
cd4e3b6d-a8ea-4c78-a0f8-602753996743
9278c78b-f703-429a-ac62-9361bd02f54a
The above represents the 5 templates I'm testing. Only the first one works as expected. I'll add the json later this evening, as I'm out of time at the moment.
Here's the json for each of the templates (zip file):
https://ufile.io/quo3j
Problem solved. It was indeed a discrepancy between the roleName of the template and that passed to the API during envelope creation. They must be the same. If you use a template with a different roleName than the one you pass when creating an envelope, you will get the exact behavior I've described.
The solution is to edit your templates on the Docusign website, and use the same roleName for them all, then make sure that's what you're passing the API when creating envelopes.

What Microsoft Graph User property can I use for additional per user information

We're using Azure AD for Authentication on a new Azure app. I have a requirement to add a few supplemental pieces of information to the user information.
Normally, I'd like to use an Open Type Extension on each user, something like this:
{
"#odata.type": "microsoft.graph.openTypeExtension",
"extensionName": "org.test.example",
"Region": "HQ",
"Companies": ["1022", "1023", "1145"],
}
But, according to this SO question, adding open type extensions for multiple users is broken and can't currently be used this way.
I tried to use the Responsibilities property, but found out today that I can't use it without a SharePoint license associated with our Azure instance.
So my question is, which User property can I use for this without adding extra licenses? I'm not opposed to putting all the values in one array (that's what we planned to do with Responsibilities), but I'd really like to avoid having to make a round trip to a database to pull this information when each user logs in.
The issue mentioned in How do you create MS Graph open extensions with the same id on multiple users? is fixed and in the process of being deployed. I will update once it is available (mostly mid next week).

Umbraco uCommerce Secure Trading - need to use OrderNumber instead of OrderGuid

I am trying to use umbraco with uCommerce.
I have implemented SecureTrading as Payment provider in uCommerce. Now I need a solution to use OrderNumber in place of OdrderGuid to be used to identify the PurchaseOrder.
Currently OrderGuid is being sento to SecureTrading & this is being displayed in SecureTrading Transactions section. And due to this identifying the order is really hard.
We have appropriate value in OrderNumber field of PurchaseOrder table & we want to Display that value in SecureTrading's Transaction section.
Any way to achieve this?
If I try to write my own payment provider code, it'll be very huge task, also we have set the SecureTrading environment accordingly to uCommerce default preference.
Immediate help is required.
For more Detail
I have developed a DLL for my own customization as menthioned in http://docs.ucommerce.net/ucommerce/v7.3/payment-providers/integrating-a-payment-gateway.html But, that also is not working. the custom Payment Provider added in code(DLL) is not visible in backoffice to change the Payment Provider. There are all old entries for providers.
Even nothing shows up in cms Admin section for uCommerce Settings.
Thanks
Hi you can create a derrived version of the PageBuilder which will send the parameters to SecureTrading.
There's a protected virtual method you can override called "GetParameters".
It returns a dictionary that holds everything that will be send to SecureTrading.
You can set the "orderreference" in the dictionary to OrderNumber. This originally holds the orderguid.
Don't forget to register your page builder in the IoC container.
http://docs.ucommerce.net/ucommerce/v7.5/extending-ucommerce/register-a-component.html
You need to override the component by reusing the ID that the page builder has, which is: "SecureTradingPageBuilder". When overriding the page builder you don't have to change anything in the back office.
This should fix your problem :)

Resources