How to Transfer Users with active password policy
I want to transfer users from our QA environment to the PROD environment on Sitecore.NET 8.2 (rev. 170728).
It is totally fine if the users are deactivated and have a random password set. Unfortunately it seems like I cannot import any user since the default or empty password does not meet the password policy requirements. How can I import the users?
I do have access to the serialization files, so I can edit them if that helps. On other environments, I temporarily changed the config, but I cannot do that on PROD.
security user-management serialization
add a comment |
I want to transfer users from our QA environment to the PROD environment on Sitecore.NET 8.2 (rev. 170728).
It is totally fine if the users are deactivated and have a random password set. Unfortunately it seems like I cannot import any user since the default or empty password does not meet the password policy requirements. How can I import the users?
I do have access to the serialization files, so I can edit them if that helps. On other environments, I temporarily changed the config, but I cannot do that on PROD.
security user-management serialization
1
Have you tried using packages? When you use serialization, password is always set tob
, with packages, random password is generated. Maybe try to set password policy requirements on QA first and then generate package with users?
– Marek Musielak
Nov 21 '18 at 7:54
Same applies to Packages, none of the users are imported. Is there a Setting of how random passwords are generated?
– Markus
Nov 21 '18 at 7:59
2
kb.sitecore.net/articles/242631 did you try this solution ?
– Vlad Iobagiu
Nov 21 '18 at 8:11
I have not. Since the users are not imported at all, I probably won't be able to sync the passwords. Anyway, I don't want to transfer users on DB Level since this is exactly what the user migration is supposed to do... at least that's what I think :-)
– Markus
Nov 21 '18 at 8:20
add a comment |
I want to transfer users from our QA environment to the PROD environment on Sitecore.NET 8.2 (rev. 170728).
It is totally fine if the users are deactivated and have a random password set. Unfortunately it seems like I cannot import any user since the default or empty password does not meet the password policy requirements. How can I import the users?
I do have access to the serialization files, so I can edit them if that helps. On other environments, I temporarily changed the config, but I cannot do that on PROD.
security user-management serialization
I want to transfer users from our QA environment to the PROD environment on Sitecore.NET 8.2 (rev. 170728).
It is totally fine if the users are deactivated and have a random password set. Unfortunately it seems like I cannot import any user since the default or empty password does not meet the password policy requirements. How can I import the users?
I do have access to the serialization files, so I can edit them if that helps. On other environments, I temporarily changed the config, but I cannot do that on PROD.
security user-management serialization
security user-management serialization
asked Nov 21 '18 at 7:43
MarkusMarkus
24928
24928
1
Have you tried using packages? When you use serialization, password is always set tob
, with packages, random password is generated. Maybe try to set password policy requirements on QA first and then generate package with users?
– Marek Musielak
Nov 21 '18 at 7:54
Same applies to Packages, none of the users are imported. Is there a Setting of how random passwords are generated?
– Markus
Nov 21 '18 at 7:59
2
kb.sitecore.net/articles/242631 did you try this solution ?
– Vlad Iobagiu
Nov 21 '18 at 8:11
I have not. Since the users are not imported at all, I probably won't be able to sync the passwords. Anyway, I don't want to transfer users on DB Level since this is exactly what the user migration is supposed to do... at least that's what I think :-)
– Markus
Nov 21 '18 at 8:20
add a comment |
1
Have you tried using packages? When you use serialization, password is always set tob
, with packages, random password is generated. Maybe try to set password policy requirements on QA first and then generate package with users?
– Marek Musielak
Nov 21 '18 at 7:54
Same applies to Packages, none of the users are imported. Is there a Setting of how random passwords are generated?
– Markus
Nov 21 '18 at 7:59
2
kb.sitecore.net/articles/242631 did you try this solution ?
– Vlad Iobagiu
Nov 21 '18 at 8:11
I have not. Since the users are not imported at all, I probably won't be able to sync the passwords. Anyway, I don't want to transfer users on DB Level since this is exactly what the user migration is supposed to do... at least that's what I think :-)
– Markus
Nov 21 '18 at 8:20
1
1
Have you tried using packages? When you use serialization, password is always set to
b
, with packages, random password is generated. Maybe try to set password policy requirements on QA first and then generate package with users?– Marek Musielak
Nov 21 '18 at 7:54
Have you tried using packages? When you use serialization, password is always set to
b
, with packages, random password is generated. Maybe try to set password policy requirements on QA first and then generate package with users?– Marek Musielak
Nov 21 '18 at 7:54
Same applies to Packages, none of the users are imported. Is there a Setting of how random passwords are generated?
– Markus
Nov 21 '18 at 7:59
Same applies to Packages, none of the users are imported. Is there a Setting of how random passwords are generated?
– Markus
Nov 21 '18 at 7:59
2
2
kb.sitecore.net/articles/242631 did you try this solution ?
– Vlad Iobagiu
Nov 21 '18 at 8:11
kb.sitecore.net/articles/242631 did you try this solution ?
– Vlad Iobagiu
Nov 21 '18 at 8:11
I have not. Since the users are not imported at all, I probably won't be able to sync the passwords. Anyway, I don't want to transfer users on DB Level since this is exactly what the user migration is supposed to do... at least that's what I think :-)
– Markus
Nov 21 '18 at 8:20
I have not. Since the users are not imported at all, I probably won't be able to sync the passwords. Anyway, I don't want to transfer users on DB Level since this is exactly what the user migration is supposed to do... at least that's what I think :-)
– Markus
Nov 21 '18 at 8:20
add a comment |
3 Answers
3
active
oldest
votes
There is a config settings you can use called SerializationPassword
.
Just use a config patch file with
<settings>
<setting name="SerializationPassword" value="Secret!@#" />
</settings>
and deserialize your serialized users after.
Sitecore will set all your new users' passwords to Secret!@#
(or whatever value you want) instead of default b
which is used when the setting is not present.
You can deserialize you users in PROD and then change they passwords to whatever you want manually.
1
That sounds exactly like what I need! I will let you know if it worked.
– Markus
Nov 21 '18 at 9:58
It works, I can use Powershell to serialize & deserialize the users now. Thanks! One issue I had was that my SQL Server went down when I used a randomly generated strong password. The setting might be insufficiently escaped, so be careful. It might also be an unrelated issue on my DEV machine though.
– Markus
Nov 21 '18 at 10:48
Sitecore usesMembership.CreateUser(userName, password);
by default. I don't see any reason why it could cause your SQL Server to go down even with the most sophisticated password. I suppose it was not related to deserialization of your users.
– Marek Musielak
Nov 21 '18 at 10:53
add a comment |
Sitecore membership is based on ASP.Net membership. It means that you can use same approach for moving users from one DB to another. It is low-level actions with data that could give you better understanding how users/roles information is managed in Sitecore.
- Open Microsoft SQL Server Management Studio
- Connect to SQL server with Sitecore Core QA database
- Click right mouse button on Sitecore Core QA database, select "Generate scripts..." from context menu
- Select all tables, where name starts with "aspnet_" on first page of wizard
- Click "Advanced" button on second page of wizard. Select "Types of data to script":"Data only", "Script DROP and CREATE":"Script DROP and CREATE"
- Generate script
- Backup Sitecore Core Production Database
- Run script generated from Core QA database on Core Production database
I know that I can transfer users on a DB level, but that is not what I want to do.
– Markus
Nov 21 '18 at 8:21
add a comment |
One addition to Mareks answer:
Unfortunately the logic for passwords in package deserialization is completely different. It uses a class called PasswordGenerator, which is initialized with the following parameters:
MinimumCharacters = 6;
MaximumCharacters = 8;
ConsecutiveCharacters = false;
RepeatCharacters = true;
ExcludeSymbols = true;
So if your password policy requires longer passwords or symbols, this functionality is pretty much unusable.
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "664"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsitecore.stackexchange.com%2fquestions%2f15060%2fhow-to-transfer-users-with-active-password-policy%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
There is a config settings you can use called SerializationPassword
.
Just use a config patch file with
<settings>
<setting name="SerializationPassword" value="Secret!@#" />
</settings>
and deserialize your serialized users after.
Sitecore will set all your new users' passwords to Secret!@#
(or whatever value you want) instead of default b
which is used when the setting is not present.
You can deserialize you users in PROD and then change they passwords to whatever you want manually.
1
That sounds exactly like what I need! I will let you know if it worked.
– Markus
Nov 21 '18 at 9:58
It works, I can use Powershell to serialize & deserialize the users now. Thanks! One issue I had was that my SQL Server went down when I used a randomly generated strong password. The setting might be insufficiently escaped, so be careful. It might also be an unrelated issue on my DEV machine though.
– Markus
Nov 21 '18 at 10:48
Sitecore usesMembership.CreateUser(userName, password);
by default. I don't see any reason why it could cause your SQL Server to go down even with the most sophisticated password. I suppose it was not related to deserialization of your users.
– Marek Musielak
Nov 21 '18 at 10:53
add a comment |
There is a config settings you can use called SerializationPassword
.
Just use a config patch file with
<settings>
<setting name="SerializationPassword" value="Secret!@#" />
</settings>
and deserialize your serialized users after.
Sitecore will set all your new users' passwords to Secret!@#
(or whatever value you want) instead of default b
which is used when the setting is not present.
You can deserialize you users in PROD and then change they passwords to whatever you want manually.
1
That sounds exactly like what I need! I will let you know if it worked.
– Markus
Nov 21 '18 at 9:58
It works, I can use Powershell to serialize & deserialize the users now. Thanks! One issue I had was that my SQL Server went down when I used a randomly generated strong password. The setting might be insufficiently escaped, so be careful. It might also be an unrelated issue on my DEV machine though.
– Markus
Nov 21 '18 at 10:48
Sitecore usesMembership.CreateUser(userName, password);
by default. I don't see any reason why it could cause your SQL Server to go down even with the most sophisticated password. I suppose it was not related to deserialization of your users.
– Marek Musielak
Nov 21 '18 at 10:53
add a comment |
There is a config settings you can use called SerializationPassword
.
Just use a config patch file with
<settings>
<setting name="SerializationPassword" value="Secret!@#" />
</settings>
and deserialize your serialized users after.
Sitecore will set all your new users' passwords to Secret!@#
(or whatever value you want) instead of default b
which is used when the setting is not present.
You can deserialize you users in PROD and then change they passwords to whatever you want manually.
There is a config settings you can use called SerializationPassword
.
Just use a config patch file with
<settings>
<setting name="SerializationPassword" value="Secret!@#" />
</settings>
and deserialize your serialized users after.
Sitecore will set all your new users' passwords to Secret!@#
(or whatever value you want) instead of default b
which is used when the setting is not present.
You can deserialize you users in PROD and then change they passwords to whatever you want manually.
edited Nov 21 '18 at 9:50
answered Nov 21 '18 at 9:23
Marek MusielakMarek Musielak
9,67011035
9,67011035
1
That sounds exactly like what I need! I will let you know if it worked.
– Markus
Nov 21 '18 at 9:58
It works, I can use Powershell to serialize & deserialize the users now. Thanks! One issue I had was that my SQL Server went down when I used a randomly generated strong password. The setting might be insufficiently escaped, so be careful. It might also be an unrelated issue on my DEV machine though.
– Markus
Nov 21 '18 at 10:48
Sitecore usesMembership.CreateUser(userName, password);
by default. I don't see any reason why it could cause your SQL Server to go down even with the most sophisticated password. I suppose it was not related to deserialization of your users.
– Marek Musielak
Nov 21 '18 at 10:53
add a comment |
1
That sounds exactly like what I need! I will let you know if it worked.
– Markus
Nov 21 '18 at 9:58
It works, I can use Powershell to serialize & deserialize the users now. Thanks! One issue I had was that my SQL Server went down when I used a randomly generated strong password. The setting might be insufficiently escaped, so be careful. It might also be an unrelated issue on my DEV machine though.
– Markus
Nov 21 '18 at 10:48
Sitecore usesMembership.CreateUser(userName, password);
by default. I don't see any reason why it could cause your SQL Server to go down even with the most sophisticated password. I suppose it was not related to deserialization of your users.
– Marek Musielak
Nov 21 '18 at 10:53
1
1
That sounds exactly like what I need! I will let you know if it worked.
– Markus
Nov 21 '18 at 9:58
That sounds exactly like what I need! I will let you know if it worked.
– Markus
Nov 21 '18 at 9:58
It works, I can use Powershell to serialize & deserialize the users now. Thanks! One issue I had was that my SQL Server went down when I used a randomly generated strong password. The setting might be insufficiently escaped, so be careful. It might also be an unrelated issue on my DEV machine though.
– Markus
Nov 21 '18 at 10:48
It works, I can use Powershell to serialize & deserialize the users now. Thanks! One issue I had was that my SQL Server went down when I used a randomly generated strong password. The setting might be insufficiently escaped, so be careful. It might also be an unrelated issue on my DEV machine though.
– Markus
Nov 21 '18 at 10:48
Sitecore uses
Membership.CreateUser(userName, password);
by default. I don't see any reason why it could cause your SQL Server to go down even with the most sophisticated password. I suppose it was not related to deserialization of your users.– Marek Musielak
Nov 21 '18 at 10:53
Sitecore uses
Membership.CreateUser(userName, password);
by default. I don't see any reason why it could cause your SQL Server to go down even with the most sophisticated password. I suppose it was not related to deserialization of your users.– Marek Musielak
Nov 21 '18 at 10:53
add a comment |
Sitecore membership is based on ASP.Net membership. It means that you can use same approach for moving users from one DB to another. It is low-level actions with data that could give you better understanding how users/roles information is managed in Sitecore.
- Open Microsoft SQL Server Management Studio
- Connect to SQL server with Sitecore Core QA database
- Click right mouse button on Sitecore Core QA database, select "Generate scripts..." from context menu
- Select all tables, where name starts with "aspnet_" on first page of wizard
- Click "Advanced" button on second page of wizard. Select "Types of data to script":"Data only", "Script DROP and CREATE":"Script DROP and CREATE"
- Generate script
- Backup Sitecore Core Production Database
- Run script generated from Core QA database on Core Production database
I know that I can transfer users on a DB level, but that is not what I want to do.
– Markus
Nov 21 '18 at 8:21
add a comment |
Sitecore membership is based on ASP.Net membership. It means that you can use same approach for moving users from one DB to another. It is low-level actions with data that could give you better understanding how users/roles information is managed in Sitecore.
- Open Microsoft SQL Server Management Studio
- Connect to SQL server with Sitecore Core QA database
- Click right mouse button on Sitecore Core QA database, select "Generate scripts..." from context menu
- Select all tables, where name starts with "aspnet_" on first page of wizard
- Click "Advanced" button on second page of wizard. Select "Types of data to script":"Data only", "Script DROP and CREATE":"Script DROP and CREATE"
- Generate script
- Backup Sitecore Core Production Database
- Run script generated from Core QA database on Core Production database
I know that I can transfer users on a DB level, but that is not what I want to do.
– Markus
Nov 21 '18 at 8:21
add a comment |
Sitecore membership is based on ASP.Net membership. It means that you can use same approach for moving users from one DB to another. It is low-level actions with data that could give you better understanding how users/roles information is managed in Sitecore.
- Open Microsoft SQL Server Management Studio
- Connect to SQL server with Sitecore Core QA database
- Click right mouse button on Sitecore Core QA database, select "Generate scripts..." from context menu
- Select all tables, where name starts with "aspnet_" on first page of wizard
- Click "Advanced" button on second page of wizard. Select "Types of data to script":"Data only", "Script DROP and CREATE":"Script DROP and CREATE"
- Generate script
- Backup Sitecore Core Production Database
- Run script generated from Core QA database on Core Production database
Sitecore membership is based on ASP.Net membership. It means that you can use same approach for moving users from one DB to another. It is low-level actions with data that could give you better understanding how users/roles information is managed in Sitecore.
- Open Microsoft SQL Server Management Studio
- Connect to SQL server with Sitecore Core QA database
- Click right mouse button on Sitecore Core QA database, select "Generate scripts..." from context menu
- Select all tables, where name starts with "aspnet_" on first page of wizard
- Click "Advanced" button on second page of wizard. Select "Types of data to script":"Data only", "Script DROP and CREATE":"Script DROP and CREATE"
- Generate script
- Backup Sitecore Core Production Database
- Run script generated from Core QA database on Core Production database
answered Nov 21 '18 at 8:15
AntonAnton
1,656213
1,656213
I know that I can transfer users on a DB level, but that is not what I want to do.
– Markus
Nov 21 '18 at 8:21
add a comment |
I know that I can transfer users on a DB level, but that is not what I want to do.
– Markus
Nov 21 '18 at 8:21
I know that I can transfer users on a DB level, but that is not what I want to do.
– Markus
Nov 21 '18 at 8:21
I know that I can transfer users on a DB level, but that is not what I want to do.
– Markus
Nov 21 '18 at 8:21
add a comment |
One addition to Mareks answer:
Unfortunately the logic for passwords in package deserialization is completely different. It uses a class called PasswordGenerator, which is initialized with the following parameters:
MinimumCharacters = 6;
MaximumCharacters = 8;
ConsecutiveCharacters = false;
RepeatCharacters = true;
ExcludeSymbols = true;
So if your password policy requires longer passwords or symbols, this functionality is pretty much unusable.
add a comment |
One addition to Mareks answer:
Unfortunately the logic for passwords in package deserialization is completely different. It uses a class called PasswordGenerator, which is initialized with the following parameters:
MinimumCharacters = 6;
MaximumCharacters = 8;
ConsecutiveCharacters = false;
RepeatCharacters = true;
ExcludeSymbols = true;
So if your password policy requires longer passwords or symbols, this functionality is pretty much unusable.
add a comment |
One addition to Mareks answer:
Unfortunately the logic for passwords in package deserialization is completely different. It uses a class called PasswordGenerator, which is initialized with the following parameters:
MinimumCharacters = 6;
MaximumCharacters = 8;
ConsecutiveCharacters = false;
RepeatCharacters = true;
ExcludeSymbols = true;
So if your password policy requires longer passwords or symbols, this functionality is pretty much unusable.
One addition to Mareks answer:
Unfortunately the logic for passwords in package deserialization is completely different. It uses a class called PasswordGenerator, which is initialized with the following parameters:
MinimumCharacters = 6;
MaximumCharacters = 8;
ConsecutiveCharacters = false;
RepeatCharacters = true;
ExcludeSymbols = true;
So if your password policy requires longer passwords or symbols, this functionality is pretty much unusable.
answered Nov 22 '18 at 14:10
MarkusMarkus
24928
24928
add a comment |
add a comment |
Thanks for contributing an answer to Sitecore Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsitecore.stackexchange.com%2fquestions%2f15060%2fhow-to-transfer-users-with-active-password-policy%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Have you tried using packages? When you use serialization, password is always set to
b
, with packages, random password is generated. Maybe try to set password policy requirements on QA first and then generate package with users?– Marek Musielak
Nov 21 '18 at 7:54
Same applies to Packages, none of the users are imported. Is there a Setting of how random passwords are generated?
– Markus
Nov 21 '18 at 7:59
2
kb.sitecore.net/articles/242631 did you try this solution ?
– Vlad Iobagiu
Nov 21 '18 at 8:11
I have not. Since the users are not imported at all, I probably won't be able to sync the passwords. Anyway, I don't want to transfer users on DB Level since this is exactly what the user migration is supposed to do... at least that's what I think :-)
– Markus
Nov 21 '18 at 8:20